基于ZigBee 技术的矿井无线传感器网络设计
2021-05-31张弘华余员琴陈海文李晨王叶
张弘华 余员琴 陈海文 李晨 王叶
湖南交通工程学院电气与信息工程学院
0 引言
1 ZigBee 技术
ZigBee 是ZigBee 联盟(ZigBee Alliance)在IEEE802.15.4标准基础上进行商业推广的名称,来自蜜蜂群之间的一种有效、简单的通信方式,蜜蜂(Bee)通过飞“Z”字形舞蹈,以向其他蜜蜂表达新找到的食物源的具体位置信息。IEEE802.15.4 和ZigBee 联盟制定硬件与软件标准,如表1 所示。
表1 ZigBee 技术
2 ZigBee WSN 拓扑模型
基于ZigBee WSN 有星形(Star)、簇树(Clustet)和网状(Mesh)3 种拓扑模型,如图1 所示,其对比分析如表2 所示。
表2 对比分析
图1 ZigBee WSN 3 种拓扑模型
3 ZigBee 组建无线传感器网络
3.1 无线传感器网络整体结构设计
WSN 整体结构设计如图2 所示,包括WSN ZC(WSN ZigBee Coordinator)ZigBee 协调器的创建,WSN ZC 的初始化,网络节点入网的开启,数据的传送。
图2 ZigBee 组建无线传感器网络流程
3.2 WSN ZC 节点初始化
采用TI 公司研发的ZigBee Stack 协议栈Zmain.C 库文件中main 函数实现硬件、网络、任务列表初始化,从main 函数开始运行执行,进入任务处理循环。
建立一个WSNx 时,必须由且只有一个ZC 发起,若WSNx 和WSNy 相交的子节点,且此子节点已入WSNy,则该子节点不可作为WSNx 中ZC,只作为新子节点入网。判定节点是否为全功能设备(Full Function Device,FFD)节点,若是,则发送一个信标请求命令,设定扫描期(T_scan_duration),在扫描期内主动扫描,且未检测到信标,就认定该节点POS(point of sale 多功能终端)范围内无ZC,即其确定WSNX 中ZC,其后挑选信道和设置地址。
(1)选择信道。检测指定或默认信道的能量,且将其递增排序、筛选及标记可用信道,再主动扫描可用信道,搜索网络中广播信息,依据获得的这些信息和已记录的结果,筛选出最佳信道。
(2)设置ZigBeeWSN 地址。筛选出最佳信道后,ZC 为新建的WSNx 随机挑选一个未分配的,且小于等于0×3FFF的标识符为网络地址,其中,0×FFFF 不能分配为广播地址。
李清平等提出,ZigBeeWSN 中节点地址有64 位的IEEE地址和16 位的网络地址两种之分。前者也叫物理地址或扩展地址,后者也叫逻辑地址或短地址。64 位IEEE 地址由制造商设定或在安装时由工程师设置,一旦给节点设备设置了地址,则其终身不变,是全球唯一标识;网络地址是由父节点分配给网络中子节点或设备唯一标识,其地址用于节点之间的通信。初始化含确定初始化参数和参数配置两个方面,0×0000 一般设为ZC 的短地址。
3.3 入网节点连ZC 组网
节点入网需在ZC 或ZigBee路由器(ZigBee Router,ZR)允许下进行。组建新网WSNx 时,WSNx 首层节点入网先关联ZC,其他层节点入网在多功能终端区域内筛选出最强信号节点,作为其父节点加入网络。最强信号节点也可是ZC,成功入网后ZC 分配一个16 位的网络地址,并将所有入网信息存留在各自闪存(Flash memory)中,其信息包括网络地址、网络拓扑结构、其各节点间的关系等。
若未搜索到信标,采用多次间歇式重启扫描方法继续搜索到一个或多个信标,且选取最优网络,发送请求连接ZC。ZC 将收接到的入网连接指示原语送交上层,同时,回复关联响应确认帧ACK(Acknowledgement)给节点,上层根据自身资源,如地址分配状况、存储空间、能量多少和安全级别等,决定该节点的入网请求成功与否。若其资源允许连接成功,ZC 将连接成功响应原语Association response 和分配给该节点入网的16 位网络地址发送给该节点,随后便可以与ZC 通信;否则,入网节点重发请求信息,至成功连接入网。
3.4 入网节点经ZR 组网
余修武提出,入网有加入节点,发起连接程序来入网的联合方式和加入节点,直接同一个预先指定的父节点ZR 连接入网的直接方式两种。基于Zigbee 的WSN 中以联合方式为主,辅助直接方式,将入网节点经ZR 组建网络。新建WSNx 中,首层FFD 子节点全部与ZC 连接成功后,其他各层子节点经由WSNx 首层已关联好ZC 的FFD 子节点或ZR 子节点视为其父节点加入网络。
待加入WSNx 的节点中有新节点和孤儿节点,孤儿节点是由于本身或父节点资源状态未满足关联要求,已与其父节点失去了关联的节点。孤儿节点再次与原父节点关联,通过其相邻表中保留的信息且以直接入网方式发送请求给原父节点,原父节点依据自身现有的逻辑地址分配状况、存储空间、能量多少和安全级别等资源,视孤儿节点为新节点入网与节点关联ZC 相同,即入网成功,便可传输数据。
3.5 入网节点地址分配方案
入网节点有分布式地址分配(Distributed Address Assignment Mechanism,DAAM)和随机地址分配(Stochasticaddress Assignment Mechanism,SAAM)两种机制,其中,DAAM 为主要地址分配方案。设置以0×00 为NIB 中nwkAddrAlloc 值,即默认值实施分布式地址分配方案,设置以0×02 为随机地址分配方案,其中,0×01 暂保留。DAAM中各层父节点可给子节点分配的逻辑地址间隔数由Cskip(d)函数计算。
式中,Cm(nwK max Chilren)父节点能拥有子节点数最大值,由ZC 决定;
Lm(nwk max Depth)网络的最大深度,ZC 深度为0,其子节点深度为1,由ZC 决定;Rm(nwk max Routers)父节点中拥有路由器子节点最大值;d每层子节点的网络深度。
当Cskip(d)>0时,表示父节点可以关联子节点;当Cskip(d)≤0 时,表示此子节点只能视终端叶子节点入网,包括ZR 节点在内。分配第一个ZR 子节点地址等于以父节点地址+1,其余ZR 子节点地址由Cskip(d)函数计算获得;而所有的ZED 子节点中第一个ZED 子节点的地址等于最后一个ZR 节点地址+Cskip(d)计算值,其余ZED 子节点地址在第一个ZED 子节点地址依次+1。网络各层(d)第n 个子节点的网络地址分配如式(2)
式中,Aparent为父节点地址;Achild为子节点地址。
4 结束语
由于井下环境特殊,比较适用短距离无线通信,因此,基于ZigBee 的WSN 应该是最佳方案,其具有功耗最低、成本最低,网络容量大、扩展性好、传输速率低、时延小等优势,可确保WSN 井下安全监测的可靠性和可行性。