前言:想要寫出一篇引人入勝的文章?我們特意為您整理了數(shù)據(jù)庫下的PLC遠程監(jiān)控系統(tǒng)范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:以PLC的運程監(jiān)控系統(tǒng)為研究對象,提出了B/S系統(tǒng)的網(wǎng)絡架構。利用運程客戶端及網(wǎng)絡組件和本地的服務器、控制器、設備層構成硬件連接。在軟件方面,采取數(shù)據(jù)庫和WEBServices組合技術。建立MySQL數(shù)據(jù)庫和SQLServer數(shù)據(jù)通信,實現(xiàn)PC機和plc跨平臺調(diào)用數(shù)據(jù)庫。通過調(diào)試,表明WEB頁面能夠?qū)崿F(xiàn)遠程監(jiān)控。
關鍵詞:數(shù)據(jù)庫;PLC;監(jiān)控;WEB
引言
PLC是一種應用于大型工業(yè)生產(chǎn)的智能控制器。由于其高處理速度、高可靠性,能適用多種環(huán)境廣泛應用,而且PLC可以通過自身擴展的接口與計算機或者上位機進行通信。因此大型復雜系統(tǒng)大多設計以PLC為核心的控制系統(tǒng)。隨著信息技術和工業(yè)4.0的發(fā)展,工業(yè)系統(tǒng)的集成變得非常必要。特別是,基于不同廠商控制器的監(jiān)控系統(tǒng)集成。數(shù)據(jù)庫技術、WEB技術與PLC的結(jié)合實現(xiàn)在線的遠程監(jiān)控。通過云平臺實現(xiàn)遠程網(wǎng)絡訪問與控制已逐步成為主流。
1系統(tǒng)的控制方案設計
遠程監(jiān)控系統(tǒng)主要有主機集中、瀏覽器-服務器(C/S)和客戶機服務器模式(B/S)[1]。B/S模式是通過超文本傳輸協(xié)議方式向WEB發(fā)出指令信息。服務器響應后,把訪問數(shù)據(jù)庫的信息編譯成SQL語言,再把該語言傳送至數(shù)據(jù)庫服務器。數(shù)據(jù)庫服務器接收信息,并檢驗真實性,最終將數(shù)據(jù)反饋到上一級服務器,形成HTML頁面顯示在瀏覽器上。或者通過人機交互,以WEB形式顯示于PC上。B/S模式具有便于維護,易于操做、可移植等特點,更適用于現(xiàn)代的工業(yè)控制系統(tǒng)。一般的B/S模式遠程監(jiān)控系統(tǒng),由服務器、客戶端和數(shù)據(jù)庫三層體系構成[2]。客戶端通過網(wǎng)址,訪問服務器,同時通過數(shù)據(jù)服務器處理數(shù)據(jù),從而實現(xiàn)不同地點的數(shù)據(jù)傳輸、訪問。但是加上控制層,增加了控制服務功能,使得該模式更加強大,也使得現(xiàn)有的數(shù)據(jù)資源得到了充分應用,能夠?qū)崿F(xiàn)WEB的遠程監(jiān)控。
2系統(tǒng)硬件設計
基于Web的PLC控制系統(tǒng)遠程監(jiān)控的硬件結(jié)構分由遠程和控制室網(wǎng)絡構成。其硬件結(jié)構如圖2所示。其中遠程網(wǎng)絡由接入的遠程客戶端以及相應的網(wǎng)絡器件組成,控制室網(wǎng)絡分為服務器層、控制器層、設備層三層結(jié)構。服務器層主要是由Web服務器、數(shù)據(jù)庫服務器、WinCC服務器組成[3]。控制器的作用是進行過程控制,為可視化單元提供過程數(shù)據(jù),并接收來自可視化單元的控制命令。本設計控制器部分主要采用西門子公司生產(chǎn)的S7系列1200PLC;設備層也可以稱為被控對象層,主要是現(xiàn)場的伺服驅(qū)動、變頻器、各種智能儀表及閥等。
3軟件設計
基于Web的PLC控制系統(tǒng)遠程監(jiān)控軟件結(jié)構如圖3所示,主要分為Web務器、遠程監(jiān)控服務器兩個部分。現(xiàn)場控制設備的各種數(shù)據(jù)信息存放在SQL數(shù)據(jù)庫中,通過建立和MySQL數(shù)據(jù)庫連接,讀取或者翻譯其中的信息,通過WEB頁面表達和顯示出來。
3.1WEB技術
WebServices是指由企業(yè)開發(fā)完成的其特別需求的在線應用服務并對外進行[4]。目的是不同平臺之間進行數(shù)據(jù)傳輸和相互操作。該技術也是PLC和服務器之間可以跨平臺傳輸數(shù)據(jù)的基礎,其調(diào)用過程如圖4所示。主要是通過SOAP在Web上提供軟件服務,使用WSDL文檔進行解釋并注冊。客戶端能夠通過Internet向WebServices服務端發(fā)送請求或者響應請求,從而得到數(shù)據(jù)信息,也就是利用WebServices技術,把從PLC各端口的數(shù)據(jù)封裝成接口,利用改寫接口中的方法得到PLC傳送的各種數(shù)據(jù),以實現(xiàn)PC機和PLC跨平臺調(diào)用的數(shù)據(jù)目的。1200PLC通過自身的以太網(wǎng)口與上位機通信,通過APACHE實現(xiàn)WEB應用的文檔解析。生成JAJA本地類。通過WEB允許的通信協(xié)議和1200PLC通信,實現(xiàn)PLC數(shù)據(jù)的寫入和讀取。獲得的數(shù)據(jù)可以直接轉(zhuǎn)發(fā)到WEB動態(tài)頁面。
3.2數(shù)據(jù)庫平臺實現(xiàn)遠程訪問
使用MySQL數(shù)據(jù)庫,可以十分方便的管理系統(tǒng)數(shù)據(jù)信息[5]。運行MySQL數(shù)據(jù)在Web開發(fā)中的,我們必須先連接到數(shù)據(jù)庫中;SQLServer是微軟公司開發(fā)的一個關系數(shù)據(jù)庫管理系統(tǒng),存儲著現(xiàn)場設備的數(shù)據(jù)信息。因此必須把MySQL數(shù)據(jù)和SQLServer數(shù)據(jù)庫建立通信。開放數(shù)據(jù)互聯(lián)(ODBC)是開放服務結(jié)構中有關數(shù)據(jù)庫的一個組成部分,它建立了一組規(guī)范,并提供了一組對數(shù)據(jù)庫訪問的標準[6]。所以在SQLServer的服務器上安裝MySQL的ODBC驅(qū)動,同時也為MySQL數(shù)據(jù)庫建立ODBC系統(tǒng)數(shù)據(jù)源。然后操作數(shù)據(jù)前者數(shù)據(jù)庫和后者的同步。而JAVA語言實現(xiàn)對數(shù)據(jù)庫MySQL的操作,同時WEB解析出程序編碼以直觀的信息顯示在瀏覽器上。(圖5)本系統(tǒng)采用WEB通用瀏覽器作為遠程監(jiān)控的監(jiān)視畫面.Java語言是支持網(wǎng)頁瀏覽器,利用Java編寫本系統(tǒng)語言,需要從SUN公司下載s7api.jar等,這些開發(fā)包提供了編寫語言時所用到的頭文件[7]。將這些開發(fā)包與Java的數(shù)據(jù)包放在同一路徑下。操作人員在實時數(shù)據(jù)查詢頁面可以瀏覽工控設備的實時狀態(tài)信息,頁面通過調(diào)用串口程序向PLC發(fā)出寫入或者查詢命令后,會將PLC控制的下位機設備的實時狀態(tài)信息以十六進制的形式進行反饋,并轉(zhuǎn)換為JAVA語句,WEB頁面對轉(zhuǎn)換的JAVA語句進行分析。直觀簡介的顯示在瀏覽器的網(wǎng)頁上,如圖6所示。操作人員能夠進行方便快捷的瀏覽。也能夠?qū)ΜF(xiàn)場設備的運行參數(shù)進行修改、綜合查詢監(jiān)視,也能夠進行單個數(shù)據(jù)信息的監(jiān)視查詢。
4結(jié)論
采用WEB技術實現(xiàn)了遠程的PLC監(jiān)控系統(tǒng)。即利用Apache建立了遠程監(jiān)控系統(tǒng)的Web服務器。在遠程訪問時采用MySQL數(shù)據(jù)庫與SQLServer數(shù)據(jù)庫通信,讀取PLC中的數(shù)據(jù)信息。運用PHP技術實現(xiàn)MySQL數(shù)據(jù)庫的連接和操作,在網(wǎng)頁中實現(xiàn)登錄、下載功能。同時也能查看PLC的數(shù)據(jù)及現(xiàn)場歷史數(shù)據(jù)。
參考文獻:
[1]邱萌.B/S模式的流程工業(yè)實時信息系統(tǒng)和智能故障診斷的研究[D].南京:南京工業(yè)大學,2003.
[2]羅遠福.基于Internet的PLC遠程實訓應用[J].重慶電力高等專科學校學報,2020,25(06):21-23,47.
[3]王志泉,湯麗華.基于web的PLC在線仿真實驗平臺[J].科技經(jīng)濟導刊,2020,28(32):18,17.
[4]趙宏圖.關于PLC在罐區(qū)監(jiān)控系統(tǒng)中的應用[J].設備管理與維修,2020(20):101-102.
[5]王開宇,盧誠,韓延義,王林,張文軒.基于Web的PLC流水線監(jiān)控系統(tǒng)設計[J].實驗科學與技術,2019,17(04):1-4,14.
[6]武立甲.基于WEB的PLC遠程監(jiān)控系統(tǒng)的研究[D].太原科技大學,2013.
[7]趙德瑞.基于Web的PLC控制系統(tǒng)遠程監(jiān)控技術的研究[D].河北工業(yè)大學,2011.
作者:葛笑寒 單位:河南三門峽職業(yè)技術學院