IoT裝置與手機App之間如何實現實時訊息通訊——業務場景最佳實踐

AIoT2688發表於2022-10-26

背景

M2M(即Machine-to-Machine)是一種端對端通訊技術。阿里雲 IoT 企業物聯網例項透過基於規則引擎的 Topic 轉發功能,實現裝置之間 M2M 通訊。您不用擔心高併發場景下的高併發、穩定性、低延時等技術難點,也不需要購買大量伺服器去承載這些請求,您只需要根據自己的業務配置好轉發規則即可。

今天,我們講解在工業場景中 PLC 工控機和管理人員 App 的聯動,此方案也同樣適用於智慧家居場景中溫溼度感測器和空調聯動,空氣質量感測器和空氣清淨機聯動等。

整體技術方案

基於阿里雲 IoT 企業物聯網例項的裝置之間 M2M 通訊整體技術方案如下:

image.png

裝置 M2M 通訊實戰

1.建立產品,配置自定義Topic

首先,我們在物聯網控制檯建立手機App產品和PLC工控機,並新增自定義Topic。

image.png

image.png

然後,在產品下各註冊一個裝置。

2.配置規則引擎,Topic轉發

2.1 PLC工控機上報資料流轉App
完成裝置接入後,我們在規則引擎-雲產品流轉建立新規則,PLC資料實時流轉App。

image.png

① 資料來源- PLC工控機資料上報

工控機上報資料 Topic:
/工控機/工控機id/user/data/up
Payload:
{    "toAppTopic":"/手機App/手機id/user/plc2App/data",    "t":56,    "h":68}

② 資料目的地- 手機App訂閱

手機App訂閱 Topic:
/手機App/手機id/user/plc2App/data

③ 解析指令碼

//透過 payload 函式,獲取裝置上報的訊息內容,並按照JSON格式轉換。var data = payload("json");// 目標Topicvar toAppTopic = data.toAppTopic;// App 指令流轉到 PLC裝置writeIotTopic(1009, toAppTopic, data)

當PLC工控機有資料上報後,訊息上報和規則引擎流轉日誌,如下:

image.png

資料流轉的訊息軌跡

image.png

2.2 手機App推送控制指令到PLC工控機
接下來,我們在規則引擎-雲產品流轉建立新規則,App指令傳送到PLC。

image.png

① 資料來源- 手機下發控制指令

手機下發控制指令 Topic:
/手機App/手機id/user/app2plc/cmd
Payload:
{    "toPlcDeviceTopic":"/PLC工控機/工控機id/user/app/cmd",    "light":"on"}

② 資料目的地- 工控機指令訂閱

PLC工控機訂閱 Topic:
/PLC工控機/工控機id/user/app/cmd

③ 解析指令碼

//透過 payload 函式,獲取裝置上報的訊息內容,並按照JSON格式轉換。var data = payload("json");// 目標裝置Topicvar toPlcDeviceTopic = data.toPlcDeviceTopic;// App 指令流轉到 PLC裝置writeIotTopic(1009, toPlcDeviceTopic, data)

當手機App下發控制指令後,流轉日誌,如下:

image.png

資料流轉的訊息軌跡如下

image.png

至此,我們基於阿里雲 IoT 企業物聯網平臺完成了PLC工控機和手機App之間的實時訊息通訊,整個過程不需要業務伺服器參與,保障了裝置間訊息實時和高效通訊

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70017009/viewspace-2920542/,如需轉載,請註明出處,否則將追究法律責任。

相關文章