今日头条
RS485转LoRaWAN数据采集器,顾名思义,其是工业常用的RS485接口的传感器与LoRaWAN网络之间的桥梁。受限于工业上的传感器设置的位置,RS485转LoRaWAN数据采集器安装的位置有可能不太方便于现场调试,因此,远程下发指令就显得很重要。
另外,设置轮询指令的作用在于,我们可以使得传感器定时轮询,而无需每次都从SERVER下发指令,从而可以大大降低网络拥塞的可能性。本文基于RAK瑞科慧联的数据采集器RAK7421,介绍如何通过MQTT工具来远程下发轮询指令给到RAK7421。希望了解什么是RS485转LoRaWAN数据采集器的,可以参见文章《RS485转LoRaWAN:工业应用场景无线组网的正确打开方式》。
远程下发轮询指令的类型
通过MQTT工具来远程下发轮询指令给到RAK7421,总共包括三种轮询指令:(a)增加定时轮询任务单消息(b)移除定时轮询任务单(c)读取定时轮询任务单。接下来我们将对这三种轮询指令进行具体介绍。mqtt下发指令给RAK7421,需要通过LoRaWAN网关来下发。
因此,为了能够利用MQTT工具来远程下发轮询指令到RAK7421,我们需要首先登陆RAK瑞科慧联提供的网关的用户界面,如图1所示,并通过以下路径:LoRa Network sever->Application->Edit->Integrations,来修改数据编码类型到HEX String。
修改完成后,我们就可以利用MQTT工具来下发指令给到RAK7421。希望了解更多的MQTT功能在LoRaWAN网关上的应用,还可以查看文章《如何在LoRaWAN网关的网页上设置MQTT的订阅的Topic》、《如何测试LoRa节点内置MQTT SERVER的数据传输是否正常》。
下图RAK7421节点添加定时轮询温湿度传感器任务单的示例图。
图2 RAK7421节点添加定时轮询温湿度传感器任务单示例
如图2所示,发布主题:Application/1/device/60c5a8fffe76ddc1/tx(注:Application ID和Device EUI与网关内的设置一致)
内容:
{
"comfirmed":true,
"fPort":129,
"data":"030001000901010300000002C40B"
}
任务单内容解释:
03 0001 0009 01 010300000002C40B
① ② ③ ④ ⑤
① DTU命令字CMD
② 消息序号
③ 消息长度(不含报文头)
④ 任务单ID
⑤ 任务单内容
如图3所示,MQTT订阅栏即可看到执行成功的上行消息“8300010000”,随后开始轮询并接收到的传感器温湿度信息。
移除定时轮询任务单
RAK7421节点移除定时轮询温湿度传感器任务单示例如图所示。
发布主题:Application/1/device/60c5a8fffe76ddc1/tx
内容:
{
"comfirmed":true,
"fPort":129,
"data":"040001000101"
}
MQTT订阅栏查看到执行成功的上行消息“8400010000”,即表示任务移除成功。
读取定时轮询任务单
RAK7421节点读取定时轮询温湿度传感器任务单示例如图所示。
图5 RAK7421节点读取定时轮询温湿度传感器任务单示例
发布主题;Application/1/device/60c5a8fffe76ddc1/tx
内容:
{
"comfirmed":true,
"fPort":129,
"data":"050001000101"
}
打开MQTT订阅栏即可看到执行成功的上行消息:“850001000901010300000002C40B”,即查询到的任务单ID为1,任务单内容为010300000002C40B(温湿度感应器轮询单)。
本文基于RAK瑞科慧联的数据采集器RAK7421,介绍了如何通过MQTT工具来远程下发轮询指令给到RAK7421。通过设置轮询指令,我们可以使得传感器定时轮询,而无需每次都从SERVER下发指令,从而可以大大降低网络拥塞的可能性。
fqj
全部0条评论
快来发表一下你的评论吧 !