2022年Zigbee协议栈中文说明免费.doc
《2022年Zigbee协议栈中文说明免费.doc》由会员分享,可在线阅读,更多相关《2022年Zigbee协议栈中文说明免费.doc(27页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、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设备都与一个特定模板有关,可能是公共模板或私有模板。这些模板定义了设备的应用环境、设备类型以及用于设备间通讯的簇。公共模板能够确保不同供给商的设备在一样应用领域中的互操作性。设备是由模板定义的,并以应用对象(A
2、pplication Objects)的方式实现(见图1-1)。每个应用对象通过一个端点连接到ZigBee堆栈的余下部分,它们都是器件中可寻址的组件。图1-1 zigbe堆栈框架从应用角度看,通讯的本质确实是端点到端点的连接(例如,一个带开关组件的设备与带一个或多个灯组件的远端设备进展通讯,目的是将这些灯点亮)。端点之间的通讯是通过称之为簇的数据构造实现的。这些簇是应用对象之间共享信息所需的全部属性的容器,在特别应用中使用的簇在模板中有定义。图1-1-2确实是设备及其接口的一个例子:图1-1-2每个接口都能接收(用于输入)或发送(用于输出)簇格式的数据。一共有二个特别的端点,即端点0和端点25
3、5。端点0用于整个ZigBee设备的配置和治理。应用程序能够通过端点0与ZigBee堆栈的其它层通讯,从而实现对这些层的初始化和配置。附属在端点0的对象被称为ZigBee设备对象 (ZD0)。端点255用于向所有端点的广播。端点241到254是保存端点。所有端点都使用应用支持子层(APS)提供的效劳。APS通过网络层和平安效劳提供层与端点相接,并为数据传送、平安和绑定提供效劳,因而能够适配不同但兼容的设备,比方带灯的开关。APS使用网络层(NWK)提供的效劳。NWK负责设备到设备的通讯,并负责网络中设备初始化所包含的活动、音讯路由和网络发觉。应用层能够通过ZigBee设备对象(ZD0)对网络层
4、参数进展配置和访咨询。1.1.2 802.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层平安:它能提供二个设备之间的可
5、靠链接。1.1.3 关于效劳接入点ZigBee堆栈的不同层与802.15.4 MAC通过效劳接入点(SAP)进展通讯。SAP是某一特定层提供的效劳与上层之间的接口。ZigBee堆栈的大多数层有两个接口:数据实体接口和治理实体接口。数据实体接口的目的是向上层提供所需的常规数据效劳。治理实体接口的目的是向上层提供访咨询内部层参数、配置和治理数据的机制。1.1.4 ZigBee的平安性平安机制由平安效劳提供层提供。然而值得留意的是,系统的整体平安性是在模板级定义的,这意味着模板应该定义某一特定网络中应该实现何品种型的平安。每一层(MAC、网络或应用层)都能被保护,为了降低存储要求,它们能够分享平安钥
6、匙。SSP是通过ZD0进展初始化和配置的,要务实现高级加密标准(AES)。ZigBee标准定义了信任中心的用处。信任中心是在网络中分配平安钥匙的一种令人信任的设备。1.1.5 ZigBee堆栈容量和ZigBee设备依照ZigBee堆栈规定的所有功能和支持,我们非常容易揣测ZigBee堆栈实现需要用到设备中的大量存储器资源。 不过ZigBee标准定义了三品种型的设备,每种都有本人的功能要求:ZigBee协调器是启动和配置网络的一种设备。协调器能够保持间接寻址用的绑定表格,支持关联,同时还能设计信任中心和执行其它活动。一个ZigBee网络只同意有一个ZigBee协调器。ZigBee路由器是一种支持
7、关联的设备,能够将音讯转发到其它设备。ZigBee网格或树型网络能够有多个ZigBee路由器。ZigBee星型网络不支持ZigBee路由器。ZigBee端终设备能够执行它的相关功能,并使用ZigBee网络到达其它需要与其通讯的设备。它的存储器容量要求最少。然而需要特别留意的是,网络的特定架构会戏剧性地妨碍设备所需的资源。NWK支持的网络拓扑有星型、树型和网格型。在这几种网络拓扑中,星型网络对资源的要求最低。ZigBee堆栈应该能够提供ZigBee标准要求的所有功能,因而制造商的重点工作是开发实际的应用。为了更加容易实现,假如制造商使用某种公共模板,那么可用大多数现成的配置。假如没有适宜的公共模
8、板,则能够充分利用其它模板已经做过的工作创立本人的模板。ZigBee协议栈体系包含一系列的层元件,其中有IEEE802.15.4 2003标准中的MAC层和PHY层,所以也包括ZigBee组织设计的NWK层。每个层的元件有其特定的效劳功能。本说明描绘内容涉及ZigBee协议栈的各层元件,但侧重于描绘最具实际和理论讨论性的APL应用层和NWK网络层。图1-1为ZigBee栈构造框图。2.APL应用层介绍2.1.1应用层简介如图2-1所示,ZigBee应用层由三个部分组成,APS子层、ZDO(包含ZDO治理平台)和制造商定义的应用对象。图2-1 zigbee协议堆栈分层构造2.1.2应用层框架Zi
9、gBee中的应用框架是为驻扎在ZigBee设备中的应用对象提供活动的环境。最多能够定义240个相对独立的应用程序对象,且任何一个对象的端点编号都是从1到240。此外还有两个附加的终端节点,为了APSDE-SAP的使用:端点号0固定用于ZDO数据接口;另外一个端点255固定用于所有应用对象广播数据的数据接口功能。端点241-254保存(留给将来扩展使用)。2.1.2.1应用Profiles应用profiles是一组统一的音讯,音讯格式和处理方法,同意开发者建立一个能够共同使用的分布式应用程序,这些应用是利用驻扎在独立设备中的应用实体来实现的。这些应用profiles同意应用程序发送命令、恳求数据
10、和处理命令的恳求。2.1.2.2簇簇标识符可用来区分不同的簇,簇标识符联络着从设备流出和向设备流入的数据。在特别的应用profiles范围内,簇标识符是唯一的。2.1.3ZigBee设备对象ZigBee设备对象(ZDO),描绘了一个根本的功能函数,这个功能在应用对象、设备profile和APS之间提供了一个接口。ZDO位于应用框架和应用支持子层之间。它满足所有在ZigBee协议栈中应用操作的一般需要。此外ZDO还有以下作用:(1)初始化应用支持子层(APS),网络层(NWK),平安效劳标准(SSS)。(2)从终端应用集合中配置的信息来确定和执行平安治理、发觉、网络治理、以及绑定治理。 ZDO描
11、绘了应用框架层中应用对象的公用接口以及操纵设备和应用对象的网络功能。在终端节点0, ZDO提供了与协议栈中与低一层连接的接口,假如是数据则通过APSDE-SAP,假如是操纵信息则通过APSME-SAP。的详细描绘在2.5节。2.1.3.1设备发觉设备发觉是ZigBee设备为什么能发觉其他设备的过程。这有两种方式的设备发觉恳求:IEEE地址恳求和网络地址恳求。IEEE地址恳求是单播到一个特别的设备且假定网络地址已经明白。网络地址恳求是广播且携带一个已经明白的IEEE地址作为负载。2.1.3.2效劳发觉效劳发觉是为什么一个已经明白设备被其他设备发觉的才能的过程。效劳发觉通过在一个已经明白设备的每一
12、个端点发送询咨询或通过使用一个匹配效劳(广播或者单播)。效劳发觉方便定义和使用各种描绘来概述一个设备的才能。效劳发觉信息在网络中也许被隐藏,在这种情况下,设备提供的特别效劳便可能不在操作发生的时候到达。2.2 ZigBee应用支持子层APSAPS提供了如此的接口:在NWK层和APL层之间,从ZDO到供给商的应用对象的通用效劳集。这效劳由两个实体实现:APS数据实体(APSDE)和APS治理实体(APSME)。(1)APSDE提供在同一个网络中的两个或者更多的应用实体之间的数据通讯。通过APSDE效劳接入点(APSDE-SAP);(2)APSME提供多种效劳给应用对象,这些效劳包含平安效劳和绑定
13、设备,并维护治理对象的数据库,也确实是我们常说的AIB。通过APSME效劳接入点(APSME-SAP)。2.2.1 范围这一小节描绘了应用层部分提供的效劳标准和消费商定义的应用对象与ZigBee设备对象之间的接口。标准定义了同意应用对象传输数据的数据效劳和提供绑定机制的治理效劳。另外,它还定义了应用支持子层的帧格式和帧类型。如图2-2图2-2 zigbee帧格式2.2.2 目的这小节的目的是定义ZigBee应用支持子层的功能。该功能建立在两个根底之上,一是正确运转ZigBee网络层的驱动功能,二是制造商定义的应用对象所需要的功能。2.2.3 应用支持子层简介应用支持子层给网络层和应用层通过Zi
14、gBee设备对象和制造商定义的应用对象使用的一组效劳提供了接口,该接口提供了ZigBee设备对象和制造商定义的应用对象使用的一组效劳。通过两个实体提供这些效劳:数据效劳和治理效劳。APS数据实体(APSDE)通过与之连接的SAP,即APSDE-SAP提供数据传输效劳。APS治理实体(APSME)通过与之连接的SAP,即APSME-SAP提供治理效劳,同时维护一个治理实体数据库,即APS信息库(NIB)。2.2.3.1 应用支持子层的数据实体(APSDE)APSDE向网络层提供数据效劳,同时为ZDO和应用对象提供效劳,完成两个或多个设备之间传输应用层PDU。这些设备本身必须在同一个网络。APSD
15、U将提供如下效劳:生成应用层的协议数据单元(APDU):APSDE将应用层协议数据单元(PDU)加上适当的协议帧头生成应用子层的协议数据单元(PDU)。绑定:两个设备效劳和需求相匹配的才能。一旦两个设备绑定了,APSDE将能够把从一个绑定设备接遭到的信息传送给另一个设备。组地址过滤:提供了基于终点组成员的过滤组地址信息的才能。可靠传输:比从网络层仅仅通过端对端的传输增加了可靠性回绝重复:提供传送的信息不会被重复接收支持大批量的传输:提供两个设备间顺序传输大批量的数据的才能。碎片:当音讯的长度大于单个网络层帧时,能够分割并重组音讯。流操纵:APS提供防止传输音讯吞没接收者的措施。堵塞操纵:APS
16、层使用“尽力”原则,提供措施防止传输音讯吞没中间网络。2.2.3.2 应用支持子层的治理实体(APSME)APSME应提供治理效劳支持应用程序符合堆栈。APSME应具有基于两个设备的效劳和需求向匹配的才能。该效劳称为绑定效劳,APSME应具有才能来构建和维护绑定表来存储这些信息。另外,APSME应提供如下效劳:1 应用层信息库治理:读取与设置设备应用层信息库属性的才能2 平安:与其他设备通过使用平安密钥建立可信关系的才能2.2.4 效劳标准应用支持子层为上层实体(NHLE)与网络层提供了一个接口。APS层理论上包含一个治理实体称为APS层,治理实体(APSME)。这个实体通过调用子层的治理函数
17、来提供效劳接口。APSME还负责维护一个关于APS子层治理实体的数据库。这是一个关于APS子层信息库(AIB)的数据库.图2-3描绘了APS子层的构成和接口。图2-3 应用支持之层参考模型APS子层通过两个效劳指针(SAPs)提供两种效劳。APS数据效劳通过APS子层数据实体效劳指针SAP(APSDE-SAP),APS治理效劳通过 APS则层治理实体效劳指针SAP(APSME-SAP).这两个效劳通过NLDE-SAP和NLME-SAP 接口 (见3.2小节)提供了NHLE和网络层之间的接口。网络层和APS子层之间的NLME-SAP接口只支持NLME-GET 和 NLME-SET原语,其他的NL
18、ME-SAP原语只能够通过ZDO实现(见2.5小节)。除了这些外部接口以外,在APSME和APSDE之间还有一个内部的接口,支持APSME使用APS数据效劳。2.2.4.1 APS数据效劳APS子层数据实体SAP(APSDE-SAP)支持在两个同等的应用实体之间传输应用协议数据单元。表2-1列出了APSDE-SAP支持的原语。每一个原语将在下面的小节阐述。2.2.4.1.1 APSDE-DATA.request该原语恳求从本地NHLE向一个同等的NHLE实体传输NHLE PDU(ASDU)。2.2.4.1.1.1 效劳原语的语法该原语的语法如下:APSDE-DATA_requestDstAdd
19、rModeDSTAddressDstEndpointProfiledClusterldSrcEndpointasduLengthasduTxOpiontsRadiusCounter表2.2详细说明了APSDE-DATA.request原语的参数。2.2.4.1.1.2 产生当有一个数据PDU(ASDU)由本地NHLE向一个同等的NHLE传输时,由本地NHLE生成该原语。2.2.4.1.1.3 2当APS子层实体接收到该原语时,便开场传输提供的ASDU。假如DstAddrMode参数为0x00,同时接收该原语的设备的APSDE支持绑定表,那么在绑定表中依照参数SrcEndpoint和Cluste
20、rId所指定的endpoint和cluster identifiers寻找相关联的绑定表入口。假如没有绑定表入口,APSDE将发送状态参数为NO_BOUND_DEVICE 的语APSDE-DATA.confirm原语。假如找到了一个或多个绑定表入口,APSDE将构建APDU,其endpoint信息从绑定表入口获得,当通过网络层传输信息帧时,其destination address信息从绑定表入口获得。假如存在多于一个绑定表入口,当接收到相应的NLDE-DATA.confirm原语,按上面描绘的,APSDE将构建并向下一个绑定表入口传输APDU,直到没有绑定表入口剩余。假如接收到该原语设备的AP
21、SDE不支持绑定表,那么APSDE将发送状态参数为 NOT_SUPPORTED的APSDE-DATA.confirm原语。假如DstAddrMode参数为0x02,DstAddress参数包含扩展的64位IEEE地址,初次必须使用NIB(见表2.24)属性中的nwkAddressMap映射相应的16位网络地址。假如找不到相应的16位网络地址,那么APSDE将发送状态参数为NO_SHORT_ADDRESS的APSDE-DATA.confirm原语。假如找到了相应的16位网络地址,其值将被用在NLDE-DATA.request原语中,参数DstEndpoint将被置在作为结果的APDU中。假如 D
22、stAddrMode参数为0x01,说明为群地址,参数DstAddress将被解释为16位的全地址。这个地址将被放置在APS头中的群地址域,参数DstEndpoint将被忽略,APS头中的destination endpoint域将被省略。APS头中的帧操纵域的delivery mode子域值在这种情况下为0x03.假如DstAddrMode参数为0x02,DstAddress参数包含16位的网络地址,同时提供参数DstEndpoint,当目的网络地址用于应用响应,同时网络地址部位后面的数据传输恳求保存时,上层只能使用DstAddrMode为0x02.应用程序能够通过使用参数RadiusCou
23、nter来限制在网络中传输数据帧的跳数。假如参数RadiusCounter为0x00,网络层在网络中传输信息帧没有约束。假如参数RadiusCounter为非零,则网络层将同意信息帧在网络中传输存在最多RadiusCounter跳。假如DstAddrMode参数为0x01,说明为群地址,或者DstAddrMode参数为0x00,同时相应的绑定表入口包含哪一个群地址,那么 APSME将检查NIB(见表3.42)中的属性nwkUseMulticast值。假如属性值为FALSE,那么输出帧的帧操纵域中的delivery mode子域设为0b11,16位的目的群地址将设置输出帧APS头中的group
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 Zigbee 协议 中文 说明 免费
限制150内