zigbee基本概念及组网特性

在这一章中,我们将一起来看一下zigbee的几个基本概念。当然,由于zigbee协议的复杂性,暂时只介绍下后面将提到的几个功能中用得到的概念。对于一些深入的概念的理解,将在介绍模块的API模式时,再进行补充。

一、Zigbee基本概念介绍

Zigbee是一种基于802.15.4物理层协议、支持自组网、多点中继,可实现网状拓扑的复杂的组网协议,加上其低功耗的特点,使得网络间的设备必须各司其职,有效地协同工作。

  1. Zigbee网络的设备类型
      在Zigbee网络中,有三种不同类型的设备,分别叫做:协调器(Coordinator)路由器(Router)终端节点(End Device),如下图所示:
    • 协调器的功能特点

      选择一个频道和PAN ID,组建网络
      允许路由和终端节点加入这个网络
      对网络中的数据进行路由
      必须常电供电,不能进入睡眠模式
      可以为睡眠的终端节点保留数据,至其唤醒后获取。

    • 路由器的功能特点

      在进行数据收发之前,必须首先加入一个zigbee网络
      本身加入网络后,允许路由和终端节点加入
      加入网络后,可以对网络中的数据进行路由
      必须常电供电,不能进入睡眠模式
      可以为睡眠的终端节点保留数据,至其唤醒后获取。

    • 终端节点的功能特点

      在进行数据收发之前,必须首先加入一个zigbee网络
      不能允许其他设备加入
      必须通过其父节点收发数据,不能对网络中的数据进行路由
      可由电池供电,进入睡眠模式

协调器在选择频道和PAN ID组建网络后,其功能将相当于一个路由器。协调器或者路由器均允许其他设备加入网络,并为其路由数据。

终端节点通过协调器或者某个路由器加入网络后,便成为其“子节点”;对应的路由器或者协调器即成为“父节点”。由于终端节点可以进入睡眠模式,其父节点便有义务为其保留其他节点发来的数据,直至其醒来,并将此数据取走。

  1. PAN ID
      PAN的全称为Personal Area Networks,即个域网。每个个域网都有一个独立的ID号,即称为PAN ID。整个个域网中的所有设备共享同一个PAN ID。Zigbee设备的PAN ID可以通过程序预先指定,也可以在设备运行期间,自动加入到一个附近的PAN中。

二、寻址

  1. Zigbee设备的地址类型
      Zigbee设备有两种不同的地址:16位短地址和64位IEEE地址。其中64位地址是全球唯一的地址,在设备的整个生命周期内都将保持不同,它由国际IEEE组织分配,在芯片出厂时已经写入芯片中,并且不能修改。而短地址是在设备加入一个zigbee网络时分配的,它只在这个网络中唯一,用于网络内数据收发时的地址识别。但由于短地址有时并不稳定,由于网络结构的变化会发生改变,所以在某些情况下必须以IEEE地址作为通讯的目标地址,以保证数据有效送达。
  2. FBee的地址分配方法
      FBee采用的是最新的Zigbee Pro的协议栈,在此版本的协议栈中:首先,在任何一个PAN中,短地址0x0000都是指协调器。而其他设备的短地址是随机生成的。当一个设备加入网络之后,它从其父节点获取一个随机地址,然后向整个网络广播一个包含其短地址和IEEE地址的“设备声明”(Device Announce),如果另外一个设备收到此广播后,发现与自己地址相同,它将发出一个“地址冲突”(Address Conflict)的广播信息。有地址冲突的设备将全部重新更换地址,然后重复上述过程,直至整个网络中无地址冲突。
  3. FBee设备的短地址变化说明
      在FBee的“透传”、“采集”与“控制”几大功能中,设备地址是至关重要的一个参数,只有地址设置正确,通讯才能按照预期进行。在此有必要对地址的使用进行详细的说明。
    1. 协调器和路由器的短地址
        协调器的短地址为0x0000,不会发生变化。而FBee的路由器短地址,是在其第一次上电时,按照上文2的规则,由其父节点成功分配一次之后,保存在内部flash中,以后无论如何开关机都将保持不变。
        值得一提的是,正是由于这种简单的网络结构,用户可以选择一个协调器+n个路由器的方式来组成一个无“低功耗”需求的网络,进行“无线透传”等应用,简单地使用短地址即可保证数据送达至正确的设备。
    2. 终端节点的短地址
        上述协调器+路由器的方式可以满足部分应用,但无法体现Zigbee自组网与低功耗的优势。这时就要发挥终端节点的特点。FBee终端节点的使用,将在后续章节中详细说明,此处仅介绍其短地址变化规律与长地址的使用。
        FBee终端节点可实现Zigbee的“自组”、“自愈”功能。每次打开终端节点的电源,它将自动检查其附近的路由器/协调器与其连接的信号质量,选择信号质量最好的路由为其父节点加入网络。在加入网络之后,它将周期性地发送数据请求(MAC data requests),如果其父节点没有对其请求进行响应,并且重试几次后,仍无响应,则判定为父节点丢失,此时终端节点将重复上述过程,重新寻找并加入网络。
        :由于FBee遵循的是Zigbee Pro的规范,重新加入新的父节点后,其短地址将保持不变。但在Zigbee 2007协议中,由于采用的是树型的固定地址方式,在更换父地址后,节点短地址会发生变化。
    3. 利用节点的长地址进行寻址
        由于短地址的可变性,在具备可移动节点(End Device)的网络中,最好使用长地址进行通讯,以确保数据送到正确的设备中。FBee模块可实现设备的长地址寻址,仅需一个简单的ATDL指令即可。具体的操作将在后续章节进行介绍。

三、数据发送方式

针对FBee模块现有的数据发送方式,我们重点介绍Zigbee的单播和广播两种方式。单播模式下面,数据由一个源设备,发送至一个目标设备;而广播模式,数据是由一个源设备,发送至很多,或者是所有的设备。

  1. 单播方式
      单播方式下,数据由源设备发出,直接或者经过几级中转后,发送至目的地址。加入zigbee网络的所有设备之间都可以进行单播传输,可用16位短地址或者64位长地址进行寻址。具体路由关系由协调器/路由器进行维护、查询。路由表的相关内容将在后续FBee API模式的章节中进行介绍。

  2. 广播方式
      广播方式是由一个设备发送信息至整个zigbee网络的所有设备,其目标短地址使用0xFFFF。另外,0xFFFD与0xFFFC也可作为广播地址。其区别如下:

0xFFFF: 广播数据发送至所有设备,包括睡眠节点
  0xFFFD: 广播数据发送至正在睡眠的所有设备
  0xFFFC: 广播数据发送至所有协调器和路由器

提到“广播”,可能不少人会认为zigbee的广播就像村里的大喇叭,一个人讲一遍,所有的人竖着耳朵听一次,就完成任务了。其实并不是这样的,Zigbee的广播更像是“传悄悄话”,一传十、十传百,一点点“蔓延”出去的。

举个最简单的例子:
  一个网络中,有ABC三个设备,A是B的邻居;B是C的邻居;但A和C不是邻居。

A--------->B-------->C

当A要发广播给整个网络的时候,由于距离关系,A无法直接发送给C,那么A首先广播给它的邻居(此例中只有B),B再广播给它的邻居(此例中有A和C),A此时收到B的广播数据,与自己发送的广播数据对比后得知:自己已经将信息广播给了B,且B已经成功中继此广播数据,此时A完成任务,并不再继续接受广播。

同理,C收到B的广播后,再广播给它的邻居(此例中只有B),B受到C的广播后,得知C也已经收到了自己的广播信息,且成功中继。

以此类推,任何一个数据广播都可以以这种方式,一步步往外蔓延,最终每个节点都成功收到信息,而且保证信息不会无止境地在网络间传播。

这种广播方式成功地将通讯范围扩大至整个网络,但由于这种信息在网络间频繁地转发,导致网络负担陡增,所以建议不要过分使用广播方式,而且每次广播的数据尽可能少,发送的时间间隔尽量不要太短!


转载至:http://blog.csdn.net/tanqiuwei/article/details/17303085

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容