基于ZigBee的客车环境监测实验系统设计

2013-11-15 07:35吴远星王雪梅倪文波
中国测试 2013年4期
关键词:环境参数路由器终端

吴远星,王雪梅,倪文波

(西南交通大学机械工程学院,四川 成都 610031)

0 引 言

保持良好的客车内部环境是提高客车乘坐舒适性的重要内容之一[1]。本文所设计的监测系统选取了温度、湿度、气压和CO浓度4个环境参量作为监测对象[2-3]。为全面反映车厢内部环境状况,需检测、综合不同空间位置上的环境参数[4]。传统的监测方案一般采用EIA485或CAN等有线方式把多个分散的数据采集模块连接起来形成一个分布式的监测系统[5]。这种方式的好处是通信可靠性高、成本低廉,但是需要布线,不仅浪费空间,而且限制采集节点的安放位置选择。

ZigBee技术是一种新近出现的近距离、低复杂度、自组织、低功耗、低数据速率和低成本的无线网络通信技术[6]。其本身保证的数据传输速率和可靠性也适用于低速率的、非关键性的环境参数采集场合。鉴于此,本文研制了基于ZigBee无线传感器网络的环境参数监测实验系统,并将其成功应用于西南交通大学机车车辆实验室相关实验中。

1 系统总体方案设计

系统总体方案的原理框图如图1所述。整个监测系统由车辆管理计算机(上位机)和一个ZigBee无线传感器网络组成。ZigBee无线传感器网络中有协调器、路由器和终端节点3种设备。其中协调器为网络的发起和管理者;路由器负责路由转发远方节点的信息,从而扩充网络的覆盖范围;终端节点即数据采集模块。为省去电源线,使用两节七号电池给终端采集节点供电。一个ZigBee网络中有且仅有一个协调器,而路由器或终端节点则可以有多个。根据学校机车车辆实验室的车辆内部空间和设备的分布,选择了树状网络拓扑结构。

车辆管理计算机通过USB接口与ZigBee无线传感器网络的协调器相互传递数据。数据采集模块将采集到的环境参数直接或者通过路由器发送给协调器,协调器再实时转发给车辆管理计算机;管理计算机也可通过协调器给所有采集模块发送命令。

图1 系统原理框图

2 硬件电路设计

2.1 CC2430无线网络通信模块

系统硬件电路主要包括实现ZigBee网络的无线射频电路和实现环境参数采集的传感器电路。为了节约成本和提高系统的可靠性,无线射频电路利用市场上成熟的CC2430无线通信模块实现。该模块主要由一颗CC2430微控制器、少量的阻容器件以及天线组成。CC2430芯片内部整合了高性能2.4 GHz ZigBee射频(RF)前端、128 KB的片内Flash和一颗加强型8051微控制器。CC2430芯片性能稳定且功耗极低,特别适合于那些要求电池寿命非常长的应用。而且芯片硬件支持CSMA/CA功能,无线接收灵敏度高、抗干扰能力强[7]。该模块数据传输速率最大250kb/s,完全满足本系统的无线通信要求。

2.2 协调器电路设计

ZigBee协调器电路结构如图2所示。协调器电路由电源、CC2430通信模块、复位电路、USB通信接口等4部分组成。CC2430模块本身具有两个独立的串口。其中一个串口通过FT232RL芯片转化为USB接口与车辆管理计算机通信。整个电路模块从USB总线上获取电能。

图2 协调器硬件结构框图

图3 路由器/终端节点硬件结构框图

2.3 路由器/终端节点电路设计

路由器和终端节点使用同样的硬件电路,其电路结构框图如图3所示。由于终端节点使用电池供电,因此必须尽量选用低功耗的传感器。本文选用了SHT10传感器来测量温湿度。SHT10具有稳定性好、响应速度快、抗干扰能力强和性价比高等优点,其平均功耗仅150μW,并可自动进入待机休眠状态。SHT10温度准确度±0.5℃,相对湿度准确度±4.5%RH,使用两线制数字接口。气压测量选用MS5540C气压传感器。该传感器测量范围为10~1100mbar,平均功耗仅10 μW,可自动转入休眠状态。MS5540C是一款小巧的压阻式硅微机数字输出传感器,同时可输出16位的温度数字值。MS5540内部的可编程存储器中存有6个补偿系数。根据这些补偿系数可先后对气压测量结果作两次补偿得到±0.5mbar的气压测量精度。MS5540C使用其独有的三线数字通信协议与微控制器通信。CO浓度测量选择的是ME2-CO传感器。ME2-CO是一种电化学传感器,其本身是一个微型化学电池,无需电源,因此功耗极低。该传感器灵敏度为0.015μA/ppm,测量重复性好,线性度高。图4为传感器电路原理图。

3 监测系统软件设计

3.1 基于ZStack的ZigBee无线传感器网络程序设计

ZigBee协议栈是指一组可实现ZigBee协议规范的代码,支持ZigBee协议的应用必须在此基础上开发。本系统选用TI公司推出的ZigBee2006协议栈ZStack-1.4.2。ZStack-1.4.2完整实现ZigBee联盟和IEEE 802.15规定的协议规范,具有功能完整、结构清晰、应用广泛等特点[8],是开发ZigBee应用的较为不错的选择。利用ZStack提供的基本程序框架和接口函数,用户可很方便地构建自己的ZigBee应用。

ZStack基于一个名为OSAL(operation system abstraction layer)的程序框架实现。OSAL是以实现多任务为核心的某种系统资源管理机制,可看成是一个简易的基于任务优先级的多任务、非抢占型操作系统。ZigBee协议规范中各层规定的原语操作均以具有优先级的任务的形式嵌入到OSAL当中实现。每个任务处理函数由若干个事件处理函数构成。OSAL以一定的顺序不断地轮询各层任务,一旦某一层任务有事件发生时,OSAL便会跳到相应任务处理函数中的相应事件处理函数中去完成事件的处理。事件处理完后又从最高优先级任务开始轮询,如此周而复始。当一轮循环中找不到待处理任务时,系统将进入低功耗模式直到下一个事件发生。ZStack程序流程图如图5所示。

ZigBee协议规范把应用抽象为“端点”,端点驻扎在设备对象层(ZDO)上。每个设备最多有1~240个端点,端点0可看做设备本身。不同设备之间的通信实际上是不同设备端点之间的通信。ZigBee协议规范使用一种称为简单描述符的数据结构来描述端点。简单描述符由端点号、设备号、版本号、簇等描述性信息组成。簇指一组属性——如温度、湿度等物理量的集合。簇分为输入簇和输出簇,即信息的流入和流出。一个设备上的输入簇和另一个设备上的输出簇配对。为使协调器能和终端采集节点或路由节点相互通信,给协调器定义了两个输入簇,一个输出簇:一个输入簇用于接收采集模块的采集报告,另一个用于接收其他节点对协调器发出的命令的响应,输出簇则用于向终端采集节点或路由节点发送命令。路由器和终端节点中定义的输入输出簇与协调器相反。

协调器在所有任务层完成初始化后自动建立网络。之后,在每次操作系统大循环中协调器都要查询串口。如果上位机有数据传送至协调器,将会产生一个发送给应用层的系统消息,这将触发应用层的用户事件。协调器的无线数据接收最终触发应用层的数据接收事件,在该事件处理函数中对接收到的数据作进一步处理。数据采集报告在该事件处理函数中被通过串口发往上位机。

路由器和终端节点完成所有层的任务初始化后会自动搜索网络(扫描信道),并加入协调器发起的网络(如果此时协调器存在并且成功启动)中。之后,路由器或终端节点向协调器发送绑定请求。获得协调器的允许绑定响应后,终端节点触发周期性传感器报告事件,在该事件中完成环境参数的采集并以一定的格式将采集结果无线发送至协调器。

图4 传感器电路原理图

图5 ZStack程序流程图

本系统中的ZigBee网络是一种非信标的网络。终端节点和路由节点周期性地向协调器发送数据采集报告,协调器根据应用程序可主动向网络中的成员广播或单播命令。终端节点大部分时间处于休眠状态,只在有事件发生时醒来。这使得终端节点具有很低的功耗。

3.2 上位机软件设计和实验测试

上位机监控程序基于LabVIEW10.0平台开发。其主要功能是图形化显示各采集模块采集的数据,如温湿度、气压、CO浓度、露点(根据温湿度算得)、海拔高度(根据气压、温度算得)、显示当前网络成员、CO浓度超限报警、显示采集模块电池电压、历史数据记录等。此外,上位机还可对协调器发送一些命令,如重新设置传感器采样频率、复位所有采集节点、获取并显示当前网络拓扑结构等。实验过程中,系统通信稳定,网络在被暂时阻断情况下可自行快速修复。

测试过程中,终端采集节点休眠电流在0.5~7mA的范围内跳动。如果减少单个采集模块上的传感器种类,适当降低传感器采样频率,功耗还可进一步减小。实验时只采用4个终端采集节点。如果要扩大监测范围,可增加采集节点和路由器的个数。这时无须使其他改变,增加上位机显示单元即可。

4 结束语

本文设计了基于ZigBee无线传感器网络的列车车厢内部环境参数监测系统,并将其成功应用于西南交通大学机车车辆相应实验系统中。相对于原先的有线检测方案,本系统具有通信方式灵活、安装方便快捷、易于配置和方便增加采集节点数量的良好特点;同时针对原系统上位机软件功能单一、交互性弱的不足,设计了基于LabVIEW虚拟仪器平台的功能丰富、交互性强的上位机软件,使得系统的实用性和易用性更强。最后经实验检验,系统性能表现良好,达到预期设计的功能要求。

[1]张吉光,王利,史自强,等.空调客车车内空气品质的评价方法[J].铁道机车车辆,2001,39(3):22-23.

[2]赵恒.空调列车室内微循环研究现状综述[J].铁道机车车辆,2005,25(1):44-47.

[3]滕广武,欧阳仲志.铁路高速动车组空调试验和舒适性要求[J].铁道车辆,2009,37(10):30-32.

[4]兆文忠,曹亚楠,王东屏,等.高速动车组空调系统数值仿真及引入UIC标准的评价[J].大连交通大学学报,2011,32(1):7-10.

[5]吴晓娜,王雪梅,倪文波.基于CAN总线的客车车内环境实验检测系统设计[J].中国测试,2010,36(6):82-85.

[6]周怡寤,凌志浩,吴勤勤.ZigBee无线通信技术及其应用探讨[J].自动化仪表,2005,26(6):5-9.

[7]蒋凌云,马奥,吕亚超,等.基于CC2430片上温度传感器的温度监控系统[J].计算机技术与发展,2012,22(4):191-194.

[8]马骏.基于ZigBee技术的嵌入式监控系统设计与实现[D].成都:电子科技大学,2009:52-97.

猜你喜欢
环境参数路由器终端
买千兆路由器看接口参数
维持生命
复杂线束在双BCI耦合下的终端响应机理
路由器每天都要关
路由器每天都要关
基于梯度提升决策树算法的鄱阳湖水环境参数遥感反演
X美术馆首届三年展:“终端〉_How Do We Begin?”
基于云平台的智能家居环境参数协同监控系统设计
列车动力学模型时变环境参数自适应辨识
通信控制服务器(CCS)维护终端的设计与实现