摘 要:由于技術(shù)發(fā)展,DCS廠家都開始使用PC級作為DCS控制系統(tǒng)的上位機,使得PC機上的虛擬機技術(shù)得以在DCS工作中得到應用。本文主要介紹虛擬機技術(shù)在DCS工作中的幾項能夠大幅提升工作效率的應用。如:用虛擬機創(chuàng)建便攜的DCS編程平臺;用虛擬機簡化DCS代碼調(diào)試的過程;用虛擬機解決同一臺電腦維護多個DCS項目的問題。這些虛擬機在DCS中的應用可以大幅提高工作效率,且過程并不算復雜,十分適合具有類似DCS維護工作的企業(yè)借鑒。
關(guān)鍵詞:虛擬機;DCS XP;操作系統(tǒng);應用維護
1 引言
早期的DCS是一套完全獨立的系統(tǒng),無論是下位的控制站還是上位的操作站以及在其上運行的軟件,都是DCS廠家完全獨立開發(fā),與PC機 [個人計算機]并無交集。但近年來,隨著PC機技術(shù)的突飛猛進,功能越來越強大的PC機完全可以勝任DCS上位操作站的需要,DCS廠家逐步使用PC機作為DCS控制系統(tǒng)的上位機。目前,各家DCS的操作站已完全使用PC機了。這樣一來,在PC機平臺上早就已經(jīng)發(fā)展成熟的虛擬機技術(shù)便在DCS工作中有了用武之地。本文主要介紹虛擬機技術(shù)在DCS工作中的應用。
2 虛擬機技術(shù)簡介
我們所說的虛擬機是由Virtual Machine直譯過來的。計算機的存在就是為了運行程序,假如我們把一臺正在運行的物理計算機系統(tǒng),包括操作系統(tǒng)及其在上面安裝和運行的程序,看做是一個程序運行環(huán)境;那么虛擬機技術(shù)就是:通過計算機模擬,在一個軟件內(nèi)再現(xiàn)這個程序運行環(huán)境的技術(shù)。
通過虛擬機軟件,你可以在一臺物理計算機上模擬出另一臺或多臺虛擬的計算機,這些虛擬機完全就像真正的計算機那樣進行工作。對于你而言,它只是運行在你物理計算機上的一個應用程序,但是對于在虛擬機中運行的應用程序而言,它就是一臺真正計算機。
在虛擬機環(huán)境內(nèi)能夠安裝操作系統(tǒng)、運行應用程序,同樣可以運行DCS的上位機運行、組態(tài)環(huán)境以及控制器仿真。
3 虛擬機與操作系統(tǒng)支持的問題
近年來計算機技術(shù)的發(fā)展日新月異,計算機軟硬件的更新?lián)Q代也越來越快。一套新開發(fā)的DCS系統(tǒng)的大致服役年限至少是十年,但是這個時間足夠PC機的操作系統(tǒng)升級好幾次了,很多問題應運而生。
3.1 操作站現(xiàn)存的更替問題
我目前所維護的大多數(shù)DCS控制系統(tǒng)上位機軟件都是運行在Windows XP甚至更老的操作系統(tǒng)下的。Windows XP操作系統(tǒng)雖然是微軟生命周期最長的操作系統(tǒng),但是微軟也已經(jīng)在2014年停止對其的更新。而各硬件制造廠商也從2015開始逐步放棄了對XP操作系統(tǒng)的硬件支持,所以現(xiàn)在新購買的PC機是無法安裝Windows XP以及更老的操作系統(tǒng)的。
這些控制系統(tǒng)的下位控制站都是可以正常運行的,僅因上位操作站的維護的問題而整體進行改造無疑是不明智的。作為DCS維護人員,應該盡可能的延長這些DCS控制系統(tǒng)的生命周期。
3.2 目前使用的穩(wěn)妥的解決辦法
一般常見的辦法當然是以修代買:大部分的工業(yè)操作站都是使用的品牌電腦,所以一部分不算太舊的型號雖然停產(chǎn),不過售后部門還是有部件存貨可以進行修理。
問題嚴重的是10年以上的電腦型號,因為廠家?guī)缀跻呀?jīng)沒有部件存貨,很難找到備件進行修理。而且這部分電腦,都是達到使用年限的就算你修理了出問題的部件,那么其它部件也會相繼出問題,所以整機幾乎沒有修理價值,只能設法尋找可以安裝Windows XP操作系統(tǒng)的辦公電腦或者其他用途的電腦來更換操作站。
3.3 虛擬機的作用被工業(yè)控制系統(tǒng)的安全性所限制
因為虛擬機的“虛擬性”,所以虛擬機可以無視硬件區(qū)別,只要可以運行虛擬機軟件,那么都可以在虛擬機內(nèi)部環(huán)境安裝Windows XP操作系統(tǒng)。
毫無疑問,虛擬機環(huán)境是可以運行DCS上位機軟件的,無論是運行狀態(tài)還是組態(tài)狀態(tài)都可以。但DCS上位軟件可能會使用一些未公開的硬件或使用一些虛擬機不支持的指令,未經(jīng)過安全性、穩(wěn)定性、兼容性的測試,在現(xiàn)場使用虛擬機環(huán)境的操作站還是具有一定風險的?;S的安全要求非常高,除非情況迫不得已,不能將虛擬機環(huán)境下安裝的操作站接入具有真實物理控制器的網(wǎng)路。
但是,如果要在不能安裝Windows XP的PC機上進行DCS軟件調(diào)試、組態(tài)數(shù)據(jù)查詢、DCS組態(tài)教學等,虛擬機就能排上用場了。
由于篇幅問題,在此不詳細介紹在虛擬機上安裝、配置Windows XP操作系統(tǒng)并且安裝組態(tài)軟件的過程。相關(guān)教程可以在互聯(lián)網(wǎng)上查詢到。
4 DCS編程環(huán)境的特性
進行過DCS維護的人都應該明白,DCS的組態(tài)編程、參數(shù)查詢、模擬測試都需要在特定的環(huán)境中進行才可以。這個環(huán)境也就是我們常用的DCS編程環(huán)境。為了將虛擬機技術(shù)更好的應用于DCS維護,我們先對DCS維護必不可少的DCS編程環(huán)境作一些分析。
4.1 編程環(huán)境搭建的復雜性
DCS維護人員的大部分工作都是在這個組態(tài)環(huán)境中進行的。而這個組態(tài)環(huán)境的搭建需要以下這些步驟:
需要安裝特定的組態(tài)軟件,一般由DCS廠家以光盤的形式提供,無法從互聯(lián)網(wǎng)獲取;大部分組態(tài)軟件都需要授權(quán)才能使用,授權(quán)的激活一般都比較麻煩;經(jīng)過授權(quán)的組態(tài)軟件,還需要一些操作系統(tǒng)和組態(tài)軟件本身的參數(shù)配置,否則無法正常運行;配置好的組態(tài)環(huán)境需要導入工程文件才能進行組態(tài)編程。
搭建組態(tài)環(huán)境的這些步驟,不同DCS廠家的難易度不同。就算相對比較簡單的CS3000控制系統(tǒng),讓經(jīng)驗豐富的人員從安裝操作系統(tǒng)到完全配置完畢也至少需要2~3個小時的時間。對于熟悉的維護人員來說也許不難,但是對于新手來說還是非常復雜的。
4.2 編程環(huán)境的用途
搭建編程環(huán)境的目的可以大致分配以下幾種:在控制室對正在運行的物理控制器進行的相關(guān)操作;在辦公室查詢已有項目的相關(guān)參數(shù),或者代碼改寫;對新建設的項目進行代碼編寫與調(diào)試;在教學中用于DCS編程環(huán)境的相關(guān)教學。
除第一種情況需要使用編程環(huán)境直接連接真實的物理控制器,安全級別的要求比較高;其他的幾種情況下都可以使用虛擬機內(nèi)搭建的編程環(huán)境。
4.3 組態(tài)軟件授權(quán)簡介
組態(tài)軟件的授權(quán)從功能上,可以分為以下兩種:運行版-可以運行操作站上位軟件的環(huán)境叫做運行環(huán)境;開發(fā)版-可以編程、組態(tài)的上位軟件環(huán)境叫做編程環(huán)境。
不同DCS廠家的編程、運行環(huán)境各不相同。有的廠家開發(fā)版包含運行版;有的廠家開發(fā)版與運行版需要分別購買。
組態(tài)軟件的授權(quán)從授權(quán)安裝過程來分,有以下三種:不需要激活的軟授權(quán)-僅需要輸入序列號或者拷貝授權(quán)文件就可以使用。如:CS3000系統(tǒng);需要激活的軟授權(quán)-輸入序列號后獲得機器碼,然后通過廠家獲取激活碼才能使用。轉(zhuǎn)移授權(quán)需要使用機器碼,用授權(quán)碼將授權(quán)轉(zhuǎn)移至新電腦,同時老電腦解授權(quán)。如:Cimplicity HMI上位軟件;硬授權(quán)-使用物理媒介作為授權(quán)。如:InTouch上位軟件的USB硬狗。
5 虛擬機技術(shù)的應用
如上文所說,在脫離物理控制器硬件,且安全性要求不高的幾種情況下,我們就可以放開手腳使用虛擬機搭建編程環(huán)境了。
首先,安裝虛擬機軟件VMware Workstation,創(chuàng)建新的虛擬機鏡像。配置虛擬機屬性,設置內(nèi)存硬盤等數(shù)值,由于Windows XP的所需配置比較低,全部使用默認值即可。然后安裝Windows XP,以及DCS組態(tài)軟件。以上這些步驟的相關(guān)教程可以在百度百科內(nèi)查詢到,這里不再贅述。
虛擬機在DCS維護的使用中有這么多的限制,那么它有哪些優(yōu)點呢?
5.1 讓組態(tài)環(huán)境使用簡單便于攜帶
往常我們安裝DCS組態(tài)環(huán)境,都是一件重復的工作。但是配置虛擬機環(huán)境下的DCS組態(tài)環(huán)境,幾乎可以一勞永逸。在第一次相對比較麻煩的安裝配置之后,我們每次使用都不再需要重復安裝以及環(huán)境配置的復雜過程,只需要拷貝已經(jīng)配置好的虛擬機,打開運行即可。
如果由于出差或者其他原因,要在一臺新電腦上進行DCS維護工作。以往我們要攜帶非常多的東西,比如:安裝包、授權(quán)、環(huán)境配置信息、工程備份等等;還需要花費很長時間將它們整合在一起才能開始工作。而使用虛擬機環(huán)境,你僅需要兩樣東西:虛擬機安裝包,虛擬機鏡像;而且使用它們完全不需要配置,安裝完虛擬機軟件打開鏡像即可。
5.2 讓代碼調(diào)試更加簡單方便
其一,在進行代碼調(diào)試的時候,我們經(jīng)常需要測試某一特定狀態(tài)下,代碼對不同輸入條件的響應。比如,重置跳車聯(lián)鎖,對跳車條件逐個測試。而這個特定條件,往往需要重復很多步驟花費不少時間來構(gòu)建。
這種情況下我們可以使用虛擬機的鏡像功能,對重置好的聯(lián)鎖狀態(tài)用虛擬機鏡像來保存。測試完一個聯(lián)鎖條件,使用快捷鍵恢復鏡像就可以還原到聯(lián)鎖未觸發(fā)的狀態(tài),不用手動去重置很多條件來建立初始測試狀態(tài)。
其二,現(xiàn)在大部分的DCS組態(tài)軟件,都自帶了代碼測試環(huán)境,也就是仿真??梢允褂肞C機模擬物理控制器進行代碼測試。不過打開仿真后要將仿真環(huán)境配置到可以調(diào)試代碼的狀態(tài)比較麻煩,需要調(diào)整很多工藝參數(shù),聯(lián)鎖條件以及各種設定值。不可避免的,意外關(guān)機或者其他原因需要轉(zhuǎn)移調(diào)試用的電腦,則搭建好的測試環(huán)境就必須關(guān)閉,再次搭建測試環(huán)境又要重復很多工作。而使用虛擬機環(huán)境進行代碼調(diào)試則可以輕松的的保存測試環(huán)境,并且可以復制到任何你想要工作的電腦上。
其三,一些工程調(diào)試,需要不止一臺電腦共同進行代碼調(diào)試,則需要對多臺電腦配置測試環(huán)境,并且使用交換機物理聯(lián)網(wǎng)才能進行工作。無論是硬件設置還是每臺電腦的配置都非常麻煩。而且無法輕易的移動配置好的測試環(huán)境。使用虛擬機則可以在一臺電腦上完成這些工作,因為虛擬機可以在一臺電腦上模擬出多臺虛擬計算機環(huán)境,并且通過設置將這些虛擬計算機聯(lián)網(wǎng)。同時,由于虛擬機的便攜性。這個測試環(huán)境可以輕松的轉(zhuǎn)移到你調(diào)試代碼的地方。比如,回家后加班調(diào)試代碼,或者將調(diào)試環(huán)境帶到現(xiàn)場進行比對。
5.3 解決DCS組態(tài)軟件授權(quán)的保存與導入
上文提到了,DCS組態(tài)軟件的授權(quán)方式分為三種;其中第一種和第三種的授權(quán)保存都比較簡單。但是,第二種需要廠家激活的授權(quán)方式,其授權(quán)的保存很難。因為授權(quán)是保存在正在使用的操作站硬盤內(nèi)的,如果現(xiàn)場操作站損壞,授權(quán)就無法導出,但是導出后現(xiàn)場操作站就無授權(quán)沒法使用。
即便對已經(jīng)授權(quán)的操作站作了硬盤Ghost鏡像,但是Ghost鏡像只能還原到硬件相同的電腦內(nèi)才能使用。但是如果現(xiàn)場的電腦損壞,是很難找到相同配置的電腦來還原鏡像的。必須重新聯(lián)系軟件廠家進行新電腦的授權(quán)激活,而這個過程也很麻煩。
這種比較麻煩的情況,也可以通過虛擬機來解決。首先,將正常使用操作站授權(quán)導入至安裝好軟件的虛擬機內(nèi),正常使用的操作站會解授權(quán)。其次,對已經(jīng)授權(quán)好的虛擬機進行鏡像操作,保存當前虛擬機狀態(tài)。再次,將虛擬機的授權(quán)轉(zhuǎn)移至現(xiàn)場操作站,虛擬機內(nèi)的軟件解授權(quán)。最后,還原虛擬機鏡像至激活狀態(tài)。這樣,我們就得到了一個正常使用的操作站以及一臺可以授權(quán)別的電腦的虛擬機鏡像。而且,最重要的是:這個虛擬機鏡像可以在任何一臺電腦上運行,不會因為PC機的硬件更新導致授權(quán)無法導出。
5.4 用一臺電腦維護多個DCS項目
由于DCS工程項目及相關(guān)資料的重要性,會使用性能不錯,安全性比較高配置有RAID 1磁盤陣列的PC機來保存多個工程的工程備份、軟件安裝包及其相關(guān)技術(shù)資料。如果能夠使用其同時進行項目維護工作,參數(shù)查詢再好不過。但是由于技術(shù)原因,以往無法在同一臺電腦上同時展開多個工程文件;需要多臺計算機才能展開工程文件對工程內(nèi)部參數(shù)進行查詢等操作。
因為不同DCS廠家的軟件全部安裝在同一臺電腦上進行維護工作很難。且不說安裝了多個工程軟(下轉(zhuǎn)第102頁)(上接第99頁)件的操作系統(tǒng)本身就會因為運行過多的后臺進程而緩慢無比,單是多個工程軟件相互影響之下系統(tǒng)是否能正常工作都是大問題,更無法進行正常的計算機操作。這時就完全可以利用虛擬機技術(shù),來解決這個問題。
對每個DCS項目分別建立一個虛擬機安裝相應的組態(tài)軟件,用于DCS項目文件的展開。由于安裝在虛擬機內(nèi)部的DCS組態(tài)軟件不會影響到虛擬機外部物理計算機,所以真實計算機的速度不會被冗長的組態(tài)軟件拖慢;而且各個虛擬機之間完全隔離,不會相互影響,不會因為兼容問題無法正常運行。
這樣一來,就可以讓保證物理計算機流暢運行的情況下,在不同的虛擬機環(huán)境下運行不同的DCS工程,可以隨時查詢工程內(nèi)部代碼和參數(shù)。從而達到同時進行多個DCS項目的工作,而不相互影響的目的。
5.5 便于維護的教學環(huán)境
前文已經(jīng)提到,DCS組態(tài)環(huán)境的搭建比較復雜。如果用于教學的DCS組態(tài)環(huán)境的搭建,無疑更是復雜的重復勞動。而使用虛擬機,則可以快速搭建擁有很多臺電腦的教學環(huán)境。
而因為學習人員技術(shù)水平層次不齊,且比較愛折騰,教學用的電腦系統(tǒng)非常容易損壞。如果使用常規(guī)模式進行維護,工作量巨大。但使用虛擬機搭建的教學用DCS組態(tài)環(huán)境,由于虛擬機的鏡像性,所以恢復起來也非常簡單。
6 后記
隨著DCS控制系統(tǒng)與PC機、虛擬機同步發(fā)展,虛擬機在DCS維護中可以應用到的地方會越來越多。本文僅淺顯介紹了虛擬機在DCS維護過程中的幾種簡單應用。通過在實際中的對這幾種虛擬機的應用,大幅提高了DCS系統(tǒng)的維護效率以及降低了維護難度。具有類似DCS維護工作的企業(yè),完全可以采用這些方法大幅提升DCS 的維護效率。
參考文獻:
[1]呂新榮,紐俊.利用VMware構(gòu)建計算機系統(tǒng)維護實驗平臺[J].浙江工商技術(shù)學院學報,2006,7:45-47.
作者簡介:
畢嘯?。?982- ),男,本科學歷,工程師,2005年畢業(yè)于西安電子科技大學計算機科學與技術(shù)專業(yè),現(xiàn)任陜西渭河煤化工集團有限責任公司計控電儀部副主任工程師,主要負責DCS系統(tǒng)的管理與維護。