㈠ 协调器是如何获取终端的IEEE地址并自动对其分配网络短地址呢
猜想如下:终端上电后稳定后就开始寻找周围是否存在网络?向周围发射广播,该广播内容包含自己的身份信息,即MAC地址和其它相关的网络信息,并时刻等待协调器或路由器的回应,一旦收到父网确认加入网路的回应信号则停止广播自己的身份ID,转入定时询问父网是否有自己消息的状态,并一直持续下去,如果有自己的消息则进行消息接收或处理。协调器上电后首先组建网络,网络组建成功后就可以允许其它设备加入到该网路并对网络进行管理,一旦发现有新的设备加入到网络,则分析该设备的广播包并解析出它的IEEE地址,然后分配给它一个网络短地址,反馈给该设备加入确认信息,至此一个设备加入到了该网络中。实验与分析:1、分析终端上电后的行为 使用sniffer截取一部分采集到数据如下:1)dest pan ID 为0xffff,说明终端未加入到网络;2)dest address 地址为0xffff 说明终端目前以广播方式进行数据发送;......................偶然发现了frank写的一篇文章整好可以回答这个问题,引用一下大家参考参考,我就不继续写了,呵呵。网络地址的分配及获取[转] Zigbee2006通过分布式寻址方案来分配网络地址的,保证网络内地址的唯一性。这个寻址算法本身的分布特性保证设备只能与其父辈设备通讯来接受一个网络地址。不需要整个网络范围内通讯的地址分配,有助于网络的可测量性。
在04协议栈里有这样一个公式,A=A(parent)+Cskip(d)*Rm+n,Cskip(d)是不同深度的父设备分配地址时的偏移量,Rm是可以携带的最大路由数,n是第n个设备。其中如果Cskip(d)=0x5a6,Rm=4,则协调器的第一个RFD的地址为A=0+0x5a6*4+1=0x1699.在06协议里看到这样一个描述:对于一个地址为A、深度为d的路由器,如果下式成立,则具有地址为D的目的地址设备为子设备:A<D<A+Cskip(d-1),假设父设备可拥有的最大子设备数为Cm,其拥有的最大路由子设备数为Rm,网络的最大深度为Lm,则父设备所能分配子区段地址数为:若Rm=1,Cskip(d)= 1+Cm*(Lm-d-1);若Rm不为1,则Cskip(d)=(1+Cm-Rm-Cm*( Rm)^(Lm-d-1))/(1-Rm).后来在另一本资料上见到一份资料:子节点为父设备的第n个子路由器的短地址分配:Achild =Aparent +(n-1)*Cskip(d)+1,n=1Achild =Aparen +(n-1)*Cskip(d),n>1子节点为父设备的第n个子终端设备的短地址分配:Achild = Aparent + Rm*Cskip(d)+ n下图为Lm=3,Cm=6,Rm=4的网络地址分配示例。几个有用的关于物理地址和网络地址的函数:得到父节点的网络地址:uint16 NLME_GetCoordShortAddr( void );得到父节点的物理地址:void NLME_GetCoordExtAddr( byte * );得到自己的网络地址:uint16 NLME_GetShortAddr( void );得到自己的物理地址:byte *NLME_GetExtAddr( void );根据已知物理地址查询远程设备网络地址,作为一个广播信息发送给网络中的所有设备:afStatus_t ZDP_NwkAddrReq( byte *IEEEAddress, byte ReqType,
byte StartIndex, byte SecurityEnable )根据已知网络地址查询远程设备物理地址,作为一个广播信息发送给网络中的所有设备:afStatus_t ZDP_IEEEAddrReq( uint16 shortAddr, byte ReqType,
快速查询(不启动无线查询,而是根据已存储于地址管理器中的网络(物理)地址查询物理(网络)地址):查找基于网络地址的物理地址:uint8 APSME_LookupExtAddr( uint16 nwkAddr, uint8* extAddr );查找基于物理地址的网络地址:uint8 APSME_LookupNwkAddr( uint8* extAddr, uint16* nwkAddr );一般发送消息,使用物理地址和网络地址都可以发送,但最好用网络地址,使用物理地址可能会出现问题。采用16bit网络地址可以降低功耗问题。如果采用64bit IEEE地址发送数据,首先其数据发送的最佳路径难以求得,势必会增加多次发送的功耗 其二 如果该数据接收设备离开网络(当机),发送之时也就不知道。 采用网络地址发送数据,可以采用路由算法 找到最佳路径 减其功耗。
㈡ zigbee协调器是什么
ZigBee是一项新型的无线通信技术,适用于传输范围短数据传输速率低的一系列电子元器件设备之间。 ZigBee无线通信技术可于数以千计的微小传感器相互间,依托专门的无线电标准达成相互协调通信,因而该项技术常被称为Home RF Lite无线技术、FireFly无线技术。
ZigBee无线通信技术还可应用于小范围的基于无线通信的控制及自动化等领域,可省去计算机设备、一系列数字设备相互间的有线电缆,更能够实现多种不同数字设备相互间的无线组网,使它们实现相互通信,或者接入因特网。
(2)协调器是如何创建网络的扩展阅读
Zigbee特点
Zigbee的基础是IEEE 802.15.4。但IEEE仅处理低级MAC层和物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议和API进行了标准化。Zigbee是一种新兴的短距离、低速率的无线网络技术。主要用于近距离无线连接。
它有自己的协议标准,在数千个微小的传感器之间相互协调实现通信。这些传感器只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以它们的通信效率非常高。
㈢ 在信标使能网络中,设备发送数据到协调器需要怎样建立连接
1、当设备把数据发送给支持信标的协调器时,它首先需要监听网络信标帧。
2、当找到信标帧时设备与超帧结构同步,在适当的时间设备发送数据给协调器。
㈣ 协调器的特点和作用
所谓协调器,就是网络组织的管理者。针对一般的应用模式,在一个Zigbee网络形成之后,协调器不是必须的。它最主要的作用是,依据扫描情况,选择一些合适参数建立一个网络。
㈤ ZigBee网络的组成部分各自的功能什么、他们之间如何配合工作
协调器——具有建立新网络的能力,负责启动网络和维护网络
路由节点——转发数据包,同时允许设备加入网络或者离开网络、为设备分配网络内部的逻辑地址、建立和维护邻居表等功能
终端节点——发送和接收数据,只需要有加入或离开网络的能力
㈥ 怎样组建zigbee多跳网络
Z-Stack协议栈已经实现了多跳和自组网,不需要人为设置的。当然,你可以自己配置组网方式,让它更符合你的项目需求。一个ZigBee网络中,必须要有一个协调器(coordinator)来创建一个网络,网络组建完成后,等待节点加入网络。路由器的主要功能就是路由,因为协调器也有路由的功能,所以对于一个小型网络而言它并不是必须的。
㈦ ZigBee如何组网
首先zigbee是什么?
ZigBee是一种基于标准的远程监控、控制和传感器网络应用技术。为满足人们对支持低数据速率、低功耗、安全性和可靠性,而且经济高效的标准型无线网络解决方案的需求,ZigBee产品如ZigBee模块F8913c、F8913d等。核心市场是消费类电子产品、能源管理和效率、医疗保健、家庭自动化、电信服务、楼宇自动化以及工业自动化。
其次zigbee是如何组网的?
组建一个完整的zigbee网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网和通过已有父节点入网。
Zigbee网络的建立是由网络协调器发起的,任何一个zigbee节点要组建一个网络必须要满足以下两点要求:
(1)节点是FFD节点,具备zigbee协调器的能力;
(2)节点还没有与其他网络连接,当节点已经与其他网络连接时,此节点只能作为该网络的子节点,因为一个zigbee网络中有且只有一个网络协调器。
节点通过协调器加入网络:当节点协调器确定之后,节点首先需要和协调器建立连接加入网络。为了建立连接,FFD节点需要向协调器提出请求,协调器接收到节点的连接请求后根据情况决定是否允许其连接,然后对请求连接的节点做出响应,节点与协调器建立连接后,才能实现数据的收发。
㈧ zigbee网络建立过程简介
ZigBee 网络的建立由网络协调器 Coordinator 发起。在建立网络前,Coordinator 将进 行信道扫描过程。找到合适的信道后,协调器将为网络选定一个网络标 识符(PAN ID,取值<=0x3FFF),这个 ID 在所使用的信道中必须是唯一的,也不能和其他 ZigBee 网络冲突,而且不能为广播地址 0xFFFF(此地址为保留地址,不能使用)。
对于协调器来说,短地址通常 设定为 0x0000,上面步骤完成后,就成功初始化了 ZigBee 网状网络,之后就等待其他节点的加入。
(8)协调器是如何创建网络的扩展阅读:
ZigBee具有短距离、低功耗、低数据传输速率的特点,介于无线标记技术和蓝牙之间的技术方案,在传感器网络等领域应用非常广泛。
这得益于它强大的组网能力,可以形成星型、树型和网状网三种 ZigBee 网络,可以根据实际项目需要来选择合适的 ZigBee 网络结构,三种 ZigBee 网络结构各有优势。
㈨ 在一个ZigBee网络当中,协调器起到什么角色
协调器的主要角色是建立和配置网络.一旦建立完成,这个协调器的作用就像路由器节点(或者甚至可以离开).这继续的网络操作不依赖这个协调器的存在,这是由于这个网络的分布式特性.协调器也可以辅助建立安全和应用等级绑定在网络中!
㈩ zigbee终端怎样固定加入一个协调器网络
由于不太清楚你是如何判断消息发送和接收成功的,原理大概如下:
协调器组建网络,终端接入网络,协调器的地址是0x0000,终端使用AF_DataRequest函数向协调器发送消息,在协调器代码case AF_INCOMING_MSG_CMD:的后面添加收到消息后的处理程序。