无线传感器网络智能建筑节能系统数据传输协议设计与实现
扫描二维码
随时随地手机看文章
摘要:无线传感器网络智能建筑节能系统主要是通过分布式自组织的无线传感器网络对建筑物中的环境等信息进行感知,动态地对建筑物中的灯光、空调等设备进行控制,实现智能节能的目的。其中,控制信息的可靠传输对智能建筑节能起着关键性的作用。该协议讨论研究了现有的无线传感器网络数据传输技术中的不足,并结合智能建筑节能的特点和实际需求,设计和实现了一个基于优先级队列及优先级ACK的数据传输方案,对重要信息提供端到端的保证,实现了控制信息的及时、可靠传输。
关键词:无线传感器网络;智能建筑节能;可靠传输;优先级队列
0 引言
智能建筑是用通信技术、信息技术和控制技术,按照系统工程原理将建筑物有机的结合起来,通过对建筑设备系统的自动监控和信息资源的有效管理,向使用者提供智能的综合信息服务,使其获得舒适、高效和便利的建筑环境。
在智能建筑中,节约能源是最重要的问题之一。为了实现智能建筑节能,需要构建网络去感知建筑物中各项设备的当前工作状态和工作环境,并将感知的信息及时的发送至中央控制器,从而对建筑物中的设备进行控制,在满足人的各项基本需求情况下,使得建筑物总能耗最小。无线传感器网络是由部署在监测区域内部或附近的大量廉价微型传感器节点通过自组织方式构成的网络,具有低成本、低能耗、灵活性高、可扩展等优点,因此利用无线传感器网络技术构建智能建筑网络具有得天独厚的技术优势和应用前景。
本文在北京交通大学下一代互联网互联设备国家工程实验室自主研发的IPv6无线传感器节点基础上,结合智能建筑节能的特点和实际需求,设计和实现了一个切实可行的可靠数据传输协议,实现了智能建筑节能无线传感器网络信息的优先级传输,保证了节能系统的稳定、可靠、高效运行。
1 无线传感器网络智能建筑节能系统
无线传感器网络由于其易于部署、成本低等特点成为智能建筑节能领域不可或缺的技术之一。利用无线传感器网络对物理环境的感知,将环境信息数据通过自组织多跳的方式传送至服务器。一方面无线传感器网络可以通过自我决策机制对智能建筑的空调、灯光等设备进行控制;另一方面,服务器决策者可以通过中央控制器对某个设备直接控制。无线传感器网络智能建筑节能示意图如图1所示。
一个完整的无线传感器网络智能建筑节能系统分为数据采集和控制两个部分,如图2所示。按照系统中数据流向的不同,将数据链路分为上行链路和下行链路,其中下行链路为服务器-网关-无线传感器网络-物理设备控制接口-智能建筑节能物理设备;上行链路为无线传感器网络-网关-服务器,如图2中虚箭头所示。
1.1 数据采集子系统
数据采集子系统主要是对物理世界环境信息进行感知并通过网关上传至服务器,并且以此为承载,将服务器发送的命名信息发送至控制节点对智能建筑节能的物理设备进行控制,包含无线传感器网络信息感知、网关接入、服务器决策与控制三部分。
1.1.1 无线传感器网络信息感知
无线传感器网络的信息感知主要是用温湿度、光强等传感器对实际物理环境进行感知,实现数据采集的功能。为保证智能建筑节能系统的高效运行,准确地信息采集显得尤为重要。采用的传感器包括红外、温湿度、光强、CO2等传感器。
1.1.2 网关接入
网关(Gateway)又称网问连接器、协议转换器。为了实现无线传感器网络与互联网的接入需要借助网关设备实现。目前实现无线传感器网络与互联网的接入接口主要包括GSM接入、CDMA接入、串口接入、以太网接入四种接入方式。
1.1.3 服务器决策与控制
在服务器端,收到经网关转换的无线传感器网络感知数据,对信息做进一步处理,从而实现智能决策的功能。
1.2 控制子系统
控制系统主要是对智能建筑中不同物理设备进行控制。由于不同设备的控制接口不同,需要设计不同的控制节点。对有WiFi或红外接口的设备,如空调等可直接设计相应的红外或WiFi收发器对其控制;对类似灯光仅仅包含开、关两种状态的设备,设计了电源开关控制器,如图3所示。
2 可靠传输的设计与实现
由图2可知,数据传输协议贯穿无线传感器网络智能建筑节能整个系统,对系统的稳定、高效运行具有重要意义。在智能建筑节能系统中,按照重要程度的不同将智能建筑节能系统中的数据主要分为三类,一类是关键数据(Critical Data),如控制命令、环境变化告警等信息,这部分信息很关键,对系统的功能实现起着决定性的作用,对传输质量要求很高;一类是重要数据(Important Data),如路由等信息,这部分信息也比较重要,但允许一定的丢包率和延时;一类是一般数据(Norreal Data),如周期性采集到的温湿度、光强等信息,这部分信息冗余度比较高。
2.1 体系结构介绍
本系统软件部分底层(包括MAC层和物理层)采用IEEE 802.15.4协议,其调制方式为OQPSK,速率为250 Kb/s;IPv6微型协议栈包括UDP,TCP,ICMPv6等基本协议,以及在节点之间建立和维护多跳路由的MSRP(Mobile Sensor Routing Protocol)路由协议;在MAC层和IPv6微型协议栈之间引入了一个适配层,这是由于IEEE 802.15.4支持的数据包长度最大为127 B,当接入对象网络协议支持的最大数据包长度超过127 B时,需要对数据包做分片处理;另外,协议栈里面包含两个独立的缓冲区,一个是发送队列,一个是接收队列,分别用于数据的发送和接收,如图4所示。
2.2 可靠传输的设计与实现
数据的发送:若有数据需要发送,要先将其放入发送队列排队轮询,然后为其装配适配头,再经由MAC层对其处理发送。在收到下一跳节点对其回传的ACK后将数据从发送队列中清除,这样就完成了一次数据包的发送。
数据的接收:当节点接收到底层传上来的数据后,根据数据包的类型进入不同的处理函数,若节点接收到数据包是普通的Data包,则将数据放入接收队列,然后交由适配层进行处理,根据目的地的不同选择本地处理或转发。
数据的重传机制:在传统的IEEE 802.15.4协议中,在发送数据包给下一跳时都需要下一跳回复ACK,当超时没有收到ACK时则进行数据重传,最大重传次数(macMaxFrameRetries)默认为3。3次重传失败后,直接丢弃数据包。
由此可见,传统的传输协议不对数据包进行分类,仅考虑单队列传输。另外,在节点对逐跳提供了最多3次的重传,无法保证关键信息包(如对空调的控制等信息)的准确传输。因此,需要对协议进行改进,对数据包进行优先级分类,利用优先级队列管理的思想,同时对关键信息包提供端到端的保证,以满足无线传感器网络建筑节能系统数据传输的应用需求。
2.2.1 优先级队列传输
根据三类不同的数据类型,将数据分为三个优先级,高优先级(High Priority,HP),中优先级(Middle Priority,MP),低优先级(Low Priority,LP)。每个节点内部有高、中、低三个优先级的FIFO(First In First Out)队列,分别表示为HP,MP,LP,并具有相同的缓存区长度,每个队列按照重要性的不同分配给不同的权值。当一个数据包到达时,首先应该通过数据包分类器进行过滤,按照种类的不同进行优先级划分,然后被添加至不同队列的队尾。优先级从列如图5所示。
对任意优先级队列,当检测到队列长度θL超出某一设定阈值θthr时,并不是立即启动置拥塞状态指示位C,而是以概率P置位(概率P的选择采用随机早期检测的方法,Random Early Detection,RED),这时说明网络即将出现拥塞或已出现轻微拥塞;当θL超过设定的阈值θthr,表明网络已经发生严重拥塞,为了尽快减缓拥塞,必须对数据包进行丢弃策略。在获得信道访问权进行队列调度时,从高优先级往低优先级的顺序依次调度,保证高优先级数据的及时性。同时为了保护高优先级信息的传输,将这些信息赋予高优先级的信道访问权,优先占用信道,使得这部分信息传输具有更少的退避时延。
2.2.2 优先级ACK机制
IEEE 802.15.4标准中规定,发送信标帧或确认帧时,应将MAC帧头确认请求子域设置为0,不要求目标接收设备确认,发送任何广播帧确认请求子域都设置为0;MAC数据帧或MAC命令帧发送时,帧控制域确认请求子域应设置为1,接收设备将对发送帧进行确认,若目标接收设备正确接收到该帧将发送一个确认帧,该确认帧的数据顺序编号与所确认的MAC数据帧或MAC命令帧数据顺序编号相同。
若每一个MAC数据帧都要求接收方回复ACK帧,ACK帧在网络中的传输量将不可忽略。同时,若接收方正确接收MAC数据帧后回复的ACK帧在传输过程中丢失,导致MAC数据帧发送方认为上一次数据帧传输失败而重发数据帧,这类现象将引发不必要的数据重传,造成能量浪费。因此需要对IEEE 802.15.4MAC协议ACK机制进行改进。
当网络稳健运行,监测环境中无特殊事件发生时,普通数据周期性由无线传感器网络向外界报告,这部分信息通常具有一定的冗余性。例如,无线传感器网络在一个小时内甚至更长的一段时间内采集建筑物室内的温度数据、光强数据,小量普通数据包的丢失不会对整个建筑节能系统的总体性能产生很大的影响。同时,在无人为等干扰情况下,无线链路状态良好,普通数据传输成功率很高,并不需要每一跳都有ACK确认回复。因此,对数据包的确认采用以下策略:
(1)LP低优先级数据包:不进行ACK确认;
(2)MP中优先级数据包:逐跳的ACK确认;
(3)HP高优先级数据包:逐跳的ACK确认+端到端的ACK确认。
对于低优先级数据包,不进行ACK确认,直接发送或者转发;对于中优先级数据包,进行逐跳的ACK确认,这也是IEEE 802.15.4标准的原先处理方式;对于高优先级数据包,源端发送高优先级数据后并不立即清除,而是将其放至特定缓存区,直到收到来自目的端的ACK确认信息方可清空缓存区,如果在一定时间内没有收到来自目的端的确认信息,则启动重传机制。
3 实际测试环境的搭建与测试
本文利用北京交通大学下一代互联网互联设备国家工程实验室自主开发和研制的微型传感路由器MSRLab6进行验证,MSRLab6节点采用ATmega128作为处理器、射频芯片采用CC2420芯片,能量供应模块使用直流9 V电压供电或直接采用3.3 V干电池供电。验证系统如图6所示,主要是在机械楼7层实际场景部署。其中红色圆形节点(如7011等)为普通节点,红色三角形节点(如1951等)为中继节点,五角星节点(8919)为网关节点。各普通节点在收集每个房间的温湿度、光强等传感信息,通过中继节点以多跳的方式将数据发送至网关节点,网关节点将协议进行转换把数据发送给服务器并保存在本地数据库。在服务器端,用户可以在用户管理端的图形界面上发送命令,通过网关节点发送给普通节点,可以实现改变普通节点的配置,获取节点信息等功能。
测试所发送的数据包如图7所示,前4位为适配头,转换为二进制为前16位,其中第12及13位表示数据包的优先级。“11”代表HP数据,“01”代表MP数据,“00”代表LP数据,对应到图中就分别为“18”,“08”,“00”。
图8是丢包率测试结果,由图可以看出,由于采用了端到端的确认机制可以保证高优先级数据的可靠传输;同时使得中优先级和低优先级数据的丢包率在5跳以内都低于传统的数据传输协议;在6跳以后,由于实际应用环境的复杂性(电磁以及人的干扰等),网络性能不太稳定,数据传输的丢包率增加明显。因此本文提出的智能建筑数据传输协议满足实际应用中不同的应用需求。
图9是时延测试结果,由图可以看出,在数据传输少于3跳的情况下,可靠传输机制对数据时延影响并不大,但在数据传输大于3跳后,可靠传输协议对时延的影响增大,特别是对HP数据,由于优先级高,省去了列队等待的时间,发送时延得到了有效减少。
4 结语
本文首先对无线传感器网络的智能建筑节能系统进行了系统介绍,讨论了研究无线传感器网络数据传输技术的必要性,并结合智能建筑节能的特点和实际需求,设计和实现了一个基于优先级队列及优先级ACK的数据传输方案,对重要信息提供端到端的保证,实现了控制信息的及时、可靠传输。最后,本文通过实际测试平台对提出的协议进行了验证,并证明与传统的传输协议相比,在本传输协议影响下,对于重要的数据,丢包率减少,发送时延减少,各种优先级的数据均得到了更加可靠的传输。