1 引言
控製係統是集計算機技術、控製技術、網絡技術為一體的產品,具有控製功能強、操cao作zuo簡jian便bian和he可ke靠kao性xing高gao等deng特te點dian,它ta可ke以yi方fang便bian地di用yong於yu工gong業ye裝zhuang置zhi的de生sheng產chan控kong製zhi和he經jing營ying管guan理li。結jie合he網wang絡luo技ji術shu的de發fa展zhan,各ge種zhong先xian進jin的de技ji術shu不bu斷duan湧yong現xian,例li如ru遠yuan程cheng控kong製zhi、遠程製造等。本文以實驗室遠程控製技術為基礎應用於工業現場,設計了一種基於網絡的工業遠程控製係統。
2 係統構成框圖
本工業遠程控製係統的總體框圖如1所示。
圖1 係統框圖
3 遠程控製網絡結構的具體實現
3.1 現場控製設備
本文的設備層主要包括:THJ-2型高級過程控製係統、SIEMENS變頻器、智能數顯表、各種傳感器、SIEMENS PLC S7-200以及智能采集模塊等。在這些設備中SIEMENS PLC S7-200充當下位機作為控製器,它是現場設備層與現場控製計算機層的橋梁。SIEMENS PLC S7-200通過PC/PPI電纜與工控機的RS-485相連。S7-200 CPU將一個微處理器、一個集成電源和數字量I/O點集成在一個緊湊的封裝中,從而形成了一個功能強大的微型PLC,當下載程序後,S7-200就可以按照邏輯關係控製I/O設備從而實現應用要求。還可利用多種類型的擴展模塊來完善其CPU的功能。該係統中膨化罐的溫度、重量、壓力均用模擬量輸入/輸出模塊EM235來控製。
3.2 現場控製計算機
本係統的現場控製計算機使用的是研華工控機,在硬件方麵它本身帶有RS-485接口,同時支持ISA、PCI類型的數據采集板卡,很方便就能與現場設備連接。本機在軟件方麵裝有設備專用的編程軟件,進行開發、編輯和控製自己的應用程序來控製可編程控製器。例如STEP 7-Micro/WIN編程軟件來編輯應用程序,控製S7-200數字量/模擬量輸入輸出控製,還裝有組態軟件-MCGS 6.0網絡版完成控製畫麵以及SQL Server 2000完成數據存儲。
1、工業控製計算機與THJ-2高級型過程控製裝置的通訊
本實驗裝置與工業控製計算機的通訊采用RS485串口通訊協議,通過在工控機上安裝RS232/485轉換板卡把工控機RS232通訊協議下的信號轉換成RS485通訊協議下的信號,利用儀表控製台側部的RS485串行接口同所有儀表進行通訊。采用二線製雙絞線進行通訊。
工控機上裝有MCGS組態軟件,在組態軟件的設備窗口中,在設備工具箱中加入AI係列智能儀表的驅動程序,首先雙擊設備工具箱中的通用串口設備,然後再雙擊不同型號的AI係xi列lie智zhi能neng儀yi表biao驅qu動dong,使shi它ta們men掛gua接jie在zai通tong用yong串chuan口kou設she備bei下xia,通tong用yong串chuan口kou設she備bei的de參can數shu設she置zhi應ying當dang和he智zhi能neng儀yi表biao的de參can數shu設she置zhi相xiang一yi致zhi,包bao括kuo最zui小xiao采cai集ji周zhou期qi,通tong訊xun波bo特te率lv等deng,通tong用yong串chuan口kou設she備bei的de參can數shu設she置zhi應ying當dang和he智zhi能neng儀yi表biao的de參can數shu設she置zhi相xiang一yi致zhi,包bao括kuo最zui小xiao采cai集ji周zhou期qi,通tong訊xun波bo特te率lv等deng。
2、數據庫服務器
在zai現xian代dai化hua的de工gong業ye生sheng產chan現xian場chang,由you於yu大da量liang使shi用yong各ge種zhong類lei型xing的de控kong製zhi設she備bei,因yin此ci,通tong常chang會hui產chan生sheng大da量liang的de生sheng產chan數shu據ju。這zhe就jiu要yao求qiu構gou成cheng控kong製zhi係xi統tong核he心xin的de組zu態tai軟ruan件jian具ju備bei強qiang大da的de數shu據ju處chu理li能neng力li,從cong而er有you效xiao、合理地將這些生產數據加以處理,一方麵,為現場操作員提供實時、可靠的圖象、曲線等,以反映現場運行的狀況並方便其進行相應的控製操作;同時,也需要為企業的管理人員提供各種類型的數據報表,為企業管理提供切實可靠的第一手資料。通過MCGS組態軟件可以完成數據的初步處理,該組態軟件將數據處理過程分為三個階段,即:數據前處理、實時數據處理以及數據後處理,以滿足各種類型的需要,如下圖2所示:
圖2 數據處理流程
1) 數據前處理。在實際應用中,從硬件設備中輸入或輸出的數據一般是特定範圍內的電壓、電流等物理意義的值,通常要對這些數據進行相應的轉換,才能得到真正具有實際意義的工程數據。例如,從AD通道采集進來的數據一般都為電壓mV值,需要進行量程轉換或查表、計算等處理才能得到所需的工程物理量。MCGS係統對設備采集通道的數據可以進行八種形式的數據處理。各種處理可單獨進行也可組合進行。MCGS的數據前處理與設備是緊密相關的,在MCGS設備窗口下,打開設備構件,設置其數據處理屬性頁即可進行MCGS的數據前處理組態。
2) 實時數據處理。MCGS缺省使用Microsoft Access數(shu)據(ju)庫(ku)作(zuo)為(wei)曆(li)史(shi)存(cun)盤(pan)數(shu)據(ju)庫(ku),用(yong)數(shu)據(ju)庫(ku)技(ji)術(shu)來(lai)管(guan)理(li)和(he)維(wei)護(hu)存(cun)盤(pan)的(de)數(shu)據(ju),存(cun)盤(pan)數(shu)據(ju)庫(ku)的(de)文(wen)件(jian)名(ming)和(he)路(lu)徑(jing)在(zai)主(zhu)控(kong)窗(chuang)口(kou)屬(shu)性(xing)中(zhong)設(she)定(ding),係(xi)統(tong)運(yun)行(xing)過(guo)程(cheng)中(zhong),MCGS自動進行數據存貯操作。這對用戶數據的開放式管理是一種非常有效的方式。但是,使用Access數據庫也受到該數據庫本身特性的製約,特別地,當用戶工程的存盤數據量很大或需要存貯很長時間內的數據時,使用Access數據庫就會因數據庫文件過大而導致性能的下降。
針對上述情況,MCGS提供了數據存盤備份機製,將曆史數據以多個平麵文件的形式存貯在硬盤的指定位置或者通過ODBC連接於其它數據庫。在膨化係統裏使用的是SQL Server 2000數據庫。MCGS可以自動把采集到的數據存入到數據庫SQL Server 2000中。隻需在數據庫服務器上安裝Microsoft SQL Server 2000服務器端組件,用SQL Server 2000提供的SQL Enterprise Manager(企業管理器)gongjulaiwanchengshujukudechuangjian。zaipenghuazhayaoshujukuli。shujukudebiaogenjukongzhicengdexuyaohesheding,zidongzaizhidingshujukuzhongshengcheng。shiyongdezhuyaoshujukubiaoru“膨化炸藥”數據庫中“真空度”。
注意:對dui於yu非fei組zu對dui象xiang類lei型xing的de數shu據ju對dui象xiang,作zuo為wei獨du立li的de對dui象xiang按an變bian化hua量liang存cun盤pan,與yu作zuo為wei組zu對dui象xiang的de成cheng員yuan定ding時shi存cun盤pan,同tong一yi對dui象xiang采cai用yong兩liang種zhong不bu同tong的de存cun儲chu方fang式shi,在zai存cun盤pan數shu據ju文wen件jian內nei是shi存cun儲chu在zai不bu同tong的de地di方fang。單dan個ge數shu據ju對dui象xiang存cun盤pan時shi,數shu據ju值zhi主zhu要yao反fan映ying該gai對dui象xiang的de值zhi隨sui時shi間jian變bian化hua的de情qing況kuang,而er組zu對dui象xiang對dui應ying的de存cun盤pan數shu據ju重zhong點dian在zai於yu記ji錄lu其qi所suo有you成cheng員yuan在zai同tong一yi時shi刻ke的de值zhi。一yi個ge非fei組zu對dui象xiang類lei型xing的de數shu據ju對dui象xiang可ke能neng同tong時shi是shi多duo個ge組zu對dui象xiang的de成cheng員yuan,在zai幾ji個ge地di方fang都dou可ke能neng對dui其qi進jin行xing了le存cun盤pan處chu理li,每mei一yi部bu分fen的de存cun盤pan數shu據ju都dou是shi各ge自zi獨du立li的de。
一(yi)般(ban)情(qing)況(kuang)下(xia)采(cai)用(yong)組(zu)對(dui)象(xiang)存(cun)盤(pan),因(yin)為(wei)組(zu)對(dui)象(xiang)存(cun)盤(pan)時(shi)是(shi)將(jiang)組(zu)對(dui)象(xiang)的(de)所(suo)有(you)成(cheng)員(yuan)都(dou)同(tong)時(shi)存(cun)盤(pan),在(zai)曆(li)史(shi)存(cun)盤(pan)數(shu)據(ju)庫(ku)中(zhong),每(mei)個(ge)組(zu)對(dui)象(xiang)對(dui)應(ying)一(yi)個(ge)數(shu)據(ju)表(biao),其(qi)成(cheng)員(yuan)對(dui)應(ying)相(xiang)應(ying)的(de)字(zi)段(duan)域(yu)。如(ru)果(guo)單(dan)個(ge)變(bian)量(liang)定(ding)義(yi)存(cun)盤(pan),則(ze)在(zai)曆(li)史(shi)數(shu)據(ju)庫(ku)中(zhong)該(gai)變(bian)量(liang)對(dui)應(ying)一(yi)個(ge)表(biao)和(he)字(zi)段(duan)域(yu),如(ru)果(guo)變(bian)量(liang)較(jiao)多(duo)時(shi),則(ze)數(shu)據(ju)庫(ku)中(zhong)的(de)表(biao)會(hui)很(hen)多(duo)。在(zai)實(shi)際(ji)工(gong)程(cheng)應(ying)用(yong)中(zhong),多(duo)個(ge)工(gong)程(cheng)物(wu)理(li)量(liang)之(zhi)間(jian)有(you)聯(lian)係(xi),在(zai)曆(li)史(shi)報(bao)表(biao)、曆li史shi曲qu線xian中zhong需xu要yao把ba多duo個ge變bian量liang對dui應ying的de曆li史shi數shu據ju同tong時shi顯xian示shi出chu來lai,此ci時shi用yong組zu對dui象xiang存cun盤pan保bao證zheng存cun盤pan數shu據ju的de同tong時shi性xing,對dui多duo個ge變bian量liang的de曆li史shi數shu據ju進jin行xing比bi較jiao才cai具ju有you物wu理li意yi義yi。
3) 數shu據ju的de後hou處chu理li。組zu態tai軟ruan件jian中zhong的de數shu據ju的de後hou處chu理li,其qi本ben質zhi上shang是shi對dui曆li史shi存cun盤pan數shu據ju庫ku的de處chu理li。將jiang存cun盤pan數shu據ju庫ku中zhong的de曆li史shi數shu據ju加jia以yi提ti煉lian,得de到dao對dui用yong戶hu真zhen正zheng有you用yong的de數shu據ju和he信xin息xi,然ran後hou,通tong過guo曆li史shi曲qu線xian、曆史表格、Excel報表輸出以及存盤數據瀏覽等功能將這些數據和信息形象地顯示或打印出來。本文中係統使用的就是ASP.NET裏的ADO.NET構件訪問存盤數據,通過ADO.NET讀取SQL Servers數據庫表,以膨化真空度數據為例說明ADO.NET讀取SQL Servers數據的實現。
3.3 Web服務器的實現
Web服務器是整個係統的關鍵,起中轉作用其中主要包括五個進程:登錄界麵,實驗參數設置界,實驗結果顯示界麵,Socket服務器和Socket客戶端程序,其結構見圖3所示。
圖3 Web服務器結構圖
登錄界麵,實驗參數設置界麵和實驗結果顯示界麵都是用ASP.NET建立的動態網頁Socket客戶端程序和Socket服務器程序是用VB.NET編寫,在Web服務器中同時設置Socket的(de)服(fu)務(wu)器(qi)程(cheng)序(xu)和(he)客(ke)戶(hu)端(duan)程(cheng)序(xu)是(shi)為(wei)了(le)將(jiang)修(xiu)改(gai)後(hou)的(de)實(shi)驗(yan)參(can)數(shu)及(ji)時(shi)的(de)送(song)給(gei)工(gong)控(kong)機(ji),實(shi)現(xian)在(zai)線(xian)實(shi)時(shi)調(tiao)節(jie)參(can)數(shu)的(de)功(gong)能(neng)。同(tong)時(shi)工(gong)控(kong)機(ji)送(song)回(hui)的(de)采(cai)樣(yang)值(zhi)被(bei)寫(xie)入(ru)XML文件,實驗參數從參數設置界麵傳給Socket客戶端程序,它們之間采用微軟消息隊列進行通信,是並發執行的。Socket服務器程序將工控機送回的采樣值寫入XML文件,實驗結果顯示界麵同時讀這個文件,並將其中的數據轉換成圖形的形式展現給用戶。
1、使用ASP.NET建立動態頁麵
登錄界麵、實驗參數設置界麵、實驗結果顯示界麵和組態演示界麵都使用ASP.NET來實現的。在實現登錄,參數設置和實驗結果顯示時它們分別使用不同的數據庫而組態演示界麵調用的是ActiveX構件完成。下麵介紹把MCGS組態界麵通過ActiveX構件嵌入到網頁的方法:首先打開VB,創建一個新工程,在ActiveX工具箱中,添加對瀏覽器組件的索引,在窗體上創建一個瀏覽器組件,調整其大小。
2、消息隊列-MSMQ
從(cong)體(ti)係(xi)結(jie)構(gou)中(zhong)可(ke)知(zhi),本(ben)係(xi)統(tong)采(cai)用(yong)的(de)是(shi)多(duo)模(mo)塊(kuai),多(duo)進(jin)程(cheng)的(de)模(mo)式(shi)。為(wei)了(le)提(ti)高(gao)係(xi)統(tong)的(de)速(su)度(du),進(jin)程(cheng)間(jian)需(xu)要(yao)並(bing)發(fa)執(zhi)行(xing)。為(wei)了(le)使(shi)進(jin)程(cheng)間(jian)相(xiang)互(hu)協(xie)調(tiao)的(de)工(gong)作(zuo),必(bi)須(xu)要(yao)有(you)相(xiang)應(ying)的(de)機(ji)製(zhi)來(lai)保(bao)證(zheng)。這(zhe)種(zhong)機(ji)製(zhi)應(ying)該(gai)具(ju)有(you)低(di)耦(ou)合(he)性(xing),高(gao)可(ke)靠(kao)性(xing)的(de)特(te)點(dian)。
微軟消息隊列――MSMQ正是能夠滿足上述條件的一種通信機製,它提供了可靠的異步和鬆散耦合的通信機製。MSMQ實現原理:消息的發送者把自己想要發送的信息放入一個容器中(稱之為message),並將它保存至一個係統公用空間的消息隊列(Message Queue)中;本地或異地的消息接收程序再從該隊列中取出發給它的消息進行處理。由於MSMQ是異步通信,無論是發送方還是接收方都不用等待對方返回成功消息,就可以執行餘下的代碼,這樣就能實現進程的並發執行:消息的格式是用戶自定義的,可以進行簡單的加密:由於MSMQ代表已包裝的服務請求,當要求產生日誌時,隻需自動為相關的日誌隊列產生每個消息的拷貝即可,因此有利於係統的恢複和安全性。
3、DDE方式建立數據交換的過程
本文中的係統使用的是DDE熱鏈接的方式,同時用Excel作為MCGS的數據與瀏覽器數據的中間緩存單元。在MCGS的“實時數據庫”窗口中定義的變量Dat01-Dat100,根據工程的要求部分變量需DDE輸出的,其餘的是DDE輸入的。在MCGS組態環境的“工具”菜單中選取“DDE連接管理”菜單項。
3.4 代理服務器
本係統使用的代理服務器軟件是Sygate,它是一個網關服務器設置軟件,比Wingate設定更容易更好用的軟件。Sygate是一套允許使用者在局域網中,通過國際互聯網連接,分享給整個局域網的使用者,讓兩台以上的電腦,同時上網的好軟件,支持Modem、ISDN、Cable Modem、ASDL等等多種接入,隻需要在局域網中有Modem的電腦上安裝即可,是解決多計算機Internet共享的好軟件。
代理服務除了擁有共享Internet連接的作用外,還可以通過本地計算機硬盤中所保留的緩存來提高訪問速度、節約帶寬的作用。
本文作者創新點:
遠程控製技術是一門綜合性技術,涉及控製、網絡、計算機、數據庫等多個領域。本文從係統集成的角度深入研究設計了基於網絡的工業遠程控製係統,實現了遠程客戶端和Web服務器的設計。
參考文獻:
[1] 薛立,範福玲,劉麗萍.基於Web的遠程控製技術的研究與應用[J].中原工學院學報,2005,6(14):18-23
[2] 李洪寶,曾文方.基於Web的實時信息發布係統的設計與實現[J].計算機應用,2005,19(12):P55-P58
[3] Tony Bain, Denise Gosnell.VB.NET和SQL Server 2000高級編程[M].北京:清華大學出版社,2005:150-192
[4] 劉忠超,何東健,範靈燕. 基於嵌入式Web服務器的溫室遠程監控的研究[J]. 微計算機信息, 2006, 10-2: 141-142