国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Simulink的S-DCSFSS翻譯模擬方案設(shè)計(jì)

2020-04-08 07:52張旭彭韜彭浩鄧志光
現(xiàn)代計(jì)算機(jī) 2020年7期
關(guān)鍵詞:板卡繪制實(shí)體

張旭,彭韜,彭浩,鄧志光

(中國(guó)核動(dòng)力研究設(shè)計(jì)院核反應(yīng)堆系統(tǒng)設(shè)計(jì)技術(shù)重點(diǎn)實(shí)驗(yàn)室,成都 610213)

0 引言

核電廠全范圍模擬機(jī)(FSS,F(xiàn)ull Scope Simulator)是對(duì)核電廠的工藝系統(tǒng)、控制系統(tǒng)、人機(jī)界面等方面的全面的仿真,主要用于實(shí)現(xiàn)操縱人員培訓(xùn)、工況模擬、故障演練、科學(xué)研究的目的。

核電廠FSS主要組成部分如圖1所示。FSS主要包括Level 0、Level 1、Level 2三個(gè)層級(jí)。Level 0是模型與設(shè)備層,主要包括核電廠過(guò)程模型、教練員站軟件、傳感器與開(kāi)關(guān)柜模型等部分[1]。Level 1是控制層,主要包括安全級(jí)DCS(S-DCS)與非安全級(jí)DCS(NCDCS)等幾部分。Level 2是主控室HMI(人機(jī)界面)層,包括安全級(jí)顯示單元 SVDU(Safety Video Display Unit)、盤(pán)臺(tái)儀表、操縱員站畫(huà)面等部分。

圖1 FSS主要組成部分

對(duì)于Level 1的仿真主要包括三種技術(shù)路線,即純模擬(Simulation)、虛擬實(shí)物(Emulation)和實(shí)物模擬(Stimulation)[2]。其中,純模擬方法是指在新的軟硬件平臺(tái)下重新實(shí)現(xiàn)被仿真對(duì)象的控制邏輯,達(dá)到功能一致的效果。原控制器平臺(tái)的算法與畫(huà)面遷移到仿真平臺(tái)的方式通常是由翻譯軟件實(shí)現(xiàn)的[3-4]。翻譯型仿真使仿真機(jī)脫離DCS軟硬件系統(tǒng),能夠在通用計(jì)算機(jī)環(huán)境使用[5],該過(guò)程稱為翻譯式模擬(Translation)。再由Level 0過(guò)程模型與虛擬化的Level 1通過(guò)軟激勵(lì)的方式進(jìn)行對(duì)接,實(shí)現(xiàn)FSS的集成。

本文主要針對(duì)S-DCSFSS的翻譯方案進(jìn)行研究。

1 S-DCSFSS翻譯模擬方案

1.1 翻譯內(nèi)容與翻譯平臺(tái)

通常情況下,Level 1的仿真主要包括邏輯和畫(huà)面兩部分??紤]到對(duì)某個(gè)板卡或某個(gè)信號(hào)通路所在Level 1的控制器板卡通道好壞的仿真,應(yīng)增加硬件部分的仿真功能。另外,由于安全級(jí)DCS(S-DCS)的畫(huà)面由位于Level 2的SVDU實(shí)現(xiàn),因此,S-DCS的翻譯內(nèi)容包括邏輯和硬件兩部分。

邏輯部分的翻譯平臺(tái)選擇MathWorks公司MATLAB軟件的子軟件Simulink。Simulink廣泛用于科學(xué)研究、工程仿真等環(huán)境,普及范圍廣、可靠性強(qiáng)、仿真結(jié)果認(rèn)可度高。

硬件部分的翻譯需要將Level 1控制器各通道與邏輯部分的各個(gè)輸入輸出信號(hào)綁定,通過(guò)設(shè)置控制器各通道的故障狀態(tài),影響相應(yīng)的輸入輸出信號(hào)的質(zhì)量位好壞。

1.2 邏輯翻譯

實(shí)體Level 1平臺(tái)的算法邏輯通常以“控制站”-“算法頁(yè)”的架構(gòu)實(shí)現(xiàn)。每張算法頁(yè)包括圖符(變量、算法塊、靜態(tài)圖符、備注標(biāo)簽)及其連接關(guān)系。具體化為圖符塊與連接線兩種,其中靜態(tài)圖符與備注標(biāo)簽僅作為顯示用,因而不需要進(jìn)行邏輯翻譯。

實(shí)體Level 1平臺(tái)算法由兩部分組成,一部分是根據(jù)上游設(shè)計(jì)而繪制的執(zhí)行控制、保護(hù)、調(diào)節(jié)功能的算法邏輯,另一個(gè)部分是根據(jù)平臺(tái)自身特性設(shè)計(jì)的算法邏輯,如自診斷邏輯、CPU負(fù)荷監(jiān)測(cè)等。后者對(duì)翻譯后的平臺(tái)沒(méi)有意義,應(yīng)在翻譯的過(guò)程中識(shí)別并略過(guò)。文中不再贅述該過(guò)程。

實(shí)體Level 1平臺(tái)上的控制算法與Simulink平臺(tái)算法是映射關(guān)系。即實(shí)體Level 1平臺(tái)的每個(gè)控制站上每張算法圖頁(yè)的每個(gè)算法圖符、圖符之間的連接關(guān)系都應(yīng)以一定的規(guī)律映射到Sinulink平臺(tái)上。

每個(gè)控制站的翻譯過(guò)程總體如圖2所示。共分為三個(gè)階段:解析算法組態(tài)階段、啟動(dòng)Simulink階段、繪制Simulink階段。

圖2翻譯過(guò)程總體流程

(1)解析組態(tài)算法階段

以C#語(yǔ)言開(kāi)發(fā)翻譯軟件為例,定義結(jié)構(gòu)體Item、Line分別表示一個(gè)圖符和一條連接線。兩種結(jié)構(gòu)體的數(shù)據(jù)格式與Level 1平臺(tái)定義的該類型結(jié)構(gòu)體一一對(duì)應(yīng)。定義鏈表型全局變量:

public static Listitems=new List();

public static ListLines=new List();

分別表示該控制站中所有算法塊與連接線。通過(guò)對(duì)實(shí)體Level 1組態(tài)文件的讀取或解析,可填充兩個(gè)全局變量。

(2)啟動(dòng)Simulink階段

引用MATLAB軟件自帶動(dòng)態(tài)鏈接庫(kù):

using MLApp;

使用C#綁定方式System.Type.GetTypeFromProgID()靜態(tài)調(diào)用COM組件對(duì)象,通過(guò)調(diào)用System.Activator.CreateInstance()函數(shù)啟動(dòng) Matlab進(jìn)程,進(jìn)而通過(guò)向Matlab發(fā)送命令行的方式啟動(dòng)Simuink,打開(kāi)算法庫(kù),如圖3所示。Simulink算法庫(kù)中的算法圖符應(yīng)包含被翻譯Level 1平臺(tái)的算法庫(kù),保證翻譯過(guò)程不出現(xiàn)找不到對(duì)應(yīng)算法圖符的情況。

圖3 Simulink平臺(tái)算法庫(kù)

算法塊內(nèi)部包含Simulink自帶圖符與自定義圖符(User-Defined Functions)兩種,其中自定義圖符由m語(yǔ)言編寫(xiě)函數(shù)實(shí)現(xiàn),如AND4算法塊,其函數(shù)聲明為function[y,s]=fcn(x1,s1,x2,s2,x3,s3,x4,s4),即輸入為四個(gè)值與其對(duì)應(yīng)的質(zhì)量位,輸出為一個(gè)值與其質(zhì)量位,通過(guò)m語(yǔ)言實(shí)現(xiàn)四個(gè)變量“與”邏輯的過(guò)程,邏輯中包含變量質(zhì)量位為壞的情況。

(3)繪制Simulink階段

繪制Simulink的過(guò)程主要包括繪制圖符與繪制連接線兩部分。由于連線是在圖符的接口端口上面進(jìn)行連接的,因而應(yīng)先繪制圖符。

繪制圖符的過(guò)程如圖4所示。遍歷代表圖符的全局變量items,對(duì)其中每個(gè)圖符首先計(jì)算其坐標(biāo),然后繪制圖符。由于邏輯圖的作用僅在于仿真計(jì)算,首要目的并不是人工讀圖,因而對(duì)指定圖符坐標(biāo)的過(guò)程簡(jiǎn)化為設(shè)置每個(gè)圖符大小固定,圖符之間向右向下移動(dòng)圖符寬度或高度的距離,避免圖符重疊。

圖4圖符繪制過(guò)程

繪制連接線的過(guò)程如圖5所示。連接線的繪制過(guò)程中,通過(guò)遍歷代表連接線的全局變量Lines,讀取每根連接線的起點(diǎn)和終點(diǎn)的圖符結(jié)構(gòu)體及具體連接的接口。如果連接線Line結(jié)構(gòu)體中關(guān)于線的起點(diǎn)和終點(diǎn)的記錄是名字而非Item結(jié)構(gòu)體,則需要編寫(xiě)函數(shù)(如Get-ItemFromLine())由圖符名反推得到圖符結(jié)構(gòu)體。再調(diào)用接口函數(shù),實(shí)現(xiàn)連接線的繪制。

圖5連接線繪制過(guò)程

考慮到通常實(shí)體Level 1平臺(tái)的變量值格式為Analog或Binary,由值和質(zhì)量位共同組成,而Simulink平臺(tái)本身沒(méi)有這種值與質(zhì)量位組合的數(shù)據(jù)格式,因而對(duì)于這種情況,可將實(shí)體Level 1平臺(tái)的一根連接線對(duì)應(yīng)到Simulink平臺(tái)的兩根連接線,分別代表值和質(zhì)量位。

1.3 硬件翻譯

硬件翻譯應(yīng)實(shí)現(xiàn)能夠模擬Level 1平臺(tái)某個(gè)板卡或某個(gè)信號(hào)通路故障導(dǎo)致其對(duì)應(yīng)的輸入輸出信號(hào)質(zhì)量位為壞的情況。

硬件翻譯部分由控制臺(tái)(Console)程序?qū)崿F(xiàn),在軟件啟動(dòng)時(shí)讀取設(shè)備組態(tài)文件與變量點(diǎn)表,獲取每個(gè)變量所在板卡和通道。對(duì)于輸入變量,當(dāng)其對(duì)應(yīng)的信號(hào)通道被設(shè)置為故障時(shí),控制臺(tái)程序改變Simulink平臺(tái)上該變量的質(zhì)量位信息;對(duì)于輸出變量,當(dāng)其對(duì)應(yīng)的信號(hào)通道被設(shè)置為故障時(shí),控制臺(tái)程序?qū)imulink平臺(tái)上該變量質(zhì)量位的直接修改將被下一周期的質(zhì)量位值覆蓋,因而只在控制臺(tái)程序內(nèi)部記錄該故障設(shè)置信息。當(dāng)?shù)谌杰浖@取變量值時(shí),通過(guò)控制臺(tái)程序與其接口,即可得到該故障信息。

板卡故障是通道故障的上層故障,當(dāng)某張板卡被設(shè)置為故障狀態(tài)時(shí),該板卡上所有通道的變量都會(huì)被設(shè)置為故障狀態(tài)。其中每個(gè)通道的故障設(shè)置與通道故障相同。

2 仿真實(shí)驗(yàn)驗(yàn)證

2.1 翻譯模擬實(shí)例

以中國(guó)核動(dòng)力研究設(shè)計(jì)院(NPIC)研制的核安全級(jí)DCS平臺(tái)“龍鱗”(NASPIC)系統(tǒng)作為被翻譯對(duì)象,以某實(shí)際控制算法為例進(jìn)行翻譯模擬方案的實(shí)例分析。該控制算法由四個(gè)開(kāi)關(guān)量輸入信號(hào)(DI)為輸入,一個(gè)開(kāi)關(guān)量輸出信號(hào)(DO)為輸出。參與運(yùn)算的算法包括與門(mén)、三取二表決邏輯、非門(mén)等常見(jiàn)算法邏輯。該算法邏輯在實(shí)體Level 1的工程師站上進(jìn)行繪制,如圖6所示。

圖6實(shí)體Level 1的控制算法

圖7 Simulink平臺(tái)上的模型

圖中的控制邏輯為,兩個(gè)DI信號(hào)經(jīng)過(guò)與門(mén)的輸出值與另外兩個(gè)DI信號(hào)進(jìn)行三取二表決,再將表決結(jié)果取反得到最終的DO輸出。

按照第2節(jié)所述翻譯模擬方案的仿真策略,對(duì)實(shí)體Level 1進(jìn)行翻譯式仿真,在Simulink平臺(tái)生成的模型如圖7所示。

首先讀取被翻譯平臺(tái)NASPIC的下裝算法文件,獲取其圖符及連接關(guān)系并記錄。然后在Simulink平臺(tái)對(duì)應(yīng)繪制出每種圖符并連接。讀取被翻譯平臺(tái)NASPIC的下裝設(shè)備組態(tài)文件與變量點(diǎn)表,通過(guò)解析該文件,獲取每個(gè)變量對(duì)應(yīng)的板卡與通道位置,為設(shè)置某通道故障時(shí)對(duì)應(yīng)到變量做準(zhǔn)備。

2.2 仿閉環(huán)真實(shí)驗(yàn)結(jié)果

以基于Simulink的翻譯模擬式Level 1控制器與“華龍一號(hào)”堆型百萬(wàn)千瓦壓水堆核電廠過(guò)程模型構(gòu)成純模擬仿真環(huán)境,使用實(shí)體DCS與過(guò)程模型構(gòu)成實(shí)物模擬仿真環(huán)境,兩種閉環(huán)仿真環(huán)境分別進(jìn)行核功率調(diào)節(jié)實(shí)驗(yàn)[6-7]。記錄兩組仿真實(shí)驗(yàn)的過(guò)程參數(shù)數(shù)據(jù),以核功率為例,實(shí)驗(yàn)結(jié)果如圖8所示。圖中,sp代表核功率設(shè)定值,pv-simulink代表純模擬仿真仿真實(shí)驗(yàn)中的核功率測(cè)量值,pv-PDCS代表實(shí)物模擬仿真實(shí)驗(yàn)中的核功率測(cè)量值。

通過(guò)實(shí)驗(yàn)分析可知,基于Simulink的S-DCSFSS翻譯模擬方案得到的Level 1控制器具有對(duì)實(shí)體Level 1控制器的良好擬真效果。

圖8核功率調(diào)節(jié)仿真實(shí)驗(yàn)

3 結(jié)語(yǔ)

基于Simulink的S-DCSFSS翻譯模擬方案能夠有效的對(duì)核電廠DCSLevel 1對(duì)應(yīng)的算法邏輯和硬件進(jìn)行仿真。該方案軟件結(jié)構(gòu)相對(duì)簡(jiǎn)單,因此具有價(jià)格低廉、開(kāi)發(fā)周期短、與Level 0易于接口等優(yōu)點(diǎn)[8]。在不要求反映實(shí)物DCS相關(guān)特性的場(chǎng)合,基于Simulink的SDCSFSS翻譯模擬方案具有明顯的優(yōu)勢(shì),是對(duì)傳統(tǒng)的以操縱人員培訓(xùn)為首要需求的FSS的重要補(bǔ)充。

猜你喜歡
板卡繪制實(shí)體
Painting ski maps 繪制滑雪地圖
繪制童話
RTX系統(tǒng)下并行I/O卡驅(qū)動(dòng)程序的開(kāi)發(fā)
航空電子設(shè)備機(jī)上線路故障研究
繪制世界地圖
實(shí)體書(shū)店步入復(fù)興期?
2017實(shí)體經(jīng)濟(jì)領(lǐng)軍者
兩會(huì)進(jìn)行時(shí):緊扣實(shí)體經(jīng)濟(jì)“釘釘子”
振興實(shí)體經(jīng)濟(jì)地方如何“釘釘子”
神秘的不速之客
青海省| 长武县| 大港区| 泊头市| 玉屏| 应城市| 鄢陵县| 新巴尔虎左旗| 余庆县| 张家界市| 台北市| 怀远县| 鄢陵县| 巴东县| 罗江县| 涪陵区| 南部县| 镇巴县| 梁河县| 巴东县| 黑河市| 迭部县| 柘城县| 翼城县| 康平县| 南岸区| 安平县| 绥芬河市| 克拉玛依市| 嘉黎县| 邮箱| 岱山县| 山阳县| 科技| 海城市| 涡阳县| 慈溪市| 沂水县| 长葛市| 扎鲁特旗| 五常市|