|
关于我们
新书资讯 新书推荐 |
物联网技术开发实战——ESP32+Arduino/MicroPython 读者对象:本书适合作为高等院校物联网工程、电子信息工程、自动化等专业的教材,也适合作为物联网爱好者和工程师的自学参考书。通过本教材的学习,读者将能够构建自己的物联网项目,并为未来的物联网技术发展做好准备。
本书以 ESP32 微控制器为核心,结合 Arduino 和 MicroPython 两种流行的开发环境,系统介绍物联网技术的基础知识、关键技术及实际应用。内容涵盖物联网的基本概念、ESP32 硬件特性、开发环境搭建、传感器应用、通信协议(如 Wi-Fi、MQTT、WebSocket)以及数据可视化等多个方面,通过理论讲解与实验操作相结合的方式,帮助读者快速入门物联网开发,掌握从硬件连接到软件编程、从传感器数据采集到云端交互的完整开发流程。书中还介绍了基于 Node-RED、微信小程序等现代工具的物联网应用开发,帮助读者紧跟技术发展趋势,构建功能丰富的物联网系统。本书适合高等院校计算机类、电子信息类或通信类专业学生以及对物联网技术感兴趣的初学者和开发者阅读。
蔡建平,男,浙大城市学院副教授。计算机科学与技术-首批国家一流本科专业建设点,教育部,执行专业负责人,主持,智能小车迷宫寻路虚拟实验(虚拟仿真实验教学项目)、浙江省十四五重点规划教材教材《物联网技术与应用》、浙江省十四五重点规划教材教材《计算机系统原理实验》、计算机科学与技术-拔尖创新班建设。
第 1 章 物联网概述与 ESP32 入门···················································································.1
1.1 物联网概述·············································································································.1 1.1.1 物联网的基本概念···························································································.1 1.1.2 物联网的应用场景···························································································.1 1.1.3 物联网的关键技术···························································································.2 1.2 ESP32 硬件简介·······································································································.2 1.2.1 ESP32 的基本架构···························································································.3 1.2.2 ESP32 的核心功能···························································································.4 1.2.3 常见开发板介绍······························································································.4 1.3 ESP32 开发环境准备·································································································.5 1.4 ESP32 的 Arduino IDE 编程环境准备·············································································.6 1.4.1 安装 Arduino IDE ····························································································.6 1.4.2 配置 ESP32 开发板··························································································.8 1.4.3 测试开发环境·······························································································.10 1.4.4 常见问题及解决方法······················································································.10 1.5 ESP32 的 MicroPython 编程环境准备···········································································.11 1.5.1 硬件准备·····································································································.11 1.5.2 软件准备·····································································································.11 1.5.3 安装 Thonny IDE···························································································.12 1.5.4 下载 MicroPython 固件 ···················································································.12 1.5.5 烧录 MicroPython 固件到 ESP32 ·······································································.14 1.5.6 测试开发环境·······························································································.16 1.5.7 常见问题及解决方法······················································································.18 1.6 本章小结··············································································································.18 第 2 章 ESP32 基础应用································································································.19 2.1 GPIO 控制与 PWM ·································································································.19 2.2 传感器应用开发·····································································································.20 2.2.1 光敏电阻·····································································································.21 2.2.2 温湿度传感器·······························································································.24 2.2.3 超声波传感器·······························································································.27 2.2.4 陀螺仪与加速度传感器···················································································.31 2.3 执行器应用开发·····································································································.49 ·V· 物联网技术开发实战——ESP32+Arduino/MicroPython 2.3.1 PWM 呼吸灯································································································.49 2.3.2 PWM 舵机···································································································.52 2.3.3 OLED 显示屏·······························································································.56 2.4 本章小结··············································································································.78 第 3 章 ESP32 网络通信实践·························································································.79 3.1 网络通信基础········································································································.79 3.1.1 网络通信概述·······························································································.79 3.1.2 网络通信的基本原理······················································································.80 3.1.3 网络通信的关键协议······················································································.80 3.1.4 网络通信的分层结构······················································································.81 3.1.5 网络通信的挑战与发展···················································································.82 3.2 ESP32 的 Wi-Fi 通信 ·······························································································.82 3.2.1 ESP32 的 STA 模式(客户端模式) ··································································.82 3.2.2 ESP32 的 AP 模式(接入点模式) ····································································.83 3.2.3 ESP32 的 AP+STA 模式(同时工作模式)··························································.83 3.2.4 ESP32 的 Wi-Fi 通信实验示例··········································································.83 3.3 ESP32 的蓝牙通信··································································································.90 3.3.1 经典蓝牙·····································································································.90 3.3.2 低功耗蓝牙··································································································.91 3.3.3 蓝牙双模·····································································································.92 3.3.4 蓝牙的工作模式····························································································.92 3.3.5 ESP32 的蓝牙通信实验示例·············································································.92 3.4 ESP32 的 TCP 协议通信···························································································.99 3.4.1 TCP 协议基础 ······························································································.99 3.4.2 TCP 协议的工作原理 ·····················································································.99 3.4.3 TCP 协议的特性 ··························································································.101 3.4.4 TCP 协议与 UDP 协议的比较··········································································.101 3.4.5 TCP 协议中的常见问题及解决 ········································································.101 3.4.6 ESP32 的 TCP 协议通信实验示例·····································································.102 3.5 ESP32 的 HTTP 协议实践························································································.110 3.5.1 HTTP 协议基础 ···························································································.110 3.5.2 HTTP 协议的工作原理 ··················································································.110 3.5.3 HTTP 与 HTTPS 的区别·················································································.111 3.5.4 HTTP 响应状态码及其含义 ············································································.112 3.5.5 ESP32 的 HTTP 协议实验示例·········································································.113 3.6 本章小结·············································································································.128 第 4 章 物联网协议与 MQTT·························································································.129 4.1 物联网协议··········································································································.129 ·VI· 目 录 4.1.1 物联网协议的分类························································································.129 4.1.2 常见的物联网协议························································································.129 4.2 MQTT 协议··········································································································.130 4.2.1 MQTT 协议的特点 ·······················································································.130 4.2.2 MQTT 协议的组成部分 ·················································································.130 4.2.3 MQTT 协议的 QoS 级别 ················································································.131 4.2.4 MQTT 消息传递流程 ····················································································.131 4.2.5 MQTT 主题组件 ··························································································.132 4.2.6 MQTT 消息通配符 ·······················································································.132 4.2.7 MQTT 中间件 ·····························································································.133 4.3 MQTT 消息发布与订阅···························································································.134 4.3.1 安装 MQTT 客户端与连接公共服务器·······························································.134 4.3.2 安装自己的 MQTT 中间件··············································································.136 4.3.3 使用 MQTT 通配符实现消息订阅与发布····························································.138 4.3.4 共享单车平台的 MQTT 消息主题设计示例·························································.138 4.4 MQTT 消息抓包····································································································.141 4.4.1 抓包工具····································································································.141 4.4.2 MQTT 抓包步骤 ··························································································.142 4.4.3 抓包分析示例······························································································.143 4.5 WebSocket 与 MQTT 实时通信 ·················································································.146 4.5.1 WebSocket 协议的特点··················································································.146 4.5.2 WebSocket 与 MQTT 的结合···········································································.146 4.6 本章小结·············································································································.147 第 5 章 物联网多端应用开发·························································································.148 5.1 背景与需求··········································································································.148 5.2 微信小程序开发····································································································.149 5.2.1 微信小程序概述···························································································.149 5.2.2 微信小程序基础···························································································.152 5.2.3 物联网微信小程序示例··················································································.156 5.3 Node-RED 应用开发·······························································································.161 5.3.1 Node-RED 简介 ···························································································.161 5.3.2 Node-RED 的安装运行 ··················································································.162 5.3.3 Node-RED 基础入门 ·····················································································.166 5.3.4 Node-RED 的 MQTT 发布订阅客户端设计 ·························································.167 5.3.5 Node-RED 可视化 ························································································.168 5.4 WebSocket 实时通信 ······························································································.175 5.4.1 WebSocket 基础知识·····················································································.175 5.4.2 WebSocket 在物联网中的应用·········································································.177 5.4.3 实现 WebSocket 连接与消息传递 ·····································································.178 ·VII· 物联网技术开发实战——ESP32+Arduino/MicroPython 5.4.4 WebSocket 连接 MQTT 服务示例·····································································.179 5.5 本章小结·············································································································.186 第 6 章 实战项目与案例开发·························································································.187 6.1 温湿度环境监测系统······························································································.187 6.1.1 项目概述····································································································.187 6.1.2 系统构成····································································································.187 6.1.3 硬件介绍····································································································.188 6.1.4 技术介绍····································································································.189 6.1.5 方案实现····································································································.190 6.2 智能路灯系统·······································································································.200 6.2.1 项目概述····································································································.200 6.2.2 系统构成····································································································.200 6.2.3 硬件介绍····································································································.201 6.2.4 技术介绍····································································································.202 6.2.5 方案实现····································································································.203 6.3 智能拐杖系统·······································································································.219 6.3.1 项目概述····································································································.219 6.3.2 硬件设计与组件说明·····················································································.220 6.3.3 功能实现逻辑······························································································.220 6.3.4 数据库表设计与建表脚本···············································································.221 6.3.5 系统功能演示与交互流程···············································································.223 6.3.6 各端部分核心功能代码实现············································································.227 6.4 本章小结·············································································································.234 第 7 章 实验 ·················································································································.236 实验一 ESP32 基础实验 实验报告 ·················································································.236 实验二 OLED 显示实验 实验报告 ·················································································.237 实验三 MPU6050 加速度传感器实验 实验报告·································································.238 实验四 ESP32 Wi-Fi 基础实验 实验报告 ·········································································.239 实验五 ESP32 HTTP 实验 实验报告···············································································.240 实验六 ESP32 一键配网实验 实验报告 ···········································································.241 实验七 MQTT 协议基础实验 实验报告···········································································.242 实验八 MQTT 规则引擎与数据存储实验 实验报告····························································.243 实验九 MQTT 客户端设计实验 实验报告········································································.245 实验十 WebSocket 连接 MQTT 服务实验 实验报告 ···························································.246 实验十一 IoT 微信小程序实验 实验报告·········································································.247 实验十二 物联网数据可视化实验 实验报告 ·····································································.248 实验十三 MQTT 协议分析实验 实验报告········································································.249
你还可能感兴趣
我要评论
|

新书资讯





