Appearance
高阶教程-串口协议转 MQTT
本节详细讲解串口协议转换为物联网 MQTT 通信协议的实现方法,完成硬件设备数据自动上报,同时支持远程向硬件下发控制指令
说明
以下教程将使用红外温度传感器进行举例说明,使用的串口协议为:RS485
对接
RS232、RS422等其余串口协议,操作流程完全一致,仅需更换对应适配的网关硬件即可
注意:安装应用后,需要替换工作流(获取实时温度)中(HTTP请求节点)中的IP地址
1.硬件介绍
本节教程将使用以下硬件进行讲解说明
整体连接如下
说明
- ①:
红外测温仪的电源线 - ②:
红外测温仪的串口线连接到物联网网关 - ③:
物联网网关的电源线 - ④:
物联网网关的网口(连接有线网)

3.配置MQTT服务
红外测温仪通过串口将数据上传至物联网网关,再由物联网网关转发推送至指定MQTT 服务
提示
通过:MQTT插件,可以快速部署 MQTT 服务
以下为MQTT 插件的配置参数
json
{
"USERNAME": "TempUpdate",
"PASSWORD": "TempUpdate",
"MQTT_PORT": 1883,
"HTTP_PORT": 80,
"SUBSCRIBE_LIST": [
{
"TOPIC": "Temp",
"URL": "https://192.168.31.88:2020/00001_api/webhook/MVf832oAbo05j-ZWgp7THEJ60XT-1",
"ENCODING": "hex"
}
]
}3.配置物联网网关
连接完成后,需要进入物联网网关的配置页面进行配置
提示
可以查看路由器的已连接设备,找到物联网网关的IP地址,浏览器地址栏输入IP地址后即可访问

3.1 配置网络参数
为物联网网关开启网络连接,参照路由器网络参数完成配置即可,示例如下

3.2 配置端口参数
需要参考红外测温仪说明文档,将串口相关参数配置到端口参数,配置后串口输出数据才能发送到物联网网关
红外测温仪串口参数说明

基于串口参数配置如下

3.3 配置MQTT网关
完成以上配置后,红外测温仪的数据可通过串口传输至物联网网关,接下来配置 MQTT 转发相关参数,即可将网关接收的串口数据推送至 MQTT 服务器
配置接收消息的 MQTT 服务器
说明
此项为MQTT 服务接入配置,填写MQTT 服务器实际参数即可

MQTT 发布/订阅配置
发布/订阅说明
- 发布配置: 将接收到的串口数据推送至
MQTT 服务器指定主题(Topic) - 订阅配置: 接收
MQTT 服务器指定主题下发的数据,并转发至硬件串口

3.4 配置边缘网关
部分硬件设备需下发指定指令方可读取数据,可在边缘网关配置指令轮询功能,设置固定间隔后即可自动采集回传数据,无需手动主动发起数据请求
提示
如果不需要按指定间隔时间返回数据,则无需配置指令轮询功能
例如:红外测温仪需要发送指令010300000001840A到串口后,串口才会返回温度数据

配置:每间隔1秒请求1次温度数据

3.5 配置完成
配置完成后,需要重启模块,重启后配置才能生效

4.最终效果
以上配置完成后,即可实现从红外测温仪接收实时温度数据,以下为两种使用场景
4.1 场景1:轮询请求
若仅需按照设定间隔定时上报实时温度,只需完成 3.4 节边缘网关配置 即可
网关状态示例

webhook接收示例
提示
输出参数中的temperature即是获取到的红外测温仪温度

4.2 场景2:指令请求
如果需要发送指令后才返回温度数据,则可以向 3.3 节配置mqtt网关 中的订阅主题发送查询指令
提示
具体实现可以查看示例应用中的工作流逻辑,点击下载应用
效果示例

网关状态示例
