51单片机ESP8266上传温湿度至阿里云平台
51单片机+ESP8266上传温湿度至阿里云平台
51单片机+esp8266连接阿里云平台?我猜看到这里你可能会忍不住笑出来,什么小马拉大车的系统,是的本篇文章就讲讲如何使用最普通的STC89C52单片机+ESP8266WiFi模组向阿里云平台传数据。
本系统使用单片机+通信模块的方式,通过51单片机发送AT指令控制WiFi模块,使用MQTT协议发送JSON格式的数据与阿里云平台进行通信。实现简单的物联网产品。
用到的材料:STC89C52RC、ESP8266WiFi模块(esp01/esp12等)、DHT11温湿度传感器、阿里云平台
主要流程如下
S1:阿里云-选择物联网平台-管理控制台-公共实例
S2公共实例中创建产品
产品页面-功能定义-定义物模型数据
物模型数据选择添加自定义功能,具体定义如下,定义完成后别忘了点发布上线
S3创建设备-选择刚才创建的产品-设置设备名称为esp01
S3 产品和设备页面可以查看 ProductKey/ProductSecret/DeviceName/DeviceSecret等信息
复制下这些信息,是硬件设备与云平台通信的重要标识。
S4 使用工具进行哈希算法加密 [:在线加密解密
OSCHINA.NET在线工具,ostools为开发设计人员提供在线工具,提供jsbin在线 CSS、JS 调试,在线 Java API文档,在线 PHP API文档,在线 Node.js API文档,Less CSS编译器,MarkDown编译器等其他在线工具
“:在线加密解密”)
生成后得到阿里云平台MQTT连接密码信息。
可以使用MQTT.fx进行验证
根据 ProductKey/ProductSecret/DeviceName/DeviceSecret填写对应的信息点击Connect连接,右侧圆点变绿则说明参数成功,如果为红色则说明错误需要检查。
S5 编写MQTT连接程序,将这些信息写入AT指令中
在此简单介绍一下MQTT通信的原理 MQTT协议主要应用在嵌入式设备上,MQTT由发布者、服务器(也称代理)、订阅者三部分组成,本系统中服务器即阿里云平台,发布者即硬件设备,订阅者即获取数据的设备。在服务器上开启消息的发布和消息的订阅即可以交换对应的数据实现通信。
S6 编写单片机控制温湿度传感器采集温湿度数据,将数据以JSON格式通过串口发送至WIFI模块
S7 设备界面物模型数据-打开实时刷新开关-即显示实时采集的温湿度数据值:
S8 可以使用阿里云内置的IOT STUDIO基于产品开发各种应用
=========================================================================
本文所介绍的系统,参考了哔哩哔哩up主 _吊儿郎当 视频案例:
本人在该视频案例及其开源的资料基础上进行一定的修改和延伸拓展,在此向他表示诚挚的感谢
本文中所使用到的资料可以从本人上传的资源中获得,关注留言免费开源!
=========================================================================
欢迎关注“善点灯者”CSDN账号,闲鱼搜索“辉睿物联网”获取系统成品和技术支持