当前位置: 首页 > news >正文

STM32物联网项目---ESP8266微信小程序结合OneNET平台MQTT实现STM32单片机远程智能控制---云平台篇(一)

一、前言

        做项目也有一段时间了,串口通讯协议大部分都做过了,但是网络通讯协议却没有接触过;目前手头也没有什么着急的项目,趁着空闲时间自己淘宝买了ESP8266-01S WIFI模块,尝试写一下MQTT协议,丰富一下自己的项目经验。

欢迎跟随本教程,我们将一步一步地构建起一个智慧型项目,使您的单片机设备能够通过网络与世界互联。整个项目可以概括为以下四个核心阶段,每一个阶段都有一篇文章去详细说明:

1.创建云平台(本篇)

2.烧录AT固件

3.MQTT订阅

4.单片机代码编写

5.微信小程序(下载微信开发者工具即可使用)

二、项目描述

本系列文章项目:利用STM32F103C8T6单片机结合ESP8266-01s WIFI模块和OneNET云平台,构建一个智能监控系统。该系统能够和实时监测温度和光照等环境参数,并将数据上传到微信小程序。不仅如此,您还可以通过小程序下发指令来控制相连硬件,比如远程开关灯光。

在本篇文章中,我们将聚焦于项目的第一步——创建OneNET设备。该文章将详细指导您如何配置和注册您的设备至OneNET平台,确保您的单片机可以成功连接到ESP8266-01s WIFI模块,并建立起与微信小程序的通信桥梁。完成本篇内容后,您将为整个智能监控系统的搭建打下坚实的基础。

项目所需材料清单:
在开始我们的项目之前,请确保您拥有以下所需硬件和软件:

硬件:

1.STM32F103C8T6单片机(或其他STM32单片机平替)
2.ESP8266-01s WIFI模块
软件及服务:

1.OneNET新版MQTT服务
2.ESP8266固件烧入软件
3.STC-ISP单片机烧录软件
4.ESP8266-01s固件
5.串口助手
6.OneNET token计算软件

所有相关材料和软件已经在压缩包中准备好,您可以在文章底部找到下载链接。

 三、OneNET云平台


        OneNET云平台是由中国移动推出的一个开放性的物联网平台。它提供了设备连接、数据存储、设备管理和应用开发等一系列服务,旨在帮助开发者快速搭建和部署物联网应用。

OneNET云平台具有以下特点:

兼容性强:支持包括但不限于2G、3G、4G、NB-IoT、LoRa和WIFI等多种网络接入方式。
设备管理:提供设备注册、认证、连接状态监控、远程配置等设备管理功能。
数据处理:支持数据持久化存储,同时提供数据转发、数据解析、规则引擎等数据处理能力。
安全性:实现设备数据的加密传输,确保通信安全。
应用开发:提供API接口,方便开发者集成至自己的应用或系统之中。


四、MQTT


MQTT是一种轻量级的消息传输协议,专为物联网设备设计,适合在网络环境不太稳定,带宽有限的场景中使用。它基于发布/订阅模式,效率高,开销小,数据包占用带宽极低。

在OneNET平台上使用MQTT进行设备通信时,设备充当MQTT客户端,通过发布(publish)消息到平台,或者订阅(subscribe)平台消息来实现与云端的双向通信。

利用MQTT设备进行数据上传的步骤通常包括:

设备注册:在OneNET平台注册设备,获取设备ID等必要信息。
MQTT连接:设备使用MQTT协议与OneNET建立连接,完成认证。
数据上传:设备发布消息到指定的Topic,将数据上传到云平台。
命令下发及控制:云平台可发布消息给设备,设备订阅对应Topic以接收命令或控制信息。
实时监控:开发者或用户利用平台提供的应用程序接口(API),实现数据监控和设备管理。
OneNET的MQTT服务使得IoT设备能够以一种稳定且高效的方式与云端资源进行交互,使得管理和操作变得更加简单灵活

五、HTTP:


基于请求/响应模式:客户端发起请求,服务器回应请求,没有长期连接状态。
更加通用和普遍:HTTP作为互联网的基础协议,被绝大多数网络应用支持。
连接简单:HTTP的无状态特性使得每次通信简洁明了,但每次交互都需要重新建立连接。
相对较高的功耗和延迟:因为需要频繁的连接建立和断开,对能量消耗和通信延迟有影响。
在物联网应用中,选择MQTT还是HTTP通常取决于特定的需求和场景。 如果需要低功耗、持续连接、低延迟及大量设备间通信的应用,MQTT是更好的选择。而对于偶尔传送数据或者和现有Web服务进行交互的应用,HTTP可能更为合适。

OneNET云平台提供了对这两种协议的支持,以满足不同物联网项目的需求。开发者可以根据具体情况选择最适合的通信方式

六、创建OneNET账号

打开官方网址中国移动物联网开放平台https://open.iot.10086.cn/

1.创建一个账号

2.开发者中心

这个有时候进来会很卡,没有开发者中心这个选项,只有一个文档中心,可以切换网络试试

 3.产品开发--->创建产品 

 

4.添加模型 

 

 如果上传的数据不符合0.1(小数点后一位,精度0.1),则该次上传的所有数据都视为无效数据,例如上传0.5摄氏度(有效),1摄氏度(无效),0.01摄氏度(无效)

 

5.添加设备 

 

到这里产品和设备就创建好了,上图的内容记得记录下来方便后续使用 

6.Token生成 


时间戳生成网址

打开下载的软件
对应官方文档填写Token生成工具使用方法

打不开就下载

通过网盘分享的文件:17134946071850.exe
链接: https://pan.baidu.com/s/19L2wFDi-p3TO49I1V-f7Jw?pwd=wkny 提取码: wkny 
--来自百度网盘超级会员v5的分享

创建完成,可开启下一章
至此,我们的设备已成功创建。请务必妥善保存您的设备名称、产品ID及生成的Token。这些信息是您在后续步骤中连接硬件、编写程序以及实现微信小程序控制等环节必不可少的关键要素。建议您将其记录在安全的地方,并确保在进行后续操作时能够轻松地调用这些数据。

敬请期待接下来的文章,我们将进一步深入探讨如何将单片机与ESP8266-01s WIFI模块相连接,并实现数据的双向传输。让我们一步步搭建起这座现代物联网的桥梁,解锁更多可能性。

 本篇文章大部分内容都是复制粘贴@送外卖的CV工程师,我只添加了自己操作过程中遇到的问题和解决方法,原文链接:物联网实践教程:微信小程序结合OneNET平台MQTT实现STM32单片机远程智能控制 远程上报和接收数据——创建新版OneNET的MQTT协议产品_小程序和单片机通信-CSDN博客

http://www.dtcms.com/a/352157.html

相关文章:

  • 深度学习——神经网络(PyTorch 实现 MNIST 手写数字识别案例)
  • 数据集数量与神经网络参数关系分析
  • Vibe 编程:下一代开发者范式的深度解析
  • 扩展现有的多模块 Starter
  • 2025本地部署overleaf
  • 售价3499美元,英伟达Jetson Thor实现机器人与物理世界的实时智能交互
  • 09-SpringBoot入门案例
  • 嵌入式学习笔记-LINUX系统编程阶段-DAY01脚本
  • 第四章:条件判断
  • VueFlow画布可视化——js技能提升
  • 安全测试、web探测、httpx
  • vue2和vue3的对比
  • Android 属性系统
  • 蓝思科技中报:深耕业务增量,AI硬件打开想象空间
  • Pandas vs Polars Excel 数据加载对比报告
  • Coze Studio系统架构深度剖析:从分层设计到领域驱动的技术实践- 第二篇
  • vue实现拖拉拽效果,类似于禅道首页可拖拽排布展示内容(插件-Grid Layout)
  • 用 Allure 生成 pytest 测试报告:从安装到使用全流程
  • STM32 定时器(互补输出+刹车)
  • yggjs_rbutton React按钮组件v1.0.0 多主题系统使用指南
  • 什么叫API对接HR系统?
  • 2025年8月技术问答第3期
  • 03MySQL——DCL权限控制,四种常用函数解析
  • SSM入门到实战: 3.6 SpringMVC RESTful API开发
  • 基于muduo库的图床云共享存储项目(一)
  • vs2019安装cpu版本的fftw 以实现傅里叶变换
  • 《护理学》10月版面征稿论文速递
  • 【46页PPT】AI智能中台用ABC+IOT重新定义制造(附下载方式)
  • SQLBot:一款基于大语言模型和RAG的智能数据分析工具
  • AI人工智能一体化HR系统如何选型?