| 作者 |
| 曾凡太 孙昊 王洋 赵帅 杜秀芳 |
| 丛书名 |
| 物联网工程实战丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782007271540 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------物联网之雾:基于雾计算的智能硬件快速反应与安全控制--------------------------- 本书为“物联网工程实战丛书”的第6卷。书中从物联网工程的实际需求出发,阐述了雾计算的相关背景知识和基础理论知识,并对雾计算在物联网中的应用做了介绍和展望,这对填补国内这一领域的空白有积极作用。 本书共7章。第1章介绍了雾计算、边缘计算的简单概念;第2章介绍了雾计算架构的IEEE参考标准;第3章介绍了雾计算在物联网中的应用案例;第4章介绍了边缘计算的概念;第5章介绍了物联网边缘计算产品设计案例;第6章介绍了区块链与物联网结合的可能性;第7章介绍了物联网工程实战案例,涉及参数采集、云计算服务、雾计算服务、自组网编程、执行器控制等。本书中的案例由作者独立实验并提供。 本书适合作为高等院校物联网工程、通信工程、网络工程、电子信息工程、微电子和集成电路等相关专业的教材,也适合物联网领域的雾计算与边缘计算等研发人员阅读。另外,本书还适合作为智慧城市建设等政府管理部门相关人员的参考读物。 ---------------------------物联网之魂:物联网协议与物联网操作系统--------------------------- 本书系统地介绍了物联网协议和物联网操作系统的相关内容。第1章阐述了与物联网联系比较紧密的几种网络通信协议;第2章阐述了路由器交换机的原理及其开发要点;第3章对移动互联网Wi-Fi做了详细解析;第4章介绍了操作系统的一般概念;第5章介绍了几种应用于资源受限设备的物联网操作系统;第6章介绍了几种嵌入式实时操作系统;第7章剖析了一种轻量级实时物联网操作系统zephyr,给出较详细的应用开发指导;第8章阐述了比较流行的Ubunto操作系统;第9章详尽地讲解了路由器操作系统的开发流程,为物联网网关、智能路由器及边缘计算服务器的研发打下基础;第10章给出了嵌入式系统底层驱动软件的开发指导。本书适合从事物联网开发的工程技术人员及物联网专业的师生阅读。 |
| 目录 |
---------------------------物联网之雾:基于雾计算的智能硬件快速反应与安全控制--------------------------- 丛书序 序言 第1章 概述 1 1.1 互联网 1 1.2 物联网 2 1.3 云计算 3 1.4 雾计算 4 1.5 边缘计算 6 1.6 云计算、雾计算、边缘计算的关系 7 1.7 小结 8 1.8 习题 8 第2章 雾计算 9 2.1 雾计算概述 9 2.2 雾计算的标准 10 2.2.1 IEEE雾计算标准发布 12 2.2.2 雾计算标准诞生的背景 12 2.2.3 IEEE 1934—2018雾计算标准文献的结构 14 2.3 雾计算的支撑技术 14 2.3.1 安全支撑技术 16 2.3.2 可扩展性支撑技术 17 2.3.3 开放性支撑技术 18 2.3.4 自主性支撑技术 19 2.3.5 可靠性/可用性/可维护性 20 2.3.6 灵活性支撑技术 21 2.3.7 可编程支撑技术 22 2.4 物联网系统的结构层次 22 2.5 云雾结合的开发模型 24 2.6 雾计算参考架构 26 2.6.1 以功能需求为出发点来定义(设计)雾计算参考架构 26 2.6.2 以网络部署为出发点来定义(设计)雾计算参考架构 26 2.6.3 雾计算参考架构透视 30 2.7 架构概览 31 2.7.1 性能和规模层 32 2.7.2 安全层 32 2.7.3 管理层 35 2.7.4 数据分析和控制层 37 2.7.5 IT商业和交叉应用层 38 2.8 节点透视 39 2.8.1 网络 41 2.8.2 加速器 45 2.8.3 计算 46 2.8.4 存储 46 2.8.5 管理 47 2.8.6 安全 47 2.9 系统结构概览 51 2.9.1 硬件平台基础设施 51 2.9.2 环境条件 52 2.9.3 散热 52 2.9.4 模块化 52 2.9.5 模块间互相连接 53 2.9.6 硬件虚拟化和容器化 53 2.10 软件结构概览 54 2.10.1 软件架构层透视 54 2.10.2 节点管理 54 2.10.3 应用程序支持 56 2.10.4 应用服务 58 2.10.5 遵守雾计算参考架构标准 61 2.11 小结 61 2.12 习题 61 第3章 物联网与雾计算 62 3.1 云雾之间 62 3.2 雾计算与智慧车辆 63 3.2.1 车载雾计算节点 64 3.2.2 运输雾计算网络 65 3.2.3 交通控制系统 65 3.3 雾计算与安防监控 65 3.4 雾计算与智慧城市 66 3.5 雾计算与机场安检 68 3.5.1 机场视频监控 68 3.5.2 云雾结合和边缘处理方案比较 69 3.5.3 机场的视频安全需求分析 70 3.5.4 机器视觉用于视频监控 71 3.5.5 乘客机场登机过程 73 3.6 雾计算的深入研究 80 3.7 小结 81 3.8 习题 81 第4章 边缘计算 82 4.1 边缘计算的概念 82 4.2 边缘计算的方法 85 4.3 边缘计算技术架构 87 4.3.1 边缘计算技术架构1:MEC 87 4.3.2 边缘计算技术架构2:微云 89 4.3.3 边缘计算技术架构3:雾计算 89 4.3.4 三者对比分析 90 4.4 边缘计算应用 91 4.5 边缘计算研究进展 95 4.5.1 边缘计算要解决的关键问题 95 4.5.2 边缘计算技术的研究进展 96 4.5.3 边缘计算技术发展带来的影响 99 4.5.4 边缘计算发展的机遇与对策 100 4.5.5 企业对边缘计算的导向作用 101 4.6 边缘计算的发展与挑战 103 4.6.1 编程可行性 103 4.6.2 设备命名 103 4.6.3 数据抽象 104 4.6.4 服务管理 105 4.6.5 指标最优化 106 4.7 小结 106 4.8 习题 107 第5章 物联网与边缘计算 108 5.1 边缘计算网关 108 5.1.1 边缘计算网关的概念 108 5.1.2 智能网关的特征 110 5.1.3 多网融合的网关的设计 111 5.1.4 工业物联网智能网智能网关 113 5.2 边缘计算服务器 117 5.2.1 边缘计算服务器的优势 117 5.2.2 边缘计算服务器的特点 118 5.2.3 边缘服务器产品实例 118 5.3 边缘设备的部署 119 5.3.1 边缘计算结构 119 5.3.2 边缘计算类型 121 5.3.3 边缘计算部署施工 123 5.4 小结 125 5.5 习题 125 第6章 物联网与区块链 126 6.1 区块链的概念 126 6.2 区块链的基本结构 127 6.2.1 分布式数据库 127 6.2.2 区块链机制 128 6.2.3 区块链的性质 130 6.3 区块链的商用价值 132 6.3.1 区块链之跨境支付 135 6.3.2 区块链之贸易物流 136 6.3.3 区块链之供应链金融 137 6.3.4 区块链之征信 138 6.4 区块链的军事应用 139 6.4.1 区块链技术特性契合军事需求 139 6.4.2 区块链应用于武器装备寿命跟踪 140 6.4.3 区块链用于军用物流 140 6.4.4 区块链技术对于国家安全和经济的影响 141 6.5 区块链的物联网应用 141 6.5.1 区块链是物联网关键性配套技术 141 6.5.2 物联网发展的约束条件 142 6.5.3 物联网和区块链的共同点 142 6.5.4 物联网和区块链的结合点 143 6.5.5 物联网与区块链的融合 144 6.5.6 物联网与区块链应用案例 144 6.6 算法式信任与智能合约 145 6.7 区块链面临的挑战 147 6.7.1 区块链面临的商业挑战 147 6.7.2 区块链面临的监管挑战 148 6.7.3 区块链面临的技术挑战 148 6.7.4 区块链面临的安全挑战 150 6.8 区块链技术发展建议 151 6.8.1 区块链目前是不安全的 151 6.8.2 区块链发展的定位 152 6.8.3 区块链本身不产生价值 153 6.8.4 区块链核心技术不成熟 154 6.8.5 光明前景展望 155 6.9 小结 155 6.10 习题 156 第7章 物联网工程实战 157 7.1 物联网工程应用 157 7.1.1 物联网应用系统结构 157 7.1.2 电路原理图 158 7.1.3 模拟传感器实验电路 159 7.2 模拟传感器参数采集 160 7.2.1 多路模拟电子开关 160 7.2.2 模拟信号采样编程 161 7.3 数字传感器参数采集 163 7.3.1 多参数气体传感器PTQS1005 163 7.3.2 多参数气体传感器PTQS1005数据通信编程 166 7.4 传感器数据显示 168 7.4.1 彩色LCD液晶触摸串口屏 168 7.4.2 串口液晶屏显示控制编程 169 7.5 将传感器数据传送到云端 171 7.5.1 物联网云平台功能 172 7.5.2 物联网云平台通信协议 172 7.5.3 数据上云传输编程 174 7.6 云计算决策远程控制 175 7.6.1 物联网云平台远程控制操作步骤 175 7.6.2 物联网云平台远程控制设备端编程 176 7.7 物联网自组网技术实战 178 7.7.1 物联网自组网技术 178 7.7.2 自组网通信编程1:传感器阵列自组网 181 7.7.3 自组网通信编程2:雾计算服务节点 188 7.7.4 自组网通信编程3:本地执行设备净化器 200 7.7.5 自组网通信编程4:本地执行设备开窗器 203 7.7.6 自组网通信编程5:本地执行设备制氧机 207 7.8 小结 209 7.9 习题 210 后记 211 参考文献 212 ---------------------------物联网之魂:物联网协议与物联网操作系统--------------------------- 丛书序 序言 第1章 网络通信技术 1 1.1 数字通信概述 1 1.2 数字通信关键技术 2 1.3 数字通信OSI模型 3 1.4 TCP/IP网络通信协议 7 1.4.1 TCP/IP协议 7 1.4.2 CoAP协议 10 1.4.3 MQTT协议(低带宽) 11 1.4.4 AMQP协议(互操作性) 11 1.4.5 XMPP协议(即时通信) 12 1.4.6 JMS协议 13 1.5 UDP协议 14 1.6 HTTP协议 16 1.6.1 工作原理 16 1.6.2 消息结构 17 1.6.3 请求方法 18 1.6.4 响应头信息 19 1.6.5 状态码 20 1.6.6 内容类型 20 1.7 FTP协议 21 1.8 Bluetooth协议 23 1.8.1 Bluetooth发展史及优势 23 1.8.2 Bluetooth技术 25 1.9 ZigBee协议 26 1.9.1 ZigBee发展历史 27 1.9.2 ZigBee的特点及优势 30 1.9.3 ZigBee基本概念 30 1.9.4 ZigBee协议栈 32 1.10 6LoWPAN低速无线个域网协议 33 1.11 LoRa WAN低功耗广域网协议 35 1.12 NB-IoT窄带物联网协议 41 1.12.1 物联网应用场景和技术特点 41 1.12.2 无线通信技术发展过程 48 1.12.3 NB-IoT窄带物联网节能原理 52 1.12.4 NB-IoT通信系统拓扑结构 56 1.12.5 NB-IoT窄带物联网信号收发技术 59 1.12.6 NB-IoT窄带物联网小区接入 64 1.12.7 NB-IoT连接管理 67 1.12.8 NB-IoT数据传输 68 1.13 MQTT网络协议 71 1.13.1 网络协议比较 71 1.13.2 发布和订阅模型 72 1.13.3 MQTT协议命令 73 1.13.4 MQTT协议参数 74 1.14 协议转换 77 1.14.1 RS-232/485/CAN转换器 77 1.14.2 基于现场总线的协议转换器 78 1.14.3 物联网协议转换器——网关 79 1.14.4 物联网网关 82 1.14.5 物联网网关应用 84 1.15 小结 85 1.16 习题 86 第2章 信息交换技术 87 2.1 交换技术概述 88 2.2 数字程控交换 91 2.3 ATM交换 92 2.4 以太网交换 92 2.5 光交换 94 2.6 二层交换——交换机原理 94 2.7 三层转发——路由器原理 95 2.8 三层交换——三层交换机 98 2.9 交换机设计开发 103 2.9.1 交换机的层次定位 103 2.9.2 交换机的硬件设计 104 2.9.3 交换机的软件设计 107 2.9.4 测试环节 110 2.10 小结 110 2.11 习题 111 第3章 无线Wi-Fi技术 112 3.1 Wi-Fi概述 112 3.1.1 WLAN无线局域网络概述 112 3.1.2 Wi-Fi无线网络起源 113 3.2 Wi-Fi基础 116 3.2.1 Wi-Fi物理组件 117 3.2.2 Wi-Fi服务功能 117 3.2.3 Wi-Fi认证和加密 120 3.2.4 Wi-Fi基础参数 121 3.3 Wi-Fi接入 123 3.3.1 Wi-Fi的STA与AP的接入 123 3.3.2 Wi-Fi的多AP认证和关联过程 125 3.3.3 Wi-Fi漫游过程 126 3.4 Wi-Fi管理 127 3.4.1 wpa_supplicant程序 127 3.4.2 wpa_cli调试工具 129 3.5 Wi-Fi模块解析 130 3.5.1 Wi-Fi框架分析 130 3.5.2 Wi-Fi启动流程 133 3.6 Wi-Fi驱动结构 142 3.6.1 SDIO驱动 142 3.6.2 无线通信芯片 142 3.6.3 设备驱动注册 144 3.6.4 加载驱动模块 154 3.6.5 SDIO设备中断 155 3.6.6 Wi-Fi驱动流程 156 3.6.7 网络设备注册 159 3.7 小结 162 3.8 习题 163 第4章 操作系统概述 164 4.1 通用计算机操作系统 164 4.2 嵌入式实时操作系统 166 4.2.1 嵌入式操作系统的主要特点 167 4.2.2 嵌入式操作系统和通用计算机操作系统的区别 167 4.2.3 流行嵌入式实时操作系统 168 4.3 手机操作系统 171 4.3.1 Android 操作系统 171 4.3.2 Android App研发基础 172 4.3.3 Android App开发文献 174 4.3.4 iOS操作系统 176 4.4 物联网操作系统 178 4.4.1 概述 178 4.4.2 特点 180 4.4.3 架构 182 4.4.4 实例分析 192 4.4.5 发展趋势 194 4.5 小结 195 4.6 习题 196 第5章 物联网操作系统 197 5.1 微软物联网操作系统 197 5.2 谷歌物联网操作系统 197 5.2.1 谷歌Brillo 198 5.2.2 谷歌Android Things 199 5.3 ARM物联网操作系统 203 5.4 华为物联网操作系统Huawei LiteOS 204 5.5 中兴物联网操作系统 207 5.6 庆科物联网操作系统MICO 211 5.7 小结 220 5.8 习题 220 第6章 嵌入式Linux操作系统 221 6.1 uClinux简介 221 6.2 RTLinux简介 230 6.3 Ostro Linux简介 234 6.4 HelloX物联网操作系统 237 6.4.1 HelloX物联网操作系统框架分析 238 6.4.2 HelloX主要功能 239 6.4.3 HelloX的开发方向 241 6.4.4 HelloX用于智慧家庭 243 6.5 FreeRTOS操作系统简介 246 6.6 Tiny OS操作系统简介 249 6.6.1 Tiny OS特点 249 6.6.2 Tiny OS组成 251 6.6.3 Tiny OS运行机理 252 6.6.4 Tiny OS开发环境 252 6.6.5 Tiny OS开发过程 253 6.6.6 Tiny OS开发平台 254 6.6.7 Tiny OS的研究项目 254 6.7 RIOT OS操作系统简介 254 6.8 小结 258 6.9 习题 259 第7章 物联网Zephyr操作系统 260 7.1 Zephyr操作系统概述 261 7.1.1 Zephyr特色 261 7.1.2 支持的微处理器类型 262 7.1.3 支持的通信标准和网络协议 262 7.1.4 内核版本迭代历程 263 7.2 Zephyr系统内核 266 7.2.1 多线程功能 267 7.2.2 中断服务功能 268 7.2.3 时钟和定时器功能 268 7.2.4 同步功能 268 7.2.5 数据传输功能 269 7.2.6 内存动态分配功能 269 7.2.7 公共和私有内核对象 269 7.2.8 微内核服务器功能 270 7.2.9 C++支持的应用 270 7.2.10 Zephyr源代码结构 271 7.3 在Linux上搭建Zephyr开发环境 271 7.3.1 下载源代码 272 7.3.2 安装需要的包和依赖文件 272 7.3.3 安装Zephyr SDK 272 7.3.4 编译、运行应用程序 273 7.3.5 应用程序仿真测试与运行 274 7.4 在Windows上搭建Zephyr开发环境 274 7.5 用MSYS2搭建Zephyr 开发环境 277 7.6 应用程序开发 279 7.6.1 概述 279 7.6.2 创建应用程序app 280 7.6.3 创建应用程序子build 281 7.6.4 重构应用程序 282 7.6.5 运行应用程序 282 7.6.6 开发板定制 283 7.6.7 用QEMU调试程序 284 7.6.8 用Eclipse调试程序 286 7.6.9 CMake工具 287 7.6.10 CMakeLists.txt文件 288 7.6.11 CMakeCache.txt文件 289 7.6.12 编辑配置文件 290 7.6.13 更新设备树序列 293 7.6.14 支持第三方库代码 294 7.7 小结 294 7.8 习题 295 第8章 嵌入式Ubuntu操作系统 296 8.1 准备Ubuntu文件 297 8.2 安装Ubuntu系统 299 8.3 连网资源 304 8.4 更新系统 307 8.5 结构 309 8.6 启动流程 310 8.7 编程环境 311 8.7.1 安装编辑器 311 8.7.2 下载并安装JDK 311 8.7.3 Ubuntu开发环境的配置 314 8.7.4 Ubuntu添加或删除源 315 8.7.5 安装Eclipse 316 8.7.6 安装MySQL 317 8.7.7 安装build-essential 318 8.7.8 安装Tomcat 319 8.7.9 安装Android Studio(32Bit) 321 8.8 小结 322 8.9 习题 322 第9章 路由器OpenWrt操作系统 323 9.1 OpenWrt开发环境基础 324 9.1.1 OpenWrt硬件需求 324 9.1.2 OpenWrt文件结构和网络结构 326 9.2 OpenWrt常用命令 326 9.2.1 编辑命令vi 327 9.2.2 查找命令grep 328 9.2.3 查找命令find 328 9.2.4 在线手册查看命令man 329 9.2.5 其他命令 330 9.3 OpenWrt常用工具 331 9.3.1 Feeds简介 332 9.3.2 Buildroot简介 333 9.3.3 代码阅读与编辑工具Source Insight 334 9.3.4 文件传输工具FileZilla 339 9.3.5 远程登录工具SecureCRT 343 9.3.6 TFTP服务器软件Tftpd32 345 9.3.7 代码阅读和编辑工具KScope 346 9.3.8 远程登录工具C-Kermit 350 9.4 在Windows上安装VMware 351 9.5 在VMware上安装Ubuntu 357 9.5.1 Ubuntu安装步骤 357 9.5.2 Ubuntu上安装、配置、启动FTP和SSH服务 360 9.6 在Ubuntu上安装OpenWrt 362 9.6.1 安装open-vm-tools 363 9.6.2 安装所需的依赖环境 363 9.6.3 OpenWrt下载安装 364 9.6.4 OpenWrt的编译 364 9.6.5 OpenWrt的固件烧写 366 9.7 OpenWrt配置 368 9.7.1 初始配置 368 9.7.2 配置DNS 369 9.7.3 配置PPTP 370 9.7.4 配置chnroutes 373 9.7.5 配置VPN 374 9.7.6 安装LuCI 376 9.8 OpenWrt路由器应用开发 377 9.8.1 OpenWrt系统的编译 377 9.8.2 OpenWrt在线固件更新 380 9.8.3 OpenWrt刷机 390 9.8.4 路由器设置 392 9.8.5 文件服务 397 9.8.6 DDNS服务 403 9.9 OpenWrt应用程序编程实例 404 9.10 小结 412 9.11 习题 413 第10章 设备底层驱动编程 414 10.1 设备驱动简介 414 10.1.1 引言 414 10.1.2 设备驱动分类 415 10.1.3 驱动模块程序结构 416 10.2 Linux文件系统 420 10.3 文件系统与设备驱动 421 10.4 驱动编译及加载实例 423 10.5 字符设备驱动 427 10.5.1 字符设备驱动初识 428 10.5.2 字符设备驱动构成 431 10.6 小结 434 10.7 习题 434 参考文献 435 |