RS485轉(zhuǎn)LoRaWAN數(shù)據(jù)采集器,顧名思義,其是工業(yè)常用的RS485接口的傳感器與LoRaWAN網(wǎng)絡(luò)之間的橋梁。受限于工業(yè)上的傳感器設(shè)置的位置,RS485轉(zhuǎn)LoRaWAN數(shù)據(jù)采集器安裝的位置有可能不太方便于現(xiàn)場(chǎng)調(diào)試,因此,遠(yuǎn)程下發(fā)指令就顯得很重要。
另外,設(shè)置輪詢指令的作用在于,我們可以使得傳感器定時(shí)輪詢,而無(wú)需每次都從SERVER下發(fā)指令,從而可以大大降低網(wǎng)絡(luò)擁塞的可能性。本文基于RAK瑞科慧聯(lián)的數(shù)據(jù)采集器RAK7421,介紹如何通過(guò)MQTT工具來(lái)遠(yuǎn)程下發(fā)輪詢指令給到RAK7421。希望了解什么是RS485轉(zhuǎn)LoRaWAN數(shù)據(jù)采集器的,可以參見(jiàn)文章《RS485轉(zhuǎn)LoRaWAN:工業(yè)應(yīng)用場(chǎng)景無(wú)線組網(wǎng)的正確打開(kāi)方式》。
遠(yuǎn)程下發(fā)輪詢指令的類型
通過(guò)MQTT工具來(lái)遠(yuǎn)程下發(fā)輪詢指令給到RAK7421,總共包括三種輪詢指令:(a)增加定時(shí)輪詢?nèi)蝿?wù)單消息(b)移除定時(shí)輪詢?nèi)蝿?wù)單(c)讀取定時(shí)輪詢?nèi)蝿?wù)單。接下來(lái)我們將對(duì)這三種輪詢指令進(jìn)行具體介紹。mqtt下發(fā)指令給RAK7421,需要通過(guò)LoRaWAN網(wǎng)關(guān)來(lái)下發(fā)。
因此,為了能夠利用MQTT工具來(lái)遠(yuǎn)程下發(fā)輪詢指令到RAK7421,我們需要首先登陸RAK瑞科慧聯(lián)提供的網(wǎng)關(guān)的用戶界面,如圖1所示,并通過(guò)以下路徑:LoRa Network sever->Application->Edit->Integrations,來(lái)修改數(shù)據(jù)編碼類型到HEX String。

修改完成后,我們就可以利用MQTT工具來(lái)下發(fā)指令給到RAK7421。希望了解更多的MQTT功能在LoRaWAN網(wǎng)關(guān)上的應(yīng)用,還可以查看文章《如何在LoRaWAN網(wǎng)關(guān)的網(wǎng)頁(yè)上設(shè)置MQTT的訂閱的Topic》、《如何測(cè)試LoRa節(jié)點(diǎn)內(nèi)置MQTT SERVER的數(shù)據(jù)傳輸是否正?!贰?/span>
下圖RAK7421節(jié)點(diǎn)添加定時(shí)輪詢溫濕度傳感器任務(wù)單的示例圖。

圖2 ???RAK7421節(jié)點(diǎn)添加定時(shí)輪詢溫濕度傳感器任務(wù)單示例
如圖2所示,發(fā)布主題:Application/1/device/60c5a8fffe76ddc1/tx(注:Application ID和Device EUI與網(wǎng)關(guān)內(nèi)的設(shè)置一致)
內(nèi)容:
{
"comfirmed":true,
"fPort":129,
"data":"030001000901010300000002C40B"
}
任務(wù)單內(nèi)容解釋:
03?0001?0009?01?010300000002C40B
①??② ??③?④????????⑤
①?DTU命令字CMD
②?消息序號(hào)
③?消息長(zhǎng)度(不含報(bào)文頭)
④?任務(wù)單ID
⑤?任務(wù)單內(nèi)容
如圖3所示,MQTT訂閱欄即可看到執(zhí)行成功的上行消息“8300010000”,隨后開(kāi)始輪詢并接收到的傳感器溫濕度信息。

移除定時(shí)輪詢?nèi)蝿?wù)單
RAK7421節(jié)點(diǎn)移除定時(shí)輪詢溫濕度傳感器任務(wù)單示例如圖所示。

發(fā)布主題:Application/1/device/60c5a8fffe76ddc1/tx
內(nèi)容:
{
"comfirmed":true,
"fPort":129,
"data":"040001000101"
}
MQTT訂閱欄查看到執(zhí)行成功的上行消息“8400010000”,即表示任務(wù)移除成功。
讀取定時(shí)輪詢?nèi)蝿?wù)單
RAK7421節(jié)點(diǎn)讀取定時(shí)輪詢溫濕度傳感器任務(wù)單示例如圖所示。?

圖5 ?RAK7421節(jié)點(diǎn)讀取定時(shí)輪詢溫濕度傳感器任務(wù)單示例
發(fā)布主題;Application/1/device/60c5a8fffe76ddc1/tx
內(nèi)容:
{
"comfirmed":true,
"fPort":129,
"data":"050001000101"
}
打開(kāi)MQTT訂閱欄即可看到執(zhí)行成功的上行消息:“850001000901010300000002C40B”,即查詢到的任務(wù)單ID為1,任務(wù)單內(nèi)容為010300000002C40B(溫濕度感應(yīng)器輪詢單)。
本文基于RAK瑞科慧聯(lián)的數(shù)據(jù)采集器RAK7421,介紹了如何通過(guò)MQTT工具來(lái)遠(yuǎn)程下發(fā)輪詢指令給到RAK7421。通過(guò)設(shè)置輪詢指令,我們可以使得傳感器定時(shí)輪詢,而無(wú)需每次都從SERVER下發(fā)指令,從而可以大大降低網(wǎng)絡(luò)擁塞的可能性。
fqj
電子發(fā)燒友App



































































評(píng)論