基于射频技术的油罐车在途状态监测系统设计
2022-02-16郭忠印樊兆董张瀚坤
张 昱,郭忠印,樊兆董,张瀚坤
(1.同济大学 道路与交通工程教育部重点实验室,上海 201804; 2.山东省交通科学研究院,济南 250031;3.山东省路域安全与应急保障交通运输行业重点实验室,济南 250031)
0 引言
当今社会机动车保有量稳步增长,由此引发的车辆交通安全问题也引起社会的广泛关注,其中对于危化品车辆的运输安全管理更是研究热点。由于危化品自身理化性质特殊,不适宜进行大批量铁路运输,只能通过公路路网进行运输。当危化品车辆经过人员密集、复杂路段、车辆交织区域时,易导致交通运输事故发生[1-3]。
研究发现,危化品在运输过程中由于罐体倾斜、温度过高、超速行驶都会引起交通运输事故。因此,实现对罐体倾角、温度、铅封状态、车速的监测,及时告知驾驶员,才能有效防止罐体倾翻、温度过高、危化品泄漏等危险事故的发生。
国内外研究人员对于危化品运输监管进行了一系列研究[4-6],然而大多是针对车辆轨迹监测和驾驶员主动防御方面的,缺少对罐体状态的研究。文献[7]开发了罐车防盗油监测系统,可对罐车阀门状况进行监测;文献[8-9]开发的危化品车辆远程监测系统,均可对罐体温度、倾斜角度等数据进行远程监测。然而,危化品车辆监管[10-11]需要考虑多种耦合因素,本文研究了一种综合车辆定位、罐体状态监测、电子铅封油阀、危险报警功能于一体的油罐车车辆状态监测系统。
1 油罐车状态监测系统总体结构及原理
1.1 油罐车状态监测系统总体方案
车辆状态监测系统[20-21]应用全球定位系统技术(GPS)、电子铅封技术和GPRS技术[18],通过安装在油罐车上的状态监测系统实时获取车辆位置信息、罐体状态参数,实现各阀门无线电子铅封,同时采用GPRS网络和互联网实现车载终端与监控中心的远程实时通信、无线电子铅封、车辆定位、罐体状态监测、数据远程传输、报警等功能。
图1 油罐车状态监测系统控制单元结构原理图
1.2 系统结构及原理
车辆状态监测系统由安装在罐车上的车载终端与远程运管中心显示系统组成,车载终端由控制单元和4个油阀铅封单元构成。
控制单元采用主从控制器结构,主控制器采用S3C2440A芯片[12],负责与铅封单元通信、感知罐壁温度、罐体姿态以及数据存储,并通过GPS模块、GPRS模块实现车辆定位以及远程数据收发功能。从控制器最小系统设计综合功率消耗、片内资源、处理速度能力以及成本要求等几个因素,采用SOC方案。选用Silicon Labs公司的射频一体化微控制器SI1000[13]作为从控制器,通过无线收发模块实现与油阀铅封单元通信,无线控制铅封单元的电控锁。整个控制单元安装在车体的底盘上。控制单元采用主从控制器的结构设计,是基于以下两方面考虑:(1)采用模块化设计思想,便于二次开发以及模块功能扩展;(2)控制单元采用主从结构便于与各个铅封单元无线通信,在一定程度上减轻了主控制器的工作负担。
油阀铅封单元位于油罐车罐体的4个进、出油口阀门处,它由SI1000微控器、电源模块、电控铅封锁构成,用于实现各个阀门的施封、解封操作。状态监测系统控制单元与铅封单元结构原理分别如图2(a)、(b)所示。
图2 油罐车状态监测系统铅封单元结构原理
2 罐车状态监测车载终端硬件设计
2.1 控制单元硬件设计
2.1.1 电源模块
终端控制单元需要5 V,3.3 V,1.2 V三种直流稳压电源。第一级电源转换由汽车电源12 V转换为5 V,第二级再分别从5 V转到3.3 V和1.2 V。在第一级电源转换模块里选用开关稳压电源的方案,采用LM2596S-5.0芯片。车载终端的S3C2440A 和MG323模块及其它芯片使用3.3 V电压供电,经过线性稳压芯片 AS2815AR输出得到3.3 V电压。ARM内核供电电压1.2 V,采用LTC3406-1.2降压型稳压芯片。电源转换电路如图3所示。
图3 电源转换电路
2.1.2 存储单元模块
S3C2440A 处理器配有NAND Flash控制器,为储存车辆运行过程中产生的数据信息,设计选用三星公司生产的芯片K9F2G08U0B作为扩展NAND Flash的存储单元模块。该存储器提供了 256 M×8 Bit的存储空间。设计的硬件电路如图4所示。
图4 NAND Flash接口电路
2.1.3 GPRS模块
为了电路简便,设计采用通用异步收发传输器(UART)串口将EM310模块与S3C2440A连接,然后在TXD管脚加6.2 kΩ电阻,其天线装置与EM310模块的5引脚相连,经过68 nH的电感接地,EM310模块的TERM_ON引脚经0 Ω的电阻接地,为的是在上电时就拉低引脚,以达到启动EM310模块的目的。其接口电路如图5所示。
图5 GPRS模块接口电路
2.1.4 GPS模块
GPS模块可以通过计算三至四颗卫星所发出的定位信号,获取当前车辆的经纬度位置、时间、运动速度等数据。本设计选用U-BLOX公司所产核心为NEO-6M的GPS模块,该模块拥有具有-161 dBm 的车辆跟踪灵敏度以及高达50个通道,数据采集频率为5 Hz。该模块结构简单,是通过串口与ARM主控制器S3C2440A通信的,其外围接口电路如图6所示。
图6 GPS模块接口电路
2.1.5 从控制器最小系统模块
从控制器SI1000最小系统设计参考了典型应用电路,供电电压为3.3 V可由电源模块供电,其时钟晶振选取为32.768 kHz,外部晶振选取为30 MHz,在电源部分,电容值为100 nF,100 pF,1 μF,起电源滤波作用。
2.1.6 无线收发模块
SI1000芯片的内部集成了EZRadio-PRO Transceiver射频收发模块[14]。MCU内核与射频模块是通过内部SPI1口完成数据通信的;数据进入射频模块的先进先出模块(FIFO)实现无线传输,需要经过天线收发电路模块传输出去。
无线信号发射电路与接收电路共用一个前端射频天线装置,采用单刀双掷的射频开关UPG2214TB对信号发射和接收电路进行切换。系统通过对SI1000的GPIO1和GPIO2引脚的配置,实现对发送接收通道的切换。无线收发电路如图7所示。
图7 无线收发电路
2.1.7 温度采集模块
考虑到油罐车的运行环境条件恶劣,并从监测精度、成本、可操作性几方面考虑,温度传感器选用DS18B20。该芯片内部由温度传感器、光刻ROM存储器和配置寄存器等部分构成。
DS18B20 通过一条线即可实现与SI1000的P1.5引脚连接,温度传感器与SI1000接口电路如图8所示。
图8 DS18B20接口电路
2.1.8 倾角采集模块
本文采用双轴倾角计ADXL203实现对罐体倾角的采集,该传感器采用晶体硅固体结构,性能稳定,受温度的影响极小,同时还具有体积小、输入简单,倾斜度测量精度高等优点。在罐体倾斜度测量时,双轴倾角计需以重力方向作为基准测定被测物体的方位,同时将传感器的x轴与重力方向垂直设置(即与水平面平行)。设计将传感器芯片沿水平面放置,X、Y轴均处于水平方向,便可测量罐体的倾斜度,根据以下公式可将芯片输出的模拟电压信号VX,VY分别换算成对应的g值变化量GX,GY:
(1)
(2)
再将GX,GY代入倾斜角度的计算公式中,得到罐体在途过程中的倾角,俯仰角(pitch)和倾斜角(roll),从而判断罐体姿态是否正常。
(3)
(4)
图9(a)为ADXL203用于双轴斜度测量仪的原理示意图。
ADXL203芯片输出的是模拟电压信号,经过相应的滤波电路、放大调理电路后与从控制器相连接。接口电路中的滤波电容CX和CY,电容值选为0.1 μF,由此知信号设置为50 Hz的带宽,开启时间为20 ms。经过低通滤波后的电压信号,通过差动输入方式连接到微控器SI1000的P2.3(引脚4)和P2.5(引脚2)上,通过这两个引脚内部集成的ADC可以直接进行AD采样。图9(b)为双轴倾角计接口电路。
图9 罐体状态采集原理及接口电路
2.2 铅封单元硬件设计
油阀铅封单元安装在罐体油口阀门一侧,该油罐车共4个铅封单元。该单元硬件电路由无线微控器、电控锁模块和无线收发电路构成。微控器选用射频一体化芯片SI1000,用于与车载终端控制单元通信,以实现铅封、解封操作。
电控锁控制电路与锁芯密封装于API油阀内,四线制的电控锁中有两根控制信号线NO(normal open)和NC(normal close),另外两根是电源与接地线。将控制信号线分别与SI1000的I/O口P2.4和P2.6相连。电控锁根据NO、NC电平出现的高低变化发生置0、置1变化。当NO、NC同时高电平或低电平时,说明有非法操作电控锁短路(油阀非正常开启、关断),对应状态与MCU的I/O关系如表1所示。
表1 油阀感测状态
3 罐车状态监测车载终端软件设计
3.1 系统数据通信
系统的数据通信包括车载终端与信息平台间的GPRS通信和控制单元与铅封单元的无线RF通信。
3.1.1 GPRS网络通信
GPRS网络可通过以下三种方式连接到公网。拨号上网:非对称数字用户线路(ADSL)可申请公网IP地址,以便数据中心与移动网关通过VPN隧道专线连接。
固定IP上网:申请固定公网IP地址给GPRS模块即可直接将数据发送至监控中心。
定时发送:首先在GPRS模块中设置数据发送时间间隔(默认为60秒),即每隔一段时间向Internet上对应IP地址上发送一段数据,该IP下的服务器将所接受收据直接存储在服务器中,确认ID无误后存储,并向车载终端发送一段确认报文,终端收到该报文后,确定发送成功;否则重新发送信息。
3.1.2 控制单元与铅封单元的无线通信
控制单元的无线收发模块与油阀铅封单元采用无线方式通信,从控制器SI1000采用的通信协议是EZMac协议。该协议是一种常用于EZRadioPRO和无线微控制单元的通信协议,其各项基本参数均符合FCC的规定,为增加通信可靠性并降低功耗,该协议中包含4个通信频道,可在不依附 MCU的情况下直接通过ISM频率采用短帧格式进行数据收发;该协议具有占用资源少、支持广域寻址、数据包清洗与信号自纠自检等优点。
EZMac通信协议的结构包括帧头、载荷和帧尾三部分,帧头内有前导码、同步字、地址信息和数据包长度几个部分,载荷是通信模块传输的有效数据帧尾由两个字节的CRC校验位,用于识别是否有错误的数据位。EZMac数据帧格式如表2所示。
3.2 控制单元软件设计
终端控制单元软件设计采用模块化编程方法,采用C语言编程,部分底层函数应用汇编语言设计。主程序包括系统初始化、建立GPRS连接、GPS模块的数据提取、罐壁温度提取、罐体姿态提取以及与铅封单元通信[16-17]等。系统初始化是在主控制器上电后,在main()函数中完成的,包括设置系统时钟、初始化中断向量表、设置相应I/O口的工作模式。主控制器运行在主程序模块下,建立好GPRS网络连接后,在接收到信息中心控制命令时,就会以中断方式获取各个模块的数据信息。
表2 无线数据帧格式
GPS模块初始化,再将接收到的定位数据存入指定缓冲区,判断是否接收到完整的GPRMC语句,最后从中提取出定位数据。
罐壁温度采集流程就是传感器得到数据采集命令后,对DQ下拉至低电平,然后再15 s之内拉高总线,如果DQ为高电平,则数据采集成功,并将该温度值作为返回值返回。
罐体倾角采集利用ADXL203芯片对X轴和Y轴两路数据采集,调用ADC0初始化程序对相关寄存器配置使能,通过获取X、Y轴的电压值,由对应公式计算加速度值,并转换为相应的角度值。油罐车车载终端控制单元软件流程如图10所示。
图10 终端控制单元软件流程
3.3 铅封单元软件设计
铅封单元被唤醒后,采集油阀当前铅封状态并通过无线方式发送给控制单元,收到施封、解封命令后,驱动电控锁装置动作。铅封单元的主程序负责调用各子程序,状态采集、数据发送和数据接收程序都是通过主程序调用实现。
图11 铅封单元软件流程
4 实验测试
为验证基于SI1000的罐车状态监测系统设计合理性,进行系统调试。选取东风天龙铝合金半挂油罐车分别在罐车底盘安装车载终端控制单元,在进、出油口分别安装铅封单元。在上位机安装客户端软件,车载终端的GPRS模块中设置好上位机服务器IP,确保车载终端与服务器通信正常。上位机显示界面如图12所示。
图12 上位机状态监测系统显示界面
4.1 调试数据采集
启动系统,打开上位机,进行参数设置观察系统是否正常运行。正常运行后,根据状态监测参数对系统进行测试。具体技术要求如下:
1)远程数据传输采用TCP/IP通讯协议,波特率为115 200。
2)采集监测信息,具体参数要求见表3。
表3 采集数据标准
3)通过测试,分别记录五组数据的测量值和标准值,进行系统误差分析。
4.2 罐壁温度测试
采用计量检定合格的遥感式测温仪采集罐壁温度,同时记录由终端控制单元DS18B20温度传感器测量在上位机显示的罐壁温度,分别记录五组数据。上位机显示的罐壁温度为系统测量值,测温仪实测的温度值为标准值。
4.3 罐体倾角测试
采用计量检定合格的带磁角度尺测量罐体俯仰角和倾斜角,同时记录由终端控制单元ADXL203芯片测量在上位机显示的罐体俯仰角和倾斜角,分别记录五组数据。上位机显示的罐体倾角为系统测量值,角度尺实测的罐体倾角为标准值。
4.4 油阀铅封状态测试
在上位机操作系统改变油阀铅封状态,同时记录实际观测到的油阀铅封状态,分别记录五组数据。上位机操作后显示的铅封状态为系统测量值,实际观测状态为标准值。
4.5 系统测试结果分析
为分析系统实际运行可靠性与测量精度,对油罐车状态监测系统进行对比实验测试,记录各个参数的实验数据并进行误差分析,系统误差计算公式如下式所示:
(5)
式(5)中,ε为误差值,a为标准值,x为测量值。系统监测数据表如表4所示。
表4 系统监测数据表
由表4可知:罐壁温度标准取值在39.7~40.1 ℃区间范围内,温度波动度为0.4 ℃,系统误差在0.25%~0.5%之间。罐体俯仰角标准取值在3.0°~3.2°区间范围内,倾角波动度为0.2°,系统误差在3.13%~3.33%之间。罐体倾斜角标准取值在2.4°~2.5°区间范围内,倾角波动度为0.1°,系统误差在0°~4.17°之间。油阀的铅封与解封操作分别执行五次,远程操控电控锁进行铅封、解封操作,未出现失误。
5 结束语
本文从油罐车运输安全角度出发,设计研发了基于SI1000的油罐车状态监测系统,实现了无线电子铅封以及罐壁温度、罐体倾角监测,该系统的应用可以有效预防由于罐体温度过高或油罐倾斜、漏油而引发的交通事故。经过实验测试,各个参数的测量误差值在5%以内,且系统运行情况良好,符合系统设计需求。测试过程中发现系统运行时间过长时存在数据库运行卡顿现象,下一步还需开发数据缓存功能,合理分配数据库空间,以保障系统运行顺畅。