1、课程导学与准备工作:课程目标、学习路径、硬件清单与软件环境概览
大家好,欢迎来到《ESP32 ThingsBoard私有化部署与设备接入实战》这门课。
我是你们这门课的主讲人。做了十几年嵌入式开发,从最早的8位单片机一路折腾到现在的ESP32,踩过的坑、焊过的板子,说实话,真不少。今天咱们要聊的ThingsBoard,是我在几个物联网项目里反复验证过的平台。我个人觉得,它确实是目前开源IoT平台里,对开发者最友好、文档最完善的一个。
嗯,在正式开始之前,我想先跟你聊聊这门课到底要学什么、怎么学,以及你得准备哪些家伙事儿。
课程目标:学完你能干什么?
说白了,这门课的目标就一个:让你亲手把一套完整的物联网系统跑起来。
不是那种只讲理论、光看PPT的课。我希望你学完之后,能自己从零开始,在服务器上部署一套ThingsBoard,然后让手里的ESP32开发板连上去,把传感器数据发到平台,再在仪表盘上看到实时曲线。整个过程,你都能自己搞定。
具体来说,你会掌握这几项核心能力:
- 私有化部署:在Linux服务器上,用Docker把ThingsBoard跑起来。我建议你第一次用虚拟机练手,别直接上生产环境,万一搞崩了,你想想看,多闹心。
- 设备接入:让ESP32通过MQTT协议,把温湿度、光照这些数据发到ThingsBoard。我记得第一次调通MQTT时,看到数据在平台上跳动,那种成就感,比打游戏通关爽多了。
- 数据可视化:在ThingsBoard里创建仪表盘,把数据变成图表、仪表盘、开关控件。你甚至可以做个手机端看板,随时查看家里的环境数据。
- 规则链与告警:配置简单的规则链,实现阈值告警。比如温度超过35度,自动发一封邮件或者推送到你的微信。
一句话总结:这门课不讲虚的,全是实战。你跟着我一步步做,最后能交付一个完整的、可演示的物联网项目。
学习路径:我建议你这样走
这门课一共30个章节,我把它分成了四个阶段。你按这个节奏来,会轻松很多。
- 第一阶段(第1-5章):环境搭建与基础认知。 这一阶段,咱们先把硬件和软件环境准备好。别急着写代码,先把ThingsBoard跑起来,把ESP32的固件烧录环境配好。磨刀不误砍柴工,这个道理你懂的。
- 第二阶段(第6-15章):核心功能实战。 这是最硬核的部分。你会学习如何创建设备、配置MQTT连接、编写ESP32代码、发送数据、创建仪表盘。每一章都是一个独立的小实验,你可以随时停下来验证。
- 第三阶段(第16-25章):进阶功能与优化。 当基础功能跑通后,咱们开始玩点高级的。比如规则链的深度使用、告警通知、OTA远程升级、数据持久化。我在项目中遇到过,设备多了以后,数据量一上来,平台响应变慢,这时候就需要优化了。
- 第四阶段(第26-30章):项目实战与总结。 最后,咱们把前面学的东西串起来,做一个完整的智能环境监测系统。从硬件组装、代码编写、平台配置到最终演示,全流程走一遍。
我的建议: 每一章学完后,别急着往下翻。花10分钟把代码跑一遍,哪怕只是改一个参数,也比光看强十倍。我曾经带过一个学员,他每章都自己动手改点东西,最后结课时,他做出来的东西比我的示例还漂亮。
硬件清单:你需要准备这些
工欲善其事,必先利其器。咱们这门课需要的硬件不多,而且都很便宜。我列个清单,你照着买就行。
| 硬件名称 | 数量 | 说明 | 预估价格(元) |
|---|---|---|---|
| ESP32开发板 | 1块 | 推荐ESP32-DevKitC或NodeMCU-32S,带USB接口即可 | 25-40 |
| DHT11/DHT22温湿度传感器 | 1个 | DHT22精度更高,但DHT11也够用。我建议买DHT22,差不了几块钱 | 5-15 |
| 光照传感器(BH1750) | 1个 | I2C接口,接线简单,数据很稳定 | 8-12 |
| 面包板+杜邦线 | 1套 | 用于搭建电路,不用焊接,方便调试 | 10-20 |
| Micro USB数据线 | 1根 | 注意要能传输数据,有些充电线只能充电不能传数据 | 5-10 |
| LED灯+电阻(220Ω) | 各2个 | 用于输出控制实验,比如远程开关灯 | 2-5 |
避坑指南: 我曾经买过一批便宜的ESP32,结果发现USB转串口芯片是CH340的冒牌货,死活连不上电脑。所以,我建议你买的时候,认准官方或信誉好的店铺。另外,杜邦线最好买公对母和公对公各一套,别问我是怎么知道的……
软件环境概览:你的工具箱
硬件准备好了,软件环境也得配齐。别担心,这些东西都是免费的,而且安装过程我会在后续章节里手把手带你走一遍。
- 操作系统: 建议Windows 10/11,或者Ubuntu 20.04/22.04。我个人习惯用Windows做开发,用Ubuntu做服务器部署。
- Arduino IDE 或 VS Code + PlatformIO: 用于编写和烧录ESP32代码。我推荐VS Code + PlatformIO,功能更强大,调试更方便。但如果你刚入门,用Arduino IDE也行,简单直接。
- Docker Desktop: 用于在本地或服务器上部署ThingsBoard。Docker能帮你省去很多环境配置的麻烦。你想想看,如果没有Docker,你得手动装Java、PostgreSQL、Redis……光依赖就能搞到你崩溃。
- MQTT客户端(如MQTTX): 用于调试MQTT连接。在ESP32还没写好代码时,你可以先用它模拟设备发送数据,验证ThingsBoard是否正常工作。
- SSH客户端(如Putty或Termius): 用于远程连接你的Linux服务器。如果你用的是云服务器,这个工具必不可少。
一个小技巧: 在正式开始前,我建议你先在电脑上装好Chrome或Edge浏览器。ThingsBoard的仪表盘在Chromium内核的浏览器上表现最好。我曾经用Firefox打开,有些控件显示不正常,排查了半天才发现是浏览器的问题。
好了,以上就是咱们第一节课的全部内容。硬件清单你可以截图保存,软件环境先有个印象就行,后面每一章我都会详细讲解安装和配置。
下一章,咱们就开始动手——用Docker把ThingsBoard私有化部署起来。到时候见!
公众号:蓝海资料掘金营,微信deep3321