新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于ZigBee无线传感器网络的智能家居设计

基于ZigBee无线传感器网络的智能家居设计

作者: 时间:2012-05-23 来源:网络 收藏

2.2 设备入网
在一个协调器设备建立后,路由器设备或者终端设备,可以加入协调器建立的,具体加入有两种方式,一种是通过关联(Association)方式,就是待加入的设备发起加入网络,另一种是直接(Direct)方式。下面重点讨论第一种方式,也是实际中用的最多的方式。
首先对于一个终端设备,只能加入一个网络。对于新设备来说,它首先会扫描周围它可找到的网络,寻找有能力批准自己加入网络的网络协调器,并把可以找到的所有网络协调器的资料存入自己的相邻表。存入相邻表的网络协调器的资料包括协议版本、协议栈配置文件、PAN ID、逻辑信道以及是否允许加入网络等。在相邻表中选择一个深度最小的网络协调器,并对其发出请求信息,如果出现相同最小深度的两个以上网络协调器信息,那么随机选取一个发送请求。如果相邻表中没有合适的网络协调器信息,那么表示入网失败,终止过程。如果发出的请求被批准,那么网络协调器同时会分配给它一个16位的网络地址,此时入网成功,终端设备可以开始通信。如果请求失败,那么重新查找相邻表,继续发送请求信息,直到加入网络或者相邻表中没有合适的网络器。
设备关联加入网络的具体实现如下:
(1)在加入网络前,首先要确定这个设备是ZigBee终端设备。通过协议栈配置文件ZigBee.def中的#define I_AM_END_DEVICE来定义这个设备为ZigBee终端设备。
(2)确定为终端设备后,应用层首先设定待扫描的信道以及每个信道扫描的时间,调用NLME_NE1WORK_DISCOVERY.request原语寻找合适网络,网络层收到该原语后,通过MLME_SCAN.request,原语要求MAC层执行主动扫描获得目前网络描述参数。通过函数NWKStartDiscovery(),对扫描的起始信道进行设置,假定起始值为N。然后执行MACStartScan(TRUE)对信道N进行主动扫描。
(3)完成扫描后,网络层将发送NLMF_NETWORK_DISCOVERY.confirm原语告知应用层。通过调用回调函数AppOkayToAssociate()来判断是否要加入这个网络,判断的标准是网络协调器的MAC地址是否符合终端设备的要求,这样可以使终端设备加入到指定的网络中,应用层根据情况调用NLME_JOIN.request原语从邻居表中选择所发现的网络加入。网络确定后,网络层将请求MAC层管理实体对逻辑信道,PAN标识符等有关属性进行配置,发送MLME_SYNC.request原语获取它所要连接协调器的信标,实现与协调器的同步。然后调用MLME_ASSOCIATE.request原语到MAC层。
(4)执行函数PHYPutTxData(MAC_CMD_AS_SOCIATE_REQ)向协调器发送加入请求,并等待发送加入请求的确认。协调器接收到连接请求后首先调用MACIsJoinPermitted()来判断网络是否允许任何设备关联,允许则返回给终端设备确认帧。协调器的网络层将分配惟一的16位网络地址给该设备,并根据设备提供的信息在它的邻居表中为终端设备创建新的入口,随后向MAC发送表明连接成功的MLM_ASSOCIATE.response原语表明设备已经成功同网络连接。设备的MAC层收到来自协调器的连接响应命令帧后,通过MLME_ASSOCIATE.confirm原语发送给设备应用层表明加入成功,设备的网络层将在邻居表中设置逻辑地址信息。

3 结束语
介绍了ZigBee网络技术组建信息家居网络,如图4所示,能够对家居环境进行较好的监控,根据现在家居存在的问题,拟采取现有通信网络与短距离网络相结合的方法提高家居数据的准确性、实时性和可靠性。相对于常见的Bluetooth、Wi-Fi等具有低复杂度、低成本、低功耗、高安全性等优点,随着网络技术的进一步发展,它将成为家居发展的趋势。

本文引用地址:https://www.eepw.com.cn/article/154878.htm

d.jpg

 


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭