新聞中心
PRESS CENTERONENET物聯(lián)網(wǎng)平臺是中國移動打造的物聯(lián)網(wǎng)開放平臺,可以讓開發(fā)人員快速實(shí)現(xiàn)物聯(lián)網(wǎng)設(shè)備的接入與管理,集合移動特色功能例如專網(wǎng)專號、移動短彩信、視頻服務(wù)、位置服務(wù)、公有云等服務(wù),實(shí)現(xiàn)海量設(shè)備接入、設(shè)備在線監(jiān)控、數(shù)據(jù)存儲、消息分發(fā)、事件告警、數(shù)據(jù)分析等功能。目前已被成功應(yīng)用于多個領(lǐng)域,例如環(huán)境監(jiān)控、智能家電、節(jié)能減排、車聯(lián)網(wǎng)、工業(yè)控制等。
邊緣計(jì)算網(wǎng)關(guān)是一種物聯(lián)網(wǎng)中常用的設(shè)備,它是集成了邊緣計(jì)算能力的網(wǎng)關(guān),具有網(wǎng)絡(luò)連接、數(shù)據(jù)采集與預(yù)處理、協(xié)議轉(zhuǎn)換、邏輯編輯等功能。它處于物聯(lián)網(wǎng)4層架構(gòu)中的網(wǎng)絡(luò)層,屬于連接終端設(shè)備與云服務(wù)器的中間橋梁??v橫智控推出的EG系列邊緣計(jì)算網(wǎng)關(guān),不僅具有邊緣計(jì)算網(wǎng)關(guān)的所有功能,而且支持的協(xié)議特別多,包含99%的PLC協(xié)議、行業(yè)協(xié)議、物聯(lián)網(wǎng)協(xié)議等,可以非常輕松的對接各類設(shè)備與第三方云平臺。不僅如此,它還能支持Node-RED可視化編程,極大地方便了對網(wǎng)關(guān)功能的二次開發(fā)。
通過將邊緣計(jì)算網(wǎng)關(guān)與ONENET物聯(lián)網(wǎng)平臺對接,可完成數(shù)據(jù)上傳、在線監(jiān)控、事件預(yù)警、數(shù)據(jù)分析等可視化操作與管理。下面,我們以EG8200mini邊緣計(jì)算網(wǎng)關(guān)來采集Modbus RTU數(shù)據(jù),并通過MQTT協(xié)議連接到中移ONENET物聯(lián)網(wǎng)平臺,一起來看看實(shí)現(xiàn)過程吧。
要采集的Modbus點(diǎn)位表:
第一步:采集Modbus從機(jī)的數(shù)據(jù)
參考ONENETonJson協(xié)議MQTT數(shù)據(jù)格式以及平臺配置第二步的物模型設(shè)置。將網(wǎng)關(guān)配置第一步采集的數(shù)據(jù)JSON格式化。
上行Json示例:
{ "id": "123", "version": "1.0", "params": { "Power": { "value": "on", "time": 1524448722123 }, "WF": { "value": 23.6, "time": 1524448722123 } } }
平臺下行反饋Json示例:
{ "id": "123", "code": 200, "msg": "xxxx" }
函數(shù)源碼:
var RS485_RECV = msg.payload var time = Date.now() var pid = "31ACZV4snl" var deviceName = "device001" var topic = `$sys/${pid}/${deviceName}/thing/property/post` msg.topic = topic var mqttSend = { "id": "123", "version": "1.0", "params": { "DO1": { "value": RS485_RECV.MotorControl1 ? true : false, "time": time }, "DO2": { "value": RS485_RECV.MotorControl2 ? true : false, "time": time }, "frequency1": { "value": RS485_RECV.Requency1, "time": time }, "frequency2": { "value": RS485_RECV.Requency2, "time": time } } } msg.payload = JSON.stringify(mqttSend) return msg;
使用MQTT發(fā)布節(jié)點(diǎn),參考平臺配置第四步的內(nèi)容填寫MQTT連接參數(shù):
pid:產(chǎn)品ID
device-name:設(shè)備名稱
設(shè)備屬性上報(bào)Topic:$sys/{pid}/{device-name}/thing/property/post
上報(bào)響應(yīng)訂閱topic:$sys/{pid}/{device-name}/thing/property/post/reply
進(jìn)入ONENET物聯(lián)網(wǎng)平臺
產(chǎn)品開發(fā)->創(chuàng)建產(chǎn)品:
所屬地址:自由選擇
節(jié)點(diǎn)類型:網(wǎng)關(guān)設(shè)備
協(xié)議類型:MQTT
數(shù)據(jù)格式:oneJson
聯(lián)網(wǎng)方式:自定義
開發(fā)方案:自定義方案
產(chǎn)品廠商:自定義
產(chǎn)品型號:自定義
品牌名稱:自定義
產(chǎn)品開發(fā)->設(shè)置物模型->添加自定義模型:
設(shè)備接入管理->設(shè)備管理->添加設(shè)備:
所屬產(chǎn)品:選擇第一步創(chuàng)建的產(chǎn)品
設(shè)備名稱:自定義
設(shè)備描述:自定義
參考文檔MQTT設(shè)備連接。
MQTT連接參數(shù):
連接地址:mqtts.heclouds.com 端口:1883 clientId:設(shè)備名稱 username:產(chǎn)品ID password:計(jì)算后的token(參考下一步說明)
Token計(jì)算參考文檔Token計(jì)算:
res:products/31ACZV4snl (規(guī)則products/{產(chǎn)品ID}) et:1721859317 (失效時間) key:awGbZ4HLsXkvaxOlixv/642tOZM3dXUzf+Xd6UnV098= (產(chǎn)品key)
根據(jù)上述步驟獲取的連接參數(shù):
地址:mqtts.heclouds.com 端口:1883 clientId:device001 username:31ACZV4snl password:version=2018-10-31&res=products%2F31ACZV4snl&et=1721791062&method=md5&sign=iDH4WvVwIGlpRkFlBC1Eow%3D%3D
將MQTT連接參數(shù)配置到MQTT發(fā)布節(jié)點(diǎn):
此時可以看到設(shè)備已經(jīng)在線:
設(shè)備管理->詳情->屬性:
網(wǎng)關(guān)觸發(fā)數(shù)據(jù)發(fā)送,可以看到ONENET物聯(lián)網(wǎng)平臺物模型數(shù)據(jù)更新:
本文介紹了一個相對復(fù)雜的流程,旨在表述網(wǎng)關(guān)所具備的能力,因此并未對程序的安全性、穩(wěn)定性、靈活性等方面做優(yōu)化。通過理解本流程,相信你已經(jīng)對網(wǎng)關(guān)的可視化編程有了一定的熟悉。接下來,深入學(xué)習(xí)每個節(jié)點(diǎn)的功能用法吧,掌握它們將會為你制作更復(fù)雜的流程提供更多的選擇和可能!