本书根据《高等院校物联网工程专业发展战略研究报告暨专业规范(试行)》和物联网工程本科专业的教学需要,结合传感网的最新发展及其应用现状编写而成。主要内容包括传感网的概述,通信协议,数据管理技术,拓扑控制、能量管理、时间同步、节点定位等传感网关键技术,应用开发技术和基于TinyOS的传感网实验。本书侧重介绍传感网的基本概念和关键技术,力求做到理论联系实际、概念准确、图文并茂。
本书主要针对以下读者群体:①普通高等院校学习传感网课程的本科生,涉及物联网工程、计算机、电子、通信和自动化等信息技术类专业;②开设传感网课程的高职高专生;③普通高等院校的硕士生、博士生,可将其作为了解传感网的入门参考;④工程技术开发人员,可将本书作为参考书。
前言
教学建议
第1章 绪论 /1
1.1 传感网的起源与发展 /1
1.2 传感网的体系结构 /3
1.2.1 传感器节点体系结构 /3
1.2.2 传感网的网络结构 /4
1.3 传感网的核心技术 /5
1.4 传感网的主要特点 /7
1.5 传感网的应用 /8
1.5.1 军事应用 /8
1.5.2 环境监测 /10
1.5.3 医疗卫生 /12
1.5.4 智能家居 /12
1.5.5 其他方面 /13
1.6 传感网与物联网的关系 /13
1.7 本章小结与进一步阅读的文献 /14
习题1 /14
参考文献 /14
第2章 传感网通信协议 /16
2.1 物理层的协议设计 /16
2.1.1 IEEE 802.15.4物理层标准 /17
2.1.2 868/915 MHz频段物理层 /18
2.1.3 2.4 GHz物理层描述 /19
2.1.4 各频段通用规范 /20
2.2 MAC层协议 /21
2.2.1 传感网MAC协议设计原则 /21
2.2.2 IEEE 802.15.4 MAC /21
2.2.3 S-MAC /22
2.2.4 B-MAC /24
2.2.5 RI-MAC /25
2.2.6 实例:TinyOS MAC层协议分析 /26
2.3 路由协议 /29
2.3.1 路由协议简介 /29
2.3.2 分发协议 /30
2.3.3 汇聚协议 /32
2.4 传输层 /42
2.4.1 传输层的挑战 /43
2.4.2 可靠多段传输协议(RMST) /44
2.4.3 慢存入快取出协议(PSFQ) /45
2.4.4 拥塞检测和避免协议(CODA) /48
2.4.5 可靠的事件传输协议(ESRT) /50
2.5 6LoWPAN标准 /52
2.5.1 6LoWPAN简介 /52
2.5.2 6LoWPAN协议栈体系结构 /53
2.5.3 6LoWPAN适配层 /54
2.5.4 6LoWPAN路由协议 /55
2.5.5 6LoWPAN传输层 /55
2.6 ZigBee标准 /56
2.7 本章小结与进一步阅读的文献 /58
习题2 /58
参考文献 /59
第3章 传感网数据管理 /60
3.1 概述 /60
3.1.1 传感网数据管理系统的体系结构 /61
3.1.2 传感网数据管理系统的数据模型 /63
3.2 数据管理技术 /64
3.2.1 数据查询 /64
3.2.2 数据索引 /68
3.2.3 网络数据聚合 /72
3.3 实例:TinyDB系统 /77
3.3.1 TinyDB系统简介 /77
3.3.2 TinyDB的系统结构 /78
3.3.3 TinyDB系统组成 /78
3.3.4 查询语言 /80
3.3.5 TinyDB系统仿真 /80
3.4 本章小结与进一步阅读的文献 /84
习题3 /85
参考文献 /85
第4章 传感网关键技术 /87
4.1 命名与寻址 /87
4.1.1 基本原理 /87
4.1.2 地址管理 /88
4.1.3 地址分配 /89
4.1.4 基于内容和地理位置寻址 /90
4.2 拓扑控制 /90
4.2.1 概述 /91
4.2.2 功率控制 /92
4.2.3 层次拓扑 /96
4.3 能量管理 /101
4.3.1 概述 /101
4.3.2 能耗优化策略 /102
4.4 时间同步 /107
4.4.1 概述 /108
4.4.2 事件同步 /113
4.4.3 局部同步 /115
4.4.4 全网同步 /118
4.5 节点定位 /121
4.5.1 概述 /121
4.5.2 节点位置的基本计算方法 /124
4.5.3 测距定位 /125
4.5.4 非测距定位 /132
4.6 本章小结与进一步阅读的文献 /136
习题4 /139
参考文献 /140
第5章 传感网应用 /144
5.1 概述 /144
5.2 传感网应用设计基本原理 /144
5.2.1 设计因素 /145
5.2.2 架构设计 /146
5.2.3 硬件设计 /147
5.2.4 软件设计 /150
5.3 应用开发、部署与维护技术 /150
5.3.1 开发技术 /151
5.3.2 部署技术 /156
5.3.3 维护技术 /156
5.4 环境监测类案例:精准农业应用 /158
5.4.1 概述 /158
5.4.2 系统架构 /158
5.4.3 软硬件介绍 /159
5.5 事件检测类案例:反狙击系统 /162
5.5.1 概述 /162
5.5.2 系统架构 /163
5.5.3 软硬件介绍 /163
5.6 目标追踪类案例:警戒网 /165
5.6.1 概述 /165
5.6.2 系统架构 /166
5.6.3 软硬件介绍 /166
5.7 案例分析:金门大桥震动监测 /168
5.7.1 应用需求 /168
5.7.2 系统架构 /168
5.7.3 硬件设计 /169
5.7.4 软件设计 /171
5.8 光纤传感技术 /173
5.8.1 光纤传感器 /173
5.8.2 光纤传感系统组成 /174
5.8.3 光纤传感技术的应用 /175
5.9 本章小结与进一步阅读的文献 /175
习题5 /176
参考文献 /177
第6章 基于TinyOS的传感网应用开发 /180
6.1 典型的无线传感网开发套件 /180
6.1.1 MICA系列节点 /180
6.1.2 MICA系列处理器/射频板 /183
6.1.3 MICA系列传感器板 /185
6.1.4 编程调试接口板 /186
6.1.5 国内外其他典型的无线传感网节点 /187
6.2 nesC语言基础 /188
6.2.1 简介 /188
6.2.2 术语 /190
6.2.3 接口(interface) /192
6.2.4 组件(component) /194
6.2.5 模块(module) /197
6.2.6 配件(configuration) /202
6.2.7 应用程序样例 /207
6.3 TinyOS操作系统 /210
6.3.1 组件模型 /211
6.3.2 事件驱动的并发执行模型 /211
6.3.3 通信模型 /212
6.4 TinyOS开发环境搭建 /214
6.4.1 创建Ubuntu虚拟机 /215
6.4.2 安装Java编译运行环境 /216
6.4.3 安装必备工具 /217
6.4.4 下载并编译安装nesC编译器 /217
6.4.5 下载并安装TinyOS /218
6.4.6 下载并安装AVR交叉编译工具链 /218
6.4.7 测试TinyOS开发环境 /218
6.5 简单无线传输 /221
6.5.1 BlinkToRadio依赖的其他组件 /222
6.5.2 BlinkToRadio的执行过程 /224
6.5.3 内存所有权 /226
6.6 简单数据分发 /227
6.6.1 数据分发依赖的组件 /227
6.6.2 数据分发例程 /228
6.7 简单数据汇聚 /230
6.7.1 数据汇聚依赖的组件 /231
6.7.2 数据汇聚例程 /232
6.8 TinyOS仿真平台——TOSSIM /235
6.8.1 TOSSIM简介 /236
6.8.2 仿真库的编译 /236
6.8.3 仿真脚本的编写 /236
6.8.4 仿真例子 /238
6.8.5 高级功能简介 /240
6.9 本章小结与进一步阅读的文献 /241
习题6 /241
参考文献 /242
附录