卡斯柯信號有限公司 張 彬 李常輝 潘 雷
在軌道交通信號設備領域中,目前廣泛使用雙套熱備冗余技術來提升設備的可靠性。熱備冗余的一般技術是保證互為熱備的兩套系統(tǒng)同時運行,其中一套設備作為主機保證當前的計算和通信功能;另外設備作為備機保證與主機的同步工作狀態(tài),但不進行計算決策及對外通信。當主機故障時通過主備切換軟件或硬件將備機轉為主機,保證整個系統(tǒng)的不間斷繼續(xù)運行。
本設備就是一種通用的主備切換設備,提供安全的主備切換控制功能。是基于單片機、電路板和安全繼電器組并集成NISAL編碼技術的SIL4級的通用安全切換單元。能完成通信管理,切換狀態(tài)采集,主備狀態(tài)顯示,人工切換等功能。
圖1 內(nèi)部結果及對外連接
所圖1所示切換設備包括機籠、兩個單片機板卡S1和S2、兩個獨立安全繼電器J1和J2及兩個獨立電源,單片機板卡分別連接外部子系統(tǒng)A和外部子系統(tǒng)B。
切換開關可以由開關控制三種控制狀態(tài):
(1)由通信接口向外部子系統(tǒng)A和外部子系統(tǒng)B發(fā)送消息,直接要求外部子系統(tǒng)A作為主機;
(2)由通信接口向外部子系統(tǒng)A和外部子系統(tǒng)B發(fā)送消息,直接要求外部子系統(tǒng)B作為主機;
(3)接收外部子系統(tǒng)A和外部子系統(tǒng)B發(fā)送給本設備的申請做主請求。根據(jù)先收到請求先判決為主機的原則,向外部子系統(tǒng)A和外部子系統(tǒng)B發(fā)送互斥的主備判決結果,被判決為主機的外部子系統(tǒng)收到代表做主機的消息,被判決為備機的外部子系統(tǒng)收到代表做備機的消息。當做主機的外部子系統(tǒng)自行放棄作為主機或者發(fā)生故障導致無法與本設備保持請求通信時,本設備會響應請求或檢測到外部子系統(tǒng)通信異常,將原先主機判決為備機,同時將原先的備機判決為主機。
S1和S2分別連接到安全互斥繼電器組上,并采集安全互斥繼電器J1和J2的觸點狀態(tài)及對應的不同的NISAL編碼,并將該結果返回至發(fā)出做主請求的外部子系統(tǒng)A和外部子系統(tǒng)B
由于安全互斥繼電器的安全互斥的特性,外部子系統(tǒng)A和外部子系統(tǒng)B在同一時間采集到的繼電器的狀態(tài)必然是互斥的, S1和S2利用繼電器的狀態(tài)作為判斷主備狀態(tài)并發(fā)送互斥的判決結果給外部子系統(tǒng)A和B,從而避免出現(xiàn)判決出雙主情況。
S1和S2能夠各自通過CAN口RS422接口與外部子系統(tǒng)A和B進行通信,每個通道的通信都有兩路,兩路通道傳輸同樣的數(shù)據(jù),即使一路故障另一路仍能夠使用,提升了通信的可靠性。不同的通信方式則可以避免共因失效的情況發(fā)生。
所述發(fā)給外部子系統(tǒng)A和B的消息是根據(jù)繼電器狀態(tài)采集到的預存NISAL碼字。NISAL技術是ALSTOM通過國際權威機構認證的SIL4安全技術,使得從本設備發(fā)出的信息即使在傳輸過程中出現(xiàn)錯誤,也是可以被檢測到的。保證了判決的安全性。
圖2 工作處理流程
設備工作時的工作流程如下:
當切換開關置于自動判決狀態(tài)時(即切換開關送至主備切換模塊F3的檔位信息為自動判決):
步驟1:外部子系統(tǒng)A和B將請求信息發(fā)送至S1和S2,S1和S2內(nèi)的輸入管理模塊F1接收請求信息。
步驟2:輸入管理模塊F1將外部請求發(fā)送給主備切換模塊F3。若F1沒有收到外部請求則會將寬恕時間發(fā)送給F3,若后續(xù)一直沒有收到新的外部請求,則寬恕時間會不斷累加并發(fā)送給F3,若有收到新的外部請求,則寬恕時間清零。
步驟3:主備切換模塊F3根據(jù)輸入管理模塊F1傳來的申請發(fā)送控制繼電器動作的命令,收到做主請求則控制吸起繼電器、收到釋放請求則控制釋放繼電器。若收到寬恕時間并判斷大于閾值(閾值為略大于外部子系統(tǒng)與輸入管理模塊F1通信間隔的一個時間值),則控制釋放繼電器。同時F3還會將收到的切換開關檔位信息發(fā)送給輸出管理模塊F5。
步驟4:繼電器會根據(jù)主備切換模塊F3的控制命令進行動作,詳細原理會在后面進行詳述。
步驟5:狀態(tài)采集模塊F2會通過繼電器設置的FLASH地址位進行尋址,并采集FLASH內(nèi)的代表做主或做備的NISAL碼字發(fā)送給輸出管理模塊F5。
步驟6:輸出管理模塊F5將從F2收到的NISAL碼字以及從F3收到的檔位信息一并發(fā)送給外部子系統(tǒng)。
步驟7:外部子系統(tǒng)根據(jù)收到的判決結果來設置自身的主備狀態(tài)。
當切換開關置于強制外部子系統(tǒng)A做主狀態(tài)時(即切換開關送至主備切換模塊F3的檔位信息為外部子系統(tǒng)A做主):工作流程和自動判決時一樣,但在步驟3時主備控制模塊F3忽略外部請求和寬恕時間。S1直接控制J1吸起、S2直接控制J2釋放。
當切換開關置于強制外部子系統(tǒng)B做主狀態(tài)時(即切換開關送至主備切換模塊F3的檔位信息為外部子系統(tǒng)B做主):工作流程和自動判決時一樣,但在步驟3時主備控制模塊F3忽略外部請求和寬恕時間。S1直接控制J1釋放、S2直接控制J2吸起。
圖3 單片機、繼電器及FLASH組合原理
主備切換設備的一個重要的功能就是避免判決結果為雙方同時作為主機,這樣會嚴重影響系統(tǒng)的可靠性和安全性。本設備采用兩組安全型繼電器組成安全互斥電路,保證主備輸出結果互斥,不會產(chǎn)生雙主的情況(見圖3)。
S1對J1吸起的電信號Power1 12V通過J2的一個常閉觸點連接到J1的勵磁端。S2對J2吸起的電信號Power2 12V通過J1的一個常閉觸點連接到J2的勵磁端。S1的FLASH的DR0地址位連接到J1的常閉觸點,DR1地址位連接到J1的常開觸點。S2的FLASH的DR0地址位連接到J2的常閉觸點,DR1地址位連接到J2的常開觸點。所有的控制情況如下所示:
當外部子系統(tǒng)A首先申請做主時,S1首先控制吸起J1,S1控制Power1 12V通過J2的常閉觸點接入J1勵磁端,吸起J1。此時J1的常閉觸點打開,Power2 12V到J2勵磁端的通路被切斷,S2要求吸起J2的操作無法真正吸起J2,但只要外部子系統(tǒng)B持續(xù)申請做主,S2將保持Power2 12V的勵磁輸出。此時S1由繼電器狀態(tài)決定的DR0地址為“0”,DR1地址為“1”,即S1板FLASH尋址的最高兩位被設為“01”,此區(qū)域FLASH內(nèi)存放的是代表判決做主機的NISAL碼字。對應S2板FLASH尋址的最高兩位則被設為“10”,此區(qū)域FLASH內(nèi)存放的是代表判決做備機的NISAL碼字。兩套碼字將分別發(fā)送給外部子系統(tǒng)A和B,即A機做主機,B機做備機。
若S2仍持續(xù)收到外部子系統(tǒng)B的做主申請,S2將保持Power2 12V的勵磁輸出。當S1收到要求釋放繼電器或無法連接到外部子系統(tǒng)A時, S1不再輸出Power1 12V,J1被控制釋放。Power2 12V連接到J1的觸點從斷開狀態(tài)變?yōu)殚]合狀態(tài),Power2 12V的輸出被送至J2勵磁端,J2被吸起。此時Power1 12V連接到J2上的觸點被打開,在J2被釋放前,J1無法再被勵磁吸起。此時S2由繼電器狀態(tài)決定的DR0地址為“0”,DR1地址為“1”,即S2板FLASH尋址的最高兩位被設為“01”,此區(qū)域FLASH內(nèi)存放的是代表判決做主機的NISAL碼字。對應S1板FLASH尋址的最高兩位則被設為“10”,此區(qū)域FLASH內(nèi)存放的是代表判決做備機的NISAL碼字。兩套碼字將分別發(fā)送給外部子系統(tǒng)A和B,即A機做備機,B機做主機。
當外部子系統(tǒng)B首先申請做主時,S2首先控制吸起J2,S2控制Power2 12V通過J1的常閉觸點接入J2勵磁端,吸起J2。此時J2的常閉觸點打開,Power1 12V到J1勵磁端的通路被切斷,S1要求吸起J1的操作無法真正吸起J1,但只要外部子系統(tǒng)A持續(xù)申請做主,S1將保持Power1 12V的勵磁輸出。此時S2由繼電器狀態(tài)決定的DR0地址為“0”,DR1地址為“1”,即S2板FLASH尋址的最高兩位被設為“01”,此區(qū)域FLASH內(nèi)存放的是代表判決做主機的NISAL碼字。對應S1板FLASH尋址的最高兩位則被設為“10”,此區(qū)域FLASH內(nèi)存放的是代表判決做備機的NISAL碼字。兩套碼字將分別發(fā)送給外部子系統(tǒng)A和B,即A機做備機,B機做主機。
若S1仍持續(xù)收到外部子系統(tǒng)A的做主申請,S1將保持Power1 12V的勵磁輸出。當S2收到要求釋放繼電器或無法連接到外部子系統(tǒng)B時,S2不再輸出Power2 12V,J2被控制釋放。Power1 12V連接到J2的觸點從斷開狀態(tài)變?yōu)殚]合狀態(tài),Power1 12V的輸出被送至J1勵磁端,J1被吸起。此時Power2 12V連接到J1上的觸點被打開,在J1被釋放前,J2無法再被勵磁吸起。此時S1由繼電器狀態(tài)決定的DR0地址為“0”,DR1地址為“1”,即S1板FLASH尋址的最高兩位被設為“01”,此區(qū)域FLASH內(nèi)存放的是代表判決做主機的NISAL碼字。對應S2板FLASH尋址的最高兩位則被設為“10”,此區(qū)域FLASH內(nèi)存放的是代表判決做備機的NISAL碼字。兩套碼字將分別發(fā)送給外部子系統(tǒng)A和B,即A機做主機,B機做備機。
當S1收到要求釋放繼電器或無法連接到外部子系統(tǒng)A且S2收到要求釋放繼電器或無法連接到外部子系統(tǒng)B時。S1不再輸出Power1 12V,S2不再輸出Power2 12V。J1和J2均被釋放。此時S1和S2的FLASH尋址的最高兩位都是“10”, 此區(qū)域FLASH內(nèi)存放的是代表判決做備機的NISAL碼字。此時向外部子系統(tǒng)A和B發(fā)送的信息都是做備機。
本文設計主備切換裝置采用了互斥繼電器的設計,確保了不會出現(xiàn)雙主的判決結果。同時采用NISAL編碼技術以及雙通道通信技術,保證的通信的可靠性和錯誤可檢出性。是一種安全可靠的主備切換控制設備,可以廣泛應用于軌道交通信號控制系統(tǒng)的車載及軌旁系統(tǒng)中,目前已經(jīng)在多地有軌電車項目中投入使用。
[1]周宇恒,楊輝,余文兵,等.基于Stateflow的軌旁安全平臺主備切換機制設計[J].鐵道通信信號,2015,(6):88-91. DOI:10.13879/j.issn1000-7458.2015-06.15040.
[2]李付軍.基于PCC的雙機熱備控制系統(tǒng)研制[J].電子機械工程,2012,(4):39-41. DOI:10.3969/j.issn.1008-5300.2012.04.011.
[3]陳樹泉,唐濤,馬連川, 等.2乘2取2安全計算機關鍵算法的設計與實現(xiàn)[J].計算機安全,2008,(3):7-9.DOI:10.3969/j.issn.1671-0428.2008.03.003.
[4]王江江,李志強,趙亮.雙機熱備系統(tǒng)的主備切換研究[J].鐵道通信信號,2015,(2):11-12,54. DOI:10.13879/j.issn1000-7458.2015-02.14485.