- 科学出版社
- 9787030717917
- 1版
- 438986
- 46258918-5
- 16开
- 2022-03
- 282
- 工学
- 计算机科学与技术
- 计算机类
- 本科
内容简介
本书注重应用,强调动手实践,以案例覆盖主流技术要点,能够帮助读者快速地了解物联网工程主要的通信协议,以及系统如何集成。本书前8章引导读者如何使用物联网通信协议第三方网络资源,如百度API(翻译、二维码验证码、语音、人脸识别等,读者需要自行申请账号),其中第5章的案例“物联网饮水机”的内容涉及方方面面,理解起来有一定的难度,可以等学完第14章后回头再看;第9章频谱分析是为第10章的语音应用做铺垫的;第10-13章侧重项目训练;第14章是综合应用,涉及Spingoot、HTTP、SSM、Vue、传感器。本书既可以作为各类学校计算机科学与技术、软件工程、物联网工程相关专业的教材,也可以作为物联网领域从业人员的自学参考用书。
目录
第1章 HTTP001
1.1 HTTP介绍001
1.1.1 HTTP概述001
1.1.2 HTTP的工作原理002
1.2 HTTP详情004
1.2.1 HTTP请求方法004
1.2.2 HTTP状态码005
1.2.3 U
L006
1.2.4 HTTP请求格式(请求协议)007
1.2.5 HTTP响应格式(响应协议)007
1.3 HTTP在IDEA中的实现008
1.3.1 创建一个Maven项目008
1.3.2 配置Maven008
1.3.3 代码实现009
1.4 HTTP项目运行效果012
第2章 CoAP014
2.1 CoAP介绍014
2.1.1 CoAP的基本概念014
2.1.2 CoAP模型015
2.1.3 CoAP的特点015
2.1.4 CoAP的安全性015
2.2 CoAP详情016
2.2.1 CoAP的4种消息类型016
2.2.2 CoAP的消息格式016
2.2.3 CoAP的请求码、响应码和U
L017
2.3 CoAP的Java实现017
2.3.1 创建一个Maven项目018
2.3.2 配置Maven018
2.3.3 代码实现019
2.4 几种物联网协议对比023
第3章 Mod
us通信协议025
3.1 Mod
us协议简介025
3.1.1 在Mod
us网络上转输025
3.1.2 查询-回应周期026
3.2 两种串行传输模式026
3.2.1 ASCII模式027
3.2.2
TU模式027
3.2.3 ASCII模式与
TU模式对比028
3.3 Mod
us消息帧028
3.3.1 ASCII帧029
3.3.2
TU帧029
3.3.3 地址域030
3.3.4 功能域030
3.3.5 数据域031
3.3.6 错误检测域031
3.3.7 字符的连续传输034
3.3.8 T1.5与T3.5时间间隔034
3.4 数据帧交互过程035
3.5 编程举例037
第4章 We
socket及Sp
ing
oot集成041
4.1 Socket发展历程041
4.1.1 Winsock041
4.1.2 We
Socket简介056
4.1.3 We
Socket通信模型056
4.2 常用的We
Socket技术057
4.3 Sp
ing
oot整合We
Socket059
4.3.1 Sp
ing官网在线创建059
4.3.2 使用IDEA软件创建Sp
ing
oot项目060
4.4 具体实现过程062
4.4.1 代码部分062
4.4.2 运行结果070
第5章 MQTT及物联网饮水机设计072
5.1 MQTT介绍072
5.2 MQTT控制报文074
5.3 MQTT模拟076
5.4 MQTT应用案例:物联网饮水机078
5.4.1 系统架构079
5.4.2 硬件设计080
5.4.3 软件设计081
5.4.4 运行效果092
第6章 FTP及编程实现096
6.1 FTP简介096
6.2 FTP的基本工作原理096
6.2.1 FTP数据表示097
6.2.2 FTP命令和应答097
6.3 FTP客户端(Python版ftpli
)098
6.3.1 类介绍099
6.3.2 FTP对象099
6.3.3 FTP_TLS对象104
6.3.4 FTP客户端及实现(Python版)105
6.4 FTP服务器端及实现(Python版)107
6.4.1 准备工作107
6.4.2 ftpse
ve
实现代码107
6.4.3 ftpse
ve
工程(Python版)109
6.4.4 权限说明112
第7章 百度API应用——翻译器113
7.1 小小翻译器功能介绍113
7.2 程序设计的思路113
7.3 关键技术114
7.3.1 u
lli
库简介114
7.3.2 u
lli
库的基本使用114
7.4 程序设计步骤120
7.4.1 设计界面120
7.4.2 JSON介绍121
7.4.3 百度翻译开放平台API123
第8章 生成二维码和验证码131
8.1 二维码介绍131
8.2 生成二维码132
8.2.1 q
code库的使用132
8.2.2 PIL库的使用136
8.2.3 生成带图标的二维码140
8.3 生成验证码142
8.3.1 使用PIL库生成验证码142
8.3.2 使用captcha库生成验证码144
第9章 频谱分析146
9.1 傅里叶变换介绍146
9.2 傅里叶变换原理146
9.3 傅里叶算法分析及其实现152
第10章 语音合成与识别161
10.1 语音识别概述161
10.1.1 预处理161
10.1.2 分帧163
10.1.3 加窗164
10.1.4 傅里叶变换164
10.1.5 声学特征提取165
10.1.6 模式匹配168
10.2 语音合成172
10.2.1 申请开发者模式172
10.2.2 下载在线合成Python-SDK172
10.2.3 界面设置173
10.2.4 新建ApiSpeech173
10.2.5 在线语音合成174
10.3 语音识别176
10.3.1 语音识别——API177
10.3.2 录音环境177
10.3.3 在线识别音频文件178
第11章 人脸识别应用181
11.1 人脸识别技术简介181
11.2 人脸识别算法原理简介182
11.3 人脸识别技术实现182
11.3.1 环境搭建(Windows)183
11.3.2 使用实例184
11.4 虹软人脸识别187
11.4.1 原理简述187
11.4.2 人脸识别使用实例188
第12章 网络编程案例——TCP的聊天程序194
12.1 基于TCP的在线聊天程序简介194
12.2 关键技术195
12.2.1 互联网TCP
IP195
12.2.2 IP和端口195
12.2.3 TCP和UDP196
12.2.4 Socket196
12.2.5 多线程编程202
12.3 在线聊天程序的设计204
12.3.1 在线聊天程序的服务器端设计204
12.3.2 在线聊天程序的客户端设计207
第13章 基于UW
的室内定位系统212
13.1 定位的概念214
13.1.1 UW
技术原理214
13.1.2 UW
-TDOA定位原理215
13.1.3 定位类型216
13.1.4 UW
-TDOA定位方法216
13.2 系统架构216
13.2.1 UW
定位系统的组成216
13.2.2 UW
-TDOA定位系统的架构217
13.3 定位系统设计218
13.3.1 UW
技术说明218
13.3.2 定位工作原理219
13.3.3 测距原理219
13.3.4 定位算法221
13.4 硬件实现222
13.4.1 设计要求222
13.4.2 电路图223
13.4.3 关键IC功能框图226
13.4.4 接口226
13.4.5 上电复位228
13.4.6 睡眠和深度睡眠228
13.5 软件实现229
13.5.1 下位机软件实现229
13.5.2 上位机软件实现231
第14章 综合案例——环境质量检测平台234
14.1 项目背景234
14.2 项目需求235
14.3 技术选型236
14.4 系统设计及实现236
14.4.1 页面设计236
14.4.2 数据库设计241
14.4.3 代码生成244
14.4.4 接口设计249
14.4.5 主要功能实现259
14.4.6 Socket告警推送272
14.4.7 Swagge
接口文档与测试276
参考文献282
1.1 HTTP介绍001
1.1.1 HTTP概述001
1.1.2 HTTP的工作原理002
1.2 HTTP详情004
1.2.1 HTTP请求方法004
1.2.2 HTTP状态码005
1.2.3 U
L006
1.2.4 HTTP请求格式(请求协议)007
1.2.5 HTTP响应格式(响应协议)007
1.3 HTTP在IDEA中的实现008
1.3.1 创建一个Maven项目008
1.3.2 配置Maven008
1.3.3 代码实现009
1.4 HTTP项目运行效果012
第2章 CoAP014
2.1 CoAP介绍014
2.1.1 CoAP的基本概念014
2.1.2 CoAP模型015
2.1.3 CoAP的特点015
2.1.4 CoAP的安全性015
2.2 CoAP详情016
2.2.1 CoAP的4种消息类型016
2.2.2 CoAP的消息格式016
2.2.3 CoAP的请求码、响应码和U
L017
2.3 CoAP的Java实现017
2.3.1 创建一个Maven项目018
2.3.2 配置Maven018
2.3.3 代码实现019
2.4 几种物联网协议对比023
第3章 Mod
us通信协议025
3.1 Mod
us协议简介025
3.1.1 在Mod
us网络上转输025
3.1.2 查询-回应周期026
3.2 两种串行传输模式026
3.2.1 ASCII模式027
3.2.2
TU模式027
3.2.3 ASCII模式与
TU模式对比028
3.3 Mod
us消息帧028
3.3.1 ASCII帧029
3.3.2
TU帧029
3.3.3 地址域030
3.3.4 功能域030
3.3.5 数据域031
3.3.6 错误检测域031
3.3.7 字符的连续传输034
3.3.8 T1.5与T3.5时间间隔034
3.4 数据帧交互过程035
3.5 编程举例037
第4章 We
socket及Sp
ing
oot集成041
4.1 Socket发展历程041
4.1.1 Winsock041
4.1.2 We
Socket简介056
4.1.3 We
Socket通信模型056
4.2 常用的We
Socket技术057
4.3 Sp
ing
oot整合We
Socket059
4.3.1 Sp
ing官网在线创建059
4.3.2 使用IDEA软件创建Sp
ing
oot项目060
4.4 具体实现过程062
4.4.1 代码部分062
4.4.2 运行结果070
第5章 MQTT及物联网饮水机设计072
5.1 MQTT介绍072
5.2 MQTT控制报文074
5.3 MQTT模拟076
5.4 MQTT应用案例:物联网饮水机078
5.4.1 系统架构079
5.4.2 硬件设计080
5.4.3 软件设计081
5.4.4 运行效果092
第6章 FTP及编程实现096
6.1 FTP简介096
6.2 FTP的基本工作原理096
6.2.1 FTP数据表示097
6.2.2 FTP命令和应答097
6.3 FTP客户端(Python版ftpli
)098
6.3.1 类介绍099
6.3.2 FTP对象099
6.3.3 FTP_TLS对象104
6.3.4 FTP客户端及实现(Python版)105
6.4 FTP服务器端及实现(Python版)107
6.4.1 准备工作107
6.4.2 ftpse
ve
实现代码107
6.4.3 ftpse
ve
工程(Python版)109
6.4.4 权限说明112
第7章 百度API应用——翻译器113
7.1 小小翻译器功能介绍113
7.2 程序设计的思路113
7.3 关键技术114
7.3.1 u
lli
库简介114
7.3.2 u
lli
库的基本使用114
7.4 程序设计步骤120
7.4.1 设计界面120
7.4.2 JSON介绍121
7.4.3 百度翻译开放平台API123
第8章 生成二维码和验证码131
8.1 二维码介绍131
8.2 生成二维码132
8.2.1 q
code库的使用132
8.2.2 PIL库的使用136
8.2.3 生成带图标的二维码140
8.3 生成验证码142
8.3.1 使用PIL库生成验证码142
8.3.2 使用captcha库生成验证码144
第9章 频谱分析146
9.1 傅里叶变换介绍146
9.2 傅里叶变换原理146
9.3 傅里叶算法分析及其实现152
第10章 语音合成与识别161
10.1 语音识别概述161
10.1.1 预处理161
10.1.2 分帧163
10.1.3 加窗164
10.1.4 傅里叶变换164
10.1.5 声学特征提取165
10.1.6 模式匹配168
10.2 语音合成172
10.2.1 申请开发者模式172
10.2.2 下载在线合成Python-SDK172
10.2.3 界面设置173
10.2.4 新建ApiSpeech173
10.2.5 在线语音合成174
10.3 语音识别176
10.3.1 语音识别——API177
10.3.2 录音环境177
10.3.3 在线识别音频文件178
第11章 人脸识别应用181
11.1 人脸识别技术简介181
11.2 人脸识别算法原理简介182
11.3 人脸识别技术实现182
11.3.1 环境搭建(Windows)183
11.3.2 使用实例184
11.4 虹软人脸识别187
11.4.1 原理简述187
11.4.2 人脸识别使用实例188
第12章 网络编程案例——TCP的聊天程序194
12.1 基于TCP的在线聊天程序简介194
12.2 关键技术195
12.2.1 互联网TCP
IP195
12.2.2 IP和端口195
12.2.3 TCP和UDP196
12.2.4 Socket196
12.2.5 多线程编程202
12.3 在线聊天程序的设计204
12.3.1 在线聊天程序的服务器端设计204
12.3.2 在线聊天程序的客户端设计207
第13章 基于UW
的室内定位系统212
13.1 定位的概念214
13.1.1 UW
技术原理214
13.1.2 UW
-TDOA定位原理215
13.1.3 定位类型216
13.1.4 UW
-TDOA定位方法216
13.2 系统架构216
13.2.1 UW
定位系统的组成216
13.2.2 UW
-TDOA定位系统的架构217
13.3 定位系统设计218
13.3.1 UW
技术说明218
13.3.2 定位工作原理219
13.3.3 测距原理219
13.3.4 定位算法221
13.4 硬件实现222
13.4.1 设计要求222
13.4.2 电路图223
13.4.3 关键IC功能框图226
13.4.4 接口226
13.4.5 上电复位228
13.4.6 睡眠和深度睡眠228
13.5 软件实现229
13.5.1 下位机软件实现229
13.5.2 上位机软件实现231
第14章 综合案例——环境质量检测平台234
14.1 项目背景234
14.2 项目需求235
14.3 技术选型236
14.4 系统设计及实现236
14.4.1 页面设计236
14.4.2 数据库设计241
14.4.3 代码生成244
14.4.4 接口设计249
14.4.5 主要功能实现259
14.4.6 Socket告警推送272
14.4.7 Swagge
接口文档与测试276
参考文献282