如何通过 Linovision 网关上的 MQTT 远程控制设备
描述
当作为嵌入式网络服务器工作时,Linovision LoRaWAN 网关支持将数据包发送到第三方 MQTT/HTTP/HTTPS 服务器或接收下行命令以传输到 LoRaWAN 终端设备。
要求
- Linovision LoRaWAN 网关:IOT-G56, 物联网-G 63 V1, 物联网-G65, 物联网-G 67, IOT-G 8x(固件版本 80.0.0.64 或更高版本)
- MQTT 服务器/代理
- MQTT 客户端工具:以 MQTT Explorer 为例
配置
步骤1.将网关连接到MQTT代理。
参考文章 如何将 LoRaWAN 网关连接到 MQTT 代理?将网关连接到 MQTT 代理并确保代理和 MQTT 客户端可以接收来自设备的上行链路。
步骤2.从网关发送下行链路命令
设置网关直接向设备发送下行命令,检查设备是否可以接收下行命令并采取行动。
设备 EUI: 设备 EUI 发送下行命令
类型: 下行命令类型。对于 Linovision 设备,请选择 十六进制 类型。
有效载荷: 下行命令内容(从设备制造商处获取)。 利诺维视 设备,请参考相应用户指南的下行命令内容
港口: 设备的应用程序端口。对于 利诺维视 设备。
确认:开启后,设备收到命令后会回发确认包给网关,若未收到则网关最多重新发送3次下行命令。
注意:对于A类设备,当A类设备发送上行时,网关会将命令添加到队列并发送。
步骤3. 在 MQTT Explorer 上发布 Topic,向设备发送下行数据。
设置下行数据主题,如果需要向特定设备发送MQTT下行数据,请在主题中添加“$deveui”。
例如:/linovision/downlink/$deveui
发布主题格式:
/ linovision /下行链路/[devEUI]
例子 :
从网关,我们可以获取我们想要控制的设备的设备 EUI:
因此我们可以在 MQTT Explorer 上发布一个主题,如下所示:
主题: /linovision/downlink/24e124126a148401
格式: json
内容:
按以下格式发送,并将数据内容替换为下行命令
点击发布后,我们可以进入 网络服务器 > 数据包 检查,若网关成功订阅相应下行主题数据,则会有至少一条灰色的消息包记录。
Linovision 设备命令示例
MQTT下行命令格式固定如下:
对于 Linovision 设备,单击 这里 将十六进制格式的命令转换为 base64 格式。以下是 利诺维视 控制器常用命令:
模型 |
命令 |
命令(十六进制) |
命令(base64) |
物联网-C50x |
将 GPIO1 设置为低 将 GPIO1 设置为高电平 将 GPIO2 设置为低 将 GPIO2 设置为高电平 |
030000ff 030100ff 040000ff 040100ff |
AwAA/w== |
物联网-C300 |
将 DO1 设置为低 将 DO1 设置为高 将 DO2 设置为低 将 DO2 设为高 |
070000ff 070100ff 080000ff 080100ff |
乙丙橡胶/丙丁橡胶== |
IOT-C11xx |
将 DO1 设置为低 将 DO1 设置为高 将 DO2 设置为低 将 DO2 设为高 |
090000ff 090100ff 0a0000ff 0a0100ff |
CQAA/w== |
- - 结尾 - -