文档库 最新最全的文档下载
当前位置:文档库 › 三种zigbee网络架构详解

三种zigbee网络架构详解

三种zigbee网络架构详解

三种zigbee网络架构详解

zigbee作为一种短距离、低功耗、低数据传输速率的无线网络技术,它是介于无线标记技术和蓝牙之间的技术方案,在传感器网络等领域应用非常广泛,这得益于它强大的组网能力,可以形成星型、树型和网状网三种zigbee网络,可以根据实际项目需要来选择合适的zigbee网络结构,三种zigbee网络结构各有优势。

星形拓扑是最简单的一种拓扑形式,他包含一个Co-ordinator(协调者)节点和一系列的End Device(终端)节点。每一个End Device 节点只能和Co-ordinator 节点进行通讯。如果需要在两个End Device 节点之间进行通讯必须通过Co-ordinator 节点进行信息的转发。

这种拓扑形式的缺点是节点之间的数据路由只有唯一的一个路径。Co-ordinator(协调者)有可能成为整个网络的瓶颈。实现星形网络拓扑不需要使用zigbee 的网络层协议,因为本身IEEE 802.15.4的协议层就已经实现了星形拓扑形式,但是这需要开发者在应用层作更多的工作,包括自己处理信息的转发。

树形拓扑包括一个Co-ordinator(协调者)以及一系列的Router(路由器)和End Device (终端)节点。Co-ordinator 连接一系列的Router 和End Device,他的子节点的Router 也可以连接一系列的Router 和End Device. 这样可以重复多个层级。树形拓扑的结构如下图所示:

需要注意的是:

Co-ordinator 和Router 节点可以包含自己的子节点。

End Device 不能有自己的子节点。

有同一个父节点的节点之间称为兄弟节点

有同一个祖父节点的节点之间称为堂兄弟节点

树形拓扑中的通讯规则:

Zigbee协议栈系统事件

系统常用事件处理函数: -按键事件 -接收消息事件 -网络状态改变事件 -绑定确认事件 -匹配响应事件 1、按键事件 Case KEY_CHANGE: 当有按键事件发生的时,调用按键事件处理函数Sample_HandleKeys()来处理按键事件。 在SampleApp例程中按键处理函数处理了以下2件事情 -如果按键1按下,将向网络中的其他设备发送LED闪烁命令 -如果按键2按下,检测组ID号为SAMPLEAPP_FLASH_GROUP的组是否已经注册。如果已经注册,调用aps_RemoveGroup()将其删除;如果没注册就在APS层注册

2、接收消息事件 Case:AF_INCOMING_MSG_CMD: 如果有接收消息事件发生,则调用函数SampleApp_MessageMSGCB(MSG)对接收的消息进行处理。一般的接收消息事件是通过用户自定义的端点输入簇和输出簇来处理的。 在LED闪烁命令的发送函数中的输出簇为SAMPLEAPP_FLASH_CLUSTERID,所以在接收消息事件的输入簇中为SAMPLEAPP_FLASH_CLUSTERID即收到LED闪烁命令

3、网络状态改变事件 Case:ZDO_STATE_CHANGE 当有网络状态改变事件发生后,会调用函数SampleApp_NwkState()来处理网络状态改变事件。在SampleApp例程中,网络状态改变事件主要处理了以下事件: -判断设备类型(区分协调器、路由节点、终端节点) -当协调器网络建立成功后或其他类型节点加入网络后点亮led1 -通过调用osal_start_timerEx()设置一个定时事件,当时间到达后启用用户自定义事件SampleApp_Send_PERIODIC_MSG_EVT 备注:在使用过程中这里的3种设备类型不是全选,写一个就可以了,其他的删除

Zigbee协议栈原理基础

1Zigbee协议栈相关概念 1.1近距离通信技术比较: 近距离无线通信技术有wifi、蓝牙、红外、zigbee,在无线传感网络中需求的网络通信恰是近距离需求的,故,四者均可用做无线传感网络的通信技术。而,其中(1)红外(infrared):能够包含的信息过少;频率低波衍射性不好只能视距通信;要求位置固定;点对点传输无法组网。(2)蓝牙(bluetooth):可移动,手机支持;通信距离10m;芯片价格贵;高功耗(3)wifi:高带宽;覆盖半径100m;高功耗;不能自组网;(4)zigbee:价格便宜;低功耗;自组网规模大。?????WSN中zigbee通信技术是最佳方案,但它连接公网需要有专门的网关转换→进一步学习stm32。 1.2协议栈 协议栈是网络中各层协议的总和,其形象的反映了一个网络中文件传输的过程:由上层协议到底层协议,再由底层协议到上层协议。 1.2.1Zigbee协议规范与zigbee协议栈 Zigbee各层协议中物理层(phy)、介质控制层(mac)规范由IEEE802.15.4规定,网络层(NWK)、应用层(apl)规范由zigbee联盟推出。Zigbee联盟推出的整套zigbee规范:2005年第一版ZigBeeSpecificationV1.0,zigbee2006,zigbee2007、zigbeepro zigbee协议栈:很多公司都有自主研发的协议栈,如TI公司的:RemoTI,Z-Stack,SimpliciTI、freakz、msstatePAN 等。 1.2.2z-stack协议栈与zigbee协议栈 z-stack协议栈与zigbee协议栈的关系:z-stack是zigbee协议栈的一种具体实现,或者说是TI公司读懂了zigbee 协议栈,自己用C语言编写了一个软件—---z-stack,是由全球几千名工程师共同开发的。ZStack-CC2530-2.3.1-1.4.0软件可与TI的SmartRF05平台协同工作,该平台包括MSP430超低功耗微控制器(MCU)、CC2520RF收发器以及CC2591距离扩展器,通信连接距离可达数公里。 Z-Stack中的很多关键的代码是以库文件的形式给出来,也就是我们只能用它们,而看不到它们的具体的实现。其中核心部分的代码都是编译好的,以库文件的形式给出的,比如安全模块,路由模块,和Mesh自组网模块。与z-stack 相比msstatePAN、freakz协议栈都是全部真正的开源的,它们的所有源代码我们都可以看到。但是由于它们没有大的商业公司的支持,开发升级方面,性能方面和z-stack相比差距很大,并没有实现商业应用,只是作为学术研究而已。 还可以配备TI的一个标准兼容或专有的网络协议栈(RemoTI,Z-Stack,或SimpliciTI)来简化开发,当网络节点要求不多在30个以内,通信距离500m-1000m时用simpliciti。 1.2.3IEEE802.15.4标准概述 IEEE802.15.4是一个低速率无线个人局域网(LowRateWirelessPersonalAreaNetworks,LR-WPAN)标准。定义了物理层(PHY)和介质访问控制层(MAC)。 LR-WPAN网络具有如下特点: ◆实现250kb/s,40kb/s,20kb/s三种传输速率。 ◆支持星型或者点对点两种网络拓扑结构。 ◆具有16位短地址或者64位扩展地址。 ◆支持冲突避免载波多路侦听技术(carriersensemultipleaccesswithcollisionavoidance,CSMA/CA)。(mac层) ◆用于可靠传输的全应答协议。(RTS-CTS) ◆低功耗。 ◆能量检测(EnergyDetection,ED)。 ◆链路质量指示(LinkQualityIndication,LQI)。 ◆在2.45GHz频带内定义了16个通道;在915MHz频带内定义了10个通道;在868MHz频带内定义了1个通道。 为了使供应商能够提供最低可能功耗的设备,IEEE(InstituteofElectricalandElectronicsEngineers,电气及电子工程师学会)定义了两种不同类型的设备:一种是完整功能设备(full.functionaldevice,FFD),另一种是简化功能设备

基于ZigBee技术的智能家居系统

一、智能家居的背景 从宏观上来讲,事物的每个发展阶段都是当时从业人员认识水平、技术水平、市场认知、原材料成本等几个原因共同作用的结果。每个阶段都会局限于当时的技术水平、市场接受程度等,都会有其无法突破的瓶颈和困难。即便智能家居系统在中国已发展20多年,且经过这么多年的发展,产品、技术已日趋成熟、稳定,但每项技术并不一定都完美无瑕。只要产品或技术处于高速发展中,它必然需要不断地去解决一些技术上或者产品上的问题。智能家居产品未来会还向节能环保,舒适度方面发展。比如冬暖夏凉型建筑,不用空调,由建筑自身的功能去调节温度。而智能家居必须结合这些建筑上的功能去发展,从这个方面来说,必然会推动智能家居的适应性发展。对与现阶段的智能家居来说,没有专用的对讲或智能家居数字处理芯片,无论是技术层面还是集成层面,都只是有所关联。如果能够很好的解决,未来数字对讲将会取得更好的应用。而随着中国城镇化趋势的加剧,大型小区会越来越多,人们对安保的重视程度也会日益加强,将来小区的多个安防子系统在技术上必然会走向综合化、集成化。除此之外,厂家需理性地为各类应用设计解决方案,校正一些过往的虚假概念。只有设计实用性强,性价比高,能适应拓展未来新技术的系统,才能更好地为用户服务。除此之外,各家产品的兼容性也是一个急需解决的问题。目前各厂家的产品均采用自家的协议,无法很好地做到兼容,而不同品牌的可视对讲和智能家居系统如何互连互通也将是今后需突破的难点 二、智能家居系统旨在实现的以下主要功能: (1)可以控制和相应的状态查询,如查询室内和室外的温度,可用于家用电器,如灯一键全开,一键全关,更方便。 (2)在光线方面我们可以依照家庭装修环境背景或者用户的其他层次的要对

ZigBee网络拓扑结构显示

实验二ZigBee网络拓扑结构显示 【实验目的】 1、熟悉Qt编写程序的方法; 2、了解Qt显示ZigBee网络拓扑结构的工作原理; 【实验设备】 1、装有RedHat AS5系统或装有RedHat AS5虚拟机的PC机一台; 2、物联网开发设计平台一套; 【实验要求】 使用Qt为ZigBee网络编写拓扑结构; 1、编程要求:使用提供的API函数编写应用程序; 2、实现功能:构建ZigBee网络拓扑结构; 3、实验现象:显示网络的拓扑结构; 【实验原理】 本实验箱针对Qt下,将服务程序的API做了一定的封装,并提供了非常方便使用的接口函数,可以让用户在Qt环境下绘制Zigbee网络的拓扑结构。这些函数都被封装在一个叫做TopologyWidget的类中,它们的详细介绍如下: 【函数原型】void TopologyWidget::SetTopologyArea(const QString &ip, QScrollArea *area); 【功能】设置用来显示拓扑图的滚动区域控件 【参数】ip: 运行服务程序的网关(计算机)的IP地址area: 用来显示拓扑图的滚动区域控件【返回值】无 【头文件】使用本函数需要包含"topologywidget.h" 【函数原型】void TopologyWidget::UpdateTopologyArea(QScrollArea *area); 【功能】立即刷新滚动区域控件中的拓扑图 【参数】area: 用来显示拓扑图的滚动区域控件 【返回值】无 【头文件】使用本函数需要包含"topologywidget.h" 在实际应用中,用户需要首先在界面中放置一个,假设其名称为“scrollArea”,只需要在窗体的构造函数中,完成了setupUi的操作之后,调用TopologyWidget::SetTopologyArea函数即可使拓扑图显示在这个滚动区域中,参考下面的代码。 Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); // 将界面中的scrollArea设置为用来显示拓扑图 TopologyWidget::SetTopologyArea("127.0.0.1", ui->scrollArea); } 【实验步骤】 1.双击打开桌面上的VMware Player。如图 2.1所示;

ZigBee 协议架构

根据应用和市场需要定义了ZigBee 协议的分层架构,其协议的体系结构如图1 所示,其中物理层(physical layer,PHY)和媒介访问控制层(medium access control sub-layer,MAC)是由IEEE802.15.4-2003 标准定义的,在这个底层协议的基础上ZigBee 联盟定义了网络层(network layer,PHY)和应用层(application layer,APL)架构. 图1 zigbee协议栈体系结构 物理层规范 物理层定义了它与MAC 层之间的两个接口:数据服务接口PD-SAP 和管理服务接口PLME-SAP,其中PD-SAP 接口还为物理层提供了相应的数据服务,负责从无线物理信道上收发数据,而PLME-SAP 接口同时为物理层提供相应的管理服务,用于维护一个由物理层相关数据组成的数据库。物理层负责数据的调制、发送和接收、空闲信道评估(clear channel assessment,CCA)信道能量的监测(energy detect,ED)和链接质量指示(link quality indication,LQI)等。物理层帧结构由同步头、物理层帧头和物理层有效载荷三部分组成,如表1 所示。

同步头又包括32bit 的前同步码和8bit 的帧定界符,前同步码用来为数据收发提供码元或数据符号的同步;帧界定符用来标识同步域的结束及数据的开始。物理层帧头包括7bit 的帧长度和1bit 的预留位,帧长度定义了物理层净荷的字节数。物理层有效载荷就是MAC层的帧内容。 表一物理层帧格式 媒体接入控制层规范 MAC 层定义了它与网络层之间的接口,包括提供给网络层的数据服务接口MLDE-SAP 和管理服务接口MLME-SAP,同时提供了MAC 层数据服务和MAC 层管理服务。MAC层数据服务主要实现数据帧的传输;MAC 层管理服务主要负责媒介访问控制、差错控制等。 MAC 层主要功能包括以下几个方面: (1)ZigBee 协调器产生网络信标 (2)设备与信标同步 (3)支持节点加入或着退出操作 (4)信道接入方式采用免冲突载波检测多路访问(CSMA-CA)机制 (5)建立并维护保护时隙机制 (6)为设备提供安全支持 MAC 帧格式由三个基本部分组成:MAC 帧头、MAC 帧载荷和MAC 帧尾。不同类型的MAC 帧,其帧头和帧尾都是一样的,只是MAC 帧载荷有差别,通用MAC 帧格式如表2所示。 表二通用MAC帧格式 网络层规范 网络层定义了它与应用层之间的接口,包括提供给应用层的数据服务接口NLDE-SAP和管理服务接口NLME-SAP , 同时提供了网络层数据服务和网络层管理服务。网络层主要负责拓扑结构的建立和网络的维护,具体的功能如下:(1)初始化网络,即建立一个新的包含协调器、路由器和终端设备的网络(2)设备连接和断开时所采用的机制 (3)对一跳邻居节点的发现和相关节点信息的存储 (4)ZigBee 协调器和路由器为新加入节点分配短地址

ZigBee和短距离通信的那些事

基于ZigBee的短距离无线通信网络技术 近年来,各种无线通信技术迅猛发展,极大提高了人们的工作效率和生活质量。然而,在日常生活中,我们仍然被各种电缆所束缚,能否在近距离范围内实现各种设备之间的无线通信?纵观目前发展较成熟的几大无线通信技术,往往比较复杂,不但耗费较多资源,成本也比较高,并不适用于短距离无线通信的场合。蓝牙技术的出现使得短距离无线通信成为可能,但是其协议较复杂、功耗高、成本高等特点不太适用于要求低成本、低功耗的工业控制和家庭网络。本文介绍了一种复杂度、成本和功耗都很低的低速率短距离无线接入技术——ZigBee。该技术主要针对低速率传感器网络而提出,它能够满足小型化、低成本设备(如温度调节装置、照明控制器、环境检测传感器等)的无线联网要求,能广泛地应用于工业、农业和日常生活中。 二、ZigBee技术的特点及应用 ZigBee技术主要用于无线个域网(WPAN),是基于IEEE802.15.4无线标准研制开发的。IEEE802.15.4定义了两个底层,即物理层和媒体接入控制(MediaAccess Control,MAC)层;ZigBee联盟则在IEEE 802.15.4的基础上定义了网络层和应用层。ZigBee联盟成立于2001年8月,该联盟由Invensys、三菱、摩托罗拉、飞利浦等公司组成,如今已经吸引了上百家芯片公司、无线设备公司和开发商的加入,其目标市场是工业、家庭以及医学等需要低功耗、低成本、对数据速率和QoS(服务质量)要求不高的无线通信应用场合。 ZigBee这个名字来源于蜂群的通信方式:蜜蜂之间通过跳Zigzag形状的舞蹈来交互消息,以便共享食物源的方向、位置和距离等信息。与其它无线通信协议相比,ZigBee无线协议复杂性低、对资源要求少,主要有以下特点: 低功耗:这是ZigBee的一个显著特点。由于工作周期短、收发信息功耗较低、以及采用了休眠机制,ZigBee终端仅需要两节普通的五号干电池就可以工作六个月到两年。 低成本:协议简单且所需的存储空间小,这极大降低了ZigBee的成本,每块芯片的价格仅2美元,而且ZigBee协议是免专利费的。

ZigBee的工作原理

ZigBee 的工作原理_ZigBee 组网技术ZigBee 是一种高可靠的无线数传网络,类似于CDMA和GSM网络。ZigBee 数传模块类 似于移动网络基站。通讯距离从标准的75m到几百米、几公里,并且支持无限扩展。Zigbee 技术特点主要有低功耗、低成本、时延短、网络容量大、工作频段灵活、低速率、安全的数据传输等。其中低功耗是Zigbee 技术最重要的特点。由于Zigbee 的传输速率相对较低发射功率较小,使得Zig bee 设备很省电,这是Zigbee 技术能够广泛应用的基石。 ZigBee 协议适应无线传感器的低花费、低能量、高容错性等的要求。Zigbee 的基础是IEEE 802.15.4 。但IEEE仅处理低级MAC层和物理层协议,因此Zigbee 联盟扩展了IEEE,对其网络层协议和API 进行了标准化。Zigbee 是一种新兴的短距离、低速率的无线网络技术。主要用于近距离无线连接。它有自己的协议标准,在数千个微小的传感器之间相互协调实现通信。 ZigBee 组网概述 组建一个完整的zigbee 网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网和通过已有父节点入网。 ZigBee 网络初始化预备 Zigbee 网络的建立是由网络协调器发起的,任何一个zigbee 节点要组建一个网络必须要满足以下两点要求: (1)节点是FFD节点,具备zigbee 协调器的能力; (2)节点还没有与其他网络连接,当节点已经与其他网络连接时,此节点只能作为该网络的子节点,因为一个zigbee 网络中有且只有一个网络协调器。 FFD:Full Func TIon Device 全功能节点 RFD:Reduced Func TI onDevice 半功能节点

ZigBee技术发展及其特点

第2章 ZigBee技术及协议分析 ZigBee技术的发展及其特点]1[ 长期以来,低成本、短距离、低传输率、低功率的无线通讯市场一直存在着。蓝牙(Bluetooth)技术的出现曾让玩具制造商、家庭自动化控制以及工业控制等业界从业者兴奋不已,尽管蓝牙技术有很多优点,但是高昂的价格和其存在的技术缺陷严重影响了这些厂商的使用意愿。对于工业控制、家庭自动化控制等领域而言,蓝牙技术过于复杂、功耗过大、距离近、组网规模达不到应用要求等,而工业自动化等领域对无线通信的需求越来越大。因此,经过人们的努力,于2004年正式推出了ZigBee协议规范。 “HomeRF Lite” 2004年(又称ZigBee2004)诞生,它是ZigBee的第一个规范,这使得ZigBee有了自己的发展基本标准。但是由于推出仓促存在很多不完善的地方,因此在2006年进行了标准的修订,推出了(又称ZigBee2006),但是该协议与是不兼容的。相较于做了很多修改,但是仍无法达到最初的设想,于是在2007年再次修订(称为ZigBee2007/PRO),能够兼容之前的ZigBee2006,并且加入了ZigBee PRO部分,此时ZigBee联盟更专注于以下三种应用类型的拓展:家庭自动化(HA)、建筑/商业大楼自动化(BA)以及先进抄表基础建设(AMI)。 随着ZigBee标准的完善以及各软件以及硬件厂商的不断努力,用于ZigBee开发的软硬件正趋于完善,ZigBee技术的实用化不断推进,其使用领域不断拓展。使ZigBee 技术在2004年就被列为当今世界发展最快、市场前景最广阔的十大高新技术之一。 ZigBee技术有以下几个方面的特点: (1)短时延。通信时延以及休眠状态激活时延都很短,通常在15ms至30ms间。 (2)高可靠性。采用了CSMA/CA(碰撞避免)机制,而且为需要固定带宽的通信业务预留了专用的时隙,从而避免了发送数据时可能出现的竞争和冲突;节点模块间有自动动态组网功能,信息在整个ZigBee网络中是通过自动路由方式传输的,这样可以保证信息的可靠传输。 (3)低数据率。数据传输率在10kb/s到250kb/s之间。 (4)低功耗。两节五号电池即可使用6个月至2年,免去了经常更换电池或者是充电的麻烦。 (5)低成本。ZigBee的低数据传输率,简单的协议,都大大降低了成本,而且ZigBee

zigbee网络自组织结构的研究

毕业论文(设计) Zigbee传感器网络自组织结构研究 学生姓名:朱伟 指导教师:张妍(讲师) 专业名称:通信工程 所在学院:信息工程学院 2012年6 月

目录 摘要......................................................... I Abstract .................................................... I I 第一章前言.. (1) 1.1 研究目的和意义 (1) 1.2 国内外研究现状 (1) 1.3 研究内容和方法 (1) 第二章ZigBee技术 (2) 2.1 Zigbee技术 (2) 2.2 Zigbee节能技术探讨 (3) 2.3 Zigbee协议栈 (4) 2.4 原语概念 (7) 2.5 Zigbee网络数据传递机制 (7) 第三章Zigbee传感器自组织网络节点通信 (10) 3.1 Zigbee自组织网络优点 (10) 3.2 Zigbee自组织网络多跳路由通信流程 (10) 3.3 通信实现的流程 (15) 第四章Zigbee网络组网方案 (17) 4.1 组网方案概述 (17) 4.2 Zigbee网络拓扑 (17) 4.3 Zigbee组网流程 (20) 4.4 Zigbee树路由算法 (22) 第五章ZigBee传感器自组织网络在机电监测系统中的应用 (26) 5.1 基于Zigbee传感器网络的机电监测系统的构建 (26) 5.2 Zigbee传感器节点的设计和测量点的选择 (28) 5.3 基于Zigbee传感器的机电监控系统自组织网络拓扑结构 (28) 5.4 Zigbee传感器节点数据传输流程 (29) 第六章结论与建议 (31) 致谢 (32) 参考文献 (33)

第三章 ZigBee 无线网络技术

第三章ZigBee 无线网络技术 3.1 ZigBee无线网络技术的特点 ZigBee技术主要用于无线个域网(WPAN),是基于IEEE802.15.4无线标准研制开发的。IEEE802.15.4定义了两个底层,即物理层和媒体接入控制(Media Access Control,MAC)层;ZigBee联盟则在IEEE 802.15.4的基础上定义了网络层和应用层。ZigBee联盟成立于2001年8月,该联盟由Invensys、三菱、摩托罗拉、飞利浦等公司组成,如今已经吸引了上百家芯片公司、无线设备公司和开发商的加入,其目标市场是工业、家庭以及医学等需要低功耗、低成本、对数据速率和QoS(服务质量)要求不高的无线通信应用场合。 ZigBee这个名字来源于蜂群的通信方式:蜜蜂之间通过跳Zigzag形状的舞蹈来交互消息,以便共享食物源的方向、位置和距离等信息。与其它无线通信协议相比,ZigBee无线协议复杂性低、对资源要求少,主要有以下特点: (1)低功耗:这是ZigBee的一个显著特点。由于工作周期短、传输速率低,发射功率仅为lmw,以及采用了休眠机制,因此ZigBee设备功耗很低,非常省电。据估算,ZigBee设备仅靠两节5号电池就可以维持长达6个月到2年左右的使用时间,这是其它无线设备望尘莫及的。 (2)低成本:协议简单且所需的存储空间小,这极大降低了ZigBee的成本,每块芯片的价格仅2美元,而且ZigBee协议是免专利费的。低成本对于ZigBee也是一个关键的因素。(3)时延短:通信时延和从休眠状态激活的时延都非常短,典型的搜索设备时延为30ms,休眠激活的时延是15ms,活动设备信道接入的时延为15ms。这样一方面节省了能量消耗,另一方面更适用于对时延敏感的场合,例如一些应用在工业上的传感器就需要以毫秒的速度获取信息,以及安装在厨房内的烟雾探测器也需要在尽量短的时间内获取信息并传输给网络控制者,从而阻止火灾的发生。 (4)传输范围小:在不使用功率放大器的前提下,ZigBee节点的有效传输范围一般为10-75m,能覆盖普通的家庭和办公场所。 (5)网络容量大:根据ZigBee协议的16位短地址定义,一个ZigBee网络最多可以容纳65535个节点,而且还可以通过64位的IEEE地址进行扩展,因此ZigBee网络的容量是相当大的。 (6)数据传输速率低:2.4GHz频段为250kb/s,915MHz频段为40kb/s,868MHz频段只有20kb/s。 (7)可靠:采取了免冲撞机制,同时为需要固定带宽的通信业务预留了专用时隙,避开了发送数据的竞争和冲突。媒体接入控制子层采用了完全确认的数据传输模式,每个发送的数据包

2020年Zigbee协议栈中文说明免费

1.概述 1.1解析ZigBee堆栈架构 ZigBee堆栈是在IEEE 802.15.4标准基础上建立的,定义了协议的MAC和PHY层。ZigBee设备应该包括IEEE802.15.4(该标准定义了RF射频以及与相邻设备之间的通信)的PHY和MAC层,以及ZigBee堆栈层:网络层(NWK)、应用层和安全服务提供层。图1-1给出了这些组件的概况。 1.1.1ZigBee堆栈层 每个ZigBee设备都与一个特定模板有关,可能是公共模板或私有模板。这些模板定义了设备的应用环境、设备类型以及用于设备间通信的簇。公共模板可以确保不同供应商的设备在相同应用领域中的互操作性。 设备是由模板定义的,并以应用对象(Application Objects)的形式实现(见图1-1)。每个应用对象通过一个端点连接到ZigBee堆栈的余下部分,它们都是器件中可寻址的组件。 图1-1 zigbe堆栈框架 从应用角度看,通信的本质就是端点到端点的连接(例如,一个带开关组件的设备与带一个或多个灯组件的远端设备进行通信,目的是将这些灯点亮)。 端点之间的通信是通过称之为簇的数据结构实现的。这些簇是应用对象之间共享信息所需的全部属性的容器,在特殊应用中使用的簇在模板中有定义。图1-1-2就是设备及其接口的一个例子:

图1-1-2 每个接口都能接收(用于输入)或发送(用于输出)簇格式的数据。一共有二个特殊的端点,即端点0和端点255。端点0用于整个ZigBee设备的配置和管理。应用程序可以通过端点0与ZigBee 堆栈的其它层通信,从而实现对这些层的初始化和配置。附属在端点0的对象被称为ZigBee设备对象 (ZD0)。端点255用于向所有端点的广播。端点241到254是保留端点。 所有端点都使用应用支持子层(APS)提供的服务。APS通过网络层和安全服务提供层与端点相接,并为数据传送、安全和绑定提供服务,因此能够适配不同但兼容的设备,比如带灯的开关。APS使用网络层(NWK)提供的服务。NWK负责设备到设备的通信,并负责网络中设备初始化所包含的活动、消息路由和网络发现。应用层可以通过ZigBee设备对象(ZD0)对网络层参数进行配置和访问。 1.1.2 80 2.15.4 MAC层 IEEE 802.15.4标准为低速率无线个人域网(LR-WPAN)定义了OSI模型开始的两层。PHY层定义了无线射频应该具备的特征,它支持二种不同的射频信号,分别位于2450MHz波段和868/915MHz 波段。2450MHz波段射频可以提供250kbps的数据速率和16个不同的信道。868 /915MHz波段中,868MHz支持1个数据速率为20kbps的信道,915MHz支持10个数据速率为40kbps的信道。MAC层负责相邻设备间的单跳数据通信。它负责建立与网络的同步,支持关联和去关联以及MAC 层安全:它能提供二个设备之间的可靠链接。 1.1.3 关于服务接入点 ZigBee堆栈的不同层与802.15.4 MAC通过服务接入点(SAP)进行通信。SAP是某一特定层提供的服务与上层之间的接口。 ZigBee堆栈的大多数层有两个接口:数据实体接口和管理实体接口。数据实体接口的目标是向上层提供所需的常规数据服务。管理实体接口的目标是向上层提供访问内部层参数、配置和管理数据的机制。 1.1.4 ZigBee的安全性 安全机制由安全服务提供层提供。然而值得注意的是,系统的整体安全性是在模板级定义的,这意味着模板应该定义某一特定网络中应该实现何种类型的安全。 每一层(MAC、网络或应用层)都能被保护,为了降低存储要求,它们可以分享安全钥匙。SSP是通过ZD0进行初始化和配置的,要求实现高级加密标准(AES)。ZigBee规范定义了信任中心的用

ZIGBEE无线定位技术

ZIGBEE无线定位技术 大多数无线传感器网络都要求具备一种确定网络节点位置的方法。因此在设备安装期间,需要弄清楚哪些节点相互之间直接进行数据交换,或者确定哪些节点直接与中央数据采集点进行数据交换。 当通过基于软件的计算方法来确定网络节点位置时,就需要考虑到市场化解决方案(market solution)。这些具体的计算方法是:节点首先读取计算节点位置的参数,然后将相关信息传送到中央数据采集点,对节点位置进行计算,最后,再将节点位置的相关参数传回至该节点。这就是典型的数据密集型计算,并且需要配置一台PC 或高性能的MCU。 这种计算节点位置的方法之所以只适用于小型的网络和有 限的节点数量,是因为进行相关计算所需的流量将随着节点数量的增加而呈指数级速度增加。因此,高流量负载加上带宽的不足限制了这种方法在电池供电网络中的应用。 针对上述问题,CC2431 采用了一种分布式定位计算方法。这种计算方法根据从距离最近的参考节点(其位置是已知的)接收到的信息,对节点进行本地计算,确定相关节点的位置。因此,网络流量的多少将由待测节点范围中节点的数量决定。另外,由于网络流量会随着待测节点数量的增加而成比例递增,因此,C C2431 还允许同一网络中存在大量的待测节点。 本文所提供的结果是根据对ZigBee 网络的测量得出的,然

而,这些测量结果同样适用于基于IEEE 802.15.4协议构建的更简单的网络。 定位引擎技术 定位引擎根据无线网络中临近射频的接收信号强度指示(R SSI),计算所需定位的位置。在不同的环境中,两个射频之间的RSSI 信号会发生明显的变化。例如,当两个射频之间有一位行人时,接收信号将会降低30dBm。为了补偿这种差异,以及出于对定位结果精确性的考虑,定位引擎将根据来自多达16 个射频的RSSI 值,进行相关的定位计算。其依据的理论是:当采用大量的节点后,RSSI 的变化最终将达到平均值。 在RF 网络中,具有已知位置的定位引擎射频称为参考节点,而需要计算定位位置的节点称为待测节点。 要求在参考节点和待测节点之间传输的唯一信息就是参考节点的X 和Y 坐标。定位引擎根据接收到的X 和Y 坐标,并结合根据参考节点的数据测量得出的RSSI 值,计算定位位置。 将定位技术纳入网络协议 一些采用定位引擎的应用可能要求放置若干个参考节点,以作为基础设施设置不可或缺的一部分。ZigBee 技术能够实现对家庭、办公以及工业等应用的无线控制。随着ZigBee 设备在楼宇基础设施中的安装数量不断增多,ZigBee 将会在家庭和办公自动化方面拥有更为广阔的应用前景。

zigbee的系统结构和组网方式

简介 ZigBee是一种新兴的短距离、低功耗、低数据传输速率的无线网络技术,它是一种介于无线标记技术和蓝牙之间的技术方案。ZigBee是建立在IEEE802.15.4标准之上,它确定了可以在不同制造商之间共享的应用纲要。IEEE802.15.4标准定义了ZigBee协议的PHY层和MAC层。PHY层规范确定了在2.4GHz(全球通用的ISM频段)以250kb/s的基准传输率工作的低功耗展频无线电以及另有一些以更低数据传输率工作的915MHz(北美的ISM频段)和868MHz(欧洲的ISM频段)的实体层规范。MAC层规范定义了在同一区域工作的多个IEEE802.15.4无线电信号如何共享空中通道。 为了促进ZigBee技术的发展,2001年8月成立了ZigBee联盟,2002年下半年,英国Invensys公司、日本三菱电子公司、美国摩托罗拉公司以及荷兰飞利浦半导体公司四大巨头共同宣布,它们将加入“ZigBee联盟”,目前该联盟已经有150多家成员,以研发名为ZigBee的下一代无线通信标准。 正如前面所述,ZigBee不仅仅只是802.15.4的名字,IEEE802.15.4仅处理低级MAC层和PHY层协议,所以ZigBee联盟对其网络层协议和API进行了标准化,还开发了安全层,以保证这种便携设备不会意外泄漏其标识。 ZigBee的组成和构网方式 1.FFD和RFD 利用zigbee技术组件的无线个人区域网(WPAN)是一种低速率的无线个人区域网(LR WPAN),这种低速率个人区域网的网络结构简单、成本低廉,具有有限的功率和灵活的吞 吐量。 在一个LR WPAN网络中,可同时存在两种不同类型的设备,一种是具有完整功能的设备(FFD),另一种是简化功能的设备(RFD)。 在网络中,FFD通常有3中工作状态:(1)作为个人区域网络(PAN)的主协调器;(2) 作为一个普通协调器;(3)作为一个终端设备。FFD可以同时和多个RFD或其他FFD通信。 而RFD则只用一种工作状态即作为一个终端设备,并且一个RFD只能和一个FFD通信。2.ZigBee的体系结构 ZigBee体系结构主要有物理(PHY)层、媒体接入控制(MAC)层、网络/安全层以及应用框架层构成,如下图所示:

zigbee网络中的信息传输方式

Zigbee网络中的消息传输方式 1、广播 广播是zigbee网络中的一种数据传输方式,它是由网络中的一个节点向其它节点发送消息的过程。在zigbee网络中协调器,路由器和macRxOnWhenIdle域值为TRUE的终端设备可以参与广播转发,其余节点不参与。能够接受广播帧的目的节点由广播帧中的目的地址来确定,不同的广播地址及其对应接收节点类型如下表所示: 在所有参与广播的节点中都需要维护一个包含若干条广播事务记录(Broadcast Transaction Rcord,BTR)的广播事务表(Broadcast Transaction Table,BTT),该表用来记录哪些节点已经成功转发了广播帧。 一个节点接收到一个广播帧时首先检查帧中的目的地址和自己的设备类型是否相符。不相符则丢弃;相符的话设备从本地BTT中查找相应的BTR,若干存在,则对其进行更新;若不存在,则检查BTT 中是否有空的或者过期的BTR项。如果没有,则丢弃广播帧;若有则添加新的BTR项并将广播帧提交到高层进行处理。若节点属性中radius值不为0或者该设备不是终端设备则转发该帧。BTT表中每个BTR都有有效期,在有效期过后,设备会将该BTR定义为失效以便后续写入新的BTR。MAC PIB属性macRxOnWhenIdle值为FALSE的zigbee路由器接收到广播帧后将会以单播的形式将该帧发送到其邻居节点。如果一个节点接收到一个广播帧后节点查找BTT中的广播帧序列号发现其另外一个邻居已经广播了该帧,则节点将忽略该广播帧。为了方便重发广播帧,每个zigbee路由器的NWK层至少能够缓存1帧数据。Zigbee中广播的主要用于路由发现。广播过程如下图所示:

从Zigbee协议栈底层添加自己的按键配置

本实验是基于ZStack-CC2530-2.5.1a版本的协议栈来进行实验的,整个实验需要改动 hal_board_cfg.h、hal_board_cfg.h、hal_key.c、hal_key.h和自己定义的Coordinator.c这5个文件。 注意:添加自己的按键时尽量不要修改协议栈里面的按键程序,自己另行添加即可。 1、hal_key.h 在/* Switches (keys) */下面添加自己的按键定义 #define HAL_KEY_SW_8 0x80 图1: ---------------------------------------------------------------------------------------- 2、hal_board_cfg.h 在/* S6 */ #define PUSH1_BV BV(1) #define PUSH1_SBIT P0_1 #if defined (HAL_BOARD_CC2530EB_REV17) #define PUSH1_POLARITY ACTIVE_LOW #elif defined (HAL_BOARD_CC2530EB_REV13) #define PUSH1_POLARITY ACTIVE_LOW #else #error Unknown Board Indentifier #endif 下面模仿/* S6 */下的程序定义自己的按键值: /* S8 */ #define PUSH8_BV BV(4)//修改 #define PUSH8_SBIT P0_4//修改 #if defined (HAL_BOARD_CC2530EB_REV17)

ZigBee无线网络和收发器(葵花宝典中文版)

由于国内暂时还没有该文献的中文版本,而ZigBee Wireless Networks and Transceivers又是ZigBee界的葵花宝典,为了自己更好的学习,所以决定将比较多的蛋疼的时间拿出来做点有意义的事,虽然翻译水平不是很高,但是在翻译的过程中肯定能得到进步,最关键的就是检验自己的毅力,看看能否坚持。在这个过程中,如果还能帮到一些正在入门ZigBee的朋友那就更好了。废话不多说,开始 ZigBee Wireless Networks and Transceivers ZigBee无线网络和收发器 1第一章ZigBee基础 本章主要介绍了短距离无线网络通信的ZigBee标准,本章的主要目的就是对ZigBee的基础特性进行一下简单的概述,包括它的网络拓扑、信道访问机制和每个协议层所扮演的角色,在后续章节中对本章所讨论的内容有详细的解释。 1.1 什么是ZigBee? ZigBee是为低数据速率、短距离无线网络通信定义的一系列通信协议标准。基于ZigBee的无线设备工作在868MHZ, 915MHZ和2.4Z频带。其最大数据速率是250Kbps. ZigBee技术主要针对以电池为电源的应用,这些应用对低数据速率、低成本、更长时间的电池寿命有较高的需求。在一些ZigBee应用中,无线设备持续处于活动状态的时间是有限的,大部分时间无线设备是处于省电模式(也称休眠模式)的。因此,ZigBee设备在电池需要更换以前能够工作数年以上。 ZigBee的其中一个应用就是室内病人监控。例如,一个病人的血压,心率可以通过可穿戴设备测量出来,病人戴的ZigBee设备来周期性的收集血压等健康相关的信息,然后这些数据被无线传送到当地服务器,例如病人家中的一台个人电脑,电脑再对这些数据进行初始分析,最后重要的信息通过互联网被发送到病人的护士或者内科医生那里做进一步的分析。 另一个ZigBee的应用例子就是大型楼宇结构安全的监控。在此应用中,一个建筑内可以安装数个ZigBee无线传感器(如加速度计),所有的这些传感器形成一个网络来收集信息,这些收集来的信息可以用于评估建筑的结构安全和潜在的损坏标志,例如,地震后一个建筑在重新开放前可能需要进行检测。而传感器收集到的数据有助于加速和减少检测的花费。在第二章中还提供了一些其他ZigBee的应用例子。 ZigBee标准是由ZigBee联盟所开发的,该联盟有数百个成员公司,从半导体产业和软件开发者到原始设备生产商、安装商。ZigBee联盟是2002年创立的

ZigBee的工作原理

ZigBee得工作原理_ZigBee组网技术ZigBee就是一种高可靠得无线数传网络,类似于CDMA与GSM网络。ZigBee数传模块类似于移动网络基站。通讯距离从标准得75m到几百米、几公里,并且支持无限扩展。Zig bee技术特点主要有低功耗、低成本、时延短、网络容量大、工作频段灵活、低速率、安全得数据传输等。其中低功耗就是Zigbee技术最重要得特点。由于 Zigbee得传输速率相对较低发射功率较小,使得Zig bee设备很省电,这就是 Zigbee技术能够广泛应用得基石。 ZigBee协议适应无线传感器得低花费、低能量、高容错性等得要求。Zigbee 得基础就是IEEE 802.15。4、但IEEE仅处理低级MAC层与物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议与API进行了标准化。Zigbee就是一种新兴得短距离、低速率得无线网络技术。主要用于近距离无线连接。它有自己得协议标准,在数千个微小得传感器之间相互协调实现通信。 ZigBee组网概述 组建一个完整得zigbee网状网络包括两个步骤:网络初始化、节点加入网络。其中节点加入网络又包括两个步骤:通过与协调器连接入网与通过已有父节点入网。 ZigBee网络初始化预备 Zigbee网络得建立就是由网络协调器发起得,任何一个zigbee节点要组建一个网络必须要满足以下两点要求: (1)节点就是FFD节点,具备zigbee协调器得能力; (2)节点还没有与其她网络连接,当节点已经与其她网络连接时,此节点只能作为该网络得子节点,因为一个zigbee网络中有且只有一个网络协调器。 FFD:Full Func TI on Device 全功能节点 RFD:Reduced FuncTI onDevice半功能节点

zigbee网络建立与加入

协议栈如何辨别设备类型?

在上图中可以看到协调器建立网络的步骤以及路由器和终端加入网络的过程,但协议栈究竟如何区分设备类型,仅从图中无法看出。 在ZDApp.c文件中,ZDOInitDevice( uint16 startDelay )函数调用了ZDAppDetermineDeviceType()函数,函数原型: /********************************************************************* * @fn ZDAppDetermineDeviceType() * @brief Determines the type of device to start. * * Looks at zgDeviceLogicalType and determines what type of * device to start. The types are: * ZG_DEVICETYPE_COORDINATOR * ZG_DEVICETYPE_ROUTER * ZG_DEVICETYPE_ENDDEVICE * * @param none * @return none */ void ZDAppDetermineDeviceType( void ) { if ( zgDeviceLogicalType == ZG_DEVICETYPE_COORDINATOR ) { devStartMode = MODE_HARD; // Start as a coordinator

ZDO_Config_Node_Descriptor.LogicalType = NODETYPE_COORDINATOR; } else { if ( zgDeviceLogicalType == ZG_DEVICETYPE_ROUTER ) ZDO_Config_Node_Descriptor.LogicalType = NODETYPE_ROUTER; else if ( zgDeviceLogicalType == ZG_DEVICETYPE_ENDDEVICE ) ZDO_Config_Node_Descriptor.LogicalType = NODETYPE_DEVICE; // If AIB_apsUseExtendedPANID is set to a non-zero value by commissioning // The device shall do rejoin the network. Otherwise, do normal join if ( nwk_ExtPANIDValid( AIB_apsUseExtendedPANID ) == false ) { devStartMode = MODE_JOIN; // Assume joining } else { devStartMode = MODE_REJOIN; } }

相关文档
相关文档 最新文档