(西安中核核儀器有限公司,陜西 西安 710061)
核電火災(zāi)報(bào)警系統(tǒng)依據(jù)GB 50116—2013火災(zāi)自動(dòng)報(bào)警系統(tǒng)設(shè)計(jì)規(guī)范,屬于控制中心火災(zāi)報(bào)警系統(tǒng),由火災(zāi)報(bào)警控制器、操作員工作站、各種探測(cè)器、手動(dòng)報(bào)警按鈕、聲光警報(bào)器燈等組成,其中火災(zāi)報(bào)警控制器可通過(guò)聯(lián)網(wǎng),對(duì)現(xiàn)場(chǎng)報(bào)警、聯(lián)動(dòng)事件進(jìn)行管理與控制,起到火災(zāi)預(yù)防與消除的作用。核島主控室作為控制中心,核島火災(zāi)報(bào)警控制器為系統(tǒng)核心主機(jī),為了確保系統(tǒng)的健壯性,核島控制器由2臺(tái)火災(zāi)報(bào)警控制器共同擔(dān)當(dāng),既可以分管所帶探測(cè)聯(lián)動(dòng)回路,通過(guò)聯(lián)網(wǎng)也可以作為核電火災(zāi)報(bào)警系統(tǒng)的冗余主機(jī),單機(jī)出現(xiàn)故障或離線時(shí),由另一臺(tái)完成對(duì)火災(zāi)報(bào)警系統(tǒng)的管理控制。某典型核電火災(zāi)報(bào)警控制系統(tǒng)示意圖如圖1所示,請(qǐng)注意圖中x(5或6)號(hào)核島控制器實(shí)際為2臺(tái)火災(zāi)報(bào)警控制器,其余子項(xiàng)根據(jù)規(guī)模大小控制器數(shù)量不一。
圖1 核電火災(zāi)報(bào)警控制系統(tǒng)示意圖Fig.1 Schematic of the fire alarm controlsystem of nuclear power plant
核電火災(zāi)報(bào)警系統(tǒng)的特殊性在于聯(lián)動(dòng)功能與DCS緊密相關(guān),除自身聯(lián)動(dòng)啟動(dòng)消防設(shè)備之外,部分重要設(shè)備的啟動(dòng),如風(fēng)機(jī),需要由DCS啟動(dòng),部分重要設(shè)備的動(dòng)作反饋信號(hào),如新風(fēng)閥,需要由DCS反饋,所以核島控制器需通過(guò)接口與協(xié)議與DCS保持通信。
為了確保與DCS通信的可靠性,核電火災(zāi)報(bào)警系統(tǒng)與DCS之間采取了雙主機(jī)雙鏈路的通訊連接模式,雙機(jī)保證了即使1臺(tái)主機(jī)檢修或故障,火災(zāi)報(bào)警系統(tǒng)仍然能夠與DCS保持正常通信,雙鏈路則保證了,單一通道故障下,火災(zāi)報(bào)警系統(tǒng)仍然能夠與DCS保持正常通信。而熱備的要求是,正常情況下僅使用某一通道的數(shù)據(jù)進(jìn)行監(jiān)控,該鏈路通信失效時(shí),自動(dòng)切換去另一通道,但需實(shí)時(shí)在線監(jiān)測(cè)備用鏈路的有效性,防止鏈路切換時(shí),才發(fā)現(xiàn)鏈路已故障。與之對(duì)應(yīng)的,無(wú)檢測(cè)備用鏈路稱之為冷備。雙主機(jī)雙鏈路與DCS通訊鏈接示意圖如圖2所示。
圖2 雙主機(jī)雙鏈路DCS通訊示意圖Fig.2 Schematic of DCS communicationbetween dual host and dual link
根據(jù)具體應(yīng)用不同,可以把P2P(peer to peer)網(wǎng)絡(luò)大致分為集中式對(duì)等網(wǎng)絡(luò),純分布式對(duì)等網(wǎng)絡(luò),混合式對(duì)等網(wǎng)絡(luò)[1]。例如Napster、Gnutella、eDonkey、eMule、Maze、BT等,用戶可以直接從任意一臺(tái)安裝同類軟件的PC上下載或上傳文件,并檢索、復(fù)制共享的文件。其中集中式對(duì)等網(wǎng)絡(luò)(如Napster、QQ)基于中央目錄服務(wù)器,由它為網(wǎng)絡(luò)中各節(jié)點(diǎn)提供目錄查詢服務(wù),傳輸內(nèi)容則無(wú)需經(jīng)過(guò)中央服務(wù)器。由于仍存在中央節(jié)點(diǎn),容易形成傳輸瓶頸,集中式的擴(kuò)展性比較差,不太適合大型網(wǎng)絡(luò),但目錄集中管理,對(duì)于小型網(wǎng)絡(luò)的管理和控制上也是一種可行方案。典型的Napster架構(gòu)如圖3所示。
圖3 Naspter集中式架構(gòu)圖Fig.3 Naspter centralized architecture
集中型對(duì)等網(wǎng)絡(luò)中的節(jié)點(diǎn)都連接到一個(gè)中心目錄,在中心目錄發(fā)布或注冊(cè)自己共享的文件信息,在需要文件時(shí),也連接到中心目錄查找索引。中心目錄接收到查詢請(qǐng)求時(shí),在索引中選擇符合要求的最佳節(jié)點(diǎn),如速度最快,距離最近,作為資源提供者。中心目錄模型圖如圖4所示。
圖4 中心目錄模型圖Fig.4 Central catalog model
火災(zāi)報(bào)警系統(tǒng)網(wǎng)絡(luò)在核電工程應(yīng)用中,規(guī)模不是太大,典型的核電應(yīng)用場(chǎng)景中,通常由20~30臺(tái)火災(zāi)報(bào)警控制器組成火災(zāi)報(bào)警系統(tǒng)網(wǎng)絡(luò),比較適用于集中式對(duì)等網(wǎng)絡(luò),但是火災(zāi)報(bào)警的重要性,又不能允許出現(xiàn)中央節(jié)點(diǎn)瓶頸,所以在集中型對(duì)等網(wǎng)絡(luò)的基礎(chǔ)上,輔以最小號(hào)推選機(jī)制,即正常監(jiān)控時(shí),由最小號(hào)火災(zāi)報(bào)警控制器擔(dān)任中央節(jié)點(diǎn),維護(hù)同步列表,并發(fā)送至其他控制器保存,一旦最小號(hào)控制器因故障離線或與DCS失聯(lián),立即由目前節(jié)點(diǎn)中的最小號(hào),獲得虛擬系統(tǒng)維護(hù)令牌,接任中央節(jié)點(diǎn),維護(hù)火災(zāi)報(bào)警網(wǎng)絡(luò)信息的正常傳遞與記錄,如圖5所示。雙主機(jī)熱備可將核島主控室的2臺(tái)火災(zāi)報(bào)警控制器主機(jī)分別設(shè)為1號(hào)與2號(hào)。
圖5 小號(hào)推選機(jī)制流程圖Fig.5 Flow chart of little number selection
在核島火災(zāi)報(bào)警控制器1、2號(hào)機(jī)熱備的前提下,雙機(jī)分別以單獨(dú)的鏈路與DCS連接如圖6所示。
圖6 雙機(jī)數(shù)據(jù)流程圖Fig.6 Flow chart of dual host data
與冷備不同的是,此時(shí)DCS兩個(gè)端口均同時(shí)發(fā)送相同數(shù)據(jù),首先以一條主鏈路A數(shù)據(jù)為準(zhǔn)進(jìn)行同步專用寄存器值的改查,主鏈路A、備用鏈路B同時(shí)回復(fù)應(yīng)答;當(dāng)主鏈路A出現(xiàn)故障后,由DCS進(jìn)行判斷后,切換到以另一條鏈路B數(shù)據(jù)為準(zhǔn)工作的模式。數(shù)據(jù)發(fā)送的時(shí)序關(guān)系如圖7所示。
圖7 雙機(jī)通訊時(shí)序圖Fig.7 Dual host communication sequence
火災(zāi)報(bào)警控制器與DCS之間通信為MODBUS協(xié)議,通過(guò)讀/寫專用寄存器列表來(lái)上傳報(bào)警信息與下達(dá)聯(lián)動(dòng)/反饋指令。
MODBUS接口規(guī)范見表1。
表1 MODBUS接口表
正常情況下,由1號(hào)機(jī)負(fù)責(zé)接收DCS命令與向DCS報(bào)告事件,2~×號(hào)機(jī)的報(bào)警事件信息均通過(guò)火警網(wǎng)絡(luò),傳送至1號(hào)機(jī),由1號(hào)機(jī)主改寫專用寄存器列表值,等待DCS讀取,如果DCS下達(dá)聯(lián)動(dòng)/反饋指令,由1號(hào)機(jī)主改寫專用寄存器列表值,通過(guò)火警網(wǎng)絡(luò)傳送至2~×號(hào)機(jī),進(jìn)行聯(lián)動(dòng)行動(dòng)或反饋顯示。此時(shí)專用寄存器列表由1號(hào)主機(jī)維護(hù),并同步給2號(hào)機(jī)保存?zhèn)溆茫?號(hào)機(jī)只是應(yīng)答DCS的查詢命令,表明鏈路熱備正常。非正常情況下,1號(hào)機(jī)與DCS因本身故障或鏈路故障,則利用小號(hào)推選機(jī)制,2號(hào)主機(jī)獲得虛擬維護(hù)令牌,主動(dòng)作為火警系統(tǒng)的主機(jī),利用備份寄存器列表與DCS開始通信。
但由于DCS指令可能為同步或異步發(fā)送的原因,雙主機(jī)接到命令或反饋可能有一定的時(shí)間差。在線巡檢命令與應(yīng)答沒(méi)有問(wèn)題,但因火警系統(tǒng)雙主機(jī)之間還有報(bào)警事件、聯(lián)動(dòng)信息等需要同步,同一條命令/事件的寄存器讀寫將可能存在不一致問(wèn)題。例如,發(fā)生報(bào)警事件后,在未完成寄存器列表同步之時(shí),出現(xiàn)讀指令或鏈路切換,DCS會(huì)讀到不一樣的寄存器狀態(tài),此時(shí),需要DCS延時(shí),待讀取寄存器狀態(tài)一致后讀取,或者是雙鏈路時(shí)默認(rèn)主鏈路數(shù)據(jù)為準(zhǔn),單鏈路時(shí)以該鏈路數(shù)據(jù)為準(zhǔn)。
火災(zāi)報(bào)警控制器雙主機(jī)冗余,既保證了火災(zāi)報(bào)警系統(tǒng)的可靠性,也為與DCS通信雙鏈路冗余奠定了基礎(chǔ)?;馂?zāi)報(bào)警控制器之間的小號(hào)推選機(jī)制可以保證虛擬的系統(tǒng)維護(hù)令牌在火災(zāi)報(bào)警控制器之間可靠傳遞,專用的DCS通信寄存器列表由系統(tǒng)維護(hù)令牌持有者維護(hù),保證了寄存器列表的唯一性與正確性。與DCS通信雙鏈路熱備冗余,相對(duì)于冷備來(lái)講,可實(shí)時(shí)監(jiān)測(cè)鏈路的通訊狀態(tài),防止故障于未然,避免了切換時(shí),才發(fā)現(xiàn)備用鏈路故障的情況,極大地提高了火災(zāi)報(bào)警系統(tǒng)與DCS之間通訊的可靠性,而由此帶來(lái)的,可能的應(yīng)答數(shù)據(jù)不一致的問(wèn)題,可以通過(guò)延時(shí)讀取,或確定數(shù)據(jù)通道來(lái)解決。
在實(shí)際項(xiàng)目通訊測(cè)試中的測(cè)試結(jié)果如表2所示。
表2 通訊測(cè)試結(jié)果
后續(xù)核電項(xiàng)目火災(zāi)報(bào)警系統(tǒng)與DCS通訊,將以雙鏈路熱備冗余DCS模式為主,這樣才能最大程度地滿足核電設(shè)計(jì)可靠性要求。通過(guò)前期多個(gè)實(shí)際項(xiàng)目的冷備聯(lián)調(diào),可以看到,DCS可以通過(guò)通信模塊,或設(shè)備多串口來(lái)實(shí)現(xiàn)冗余模式。由于位于通信發(fā)起的主動(dòng)方,DCS可以識(shí)別通信鏈路的有效性,而熱備冗余通信的兩條鏈路會(huì)同時(shí)下發(fā)讀、寫請(qǐng)求,也可能異步下發(fā),因此火災(zāi)報(bào)警控制器需要實(shí)現(xiàn)可以獨(dú)立回應(yīng)下發(fā)給自己的信息,還需要實(shí)現(xiàn)自己設(shè)備間的同步通信,同時(shí)需要防止數(shù)據(jù)震蕩,即始終同步不了?;馂?zāi)報(bào)警系統(tǒng)的控制器小號(hào)推選虛擬令牌傳遞輔以專用寄存器列表令牌維護(hù)的設(shè)計(jì),實(shí)現(xiàn)了雙主機(jī)雙鏈路的熱備冗余。在虛擬測(cè)試中,基于工控機(jī)(Intel Atom N270,1.6 G主頻CPU,1 G DDR2 SRAM內(nèi)存)為核心處理單元的火災(zāi)報(bào)警控制器,通過(guò)網(wǎng)口,虛擬DCS雙串口,間隔3 s查詢的條件下,可以實(shí)現(xiàn)寄存器列表的同步,且滿足GB 4717—2005《火災(zāi)報(bào)警控制器》中,控制器10 s內(nèi)發(fā)出火災(zāi)報(bào)警聲、光信號(hào)的要求,當(dāng)模擬出現(xiàn)鏈路故障時(shí),火災(zāi)報(bào)警系統(tǒng)可以自動(dòng)完成控制器虛擬令牌轉(zhuǎn)換,由熱備控制器依據(jù)備份專用寄存器列表與DCS進(jìn)行通信。