一、項目介紹
隨著中國經濟的持續快速發展,城市進程和工業化進程的不斷增加,環境污染日益嚴重,國家對環保的重視程度也越來越高。近年來,由于國家加大了環保基礎設施的建設投資,有力拉動了相關產業的市場需求,環保產業總體規模迅速擴大,產業水平明顯提升。
為了響應國家環境保護的需求號召,上海博取儀器有限公司研發了一款能夠實時監測水質的變化情況的水質監測儀,能夠監測包括氨氮、總磷、總氮、PH、溶解氧、電導率等多種水質參數,并且支持將水質檢測數據上報至華為ROMA平臺,搭建了一套針對于變電站油水混合物及外派水質監測解決方案
二、項目痛點和問題
1.水質檢測主機目前僅支持現場查看水質數據,無法實現遠程數據監測,人員必須到現場才能了解水質情況,導致運維服務成本高,人工成本大,急需對接一款邊緣計算網關,能夠實現遠程數據監測和上報。
2.項目要求將檢測水質監測數據對接至國網湖北電科院所使用的華為ROMA平臺,通過MQTT協議進行數據上報,經過溝通后,發現ROMA平臺所需要的數據格式特定格式,比較復雜,市場上其他廠家網關無法滿足ROMA平臺的要求。
3.由于研發企業對平臺技術并不了解,對接ROMA平臺有很大的困難,進行因此希望網關廠商能夠提供專業的對接方案,希望能夠在短時間內實現數據對接。
三、方案總體設計
了解項目需求后,我們推薦使用藍蜂LF220網關,與水質檢測主機進行設備對接,實現遠程數據監測和上報。
藍蜂LF220網關作為一款支持MQTT協議的邊緣計算網關,南向支持Modbus協議和其他多種PLC,北向支持MQTT協議,可將采集到的水質監測數據轉換為MQTT協議,上報給云平臺,可通過腳本功能控制數據上報格式,滿足復雜的數據上報要求
平臺對接方面,通過查看ROMA平臺相關文檔和說明,與項目人員溝通后,我方制定了針對于ROMA平臺的上報數據協議格式,能夠在短時間內實現低成本,高效率的數據對接
四、詳細方案說明
(系統架構圖)
4.1硬件部署
1.水質分析主機控制柜中安裝藍蜂網關,使用4G卡進行聯網通信
2.藍蜂網關使用RS485端口與水質分析主機進行連接,通過Modbus協議與設備進行通訊,通過客戶提供的點位表設置對應變量,實現邊緣側采集數據。
3.網關上電后,網關通過MQTT協議將采集到的數據通過4G卡上報至華為ROMA平臺,實現遠程數據監測和上報
4.2對接華為ROMA平臺
1.我方與ROMA平臺方約定好MQTT服務器的對接的服務器地址,賬號,用戶名密碼,以及報文傳輸協議,經過測試,順利通過MQTT協議進行數據上報
3.我方提供藍蜂MQTT網關配置工具,通過藍蜂MQTT配置工具,能夠快速調試網關的相關MQTT參數,包括服務器用戶名,地址,賬號,上報數據主題,可支持遠程方式進行參數的配置和調試。
4.3配置驅動和變量點位
4.3.1通過Modbus協議對接水質檢測主機
水質分析儀支持Modbus協議,藍蜂網關使用RS485端口與水質分析主機進行連接,通過Modbus協議與設備進行通訊
通過藍蜂MQTT網關配置工具,進行驅動配置,可創建Modbus協議驅動,選擇RS485通訊口進行配置,連接至水質檢測主機。
4.3.2配置變量
根據項目需求,需要通過網關采集如下數據包括:COD、氨氮、總磷、總氮、PH、溶解氧、電導率、濁度、溫度、空調溫度、空調濕度、液位等參數
根據客戶提供的監測水質的點位表,在藍蜂MQTT網關配置工具中點擊變量管理功能,通過配置對應的變量,用于網關進行數據的采集和上報
添加變量功能中,允許用戶根據點位表,自行定義寄存器類型,數據類型,小數位數,讀寫類型
4.4數據上報
4.4.1約定數據上報格式
根據與平臺方的溝通,平臺方提供了MQTT協議通信規范,要求按通信協議規范規定的主題和數據格式進行數值上報
主題Topic
Topic | /v1/devices/{gatewayId}/datas |
消息發送方 | 邊設備 |
消息接收方 | 物聯網平臺 |
參數說明
字段名 | 必選/可選 | 類型 | 參數描述 |
devices | 必選 | DeviceS[] | 設備數據。 |
DeviceS結構體說明
字段名 | 必選/可選 | 類型 | 參數描述 |
deviceId | 必選 | String(256) | 平臺生成的設備唯一標識,對應設備客戶端ID。 |
services | 必選 | List | 服務列表。 |
Services結構體說明
字段名 | 必選/可選 | 類型 | 參數描述 |
serviceId | 必選 | String(256) | 服務ID。 |
data | 必選 | ObjectNode | 服務數據。 |
eventTime | 必選 | String(256) | 時間格式:yyyyMMdd’T’HHmmss’Z’ 如:20151212T121212Z。 |
JSON格式示例
{
"devices": [{
"deviceId": "D68NZxB4",
"services": [{
"data": {
"key": "value"
},
"eventTime": "20191023T173625Z",
"serviceId": "serviceName"
}]
}]
}
- 配置數據上報主題
通過藍蜂MQTT配置工具,可根據需要進行配置上報主題和上報數據內容,按照平臺方要求的數據格式,可使用腳本代碼編寫上報數據業務邏輯,匹配平臺方通信協議格式
為了匹配平臺方上報數據需求,做出如下配置:
- 主題內容:/v1/devices/${sn}/datas
- 上報方式:選擇定時上報,時間間隔為30秒
- 選擇自定義腳本加工方式,匹配數據上報格式
4.4.3 編寫腳本匹配上報數據格式要求
按照平臺方要求的數據格式,編寫對應腳本,將采集到的數據轉換為對應的JSON格式進行數據上報,腳本代碼如下:
function reportToJson(signalArray, system){
var data = {}
for(var i=0; i
var signal = signalArray[i];
data[signal.key] = signal.value
}
var dateStr = new Date().toISOString()
dateStr = dateStr.replace(/-/g, "")
dateStr = dateStr.replace(/:/g, "")
dateStr = dateStr.substr(0,15) + 'Z'
var json ={
devices: [{
deviceId: system.deviceId,
services: [{
data: data,
eventTime: dateStr,
serviceId: system.serviceId
}]
}]
}
return JSON.stringify(json);
}
4.4.4查看上報結果
通過第三方工具,訂閱數據上報的主題,可以看到網關已經將采集到的數據按照通信協議格式上報給ROMA云平臺了
五、方案總結
5.1方案優勢
- 藍蜂LF220為邊緣側計算網關,相比傳統的透傳網關,能夠實現自主采集,自主上報,數據格式自動轉換,相比市場上其他網關,能夠完全滿足數據遠程監控的需求。
- 通過藍蜂MQTT網關腳本加工功能,能夠對接ROMA平臺的MQTT通信協議,將復雜的數據上報格式
- LF220網關性能穩定,功能強大,客戶端軟件操作簡單容易上手,方便操作人員無需花費過多時間,即可使用熟練,提升工作效率
-
變電站
+關注
關注
7文章
1265瀏覽量
42054 -
MQTT
+關注
關注
5文章
653瀏覽量
22598
發布評論請先 登錄
相關推薦
評論