新聞中心
PRESS CENTER
ONENET物聯(lián)網(wǎng)平臺(tái)是中國(guó)移動(dòng)打造的物聯(lián)網(wǎng)開放平臺(tái),可以讓開發(fā)人員快速實(shí)現(xiàn)物聯(lián)網(wǎng)設(shè)備的接入與管理,集合移動(dòng)特色功能例如專網(wǎng)專號(hào)、移動(dòng)短彩信、視頻服務(wù)、位置服務(wù)、公有云等服務(wù),實(shí)現(xiàn)海量設(shè)備接入、設(shè)備在線監(jiān)控、數(shù)據(jù)存儲(chǔ)、消息分發(fā)、事件告警、數(shù)據(jù)分析等功能。目前已被成功應(yīng)用于多個(gè)領(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é)議等,可以非常輕松的對(duì)接各類設(shè)備與第三方云平臺(tái)。不僅如此,它還能支持Node-RED可視化編程,極大地方便了對(duì)網(wǎng)關(guān)功能的二次開發(fā)。
通過(guò)將邊緣計(jì)算網(wǎng)關(guān)與ONENET物聯(lián)網(wǎng)平臺(tái)對(duì)接,可完成數(shù)據(jù)上傳、在線監(jiān)控、事件預(yù)警、數(shù)據(jù)分析等可視化操作與管理。下面,我們以EG8200mini邊緣計(jì)算網(wǎng)關(guān)來(lái)采集Modbus RTU數(shù)據(jù),并通過(guò)MQTT協(xié)議連接到中移ONENET物聯(lián)網(wǎng)平臺(tái),一起來(lái)看看實(shí)現(xiàn)過(guò)程吧。
要采集的Modbus點(diǎn)位表:

第一步:采集Modbus從機(jī)的數(shù)據(jù)
參考ONENETonJson協(xié)議MQTT數(shù)據(jù)格式以及平臺(tái)配置第二步的物模型設(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
}
}
}平臺(tái)下行反饋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),參考平臺(tái)配置第四步的內(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)平臺(tái)
產(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)品型號(hào):自定義
品牌名稱:自定義
產(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(參考下一步說(shuō)明)
Token計(jì)算參考文檔Token計(jì)算:
res:products/31ACZV4snl (規(guī)則products/{產(chǎn)品ID})
et:1721859317 (失效時(shí)間)
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í)可以看到設(shè)備已經(jīng)在線:

設(shè)備管理->詳情->屬性:
網(wǎng)關(guān)觸發(fā)數(shù)據(jù)發(fā)送,可以看到ONENET物聯(lián)網(wǎng)平臺(tái)物模型數(shù)據(jù)更新:

本文介紹了一個(gè)相對(duì)復(fù)雜的流程,旨在表述網(wǎng)關(guān)所具備的能力,因此并未對(duì)程序的安全性、穩(wěn)定性、靈活性等方面做優(yōu)化。通過(guò)理解本流程,相信你已經(jīng)對(duì)網(wǎng)關(guān)的可視化編程有了一定的熟悉。接下來(lái),深入學(xué)習(xí)每個(gè)節(jié)點(diǎn)的功能用法吧,掌握它們將會(huì)為你制作更復(fù)雜的流程提供更多的選擇和可能!