摘 要:本文以磁浮列車自動防護系統(ATP)為應用背景,對磁浮列車車載安全型計算機進行了研究。本文根據磁浮列車車載ATP系統對安全性的要求,對雙機比較這一模式展開了研究,利用單片機作為實驗平臺,設計并實現了滿足“故障-安全”原則的安全型計算機系統,并對各種可能出現的故障現象進行了實驗驗證。
關鍵詞:磁浮列車,自動防護系統,雙機比較,安全性,“故障-安全”
隨著科學技術的發展,磁浮列車作為一種新型的交通工具已經逐漸進入了我們的生活。如何保證磁浮列車的可靠性和安全性,就成為了擺在科研工作者們面前的現實問題。磁浮列車自動防護(MATP)系統是保障列車可靠運行的重要一環,它本身必須有很高的可靠性,為避免出現ATP系統故障時引起嚴重后果,一般采用冗余結構來對ATP進行設計。本文就是以磁浮列車ATP系統為應用背景,設計了一套基于“故障—安全”原則的安全計算機系統。
在冗余系統中,雙模冗余以其較高的可靠性以及較低的硬件成本成為首選。而雙模冗余系統中,雙機比較結構是較為常用的方案。該方案在開機運行后,同步采集外部數據,并對兩處理機的計算結果進行比較,若二者結果相同,則對外輸出相應的控制信號,若不同就將外部系統導向安全側,因此該系統是基于“故障—安全”原則的,具有較高的安全性,但不具有容錯功能。磁懸浮列車作為一種面向大眾的交通工具,安全性無疑是最重要的,因此該系統基本可以滿足需要。為了提高系統可靠性,也可以結合軟件設計將雙機比較結構配置成基于“故障—安全”的冗余系統。
1. 整體結構設計
系統主要是由輸入電路板,兩塊主CPU板,一塊仲裁CPU板和輸出電路板組成。系統框圖如圖1所示。
[align=center]

圖1 系統結構總圖[/align]
外界狀態經相關電路轉換為CPU可以處理的數據,通過輸入電路被兩路處理CPU同時鎖存,以保證讀入的數據相同,兩處理CPU把采集到的信號各自按照相應的ATP算法,對相關數據進行計算處理,計算出結果并暫存入緩沖區,然后將其傳送到仲裁CPU。
仲裁CPU把兩者的結果進行比較。如果相同就輸出結果,并反饋發送成功信息告知兩處理CPU,否則仲裁CPU向處理CPU發送重發命令,讓其重新發送處理結果,若在兩次重發后結果仍然不同,則系統停機并報警,將外部系統直接導向安全側。為了防止輸出總線出現故障,而比較系統卻無法判斷,本系統還建立回讀機制,將輸出的信號回讀再次比較,以進一步判斷系統的完好性。
輸出電路則完成相關控制數據的傳輸工作,并能鎖存前一次發送出的控制信號,以備回讀比較。
2. 主CPU板設計
該單元是整個ATP系統的處理核心,主要完成對外部已采集到的狀態信息同步讀入、同步計算ATP相關數據、輸出供仲裁CPU比較的結果數據、對外輸出控制數據等工作。主CPU板單元電路結構框圖如圖2所示。
[align=center]

圖2 主CPU板硬件框圖[/align]
該板由兩塊CPU構成,它們同時讀入外部數據,在并行狀態下對其進行處理,待計算結束就將結果編碼輸送給仲裁CPU判定。該板對仲裁機的結果輸送及相關通信在整個系統運行過程中顯得相當重要,所以傳輸的可靠性必須得到保證。本系統主要采用雙口RAM來傳輸數據,雙處理CPU相互之間通過串口來輔助通信,完成同步等工作。處理單元為了保證通信的可靠性,采用CAN總線作為通信冗余,在雙口RAM和上位機通信失敗的情況下,啟用備用CAN通信鏈路可以極大的提高系統的可靠性。
兩處理CPU在收到仲裁CPU的讀外部信號的命令,為了保證兩者讀到的數據相同,需要鎖存外部信號并讀入,兩處理CPU必須在讀到外部信號后,兩者相互發送所讀數據并進行比較,若不同,再重新鎖存并讀入,再比較。在重復比較N次后(N值由試驗確定,本系統中N=5)仍失敗的情況下,將外部系統導向安全側,否則重復的讀取操作必然會導致系統始終處于等待狀態,令系統陷于死循環而無法正常工作。
3. 仲裁CPU板硬件設計
仲裁CPU板主要負責判斷處理器板上雙處理器的狀態,完成與處理單元相互交換數據的功能,并在結果比較成功后控制處理CPUA經過輸出電路輸出,或者自己直接輸出。
兩個主CPU板對經過ATP算法處理過后的數據,按照一定規則進行編碼,然后經過雙口RAM(或者備用CAN總線)傳送給仲裁CPU板。
仲裁CPU板在精確的周期內分別接收來自兩個處理單元CPU板發來信息后,首先進行比較,比較結果一致,則控制處理CPUA板安全輸出;若比較結果不一致,則認為系統故障,系統停機,斷開處理CPUA板的輸出,將系統導向安全側,并發出警報通知工作人員檢修。仲裁CPU板硬件電路如3所示。
[align=center]

圖3 仲裁板結構圖[/align]
仲裁CPU與處理CPU之間的通信主要通過雙口RAM來實現,當處理CPU完成數據處理,便將處理結果送到雙口RAM,而仲裁CPU根據需要直接在雙口RAM中取出數據進行處理。CAN作為備用的通信通道,一旦發現雙口RAM失效,立即啟用現場總線CAN來完成通信任務。
為了實現兩處理CPU的同步處理,仲裁CPU在收到完整的比較數據之后,通過發送中斷信號的方式給兩處理CPU發送讀外部數據命令,然后再對兩處理CPU的計算結果進行比較。整個處理流程當中,處理CPU的數據處理時間相對仲裁CPU的比較和輸出時間要長很多,按此可以使處理CPU與仲裁CPU的工作實現流水作業,提高系統的數據處理效率。仲裁CPU比較成功后,仍然需要發信息通知兩處理CPU,以便下一次計算結果傳過來之前,刪除保存在緩沖區的過時數據結果。
4. 輸入板和輸出板設計
輸入板提供數字量和模擬量輸入。該板能夠鎖存外部的信號,以保證兩處理CPU板同步讀入外部信號,同時還能夠在系統啟動時給處理CPU提供自檢信號,幫助系統進行故障監測和故障定位,使系統具有更高的可靠性。
輸出板則連接處理CPUA和仲裁CPU的端口,保證控制信號能夠順利地傳輸給控制器。該板與仲裁板之間設計了回讀電路,每次送出控制信號后仲裁CPU都進行回讀,保證控制信號的正確性,同時也是對處理CPU和輸出電路之間輸出總線的監督,仲裁CPU在該總線失效的情況下啟用自身與輸出板之間的總線輸出,更進一步的提高系統可靠性。
5. 系統安全性設計
為了保證系統的高安全性,一旦雙機結果比較不成功或者相互檢測出故障,系統停止工作,導向安全側,并報警通知維修人員維修。故障的確認通過定時超時技術和通信數據編碼校驗技術來完成。
處理CPU處理完數據后,將結果編碼發送,待發送完畢,定時等待接收仲裁CPU發送的特定狀態信號和讀外部數據命令,如果狀態信號不對或者發生等待超時,就會認定仲裁CPU故障,從而將仲裁CPU的運行狀態記錄改變成故障,系統停止工作,導向安全側。
由于磁浮列車ATP算法的確定性,每個周期的時間都可以事先確定,這樣在仲裁CPU接到第一個數據后、接到兩個數據后都可以定時等待下一個數據的到來,并且對每個結果進行校驗,如發生超時或者校驗發生錯誤,都將認定為處理CPU的故障。仲裁CPU在收到處理CPU的數據之后,立即回復一個確認碼,讓處理CPU確認仲裁CPU的狀態,防止錯誤認定仲裁CPU出現故障。
通過以上的設計安排,系統內部就建立了相互之間的故障監督機制。三塊CPU將監督對象的狀態編碼輸出,最后將這三者的信號整合成整個系統的狀態信號,任意一個內部狀態的改變都將引起整個系統狀態的改變,又可以由整個系統的狀態信號來完成導向安全側的任務。
6. 仿真實驗驗證
本套安全計算機裝置設計完后,在實驗室里進行了仿真測試實驗。假定輸入板上輸入一個周期為1秒的方波信號,處理CPU板每隔10毫秒讀取輸入板上的數據,由雙CPU進行比較后,實時改變輸出繼電器的狀態。比較結果不一致,則切斷輸出并報警。
模擬系統故障情況對本系統進行測試:
1、將其中一個CPU拔掉,模擬一個CPU出現故障或是處理錯誤,系統立刻就能夠斷開輸出繼電器,同時系統停機,不再對任何外部信號響應,將外部系統導向安全側。
2、將仲裁板的微控制器拔掉或使該板重啟,這時系統也立刻就能夠使繼電器斷開,使輸出無效,同時系統停機,不再對任何外部信號響應,導向安全側。
3、將CAN通訊控制器件斷開,同上面兩種情況一樣,本系統同樣能導向安全側。
4、將輸出板斷電,由于系統回讀不正確,也能立即停機,導向安全側。
值得注意的一點是,在上述故障狀態下,系統并不能自動恢復,說明系統不具備在線可維修能力。但以上測試結果符合設計要求,也基本滿足磁懸浮列車ATP系統對安全性的要求。
7. 結論
該系統的創新點主要有如下幾個方面:一是輸出控制與輸出數據由不同的部分完成,這樣就可以將錯誤輸出的概率進一步降低,便于故障導向安全功能的實現;二是該電路引入了輸入自檢以及輸出回讀,使系統可靠性進一步增加;三是雙機比較系統的“故障—安全”機制使系統可以規避危險。對該安全計算機結構利用馬爾可夫理論進行分析 5,可得知其安全度大大高于一般雙機冗余方案。該系統應用在磁懸浮列車ATP系統中,可完全滿足系統設計要求。
參考文獻
1 胡謀.計算機容錯技術.中國鐵道出版社.1995年,北京
2 李貽斌,劉明,王曉明.雙機容錯系統的仲裁器設計.微計算機信息,1997,第13卷第四期:71-73
3 王珍熙.可靠性·冗余及容錯技術.航空工業出版社.1991年
4 趙志熙.微機聯鎖系統技術.中國鐵道出版社.1995年,北京
5 閆劍平,汪希時.兩種方式雙機熱備結構的可靠性和安全性分析.鐵道學報.2000,第22卷第3期:124-127
一種磁浮列車安全型計算機系統的設計與實現資料下載