作品制作
ESP32联网小作品:数据上传失败的排查顺序
用ESP32做物联网作品,最常遇到的问题是连不上网、上传失败、运行一段时间后断线。本文按照从硬件到网络到程序的顺序,整理数据上传失败的排查步骤,以及提高联网稳定性的做法。
文章目录收起
ESP32自带Wi-Fi,很适合做能联网的作品:把温湿度数据上传到网页,用手机远程控制浇花,超过阈值时发送提醒。但联网作品的问题也更多,连不上网、上传失败、运行几小时后掉线都很常见。遇到问题时,按顺序排查能节省很多时间。
第一层:供电和硬件
联网时ESP32的电流会突然增大,供电不足会导致反复重启或连接失败。
- 用串口监视器查看,如果看到反复重启的信息,先怀疑供电。
- 换一根质量好的数据线,或使用独立的稳定电源。
- 检查开发板天线附近有没有金属遮挡,放进金属外壳里信号会明显变弱。
第二层:Wi-Fi连接
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 一直连不上 | 路由器名称或密码写错 | 在串口打印连接状态,核对名称和密码 |
| 连不上家里5G频段的网络 | ESP32常见型号只支持2.4G | 连接路由器的2.4G网络 |
| 学校网络连不上 | 网络需要网页登录认证 | 改用手机热点 |
| 时断时续 | 信号弱 | 让作品靠近路由器,打印信号强度 |
先用一个最简单的示例程序只测试连网,确认能连上,再把联网代码加进自己的项目。
第三层:服务器和接口
能连上Wi-Fi但上传总是失败,问题可能在接收数据的一端:
- 接收数据的网址、端口、密钥是否填写正确。
- 使用的物联网平台是否有免费额度限制,超过次数会被拒绝。
- 上传频率是否太高,有的平台限制每分钟的请求次数。
可以先用电脑上的接口测试工具发送一条同样格式的数据,确认服务器能正常接收,再回头检查ESP32的代码。
第四层:程序逻辑
- 每次上传后打印服务器返回的结果,失败时能看到错误信息。
- 检查数据格式是否和接口要求一致,例如数字有没有被当作文字发送。
- 程序中的延时是否合理,上传过于频繁会被限制。
提高联网稳定性
即使排除了以上问题,联网作品长时间运行仍可能断线。可以在程序中加入:
- 断线重连:定时检查连接状态,断开后自动重新连接。
- 本地缓存:上传失败时先把数据存在本地,网络恢复后补传。
- 看门狗:程序卡死时自动重启。
- 状态指示:用不同颜色的灯表示“已联网”“上传中”“断线”。
测试联网稳定性
作品完成后,让它连续运行24小时,统计上传成功的次数和失败的次数,计算成功率。把这个测试写进报告,比如“连续运行24小时,计划上传1440次,成功1421次,失败的19次均已自动补传”,能有力说明作品的可靠性。
展示现场的准备
展示现场的网络环境难以预测,建议准备手机热点作为备用网络,并提前把作品的联网设置改成热点的名称和密码,或者在程序中设置多个备选网络。
资料与编写说明
原创方法文章,诺篮Stem编辑部根据项目指导经验整理
资料核验:2026-10-01从阅读,走到自己的项目
咨询项目方向孩子有想法,却不知从哪里开始?
带上兴趣、年级或已有作品,先聊清楚当前最需要解决的问题。