摘 要: 针对我国目前冷链运输监测网络的不足,设计出一种基于RFID的冷链运输监测网络来监测车载终端的动态参数。该系统主要由车载终端和监测中心组成,车载终端由STM32F103RBT6中央控制器、GPS定位模块U-blox NEO、GPRS无线通信模块SIM900、RFID电子标签和读写器等部分构成,可实现车载终端数据的采集、分析、预处理、报警和监测等功能。监测中心可以无线接收、解析和在线显示温湿度和定位数据。实验结果表明,该系统性能可靠,硬件成本较低,能够实时监测车载终端的温湿度数据和车辆定位信息,适合在冷链物流行业推广使用。
关键词:冷链运输; RFID; STM32; 车载终端; GPRS
食品冷链是指易腐产品从加工、贮藏、运输、销售、直到送达消费者手中的特殊供应链系统,其各个环节产品始终处于所必需的低温环境下,以保证食品质量安全。目前多数物流公司主要通过将温湿度检测记录仪放在车厢内进行温湿度记录,在物品交接时一次性读取数据,公司和客户无法动态检测到冷链运输车辆的过程状态,降低了物流中心监测的准确性和实时性[1]。因此,本文设计了一种基于RFID的冷链运输监测网络,RFID采集系统有效降低了车载终端能耗,免除了跟踪过程中的人工干预,GPRS网络使得用户无需另外组网,为客户节省了组网和维护费用[2]。物流中心实时监测冷链运输车辆的在途信息,用户也可以用手机通过短信以AT指令形式查询货物在途参数。
1 系统总体结构设计
冷链运输监测网络的整体结构如图1所示。整个监测系统由车载终端设备、GPRS通信网络和监测中心三部分构成。
车载终端内RFID电子标签和读写器承担着货物标签信息和温湿度数据采集与读取任务。GPS定位模块Ublox NEO接收卫星传来的导航电文。中央处理器STM32F103RBT6将RFID系统采集的温湿度数据进行分析和预处理,同时对GPS定位数据进行解析与封装。车载终端通过GPRS无线模块SIM900定时向监测中心发送当前温湿度、经纬度、车载速度、日期时间等信息,并显示在车载终端的LCD液晶屏上。监测中心无线接收和处理车载在途信息,将当前温湿度显示在监测界面上,并通过Google Earth实时显示车辆位置。
中央处理器STM32内置电话簿,当温湿度或者车载速度超过设定的相应阈值,就通过SIM900发送短信给手机用户报警,同时驾驶室蜂鸣器响起,司机可立即采取应急措施。
2 车载终端硬件设计
2.1 中央处理器STM32F103RBT6
本系统采用意法半导体公司(ST)生产的基于ARM Contex_M3内核的RISC 32位微控制器,CPU处理速度快,工作频率最高可达72 MHz,定点运算速率达到每秒9×107条指令;片内128 KB Flash,20 KB SRAM,拥有强大的程序和数据存储能力;资源丰富,外围连通性好,拥有9个通信接口(3个UART、2个I2C、2个SPI、1个CAN、1个USB2.0);外围设备丰富,多达80个快速I/O端口扩展,7通道DMA控制器,7个定时器,2个12位的A/D转换;支持JTAG/SWD接口的调试下载及IAP(在应用可编程),无需专用的编程器/仿真器;具有睡眠、停机和待机模式,体积小、性能高,可满足车载终端低功耗与多串口的需求。
中央处理器STM32F103RBT6的UART2通过MAX3232芯片连接GPS数据采集模块Ublox NEO的串口,用UART3通过MAX3232芯片连接无线通信模块SIM900,UART1利用RS232-RS485转换器与RFID读写器相连,通过PA口向LCD NOKIA5110液晶屏写入显示数据[2]。中央处理器硬件连接图如图2所示。
2.2 RFID数据采集模块
RFID数据采集系统是整个车载终端的重要组成部分,电子标签采集冷藏车厢内的动态温湿度数据并处理转换成电信号,通过2.45 GHz微波射频通信将信息传输给读写器。
电子标签采用有源主动式,工作状态下通信距离可达30~50 m,休眠状态功耗极低, 低频唤醒距离在0.5~7 m之间准确可控。读写器采用全向式,通信距离达15~50 m,内置存储器可用于暂存温湿度数据,先进的时隙ALOAH防碰撞算法支持读写器同时读写200个电子标签,在车载内可以组建一个无线局域网,实现多点采集车厢内的温湿度。本文采用的温湿度传感器是SHT1X系列,此传感器电阻温度系数大,感应灵敏,电阻值随温度变化基本呈线性关系[3]。RFID电子标签测温范围为
-40℃~+123℃,测温精度为±0.5℃; 湿度测量范围为0% RH~100% RH,测湿精度为±2% RH。采用RFID技术解决了冷链物流人工干预、能耗高的固有缺点,而且电子标签体积小、易拆卸,可重复利用,有效降低了物流成本。
2.3 GPS定位模块Ublox NEO
本系统中GPS定位模块采用Ublox NEO 5Q,该模块支持NEMA0183 V3.01协议标准输出,TTL电平接口,GPS模块不能直接与中央处理器相连接,必须先通过MAX3232将TTL电平转换成RS232电平后,才能连接到中央处理器的接口。 GPS定位模块硬件原理图如图3所示。
Ublox NEO引脚8(TXD1)和引脚9(RXD1)分别通过MAX3232与STM32F103RBT6的RXD2和TXD2相连。定位精度小于2.5 m;限制运行速度高达1 000节,相当于515 m/s;具有50通道卫星接收功能;工作电压2.7 V~3.6 V;启动时间短,功耗低,全速模式135 mW,定位快速;提供多种接口,便于扩展。模块上电工作时,与中央处理器STM32F103RBT6进行通信,通过初始化设置定时输出GPS导航电文,中央处理器对GPS导航电文进行解析,提取出日期、时间、经纬度、车载速度等有用信息作为物流中心监测的基本数据。并通过Google Earth软件在监测界面显示车辆地理位置。
2.4 无线通信模块SIM900
本系统采用SIMCOM公司工业级四频段GSM/GPRS模块SIM900进行远程数据传输,SIM900模块体积小、功耗低,可以快速安全可靠地实现系统方案中的短信消息服务和GPRS数据无线传输。SIM900内嵌PPP拨号协议和TCP/IP协议栈。模块工作电压为3.4 V~4.5 V,可工作在850/900/1800/1900 MHz四个频段。该模块硬件设计原理图如图4所示。
中央处理器STM32F103RBT6通过UART3与SIM900接口进行通信,原理与GPS模块接口一致,SIM900模块的引脚TXD_O和RXD_I需要通过MAX3232电平转换后才能与中央处理器的RXD3和TXD3相连,SIM900与中央处理器的通信协议是AT命令集,中央处理器通过发送AT指令可以对SIM900模块进行控制[4],设置工作模式,传输速率设置为115 200 b/s。SIM900模块内置SIM卡进行通信。
3 系统软件结构和功能设计
监测系统的应用软件程序容量大,实时性强,因此系统软件采用模块化的设计方法,使整个系统流程层次分明,逻辑清楚,便于各个模块软件的调试、修改和维护,同时提高了系统的可靠性和灵活性。系统软件包括:车载终端主程序、温湿度采集程序、GPS定位及解析程序、GPRS网络登录及通信程序、报警及LCD显示程序、串口通信等,本文主要介绍其中重要模块的软件程序流程。
3.1 车载终端主程序设计
中央处理器STM32F103RBT6通过中断方式读取温湿度数据和GPS定位信息,然后对数据进行分析和预处理。微处理器通过向SIM900写入不同的AT指令集实现GPRS网络登录、TCP/IP链路建立、发送GPRS数据、收发SMS消息等[4]。若温湿度数据、车载速度不在设定的阈值内,则向中央处理器内置电话簿中的所有号码发送短消息报警,同时驾驶室内蜂鸣器响起,驾驶人员可采取应急措施。车载终端工作流程图如图5所示。
3.2 GPS数据解析与处理
车载终端上电工作时,GPS模块Ublox NEO每隔一段时间就把接收到的卫星导航电文通过串行口传输给STM32中央处理器,中央处理器编程控制读取导航电文的时间间隔,以降低功耗和节约通信费用。从GPS模块可以得到几个不同的数据帧,不同的数据帧的帧格式和帧头都不同,帧头主要有$GPGGA、$GPGSA、$GPGSV及$GPRMC等。不同帧头的数据结构不同。在正常定位情况下,定位数据如日期、时间、经纬度、速度等均可以从“$GPRMC”中提取。根据GPS模块初始化的设定,GPS定位接收机对每一条GPS信息都进行分析及处理,还要对日期、时间、经度、纬度、速度进行转换。数据转换完毕后,就把数据按规定的格式打包,提供给信息发送程序,由发送程序决定是否发送给监控中心。程序根据主控模块的设定来处理这些数据。
“$GPRMC”帧格式如下所示:
$GPRMC,043628.00,A,3903.76434,N,11706.46351,E,0.256,,181112,,,D*71.
中央处理器STM32F103RBT6进行GPS数据接收时,检测“$GPRMC”帧头的ASCⅡ是否正确。若正确,就接收帧内数据并进行解析[2],其他无效或者冗余信息舍弃,接收的有效信息按GPS数据传输协议封装成UDP数据包,通过GRPS网络无线传输给监测中心,监测中心接收数据后通过Google Earth将车辆位置实时显示在电子地图上。
3.3 GPRS链路建立与数据传输
中央处理器STM32F103RBT6向SIM900写入AT指令,设置GPRS连接方式、监测中心的固定IP地址和端口号、短信发送模式、接收方号码等[4],完成模块初始化并通过GGSN网关接入远程监测中心的Internet。然后将采集到的温湿度以及解析后的定位数据编码成PDU格式[4],通过GPRS网络传输给远端监控中心,同时可接受AT指令形式的短信查询。
为增强系统的安全性和可靠性,防止恶意短信查询和骚扰,手机用户进行短信查询时需要进行身份和口令的双重确认,中央处理器内置电话簿,非电话簿用户短信均被当做垃圾短信处理。口令格式如“COM+tem=?”,COM为公司名,tem为查询的内容,此处为温湿度、定位信息、车载速度等,对于不符合口令格式的短信查询将当作垃圾短信处理。
3.4 监测中心软件设计
监测中心软件主要实现的功能包括车辆管理功能、用户管理功能、货物状态监测功能,通过人机界面进行信息查询和实时监测。监测中心采用C/S模式,车载终端作为客户端,请求与监测中心进行网络通信;监测中心作为服务器,侦听网络的连接请求,接收、处理和存储数据,并将信息及时有效地显示在监测界面上。软件采用VC6.0 C++编写可视化的Socket服务器程序,采用ACCESS2003分表存储相关数据,系统具有良好的扩展性与移植性[5]。
4 实验结果与分析
本文搭建了一个冷链运输监测网络系统,该系统以STM32F103RBT6微处理器为控制核心,由RFID电子标签、读写器、GPS定位模块Ublox NEO和SIM900无线通信模块构成,实现冷链运输车与远程监测中心之间的网络监测。在STM32为主控模块的硬件上编写底层驱动程序,实现各个子模块的功能。监测中心以VC6.0和ACCESS2003为软件开发平台,实现了无线数据的接收、处理、显示和存储功能[5]。该系统目前初步完成了对车厢内的温湿度数据和车辆定位信息的监测,通过无线通信模块将采集到的信息定时发送给监测中心,并完善突发预警机制,实现无人值守的网络监测。
物流中心的监测界面显示了当前监测中心的固定IP地址和进行数据侦听的侦听端口,并可在此界面上在线设置温湿度的监测阈值。点击监测界面的“地图定位显示”,监测中心处理定位数据后,将实时接收的定位数据通过Google Earth显示出来,定位界面如图6所示。
整个系统经过大量的收发数据测试与调试,车载终端初次启动和网络信号较弱时系统重启后参数如表1所示。从表1中可以看出,系统具有丢包率低、网络时延小、定位快速的特点,可满足车载终端与监测中心通信实时性好和可靠性高的要求。车载终端加入了数据安全设置和冗余信息处理,有效维护了货物运输在途参数安全等问题。
本系统采用先进的RFID技术、GPS技术、GPRS技术及温湿度传感技术,实现冷链运输过程中将食品温度变化记录在“带温湿度传感器的RFID标签”上,实时上传到监控中心平台,提供及时准确的温湿度监测,从而掌控了生鲜食品的运输在途参数;能在必要时及时发出预警,有效降低了生鲜食品冷链运输过程中的损耗,保证了在途食物的质量和安全;有效克服了过去信息传递不及时,信息追溯困难等问题。系统具有成本低、功耗低、实时性、扩展性良好的特点,提高了冷链运输车的实时监测能力,在提高食品运输品质的同时,降低了食品损耗和供应链中的投资成本。
参考文献
[1] 王铀.采用物联网技术实现药品食品全程冷链监控[J].物流技术与应用,2011(2):70-72.
[2] 魏芬,王海彬.基于ARM的智能车载终端设备系统的设计[J].单片机与嵌入式系统应用,2012,12(8):66-69.
[3] 张璘,陶琳,袁江南,等.基于GSM的远程温湿度监测系统研究及实现[J].电子技术应用,2012,38(6):93-96.
[4] 董宇,杨强,颜文俊.基于nRF905和GPRS的智能家居用电监测系统[J].电子技术应用,2012,38(9):78-81.
[5] 郑琪,方思行. 通用多线程服务器的设计与实现[J].计算机工程与应用,2003,39(16):146-147.