基于ZigBee的集中式无线定位系统设计

2013-07-25 02:27刘焕强顾晓峰
计算机工程与设计 2013年2期
关键词:关节点子网网关

韦 佳,刘焕强,顾晓峰,何 磊

(1.江南大学电子工程系轻工过程先进控制教育部重点实验室,江苏无锡214122;2.中国科学院苏州纳米技术与纳米仿生研究所,江苏苏州215123)

0 引言

ZigBee是一种短距离、低速率、低功耗的无线通信技术,其名称来源于蜜蜂用以传递信息的Z字型舞蹈。ZigBee技术的协议栈分层结构中,MAC层和PHY层采用IEEE 802.15.4协议标准,上层协议则由ZigBee联盟定义并进行了标准化。本文提出的集中式无线定位系统采用德州仪器(Texas Instruments)公司开发的Z-Stack(2006)协议栈,以支持ZigBee协议栈的CC2430芯片为核心搭建无线网络。该网络工作在ISM(Industrial Scientific and Medical)免执照的2.4 GHz频段上,传输速率为250 Kb/s,并划分为16个信道[1]。基于ZigBee技术组建的无线网络具有结构简单、组网灵活、功耗低等优点[2-3],在当前众多的物联网技术应用中具有极其重要的地位。

国内外对基于ZigBee的无线定位系统研究大多集中在优化定位算法、提高定位精度上面[4-8],鲜有针对复杂环境和特殊地域ZigBee无线定位系统的研究。传统ZigBee定位系统当地域跨度大、节点布局环境复杂时,需要大量中继节点来保证网内信息通畅[9]。针对传统ZigBee定位系统存在的不足,提出的基于ZigBee的集中式无线定位系统将整个无线网络分割成多个子网,子网关通过传输控制协议/互联网络协议 (TCP/IP)协议实现子网间通信,可显著减少中继节点个数,有效解决ZigBee无线网络覆盖限制问题,提高定位系统的工作效率。

1 无线定位系统设计思想和框架

本无线定位系统主要由网关节点、参考节点、增强型参考节点、移动终端节点和PC服务器组成。网关节点仅用于无线网络的创建和维护,在网络进入正常运行状态后可关闭;参考节点接收移动终端节点信号并进行上报和路由信号;增强型参考节点 (子网关)既具有普通参考节点的接收功能,又能汇集来自其它参考节点的信息,并通过串口上报至PC服务器;移动终端节点周期广播信号给附近参考节点;PC服务器汇总来自所有子网关的信息进行集中处理,实现定位、报警等功能。

系统的主要设计目标如下:在由大量参考节点和增强型参考节点组成的无线网络中,实现对移动终端节点的位置追踪,同时随时接收移动终端节点主动发送的报警信号,作出相应动作响应。由于ZigBee协议传输距离短,若地域跨度大、环境复杂,在常规ZigBee布网设计中需用大量中继节点来保证网内信息通畅。针对此问题,提出了一种Mesh结构的自组织方法,将一个无线传感网络根据布网需求分割为多个相对独立的子网,再使用TCP/IP通信协议实现子网之间的相互通信。系统的结构框架如图1所示。

图1 集中式无线定位系统结构框架

2 节点的硬件设计

2.1 移动终端节点与参考节点的硬件设计

根据实际系统应用需求,移动终端节点供能采用4.2 V、容量为1700 mAh的可充电电池,参考节点则采用固定外接电源。除此之外,移动终端节点与参考节点的硬件设计相同,都采用CC2430芯片作为核心通信模块,在PCB电路板上提供电源模块、外部晶振电路、JTAG接口、UART串口、按键和复位电路等[10],如图2所示。

CC2430芯片是一款支持ZigBee协议栈的片上系统(SOC)解决方案,结合了高性能2.4 GHz直接序列扩频(DSSS)射频收发器核心和增强型工业标准的8位8051微控制器内核,支持ZigBee、IEEE 802.15.4协议。CC2430芯片提供一个JTAG调试接口和两个UART串口,JTAG调试接口允许用户对片上Flash进行编程,提供对存储器和寄存器内容的访问等调试功能。本系统节点选用UART1串口,考虑到某些应用场合产生的数据量较大,串口采用DMA(Direct Memory Access)方式传输数据,波特率设定为115,200 Bps;天线则采用兼容IEEE 802.15.4标准的2.4 GHz频段倒F型微带PCB天线。按键Key的作用是,按下时拉低CC2430芯片的P0.1引脚上的电平,下降沿触发按键事件。

图2 移动终端节点与参考节点的硬件结构

2.2 子网关节点的硬件设计

子网关节点硬件由普通参考节点的UART串口连接至一个RS232-TCP/IP转换模块组成,本系统采用CONEXTOP公司的NePort-L模块。NePort-L模块是一款高度集成,高性能的嵌入式设备联网服务器产品,能直接实现串口通过有线方式联网,确保在可选最高波特率下双向全速不间断传送数据不丢包。子网关节点的硬件结构如图3所示。

图3 子网关节点的硬件结构

3 子网关节点联网技术

3.1 虚拟专用网络技术

虚拟专用网络 (VPN)是一种利用公共网络链路架设私有网络的技术[11-12]。它通过建立一条专门的隧道,实现城域网中特定一部分用户形成一个虚拟的局域网,而不需要这些用户有直接的端到端的物理链路。这个虚拟局域网内的用户可以相互传输数据和广播消息,同时与其他用户相互隔绝,保证了信息传输的私有性和安全性。

3.2 联网实现步骤

联网实现步骤描述如下:

(1)分配一段私网IP地址以分配各每个子网关节点试用,例如192.168.0.0/24;

(2)为PC服务器和每个子网关节点从192.168.0.0/24中选取一组 IP地址 (每组 4个 IP),例如选取192.168.0.0/30,其 中 网 络 号 (192.168.0.0),网 关(192.168.0.1)和广播地址 (192.168.0.3)须保留,可使用的IP地址为192.168.0.2,子网掩码255.255.255.252。将分配到的IP地址配在NePort-L模块中,通过ADSL或EPON方式接入城域网接入层设备;

(3)向城域网网络运营商申请VPN业务,即在运营商边缘路由器上建立VPN实体,定义路由区分符和路由目标,将所有子网关节点加入VPN实体,确保每个子网关节点都能ping通PC服务器。

PC服务器与所有的子网关节点利用VPN技术,通过城域网实现互联互通,可实现相距很远的子网之间的数据通信,而不需要布置大量的中继节点。它是ZigBee网络在空间上的极大延伸,弥补了ZigBee技术传输距离短的不足。从成本上来看,子网关节点接入城域网会带来额外的费用,但是当各个子网相距很远时,布置中继节点几乎是不可能实现的;而且布置大量的中继节点也会带来很高的传输延时。因此,将传统的TCP/IP通信技术与ZigBee技术融合,才能实现集中式的大地域跨度范围内的无线传感网定位系统。

4 节点的软件设计

4.1 移动终端节点的软件设计

移动终端节点在初始化并成功加入网络后[13],即开始以单跳广播形式循环 (1次/s)上报该节点8个字节 (64 Bits)的MAC地址和1个字节的标志位,消息ID为BLINDNODE_BLAST。MAC地址用来确定节点身份,标志位用来在PC服务器端对数据进行筛选处理。当检测到按键事件后,立即广播发送一条ALARM_REQUEST消息到所有参考节点,该消息包含该节点的MAC地址。对应的程序流程如图4所示。若在终端节点硬件上添加各类传感器 (如温度、湿度传感器)[14-15],则需在软件中添加相应程序。

图4 移动终端节点软件流程

4.2 参考节点的软件设计

参考节点作为网络的支架,主要起路由和数据转发作用。初始化后,参考节点广播请求附近的子网关地址,将接收到第一个回复的子网关作为转发数据的目的节点。当接收到来自移动终端节点的BLINDNODE_BLAST消息时,参考节点将侦测到的信号强度与信号内容合并成RSSI_REPORT消息一起上报到指定子网关。当接收到ALARM_REQUEST报警信息时,参考节点将直接将信息转发至子网关上报PC服务器。参考节点的应用程序流程如图5所示。

图5 参考节点软件流程

4.3 子网关节点的软件设计

子网关是其所在子网内的核心设备,负责组织子网和收集子网信息,并通过TCP/IP连接实现多个子网间的信息交换。图6给出了在完成初始化后子网关节点的应用程序流程图。

4.4 PC服务器端的软件设计

PC服务器通过TCP/IP连接从各子网关获取移动终端节点的信息,包括参考节点接收到的终端节点信号强度(RSSI_REPORT)和来自终端节点的按键报警信息(ALARM_REQUEST),对应的消息帧结构如图7所示。

PC服务器端软件从接收到的所有RSSI_REPORT消息中,对具有相同移动终端节点MAC地址和标志位的消息进行比较,选出其中RSSI值 (即参考节点测得移动终端节点广播消息的信号强度)最大的消息,从而获得转发该消息的参考节点地址,即可判断该移动终端节点是否位于此参考节点附近。

5 结束语

详细阐述了一种基于ZigBee的集中式无线定位系统的软硬件设计。该系统采用多个分立子网关的形式,用TCP/IP连接作为无线连接的补充,允许网络覆盖区域内存在盲区;在子网之间也无需加入中继节点,而是通过现有Internet网络实现全网内通信,由此使整个系统的作用范围几乎不受地理环境的限制,能覆盖无线信号死角,并有选择性地对某些特定区域范围进行监控 (如特定楼层及特定建筑内的安全监控和物品跟踪)。若在参考节点上装备合适的传感器模块,即可实现相应的数据信息实时采集和监控功能。例如,在多个蔬菜大棚分别布置带有温湿度传感器的参考节点,即能通过Internet网络同时进行温湿度的远程数据采集和监控。

[1]ZigBee Alliance.Inc ZigBee specification:ZigBee document 053474r17 [S].USA:ZigBee Standards Organization,2007.

[2]PANG Na,CHENG Defu.Design of greenhouse monitoring system based on ZigBee wireless sensor networks[J].Journal of Jilin U-niversity(Information Science Edition),2010,28(1):55-60(in Chinese).[庞娜,程德福.基于ZigBee无线传感器网络的温室监测系统设计 [J].吉林大学学报 (信息科学版),2010,28(1):55-60.]

[3]MA Xiaoqiang,ZHANG Chunye,ZHANG Bo,et al.Design of piline monitor network based on ZigBee and GPRS [J].Computer Engineering,2010,36(5):128-130(in Chinese).[马小强,张春业,张波,等.基于ZigBee和GPRS的管道监测网络设计[J].计算机工程,2010,36(5):128-130.]

[4]ZHENG Kai,ZHAO Hongwei,ZHANG Xiaolin.Research on localization system of electrocardiograph monitoring network based on ZigBee [J].Chinese Journal of Scientific Instrument,2008,29(5):1000-1005(in Chinese).[郑凯,赵宏伟,张孝临.基于ZigBee心电监护网络的定位系统的研究[J].仪器仪表学报,2008,29(5):1000-1005.]

[5]WANG Fubao,SHI Long,REN Fengyuan.Self-location systems and algorithms for wireless sensor networks[J].Journal of Software,2005,16(5):857-868(in Chinese).[王福豹,史龙,任丰原.无线传感器网络中的自身定位系统和算法[J].软件学报,2005,16(5):857-868.]

[6]SHEN Jun,HUANG Chunhua,LUO Hu,et al.Localization algorithm of model parameters real-time estimate based on RSSI optimized [J].Computer Engineering and Design,2012,33(2):464-468(in Chinese).[沈军,黄春华,罗护,等.基于RSSI优化的模型参数实时估计定位算法[J].计算机工程与设计,2012,33(2):464-468.]

[7]ZHOU Yan.Study of wireless sensor network localization algorithm based on RSSI[J].Computer Science,2009,36(4):119-120(in Chinese).[周艳.基于RSSI测距的传感器网路定位算法研究 [J].计算机科学,2009,36(4):119-120.]

[8]ZHANG Jianwu,ZHANG Lu,YING Ying,et al.Research on distance measurement based on RSSI of ZigBee[J].Chinese Journal of Sensors and Actuators,2009,22(2):285-288(in Chinese).[章坚武,张璐,应瑛,等.基于ZigBee的RSSI测距研究 [J].传感技术学报,2009,22(2):285-288.]

[9]GUO Xiangyong,LIU Hongli,ZHOU Ping,et al.Design of building energy consumption monitoring system based on ZigBee technology[J].Computer Measurement& Control,2011,19(3):551-553(in Chinese).[郭湘勇,刘宏立,周平,等.基于Zig-Bee技术的建筑能耗监测系统设计[J].计算机测量与控制,2011,19(3):551-553.]

[10]ZHANG Yongmei,YANG Chong,MA Li,et al.Design method of wireless sensor network node with low power consumption [J].Computer Engineering,2012,38(3):71-73(in Chinese).[张永梅,杨冲,马礼,等.一种低功耗的无线传感器网络节点设计方法 [J].计算机工程,2012,38(3):71-73.]

[11]TIAN Quanbin,LI Lixin,ZHOU Yanzhou.VPN system based on virtual ethernet[J].Computer Engineering,2008,34(14):129-134(in Chinese).[田权斌,李立新,周雁舟.基于虚拟以太网的VPN系统 [J].计算机工程,2008,34(14):129-134.]

[12]MENG Xianguo,ZHU Yuanchang,DI Yanqiang,et al.Research on VPN-based communication mechanism of distributed simulation in WAN environment[J].Journal of System Simulation,2009,21(23):7487-7492(in Chinese).[孟宪国,朱元昌,邸彦强,等.广域网环境下基于VPN的分布仿真通信机制研究[J].系统仿真学报,2009,21(23):7487-7492.]

[13]LI Zhanbo,LIU Huiling.Mobile wireless sensor network node localization based on ZigBee technology[J].Computer Engineering and Design,2012,33(2):431-434(in Chinese).[李占波,刘慧玲.基于ZigBee的动态WSN节点定位 [J].计算机工程与设计,2012,33(2):431-434.]

[14]ZHANG Shuiping,LI Xiaobo,ZHANG Fengqin,et al.Application of ZigBee in multi-sensor information intergrating[J].Computer Engineering and Design,2012,33(1):41-46(in Chinese).[张水平,李晓波,张凤琴,等.ZigBee在多传感器信息集成中的应用 [J].计算机工程与设计,2012,33(1):41-46.]

[15]DONG Qinghe,HE Qian.Design of wireless temperature monitoring system based on ZigBee[J].Journal of Computer Applications,2011,31(12):206-208(in Chinese).[董庆贺,何倩.基于ZigBee的无线温度监测系统设计[J].计算机应用,2011,31(12):206-208.]

猜你喜欢
关节点子网网关
考虑荷电状态的交直流微电网多模式协调控制策略
基于深度学习和视觉检测的地铁违规行为预警系统研究与应用
关节点连接历史图与卷积神经网络结合的双人交互动作识别
子网划分问题研究及应用
信号系统网关设备的优化
航天器多子网时间同步系统设计与验证
搞好新形势下军营美术活动需把握的关节点
RGBD人体行为识别中的自适应特征选择方法
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”