江苏师范大学本科生毕业设计 基于Zigbee网络的路灯监控系统设计
网络节点的互通性,即网络协议的标准化。
(2) 各种功能的无线网络节点可以组成多种不同的网络拓扑结构,包括星
状网络、树状网络和网状网结构。随着网络拓扑的复杂化,就必须用大量的软件代码实现,需要大量的人力物力投入来进行开发,对公司开发新产品的要求非常高[3]。因此,Zigbee网络实现的软件代码,都由国际标准组织和Zigbee联盟这样的机构协助组织完成,然后以软件库、源代码库的方式提供给产品设计人员,由产品设计人员编写自己的应用程序进行程序调用。
Zigbee联盟维护的最新版本是2007版:Zigbee-2007 Specification。在本设计
中,由于相应的硬件平台选择原因,仍采用2006版的标准。
2.3 Zigbee网络设备及其拓扑结构
Zigbee系统的网络设备按照其实现的不同功能可分为两类:具有完整功能的全功能设备(FFD)和只具有部分简单功能的简单功能设备(RFD)[4]。其中RFD功能简单较易于实现,在整个网络中因其功能简单只可作为终端设备采集数据,也只能和一个特定的FFD进行通信。全功能设备可以作为路由器转发数据、扩充网络容量,也可作为整个系统的协调器,控制整个网络,一个Zigbee 系统至少要有一个FFD作为协调器。FFD也可以作为终端设备来使用。
(1) Zigbee协调器(Coordinator)
它是建立和配置网络的一种设备,负责网络的正常工作以及保持网络和其他设备的通信。首先,协调器建立一个无线网络,监听网络中的无线信号,接受其他设备加入网络的请求,同时发送指令给其他节点,控制整个网络。一个中央协调器就可控制整个网络。 (2) Zigbee路由器(Router)
路由器是一个用来转发消息的设备,作用是用来增加网络覆盖范围,保证无线通信的稳定性。首先,路由器加入协调器组建的网络后接收来自终端节点的信号,然后发送给协调器,同时也会接收来自协调器的命令,转发给终端节点。Zigbee星状网络不支持Zigbee路由器,树状网和网状网可以有多个Zigbee路由器。
江苏师范大学本科生毕业设计 基于Zigbee网络的路灯监控系统设计
(3)Zigbee终端设备(End Device)
作为一种终端设备,它可以执行自己的相关功能,通过网络与其他设备通信,而不需要维护复杂的网络信息。终端设备要其他设备进行通信只可以通过路由器转发。
当网络需要覆盖范围较大时,Zigbee可以组建不同的网络拓扑结构来增加网络覆盖范围。
Zigbee有三种网络拓扑结构:星形网、树状网和网状网[3]。 (1)星形网络
在星形拓扑结构中,通信是在终端设备和一个中心协调器之间进行的,该网络的通信范围受到限制,只适用于范围较小的场合。协调器可以作为发起设备,也可以是终端设备。中心协调器具有对本地网络进行管理的功能,负责建立网络、分配网络地址以及成员的加入等情况,同时还负责维护和更新各种设备和数据,通常情况下协调器具有稳定的电能供给,无需考虑能耗问题。终端节点因其只具有一些简单功能,所以只可以和协调器进行通信,与网络中其他设备的通信则必须经过协调器进行数据转发[4]。星形网络拓扑结构如图2-1所示。
协调器
终端设备
图2-1 星形网络拓扑结构
(2)树状网
在树状网络中,RFD可以选择加入Zigbee路由器或者协调器,路由器用来扩大整个网络的覆盖范围。路由器可以向整个网络提供两种功能的服务:一是增加整个网络的节点数,二是扩展网络覆盖范围[5]。加入路由器后,终端设备可以通过路由器连接到协调器上,保证整个网络的通信,而不需要在协调器的射频范围内才可以加入网络。在一些通信范围较大的场合中,树状网的拓扑结构可以有
江苏师范大学本科生毕业设计 基于Zigbee网络的路灯监控系统设计
效解决通信范围不足问题。树状网中大部分节点是全功能设备,而简单功能设备则处于树状网的末端。
协调器 路由器
简单功能节点
图2-2 树形网络拓扑结构
(3) 网状网
网状网是一种相对自由的拓扑结构,根据实际需要来设置相应的应用,对环境具有很强的适应能力。与其他两种网络拓扑结构不同的是,网状网中的节点大多数都是全功能设备,都可以自由的与网络中的其他设备进行通信,可以构成相对比较复杂的网络结构。网状网中设备之间进行通信时,为了扩大网络的通信范围和通信的稳定性,应尽可能的利用路由器进行数据的转发[4]。在该网络中,数据传输的路径相对自由灵活,可以任意选择新的路由器而不必使用协调器。
终端设备 路由器
协调器
图2-3 网状网拓扑结构
江苏师范大学本科生毕业设计 基于Zigbee网络的路灯监控系统设计
2.4 Zigbee协议栈体系结构
Zigbee协议栈体系结构是由一组称为层的块组成,每个层为上一层提供指定的服务。数据实体为上层提供数据传输的服务,管理实体则为上层提供其他所有服务。每个服务实体都通过服务接入点(SAP)为上层提供服务[5]。Zigbee协议栈体系结构共分为四层,分别是物理层(PHY)、媒体接入控制层(MAC)子层、网络层和应用层[4]。Zigbee体系结构如图2-4所示。
应用层 网络层 Zigbee 协议 MAC层 IEEE 802.15.4 物理层
图2-4 Zigbee体系结构
2.4.1 物理层
IEEE802.15.4有两个不同的物理层,分别作用于两个不同的频率范围:868/915MHz和2.4GHz[5]。其中868MHz频段应用于欧洲,915MHz频段应用于美国、澳大利亚等国。物理层位于Zigbee协议栈的最底层,管理以下一些任务: (1) 激活和关闭射频收发器 (2) 在已有的信道上进行能量检测
(3) 空闲信道评估(Clear Channel Assessment,CCA)
(4) 检测接受分组的链路质量指示(Link Quality Indication,LQD)
江苏师范大学本科生毕业设计 基于Zigbee网络的路灯监控系统设计
(5) 对信道频率进行选择 (6) 数据的传输和接收
2.4.2 媒体接入控制层(MAC)
MAC层主要为Zigbee网络中两个通信设备间的MAC层实体提供可靠的通信链路[4]。MAC层向上层提供两种服务:MAC层数据服务及MAC层管理服务
[5]
。数据服务是指支持不同设备的MAC层之间的数据交换,管理服务是指MAC
支持上层对其下达管理命令。
无线信道是一个共享信道,MAC层的关键技术之一就是解决设备在使用共享信道时不会产生因为冲突而造成错误的问题,否则就会造成网络的瘫痪。
MAC子层需要处理接入到无线信道等事务,并负责以下几个方面的任务: (1) 网络协调器产生并发送网络信标。
(2) 设备根据协调器的信标和协调器保持同步,并支持PAN链路的建立和断开以及无线信道的安全等。
(3) 信道接入采用载波侦听多路访问/冲突避免(CSMA-CA)机制。 (4) 处理和维护采用GTS机制。超帧结构和信标的概念引入使网络管理变得非常方便,每个超帧都以协调器信标开始,该信标中包含超帧持续时间以及时间分配等信息。
(5) 在两个通信设备对等MAC实体间提供数据通信链路。
2.4.3 Zigbee网络层
网络层主要是为确保正确操作IEEE802.15.4MAC子层和为应用层提供服务接口。为了能够在相同应用层进行连接,网络层在概念上包括两个应用实体:数据服务实体(NLDE)和管理服务实体(NLME)[6]。网络层数据实体向上层提供数据传输服务,管理实体则通过连接SAP提供管理服务。除此之外,网络管理实体利用数据实体完成某些管理任务,负责维护网络信息数据库(NIB)。
网络层主要为保证MAC子层的正常工作而提供一些必要的应用函数和相应的服务接口。网络层数据实体只能向在同一个网络中的两个及多个设备提供数据传输服务。网络层数据实体可向应用层提供以下一些服务: