俞植馨,李 蘇
(山東大學(xué)機(jī)械工程學(xué)院,山東 濟(jì)南 250100)
安全是核電站的首要原則。報警系統(tǒng)是核電站安全系統(tǒng)的重要組成部分,是核電站主控室中重要的人機(jī)接口,能提供監(jiān)視核電站各組分工況需要的所有信息。一旦有設(shè)備偏離了正常工況,報警系統(tǒng)就會生成相應(yīng)的報警信息,并將其傳遞至核電儀控系統(tǒng);同時,報警系統(tǒng)將產(chǎn)生光信號(如報警燈)或聲信號(如報警喇叭)來提示主控室內(nèi)的操縱員,使其能及時獲悉所發(fā)生報警的區(qū)域和類別,并迅速采取相應(yīng)的糾正措施。報警窗是報警系統(tǒng)的重要組成部分,其通信模塊的可靠性和實時性十分關(guān)鍵[1-2]。目前,國內(nèi)核電站的報警窗普遍為國外品牌,存在設(shè)備老化、原型號停產(chǎn)導(dǎo)致備件不足等問題。此外,隨著核電數(shù)字化儀控系統(tǒng)的發(fā)展以及現(xiàn)場總線技術(shù)在核電分散控制系統(tǒng)(distribated control system,DCS)中的應(yīng)用[3],對報警系統(tǒng)的可靠性和實時性也提出了更高的要求。因此,為打破國外技術(shù)壟斷、實現(xiàn)設(shè)備國產(chǎn)化替代升級,對核電站主控室報警窗進(jìn)行改進(jìn)研究具有重大意義。其中,通信方式的改進(jìn)尤其關(guān)鍵。
基于時間觸發(fā)的控制器局域網(wǎng)絡(luò)(time triggered controller area network,TTCAN)總線是Bosch公司在傳統(tǒng)控制器局域網(wǎng)絡(luò)(controller area network,CAN)總線基礎(chǔ)上開發(fā)的一種基于時間觸發(fā)的現(xiàn)場總線。TTCAN繼承了CAN總線接口簡單、抗干擾性強(qiáng)、數(shù)據(jù)傳輸速度高的特點。同時,TTCAN采用了時間觸發(fā)機(jī)制,在全局系統(tǒng)時間下使用系統(tǒng)矩陣來實現(xiàn)節(jié)點的同步通信調(diào)度,解決了CAN在重負(fù)載情況下的數(shù)據(jù)傳輸時延問題。這提高了TTCAN的可預(yù)測性、可靠性和實時性,使其能適用于對安全要求較高的核電站場景[4-5]。本文在秦山三期核電站空氣閘門就地控制盤報警窗研發(fā)項目的基礎(chǔ)上,主要闡述報警窗通信模塊的基于冗余TTCAN的改進(jìn)設(shè)計。
本文設(shè)計的報警窗是根據(jù)秦山三期核電站空氣閘門報警窗實際工作情況以及改進(jìn)升級需求而研發(fā)的一種高性能聲光報警設(shè)備。它的主要作用是通過聲音和指示燈來通報異?,F(xiàn)象。異常現(xiàn)象通常通過現(xiàn)場觸點接收。異?,F(xiàn)象來源通常為壓力開關(guān)、液位開關(guān)、設(shè)備電源等。報警窗可接收數(shù)字報警信號、干接點信號和24~125 VDC的濕接點信號。現(xiàn)場觸點可以通過公共電源供電(干接點)或者獨立電源供電(濕接點)。其中:干接點一般用于無源開關(guān)或繼電器形式的報警,而濕接點一般用于電源形式的報警。
本報警窗采用分布式和模塊化的系統(tǒng)架構(gòu)設(shè)計,主要組成部分包括電源模塊、報警數(shù)據(jù)采集模塊、微控制單元(micro control unit,MCU)報警信號處理模塊、通信模塊、事故順序記錄(sequence of events,SOE)模塊和報警顯示模塊?,F(xiàn)場報警信號由報警數(shù)據(jù)采集模塊進(jìn)行采集后通過通信模塊冗余TTCAN總線傳遞到MCU,經(jīng)處理后控制報警窗顯示模塊進(jìn)行報警。分布式和模塊化設(shè)計保證了報警窗的高可靠性、高可拓展性和高可維護(hù)性。
TTCAN的系統(tǒng)矩陣由多個基本循環(huán)連接組成。TTCAN基本循環(huán)如圖1所示。一個基本循環(huán)包括參考消息、專用時間窗、仲裁時間窗和空閑時間窗[5-6]。在專用時間窗內(nèi),總線中消息的自動重發(fā)功能是被禁止使用的,只能發(fā)送一次消息。消息傳輸易受周圍環(huán)境因素影響,導(dǎo)致消息錯誤失效,特別是在核電站復(fù)雜惡劣的工況下,更易引發(fā)系統(tǒng)故障。以采用銅線傳輸(誤碼率約為10-6)的單通道現(xiàn)場總線為例,估算誤碼數(shù):設(shè)總線利用率為80%,傳輸速率為600 kbit/s,那么1 h總線所產(chǎn)生的誤碼數(shù)約為1 728 bit,即每2.08 s將產(chǎn)生一位誤碼??梢姡瑔慰偩€傳輸可能導(dǎo)致大量數(shù)據(jù)丟失。而采用多總線冗余TTCAN的方案則可以大大降低誤碼率,確保數(shù)據(jù)消息的正確發(fā)送和接收。
圖1 TTCAN基本循環(huán)圖Fig.1 TTCAN basic cycle
目前,TTCAN的冗余方式主要有兩種[7]。①熱備冗余:以一條總線為主通道,另一條作為備用通道,若主通道出錯,則切換為備用通道工作的冗余方式。②普通雙通道冗余:來自節(jié)點MCU的同一消息被兩路總線控制器接收,即兩條TTCAN通道同時收發(fā)消息,接收節(jié)點的MCU只要接收到任意一路有效消息,則發(fā)送消息成功。
熱備冗余方式有明顯的缺陷。由于在TTCAN的專用時間窗中不允許消息重發(fā),所以從錯誤消息(如報警消息)認(rèn)定累積到發(fā)生故障關(guān)閉總線需要較長時間。特別是在惡劣的工況下發(fā)生嚴(yán)重故障時,較難確保及時切換至備用總線。因為頻繁切換總線會降低傳輸效率,不能在每次出現(xiàn)錯誤消息時都立刻切換總線。普通雙通道冗余雖然針對熱備冗余改進(jìn)了總線切換方面的不足,但缺點是兩組總線的收發(fā)同步特別是全局的時鐘同步難以保證。
本文在普通雙通道冗余的基礎(chǔ)上,提出一種新的冗余方式。冗余TTCAN通信架構(gòu)如圖2所示。采用帶有兩路CAN總線控制器的MCU,雙路TTCAN通道同時傳輸消息,接收節(jié)點只要接收到任意一路有效消息,則發(fā)送消息成功。這樣的冗余方式在保障總線有較高傳輸效率的同時,能較大限度地確??偩€的收發(fā)同步,提高數(shù)據(jù)收發(fā)的實時性。與此同時,因為雙路總線在物理結(jié)構(gòu)上的完全分離,可以使由硬件引入的串?dāng)_音干擾得到控制。
圖2 冗余TTCAN通信架構(gòu)圖Fig.2 The communication architecture of redundancy TTCAN
由標(biāo)準(zhǔn)CAN衍生而來的TTCAN在數(shù)據(jù)鏈路層和物理層與CAN網(wǎng)絡(luò)總線具有很高的兼容性,可以使用CAN的總線框架和總線收發(fā)器[5]。本文設(shè)計的報警窗(采用雙總線冗余TTCAN方案,將報警窗設(shè)計為TTCAN總線的時間主節(jié)點。報警窗硬件架構(gòu)如圖3所示。采用MCU與CAN控制器、收發(fā)器結(jié)合的方法,實現(xiàn)雙路冗余TTCAN總線的硬件設(shè)計。MCU采用STM32F107芯片。該芯片集成了兩個CAN總線控制器,而CAN總線收發(fā)器采用Maxim公司的MAX14878隔離型CAN收發(fā)器。冗余架構(gòu)中兩路總線的總線控制器、總線收發(fā)器以及電纜均相互獨立,以保證數(shù)據(jù)鏈路層、物理層和應(yīng)用層的全面冗余。報警窗通過TTCAN總線接收報警信息后,對報警信息進(jìn)行相應(yīng)處理并存入外部Flash(如聲報警、光報警),也可通過上位機(jī)讀取帶有時間戳的報警信息。
TTCAN對各個節(jié)點進(jìn)行漂移補(bǔ)償,以確保能夠為各個節(jié)點提供一個精確、一致的全局時間。這就需要一個高精度的全局時鐘。本文設(shè)計的冗余TTCAN從全球定位系統(tǒng)(global positioning system,GPS)模塊中獲取精準(zhǔn)的時鐘。其中,采用了高精度晶振來減小GPS秒脈沖和本地晶振的誤差率。
圖3 報警窗硬件架構(gòu)圖Fig.3 The hardware architecture of the alarm window
報警窗以STM32F107芯片為MCU。STM32的固件庫函數(shù)已經(jīng)提供了眾多CAN總線操作相關(guān)的應(yīng)用程序編程接口(application programming interface,API)。本文基于這些庫函數(shù)進(jìn)行了冗余TTCAN的節(jié)點軟件開發(fā)[8-10]。
本文以報警窗為TTCAN總線的主節(jié)點,各報警模塊為從節(jié)點,時間主機(jī)以全局時間為基準(zhǔn),調(diào)度表生成后下發(fā)至各節(jié)點。調(diào)度表的生成基于均勻加載算法[11-12]。該系統(tǒng)矩陣算法能保證TTCAN在包含更多不同子系統(tǒng)的網(wǎng)絡(luò)中能實現(xiàn)周期長度不一的消息調(diào)度的實時性,并提高總線利用率。此外,由于報警窗接收到的報警信息也可能被認(rèn)定為錯誤消息,為了確保報警信息不會丟失,調(diào)度表設(shè)定錯誤消息在仲裁窗進(jìn)行重發(fā)。TTCAN節(jié)點工作流程如圖4所示。
由于本文設(shè)計中的兩路總線互為冗余相互獨立,在此僅分析了其中一個通道的消息發(fā)送流程。單通道消息發(fā)送流程如圖5所示。
TTCAN的冗余管理策略流程如圖6所示。節(jié)點將先后接收到兩條通道的消息,按照TTCAN的系統(tǒng)矩陣,每個基本循環(huán)以參考消息為起點,消息發(fā)送節(jié)點先將打包好的消息從CAN1、CAN2兩條通道發(fā)送,消息接收節(jié)點則等待兩通道的消息中斷信息。
圖4 TTCAN節(jié)點工作流程圖Fig.4 The work flowchart of TTCAN nodes
圖5 單通道消息發(fā)送流程圖Fig.5 The flowchart of single channel message delivery
先判定CAN1通道是否收到了收到消息且消息有效。若收到有效消息,則計數(shù)器COUNT1計數(shù)加1,然后將消息進(jìn)行報警、存儲等處理;若未收到消息或消息無效,則進(jìn)行判定CAN2通道是否收到消息且消息有效。同理,若CAN2通道收到有效消息,COUNT2計數(shù)加1,之后將兩計數(shù)器的值進(jìn)行大小比較:若COUNT>COUNT2,說明CAN2通道有漏接消息或收到無效消息,CAN2錯誤計數(shù)器加1,COUNT1和COUNT2復(fù)位清零,將消息舍棄;若COUNT1 圖6 冗余管理策略流程圖Fig.6 The flowchart of redundancy management strategy 本文的報警窗通信模塊設(shè)計中,設(shè)置總線通信速率為512 kbit/s,每條通道消息數(shù)據(jù)幀最大為150 bit,由此可計算出理論上的消息傳輸時間約為0.3 ms,理論上每秒可傳輸三千余條消息。 測試采用DAQ-110數(shù)字I/O模塊模擬現(xiàn)場報警信號,接入8個報警數(shù)據(jù)采集模塊,對報警窗設(shè)備的冗余TTCAN通信功能進(jìn)行長時間大數(shù)據(jù)量的測試。報警窗使用RS-232與計算機(jī)連接,使用上位機(jī)軟件讀取測試數(shù)據(jù)。在一個測試循環(huán)中,8個數(shù)據(jù)報警采集模塊依次發(fā)送報警信號,再依次解除報警信號,產(chǎn)生8條報警信息,通過TTCAN傳輸至報警窗,而后重復(fù)此循環(huán)。每組測試時長30 min,發(fā)送數(shù)據(jù)20余萬條,共進(jìn)行了30組測試。測試結(jié)果顯示,平均每五組測試出現(xiàn)一次總線切換,并未出現(xiàn)丟幀現(xiàn)象,驗證了本文所設(shè)計的通信方式具有較高的可靠性。同時,在一致的試驗條件下,將第1節(jié)中所述的兩種現(xiàn)有的TTCAN冗余方式與本文設(shè)計的冗余方式進(jìn)行了對比測試。不同冗余方式的誤碼率對比如表1所示。 表1 不同冗余方式的誤碼率對比 Tab.1 The comparison of bit error rates of different redundancy modes 測試結(jié)果表明,本文設(shè)計的冗余方式的通信誤碼率最低,保證了報警窗設(shè)備數(shù)據(jù)傳輸具有較高的可靠性和實時性。 TTCAN總線具有實時性高、可預(yù)測性好、抗干擾性強(qiáng)的特點,適用于核電站安全場景。本文對核電站報警窗的通信模塊進(jìn)行了改進(jìn)設(shè)計,提出一種新型雙路傳輸?shù)腡TCAN冗余方式與冗余管理策略,提升了報警窗數(shù)據(jù)傳輸?shù)目煽啃院蛯崟r性。本文的報警窗改進(jìn)設(shè)計是TTCAN應(yīng)用于核電儀控系統(tǒng)和報警系統(tǒng)的一次積極嘗試,對核電裝備國產(chǎn)化升級改造也具有一定的借鑒意義。鑒于核電站惡劣復(fù)雜的現(xiàn)場環(huán)境,包括報警系統(tǒng)在內(nèi)的儀控系統(tǒng)子設(shè)備、子系統(tǒng)種類繁多,報警窗在提升抗干擾性、軟硬件兼容性、優(yōu)化系統(tǒng)矩陣算法等方面仍需要進(jìn)行進(jìn)一步的研究。3 測試驗證
4 結(jié)論