王 愷,張 旭,章 雨,徐 濤,姜 靜,劉明明
(中國(guó)核動(dòng)力研究設(shè)計(jì)院 核反應(yīng)堆系統(tǒng)設(shè)計(jì)技術(shù)重點(diǎn)實(shí)驗(yàn)室,成都 610213)
核電DCS在核電站控制系統(tǒng)中起著非常重要的作用,對(duì)于核電DCS的虛擬化也成為了核電模擬機(jī)的重要工作方向。虛擬DCS主要目的是通過運(yùn)行于Windows系統(tǒng)中的軟件方式再現(xiàn)現(xiàn)場(chǎng)控制站的性能與行為,最終達(dá)到模擬實(shí)際DCS系統(tǒng)中主控相關(guān)模塊運(yùn)行的目的[1]。以往的DCS的數(shù)字化邏輯驗(yàn)證,采取的是編寫測(cè)試用例的方式進(jìn)行功能測(cè)試。在真實(shí)安全級(jí)DCS運(yùn)行過程中,DCS接收的是核電廠的真實(shí)信號(hào),安全級(jí)DCS執(zhí)行相應(yīng)停堆和專用設(shè)施驅(qū)動(dòng)功能。為了更好地模擬真實(shí)DCS系統(tǒng)的動(dòng)作邏輯,需要開發(fā)核電廠模型來仿真核電廠的真實(shí)動(dòng)作,并提供數(shù)據(jù)接口與虛擬DCS進(jìn)行連接。
本文首先介紹虛擬DCS的基本架構(gòu)以及虛擬DCS的基本功能,然后介紹了核電廠模型的接口程序,給出虛擬DCS與核電廠模型數(shù)據(jù)交互方式,最后對(duì)核電廠Level0模型引入100%FP~90%FP線性降負(fù)荷以及熱備用-50%FP線性升負(fù)荷,通過觀測(cè)對(duì)比3KeyMaster和虛擬DCS上堆芯功率數(shù)據(jù)變化,驗(yàn)證了所開發(fā)接口傳輸?shù)膶?shí)時(shí)性和準(zhǔn)確性。
圖1 虛擬DCS系統(tǒng)架構(gòu)圖 Fig.1 Architecture of virtual DCS system
虛擬DCS實(shí)現(xiàn)了對(duì)Level 1控制器的虛擬化,基于NASPIC平臺(tái)開發(fā)的虛擬DCS具備仿真狀態(tài)設(shè)置、變量值管理、故障模擬等功能,可實(shí)現(xiàn)操縱人員培訓(xùn)、故障影響分析、組態(tài)測(cè)試等功能。
虛擬DCS包括數(shù)據(jù)管理與接口軟件、虛擬控制站以及虛擬主控等幾個(gè)部分。數(shù)據(jù)管理與接口軟件實(shí)現(xiàn)對(duì)過程模型軟件和前端人機(jī)界面接口、數(shù)據(jù)與仿真狀態(tài)管理等功能;虛擬控制站實(shí)現(xiàn)對(duì)實(shí)體DCS控制站的虛擬化,包括通信傳輸?shù)裙δ?,并為邏輯運(yùn)算提供環(huán)境。
虛擬DCS包括了與第三方系統(tǒng)(如反應(yīng)堆及一回路過程模型軟件)的接口,以此實(shí)現(xiàn)數(shù)據(jù)和指令的交互。接口的形式為動(dòng)態(tài)鏈接庫(kù)(*.dll),第三方系統(tǒng)調(diào)用后,實(shí)現(xiàn)連接、變量值設(shè)置與查詢、運(yùn)行凍結(jié)等一系列函數(shù)功能[2]。虛擬DCS在上述過程中為被動(dòng)方,接受第三方系統(tǒng)的指令調(diào)度[3]。該機(jī)制降低了雙方系統(tǒng)的耦合性,增強(qiáng)了第三方系統(tǒng)調(diào)度方法的靈活性。
核電廠模型采用的是輕水反應(yīng)堆瞬態(tài)分析程序RELAP5,該程序是愛德華國(guó)家工程實(shí)驗(yàn)室開發(fā)的輕水堆瞬態(tài)分析程序,已經(jīng)成為目前業(yè)界公認(rèn)的核電廠分析程序[4]。基于RELAP5程序,開發(fā)有核電廠一回路6個(gè)工藝系統(tǒng)模型:給水流量控制系統(tǒng)(ARE)、輔助給水系統(tǒng)(ASG)、反應(yīng)堆冷卻劑系統(tǒng)(RCP)、安全注入系統(tǒng)(RIS)、余熱排出系統(tǒng)(RRA)、主蒸汽系統(tǒng)(VVP)。
該核電廠一回路系統(tǒng)可以采用RELAP5進(jìn)行系統(tǒng)建模仿真,并且通過3keyMaster仿真平臺(tái)進(jìn)行畫面顯示和控制運(yùn)算,3keyMaster仿真平臺(tái)是由美國(guó)WSC公司開發(fā)的軟件,該仿真平臺(tái)可以與RELAP5程序進(jìn)行耦合[5],實(shí)現(xiàn)RELAP5和3KeyMaster仿真平臺(tái)的數(shù)據(jù)交互,對(duì)應(yīng)的工藝流程仿真主界面如圖2所示。
圖2 工藝流程仿真主界面Fig.2 Main interface of process flow simulation
在RELAP5建模過程當(dāng)中,考慮了真實(shí)反應(yīng)堆一回路的三環(huán)路系統(tǒng)結(jié)構(gòu)。對(duì)于反應(yīng)堆堆芯、反應(yīng)堆穩(wěn)壓器、反應(yīng)堆蒸汽發(fā)生器進(jìn)行了精細(xì)化建模。在RELAP5一回路模型的相應(yīng)位置添加有對(duì)應(yīng)的工藝系統(tǒng)。RCP系統(tǒng)的主要功能是將堆芯內(nèi)核裂變產(chǎn)生的熱能導(dǎo)出至二回路;ASG系統(tǒng)主要目的是可以實(shí)現(xiàn)在事故工況下的應(yīng)急供水功能;VVP系統(tǒng)的主要功能是將蒸汽發(fā)生器產(chǎn)生的蒸汽輸送至汽輪機(jī)高壓缸、汽水分離再熱器、除氧器等系統(tǒng)及設(shè)備;RIS系統(tǒng)接收到安注信號(hào)后開啟,該系統(tǒng)向一回路內(nèi)注水,防止缺乏冷卻劑情況下的堆芯過熱。ARE系統(tǒng)主要用于控制向蒸汽發(fā)生器的給水流量,保證蒸汽發(fā)生器二回路側(cè)的水位維持在整定值上。RRA系統(tǒng)主要和余熱排出系統(tǒng)配合,排出堆芯余熱、一回路水和設(shè)備的顯熱以及運(yùn)行的主泵在一回路中產(chǎn)生的熱量,使反應(yīng)堆進(jìn)入冷停堆狀態(tài)。
VVP系統(tǒng)采用時(shí)間相關(guān)控制體模擬二回路蒸汽出口邊界,邊界條件為滿功率工況下汽輪機(jī)進(jìn)口蒸汽狀態(tài)。ARE系統(tǒng)設(shè)置控制體在蒸汽發(fā)生器主給水管道上,模擬給水邊界,邊界條件為正常運(yùn)行工況下ARE系統(tǒng)中給水母管中的給水狀態(tài)。給水流量由蒸汽發(fā)生器液位控制系統(tǒng)控制,蒸汽發(fā)生器液位控制系統(tǒng)是由蒸汽流量、液位偏差和給水流量構(gòu)成的三參量控制系統(tǒng),通過控制給水流量實(shí)現(xiàn)液位調(diào)節(jié)。RIS系統(tǒng)在環(huán)路的冷段和熱段都設(shè)置安注邊界,即RIS系統(tǒng)注入RCP系統(tǒng)的安注給水狀態(tài),閥門模擬安注隔離閥,在接收到安注信號(hào)后開啟。ASG系統(tǒng)的邊界條件為該系統(tǒng)注入VVP系統(tǒng)的給水狀態(tài),設(shè)置閥門模擬流量調(diào)節(jié)閥,通過設(shè)置閥門部件的控制邏輯可實(shí)現(xiàn)ASG系統(tǒng)在事故工況下的投運(yùn)及供水功能。當(dāng)一回路溫度降到180℃及以下,壓力降到3.0MPa以下,RRA系統(tǒng)接收開啟信號(hào)后投運(yùn),隔離閥打開向RCP系統(tǒng)注入流體,保證反應(yīng)堆冷卻。
3KeyMaster仿真平臺(tái)在三者交互中起運(yùn)行控制、數(shù)據(jù)調(diào)度的作用,3KeyMaster既與熱工水力計(jì)算程序RELAP5連接,又與虛擬DCS連接。虛擬DCS與RELAP5進(jìn)行通信完成數(shù)據(jù)交互,經(jīng)由3KeyMaster仿真平臺(tái)實(shí)現(xiàn)。
在3KeyMaster仿真平臺(tái)的TASK中建立兩個(gè)接口程序,一個(gè)用于與RELAP5基于共享內(nèi)存的形式進(jìn)行數(shù)據(jù)交互,即如圖3左側(cè)TASK,另一個(gè)用于與外部執(zhí)行程序基于共享內(nèi)存的形式進(jìn)行數(shù)據(jù)交互,即如圖3右側(cè)TASK,而外部執(zhí)行程序又與虛擬DCS服務(wù)器基于TCP/IP網(wǎng)絡(luò)協(xié)議進(jìn)行數(shù)據(jù)交互。這是由于二者編譯環(huán)境不同,所以需要外部執(zhí)行程序作為中間環(huán)節(jié)。
當(dāng)需要進(jìn)行指令傳輸或數(shù)據(jù)交互時(shí),首先命令是由3KeyMaster仿真平臺(tái)發(fā)起,將平臺(tái)中的模型數(shù)據(jù)與指令通過TASK中構(gòu)建的共享內(nèi)存區(qū)與外部執(zhí)行程序進(jìn)行連接,在通過外部執(zhí)行程序調(diào)用接口函數(shù),使用TCP/IP協(xié)議發(fā)送至虛擬DCS服務(wù)器,虛擬DCS服務(wù)器接收數(shù)據(jù)后進(jìn)行一步計(jì)算,將得到的數(shù)據(jù)以外部執(zhí)行程序?yàn)橹虚g環(huán)節(jié)發(fā)送回3KeyMaster仿真平臺(tái),3KeyMaster仿真平臺(tái)接收這些數(shù)據(jù),在平臺(tái)中建立模塊接收并將其顯示在平臺(tái)上,這樣完成與虛擬DCS服務(wù)器的數(shù)據(jù)交互。
同時(shí),實(shí)現(xiàn)3KeyMaster仿真平臺(tái)與RELAP5模型程序進(jìn)行數(shù)據(jù)交互,3KeyMaster將從虛擬DCS服務(wù)器接收的參數(shù)以基于共享內(nèi)存的方式發(fā)送至RELAP5程序,RELAP5程序從共享內(nèi)存中讀取數(shù)據(jù),以該數(shù)據(jù)作為輸入或邊界條件進(jìn)行模型計(jì)算,完成一步計(jì)算后將得到的數(shù)據(jù)寫入共享內(nèi)存區(qū),而3keyMaster通過TASK程序讀取共享內(nèi)存區(qū)數(shù)據(jù),并在平臺(tái)中建立模塊接收或?qū)⑵滹@示在平臺(tái)上以便平臺(tái)進(jìn)行下一步的處理,這樣完成3KeyMaster與RELAP5的數(shù)據(jù)交互。通過3KeyMaster的調(diào)控,實(shí)現(xiàn)RELAP5模型與虛擬DCS服務(wù)器的數(shù)據(jù)交互。
3KeyMaster與RELAP5的仿真平臺(tái)的基本仿真功能包括運(yùn)行、凍結(jié)、步進(jìn)等,是由3KeyMaster發(fā)出指令控制的,而3KeyMaster對(duì)虛擬DCS的控制信號(hào)是以外部執(zhí)行程序?yàn)橹虚g環(huán)節(jié),3KeyMaster與外部執(zhí)行程序通過共享內(nèi)存?zhèn)鬟f控制信號(hào),外部執(zhí)行程序?qū)μ摂MDCS的控制信號(hào)使用TCP/IP協(xié)議,通過網(wǎng)絡(luò)進(jìn)行傳遞的,三者交互關(guān)系如圖3(圖中3KM為3KeyMaster的簡(jiǎn)寫)所示。
圖3 程序交互關(guān)系Fig.3 Program interaction
圖4 時(shí)間同步時(shí)序圖Fig.4 Time synchronization sequence diagram
虛擬DCS在運(yùn)行過程當(dāng)中可以做到實(shí)時(shí),而3KeyMaster仿真平臺(tái)及RELAP5的Level 0層模型程序運(yùn)算速度較慢,兩者之間運(yùn)算需要進(jìn)行同步,那么虛擬DCS服務(wù)器計(jì)算完一個(gè)步長(zhǎng)后必須等待,直到3KeyMaster完成本次運(yùn)算,方可進(jìn)入下一個(gè)循環(huán)。
在一個(gè)循環(huán)中,3KeyMaster的運(yùn)行時(shí)間為△t1,虛擬DCS的運(yùn)行時(shí)間為△t21,等待時(shí)間為△t22,且三者必須滿足△t1=△t21+△t22。在時(shí)刻1時(shí),3KeyMaster仿真平臺(tái)根據(jù)從虛擬DCS服務(wù)器獲取的輸入數(shù)據(jù)進(jìn)行計(jì)算,花費(fèi)時(shí)長(zhǎng)△t1。與此同時(shí)虛擬DCS根據(jù)3KeyMaster仿真平臺(tái)發(fā)送的數(shù)據(jù)進(jìn)行控制算法處理,花費(fèi)時(shí)長(zhǎng)△t21,經(jīng)過△t22時(shí)長(zhǎng)的等待,直到3KeyMaster仿真平臺(tái)運(yùn)行完一個(gè)步長(zhǎng),到達(dá)時(shí)刻2。在時(shí)刻2時(shí)進(jìn)行一次數(shù)據(jù)交互,即3KeyMaster仿真平臺(tái)將數(shù)據(jù)發(fā)送給虛擬DCS服務(wù)器,同時(shí)獲取虛擬DCS服務(wù)器計(jì)算數(shù)據(jù),完成交互后進(jìn)行下一步的計(jì)算,從而達(dá)到時(shí)間同步的目的。
3KeyMaster仿真模型與虛擬DCS服務(wù)器的仿真時(shí)間同步的時(shí)序圖如圖4所示。
采用同樣的方式,考慮到RELAP5的模型計(jì)算時(shí)間一般要長(zhǎng)于3KeyMaster,等待RELAP5完成一個(gè)計(jì)算步長(zhǎng)之后,3KeyMaster再繼續(xù)下一個(gè)步長(zhǎng)的計(jì)算,即可完成RELAP5和3KeyMaster的時(shí)間同步。以3KeyMaster作為媒介,最終達(dá)到RELAP5、3KeyMaster以及虛擬DCS三者的時(shí)間同步。
圖5 堆芯功率控制系統(tǒng) Fig.5 Core power control system
為了證明3KeyMaster(含RELAP5模型)和虛擬DCS兩者之間數(shù)據(jù)是否能夠進(jìn)行正常交互,選用兩臺(tái)計(jì)算機(jī),通過光纖進(jìn)行網(wǎng)絡(luò)連接。設(shè)計(jì)了一個(gè)反應(yīng)堆功率控制器如圖5所示,冷卻劑平均溫度設(shè)定值與測(cè)量值進(jìn)行比較產(chǎn)生溫度偏差,功率值和負(fù)荷設(shè)定值產(chǎn)生功率失配信號(hào),溫度偏差經(jīng)過PI控制器后與功率適配信號(hào)產(chǎn)生總的溫度補(bǔ)償信號(hào),通過控制棒控制單元實(shí)現(xiàn)反應(yīng)性的調(diào)節(jié),完成冷卻劑平均溫度的控制[6]。
圖6 3KeyMaster當(dāng)中線性降負(fù)荷過程Fig.6 Linear load reduction process in 3Keymaster
選擇一個(gè)特定工況核電廠100%滿功率狀態(tài),在0s時(shí)刻引入100%FP~90%FP線性降負(fù)荷,線性變負(fù)荷120s,對(duì)應(yīng)每隔1s命令虛擬DCS輸出一個(gè)堆芯功率P,其反應(yīng)堆變工況仿真結(jié)果如圖6所示,對(duì)應(yīng)的虛擬DCS所顯示的曲線變化情況如圖7所示。可以看出兩者的計(jì)算時(shí)間是同時(shí)的,并且對(duì)應(yīng)的堆芯功率值變化曲線也是保持一致的。
圖7 虛擬DCS當(dāng)中的線性降負(fù)荷過程Fig.7 Linear load reduction process in virtual DCS
圖8 3KeyMaster當(dāng)中線性升負(fù)荷過程Fig.8 Linear load raising process in 3Keymaster
選取核電廠Level0模型反應(yīng)堆熱備用狀態(tài)作為初始狀態(tài),在0s時(shí)刻引入熱備用到50% FP線性升負(fù)荷,線性變負(fù)荷600s,虛擬DCS采用同樣的數(shù)據(jù)采樣方式,其反應(yīng)堆變工況仿真結(jié)果如圖8所示,對(duì)應(yīng)的虛擬DCS所顯示的曲線變化情況如圖9所示。同樣可以看出兩者堆芯功率變化曲線是保持一致的,并且經(jīng)過長(zhǎng)時(shí)間計(jì)算,兩者之間也是保持時(shí)間同步的。
圖9 虛擬DCS當(dāng)中的線性升負(fù)荷過程 Fig.9 Linear load up process in virtual DCS
本文采用RELAP5建立了核電廠一回路Level0模型,基于3KeyMaster平臺(tái)設(shè)計(jì)了與RELAP5和虛擬DCS的數(shù)據(jù)接口,采取共享內(nèi)存的方式實(shí)現(xiàn)了三者間的數(shù)據(jù)交互和時(shí)間同步,通過真實(shí)的數(shù)據(jù)傳輸驗(yàn)證了接口傳輸?shù)臏?zhǔn)確性和實(shí)時(shí)性。