1. 引言
随着我国整体经济的发展与科学技术的飞跃,为了适应货物快速运输需求,现代物流行业依靠各类运输工具得到飞速发展。铁路货运具有运输量大、安全性高、抗干扰性强、环境污染小等特点,是货运的主要承运形式。目前高速铁路技术及应用在我国取得显著成就,为适应快速货运新形势,国家提出了时速250 km以上货运动车研制项目。货运动车组运输货物价值高、速度快,为了确保集装箱内货物安全,需要对集装箱内温湿度、振动、氧气浓度等各项参数进行实时监测,并依据实际情况进行提示或报警。
本文研制一种基于ZigBee技术的货物全息状态在线监测系统。该系统采用ZigBee协议栈搭建无线传感器通讯网络,在集装箱内设置供电、感知、传输一体化的信息采集终端,采集终端将监测到的数据通过ZigBee路由器或直接传输至协调器,再由协调器以串口通信方式传输到车载处理中心,车载处理中心进行报警或其它处理,并将数据传输到地面数据中心,地面监控中心进行货运动车组货物状态的综合监控、知识提取,并依据实际情况发送控制命令。
2. 基于ZigBee的无线传感器网络
无线传感器网络(WSN)是一种分布式传感网络,它的末梢是可以感知和检查外部世界的传感器。WSN系统通常包括终端节点(End Device)、路由节点(Router)和协调器节点(Coordinator),分别实现数据的采集、传输和处理功能,且具有自组织、动态扩展、动态组网、高可靠、以数据为中心的特点 [1] 。WSN中的信息通过无线方式通信,网络设置灵活,设备位置可随时更改,可与互联网进行有线或无线方式进行互联。目前WSN广泛应用于军事、智能交通、环境监控、医疗卫生等多个领域 [2] 。
ZigBee是基于IEEE802.15.4标准的低功耗局域网协议,是一种近距离、复杂度低、低功耗、低速率、低成本的双向无线通讯技术。国内的ZigBee多工作于2.4 GHz频段,最高传输速率可达250 Kbit/s,最低为20 Kbit/s,传输的距离为10~75 m,可以连接最多254个节点 [3] ,是介于无线标记技术和蓝牙技术之间的技术方案,组网能力强,可以形成星型、树型及Mesh等ZigBee网络。
星型网络是ZigBee技术中最简单的组网形式,包含一个协调器节点和一系列终端节点。每个终端节点只能和协调器节点进行通讯,如果两个终端节点需要通讯则必须通过协调器节点,其优点是结构简单可靠、延迟低、低功耗(除中央节点外,子节点都可休眠),缺点是终端数量有限,中央节点负担重,一旦发生故障,则全网受影响;树形网络由一个协调器节点以及一系列的路由节点和终端节点构成。协调器节点连接一系列路由节点和终端节点,它的子节点的路由节点也可以连接一系列的路由节点和终端节点,可以重复多个层级。Mesh网络是较为复杂的组网形式,包含一个协调器节点、多个路由节点以及一系列的终端节点,其中协调器节点和路由节点构成骨干网络,协调器节点接收各路由节点发送的数据,各路由节点之间可以相互通讯,终端节点只能向路由节点发送数据,其最大优点是如果最近的AP由于流量过大而导致拥塞,数据可以自动重新路由到流量较小的邻近路由节点进行传输。图1表达了三种组网方式的拓扑图。

Figure 1. Topology diagram of network structure
图1. 网络结构拓扑图
3. 总体方案
货运动车组货物全息状态监测系统由车载单元和地面数据与信息处理中心组成,如图2所示。车载单元基于ZigBee协议栈技术,采用树状组网形式,负责集装箱环境信息(振动、温湿度、含氧量)的采集与传输,主要由协调器节点、路由器节点、采集终端节点以及车载数据处理中心组成,如图3所示。采集终端节点主要负责环境信息的采集,路由器节点主要负责转发采集终端节点感知的信息,协调器节点主要负责组网以及与车载数据处理中心进行数据通信。车载数据处理中心基于树莓派微型计算机搭建,负责数据处理工作并将数据传输到地面数据中心。由于ZigBee工作于2.4 GHz的频段,波长较短,传输距离和穿透能力比较弱,因此加入具有路由功能的ZigBee模块 [4] 。采集终端节点由电池、ZigBee模块、传感器构成,安装在集装箱上。路由器节点布置在车厢中部,以保证采集终端节点顺利与路由器节点通讯。协调器节点配置在驾驶室,协调器节点采用RS-232串口方式与树莓派(Raspberry Pi 3B+)车载处理中心连接。车载处理中心处理数据,进行数据显示、警告、报警等操作,并通过有线或者无线网络将数据传输至地面数据中心 [5] 。地面数据与信息处理中心由数据接口系统、数据库、数据分析系统、指挥中心等组成,对所有货运动车组的货物状态进行综合监控,达到安全预警及控制的目的 [6] 。

Figure 3. ZigBee network layout of vehicle unit
图3. 车载单元ZigBee网络布置图
4. 车载单元
货运动车组货物全息状态监测系统车载单元主要由ZigBee网络节点以及各类传感器组成。ZigBee协调器、路由、终端等网络节点均采用德州仪器生产的CC2530模块与RFX2410开发板;传感器主要有温湿度传感器DHT11、氧气传感器、加速度传感器、烟雾传感器。车载处理中心基于Raspberry Pi 3B+开发。终端节点将传感器采集的数据经由路由发送给协调器,协调器节点采用RS-232串口有线的方式与Raspberry Pi 3B+连接。
4.1. 硬件选型与搭建
协调器节点与路由器节点的硬件结构相同,主要由RF收发器模块、微控制器模块、UART数据传输模块、JTAG调试下载模块以及电源供电模块组成,如图4所示,在供电方式上,协调器节点与路由器节点有区别,协调器节点由于与车载处理中心相连,故采用USB供电;路由器节点具有自治性,采用电池供电。两种节点在应用开发时,采用IAR Embedded Workbench IDE软件开发环境,分别将协调器与路由模块中的ZigBee协议栈程序编码、编译、下载到对应的节点中,下载程序时使用TI公司生产的SmartRF04EB仿真器,该仿真器采用USB供电。

Figure 4. Hardware structure diagram of coordinator node
图4. 协调器节点硬件结构图

Figure 5. Hardware structure diagram of terminal node
图5. 终端节点硬件结构图
终端节点由传感器、供电模块、ZigBee模块组成,如图5所示,温湿度传感器选用DHT11,湿度精度±5% RH,温度精度±2℃,湿度量程20%~90% RH,温度量程0℃~50℃,具有超快响应、抗干扰能力强、性价比高等优点。氧气传感器选用英国阿尔法公司生产的O2-A2型号氧气传感器,属于电化学气体传感器,测量范围为0%~30%,通过氧气信号处理转接板与CC2530模块相连接,并依据电压信号与氧气浓度的线性关系,经过CC2530模块ADC采样即可测得氧气浓度,如图6所示。

Figure 6. Oxygen concentration collection terminal node
图6. 氧气浓度采集终端节点

Figure 7. The coordinator runs the flowchart
图7. 协调器运行流程
加速度传感器选用型号为AD100T的IEPE加速度传感器,是一种自带电量放大器或电压放大器的加速度传感器,该款加速度传感器的灵敏度能达到100 mV/g,测量量程为±50 g。烟雾传感器选用MQ-2型烟雾传感器,该传感器属于二氧化锡半导体气敏材料,属于表面离子式N型半导体。该传感器具有良好的重复性和长期的稳定性,其检测可燃气体与烟雾的范围是100~10,000 ppm。
4.2. 软件设计
车载单元基于Z-stack2007协议栈进行协调器、路由、采集终端软件开发,它提供CC2530硬件所需的底层协议代码,可有效降低开发工作量。ZigBee协议栈由物理层(PHY)、媒体访问控制层(MAC)、网络层(NWK)以及应用层(APL)组成 [4] 。其中PHY定义ZigBee网络所运行的两个不同频率范围:868/915 MHz和2.4 GHz,MAC使用CSMA-CA机制控制无线信道的访问,NWK负责设备到设备的通信,并负责网络中设备初始化所包含的活动、消息路由和网络发现,APL可以通过ZigBee设备对象对网络层参数进行配置和访问。本车载单元主要在应用层上进行开发,主要涉及主文件(.c文件)、头文件(.h文件)和接口文件,开发工作主要针对传感器协议植入、路由优化等 [5] 。
协调器的主要作用是组网,其工作原理如图7所示,协调器节点通电后,首先采用初始化函数对Z-stack初始化,然后扫描信道以及评估空闲信道,并从中选择合适的工作信道和网络标识符,启动ZigBee网络发送信号,然后等待ZigBee终端节点的连接请求,并对终端节点发来的信息进行认证,以确认是否是合法节点发来的信息,待确认无误后,协调器节点将发出连接命令,实现终端节点与协调器的连接,从而组ZigBee网络 [6] 。路由器弥补协调器与终端无法远距离通信的缺陷,在路由器节点通电后,首先对Z-stack初始化,然后扫描信道,寻找可加入的网络。当路由器节点检测到协调器节点发出的信号时,发送建立连接请求,完成路由器节点与协调器节点的连接。路由器与终端节点的连接与之相类似,终端节点发送建立连接请求,完成路由器节点与采集终端节点的连接。终端节点的工作原理如图8所示,首先通过初始化系统参数,读取数据,之后开始发送节点地址,等待路由器节点响应后发送数据长度,确定长度后路由器节点可以预留合适的空间存储数据而后接收数据、接收效验码。任务结束后,进入睡眠状态,节省电源,路由器接收下一发送模块的数据,并将刚接收的数据发送给协调器。
5. 地面数据与信息处理中心
地面信息处理中心基于LabVIEW进行开发,提供了人机交互界面 [7] 。其主要作用是提供与车载单元进行数据交换的接口、进行数据分析、对异常情况进行报警、设置车载单元的报警阈值等。具有功能如下:
1) 数据存储。基于大数据平台架构,建立数据存储基础设施。
2) 数据接口。为数据存入提供数据接口,便于车载单元的数据的输入;提供报警阈值的输出接口,便于车载单元的阈值设置。
3) 用户及权限管理。建立用户、角色,分配用户权限。普通用户的操作权限主要是调取相关参数监控的状态,而管理员用户的操作权限还包括相关阈值的设定以及相关数据的删除与恢复。
4) 数据可视化功能。数据存储的目的是用于信息统计分析,便于进行安全性与可靠性分析;通过数据可视化技术,便于从海量数据中快速获取信息和知识。
5) 报警功能。当某一项监测参数超出阈值时,应当启动报警功能,对于不同监测项目的报警提示应不尽相同,以示区分。
致谢
论文得到国家重点研发计划(2017YFB1201304-14),神华科技创新项目(SHGF-18-57)资助,在此表示感谢。