張乾,蔡昌新
(長江大學 電子信息學院,荊州 434023)
?
基于Modbus TCP和WEB的實時監控系統設計
張乾,蔡昌新
(長江大學 電子信息學院,荊州 434023)
為了實時、便捷地了解測控現場設備運行的狀況,設計了一種基于Modbus TCP和WEB的實時監控系統。該系統設計基于dsPIC30F6014單片機,實現對采集模塊的控制,并通過ASP.NET創建的動態WEB瀏覽器和SQL強大的數據庫功能完成實時監控。結果表明,該系統能快速、方便、實時地動態顯示設備的各項運行指標。
Modbus TCP;PIC30F6014單片機;ASP.NET;WEB瀏覽器;實時
隨著自動化行業和控制技術的不斷發展和進步,現場設備之間的通信不再僅僅局限于設備與控制器之間,人機之間的交互也越來越普遍。現場總線作為信息傳輸的主干道,已經不再局限于現場的短距離通信,其應用規模日益擴大、復雜化,人們對現場設備的監控也提出了越來越高的要求。封閉的總線環境已經不能滿足現代自動化控制的要求,為了降低設備的維護成本,提高企業和公司的生產效率,需要對現場設備的運行進行實時的監測和控制。
近年來,大量先進的遠程監控技術開始應用于現場總線和遠程客戶端的交換,但Modbus協議目前還僅限于現場總線上,只有基于TCP/IP的協議才能通過以太網實現超遠距離的傳輸,為此ModbusTCP/IP應運而生。筆者通過對ModbusTCP協議[1]的研究,將油井現場采集的數據通過以太網、WiFi等設備傳送到遠距離的客戶端,并通過瀏覽器終端實時地顯示現場設備的運行狀況,為客戶提供一種遠程實時監控的解決方案。
本監控系統的設計原理:利用dsPIC30F6014A[2]單片機搭載底層的硬件電路采集數據,采用Modbus TCP/IP協議通過無線收發器傳輸至Internet,在此基礎之上,利用C#語言編程,結合ASP.NET創建的動態WEB頁面和SQL Server數據庫的訪問鏈接技術,設計了一種實時監控的WEB平臺,達到了對現場設備的實時監控的目的。
實時監控系統主要由現場采集系統、數據傳輸、數據庫系統、客戶端系統4部分組成,其總體示意圖如圖1所示。

圖1 系統總體示意圖
在本監控系統中,現場采集系統主要由單片機系統和RTU組成,單片機系統采集數據并傳給RTU,RTU將數據進行存儲,并隨時等待服務器端的數據請求命令。當收到服務器端數據請求命令時,RTU根據傳輸的距離選擇不同的傳輸方式,近距離傳輸選用無線模塊傳輸,遠距離傳輸選擇Internet網絡傳輸,數據庫服務器對上傳的數據進行分析和判斷,將符合信息幀格式的數據進行處理并存儲在數據庫中。同時,采用B/S模式,瀏覽器終端用戶可通過在瀏覽器地址欄輸入服務器IP,以動態網頁的形式瀏覽、查詢多個設備數據;享有權限的管理人員可對生產現場設備進行遠程管理和控制。只要有網絡的地方就能使用該系統,實現對現場設備的數據實時監控。
圖2為下位機硬件原理框圖。其核心是dsPIC30F6014A單片機,主要由數據采集模塊、電路保護模塊、傳輸模塊和系統配置模塊組成。傳感器對現場數據進行采集,通過A/D轉換送到單片機,單片機經UART串口[3]和無線模塊將數據傳送到嵌入式TCP/IP協議串口服務器,并通過Internet上傳至數據庫服務器中存儲。瀏覽器終端可以通過WEB服務器訪問數據庫服務器了解現場設備的運行狀態。為了保證系統的安全可靠性,在設計中添加了過流、過壓、和防雷擊等保護電路。硬件實物圖如圖3所示。

圖2 下位機硬件原理框圖
系統軟件的總體結構如圖4所示,作為監控系統的管理人員,在瀏覽器終端可以實現用戶管理、數據處理、瀏覽器實時顯示當前數據和歷史數據查詢4個功能模塊的操作。在用戶管理界面,可以實現密碼設置、用戶添加和權限設置等功能;在數據處理中,管理人員可以對上傳的數據進行存儲備份,并保存到數據庫服務器中,以供瀏覽器終端訪問;在WEB平臺中,可以對上傳的數據進行實時的顯示,對歷史數據可以進行隨時查詢和曲線分析。
Modbus TCP 協議以一種非常簡單的方式將Modbus幀[4]嵌入到TCP幀中,使其成為工業以太網應用層協議,并以其簡單性、開放性、實時性及數據傳輸量大等特點,在工業自動化領域得到廣泛的應用。
Modbus TCP 協議規定每個控制器都需要有自己的地址,按地址識別發來的消息。如果需要回應,則控制器生成反饋信息并用Modbus TCP協議幀發出,但格式必須嚴格遵守協議規定,其應用數據單元(ADU)由MBAP報文頭、功能碼和數據域3部分構成,如圖5所示。

圖3 硬件實物圖

圖4 系統軟件功能圖

圖5 Modbus TCP/IP 幀格式
5.1 現場與服務器端的數據傳輸
當油井分布較分散,傳輸距離比較遠且超過1 km時,可以使用GPRS網絡進行傳輸;當油井分布比較集中,傳輸距離近,不超過1 km時,可選擇使用無線模塊進行組網傳輸[5]。
現場與服務器端的數據傳輸流程如圖6所示,在系統運行時應首先啟動數據庫服務器、初始化套接字庫。建立通信套接字后,服務器進入端口監聽狀態。當有現場終端向服務器發出連接請求時,服務器開一個線程建立連接,并啟動數據請求定時器。當定時時間到時,服務器向已建立連接的現場終端發送ModbusTCP協議請求幀格式的數據請求。現場終端在接收到數據請求后,對信息幀格式進行分析,如果符合協議,則將數據按照ModbusTCP協議響應幀格式上傳,否則不響應。

圖6 現場與服務器端的數據傳輸流程圖
5.2 瀏覽器端與服務器端的數據傳輸
B/S模式是WEB興起后的一種網絡結構模式,即瀏覽器/服務器,與C/S模式相比,具有可以隨時隨地進行查詢和瀏覽、維護簡單方便、更新簡單以及共享性強等特點,符合實時網絡監控系統的發展要求。瀏覽器端與服務器端的數據傳輸采用的就是B/S模式。
B/S模式的工作流程如圖7所示。當客戶端通過瀏覽器終端訪問數據庫服務器時,首先瀏覽器端通過Internet發出一個WEB請求,當WEB服務器收到請求后,將請求交給ASP.NET Framework,此時ASP.NET Framework會向數據庫服務器請求合適的源代碼文件。數據庫服務器將源代碼的內容返回給ASP.NET Framework,后者執行源代碼生成HTML輸出返回給WEB服務器,這時WEB服務器會將請求的文件以動態網頁的方式將HTML顯示在計算機瀏覽器頁面上。

圖7 服務器與瀏覽器端的工作流程

[1] 關學進.基于Modbus_TCP工業以太網的自動化控制系統[J].電子測試,2011,4(4).
[2] 劉和平.dsPIC通用數字信號控制器原理及應用——基于dsPIC30F系列[M].北京:北京航空航天大學出版社,2007.
[3] 劉舉濤.基于Modbus通訊協議的遠程測控設計[J].導彈與航天運載技術, 2012(2):50-53.
[4] 王瓊玫.一種基于Modbus_TCP協議棧的遠程監控系統的設計[J].長江大學學報,2013,10(7).
[5] 鄭豐收.基于MODBUS和TCP_IP協議的溫濕度監控系統[J].中國儀器儀表,2011(10):53-56.
[6] 陳明榜.一種基于Modbus通信的泵站監控系統[J].水電自動化與大壩監測,2006,12,30(6).
張乾(研究生),主要從事自動化檢測與儀器儀表工作;蔡昌新(副教授),主要從事計算機控制和自動化檢測方面的研究。
Real-time Monitoring System Based on Modbus TCP and WEB
Zhang Qian, Cai Changxin
(Electronics and Information College,Yangtze University, Jingzhou 434023,China)
For real-time and easy understanding of the control field devices running condition,the author designs a real-time monitoring system based on Modbus/TCP and WEB. The system design is based on dsPIC30F6014 microcontroller to control the collection module, and create dynamic WEB browser through ASP.NET and SQL powerful database function completes online debugging. The results shows that the system can fast, convenient, real-time dynamic display the running indexes of the equipment.
Modbus TCP; PIC30F6014 MCU;ASP.NET; WEB browser;real time
TP277
A
迪娜
2013-11-12)