内容简介
《Zig Bee技术与应用:CC2430设计、开发与实践》从基础理论、开发实践以及应用三方面论述了Zig Bee无线网络设计实现的关键技术、开发细节和具体应用,覆盖了Zig Bee无线技术的理论基础、ZigBee无线网络的通信协议、Zig Bee网络节点硬件平台设计方法、嵌入式软件开发实例、网络定位原理与设计、Z-Stack软件架构等内容,给出了ZigBee技术在安全监控、医疗卫生和智能公交系统的应用实例和设计方法。
《Zig Bee技术与应用:CC2430设计、开发与实践》主要针对有一定网络和无线通信技术基础的中、高级读者,适合从事短距离无线网络通信技术理论研究、设备研制、工程应用、项目管理人员,以及高校计算机、通信、电子等专业高年级本科生和研究生参考使用,对从事无线传感器网络、物联网研究与研制的科研人员也有一定的借鉴与参考价值。
内页插图
目录
第一章 Zigl 技术概述
1.1 无线传感器网络/003
1.1.1 无线传感器网络概述/003
1.1.2 无线传感器网络特点及关键技术/004
1.2 ZigBee技术概述/006
1.3 ZigBee网络结构/007
1.3.1 ZigBee网络体系/008
1.3.2 ZigBee网络拓朴/008
1.4 ZigBee协议架构/009
1.5 ZigBee技术应用/010
第二章 IEEE802.15.4 标准
2.1 物理层规范/013
2.1.1 物理层功能概述/013
2.1.2 物理层服务规范/014
2.1.3 物理层数据格式/018
2.1.4 物理层常量和PIB属性/018
2.2 媒体接人控制(MAC)层规范/019
2.2.1 MAC层服务规范/019
2.2.2 MAC层帧格式/020
2.2.3 MAC层命令帧/026
第三章 zigl 网络及应用层
3.1 ZigBee网络层/031
3.1.1 网络层概况/031
3.1.2 网络层功能及其实现/032
3.2 ZigBee应用层/040
3.2.1 应用层概述/040
3.2.2 ZigBee应用支持子层/044
3.2.3 ZigBee应用框架/045
3.2.4 ZigBee设备对象/046
第四章 安全服务规范
4.1 安全服务规范概述/050
4.2 MAC层安全服务/054
4.2.1 流出MAC帧的安全处理/054
4.2.2 流入MAC帧的安全处理/055
4.2.3 与安全有关的MACPIB属性/055
4.3 NWK层安全服务/056
4.3.1 流出NWK帧的安全处理/056
4.3.2 流入NWK帧的安全处理/057
4.3.3 与安全有关的NIB属性/057
第五章 ZigBee常用芯片
5.1 几种常用的ZigBee射频芯片介绍/061
5.1.1 MCl3192射频芯片介绍/061
5.1.2 CC2420射频芯片介绍/062
5.2 CC2430片上系统/062
5.2.1 CC2430概述/062
5.2.2 CC2430引脚介绍/064
5.2.3 CC2430的8051CPU介绍/066
5.2.4 CC2430外围设备/075
5.2.5 CC2430无线模块/084
5.2.6 CC2431无线定位引擎/085
5.3 CC2591射频前端芯片/087
5.3.1 概述/087
5.3.2 引脚配置/088
5.3.3 内部结构及评估电路/089
第六章 基于CC2430的zieBee节点硬件设计技术
6.1 系统节点类型分类介绍/091
6.2 基于CC2430片上系统的监控子节点设计/092
6.2.1 监控子节点硬件结构/092
6.2.2 监控子节点电路设计/092
6.2.3 监控子节点PCB设计/094
6.2.4 监控子节点电路设计注意事项/094
6.2.5 监控子节点电源选择及其相关性能指标/095
6.3 大功率路由节点设计/096
6.3.1 大功率路由节点硬件系统结构,/096
6.3.2 大功率路由节点电路设计/097
6.3.3 大功率路由节点PCB设计/099
6.3.4 大功率路由节点电路设计注意事项/099
6.4 基于CC2430和FC35i/MC39i的协调器节点设计/101
6.4.1 协调器节点硬件结构/101
6.4.2 协调器节点电路设计/102
6.4.3 监控子节点PCB设计/105
6.4.4 协调器节点电路设计注意事项及其性能指标/105
6.5 硬件平台低功耗设计/106
6.6 调试测试方法/108
6.6.1 用户监控子节点调试及测试/108
6.6.2 大功率路由节点调试及测试/110
6.6.3 协调器节点调试及测试/12
第七章 IAR嵌入式软件开发系统及CC2430/243l程序设计
7.1 IAR开发环境介绍/115
7.2 IAR的安装/116
7.3 IAR中工作区、工程的建立和文件的添加/116
7.3.1 工作区、工程的创建/116
7.3.2 文件添加和程序文件新建/117
7.4 IAR中工程参数选项的设置/119
7.5 编译、链接、下载/121
7.5.1 仿真器安装/122
7.5.2 进入调试/122
7.5.3 调试窗口管理/123
7.5.4 调试管理/123
7.6 基于IAR的CC24.3 0/2431软件开发/125
7.6.1 I/O端口配置及寄存器设定/125
7.6.2 振荡器和时钟设定/127
7.6.3 电源模式及看门狗/129
7.6.4 中断程序/130
7.6.5 定时器编程/131
7.6.6 串口通信/136
7.6.7 DMA传输/137
7.6.8 射频收发/140
7.6.9 AES协处理器及随机数发生器/143
7.6.1 0片内温度、电压读取及ADC编程/145
7.6.1 1Flash读写/147
7.7 GSM/GPRS远程通信程序设计/147
7.7.1 ZigBee中用于发送短信的相关代码/147
7.7.2 ZigBee中用于接收短信的相关代码/154
第八章 TIZ-Stack软件架构及开发
8.1 Z-Stack软件架构/159
8.1.1 系统初始化/159
8.1.2 操作系统的执行/160
8.1.3 在项目中组织Z-Stack文件/163
8.2 应用层开发/166
8.2.1 绑定/166
8.2.2 配置文件/167
8.2.3 端点/167
8.2.4 簇/167
8.3 网络层开发/167
8.3.1 寻址/167
8.3.2 路由/169
第九章 zigBee无线传感器网络定位技术
9.1 定位技术概述/172
9.2 CC2431定位引擎/174
9.2.1 基于RSSI技术的定位引擎/174
9.2.2 定位引擎的精确性/175
9.3 定位网络的布置/176
……
应用篇
第十章 基于ZigBee网络的楼宇安全监测系统
第十一章 基于ZigBee知智能公交系统
第十二章 基于ZigBee的病房号系统
参考文献
精彩书摘
(2)网络自组织。在无线传感器网络应用中,通常情况下传感器节点被部署在没有基础设施的地方。传感器节点的位置不能预先精确设定,或者节点的位置不固定,是移动的;节点之间的相互邻居关系也不能预先知道,甚至是随时变化。这样就要求传感器节点具有自组织的能力,能够自动进行配置和管理,通过拓扑控制机制和网络协议自动形成转发监测数据的多跳无线网络系统。
(3)多跳路由。网络中节点通信距离有限,一般在几十到几百米范围内,节点只能与它的邻居直接通信。如果希望与其射频覆盖范围之外的节点进行通信,则需要通过中间节点进行路由。这样每个节点既可以是信息的发起者,也可以是信息的转发者。
(4)网络动态性。无线传感器网络是一个动态的网络,节点可以随处移动;一个节点可能会因为电池能量耗尽或其他故障,退出网络运行;一个节点也可能由于工作的需要而被添加到网络中。网络的拓扑结构总是处在变化当中。
(5)网络以数据为中心。传感器是传感器网络数据获取的来源,没有了传感器采集的数据,网络就失去了意义,所以通常说传感器是一个以数据为中心的网络。
(6)面向应用的网络。传感器用来感知客观物理世界,获取物理世界的信息量。客观世界的物理量多种多样,不可穷尽。不同的传感器应用关系不同的物理量,因此对传感器的应用系统也有多种多样的要求。网络的部署是有目的性的,通常情况下是针对实际情况而设定的,没有哪一种网络可以适应所有应用场景,所以传感器网络是应用驱动的网络。
2.无线传感器网络的关键技术
无线传感器网络是信息感知与采集和计算模式的一场革命,它作为一个全新的研究领域在基础理论研究和工程技术研究两个层面上对科技工作者提出了大量的挑战性研究课题。主要的关键技术如下:
(1)网络协议。传感器节点能量十分有限,因此在网络协议设计过程中要重点考虑功耗问题,因此降低能源消耗是无线传感器网络设计中要考虑的最重要的方面,大量研究表明路由协议和MAC协议对无线通信模块的能量消耗起着关键影响。无线传感器网络的MAC协议的主要目标是使节点公平、有效地共享无线信道,避免多个节点同时发送数据产生冲突。网络层路由协议需要解决通过局部信息来决策并优化全局行为(路由生成与路由选择)的问题。衡量传感器网络路由性能的一个重要指标就是合理地使用网络中各个传感器节点的有限能量,使得网络保持连通性的时间更长。
前言/序言
前些年美国《商业周刊》评选出了21世纪对改变世界最有影响力的十大科学技术,无线传感器网络技术位列其中。无线传感器网络技术将是继因特网之后,对21世纪人类生活方式产生重大影响的IT技术之一。无线传感器网络的出现,将逻辑上的信息世界与客观的物理世界融合在一起,改变了人与机器、人与自然的交互方式,未来人们将通过无处不在的传感器网络触摸自然、感知客观世界,从而极大地扩展人类认识世界的能力。近几年国外先后提出了“智慧地球”、“泛在网络”等概念,我国也提出了“感知中国”的倡议,无线传感器网络技术正是实现这些概念和倡议的基石。
Zig Bee是一种网络容量大、节点体积小、低功耗、低速率的无线通信技术,主要用来实现信息的采集与处理。由于Zig Bee网络节点体积小,组网灵活,部署方便,功耗极低,所以适合用来组建无线传感器网络。2002年,英国Invensys公司、日本MitsLtbishi公司、美国摩托罗拉公司、荷兰飞利浦公司等发起成立了Zig Bee联盟,推出了Zig Bee协议标准。Zig Bee技术一出现,立刻引起了广泛的关注,世界各大半导体厂商纷纷推出实现Zig Bee物理层功能的芯片。其中TI公司的C(22430/2431片上系统具备了实现Zig Bee技术的各种底层硬件需求,是真正的一体化解决方案,完全符合Zig Bee技术对节点“体积小、功耗低”的要求,成为市场追捧的热点。
有感于无线传感器网络技术,特别是Zig Bee技术的快速发展,笔者所在课题组在自。身教学、研究工作积累的基础上,精心编写了本书,主要目的是想让读者分享我们的研究经验及成果。本书精选了课题组在CC2430/2431片上系统上完成的Zig Bee传感器网络的软硬件设计研究成果,内容丰富、深入浅出,既有理论分析,又有实践应用。书中给出了一系列Zig Bee传感器网络硬件平台的设计方法,以及基于此的各种应用设计;特别要指出的是,书中给出了Zig Bee大功率节点融合GSM/GPRS模块节点开发的设计方法,这是本书的突出特色。与同类书籍相比,本书理论与实践并重,系统性强、实用性强,重点突出课题组的研发实践过程,并毫无保留地向读者公开了我们设计中的独到之处。
ZigBee技术与应用:CC2430设计、开发与实践 探索低功耗无线网络的无限可能 在物联网(IoT)蓬勃发展的浪潮下,无线通信技术扮演着至关重要的角色。其中,ZigBee以其低功耗、低成本、低速率以及自组网能力等优势,在智能家居、工业自动化、智慧农业、医疗健康等众多领域展现出巨大的应用潜力。本书聚焦于ZigBee技术的核心——TI(德州仪器)公司推出的CC2430芯片,系统性地阐述了CC2430的设计、开发与实践,旨在为读者提供一套全面而深入的学习指南,使其能够掌握ZigBee无线通信的核心技术,并成功将其应用于实际项目中。 本书内容梗概: 本书内容涵盖了从ZigBee协议栈的基础理论,到CC2430硬件平台的深入解析,再到实际项目开发的全过程。我们力求理论与实践相结合,通过详实的讲解和丰富的实例,帮助读者构建起扎实的ZigBee技术功底,并具备独立进行ZigBee系统设计与开发的能力。 第一部分:ZigBee技术基础与CC2430芯片详解 ZigBee协议栈深度解析: 物理层(PHY): 详细介绍ZigBee的物理层特性,包括其采用的2.4GHz ISM频段、调制解调方式(O-QPSK)、数据传输速率、信道划分以及天线设计的基本原则。理解物理层是保障无线通信稳定性的基石,我们将深入探讨信号传播、干扰抑制等关键技术。 MAC层(Medium Access Control): 深入剖析MAC层的职责,包括载波侦听多路访问/冲突避免(CSMA/CA)机制、信标(Beacon)帧、数据帧、确认帧等。我们将讲解如何通过MAC层协议来管理节点的接入、数据的可靠传输以及网络协调。 网络层(NWK): 重点讲解网络层在ZigBee中的核心作用,包括设备寻址、路由发现(AODV)、路由维护、网络加入与离开、组播与广播等。理解网络层的各种机制,是构建稳定、可扩展ZigBee网络的关键。 应用层(APL): 介绍ZigBee应用层的架构,包括终端设备配置文件(Device Profiles)、应用对象(Application Objects)以及ZDO(ZigBee Device Object)。我们将重点讲解如何利用应用层协议来实现各种智能设备的互联互通。 ZigBee与IEEE 802.15.4标准的关系: 明确ZigBee协议栈与IEEE 802.15.4物理层和MAC层标准之间的对应关系,阐述ZigBee在802.15.4标准基础上的扩展和增值。 CC2430芯片详解: CC2430核心架构: 深入介绍CC2430的硬件架构,包括其高性能8051内核、2.4GHz射频收发器、丰富的片上外设(ADC、Timers、UART、SPI、I2C、DMA等)。我们将分析这些组成部分如何协同工作,为ZigBee应用提供强大的支持。 射频收发器工作原理: 详细讲解CC2430的射频收发器的工作模式、参数配置以及关键特性,包括发送和接收的流程、灵敏度、输出功率、频率合成等。 片上外设功能与应用: 针对CC2430的ADC、定时器、通信接口(UART、SPI、I2C)等常用外设,进行逐一深入讲解,并提供实际应用场景中的配置方法和编程技巧。例如,如何利用ADC采集传感器数据,如何通过UART与PC或其它MCU通信,如何利用SPI/I2C连接外部芯片。 内存结构与管理: 介绍CC2430的FLASH、RAM等内存结构,以及如何进行有效的内存管理,包括程序代码存储、数据存储以及变量分配。 低功耗模式详解: CC2430在ZigBee应用中的一大优势在于其卓越的低功耗性能。我们将详细解析CC2430的各种低功耗模式(如Sleep Mode、Standby Mode等),以及如何根据应用需求进行优化配置,最大限度地延长设备续航时间。 第二部分:CC2430开发环境搭建与基础应用 开发工具链介绍: IAR Embedded Workbench for 8051: 详细介绍IAR EW8051集成开发环境的安装、配置和基本使用方法,包括代码编辑、编译、调试等核心功能。 CC2430开发套件(Development Kit): 介绍TI提供的CC2430开发套件(如CC2430EMK),包括开发板、评估模块、USB接口适配器等,并说明其在开发过程中的作用。 ZigBee协议栈软件(Z-Stack): 详细介绍TI官方提供的Z-Stack协议栈,包括其架构、模块化设计、API接口以及如何集成到CC2430项目中。我们将演示如何选择和配置适合的Z-Stack版本。 嵌入式C语言编程技巧: CC2430寄存器操作: 讲解如何通过直接操作CC2430的寄存器来控制硬件功能,这是深入理解和高效利用芯片的关键。 中断处理机制: 重点讲解CC2430的中断系统,包括中断源、中断向量、中断服务函数(ISR)的设计与编写,以及中断优先级管理。 驱动程序开发: 演示如何编写常用外设(如LED、按键、LCD、传感器)的驱动程序,为后续应用开发打下基础。 内存访问与优化: 介绍C语言在嵌入式环境下进行内存访问的注意事项,以及如何通过代码优化提升程序性能和降低内存占用。 CC2430基础实验: LED闪烁与按键检测: 最基础的实验,用于熟悉开发环境和GPIO控制。 UART通信实验: 实现CC2430与PC之间的串口通信,用于数据交互和调试。 ADC数据采集实验: 学习如何使用ADC模块采集模拟信号,例如光照强度、温度等。 定时器应用实验: 掌握定时器的使用,例如实现延时、周期性任务等。 第三部分:ZigBee网络构建与协议栈编程 ZigBee网络节点类型: 详细介绍ZigBee网络中的三种节点类型:协调器(Coordinator)、路由器(Router)和终端设备(End Device),以及它们各自的角色和功能。 ZigBee网络拓扑结构: 讲解ZigBee支持的各种网络拓扑结构,包括星型(Star)、树型(Tree)和网状型(Mesh),并分析它们的优缺点及适用场景。 CC2430 Z-Stack API应用: 网络初始化与配置: 学习如何使用Z-Stack API来初始化ZigBee协议栈,配置网络参数,如PAN ID、信道等。 设备加入与离开网络: 演示如何实现设备加入网络(形成网络、扫描可用网络、加入目标网络)以及从网络中离开。 数据传输 API: 重点讲解Z-Stack提供的各种数据传输API,包括单播(Unicast)、广播(Broadcast)、组播(Multicast)等,并解释不同传输方式的特点和使用场景。 设备管理 API: 介绍Z-Stack中用于设备管理的API,如查询邻居节点、查询路由表等。 事件处理与回调函数: 讲解ZigBee通信过程中产生的各种事件(如数据接收、网络状态变化等),以及如何通过回调函数来处理这些事件。 CC2430 ZigBee网络实验: 构建简单的星型网络: 实现一个协调器和几个终端设备组成的星型网络,实现终端设备向协调器发送数据。 构建树型网络: 引入路由器节点,构建树型网络,观察数据在树型结构中的传输路径。 构建网状网络: 演示如何构建更复杂的网状网络,体验ZigBee强大的自愈合和路由能力。 低功耗终端设备设计: 针对终端设备,重点讲解如何利用Z-Stack的低功耗特性,使设备在不工作时进入休眠状态,仅在需要时唤醒。 第四部分:CC2430 ZigBee应用开发实战 传感器网络应用: 无线温度、湿度监测系统: 设计并实现一套基于CC2430的无线温度、湿度监测系统,包括传感器节点和数据收集节点。 智能照明控制系统: 开发一款无线智能灯光控制器,可以通过ZigBee网络远程控制灯光的开关、亮度等。 环境空气质量监测: 集成CO2、PM2.5等传感器,构建无线空气质量监测解决方案。 智能家居应用: 智能门锁与安防系统: 探索将CC2430应用于无线门锁、门窗传感器、人体红外感应器等安防设备。 智能家电远程控制: 实现对空调、电视等家电的无线远程控制,提升家居生活的便捷性。 智能插座设计: 开发具有远程开关、定时、功率监测功能的智能插座。 工业自动化与物联网: 无线数据采集与监控: 在工业现场部署CC2430节点,用于采集设备运行状态、环境参数等数据,并通过ZigBee网络传输到上位机进行监控。 资产追踪与定位: 结合CC2430的低功耗特性,为工业资产开发低功耗的追踪标签。 农业环境监测与控制: 在智慧农业场景中,利用CC2430监测土壤湿度、光照、温度等,并实现对灌溉、施肥等设备的远程控制。 通信协议扩展与优化: 与TCP/IP网络的互联: 讲解如何通过网关设备(如基于Linux的嵌入式设备)将ZigBee网络与现有的TCP/IP网络连接,实现数据的互联网传输。 ZigBee Mesh路由优化: 探讨在大型ZigBee网络中,如何优化路由算法,提高网络的鲁棒性和效率。 与其他无线技术的协同: 简要介绍ZigBee与其他无线技术(如Wi-Fi、Bluetooth)的协同工作模式,拓展应用的可能性。 第五部分:进阶主题与未来展望 ZigBee 3.0新特性: 介绍ZigBee 3.0相较于前版本的改进和新特性,包括统一的应用层模型、标准化的设备描述以及更好的互操作性。 低功耗设计与功耗优化策略: 深入探讨更高级的低功耗设计技巧,包括硬件选型、软件算法优化、电源管理策略等,以实现超低功耗应用。 安全性设计: 介绍ZigBee的安全特性,包括加密、认证等机制,以及如何在实际应用中设计安全的ZigBee系统。 OTA(Over-The-Air)升级: 讲解如何实现CC2430 ZigBee设备的空中升级功能,方便后续的固件更新和维护。 ZigBee技术发展趋势: 展望ZigBee技术在未来的发展方向,例如与AI、边缘计算的结合,以及在更多新兴领域的应用。 本书特色: 理论与实践并重: 每一部分都配以丰富的实验和实例,确保读者能够将理论知识转化为实际操作能力。 CC2430芯片深度剖析: 专注于TI CC2430芯片,提供最实用、最深入的硬件和软件开发指南。 循序渐进的学习路径: 从基础概念到高级应用,由浅入深,适合不同层次的读者。 贴近实际项目开发: 案例设计来源于实际应用场景,帮助读者快速上手并解决开发中的问题。 前沿技术展望: 涵盖ZigBee 3.0等最新技术,为读者提供未来的发展方向。 目标读者: 电子工程、计算机科学、自动化等相关专业的在校学生。 嵌入式系统工程师、硬件工程师、软件工程师。 对物联网、智能家居、无线通信技术感兴趣的爱好者。 需要开发ZigBee无线应用的研发人员和项目经理。 本书将是您进入ZigBee技术领域,掌握CC2430芯片开发,并成功构建各类物联网应用的理想指南。通过本书的学习,您将能够 confidently地设计、开发和部署高效、可靠的低功耗无线解决方案。