張光昱,吳帆,劉航宇
(中廣核(北京)仿真技術(shù)有限公司技術(shù)開發(fā)部,北京 100094)
基于虛擬DCS的核電站DCS人機(jī)界面仿真技術(shù)方案
張光昱,吳帆,劉航宇
(中廣核(北京)仿真技術(shù)有限公司技術(shù)開發(fā)部,北京100094)
目前實(shí)現(xiàn)核電站模擬機(jī)DCS(Distributed Control System,數(shù)字化分布式控制系統(tǒng))仿真分別根據(jù)DCS的控制設(shè)計(jì)、離線組態(tài)和構(gòu)成運(yùn)行系統(tǒng)等生命周期的不同階段獲取系統(tǒng)資源而分為三種,如圖1所示。
圖1 核電站DCS仿真模型
●激勵(lì)DCS(Stimulation):通常是簡(jiǎn)略輸人/輸出板卡和外設(shè),采用真實(shí)DCS的硬件、軟件和網(wǎng)絡(luò)系統(tǒng)的適當(dāng)或最小配置,再現(xiàn)DCS。激勵(lì)DCS具有最高的軟硬件逼真度,但是軟硬件實(shí)現(xiàn)成本很高,與對(duì)象模型系統(tǒng)連接較難,無法完成復(fù)雜的仿真應(yīng)用功能。
●虛擬DCS(Emulation):在完成 DCS組態(tài)之后,采用對(duì)DCS網(wǎng)絡(luò)下載文件迸行智能編譯轉(zhuǎn)換的方式,實(shí)現(xiàn)DCS的平臺(tái)轉(zhuǎn)移和再現(xiàn)。虛擬DCS應(yīng)具有極高的軟件功能逼真度,實(shí)現(xiàn)成本不高,能夠完成復(fù)雜的仿真應(yīng)用功能。
●仿真DCS(Simulation):只要DCS完成控制功能和邏輯設(shè)計(jì),就可以根據(jù)設(shè)計(jì)圖紙進(jìn)行仿真。仿真DCS是多年來培訓(xùn)仿真系統(tǒng)的通常采用的形式,雖然實(shí)現(xiàn)成本不高、能夠完成復(fù)雜的培訓(xùn)仿真應(yīng)用功能,但軟件功能逼真度和可信度相對(duì)不夠高,跟蹤修改較難,幾乎不能完成人員培訓(xùn)功能以外的高級(jí)應(yīng)用功能。
其中虛擬DCS方式由于無論是控制參數(shù),算法還是流程圖都來源于下載文件,使用與真實(shí)DCS相同或者相似的算法、模塊、時(shí)間片、位號(hào)等,可以同步修改更新,軟件功能的逼真度很高,相比激勵(lì)DCS,其又不用支付過高的軟硬件使用權(quán),因此具有較高的性價(jià)比,本文則針對(duì)虛擬DCS中的虛擬HMI論述一種技術(shù)路線和實(shí)現(xiàn)方式。
DCS主要是由分散處理單元 DPU(Distributed Process Unit)和操作員站人機(jī)界面HMI(Human Ma-chine Interface)構(gòu)成的,兩部分均可以獨(dú)立采用虛擬方式進(jìn)行仿真,而采用虛擬方式對(duì)HMI的仿真即是虛擬HMI。本文將論述把和利時(shí)公司的Hollias的HMI部分轉(zhuǎn)換成自主開發(fā)的NSView上實(shí)現(xiàn)虛擬HMI的一種技術(shù)路線和方案,從而達(dá)到核電站DCS人機(jī)界面仿真的目的。
虛擬HMI的實(shí)現(xiàn)是通過DCS的下載文件(主要是圖形文件),智能轉(zhuǎn)換成可識(shí)別的中間文件(這里用的是XML格式文件),導(dǎo)入到自主開發(fā)的人機(jī)界面平臺(tái)中從而實(shí)現(xiàn)DCS的人機(jī)界面虛擬方式仿真目的。虛擬HMI的實(shí)現(xiàn)主要需要解決圖形文件的解析與轉(zhuǎn)換的問題,其中轉(zhuǎn)換包括動(dòng)態(tài)特性的實(shí)現(xiàn)和交互特性的實(shí)現(xiàn)。圖2展示了實(shí)現(xiàn)虛擬HMI的一個(gè)大致流程。
圖2 虛擬HMI實(shí)現(xiàn)流程
3.1圖形文件解析
圖形文件解析的目標(biāo)是從圖形文件中提取出所有圖元對(duì)象以及其所具備的特性的完備信息,根據(jù)所提取的信息能夠從邏輯上完整的描述和復(fù)原所有圖元對(duì)象以及其所具備的特性,并且在任意其他平臺(tái)復(fù)現(xiàn)圖元對(duì)象以及其所具備的特性。
圖形文件解析一般可以具體細(xì)分為若干類圖形對(duì)象的識(shí)別。圖形文件內(nèi)圖元在內(nèi)存中以都是以對(duì)象形式存在的,在硬盤中則以按照對(duì)象序列化方式保持的。因此一類圖形對(duì)象在一個(gè)圖形文件中可以有多個(gè)實(shí)例化對(duì)象,但同類實(shí)例化對(duì)象在硬盤中的存儲(chǔ)結(jié)構(gòu)是相同的。例如,直線作為最基本的圖形對(duì)象,在一個(gè)圖形文件中可以包含多根直線,但每根直線的文件存儲(chǔ)結(jié)構(gòu)是一致的,不同的是每根直線在每個(gè)存儲(chǔ)單元所存儲(chǔ)的具體屬性數(shù)值。
圖形系統(tǒng)的圖元類型一般有:頁(yè)面圖元、點(diǎn)、直線、弧、矩形、文本、多邊線、曲線、圓角矩形、餅型、Bezier曲線、圖表、圖片、組合圖元、ActiveX控件等;
各圖形對(duì)象一般包含若干數(shù)目的屬性數(shù)據(jù),因此各圖形對(duì)象的解析可以進(jìn)一步細(xì)分為對(duì)各個(gè)屬性數(shù)據(jù)的識(shí)別,要對(duì)圖形對(duì)象進(jìn)行徹底的解析首先必須保證所歸納總結(jié)的屬性數(shù)據(jù)是否充分完整。解析之前應(yīng)根據(jù)所有資料分析出盡量完備的圖形對(duì)象及其屬性數(shù)據(jù)清單,然后在具體文件識(shí)別過程中,針對(duì)碰到的新圖元及新屬性不斷補(bǔ)充和完善。不過圖形文件解析的前提條件是需要有驗(yàn)證平臺(tái),一般來說也就是真實(shí)DCS的工程師站,通過在工程師站上進(jìn)行組態(tài),直接驗(yàn)證解析結(jié)果。
(1)解析步驟
①文件結(jié)構(gòu)解析
圖形文件雖然都是二進(jìn)制文件,但是實(shí)質(zhì)都是對(duì)內(nèi)存中的圖元對(duì)象進(jìn)行序列化保存的結(jié)果,因此其保存方式都有規(guī)律可行。我們首先要對(duì)圖形文件的存儲(chǔ)結(jié)構(gòu)了解清楚。具體解析過程從邏輯結(jié)構(gòu)上說是一個(gè)由粗到細(xì)的過程,從層次結(jié)構(gòu)上是一個(gè)從上到下的識(shí)別過程。其大致的解析步驟為:
●文件頭信息識(shí)別
●各圖元類型邊界識(shí)別,起始、結(jié)束
●動(dòng)態(tài)特性邊界、交互特性邊界識(shí)別
●具體數(shù)據(jù)屬性的識(shí)別
圖3是hollias的圖形文件的基本結(jié)構(gòu)。
通過圖3所示的存儲(chǔ)結(jié)構(gòu),我們可以識(shí)別圖元以及其所具備的各種屬性,從而可以針對(duì)圖元內(nèi)信息進(jìn)行解析?;谠摻Y(jié)構(gòu),我們展開單個(gè)圖元內(nèi)信息的解析。
②圖元內(nèi)信息解析
圖元的信息都是由各種屬性構(gòu)成,各種數(shù)據(jù)具有不同的數(shù)據(jù)類型,這些數(shù)據(jù)類型是數(shù)據(jù)存儲(chǔ)的基礎(chǔ),不同數(shù)據(jù)類型在文件中的存儲(chǔ)方式是不同的。所以在圖形文件中要識(shí)別出各種屬性就首先識(shí)別各種數(shù)據(jù)類型在文件中的存儲(chǔ)方式。
圖3 文件存儲(chǔ)結(jié)構(gòu)示意圖
各種數(shù)據(jù)類型基本與其在語言中定義的長(zhǎng)度一致,通過比較我們解析出Hollias中的圖形文件中數(shù)據(jù)類型的存儲(chǔ)方式如下
●整型數(shù),4個(gè)字節(jié);
●浮點(diǎn)數(shù),4個(gè)字節(jié);
●BOOL型,4個(gè)字節(jié);
●字符串,1+N,第一個(gè)字節(jié)存字符串長(zhǎng)度,后依次存各字符;
●數(shù)組類型,1+N,第一個(gè)字節(jié)存數(shù)組長(zhǎng)度,后依次存各數(shù)組對(duì)象;
●顏色類型,4個(gè)字節(jié),R、G、B值分別存在0-8、8-16、16-24位;
●二進(jìn)型數(shù),位圖對(duì)象存儲(chǔ)
根據(jù)上面的解析結(jié)果來對(duì)照實(shí)際文件中的存儲(chǔ)信息,圖4是圖形文件二進(jìn)制示意圖。
圖4 圖形文件二進(jìn)制示意圖
從圖中我們可以看到各種類型數(shù)據(jù)在二進(jìn)制文件中的存儲(chǔ)方式,例如上圖中的0000803F標(biāo)識(shí)為浮點(diǎn)數(shù)1.0,通過明確各種類型數(shù)據(jù)的存儲(chǔ)方式,從而解析出圖元中各個(gè)屬性。
3.2中間文件的生成
通過圖形文件的解析,可以獲取所需的所有圖元對(duì)象以及其所具備的特性的完備信息。根據(jù)這些信息我們生成可識(shí)別的中間文件做為信息的新載體,用于下一步文件轉(zhuǎn)換,同時(shí)可以把不同的DCS的圖形文件轉(zhuǎn)換成中間文件,這樣虛擬HMI所用的HMI的平臺(tái)就只用把中間文件轉(zhuǎn)換成本平臺(tái)的圖形文件就可以完成對(duì)不同的DCS的HMI的虛擬仿真。對(duì)于中間文件的要求是直觀,簡(jiǎn)潔,便于讀取和修改。這里我們選用了通用的XML(可擴(kuò)展標(biāo)記語言)作為中間文件的格式。
下面是一個(gè)文本對(duì)象的信息存儲(chǔ)范例。
定義了該文本對(duì)象具備的各種靜態(tài)信息,例如位置、顏色等,這些信息可以完整在虛擬DCS的HMI平臺(tái)上再現(xiàn)出這個(gè)文本對(duì)象。
2.3文件轉(zhuǎn)換
文件轉(zhuǎn)換主要是把中間文件轉(zhuǎn)換成虛擬DCS的HMI平臺(tái)上的文件格式,通過虛擬HMI平臺(tái)再現(xiàn)真實(shí)DCS上圖元對(duì)象以及其所具有的靜態(tài)特性、動(dòng)態(tài)特性和交互特性。在核電DCS中由于操作員需要控制各種功能復(fù)雜的閥門、泵等,這些設(shè)備在操作流程圖上面都是以組合圖元的形式存在,并且具有復(fù)雜的動(dòng)態(tài)特性進(jìn)行描述該設(shè)備的不同狀態(tài)。針對(duì)核電DCS的特性,以及綜合評(píng)定復(fù)雜程度,我們采用自動(dòng)創(chuàng)建圖庫(kù)+手動(dòng)組態(tài)動(dòng)態(tài)特性的方案來實(shí)現(xiàn)轉(zhuǎn)換。也就是先導(dǎo)入中間文件建立各種設(shè)備的圖庫(kù),然后手動(dòng)配置動(dòng)態(tài)特性,最后導(dǎo)入中間文件生成圖形文件。
首先我們分析一下核電站DCS中的人機(jī)界面的構(gòu)成。下圖是真實(shí)DCS的畫面。
圖5 DSC流程圖
從畫面中我們可以看出圖主要由一些設(shè)備圖符、線、文字等組成,一般情況下只有設(shè)備圖符具備動(dòng)態(tài)特性和交互特性的需求,根據(jù)其構(gòu)成特點(diǎn),我們確定轉(zhuǎn)換技術(shù)路線。這里我們用仿真公司自主研發(fā)的NSView模擬機(jī)HMI仿真平臺(tái)進(jìn)行轉(zhuǎn)換,該平臺(tái)具有組態(tài)、在線模擬、報(bào)警、日志等DCS人機(jī)界面功能。
(1)圖元轉(zhuǎn)換及圖庫(kù)建立
對(duì)于基本圖元,例如點(diǎn)、線,圓等、用于虛擬HMI平臺(tái)都具備,因此直接從中間文件獲取信息生成即可。對(duì)于用于表示設(shè)備等的組合圖元,轉(zhuǎn)換分成兩個(gè)階段,第一個(gè)階段根據(jù)中間文件信息,生成圖庫(kù)。第二個(gè)階段根據(jù)圖庫(kù)生成組合圖元的信息。這樣通過轉(zhuǎn)換過程,不僅可以實(shí)現(xiàn)流程圖頁(yè)面的再現(xiàn),還可以建立核電DCS的HMI的圖庫(kù),從而手動(dòng)組態(tài)新的流程圖。
圖6是根據(jù)中間文件在NSView內(nèi)生成的圖庫(kù)。
圖6 NSView內(nèi)圖庫(kù)
(2)動(dòng)態(tài)特性轉(zhuǎn)換
現(xiàn)在主流DCS對(duì)于動(dòng)態(tài)特性的實(shí)現(xiàn)分為兩種,一種是表達(dá)式方式(例如ovation),一種是腳本方式(例如Hollias)。由于核電站DCS中所操作的設(shè)備比較復(fù)雜而且種類繁多,如果采用表達(dá)式來描述設(shè)備的各種狀態(tài),不僅表達(dá)式復(fù)雜而且不直觀,而且維護(hù)困難,因此NSView平臺(tái)對(duì)于動(dòng)態(tài)特性的實(shí)現(xiàn)和Hollias保持一致采用腳本方式,并且支持簡(jiǎn)單表達(dá)式。
Hollias內(nèi)部實(shí)現(xiàn)動(dòng)態(tài)特性機(jī)制是在每個(gè)頁(yè)面內(nèi)加入工程內(nèi)所有腳本,然后在圖元進(jìn)行設(shè)置。下圖是Hollias設(shè)置動(dòng)態(tài)特性的界面。
可以看到這是一個(gè)模擬量值特性(AN)的動(dòng)態(tài)特性,并且有點(diǎn)名(AB1ASG113MT)等參數(shù)。在NSView平臺(tái)中有支持全局函數(shù)的機(jī)制,我們NSView平臺(tái)中定義其全局變量函數(shù)(GlobalDeclaretions),導(dǎo)入的時(shí)候根據(jù)不同的設(shè)備類型進(jìn)行自動(dòng)匹配對(duì)應(yīng)的動(dòng)態(tài)腳本,這樣導(dǎo)入后的流程圖上圖符就具備了動(dòng)態(tài)特性。這樣當(dāng)真實(shí)DCS中圖元的動(dòng)態(tài)特性升級(jí)的時(shí)候,在虛擬DCS這邊只需要修改腳本,就可以再現(xiàn)真實(shí)DCS中的動(dòng)態(tài)特性。
圖7 Hollias內(nèi)動(dòng)態(tài)特性實(shí)現(xiàn)
圖8 NSView內(nèi)全局函數(shù)
(3)交互特性轉(zhuǎn)換
在DCS中交互特性一般有彈出操作面板,切換底圖,鼠標(biāo)點(diǎn)擊事件幾類,這些都屬于事件觸發(fā)機(jī)制,所以首先我們需要是平臺(tái)內(nèi)部支持消息觸發(fā)機(jī)制,然后建立對(duì)應(yīng)的操作面板,底圖,最后在導(dǎo)入組合圖元的同時(shí)導(dǎo)入交互特性的參數(shù)即可。其中最為復(fù)雜的交互特性是彈出操作面板,這里用一個(gè)例子來說明彈出操作面板的實(shí)現(xiàn)。
圖10是Hollias中對(duì)于一個(gè)模擬量組合圖元設(shè)置的推出窗口的交互特性,其對(duì)應(yīng)的模板為AN_WIN,具有點(diǎn)名(AB1ASG113MT),格式(%5.1f)等參數(shù)。
圖9 NSView內(nèi)調(diào)用全局函數(shù)
圖10 Hollias內(nèi)彈出窗口交互特性
在NSView內(nèi)首先需要?jiǎng)?chuàng)建模板,這里名字為了對(duì)應(yīng)Hollias,我們也創(chuàng)建名為AN_WIN,因?yàn)槟0迨强梢灾赜玫?,所以相同的模板只需要?jiǎng)?chuàng)建一個(gè)即可。同時(shí)模板是需要對(duì)應(yīng)實(shí)例的,實(shí)例可以創(chuàng)建多個(gè),這里對(duì)應(yīng)上面需要翻譯的內(nèi)容,需要在導(dǎo)入XML文件的過程創(chuàng)建名為AB1ASG113MT的實(shí)例,并把點(diǎn)名、格式等參數(shù)信息設(shè)置到該實(shí)例內(nèi),最后流程圖內(nèi)組合圖元關(guān)聯(lián)到該實(shí)例上就可以完成交互特性的轉(zhuǎn)換。
圖11即是在NSView平臺(tái)內(nèi)創(chuàng)建的模板和自動(dòng)生成的實(shí)例。
圖11 NSView內(nèi)彈出模板交互特性
從上所述,采用虛擬HMI的方式進(jìn)行核電站DCS人機(jī)界面仿真不僅具有較高逼真度,而且開發(fā)費(fèi)用和開發(fā)周期相對(duì)于傳統(tǒng)模擬機(jī)的開發(fā)來說具有一定優(yōu)勢(shì)。并隨著進(jìn)入核電的DCS產(chǎn)品越來越多,如何快速地開發(fā)出高質(zhì)量的核電站模擬機(jī)成為一項(xiàng)重要課題。而采用虛擬DCS方式來進(jìn)行核電站DCS仿真的開發(fā)將成為一種性價(jià)比高的技術(shù)路線,值得進(jìn)一步研究。
Virtual DCS;HMI
A Proposal of DCS HMI Simulation Based on Virtual DCS
ZHANG Guang-yu,WU Fan,LIU Hang-yu
(China(Beijing)Nuclear Power Simulator Technology Co.,Ltd.,Beijing 100094)
1007-1423(2015)28-0055-06
10.3969/j.issn.1007-1423.2015.28.014
張光昱(1979-),男,湖北武穴人,本科,工程師,研究方向?yàn)镈CS人機(jī)界面仿真及仿真平臺(tái)
吳帆(1968-),男,江蘇蘇州人,碩士,高級(jí)工程師,研究方向?yàn)樽詣?dòng)化控制及軟件開發(fā)與管理
劉航宇(1990-),男,廣東深圳人,碩士,助理工程師,研究方向?yàn)镈CS人機(jī)界面仿真及軟件開發(fā)
2015-08-05
2015-09-10
隨著DCS在核電站控制系統(tǒng)中越來越廣泛的使用,DCS仿真成為核電模擬機(jī)的重要課題,將著重論述基于虛擬HMI在仿真公司自主研發(fā)的NSView平臺(tái)上進(jìn)行核電站DCS人機(jī)界面仿真的技術(shù)方案,并以和利時(shí)的Hollias系統(tǒng)作為范例驗(yàn)證可行性和正確性。
虛擬DCS;人機(jī)界面
國(guó)家能源應(yīng)用技術(shù)研究及工程示范項(xiàng)目
With the development of DCS,it is important to simulate DCS for the nuclear station simulator.Introduces how to use NSView which is a platform developed by CGNPC to simulate the HMI of DCS,and verifies this solution with an example of Hollias system.