zigbee组网流程
Zigbee组网流程是指Zigbee网络的建立和节点加入网络的过程。该过程分为两个步骤:网络初始化和节点加入网络。
网络初始化是由网络协调器发起的,任何一个Zigbee节点要组建一个网络必须满足以下两点要求:1.节点是FFD节点,具备Zigbee协调器的能力;2.节点还没有与其他网络连接,当节点已经与其他网络连接时,此节点只能作为该网络的子节点,因为一个Zigbee网络中有且只有一个网络协调器。
网络初始化的流程如下:
1. 确定网络协调器,首先判断节点是否是FFD节点,接着判断此FFD节点是否在其他网络里或者网络里是否已经存在协调器。通过主动扫描,发送一个信标请求命令(Beaconrequest command),然后设置一个扫描期限(T_scan_duration),如果在扫描期限内都没有检测到信标,那么就认为FFD在其pos内没有协调器,那么此时就可以建立自己的Zigbee网络,并且作为这个网络的协调器不断地产生信标并广播出去。
2. 进行信道扫描过程。包括能量扫描和主动扫描两个过程:首先对指定的信道或者默认的信道进行能量检测,以避免可能的干扰。以递增的方式对所测量的能量值进行信道排序,抛弃那么些能量值超出了可允许能量水平的信道,选择可允许能量水平的信道并标注这些信道是可用信道。接着进行主动扫描,搜索节点通信半径内的网络信息。这些信息以信标帧的形式在网络中广播,节点通过主动信道扫描方式获得这些信标帧,然后根据这些信息找到一个最好的、相对安静的信道,通过记录的结果,选择一个信道,该信道应存在最少的Zigbee网络,最好是没有Zigbee设备。
3. 设置网络ID。找到合适的信道后,协调器将为网络选定一个网络标识符(PAN ID,取值<=0x3FFF),这个ID在所使用的信道中必须是唯一的,也不能和其他Zigbee网络冲突,而且不能为广播地址oxFFFF(此地址为保留地址,不能使用)。
节点加入网络时将选择范围内信号最强的父节点(包括协调器)加入网络,成功后将得到一个网络短地址并通过这个地址进行数据的发送和接收,网络拓扑关系和地址就会保存在各自的flash中。
节点通过协调器加入网络的流程图:
1. 查找网络协调器。首先会主动扫描查找周围网络的协调器,如果在扫描期限内检测到信标,那么将获得了协调器的有关信息,这时就向协调器发出连接请求。
2. 发送关联请求命令(Associate request command)。节点将关联请求命令发送给协调器,协调器收到后立即回复一个确认帧(ACK),同时向它的上层发送连接指示原语,表示已经收到节点的连接请求。
3. 等待协调器处理。当节点收到协调器加入请求命令的ACK后,节点mac将等待一段时间,接受协调器的连接响应。在预定的时间内,如果接收到连接响应,它将这个响应向它的上层通告。
Zigbee组网流程是Zigbee网络的核心部分,是保证Zigbee网络正常运作的关键一步骤。