在工業自動化領域里,控制網絡正向體系結構的開放性方向發展,信息溝通的領域正迅速覆蓋從工廠的現場設備到控制、管理的各個層次,基于 internet/intranet的企業綜合自動化方案已經成為熱門的研究方向。
通過internet瀏覽器相關人員能夠進行生產過程的遠程監視,遠程設備調試和遠程設備故障診斷、處理,不但可以提高企業自動化水平,實現無人職守,而且在很大程度上為企業生產運作的科學管理、安全運行和有效維護奠定了堅實的基礎。但是,由于網絡延時的存在,基于網絡的控制系統不可能是一種閉環控制,采用的是遠程監督控制方案,而邏輯控制功能由現場設備層完成。
本文根據這一思想提出基于b/s結構進行的網絡控制,并開發了一套基于plc和交流變頻器的實時遠程控制系統,該系統集工控組態軟件、plc技術、變頻控制技術,網絡通信技術于一體。
2 browser /server結構的工業信息監控系統
客戶/服務器(client/server)技術是目前廣泛使用的一種信息處理模式[2]。與傳統的集中式信息處理模式相比,它可以減少系統開支,將網絡所連接的微機群信息處理性能大大提高,因為其分布式處理的特點,它可以提高系統的可靠性,此外,由于其采用模塊化及開放式體系結構,使得它容易將不同的機器有效地連接在一起,易于系統的擴展升級,提高了系統的靈活性。但其也存在許多潛在的缺陷[3],諸如布局困難、培訓費用及系統維護費用高等,而且c/s結構也不能滿足客戶端跨平臺的要求。因此,本文利用browser /server結構建造工業信息監控系統。
2.1 browser/server體系結構的特點
隨著internet/intranet技術和應用的發展,www服務成為核心服務,用戶可通過瀏覽器browser統一的界面上,完成網絡上各種服務和應用功能。這種在20世紀90年代中期發展的,基于瀏覽器、web服務器和應用服務器的計算結構稱為browser/service(b /s,瀏覽器/服務器)計算模式,b/s模式繼承傳統的c/s(客戶/服務器)模式中的網絡軟、硬件平臺和應用,但克服了c/s模式的上述缺陷,這種新的結構具有下列優點:
(1)應用服務器的開發簡單
b/s結構是一個包括了客戶、web服務器和應用服務器的三層結構,涉及到四個組成部分:瀏覽器、web服務器、數據庫服務器、應用服務器。這種劃分使得程序的編制簡單,例如應用服務器不必過多地考慮和客戶端的通訊問題,大量的與客戶端的數據傳輸由數據庫服務器和web服務器完成,使開發者能夠把更多的精力放在功能的完善上。
(2)有許多現成的可供選擇的外圍程序
web服務器和數據庫服務器可以采用現成的產品,只有應用服務器需要自己開發,而且由于web服務器負責與數據庫服務器和客戶端瀏覽器的一部分通信,減輕了應用服務器的開發負擔。
(3)客戶端獲取數據更加容易
采用b/s結構,最直接的和最大的變化體現在客戶端上。客戶端不再像傳統的c/s結構中那樣,只與一個應用服務器通信。客戶端獲取數據的渠道不止一條。對于非實時數據,瀏覽器可以直接向web服務器發出數據查詢請求,而應用服務器只要負責把數據寫入數據庫即可,不參與客戶端獲取數據庫中的數據這一過程。對實時數據,瀏覽器通過頁面內嵌的activex控件,直接與應用服務器通信,而web服務器和數據庫服務器對此將一無所覺。
2.2 browser/server結構的工業信息監控系統
b/s結構的工業信息監控系統是c/s結構的延伸,它們的網絡結構基本相同,只是服務器端的功能更加分散,基本框圖如圖1所示。
工業信息監控系統采用b/s模式,客戶端直接通過瀏覽器與服務器端進行動態交互,而c/s模式采用的是事件驅動方式。各子站得到現場控制單元的實時信息,并將其寫入數據庫服務器保存,web服務器將數據庫服務器的實時數據動態發布到網上,客戶端便能通過瀏覽器方便的得到這些實時信息;另一方面,客戶端的控制信息也可以通過web服務器寫入各子站,再由子站將數據寫入現場設備,實現遠程控制。b/s模式下瀏覽器代替專門的客戶端軟件,用戶通過瀏覽器獲得自己權限內的企業內部數據信息,同時做出決策。按照tcp/ip通信協議和www規范,通過嵌在web頁面activex控件對數據端口的訪問,實現現場數據的遠程采集,同時根據采集的信息發出相應的指令對現場設備進行控制。因此,系統的開放性得到很大提高,開發與維護更加方便。
3 基于b/s結構的遠程控制實例
本文研究開發了一套基于plc和交流變頻器的實時遠程控制系統,該系統集工控組態軟件、plc技術、變頻控制技術,網絡通信技術于一體。
3.1 系統總體結構
本系統是一個雙容水箱水位實時檢測和控制系統,采用一般化的監控系統分層結構,整個系統分成三級:現場控制級(plc)、上位機監控級(服務器)、遠程控制級(客戶)。實驗臺實現以下功能:
(1)通過對下位機(plc)的程序設計,使其能實現對水位的pid控制和模糊控制。
(2)通過通訊電纜實現下位機(plc)與上位機(組態王)的通訊。
(3)通過對上位機工控軟件的開發,使其能采集現場數據,并將客戶端的用戶信息寫到下位機(plc)。
(4)遠程客戶與上位機通過實驗室局域網通信,使遠程客戶能瀏覽水位實時趨勢圖和歷史趨勢圖,并能進行控制參數的調節,選擇控制方式,以及緊急事故處理(啟停泵)系統框圖如圖2所示。
3.2 系統硬件配置
整個水位網絡控制系統的工藝流程的設計如下所述:通過plc控制程序對水位進行pid控制和模糊控制,把運算的結果輸出到變頻器,來控制交流馬達的啟停和轉速,從而水位穩定在設定值,此外通過plc與組態王的通信,以及遠程客戶機與上位機的通信,實現在遠程客戶端對給定值,高限,低限的設置,以及控制方式的選擇,控制參數的調整,并通過報警圖,趨勢圖對水位進行監控。系統硬件具體配置如附表所示。
3.3系統軟件配置
由上述的網絡結構,整個系統分成三個層次,其軟件設計也由三個部分組成:
(1)現場控制層軟件設計:在這一部分要實現的功能是水位信號的采集、pid控制算法的實現、模糊控制算法的實現、控制信號的輸出等。選用的控制器是西門子s7-300系列的可編程邏輯控制器,因此選擇與之配套的編程軟件step7,它可使用梯形邏輯,功能塊圖或語句表。利用step7編制控制程序,調試成功后將程序寫入plc,這樣plc就可以脫機運行了。通過實驗,驗證了這一控制方案,控制精度高,運行平穩,抗干擾能力強。
(2)上位機軟件設計:這一部分主要是作為遠程客戶機與下位機(plc)通信的橋梁,一方面負責采集plc數據,并將其傳送給遠程客戶機,另一方面,接收遠程客戶機的控制信息,并將其寫入plc。組態王自帶s7-300的驅動程序,能方便地得到plc數據,并且其網絡功能較強,能快速實現基于 tcp/ip協議的網絡通信,因此,我們采用組態王作為上位機軟件開發環境。
(3)遠程客戶端軟件設計
這一部分主要是實現與上位機的通信以及監控畫面的開發,為了便于實現與上位機的通信,采用統一的開發環境—組態王,將整個應用程序分配給多個服務器,用以提高項目的整體容量結構并改善系統的性能。服務器的分配可以是基于項目中物理設備結構或不同的功能,用戶可以根據系統需要設立專門的io服務器、歷史數據服務器、報警服務器、登錄服務器和web服務器等。
3.4 網絡控制的實現及安全管理
因為組態王是完全基于網絡的,是一種真正客戶/服務器模式,因此可以將“組態王”安裝在網絡版windows98/2000或nt上,并在配置網絡時綁定tcp/ip協議,即可利用其網絡功能實現遠程控制。
在本系統中我們利用實驗室原有的局域網,將其中1臺作為服務器,通過串行口與下位機(plc)相連,并將該機網絡標識設為server,其余計算機作為遠程客戶,將其網絡標識分別設為client1、client2等,各主機安裝統一的操作系統windows2000,且都安裝組態王6.0。完成網絡連接之后,對各個站點設置網絡參數,并且定義在網絡上進行數據交換的變量,報警數據和歷史數據的存儲和引用等等。
在此系統中,程客戶端除了可以實時監控雙容水箱的水位控制情況外,利用網絡的回寫功能,還可以實現遠程修改p、i、d參數,以提高控制效果。為確保系統的安全運行,每個參數都有一定的修改權限,只有擁有該權限的用戶才能修改,這樣就確保了網絡控制的安全有效性。
4 結束語
本文客戶/服務器模式和瀏覽器/服務器模式進行了分析比較,提出了基于瀏覽器/服務器模式的網絡架構。并以實驗室雙容水箱水位控制系統為研究對象,深入研究了組態軟件—組態王的網絡功能,并利用該組態軟件實現了網絡遠程控制,進而證明了利用b/s模型進行網絡控制的有效性。