esp32(arduino)接入阿里云MQTT服务器 (实例)
esp32驱动汽车仪表
一、 需求
以老化架需求为基础,设计可与仪表一对一can通信及激励的小型设备。
二、 硬件
ESP32S、DCDC-5V、ttl转can、继电器等
图 1 硬件结构框图
三、 软件
以10ns为时间单位,指派任务。
图 2 软件流程图
四、 本地运行
图 3 控制器硬件接入仪表插座
时序 步骤 电池 点火 LED 指针 输出信号 耗时 备注
1 步骤1 高 高 亮 零 高 保持4s 包含开机动画2s
2 步骤2 高 高 亮 满 高 保持4s 指针满刻度
3 步骤3 高 高 亮 零 高 保持4s 指针零刻度
4 步骤4 高 低 灭 零 低 保持4s 包含关机动画2s
表1 控制器软件控制逻辑
五、 后台数据
图 4 读取设备属性
图 5读取仪表属性
图 6 老化时间计时
软件主要实现:
- 控制指针和LED按步骤执行
- 周期性获取仪表SN号
至此,本地老化功能已实现。
将添加物联网相关功能。
六、 物联网控制器硬件
不变
七、 物联网控制器软件
在本地运行的基础上增加网络连接、数据上传下传等功能。
图 7 软件主要流程
图 8 软件功能
八、 数据
控制器每隔20s将采集到的的数据上传至阿里云物联网平台,交给云服务器分析和处理。数据包括仪表***、老化时间、设备***等,数据处理结果可以反馈控制器。
图 9 数据流
图 10 控制器上传数据格式
图 11 服务器接收格式
图 12 上行消息分析
图 13 消息流转
九、总结
通过收集大量真实数据,对车间建模,是制造趋势
数据采集是基础,数据利用是关键