无网络区域的无线传感器网络数据远程传输系统*
2014-12-31陈少峰邓周虎房鼎益陈晓江
陈少峰,邓周虎,谢 冰,房鼎益,陈晓江
(西北大学信息科学与技术学院,陕西西安 710127)
0 引言
无线传感器网络、主要应用于军事、工农业、生物医疗、环境保护等领域进行监测、跟踪以及侦查等[1,2],通常是在环境较为恶劣、地处偏远、电力供应不完善、无公网覆盖的野外环境中使用,因此,现有的无线传感器网络(WSNs)网关很难实现恶劣环境下的数据传输。
物联网网关作为连接感知网络与传统通信网络/互联网的桥梁,既要实现感知网络与现有的通信网络/互联网的无缝连接,又要完成对传感器网络和感知节点的管理与控制,在整个无线传感器网络中起到枢纽作用。常用无线传感器网络网关与公网之间的数据传输方式分为有线和无线两大类。一般是通过网关内置的以太网接口/公共电话网接口/现场总线/WLAN/GPRS/GSM/3G(TD-SCDMA)/蓝牙等模块实现公网的接入[3~5],基本可以满足复杂环境下的数据转发需求,但存在数据处理能力有限、蓄电池供电不足导致的生存周期短等问题,而且在无公共网络覆盖地区无法实现数据的转发。
本研究小组在使用无线传感器网络技术进行秦岭野生动物资源智能感知研究项目中,需要在秦岭北麓金丝猴保护区部署无线传感器网络监测野外环境下野生动物生存状态,但由于无公众网络的支持,无法实时获取无线传感网采集的数据,只能由人工定期到采集现场提取网关存储数据,使数据获取的实时性和完整性大打折扣。因此,设计一种适用于无公网覆盖地区的无线传感器网络数据远程传输系统具有十分重要的意义。
1 数据远程中转传输方法
为了使无公网覆盖区域的无线传感器网络数据实现远距离传输,需要结合不同频段无线通信技术的特点,采用跨频段转接技术,结合2.4GHz频段的高速率优势与UHF/VHF频段远距离传输的良好性能,构建集成有2.4 GHz频段收发模块和UHF/VHF频段收发模块的数据传输系统[6,7]。
该系统由部署在无公网覆盖区域的数据差转单元和部署在有公网覆盖区域的转接单元2个部分组成。分布在无公网监测区域内的Zig Bee节点采集数据通过无线多跳的方式发送给数据差转单元,该单元接收到数据并处理后,再通过UHF/VHF频段远程中转传输给部署在有公网覆盖区域的转接单元;转接单元接收到数据后,由公网接入单元根据其所处网络环境,选择有线方式(如,以太网、公共电话网和现场总线等)或无线方式(如,WLAN/GPRS/GSM/3G(TD-SCDMA)/蓝牙等)接入公网,实现Zig Bee节点与远程监控中心的数据通信。由于UHF/VHF频段无线数传模块最大通信距离可根据其发射功率在5~50 km范围内调整,使用中可根据实际应用情况通过多级中继延伸覆盖范围,所以,该传输方法与公网相结合几乎可以达到无缝覆盖。适用于无网络覆盖地区的数据远程中转传输方法如图1。
图1 适用于无网络覆盖地区的数据远程中转传输方法Fig 1 Remote relay transmission method of data suitable for areas without network coverage
2 系统硬件平台设计
该系统包括数据差转单元和转接单元两部分,其系统结构框图如图2。其中,数据差转单元由数据汇聚模块、ARM微处理器、UHF/VHF频段无线数传模块、电源管理模块组成。转接单元由UHF/VHF频段无线数传模块、ARM微处理器、GPRS模块/WAN模块、电源管理模块组成。
图2 系统结构框图Fig 2 Structure block diagram of system
2.1 系统核心电路设计
ARM微处理器作为系统的核心[8],分别在数据差转单元和转接单元中负责系统各线程任务的管理和协调、处理传感器节点的数据、将采集的有效信息中转传输到远程监测中心、执行监测中心的控制指令和控制系统的休眠调度等。设计采用S3C2440A为控制器电路的微处理器芯片,嵌入式操作系统Linux管理各个任务的协调和调度。该芯片采用了ARM920t内核,集成了外部存储控制器(SDRAM控制和片选逻辑)、LCD控制器、4通道DMA、3通道UART、2通道SPI、2端口USB、4通道PWM定时器、1通道内部定时器、看门狗定时器、130个通用I/O口和24通道外部中断源等,具有功能强大、功耗低等优点,其全静态设计适合于对成本和功耗敏感型的应用开发。微处理器的外部存储单元包括SDRAM、用于固化程序的FLASH和暂存采集数据的32 Gbit SD卡。外围接口电路包括一个异步串行接口(UART1)、由MAX232扩展的2个RS—232串口、1个HOST USB1.1接口、1个40针的LCD液晶屏接口、GPIO扩展接口和支持ADS1.2和keil等软件单步调试用的JTAG接口。系统核心电路如图3。
图3 系统核心电路框图Fig 3 Core circuit block diagram of system
2.2 数据汇聚模块电路设计
数据汇聚模块用于接收并汇聚Zig Bee节点采集的数据[9],射频芯片采用CC2420。该芯片是一个基于无线传感器网络Zig Bee/802.15.4标准的片上系统,工作在2.4 GHz频段,接收灵敏度-98 dBm,抗邻道干扰能力为39 dB,数据传输速率250为kbps。它有多种工作模式,适合于能耗极低的系统,通过SPI接口与数据差转单元的ARM微处理器连接实现与Zig Bee节点的数据收发。以CC2420为核心的数据汇聚模块电路原理图如图4所示。
图4 CC2420数据汇聚模块电路原理图Fig 4 Principle diagram of data aggregation module circuit of chip CC2420
2.3 UHF/VHF频段无线数传模块电路设计
UHF/VHF频段无线数传模块由ISM频段无线芯片Si4432和外围电路组成,该芯片是一种高集成度、低功耗、多频段的EZRadioPRO系列无线收发芯片,可工作在UHF/VHF频段。芯片内部集成分集式天线、唤醒定时器、数字调制解调器、可配置的GPIO等,天线接收灵敏度-124 dBm。通过SPI接口、GPIO接口与ARM微处理器连接,实现数据差转单元与转接单元之间的远距离传输。以Si4432为核心的UHF/VHF频段无线数传模块电路原理图如图5所示。
图5 UHF/VHF频段无线数传模块电路原理图Fig 5 Principle diagram of UHF/VHF band wireless data transmission module circuit
3 系统软件平台设计
系统软件设计为多线程任务方式,采用同一进程多个线程的方式来实现多任务并发执行,以提高用户界面的响应能力和数据交换的效率。软件包括用户控制命令接收线程、无线传感网接收线程和休眠调度线程。用户控制命令接收线程负责与用户交互操作,接收处理用户的控制命令;休眠调度线程用于控制系统自身的休眠唤醒;无线传感网接收线程用于控制数据汇聚模块实时监听采集数据。主程序流程如图6所示。
图6 主程序流程图Fig 6 Flow chart of main program
针对野外环境下系统电源供给不足的问题,设计中采用太阳能与风能互补作为其主要能源,该方法在一定程度上解决了能源补给的问题,为进一步提高其野外生存周期,设计中引入节点的休眠调度思想,从根本上降低系统的平均功耗。为减小传输延迟,系统采用的休眠调度算法与无线Zig Bee节点算法必须保持一致,设计中把整个系统看作一个Sink节点,和无线Zig Bee节点一起采用相同的休眠调度算法。由于UHF/VHF频段无线数传模块静态功耗和发射功率较大,对该部分的休眠调度管理是本设计的重点,UHF/VHF频段无线数传模块具有3种节电模式:硬件唤醒模式、串口唤醒模式和空中唤醒模式。硬件唤醒模式是其中最省电的一种,休眠电流小于10μA,设计中将UHF/VHF频段无线数传模块的硬件唤醒控制引脚SLE与ARM微处理的GPIO接口相连,使GPIO接口输出高低电平来控制其休眠唤醒。ARM微处理器也具有睡眠唤醒功能,在SLEEP模式下,给CUP和内部逻辑单元供电的电源被关闭,只有唤醒模块与相应GPIO接口是工作的。这种状态下,可以通过外部中断或RTC(real-time clock)中断将系统从睡眠状态中唤醒。由于ARM微处理器具有实时时钟芯片RTC,数据差转单元与转接单元之间可通过时钟芯片RTC实现精确的时间同步,因此,该系统的休眠调度策略具有较好的简易性、稳定性及精确性。图7是系统的休眠调度时序图。
图7 休眠调度时序图Fig 7 Timing diagram of sleep scheduling
4 系统性能测试
将传感网数据差转装置布置在西北大学信息科学与技术学院大楼前的空地里,在其周围的树上随机部署了30个传感器节点Micaz motes,用于采集温湿度、光照等环境数据,采集周期为10 s,无线数传—公网转接装置布置在大楼的楼顶,它们和监测中心的服务器一起组成一套完整的传感网监测系统。
4.1 丢包率测试
中转传输系统丢包的主要原因有以下几种可能:
1)从无线传感器网络的节点汇聚数据时丢包;
2)UHF/VHF频段远距离传输时丢包;
3)将数据发送到远程监测中心时丢包。
对于第1种可能性,同时部署了一个Sink节点,使用其汇聚的数据包作为参考,即可以测试出系统从无线传感器网络的节点汇聚数据时丢包情况;对于第2种可能性,由于传感器节点发送的数据包中有节点ID和数据包的序列号字段,因此,可以通过ARM微处理器单元统计接收到的数据包的序列号来查看是否有丢包情况;对于第3种可能性,可以直接通过远程监测中心的数据库统计接收到的数据包的序列号来查看是否有丢包情况。每隔5 min进行一次丢包统计,总丢包率的实验结果如图8所示。
图8 数据丢包率Fig 8 Packet loss of data
系统的平均丢包率为0.17%,且随着时间的增加,丢包率无较大的起伏变化,说明该系统具有足够的稳定性。
4.2 时延测试
中转传输系统的时延是指从数据汇聚单元接收到数据包开始到将数据发送给远程监测中心之间的时间间隔。在此项测试中,当数据汇聚单元接收到数据包时,将数据包的接收时间记录在传感网差转模块的ARM微处理器单元文件中,当无线数传—公网转接模块将数据包发送给远程监测中心时,再把数据包的发送时间记录在无线数传—公网转接模块的ARM微处理器单元的文件中,即可计算出每个数据包的中转传输时延。系统每接收并发送500个数据包计算一次数据包平均转发时延。最终统计结果如图9所示。
图9 数据延迟统计图Fig 9 Statistics charts of data of delay
计算求平均后得到系统的平均时延为81 ms,且随着传输数据包个数的增加,时延无较大的起伏变化,说明该系统具有足够的稳定性与鲁棒性。
5 结论
本文提出了适用于无网络覆盖地区的无线传感器网络远程数据中转传输系统的设计和实现方案,该系统集成了UHF/VHF频段无线远程传输功能,能在环境较为恶劣、偏远、基础通信设备不完善、无公共通信网络覆盖的野外环境下,对无线传感器网络进行数据采集、显示、存储以及控制等,实现传感网的远程监测功能,且该系统不仅利用太阳能及风能为系统补给能源,还运用休眠调度策略,降低系统的功耗,提高了系统的野外生存周期,满足无线传感器网络在野外长期监测的应用需求。实验表明:该系统可靠性高、抗干扰能力强,同时具有很好的通用性。
[1]崔光照,陈富强,张海霞,等.基于ARM9的无线传感器网络网关节点设计[J].电子技术应用,2008(11):115-118.
[2]张希伟,陈贵海.基于SDMA应用的移动Sink节点的设计与实现[J].计算机研究与发展,2012,49(3):541-549.
[3]Mainwaring Alan,Polastre Joseph,Szewczyk Robert,et al.Wireless sensor networks for habitat monitoring[C]//Int'l Conf on Wireless Sensor Networks and Applications,New York:ACM,2002:88-97.
[4]朱 莹,林基明.基于Zig Bee无线传感器网络网关的设计与实现[J].传感器与微系统,2009,28(7):80-85.
[5]Li Chih Ching,Hou An Sang,Wu Chih Chen,et al.A real time remote control architecture using mobile communication[C]//Instrumentation and Measurement Technology Conference,Anchorage,AK:IEEE,2002:901-906.
[6]Kalden R,Meirick I,Meyer M,et al.Wireless Internet access based on GPRS[J].Personal Communications,2000,7(2):8-18.
[7]西安大唐电信有限公司.一种无线传感器网络网关设备及其信道算法:中国 ,CN102523633A[P].2012-06-27.
[8]东南大学.具有终端功能的无线传感器网络多接口网关设备及其应用:中国 ,CN101252553B[P].2011-04-20.
[9]桑 涛,黄廷辉,吴勇华.多无线传感器网络互联技术研究[J].传感器与微系统,2011,30(7):10-12.