基于嵌入式的无线智能家居网关设计方案
3。1家庭网关软件体系结构
家庭网关采用模块化设计方案,如图4所示由硬件驱动层、操作系统层、网络协议层和应用程序层组成。硬件驱动层描述网关节点中Zigbee模块和Wi-Fi模块的驱动;操作系统层移植了ARMLinux实时操作系统内核;网络协议层移植了Zigbee和Wi-Fi协议栈,实现Zigbee和Wi-Fi协议双向转换;应用程序层在Linux内核上移植嵌入式Web服务器软件Boa。

图4家庭网关结构。
网关中的网络协议层主要完成从Wi-Fi和Zigbee协议的相互转换工作。对于从Zigbee设备发送到Wi-Fi的数据,在网关需要经过以下处理步骤:Zigbee设备接收到数据→去掉物理层Zigbee分组→去掉MAC层Zigbee分组→添加MAC头的Wi-Fi分组→添加物理层头的Wi-Fi分组→Wi-Fi处理或发送。Wi-Fi接收数据到发送给Zigbee设备的过程如下:
Wi-Fi接收到数据→去掉物理层Wi-Fi分组→去掉MAC层Wi-Fi分组→添加MAC头的Zigbee分组→添加物理层头的Zigbee分组→Zigbee处理或发送。Wi-Fi-Zigbee通信协议模型如图5所示。

图5Zigbee/Wi-Fi网关的通信协议模型。
3。2Zigbee组网软件设计
家庭网关集成了Zigbee网络协调器和嵌入式Web服务器,有两个主要功能。1)实现无线传感器网络的建立,传感器节点管理和数据传输。将收集到的数据存储在数据库中,使用户可以随时查询监控Zigbee终端设备的状态。2)用户可以通过Web浏览器直接访问网关,可以进行实时监测和远程管理。
为了实现家庭网关的功能,在硬件平台上移植了Linux2。6实时操作系统、Zigbee协议栈和VT6656的驱动程序,并使用基于HTTP协议的Boa服务器作为Web服务器,其中ZigBee网络协调器的软件实现包括ZigBee协议和监控管理程序的移植。该软件流程如图6所示。

图6Zigbee软件流程。
在智能家居内部ZigBee无线网络中,首先协调器进行初始化,然后协调器选择一个称为PANID的标识号码,接着启动网络,所有的设备接入CSMA-CA机制的协调器。当协调器收到数据时,首先判断是新节点加入网络的请求还是设备节点的控制请求:如果是新节点加入网络的请求则分配网络地址并绑定节点;如果是控制请求,则调用控制请求处理函数处理数据。数据处理完毕,协调器返回等待请求监听状态。
3。3家庭网关主程序设计
家庭网关是建立在传输层以上的协议转换器,通常它连接两个或多个相互独立的网络,每接收一种协议的数据包后,在转发之前将它转换为另一种协议的格式,Zigbee协议栈由一系列分层结构组成,包括物理层、数据链路层、网络层、应用支持层和应用层,每一层为上一层提供服务。采集节点将要传输的节点地址信息和监测数据以Zigbee帧的形式打包发送给网关节点。传送数据在通过物理介质进入网关后,先用Zigbee协议栈解封装得到原始数据,网关可以用操作系统上的应用软件根据需要对原始数据处理。然后再以TCP/IP协议打包后通过USB口与Wi-Fi通信模块VT6656相连,Wi-FiVT6656网卡通过AP路由器,将数据传送到Wi-Fi网络中,AP路由器接入Internet,从而实现网关与Internet相连。为实现系统的监测和控制两大功能,数据帧结构的设计由前导码、数据模式、目标地址、数据长度、数据信息与校验和等部分构成[3],其中数据信息字段又划分为方向位、功能类型和数据。
方向位分为上行和下行两种:上行传输的是监测数据,下行传输的是控制命令。
家庭网关主程序处理流程如图7所示。硬件上电系统启动以后,应用程序初始化,网关开始监听网络,有数据到来网关进入中断状态。首先判断是否Zigbee数据,如果是Zigbee数据,按照WSN协议处理数据然后打包转发给Wi-Fi模块,网关返回监听状态;如果不是Zigbee数据,网关判断是否Wi-Fi数据,如果是则以Wi-Fi协议处理数据然后打包转发给Zigbee模块,并返回监听状态;若是未知数据,网关进行丢弃处理直接返回监听网络状态。
4测试结果与分析
将设计的Wi-Fi-Zigbee网关与同样采用无线通信技术的Wi-Fi-蓝牙无线网关,以及采用综合布线的有线网关做如下比较,如表1。有线网关网络稳定性、抗干扰性方面高,但是耗时且灵活性较低,而无线网关耗费的工时少且在网络稳定、灵活和抗干扰方面均性能良好。

图7家庭网关主程序流程
表1三种网关的比较

为验证Wi-Fi-Zigbee网关在智能家居监控系统中的性能,测试了两组性能指标:1)无障碍物和干扰状态下,随着距离的增加,数据丢包率和响应时间的变化情况;2)数据传输距离分别为10m、20m、50m时,有障碍物情况下丢包率和响应时间性能变化;如图8所示,其中(a)、(b)为在无障碍物和干扰状态下测得三种网关下丢包率与响应时间的曲线:(c)、(d)为在有障碍物和干扰情况下所测得的数据。实验结果表明,在无障碍物传输距离为50m以内时,Wi-Fi-Zigbee网关较Wi-Fi-蓝牙网关的优势明显,随着传输距离增加,丢包率低维持在3%左右,相对于有线网关高出2%左右,而响应时间波动在1ms以内,完全能够充分满足正常家居环境的通信需要,而且接收功率很低,非常适合家庭的使用。在有障碍物和干扰的情况下,Wi-Fi-Zigbee网关丢包率与响应时间较有线网关稍高,却远优于Wi-Fi-蓝牙网关。

tcp/ip相关文章:tcp/ip是什么
评论