
摘 要:隨著網絡技術與數字通信的飛速進步,基于物聯網技術的燃氣遠程監控系統提出了一種基于MQTT協議。MQTT最大優點在于,可以以極少的代碼和有限的帶寬,為連接遠程設備提供實時可靠的消息服務。從而成功實現了對智能燃氣流量計與智能卡控制系統及安全報警系統的遠程監控。該系統對于提高燃氣計量及管理的現代化水平具有重要的意義。
關鍵詞:MQTT協議;煤層氣;無線遠程監控
1 MQTT協議簡介
是一種基于發布/訂閱(publish/subscribe)模式的“輕量級”通訊協議,該協議構建于TCP/IP協議上,由IBM在1999年發布。MQTT最大優點在于,可以以極少的代碼和有限的帶寬,為連接遠程設備提供實時可靠的消息服務。做為一種低開銷、低帶寬占用的即時通訊協議,使其在物聯網、小型設備、移動應用等方面有較廣泛的應用。
2 系統總體設計
2.1 系統架構設計
圖1為基于MQTT協議的煤層氣無線遠程監控系統整體架構,系統基于工業云架構引入了MQTT中間代理,B/S架構軟件,移動APP等新技術,構成了新一代的燃氣監管控架構。員工不再依靠單獨的傳統的調度中心,而是通過APP,網頁瀏覽等方式,實現了人人監管、移動監管的新辦公方式。安全部門、調度中心、維保部門、巡線部門作為末端用戶,充分使用崗位對應的軟件功能,提升了工作效率和質量。
調度中心是公司內部的管控中心,根據智慧燃氣云平臺和銘石SCADA系統實時監控全市燃氣管網壓力流量等信息。不僅可以查詢到今日用氣量的同比和環比信息,還可以通過預測模型,分析出明日用氣量和用氣分布。區別于傳統的調度方式,可以做到提前預知、提前部署。極大地釋放了人員工作壓力,緩解了用氣高峰時的用氣壓力,減少了用氣低谷時的浪費。
安全部門通過基于MQTT協議的煤層氣無線遠程監控系統的實時展示、實時報警功能,能在兩分鐘之內發現報警,響應報警。通過智慧燃氣遠傳終端,將壓力,門禁,切斷閥狀態和泄漏報警等信息,實時傳送到智慧燃氣云平臺。平臺會根據事先錄好的信息,將具體報警信息例如超壓報警,門禁報警,泄漏報警等推送到指定安全人員的手機APP上。APP會記錄報警信息,處理狀態,處理日期等信息,做到有記錄可查,責任定點到位。
2.2 系統安全設計
當設備和系統暴露在公網環境中時,就有可能遭受到網絡攻擊。所以在使用這些遠傳監控設備和網絡平臺時,就必須有安全防護措施。煤層氣無線遠程監控系統設計了以下網絡安全防護的措施:
①賬號密碼驗證;
②智能終端內部需要設定指定的賬號、密碼、ip、端口,才能與MQTT代理服務器相連。消息以隊列形式存儲在MQTT代理服務器當中,云平臺也是通過上述信息連接代理服務器,從中獲取信息。云平臺對外不提供數據接入的端口,保障了平臺及數據庫的安全性。云平臺根據已經事先設定好的TOPIC,到代理服務器中獲取數據。沒有事先設定的數據,不會被云平臺獲取;
③數據格式分析:智能終端按照規定格式發送數據。以統一的topic為鍵,不同類型的設備按照規定發送相應的payload,數據不涉及明文及具體含義。云平臺從代理服務器中接收到需要的數據后,進行解密拆分,將相應的數據存儲到服務器中。多余的數據會被代理服務器遺棄;
④數據加密:加密方式:AES-128-CBC。設備發送數據給平臺,例如:平臺會記錄數據收發日志,對于非法數據,會記錄其來源、數值等,下次在數據入口處,即可排除。并且上報系統管理員。
3 Modbus TCP/MQTT 協議網關設計
3.1 Modbus協議介紹
MODBUS是一種串行通信協議,是Modicon公司(現在的施耐德電氣Schneider Electric)于1979年為使用可編程邏輯控制器(PLC)通信而發表。Modbus已經成為工業領域通信協議的業界標準(De facto),并且現在是工業電子設備之間常用的連接方式。MODBUS協議是一個master/slave架構的協議。有一個節點是master節點,其他使用MODBUS協議參與通信的節點是slave節點。每一個slave設備都有一個唯一的地址。在串行和MB+網絡中,只有被指定為主節點的節點可以啟動一個命令(在以太網上,任何一個設備都能發送一個MODBUS命令,但是通常也只有一個主節點設備啟動指令)。
3.2 實現形式
RTU與modbus協議的設備通過EIA-485接口相連。以流量計為例,RTU發送指令給流量計數據,流量計返回一條帶有所有數據的十六進制數據給RTU。RTU根據設備說明書,將這條數據拆分成標況累積量、工況累積量、標況流量、工況流量、壓力、溫度等數據,并將數據整合加密,與其他EIA-485接口數據一同打包,通過MQTT模塊將數據發送至云平臺。
云平臺和SCADA系統之間的通信采用MODBUS/TCP方式。在數據發送之前雙方定義好點位表,即對應數據位的數據意義。接口采用python語言開發,使用的是modbus_tk功能包。
第一步、綁定本機地址作為主站:
import socket
s = socket.socket(socket.AF_INET,
socket.SOCK_STREAM)
s.bind((‘192.168.254.29’,502))。
第二步、scada服務器通過上述綁定的地址連接網關,發送一段指令給網關。指令中帶有起始地址、長度、設備號等信息(例如:09 00 00 00 00 06 01 03 00 00 00 64)
第四步、網關接收到指令后會解析處設備號,起始地址,長度等信息。然后查詢處理數據,根據點位表形成正確排列的數據,并以約定好的數據格式以十六進制返回到請求的原地址端口。
conn.send(bytes.fromhex(Res[‘hex’]))
4 監控系統信息管理平臺
信息管理平臺包括數據接收模塊、數據處理模塊、數據分析模塊、數據轉發接口模塊、頁面展示模塊。數據接收模塊負責接收MQTT代理服務器的數據和接收其他來源的數據,例如透傳的直發型流量計等。數據處理模塊負責解密數據并存儲進數據庫。數據分析模塊負責分析數據,并將數據展示在網站上。數據轉發接口模塊負責將數據轉發到組態軟件等別的平臺軟件上。頁面展示模塊負責將數據展示在網站上和APP上。
5 結論
本文針對煤層氣開采過程中實時監控的實際問題,分析設計了煤層氣遠程監測系統。維保部門通過這套系統,可以詳細記錄每個站點的設備信息。小到一塊皮膜的生產日期、使用壽命、維保記錄,大到調壓門站的安裝記錄等。巡線人員每日巡線的時候,使用APP可以詳細記錄巡線狀況,遇到的問題,可能發生的故障等,形成每日巡線記錄表,防范問題的發生。維修人員可以詳細記錄每一零部件的保養維修更換記錄,平臺可以生成詳細記錄,并且可以結合算法,預測零部件的保養時間,更換時間等。
參考文獻:
[1]劉麗等.Citect工控組態軟件及其在輸氣管道SCADA系統中的應用[J].工業控制計算機,2001,14(1):36-38.
[2]張義星,孟國營等.基于Citect的煤礦裝車監控系統設計[J].煤炭工程,2012(5):120-122.
[3]衡軍山.基于雙CPU的冗余控制研究與實現[J].機床與液壓,2008,36(7):350-351.
作者簡介:
朱光燦(1986- ),男,漢族,碩士,自動化及網絡控制技術工程師。