siemens x
DCS

基于虛擬機技術的DCS仿真系統(tǒng)設計與實現(xiàn)

2025China.cn   2014年03月21日

  隨著工業(yè)的發(fā)展,DCS(DistributedControlSystem)的應用越來越廣,但是由于DCS本身的分散控制集中管理的特點必然導致其存在一定的復雜性,不會像普通系統(tǒng)那樣容易使用,所以在DCS產(chǎn)生的同時,相應的仿真系統(tǒng)也應運而生。

  1現(xiàn)有DCS仿真系統(tǒng)

  DCS仿真系統(tǒng)是將真實DCS在非DCS的計算機系統(tǒng)中重現(xiàn)(純軟件),不會涉及到底層硬件,完全可以運行在普通的PC環(huán)境中?;谶@種與硬件無關的特性,仿真系統(tǒng)可應用于操作人員的培訓和前期的工程調(diào)試。所以,DCS仿真系統(tǒng)的仿真程度直接影響到后期的實際操作。

  目前主要存在兩種方式:(1)保留原有的集散控制系統(tǒng)軟件和硬件,接入一個只限于實現(xiàn)過程仿真的仿真計算機,即激勵(Stimulation)方式;(2)全范圍各個部分的仿真,用軟件模擬硬件的方式仿真其人機界面,而不必復制其所有功能,即仿真(Simulation)方式。

  上述兩種方式中,激勵方式的軟硬件仿真程度較高,但實現(xiàn)復雜,與模型連接也很困難。相對來說仿真方式比較容易實現(xiàn),軟件實現(xiàn)整個過程靈活性較強,可以運用于不同的環(huán)境,同時便于系統(tǒng)升級。

  2基于虛擬機技術的DCS仿真系統(tǒng)

  在各個環(huán)節(jié)使用軟件實現(xiàn)對DCS的仿真,然而DCS中很多軟件已經(jīng)運行在PC機上,尤其是操作人員使用的上位機軟件,這部分完全可以直接使用,不必額外仿真,具體操作在實際DCS中與DCS仿真系統(tǒng)中都完全一樣,并使得硬件及其相關硬件也能得到完全模擬?;谔摂M機技術的DCS系統(tǒng)實現(xiàn)的是硬件以及與硬件相關部分的仿真,即可以在PC環(huán)境中再現(xiàn)DCS。

  Level2的工程師站、操作員站均運行在PC環(huán)境中,Level1及Level0是硬件相關的部分??刂破魇钦麄€DCS中最為重要的環(huán)節(jié),對上起著接受操作命令和反饋現(xiàn)場數(shù)據(jù)的作用;對下起著傳遞命令和采集現(xiàn)場數(shù)據(jù)的作用。目前最簡單的控制器仿真是將控制器程序移植到PC環(huán)境中,這樣不僅改變了控制器程序,也丟失了一部分硬件特性,同時會隨著控制器程序的不斷升級而頻繁升級,并需要時刻保持與控制器程序?qū)R。

  而基于虛擬機技術的DCS仿真系統(tǒng)則是把仿真目標放在了控制器本身,而不是控制器程序。在PC中實現(xiàn)一個虛擬的主控制器,控制器程序可以直接運行在虛擬控制器中,使得控制器程序的升級只需要簡單的替換鏡像文件。只有當硬件出現(xiàn)升級的時候,才需要對虛擬控制器進行升級。硬件穩(wěn)定性相對較高,不會出現(xiàn)頻繁地升級。

  Level0的硬件模塊內(nèi)部邏輯比較簡單,可以使用LabVIEW實現(xiàn)虛擬設備。虛擬控制器將輸出值傳送給虛擬設備,最終虛擬設備根據(jù)輸出值在顯示面板中作相應的顯示,同時虛擬設備也可以將自身的某些值傳給虛擬控制器。

  綜上所述,整個基于虛擬機技術的DCS仿真系統(tǒng),是由Level2的實際軟件、Level1虛擬控制器以及實際的控制器軟件和Level0虛擬設備模塊組成。由此可以看出,難點是虛擬控制器的實現(xiàn)。

  3虛擬控制器的實現(xiàn)

  虛擬機的實現(xiàn)主要有兩種方式:(1)主要由軟件完全模擬目標平臺的每一條指令,所以稱為指令集虛擬機ISA(InstructionSetArchitecture),又因為是完全模擬所以又稱模擬器;(2)借助于特定平臺和OS環(huán)境,利用VMM(VirtualMachineMonitor)程序為用戶提供一個高效的虛擬執(zhí)行環(huán)境,其主要特點就是執(zhí)行效率高。由于使用了宿主操作系統(tǒng)的特性對功能進行了虛擬,所以稱為功能級或者抽象級虛擬機,也屬于一種仿真技術。

  目前控制器的結(jié)構主要包括了CPU、內(nèi)存、網(wǎng)卡、Flash、DOC、雙口RAM、SRAM以及各種端口。其中許多特定的硬件需要模擬,所以選擇指令集虛擬機技術設計虛擬控制器。

  (1)CPU模塊包括實現(xiàn)指令的模擬和各個寄存器的實現(xiàn)。

  (2)內(nèi)存模塊主要實現(xiàn)內(nèi)存的模擬,其大小在虛擬控制器啟動時確定,運行期間不能改變。

  (3)網(wǎng)卡模塊主要實現(xiàn)虛擬控制器的網(wǎng)卡,使得虛擬控制器可以通過網(wǎng)絡發(fā)送和接收數(shù)據(jù)。

  (4)存儲模塊相當于實現(xiàn)了虛擬機的存儲介質(zhì),例如Flash、DOC、電子盤等。

  (5)SRAM模塊實現(xiàn)控制器用于掉電保護的SRAM,并用于虛擬機的數(shù)據(jù)掉電保護。

  (6)雙口RAM模塊主要模擬控制器與DP主卡交互數(shù)據(jù)的雙口RAM。

  (7)端口模塊實現(xiàn)控制器上的各個端口,虛擬控制器需要從端口讀取站號,單雙機狀態(tài)、LED燈狀態(tài)和其他狀態(tài)。

  (8)顯示模塊主要模擬類似顯示器的作用。

  (9)主板模塊在整個虛擬控制器起著協(xié)調(diào)作用,具有配置整個虛擬控制器的硬件特性,其中還包括定時器。

  虛擬控制器在啟動時,先讀取硬件配置信息,如內(nèi)存大小、硬盤大小、網(wǎng)卡數(shù)目及其配置信息。根據(jù)配置情況分配資源、初始化各個設備、讀取鏡像文件,然后進入指令執(zhí)行階段。此階段為循環(huán)執(zhí)行,直到虛擬控制器被執(zhí)行關機操作。當有關機動作時,中斷捕獲后交由相應的中斷處理模塊。首先需要釋放啟動時申請的資源,然后才能退出。同時還存在其他中斷,如屏幕輸出、鍵盤輸入等,具體流程如圖3所示。

  虛擬控制器不僅應用于DCS仿真系統(tǒng)中,也可以用于調(diào)試運行控制器上的嵌入式操作系統(tǒng)中,分析操作系統(tǒng)性能。只需在虛擬控制器各個模塊加入統(tǒng)計信息,就可計算控制器程序及其嵌入式操作系統(tǒng)的運行情況,例如在指令集中加入統(tǒng)計信息,并運行操作一段時間后,即可以統(tǒng)計出操作系統(tǒng)主要指令的集中部分。這種虛擬機技術還有其他用途,比如可以做病毒分析,基于這種技術的應用(也稱虛擬機技術)是一種啟發(fā)式探測未知病毒的反病毒技術,能夠有效地檢測出未知病毒及危險代碼。

(轉(zhuǎn)載)

標簽:DCS 控制器 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道