基于ZigBee技术的XBee Pro模块在智能公交系统中的应用
扫描二维码
随时随地手机看文章
随着国内经济的高速发展,城市的规模在不断扩大,尤其是各种交通工具的增长更迅速,从而使城市交通需求与供给的矛盾日益突出,而单靠扩大道路交通基础设施来缓解矛盾的做法已难以为继。在这种情况下,智能公交系统(Advanced Public Transportation Systems,APTS)也就应运而生,并且成为近年来国内研究的热点。在智能公交系统所涉及的各种技术中,无线通信技术尤为引人注目。而ZigBee作为一种新兴的短距离、低速率的无线通信技术,更是得到了越来越广泛的关注和应用。目前市场上也出现了大量与ZigBee相关的各种产品,其中,比较有竞争力的ZigBee解决方案主要有下面几种:
(1) Freescale:MC1319X平台;
(2) Chipcon:SoC解决方案CC2430;
(3) Ember:EM250ZigBee系统晶片及EM260网络处理器;
(4) Jennic的JN5121芯片;
经过市场调研,发现Freescale的MC1319X平台功耗低、价格低廉、硬件集成度高,方便二次开发,射频通信系统的稳定性高。所以,在本文的设计中选用了MaxStream公司与ZigBee兼容的以Freescale MC1319x芯片组为核心的XBee Pro RF模块。下面主要介绍Xbee Pro的特性、接口应用、操作模式以及在智能公交无线网络中的应用。
1 XBee Pro模块的特性与接口
XBee模块的基本性能参数如下:
(1)发送功率:100 mW;
(2)接收灵敏度:-92 dBm;
(3)室内传输距离为100 m,室外传输距离为1500m;
(4)RF数据传输速率为250 kbps;
(5)在3.3 V电源下,发送电流为215 mA,接收电流为55 mA:
(6)在网络性能方面,具有DSS(直接序列扩频)功能,可以组成对等网、点对点及点对多点网络,具有12个软件可选的直接序列信道,每个信道有65 000个可用网络地址。
XBee Pro模块体积小,功耗低,接口简单,容易使用,非常适用于低数据速率的短距离通信应用,尤其是无线传感网络的设计应用。XBeePro模块还提供有免费X-CTU测试软件以便能够轻松测试和配置网络。该模块还可以通过下载该公司最新的固件(Firmware),使用户在使用原有硬件模块的基础上,获得最新的功能,从而为设计提供了极大的灵活性。
图1所示是XBee Pro模块的引脚图。Xbee Pro有20个引脚。其中引脚中的VCC、GND、DOUT及DIN用于与RS232接口的电路板引脚连接。VCC引脚是电源引脚,范围为2.8~3.4 V;GND为地引脚;DIN引脚信号方向为输入,作为UART的数据输入,通常与处理器的UART接收端TX相连;DOUT引脚信号方向为输出,作为UART数据输出,通常与处理器的UART接收端RX相连。MaxStream公司发布的fimrwaer版本暂不支持引脚ADO-AD5、DIO0-DIO7以及DO8的功能。
在XBee Pro模块中集成有一个UART接口,其内部结构如图2所示。
当串行数据通过DIN引脚进入XBee Pro模块后,数据会先存储在DI缓冲器中,直到被发送器通过天线发送出去;当天线接收RF数据后,接收数据则先进入DO缓冲器,然后再串行送入主机中。在一定条件下,模块可能无法立即处理串位接收缓冲中的数据,这个时候就需用到CTS流控以此来避免因大量串行数据输人而造成接收缓冲溢出的问题。XBee Pro模块可以通过UART接口直接与控制器的UART接口相连,其硬件接口非常简单实用。
2 XBee Pro模块的操作模式
XBee Pro有空模式、接收模式、发送模式、睡眠模式和命令模式等5种操作模式,如图3所示。每一种操作模式都有透明方式和应用程序接口(API)方式两种操作方式。当工作在透明方式时,模块可起到替代串口线的作用,并以字节为单位来处理各种信息;当工作在API方式下,所有进出模块的数据均被包含在定义模块的操作和事件的帧结构中。本设计采用API操作方式。
API操作要求模块之间采用一种结构化的接口(数据通过一种定义好序列的帧来交互通信来进行通信)来进行通信。同时API规定了通过串口数据帧如何发命令、命令响应以及模块状态信息的传送与接收。
3 XBee Pro模块在智能公交系统中的应用
在站牌处通常会有多辆公交车同时到达,一个站牌对应多辆公交车,适合使用星状网布线网络。但为了保证网络的可靠性,当公交车站牌外的通道阻塞时,可以通过其它公交车路由节点转发到站牌,本设计采用网状(Mesh)网模型。可将分布在公交线路上的电子站牌配置为协调器,而将到达的公交车配置为路由器。当站牌上ZigBee网络协调器选择一个信道和PAN ID并启动时,便建立了一个ZigBee个人局网(PAN)。一旦协调器已启动PAN,便可允许路由器和终端设备结点加入PAN。路由器加入PAN时,将收到一个16位的网络地址,并且能够发送和接收来自PAN内其他设备的数据。PAN协调器的网络地址总是0。由于站牌上ZigBee模块的网络物理地址是唯一的,可以通过物理地址向站牌发送信息。
公交车到达站牌后,根据站牌的MAC地址将日期、时间、车号、公交线路、车内人数、行驶方向等信息发送到电子站牌。公交车ZigBee模块发送模式的API帧结构定义如图4所示。
为实现可靠的传输,当公交车传送信息给电子站牌的请求完成后,必须得到电子站牌的信息确认信息,因此还必须得到电子站牌回馈给公交车的发送状态信息。这个信息将指出数据包是否被成功发送。如果发送失败就必须重新发送公交车的信息,直至发送成功。图5为TX的状态帧结构。其中的Bytes 9指出了传送状态信息,Bytes6、7为接收模块的16位网络地址。
电子站牌ZigBee模块接收模式的API帧结构定义如图6所示。
可以通过XBee Pro模块提供的配置软件X-CTU来进行命令参数的配置,也可以通过输入“+++”进入命令模式来进行配置。XBee Pro模块的命令格式如下:
AT ASCIlI码命令空格参数(可选)回车
表1所列是对电子站牌终端的ZigBee模块进行的参数设置。
公交车的ZigBee模块须设置为路由器(Rooter)模式,并且应保证通道和PAN ID与电子站牌设置相同。经过测试,该系统运行稳定。
4结束语
本文介绍了MaxStream公司与ZigBee/IEEE802.15.4协议兼容的Xbee Pro模块的性能特点及其在智能公交系统无线通信中的应用。目前,该公司发布的针对Xbee Pro模块的网状网firmware版本,大大加强了其组网功能。随着ZigBee技术的普及,Xbee Pro模块也将在无线传感网络中得到更广泛的应用。