2.1.3 ZigBee技术

1. 什么是ZigBee

ZigBee是符合IEEE 802.15.4标准的低功耗局域网协议,简单说,就是一种无线通信协议。ZigBee一词来源于蜜蜂的“8”字舞,蜜蜂(Bee)是靠飞翔和“嗡嗡(Zig)”地抖动翅膀来向同伴传递花粉所在方位信息的,依靠这种方式构成了群体中的“通信网络”。ZigBee网络的组网方式与此类似,因此称为ZigBee网络。ZigBee的特点是通信距离短、复杂度低、自组织、功耗低、数据传输速率低、成本低。简而言之,ZigBee是一种低成本、低功耗的短距离无线通信技术。

2. ZigBee特点简介

1)高可靠性

对于无线通信而言,由于电磁波在传输过程中容易受很多因素的干扰,如天气状况,尤其是障碍物的阻挡会造成信号的衰减。因此,无线通信系统在数据传输过程中具有一定的不可靠性。

为了弥补无线通信的不可靠性,ZigBee联盟在制定ZigBee规范时考虑了数据传输过程的不可靠性,采取了以下措施来提高数据传输的可靠性:

(1)在物理层兼容高可靠性的短距离无线通信协议IEEE 802.11.5,同时使用OQPSK和DSSS技术。

(2)采用CSMA/CA机制来解决数据冲突问题,采用使用16 bit的CRC来确保数据的正确性。

(3)采用带应答的数据传输方式来确保数据正确地传输到目标地址;在从源地址到目标地址传输数据时,尽量使数据沿着不同的传输路径,即所谓的星状网络。

2)低成本、低功耗

ZigBee协议可以集成到8 bit的MCU,目前TI公司推出了兼容ZigBee 2007协议的SoC芯片CC2530,该芯片每片的价格仅几元,外接由几个阻容元件构成的滤波电路和PCB天线即可作为ZigBee网络的节点。ZigBee网络中的设备主要分为三种:

(1)协调器(Coordinator):主要负责ZigBee网络的建立和维护。

(2)路由器(Router):主要负责ZigBee网络数据的路由,可连接多个逻辑上分开的ZigBee网络。

(3)终端节点(End Device):主要负责ZigBee网络的数据采集。

低功耗仅仅是针对终端节点而言的,路由器和协调器需要一直处于供电状态,只有终端节点可以定时休眠。

3)高安全性

为了保证数据传输的安全性,ZigBee技术使用了AES-128加密算法。

3. ZigBee协议

传统的无线协议很难适应WSN的低成本、低功耗、高容错性等的要求,在这种情况下,ZigBee协议便应运而生了。ZigBee协议的基础是IEEE 802.15.4,而ZigBee联盟又扩展了该协议,对其网络层协议和API进行了标准化。ZigBee协议的主要应用领域有家庭、楼宇自动化、自动读表系统等。

4. ZigBee网络简介

不同的无线通信系统使用的频段是不同的,为了防止不同系统之间的相互干扰,需要实施无线通信系统的频谱资源管理。各个国家都有自己的无线电管理部门,如美国的联邦通信委员会(FCC)、欧洲的典型标准委员会(ETSI)。我国的无线电管理机构是工业和信息化部国家无线电监测中心,其主要职责是负责无线电频率的划分、分配与指配、卫星轨道位置协调和管理、无线电检测、干扰查处、协调处理电磁干扰事宜和维护空中电波秩序等。

一般情况,使用某一特定的频段是需要得到无线电管理部门许可的。当然,各国的无线电管理部门也规定了一部分波段是对公众开放的,不需要许可即可使用,以满足不同应用的需求,如ISM(Industrial Scientific Medical)频段。除了ISM频段,在我国,低于135 kHz,在北美、日本等地低于400 kHz的频段也是免许可频段。各国的无线电管理部门不仅规定了ISM频段的频率,也规定了在这些频段上的发射功率。在项目开发过程中,需要查阅相关的手册,如《微功率(短距离)无线电设备管理暂行规定》。

ZigBee技术使用的是ISM频段,定义了两个频段,即2.4 GHz频段和896/915 MHz频段。在IEEE 802.15.4中规定了27个信道,其中2.4 GHz是全球通用的ISM频段。

ZigBee技术使用的ISM频段如图2-2所示。

图2-2 ZigBee技术使用的ISM频段

5. ZigBee应用领域简介

ZigBee技术是为小型无线局域网开发的通信技术,尤其是伴随着ZigBee2007协议的逐渐成熟,ZigBee技术在智能家居和智能楼宇方面有较大的应用前景。ZigBee技术的出现弥补了低成本、低功耗和低速无线通信市场的空缺,在以下应用场合,ZigBee技术表现出了其他无线通信技术没有的优势。

(1)需要采集大量数据、网络节点较多的场合。

(2)对数据传输速率要求不高的场合。

(3)对设备的体积有限制、电池使用时间不宜过短的场合。

(4)在野外布置网络节点,进行简单数据传输的场合。

在工业控制方面,可以利用ZigBee技术搭建无线网络,传感器节点采集数据后通过ZigBee网络来传输数据。在智能家居中,可将空调、电视、窗帘等的控制器通过ZigBee技术来搭建无线网络,通过一个遥控器就可以控制网络中的设备,这比每个设备都有一个遥控器要方便得多。在农业方面,传统的农业主要使用没有通信能力且孤立的机械设备,依靠人力来检测农田的土质、作物生长等状况;采用ZigBee技术,可以轻松地通过ZigBee网络来监控农田的土质状况和作物的生长状况,这将大大促进智慧农业的进程。在医学应用方面,可以借助ZigBee技术来准确、有效地监测患者的血压、体温等信息,这将大大减轻查房的工作负担,医生只需要通过上位机的软件,即可监测多个病房的患者健康状况。

6. Z-Stack

1)Z-Stack简介

想要学习协议栈,必须先知道协议是什么。协议定义的是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据收发。协议栈是协议的具体实现形式,可将协议栈通俗地理解为用代码实现的函数库,以便开发人员调用。

ZigBee的协议分为两部分,IEEE 802.15.4定义了PHY层和MAC层技术规范,ZigBee联盟定义了NWK(网络层)、APS(应用程序支持子层)、APL(应用层)技术规范。Z-Stack就是将各个层定义的协议都集合在一起,以函数的形式实现,并给用户提供一些应用层API,供用户调用。

2)Z-Stack的结构

Z-Stack采用分层架构,从下往上依次为PHY层、MAC层、网络层和应用层,应用层包含应用程序支持子层、应用框架和ZDO设备对象。在Z-Stack中,上层可以调用下层的函数来实现某些功能。Z-Stack的结构如图2-3所示。

图2-3 Z-Stack的结构

在图2-3中,APSDE-SAP为应用支持子层数据实体服务接入点,APSME-SAP为应用支持子层管理实体服务接入点,NLDE-SAP为网络层数据实体服务接入点,NLME-SAP为网络层管理实体服务接入点,MLDE-SAP为MAC层数据实体服务接入点,MLME-SAP为MAC层管理实体服务接入点,PLDE-SAP为PHY层数据实体服务接入点,PLME-SAP为PHY层管理实体服务接入点。服务接入点就是API,这些API用于调用下层的功能函数。

Z-Stack的PHY层和MAC层采用了IEEE 802.15.4标准,PHY层无线频段为全球通用的2.4 GHz、欧洲使用的868 MHz、美国使用的915 MHz,使用直接序列扩频技术,提供27个信道,支持20 kbit/s、40 kbit/s、250 kbit/s三种数据传输速率。其中,常用的2.4 GHz频段提供16个信道。PHY层的功能包括激活和休眠射频收发器、信道能量检测、信道接收数据包的链路质量指示、空闲信道评估、收发数据等。

Z-Stack的MAC层负责设备之间无线数据链路的建立、维护和结束,确认数据传输的模式,采用CSMA/CD机制,数据包的最大长度为127 B,每个数据包均由头字节和16位CRC校验值组成。

网络层为Z-Stack的核心部分,其主要功能是实现节点接入或离开网络、路由查找及传输数据等,支持星状、树状、网状三种网络拓扑结构,网络拓扑结构可根据具体的ZigBee网络来选择。节点按功能分为全功能设备和简化功能设备,协调器与路由器通常是全功能设备。

Z-Stack的应用层包括应用支持子层(APS)、ZDO设备对象和应用项目。应用支持子层负责维护绑定表,根据服务和需求在两个绑定实体间传输数据。ZDO设备对象不仅负责定义设备节点在网络中的角色,并负责网络设备的发现,决定提供何种应用服务,还负责初始化或响应绑定请求,以及建立网络设备间的安全关系。

ZigBee网络采用多点接入,有使能信标网络或不使能信标网络两种类型。在使能信标网络中,协调器在预定义的时隙内周期性地发送信标帧,用于节点关联、加入网络、同步传输数据。在不使能信标网络中,协调器也周期性地发送信号,但这只用于终端节点检测协调器是否存在,终端节点要随时准备好进行点对点的通信,通过发送数据请求和应答进行通信。

在安全方面,Z-Stack采用IEEE 802.15.4标准的MAC层安全模型,该安全模型规范了四个方面的安全服务,即访问控制、数据加密、帧完整性检查,以及采用顺序更新值防止帧重传。