基于“北斗一代”的Zigbee无线网关设计✴
2011-06-28文斌宁志强陈爱萍
文斌,宁志强,陈爱萍
(成都信息工程学院,成都610225)
基于“北斗一代”的Zigbee无线网关设计✴
文斌,宁志强,陈爱萍
(成都信息工程学院,成都610225)
为了解决野外多点数据采集无供电、布线复杂和通信困难的问题,提出了一种基于“北斗一代”的Zigbee无线网关设计方案。采用MSP430F6438、CC2341微处理器和一体化的RDSS“北斗”射频芯片完成低功耗、小成本的硬件设计。通过增加SIM卡的数量,将网关转发“北斗”数据的频率降至最低的5 s,提高了网关的通信速率。通过软件设计实现了Zigbee无线传感网络和“北斗一代”系统之间数据的透明交换。该方法已成功应用于野外油气井远程监控系统中。
“北斗一代”;Zigbee无线传感器网络;低功耗;网关设计;油气井远程监控系统
1 引言
系统供电和通信是野外无人值守监控系统很难解决的问题。目前有两种解决方案:一是精心选择数据监测点,保证有方便的电源和快速的通信链路。这种方案容易实现,但不一定能完全满足野外生产过程的需要;二是通过低功耗的无线传感器网络对区域目标点所采集的数据进行汇集,在汇集点通过现有公用通信网对数据进行集中传输。这种方案虽然优于前一种方案,但要求汇集点与采集点的距离不能过远,同时汇集点还需要有公用通信网络覆盖。以上两种方案均存在数据采集点不能随任意选取的问题。
针对上述问题,本文提出了一种基于“北斗一代”终端的Zigbee无线网关设计方案,该方案充分利用了Zigbee自组织网络和“北斗”通信系统全球覆盖的特性,实现了野外多点数据采集和远程数据传输,且不受电源和通信网络的限制,在野外可任意布置数据采集点。与现有的方案相比,本方案具有如下优点:采用Zigbee低功耗无线传感网络进行数据采集,可扩大监测范围;采用“北斗一代”用户终端,选择监测点时不受通信网络的限制;采用低功耗处理器和一体化的“北斗”射频处理模块,降低了网关的体积、成本与功耗;网关节点采用多SIM卡设计,克服“北斗”通信的速率瓶颈。
2 网关整体设计方案及硬件实现原理
网关连接了Zigbee无线传感网络和“北斗”两个独立的通信系统,需要在传输层以上进行协议转换,每接收一种协议的数据包后,在转发之前将其转换为另一种协议的格式。同时,网关还是Zigbee无线传感器网络的控制中心,能够主动扫描其覆盖范围内的所有数据采集节点,管理整个无线监测网络,接收来自监测节点的数据,并对数据进行校正、融合、压缩等处理。为此,网关采用模块化设计方案,其整体结构如图1所示,由硬件层、协议层和应用层三大部分组成。在应用层上开发相应的应用程序,实现网关数据的高效转发和无线传感器网络的管理功能;协议层主要完成UC/OS-II操作系统的移植和两种通信协议的实现;硬件层主要由“北斗”通信模块和Zigbee通信模块组成[1]。
图1 网关整体结构Fig.1 The general structure of gateway
网关硬件组成如图2所示,“北斗”通信模块主要由RDSS“北斗”射频芯片BG-DB-2416CX、MSP4306438微处理器、FPGA芯片EP3C120等低功耗器件以及6张发送频度为30 s的SIM卡构成[2]。Zigbee通信模块主要由低功耗CC2431处理器为核心构成。
为了提高网关远程数据通信速率,让6张SIM卡轮询工作,每5 s进行一次数据收发。这样每张SIM卡30 s的通信频度没变,而网关的通信频度缩短为原来的1/6。
图2 网关硬件组成Fig.2 The general structure of gateway hardware
3 网关软件设计
3.1 “北斗”数据收发协议
“北斗”数据收发协议如图3所示,帧头数据、发送目的地址、帧尾数据均为“北斗”系统所要求的数据段,严格按照其通信协议要求组织数据。帧号+数据类型占1 byte宽度,DATA为需发送的数据,其总的比特数最大为M-8,8为帧号+数据类型占用的比特数[3]。
帧号占高4 bit,编号为0~15。数据类型占低4 bit ,可根据需要对数据进行分类。
图3 “北斗”模块数据通信协议Fig.3 Data transmission protocol of Beidoumodel
3.2 Zigbee数据通信协议
为实现系统的监测和控制两大功能,其数据帧由帧标志、目标地址、源地址、帧优先级、数据类型、时间、数据等部分构成,如图4所示。
图4 Zigbee模块数据通信协议Fig.4 Data transmission protocol of Zigbeemodel
数据类型分为上行数据和下行数据,上行数据是监测数据,下行数据是控制命令。帧优先级+数据类型+时间共占3 byte,其中帧优先级占2 bit,数据类型占5 bit。时间表示为时、分、秒,共占17 bit,以秒为单位,从每天的0时0分0秒开始计时。
3.3 “北斗”通信模块软件设计
在MSP430F6438中移入UC/OS-II操作系统。根据网关功能,在UC/OS-II操作系统中主要设计以下几个任务:串行通信任务,完成Zigbee模块与MSP430的数据的交换;数据发送处理任务,根据数据转发优先级不同,分别进行处理;数据接收处理任务,对接收到的数据进行解帧,得到原始的数据流;SIM卡轮询发送处理任务,完成数据的组帧和发送;系统监控任务,对整个系统的工作状态进行监视。
3.3.1 多SIM卡协调工作发送数据程序流程
本网关选用通信频度为30 s的SIM卡6张,协同完成数据传送。在30 s内每张SIM卡轮询工作一遍。其程序实现算法如下:
(1)初始化,SIMNum=0;
(2)从发送队列读取要发送的数据;
(3)送卡号为SIMNum的SIM卡资料给FPGA;
(4)在2 s内等待FPGA锁定卫星信号,如时间到或没有锁定卫星型号转步骤3;
(5)发送数据到SIM卡,得到身份识别码,并组帧发送,SIMNum加1;
(6)在2 s内等待接收端的应答信息,如时间到或没收到对方正确接收的应答转步骤3,否则转下一步;
(7)发送队列读数据指针加1,并判断发送队列是否为空,如空就结束发送,微处理器进入低功耗模式,否则转下一步;
(8)判断SIMNum是否大于等于6,如是,则SIMNum=0,并转步骤2,否则直接转步骤2。
3.3.2 自动选择卫星工作信道的程序流程
“北斗一代”有东星、西星和备用星,共6个通信信道。由于地理位置和环境的变化,所收到的不同信道信号强弱各不相同,所以网关要在两颗工作星上分别选择信号较强的波束作为工作信道。其程序实现算法流程如图5所示。
图5 自动选择卫星工作信道的程序流程Fig.5 Flowchart of automatically selecting the satellite operation channel
3.4 Zigbee模块中应用层软件设计
Zigbee模块采用一体化的CC2431实现,其Zigbee协议的实现,通过TI公司提供的参考代码,根据实际需要进行裁减与优化,在软件编译时,选择“协调器”模式即可。Zigbee模块应用层软件中设置两个不同的队列,根据数据优先级的高低将数据分别放入两个队列中。高优先级队列中的数据发送完毕后,再发送另一个队列的数据。其数据接收解帧程序实现算法如下[4-5]:
(1)判断接收数据队列是否为空,如为空,任务结束;否则,从数据队列中读取数据并转下一步;
(2)判断读取的数据是否为数据帧头标识,如不是转上一步,否则,数据送入接收数组,并转下一步;
(3)继续从接收队列中读数据,如队列为空,任务结束,否则转下一步;
(4)判断是否收完所需数据,如收完转下一步,否则转上一步;
(5)从接收数据字段中取出数据类型,如是下行命令,根据目的地址,通过Zigbb模块向无线网络转发,并转步骤1;如是上行数据,则转下一步;
(6)从接收字段中取出帧优先级,如转发优先级较高,将数据送入高优先级发送队列,并转步骤1;如发优先级较低,则将数据送入另一个发送队列,并转步骤1。
4 测试
用3个Zigbee数据采集监测节点,与网关一起形成低功耗无线监测网络。为了便于测试与分析,在网关中运行一个测试程序[6],通过自发自收的模式进行“北斗”转发测试。在测试过程中将“北斗”信号快捕失败和接收解算错误等均作通信失败处理。数据一经发送,在规定的时间内没有收到返回数据就作发送失败处理,并重发数据,直到发送成功为止。当网关中的发送队列满时,说明“北斗”通信链路质量较差,将队列中的数据转入EEPROM中,同时向控制中心报警,并向采集节点发送命令,调整数据发送的时间间隔。在测试程序中统计每个监测节点发送数据的总帧数、重发的总帧数、失败的总帧数等相关技术指标,并通过串行口发送给PC机。
在PC机中运行一个监视程序模拟远程控制中心的功能,其运行界面如图6所示,其数据接收区显示内容为监测点发来的数据。卫星信号强度指示条最多为4条,只要信号强度指示大于1条就能进行通信,右边为节点3发送情况统计结果。为了测试网关在接收信号强弱不同的情况下数据发送的情况,通过改变网关接收天线的位置和方向进行测试,其测试结果如表1所示。
图6 数据接收监视结果Fig.6 Themonitoring results of data received
表1 不同信号强度下网关通信情况Table 1 Communication of gateway under differe nt signal strength
从表1中可看出,在不同信号强度下,经过10 h的连续测试,当接收信号强度超过2个指示条时,均能达到92%的成功率。当信号只有1个指示条时,由于有不稳定的情况,导致重发次数增加,发送成功率有所降低。
5 结论
网关内置了Zigbee和“北斗”通信协议,能同时完成对无线传感网络的管理和“北斗”数据的转发,并且两种协议均通过无线方式进行,方便野外监测区域的选取。由于网关的远程数据发送频度为5 s,一般野外监测节点每次所传送的数据量较小,“北斗”系统都能一次性转发,这样网关完全能胜任分钟级数据转发的需求。实际应用时可根据野外监测节点的数量,确定节点数据发送时间间隔,完成无人值守。在网关中采用了一体化的“北斗”射频芯片、低功耗微处理器,降低了网关的功耗、体积和成本。这种基于“北斗一代”终端的Zigbee无线网关,已成功应用于野外油气井远程监控系统中,具有较高的民用推广价值。
[1]乔大雷,夏士雄,杨松,等.基于ARM9的嵌入式Zigbee网关设计与实现[J].微计算机信息,2007,23(35):156-158. QIAO Da-lei,XIA Shi-xiong,YANG Song,et al.The Design and Realization of Embedded Zigbee Gateway based on ARM9[J].Microcomputer Information,2007,23(35):156 -158.(in chinese)
[2]朱斌.基于嵌入式微处理器的GPS跟踪报警系统设计[J].电讯技术,2010,50(4):88-91. ZHU Bin.Design of a GPSTracking Alarm System Based on Embedded Microprocessor[J].Telecommunication Engineering,2010,50(4):88-91.(in Chinese)
[3]文斌,宁志强,陈爱萍,等.多SIM卡复用的北斗通信终端设计[J].电讯技术,2010,50(12):23-27. WEN Bin,NING Zhi-qiang,CHEN Ai-ping,etal.Design of Beidou communication terminal using multi-SIM cards multiplexing[J].Telecommunication Engineering,2010,50(12):23-27.(in Chinese)
[4]尹应鹏,李平舟,郭志华.基于CC2430的ZigBee无线数传模块的设计和实现[J].电子元器件应用,2008,10(4):18-21. YIN Ying-peng,LIPing-zhou,GUO Zhi-hua.The Design and Realization of Zigbeewireless data transmissionmodule Based On CC2430[J].Application of Electronic Components,2009,11(4):37-40.(in Chinese)
[5]郭文川,程寒杰,李瑞明,等.基于无线传感网络的温室环境信息监测系统[J].农业机械学报,2010,41(7):181-185. GUOWen-chuan,CHENG Han-jie,LIRui-ming,et al. Green House Monintoring System Based on WireLess Sensor Networks[J].Society for Agricultural Machinery,2010,41(7):181-185.(in Chinese)
[6]高迪驹.基于北斗卫星通信系统的船载终端串口通信[J].上海海事大学学报,2008,29(4):10-14. GAO Di-ju.Shipborne Terminal Serial-port Communication Based on Beidou Satellite Communication System[J]. Journal of Shanghai Maritime University,2008,29(4):10-14.(in Chinese)
WEN Binwasborn in Chengdu,Sichuan Province,in 1970.He received the M.S.degree in 2007.He is now an associate professor.His research concerns development of communication product and embedded product.
Email:bwen@cuit.edu.cn
宁志强(1987—),男,新疆昌吉人,2011年获学士学位,主要从事无线与移动通信研发;
NING Zhi-qiang was born in Changji,Xinjiang Uygur Autonomous Region,in 1987.He received the B.S.degree in 2011.His research concerns R&D ofwireless andmobile communication product.
陈爱萍(1964—),女,四川成都人,1988年获硕士学位,现为副教授,主要研究方向为无线通信与射频技术。
CHEN Ai-ping was born in Chengdu,Sichuan Province,in 1964.She received the M.S.degree in 1988.She is now an associate professor.Her research concernswireless communication and radio frequency technology.
Design of Zigbee W ireless Gateway Based on Beidou First Generation
WEN Bin,NING Zhi-qiang,CHEN Ai-ping
(Chengdu University of Information Technology,Chengdu 610225,China)
Based on Beidou first generation,a Zigbee wireless gateway design scheme is proposed to deal with problems of outdoor data collecting,such as no power supply,complicated cabling and difficult communicating. This scheme uses MSP430F6438,CC2431,RDSSRF chip and so on,to design a gateway hardwarewith low cost and power consumption.By increasing the number of SIM cards,the gateway forwarding Beidou data frequency is reduced to 5 seconds,thus enhancing the data transmission rate of the gateway.This gateway can transparently convert the data between the Zigbeewireless sensor network and Beidou communications systems by using software design.Thismethod has been successfully deployed in field oil and gaswell remotemonitoring system.
Beidou first generation;Zigbeewireless sensor networks;low power consumption;gateway design;oil and gaswell remotemonitoring system
The Natural Sciences and Technological Developments Fund of Chengdu University of Information Technology(CSRF200805)
TP368
A
10.3969/j.issn.1001-893x.2011.09.019
文斌(1970—),男,四川成都人,2007年获硕士学位,现为副教授,主要从事通信产品以及嵌入式产品的开发;
1001-893X(2011)09-0092-04
2011-04-14;
2011-06-13
成都信息工程学院自然科学与技术发展基金资助项目(CSRF200805)