程保華 張合廠 熊科 曲東良
摘 要: 為解決某核電機組的DCS控制器在增量下裝和主從切換后發(fā)生信號跳變的問題,深入研究了控制器的熱備冗余、增量下裝、主從切換機制以及DCS內(nèi)部邏輯組態(tài)。經(jīng)過研究發(fā)現(xiàn),在DCS控制器增量下裝機制下的不規(guī)范邏輯組態(tài),使控制器在主從切換后不能保持部分信號的狀態(tài),經(jīng)過對此類故障隱患的全面排查和解決,徹底消除了DCS控制器的信號跳變風(fēng)險。
關(guān)鍵詞: 核電站; DCS; 控制器; 主從切換; 信號跳變
中圖分類號: TN911?34; TP202+.2 文獻標(biāo)識碼: A 文章編號: 1004?373X(2015)19?0140?03
Abstract: In order to solve the problem that signal jump of DCS controller in the process of incremental downloading and after switching of host?slave controllers, an in?depth research was made for the hot standby redundancy, incremental downloading, host?slave switching mechanism and logic configuration within DCS. The study show that the irregular logic configuration under DCS controller incremental downloading mechanism made the controller unable to keep the state of part signals after host?slave switching. After a thorough investigation and resolution, the signal jump risk of the DCS controller was eliminated.
Keywords: nuclear power plant; DCS; controller; host?slave switching; signal jump
0 引 言
核電站DCS分為安全級1E?DCS和非核級NC?DCS。非核級DCS雖然不涉及核安全,但卻擔(dān)負著全廠調(diào)節(jié)、操作與監(jiān)視的重要功能,涉及200多個工藝系統(tǒng)[1]。DCS控制器如果發(fā)生異常信號跳變問題,無疑會在很大程度上影響到機組的穩(wěn)定運行和機組的可靠性、可用率、經(jīng)濟性,如果事件發(fā)生在機組商運后,進行改造還會造成非計劃停機,產(chǎn)生額外經(jīng)濟損失[2]。
1 事件調(diào)查[3]
2013年5月,某在建核電項目非核級DCS某現(xiàn)場控制站(FCS)的控制器(CPU)在增量下裝后進行了主從切換,切換后造成輔助給水系統(tǒng)(ASG)的部分信號跳變,最終造成輔助給水系統(tǒng)1臺泵和5個閥門運行狀態(tài)跳變。
事故出現(xiàn)后,工程方首先調(diào)查了控制器軟件組態(tài)。經(jīng)過邏輯追溯調(diào)查發(fā)現(xiàn),這6個設(shè)備跳變是由同一個邏輯中間運算結(jié)果從1到0的跳變引發(fā)的。輔助給水(ASG)系統(tǒng)的一個帶有自鎖邏輯的圖紙,如圖1所示,這部分邏輯最終輸出的信號就是發(fā)生跳變的中間運算結(jié)果。
DCS供應(yīng)商根據(jù)上游設(shè)計圖紙在某現(xiàn)場控制站中設(shè)計了相應(yīng)的自鎖邏輯組態(tài),如圖2所示。這種邏輯組態(tài)在觸發(fā)自鎖的信號(圖2中PY9ASG801TL和PY9ASG160VDSM5進行“與”運算后與門AND⑥的狀態(tài)信號)是脈沖信號的情況下,當(dāng)脈沖信號消失后,自鎖狀態(tài)由或門OR⑦和與門AND②共同保持,并將自鎖結(jié)果輸出給BOOL型局部變量ASGL38D02。這個變量值的跳變將引起6個設(shè)備控制指令的變化。
從上述分析可知,應(yīng)該是控制器的增量下裝和主從切換操作在某種機制下使邏輯自鎖狀態(tài)發(fā)生了從1到0的跳變。因而有必要對控制器相關(guān)機制進行研究和分析。
2 控制器工作機制分析[4?5]
2.1 冗余熱備和主從切換
基于HOLLiAS?N平臺的核電站非核級DCS現(xiàn)場控制站(FCS)采用一對NM203作為控制器(CPU)模塊。兩個控制器采用主備運算同步方式實現(xiàn)無擾切換,即兩個控制器同時做控制運算,并且控制運算周期保持同步,以保證雙機的事件變量及積累運算值均相等,但只有一個輸出運算結(jié)果,如圖3所示。
控制器設(shè)有獨立的硬件看門狗電路,用于監(jiān)視控制器的運行狀態(tài)。一旦有任何任務(wù)出現(xiàn)異常,將引起主從切換,原主機降為從機,同時原備份機升為主機。新的備份機拋棄之前的程序和運算數(shù)據(jù),從新的主機同步程序與數(shù)據(jù)。
2.2 掉電保護機制
控制器單元在實時運行時,有一些重要數(shù)據(jù)需要保存,并且要求在系統(tǒng)掉電時這些數(shù)據(jù)仍能保持,所以模塊內(nèi)部設(shè)有掉電保護電路將這些數(shù)據(jù)保存在低功耗的SRAM中,并提供后備電池供電。在控制站算法中,在變量定義時用關(guān)鍵詞“Retain”定義的保留型變量將被作為Retain型變量。在控制器運行時,Retain型變量會被定期從SDRAM中轉(zhuǎn)存到SRAM中,實現(xiàn)掉電保護。
2.3 增量下裝機制
增量下裝是指控制站組態(tài)工具僅將修改部分的程序下裝到主控制器,主控制器實現(xiàn)無擾下裝。然而對于從機來說卻不是無擾下裝,主機下裝完畢后,從機丟棄原數(shù)據(jù),開始從主機同步新程序并按變量的初始值和新工程邏輯重新開始運算,在運算20 個周期后開始從主機同步SRAM中的Retain變量,對于非Retain區(qū)的值,從機以當(dāng)前運算結(jié)果繼續(xù)運算。
3 原因分析
結(jié)合上述邏輯組態(tài)以及控制器的增量下裝和主從切換機制,問題的原因逐漸明晰。事件的發(fā)生過程可復(fù)現(xiàn)如下:endprint
(1) 在主控制器運行的某個時刻,來自與門AND⑥的脈沖信號觸發(fā)了自鎖邏輯。脈沖信號消失后,自鎖邏輯被或門OR⑦和與門AND②共同保持,使ASGL38D02的值為1。
(2) 工程師站對這個控制站進行了增量下裝,將一部分修改了的組態(tài)(不涉及故障部分組態(tài))下裝到主控制器,下裝后主控制器繼續(xù)無擾運行,主控制器SDRAM中的數(shù)據(jù)持續(xù)保持,自鎖狀態(tài)不變。
(3) 主控制器下裝完成后,處于熱備狀態(tài)的從控制器開始拋棄自身內(nèi)存中的原程序和數(shù)據(jù),從主控制器同步新的程序和SRAM區(qū)數(shù)據(jù)。因為主機邏輯中的或門OR⑦和與門AND②的狀態(tài)都保存在主控制器的運行內(nèi)存SDRAM中,因而從機無法獲取其狀態(tài)。
(4) 從機開始運算后,因之前未能從主機獲取或門OR⑦和與門AND②的狀態(tài),所以從機開始運算時,與門AND⑥、或門OR⑦、與門AND②的狀態(tài)都是0,造成從機中未構(gòu)成自鎖狀態(tài),因而ASGL38D02值為0。
(5) 現(xiàn)場儀控人員稍后進行了控制器的主從切換,從控制器由備變主,其無自鎖狀態(tài)生效,造成現(xiàn)場設(shè)備的信號跳變。
由上述分析可見,發(fā)生跳變的原因是增量下裝后從控制器不能獲取主控制器的自鎖狀態(tài)所致。
4 解決方案
在研究解決方案時注意到,圖2中的AND和OR邏輯屬于系統(tǒng)通用運算功能,無法定義為Retain型,其輸出狀態(tài)只能保存在運行內(nèi)存SDRAM中。即使將ASGL38D02定義為Retain型變量,在從機采用默認(rèn)值開始第一周期的運算后,ASGL38D02的值也會被從機新的運算得到的無自鎖值0覆蓋,因而必須尋求其他方案。
經(jīng)過研究,如圖4所示的邏輯為最終可行的自鎖邏輯,邏輯中把ASGL38D02定義為Retain型變量,并且將原邏輯自鎖信號線拆開,用ASGL38D02代替。這樣修改后,使用一個Retain型中間變量ASGL38D02就可保存自鎖狀態(tài)??刂破髦鲝那袚Q后,從機就可通過從主機獲取變量ASGL38D02的值,從而獲取原自鎖狀態(tài),問題得到完美解決。
5 問題擴展與排查[6]
鑒于對事件的重視,工程方在問題機組上對此類情況進行了深入研究和專題調(diào)查。調(diào)查發(fā)現(xiàn)此類自鎖邏輯還在多個站的多個邏輯頁中存在;不僅如此,還發(fā)現(xiàn)大量本來需要定義為Retain型的變量或算法塊未作處理。如RS觸發(fā)器、累加計數(shù)功能塊、與之前周期運算結(jié)果相關(guān)的積分、微分算法等,如果未定義為Retain型,在控制器增量下裝及主從切換后就會造成控制器在控制上的不連續(xù)性甚至發(fā)生信號事件。因此,必須對此類隱患進行全面排查。表1列出了事件機組所有可能存在的問題和需進行排查的范圍,可以看出需排查的工作量非常大。
經(jīng)過投入大量人力進行排查,定位全部問題點后,工程方制訂了共449項修改,包含197處邏輯修改以及252項變量Retain屬性修改。這些修改在2013年9月初在事件機組上進行了批量實施,后續(xù)也陸續(xù)在CPR1000的其余13臺機組上進行了實施。實施以來,CPR1000的各臺機組都沒有再發(fā)生過類似情況。
6 問題反思與改進
通過對本問題的處理與研究,認(rèn)為雖然此問題的發(fā)生與控制器的增量下裝機制也有關(guān)系,然而這完全可以通過合理和規(guī)范的組態(tài)避免,為防止此類問題再發(fā)生,工程方要求DCS廠家在內(nèi)部的組態(tài)設(shè)計規(guī)范文件中明確增加了對相關(guān)邏輯的組態(tài)要求。另外,因此類問題的隱蔽性,在目前的工廠測試(FT)程序中,還沒有一項測試能夠覆蓋和發(fā)現(xiàn)這類組態(tài)錯誤,這使錯誤得以從工廠帶到現(xiàn)場。目前工程方正在研究推動廠家在后續(xù)的工廠測試中加入相關(guān)邏輯測試,保證設(shè)備出廠的質(zhì)量。
7 結(jié) 語
中廣核集團在國內(nèi)首次在非核級NC?DCS上采用國產(chǎn)化的DCS平臺HOLLiAS?N,并由中廣核工程公司下屬的廣利核公司承擔(dān)DCS系統(tǒng)集成。此問題的出現(xiàn),體現(xiàn)了中廣核在核電DCS上的經(jīng)驗還需要繼續(xù)積累,國產(chǎn)化DCS在技術(shù)和管理上都還需逐步進行完善。此問題的順利解決,體現(xiàn)了中廣核的技術(shù)能力和對“安全第一、質(zhì)量第一”的核安全理念的重視,積累了寶貴的經(jīng)驗。
參考文獻
[1] 劉繼春,王曄,汪富強.集散控制系統(tǒng)在嶺澳核電站中應(yīng)用[J].電力自動化設(shè)備,2010,30(6):105?110.
[2] 王建鋒,羅振新,薛鵬.影響DCS 可靠性的因素分析[J].華東電力,2008,36(4):109?112.
[3] 徐燕,鐘德明,付文佳.基于缺陷的軟件可靠性度量方法研究[J].測控技術(shù),2009,29(3):67?70.
[4] 向婉成,周以琳,劉寶坤,等.雙機冗余的多功能控制器開發(fā)研究[J].儀器儀表學(xué)報,1992,12(3):12?25.
[5] China Techenergy Co., Ltd.. CPR1000 extension project DCS FCS設(shè)備說明書[EB/OL]. [2008?10?05].http://www.ctecdcs.com/achivement/achivements.aspx.
[6] 饒宛,鄭歡,陳信仁.HOLLiAS MACS V6應(yīng)用實例及問題分析[J].自動化技術(shù)與應(yīng)用,2011,30(12):62?65.endprint