北斗通信与导航一体化车载智能网络终端的开发

2017-01-05 10:07

徐文博,赵利,黄书婷,刘小康  (桂林电子科技大学 信息与通信学院,广西 桂林 541004)

摘要:为了实现对各类车辆的有效调度、协调控制和管理,提高物流运输的效率和安全性,针对物流系统应用环境,基于STM32微控制器设计开发了一种北斗导航与通信一体化的智能车载网络终端。该终端以STM32F103ZET6微控制器为核心,由北斗定位模块UM220、GPRS模块SIM900A和ZigBee无线网络模块组成。其中,UM220模块负责接收北斗卫星信号定位;SIM900A模块与物流中心通信;无线ZigBee模块用于传输车载物流相关信息。实验表明,该终端能自动完成车载网络数据的采集、处理和传输等功能,满足物流环境下的应用需求。

  关键词:一体化;物流;北斗定位; ZigBee  

0引言

  随着我国物流业的快速发展,智能物流管理系统受到广泛重视,对车辆精确监控与调度的需求也越来越迫切[1]。国内外众多车辆监控研究机构和公司厂商都已将嵌入式车辆监控系统作为研究开发的重点。

  目前,市面上的车载终端产品受不同车型和应用场景的限制,通用性较差,有的仅支持车辆定位,功能单一;终端设备之间无法方便地组建车载网络,不能灵活采集各类车载信息,应用难以扩展;各个终端及设备之间的通信没有统一标准,难以互联互通[2]。  针对现有车载终端及应用存在的问题,本文开发了一种基于STM32的北斗定位与通信一体化的智能车载网络终端。该终端以STM32F103ZET6微控制器为核心,通过片上三个串口分别控制UM220、SIM900A和ZigBee模块。UM220模块负责接收北斗卫星信号,对车辆实时定位、跟踪。利用国内北斗的定位技术可以摆脱依赖国外导航的潜在危害[3 4],技术不再受制于人。SIM900A和ZigBee均为无线通信模块,SIM900A模块利用现有GPRS移动通信网络基础设施,实现终端设备与车载平台中心站之间定位、跟踪、控制等信息以及物联网信息的传递与交互操作;ZigBee则通过短距无线接口方式[5 6],与各种应用传感器(例如:条码扫描器、RFID、摄像头、温度传感器等)和手持式应用终端连接,组成车载信息网络,实现各种应用信息的感知和采集。

图像 001.png

 1系统结构与总体方案设计

  系统主要由定位通信一体化终端以及物流控制和数据中心两部分组成。系统总体结构如图1所示。北斗导航系统全天候向地面发送卫星定位信号,定位与通信一体化终端接收卫星信号,获取定位信息,并连同其他所采集的信息,按协议通过GPRS无线通信网络发回控制和数据图1系统总体结构图中心。控制和数据中心是系统控制、通信与应用的中心,主要由前端数据无线收发设备、数据库、监控和管理平台组成。前端数据无线收发设备用于以无线方式与一体化终端完成各种通信操作;数据库对接收到的数据进行存储和处理;监控和管理平台对于一体化终端进行控制和管理以及数据库管理。

图像 002.png

2终端硬件设计

  2.1终端硬件结构

  车载终端以STM32微控制器为核心,总体架构如图2所示,包含STM32处理控制模块、电源模块、BD定位接收模块、SMS/GPRS模块、ZigBee收发模块及LCD显示模块。终端的主电源为车辆电源,终端内应具备可充电电池,当终端失去主电源后,备用电池工作时间应足够终端向监控中心报警或传输必要的数据。终端涉及的通信模块较多,需要根据各个不同的通信模块设计专门的供电电源。STM32处理器负责数据处理及各个通信模块间的调度。SIM900A模块负责将STM32传来的消息回传给监控和管理平台。利用覆盖范围广泛的GPRS移动通信网络基础设施,可以稳定可靠地实现终端与中心之间的通信。信息的回传以GPRS方式为主,像报警类的重要信息则采用短消息方式。  另外,车载终端硬件还包含一些外围电路,比如SD卡、EEPROM以及各模块间的接口设计。制作好的字库或者图片信息放在SD卡里,LCD触摸屏就能够任意显示需要使用的汉字和图片了。在实际应用中,终端应具有断电保护:当终端断电,系统自动进入保护状态。一些重要的终端参数初始化配置信息(比如:心跳间隔、服务器TCP端口、中心设定的监听号码等)存放在EEPROM存储芯片中。基于STM32的硬件系统需要设计的接口有电源接口、LCD接口、USB接口及串口,串口波特率为9 600 b/s,显示屏采用34PIN软排线与系统电路板连接。  2.2主要硬件模块的选型及设计要点

  2.2.1STM32核心微控制器  STM32处理器与各模块间通信,对接收的数据进行处理,是整个终端最核心的部分。采用STM32F103xx系列MCU为核心,STM32F103ZET6具有ARM Cortex-M3内核,片内集成512 KB Flash、64 KB SRAM、1个USB、2个基本定时器、4个通用定时器、2个高级定时器、5个USART、3个12位ADC、2个DAC、3个SPI、2个I2C、2个I2S、1个SDIO接口、1个CAN、1个FSMC总线(支持NOR、NAND、SRAM)、112个通用I/O口。CPU主频为72 MHz,采用LQFP144封装。该芯片的配置非常强大,价格又十分实惠。带有的外部总线FSMC可以用来外扩SRAM和连接LCD等,通过FSMC驱动LCD,可显著提高LCD的刷屏速度。

  2.2.2UM220定位模块

  北斗定位接收模块负责接收北斗卫星信号,采用和芯星通公司的UM220北斗/GPS双系统模块,具有尺寸小、集成度高,功耗低的特点,可满足各种定位需求。UM220系列是和芯星通公司针对车辆监控/导航、手持设备等应用推出的北斗/GPS双系统模块。UM220-III是UM220系列模块的第三代产品,能够同时支持BD2 B1、GPS L1两个频点。UM220-III采用和芯星通公司完全自主知识产权的“蜂鸟”低功耗GNSS SoC芯片,是目图3车载终端主程序流程图前市场上尺寸最小的完全国产化的北斗/GPS模块。该模块集成度高、功耗低,非常适合于集成在小型化的北斗终端上。

  2.2.3SIM900A通信模块

  SIM900A是SIMCOM推出的一款尺寸紧凑的GSM/GPRS通信模块,采用SMT封装,基于STE的单芯片,采用ARM926EJ-S架构,性能强大,可以内置客户应用程序,广泛应用于车载跟踪、车队管理、无线POS、手持PDA、智能抄表与电力监控等众多方向。该芯片性能稳定,外观精巧,性价比高。SIM900A采用工业标准接口,工作频率为900 MHz~1 800 MHz, 内嵌嵌入式TCP/UDP协议,可以低功耗实现语音、短信、数据和传真信息的传输;支持点对点的短消息,支持GPRS数据传输,适用于2G通信网络。模块提供串行接口和SPI接口,支持AT指令。SIM900A功耗低、尺寸小、价格低廉,适合紧凑型产品的设计和开发。

  2.2.4无线ZigBee模块

  短距通信模块采用2.4 GHz IEEE 802.15.4无线ZigBee模块(REX3DP型号),RF模块采用天线外置方式。模块采用STM32W108xx系列芯片,带有ARM Cortex-M3内核,具有出色的射频和低功耗微控制器性能,配置I/O、模数转换器、定时器、SPI、I2C和UART,并支持RF4CE、IEEE 802.15.4 MAC软件库,带有64~256 KB片上Flash存储器和16 KB SRAM的器件,采用VFQFN40、UFQFN48和VFQFN48封装。REX3DP是一款外形小巧、高灵敏度的低功率ZigBee模块,符合IEEE 802.15.4ZigBee协议栈,支持自我修复、自我组织的网状网络,进而优化网络流量并降低功耗,非常适合应用于无线传感、控制及数据采集。

  2.2.5LCD触摸屏

  终端LCD显示屏是驾驶员和车载终端之间的交互界面,驾驶员可以利用LCD与监控中心进行信息交互。它可以显示通信过程中的相关信息,并可以通过触摸式显示屏输入动态IP地址直接进行TCP连接。采用的LCD型号为2.8英寸的ALIENTEK TFTLCD,该模块支持65K色显示,分辨率为320×240,接口为16位的80并口,自带触摸屏。

3终端软件设计

  3.1软件工作流程

  终端的软件主要包括:主控程序、北斗数据处理模块、SIM900A通信模块以及ZigBee通信模块。具体软件工作流程如图3所示。

图像 004.png

  3.2关键软件模块的设计要点

  3.2.1北斗数据接收与处理模块

  在硬件电路上,UM220模块与STM32的UART2相连,每隔1 s发送一次指令,因此使用STM32的UART2中断函数来处理接收的数据更为方便。UM220每条NMEA指令都是一串以“MYM”开始、以“*”结束的字符串,不同指令的数据长度也不同,正确存储BDGGA和BDRMC指令是正确解析所需的经纬度、高度、速度和角度信息的前提。  3.2.2SIM900A通信模块  SIM900A模块内嵌了TCP/IP协议和UDP协议。为确保回传信息的稳定性和可靠性,选择TCP/IP协议进行传输。通过该模块,可以很方便地进行GPRS数据通信。SIM900A模块与处理器通过串口通信,向模块发送相应的AT操作指令,就可以完成相关的配置。与中心建立TCP连接之后,便可利用命令“AT+CIPSEND”发送信息。信息接收是通过串口自动回传的,因此双方可实现实时通信。

  3.2.3ZigBee通信模块

  ZigBee模块与处理器通信同样是利用UART串口。对相应串口配置好之后,再对ZigBee模块初始化。由于ZigBee模块每条消息具有与UM220模块相同的结束标志位,因此对ZigBee模块的中断处理函数可以参考UM220模块的中断处理函数。同时,ZigBee模块和SIM900A模块一样,可以通过AT指令进行操控,实现其初始化。本车载终端使用的是COO节点,手持终端则是路由节点。需要特别注意的是,必须保证COO节点与路由节点处于相同的网络PANID图4车辆位置服务.Net平台通信界面  图5终端定位信息及位置参数和相同的网络信道才能正常通信。

  3.3数据通信协议

  为保证本车载终端与后台中心之间通信的完整性及通用性,提高通信的检错能力,必须有一套规范让通信双方共同遵守。就本终端而言,通信协议严格遵守《道路运输车辆卫星定位系统北斗兼容车载终端通讯协议技术规范》。它规定了包括通信的格式、内容以及对应不同消息的应答要求,为车载终端和物流中心之间的通信提供了一个标准的信息结构规范。4终端验证与测试  首先给终端上电,烧录预先写好的程序,让其完成端口配置及各模块初始化。同时,启动上位机中的Visual Basic.Net车辆位置服务平台,并搭建好网络环境,为终端提供一个稳定的公网IP地址。当终端成功连接到数据中心时,服务平台便能与终端通信并实时监控终端作业。各种通信数据通过平台存入MySQL数据库,方便后台管理。车辆位置服务.Net平台通信界面如图4所示。

图像 006.png

图像 006.png

通过平台上位置查询栏中如图5所示的人机界面,可以看到电子地图上通过终端定时上报的位置图标以及相应的位置参数。由图5可见,所注册的车牌号为桂AGK898的车辆当前停靠在桂林电子科技大学附近。

5结束语

  该智能车载网络终端选用Cortex-M3内核的处理器STM32F103ZET6,结合定位模块UM220和SIM900A、ZigBee无线通信模块,实现了在物流环境下的定位与通信的一体化应用。通过采用模块化设计,有效降低了终端功耗,减小了终端体积。现场测试表明,定位信息准确,通信稳定可靠,易于扩展应用。

  参考文献

  [1] 惠晓威,刘彦每.基于GPS/GPRS的物流车载终端系统设计[J].计算机应用与软件,2015,32(6):79 82.

  [2] 马丽芳.基于北斗和GPRS车载终端的设计与研究[D].西安:西安科技大学, 2013.

  [3] 龚凌翔,叶芝慧,冯奇,等.基于STM32的北斗/RFID组合定位系统设计[J].电子测量技术,2014,37(4):76 82.

  [4] 潘未庄, 陈石平.采用北斗模块的车载监控终端设计与实现[J].电子测试,2013(16):45 47.

  [5] 韩月霞,李雄伟,张阳,等.基于物联网的物流车载终端系统设计与实现[J].传感器与微系统,2015,34(5):69 71.

  [6] 黄继聪,赵利,方晓科.基于多模式的物流定位跟踪通信终端的设计[J].电子技术应用, 2014,40(2):8 11.


Baidu
map