作品简介

本书的示例可以让你更快地熟悉物联网系统。本书包括很多与物联网系统相关的基础知识,通过这些基础知识的学习可以加深你对物联网系统的理解。通过本书中的多个动手示例,你可以掌握物联网系统的调试方法。对于嵌入式工程师而言,本书可以帮助你从不同角度了解低功耗设备如何连接网络。通过CoAP的学习可以从另一个角度熟悉HTTP。CoAP和HTTP都是设备连接网络的常见手段。我个人喜欢阅读技术图书,通过阅读图书可以系统地掌握一门新技术,我也希望本书可以帮助读者熟练掌握CoAP,并把它应用于物联网系统中。

CoAP可以帮助低功耗智能终端接入网络,通过这种标准协议也可以降低物联网系统的开发难度,尤其可降低物联网Web平台的开发难度。对于应用CoAP的终端设备来说,同样会遵守REST标准,使用类似的资源描述方法,使用相同的请求方法,应用相同的JSON数据包。对于物联网Web平台来说,处理一次终端设备的数据上传和处理一次Ajax表单提交同样容易。

作品目录

  • 前言
  • 第1章 物联网与网络协议
  • 1.1 本章主要内容
  • 1.2 物联网与IP
  • 1.2.1 IPv4
  • 1.2.2 IPv6
  • 1.2.3 6LoWPAN
  • 1.3 物联网与HTTP
  • 1.3.1 HTTP
  • 1.3.2 REST风格
  • 1.4 物联网与CoAP
  • 1.4.1 CoAP
  • 1.4.2 RFC文档汇总
  • 1.5 物联网与MQTT协议
  • 1.5.1 MQTT协议
  • 1.5.2 MQTT主题
  • 1.5.3 MQTT服务质量
  • 1.6 本章小结
  • 第2章 物联网与开源硬件
  • 2.1 本章主要内容
  • 2.2 Arduino
  • 2.2.1 Arduino简介
  • 2.2.2 常用Arduino型号
  • 2.2.3 Arduino扩展接口
  • 2.3 树莓派
  • 2.3.1 树莓派简介
  • 2.3.2 常用树莓派型号
  • 2.3.3 树莓派扩展接口
  • 2.4 本章小结
  • 第3章 网络技术回顾
  • 3.1 本章主要内容
  • 3.2 IP
  • 3.2.1 动手尝试
  • 3.2.2 IPv4首部
  • 3.2.3 IPv4地址
  • 3.2.4 IPv6首部
  • 3.2.5 IPv6地址
  • 3.3 UDP
  • 3.3.1 动手尝试
  • 3.3.2 UDP首部
  • 3.3.3 UDP示例分析
  • 3.4 TCP
  • 3.4.1 动手尝试
  • 3.4.2 TCP首部
  • 3.4.3 TCP示例分析
  • 3.4.4 UDP与TCP对比
  • 3.5 HTTP
  • 3.5.1 动手尝试
  • 3.5.2 HTTP工作模式
  • 3.5.3 HTTP首部
  • 3.5.4 HTTP请求方法
  • 3.5.5 HTTP状态码
  • 3.5.6 HTTP首部字段
  • 3.5.7 HTTP的优势与问题
  • 3.6 本章小结
  • 第4章 CoAP快速入门
  • 4.1 本章主要内容
  • 4.2 Copper插件入门
  • 4.2.1 Copper插件安装
  • 4.2.2 Copper插件入门示例
  • 4.3 Arduino CoAP服务器实现
  • 4.3.1 获取示例
  • 4.3.2 示例说明
  • 4.3.3 动手测试
  • 4.3.4 着手分析
  • 4.4 本章小结
  • 第5章 CoAP核心
  • 5.1 本章主要内容
  • 5.2 CoAP首部
  • 5.2.1 版本编号Ver
  • 5.2.2 报文类型T
  • 5.2.3 标签长度指示TKL
  • 5.2.4 准则Code
  • 5.2.5 报文序号Message ID
  • 5.2.6 标签Token
  • 5.2.7 选项Options
  • 5.2.8 分隔符0xFF
  • 5.2.9 负载Payload
  • 5.3 CoAP工作模式
  • 5.3.1 逻辑分层结构
  • 5.3.2 报文类型
  • 5.3.3 请求/响应模式
  • 5.4 CoAP重传机制
  • 5.4.1 CoAP重传情况分析
  • 5.4.2 传输参数说明
  • 5.4.3 最大传输耗时(MAX_TRANSMIT_SPAN)
  • 5.4.4 最大等待时间(MAX_TRANSMIT_WAIT)
  • 5.5 CoAP方法
  • 5.5.1 GET
  • 5.5.2 POST
  • 5.5.3 PUT
  • 5.5.4 DELETE
  • 5.6 CoAP响应码
  • 5.6.1 正确响应
  • 5.6.2 客户端错误
  • 5.6.3 服务器错误
  • 5.7 CoAP选项
  • 5.7.1 选项格式
  • 5.7.2 URI相关选项
  • 5.7.3 Content-Format选项
  • 5.7.4 Accept选项
  • 5.7.5 Etag选项
  • 5.7.6 If-Match选项
  • 5.7.7 If-None-Match选项
  • 5.7.8 选项示例
  • 5.8 CoAP媒体类型
  • 5.8.1 link-format类型
  • 5.8.2 文本与二进制类型
  • 5.8.3 JSON类型
  • 5.9 本章小结
  • 第6章 CoAP扩展
  • 6.1 本章主要内容
  • 6.2 CoAP资源描述
  • 6.2.1 CoAP资源描述原理
  • 6.2.2 CoAP资源描述详解
  • 6.3 CoAP观察者模式
  • 6.3.1 观察者模式原理
  • 6.3.2 CoAP观察选项
  • 6.3.3 观察者模式示例
  • 6.4 本章小结
  • 第7章 CoAP软件实现
  • 7.1 本章主要内容
  • 7.2 libcoap
  • 7.2.1 libcoap安装
  • 7.2.2 libcoap使用详解
  • 7.2.3 libcoap入门示例
  • 7.3 aiocoap
  • 7.3.1 aiocoap安装
  • 7.3.2 aiocoap入门示例
  • 7.3.3 aiocoap块传输示例
  • 7.3.4 aiocoap树莓派GPIO示例
  • 7.4 node-coap
  • 7.4.1 Node.js安装
  • 7.4.2 node-coap入门示例
  • 7.4.3 node-coap媒体类型示例
  • 7.5 Californium
  • 7.5.1 准备工作
  • 7.5.2 Californium入门示例
  • 7.6 本章小结
  • 第8章 CoAP调试工具
  • 8.1 本章主要内容
  • 8.2 Copper调试工具
  • 8.2.1 Copper地址栏
  • 8.2.2 Copper工具栏
  • 8.2.3 Copper响应首部
  • 8.2.4 Copper负载内容
  • 8.2.5 Copper请求选项
  • 8.2.6 Copper使用示例
  • 8.3 Wireshark
  • 8.3.1 Wireshark安装
  • 8.3.2 Wireshark使用
  • 8.3.3 Wireshark示例
  • 8.4 本章小结
  • 第9章 微型物联网系统——服务器部分
  • 9.1 本章主要内容
  • 9.2 假想需求
  • 9.3 原型设计
  • 9.3.1 系统结构说明
  • 9.3.2 系统流程设计
  • 9.3.3 网页原型设计
  • 9.4 详细设计
  • 9.4.1 技术选型说明
  • 9.4.2 数据库设计
  • 9.4.3 CoAP API设计
  • 9.4.4 HTTP API设计
  • 9.5 具体实现
  • 9.5.1 数据库实现
  • 9.5.2 CoAP路由实现
  • 9.5.3 Web前端实现
  • 9.5.4 Web后端实现
  • 9.6 综合测试
  • 9.6.1 启动微型物联网系统
  • 9.6.2 增加模拟数据
  • 9.6.3 访问默认设备
  • 9.6.4 使用分页功能
  • 9.6.5 访问其他设备
  • 9.7 本章小结
  • 第10章 微型物联网系统——设备部分
  • 10.1 本章主要内容
  • 10.2 设备与网络结构说明
  • 10.2.1 设备说明
  • 10.2.2 网络结构说明
  • 10.3 Contiki入门
  • 10.3.1 Contiki初步
  • 10.3.2 native入门示例
  • 10.3.3 安装交叉工具链
  • 10.3.4 SensorTag入门示例
  • 10.4 搭建边界路由
  • 10.4.1 创建Slip-Radio
  • 10.4.2 创建Native-Border-Router
  • 10.5 增加NAT64
  • 10.5.1 NAT64简介
  • 10.5.2 安装Jool
  • 10.5.3 UDP NAT64示例
  • 10.6 CoAP Client Sensor
  • 10.6.1 加入网络并启动任务
  • 10.6.2 获取传感器数据
  • 10.6.3 传递传感器数据
  • 10.7 综合测试
  • 10.7.1 启动CoAP服务器
  • 10.7.2 启动边界路由和NAT64
  • 10.7.3 生成并下载固件
  • 10.7.4 查看运行结果
  • 10.8 本章小结
  • 参考文献
展开全部