李航
晉能控股煤業(yè)集團(tuán)鐵路運(yùn)營管理山西有限公司礦山鐵路分公司 山西 大同 037007
近年來,計(jì)算機(jī)技術(shù)在社會(huì)各個(gè)領(lǐng)域中都發(fā)揮了重要的作用,在鐵路信號(hào)系統(tǒng)中,計(jì)算機(jī)技術(shù)已經(jīng)成為不可替代的重要技術(shù)。鐵路信號(hào)系統(tǒng)主要負(fù)擔(dān)了日常行車安全管理和列車行車組織管理任務(wù),隨著規(guī)模的增大及自動(dòng)化程度的提升,系統(tǒng)復(fù)雜程度也不斷增加。因此,在運(yùn)行當(dāng)中,對(duì)于系統(tǒng)的安全性、可靠性必須基于較高的保障。在計(jì)算機(jī)聯(lián)鎖控制系統(tǒng)的應(yīng)用當(dāng)中,以計(jì)算機(jī)為核心,通過對(duì)相關(guān)容錯(cuò)技術(shù)的運(yùn)用,可以提供更為有效的安全保障。
鐵路信號(hào)指的是利用圖像、位置、顏色等特定信息,通過機(jī)器設(shè)備引導(dǎo)對(duì)信息進(jìn)行傳輸,為鐵路工作人員發(fā)出指令。當(dāng)前對(duì)于鐵路信號(hào)的具體定義尚未統(tǒng)一規(guī)定。從廣義上來說,鐵路信號(hào)是為鐵路運(yùn)輸系統(tǒng)服務(wù),是一種特殊的技術(shù)設(shè)備。在狹義上來說,鐵路信號(hào)就是工作人員或系統(tǒng)發(fā)出的信號(hào),包括閉合設(shè)備、聯(lián)鎖、信號(hào)顯示等。計(jì)算機(jī)聯(lián)鎖系統(tǒng),指的是火車行進(jìn)過程中的軌道、道岔、信號(hào)機(jī)之間聯(lián)鎖關(guān)系的處理系統(tǒng),控制指令由操作員發(fā)出,將聯(lián)鎖信息輸出[1]。容錯(cuò)技術(shù),是對(duì)故障和錯(cuò)誤的容忍,在故障發(fā)生之后,系統(tǒng)不會(huì)由于故障中斷運(yùn)行,執(zhí)行結(jié)果也不會(huì)對(duì)系統(tǒng)故障造成的差錯(cuò)提供報(bào)告。容錯(cuò)計(jì)算機(jī)系統(tǒng),是在故障發(fā)生之后,仍然能夠控制系統(tǒng)發(fā)出指令和完成工作。
在鐵路信號(hào)系統(tǒng)運(yùn)行中,計(jì)算機(jī)聯(lián)鎖控制系統(tǒng)容易發(fā)生一些故障,發(fā)生原因涉及人為因素、物理因素等方面。在物理因素方面,主要由系統(tǒng)運(yùn)行外部環(huán)境影響、系統(tǒng)內(nèi)部元器件缺陷等。例如,電磁干擾、機(jī)械振動(dòng)、機(jī)械沖擊等均屬于外部環(huán)境,通電運(yùn)行期間產(chǎn)生老化、安裝過程中出現(xiàn)開路、生產(chǎn)過程中氧化穿孔等,均屬于內(nèi)部缺陷[2]。在人為因素方面,主要包括有目的性蓄意破壞、無意識(shí)性操作錯(cuò)誤等原因。
三模冗余是計(jì)算機(jī)聯(lián)鎖領(lǐng)域中比較常見的一種容錯(cuò)技術(shù),簡稱為TMR。在三模冗余系統(tǒng)當(dāng)中,分別含有3個(gè)相同的模塊,可以是3臺(tái)相同的計(jì)算機(jī)或是3個(gè)相同的其他部件。3個(gè)模塊對(duì)相同的命令同時(shí)執(zhí)行,將模塊輸出向表決器輸入端傳送,然后將表決器輸出作為系統(tǒng)輸出。在該技術(shù)的運(yùn)行原理當(dāng)中,基本出發(fā)點(diǎn)是對(duì)多數(shù)模塊正確輸出的承認(rèn),糾錯(cuò)原理主要是少數(shù)服從多數(shù)。在系統(tǒng)輸出當(dāng)中,將3個(gè)當(dāng)中兩個(gè)正確的多數(shù)作為正確輸出結(jié)果。在正常運(yùn)行中,對(duì)于總體輸出的正確性關(guān)注即可,無須對(duì)其中各個(gè)模塊的對(duì)錯(cuò)加以分析。一般來說,3個(gè)模塊給出的3個(gè)輸出應(yīng)當(dāng)是相同的。因此表決器選擇一個(gè)正確結(jié)果作為輸出。而如果有一個(gè)模塊發(fā)生錯(cuò)誤,與其他兩個(gè)模塊不同,表決器也可以對(duì)正確結(jié)果進(jìn)行輸出[3]。但是,如果有兩個(gè)模塊同時(shí)發(fā)生相同的錯(cuò)誤,表決器就會(huì)將其誤認(rèn)為正確結(jié)果輸出。而如果3個(gè)模塊輸出的結(jié)果都是不同的,系統(tǒng)就無法正常運(yùn)行。不過,雖然上述幾種情況都有發(fā)生的可能,但是在實(shí)際運(yùn)行中發(fā)生差錯(cuò)的概率是很低的。該系統(tǒng)運(yùn)用三模表決的方式,使系統(tǒng)可靠性大大提高,為行車安全也提供了更大保障。但是,該系統(tǒng)具有較高的復(fù)雜性,對(duì)于技術(shù)水平有較高要求,在三重模塊軟硬件同步方面也面臨較大難度,因此價(jià)格成本比較高。
雙機(jī)熱備也稱為待命儲(chǔ)備系統(tǒng),是一種常見的動(dòng)態(tài)冗余技術(shù)。在雙機(jī)熱備系統(tǒng)當(dāng)中,包括了S+1個(gè)模塊,結(jié)合切換開關(guān)、故障檢查器等部件構(gòu)成。其中,處于工作狀態(tài)的模塊為1個(gè),處于待命接替狀態(tài)的模塊為S個(gè)。日常運(yùn)行當(dāng)中,由基本模塊負(fù)責(zé)完成正常工作,作為儲(chǔ)備模塊的待命接替模塊做好運(yùn)行準(zhǔn)備。如果在實(shí)際運(yùn)行當(dāng)中發(fā)生故障,故障檢測(cè)器將會(huì)發(fā)現(xiàn)工作狀態(tài)基本模塊處于故障狀態(tài),會(huì)自動(dòng)啟動(dòng)切換開關(guān),將故障模塊切除,使用正常的儲(chǔ)備模塊繼續(xù)運(yùn)行。如果一個(gè)儲(chǔ)備模塊接替工作后再次發(fā)生故障,則繼續(xù)切除并更換為另一個(gè)儲(chǔ)備模塊。這種切除替代的方式,可以運(yùn)行到所有S個(gè)儲(chǔ)備模塊完全耗盡[4]。在具體運(yùn)用當(dāng)中,根據(jù)經(jīng)濟(jì)原則及性能原則,這種雙機(jī)熱備的容錯(cuò)技術(shù)具有糾錯(cuò)率高、容易實(shí)現(xiàn)、結(jié)構(gòu)簡單等優(yōu)勢(shì),所以在具體運(yùn)行中應(yīng)用較為廣泛。雙機(jī)熱備模式可以實(shí)現(xiàn)雙模并行工作的狀態(tài),能夠?qū)崿F(xiàn)快速切換、連續(xù)運(yùn)行的目的,對(duì)于鐵路信號(hào)設(shè)備瞬時(shí)控制、連續(xù)控制的要求均可滿足。所以,在系統(tǒng)硬件結(jié)構(gòu)方面,可采取雙機(jī)熱備系統(tǒng)。
在鐵路信號(hào)容錯(cuò)計(jì)算機(jī)聯(lián)鎖控制系統(tǒng)中,主要可以分為三層邏輯,分別是人機(jī)會(huì)話、維修管理、通信接口層,聯(lián)鎖邏輯運(yùn)算層,數(shù)據(jù)采集、命令驅(qū)動(dòng)層。
在各個(gè)部分具體構(gòu)成當(dāng)中,人機(jī)會(huì)話使用了主機(jī)、備機(jī),并且運(yùn)用了熱備模式。使用同時(shí)工作的雙擊,并且具有物理層面上的獨(dú)立性。在相同的時(shí)間內(nèi),僅有一臺(tái)設(shè)備接受人工操作控制??梢圆捎面I盤輸入、鼠標(biāo)點(diǎn)擊等方式形成操作命令,然后由系統(tǒng)動(dòng)態(tài)數(shù)據(jù)表為基礎(chǔ),對(duì)其合法性初步檢查,將操作人員錯(cuò)誤操作消除。然后向聯(lián)鎖機(jī)發(fā)送命令,同時(shí)對(duì)聯(lián)鎖機(jī)返回的命令執(zhí)行情況、站場(chǎng)中信號(hào)設(shè)備動(dòng)態(tài)狀態(tài)信息等進(jìn)行接收。將值班員各項(xiàng)執(zhí)行任務(wù)完成,在顯示屏中實(shí)時(shí)顯示系統(tǒng)狀態(tài)信息、聯(lián)鎖機(jī)執(zhí)行結(jié)果等信息。維修管理機(jī)不會(huì)向聯(lián)鎖機(jī)發(fā)送任何信息,指揮通過車站控制局域網(wǎng),從人機(jī)會(huì)話機(jī)中接受操作員的操作命令,獲取站場(chǎng)中信號(hào)設(shè)備的表示信息,以及聯(lián)鎖機(jī)命令執(zhí)行情況等。利用這些信息,對(duì)值班員操作命令、系統(tǒng)錯(cuò)誤、站場(chǎng)變化信息、與微機(jī)監(jiān)測(cè)接口等進(jìn)行記錄,還可提供再現(xiàn)、打印、存儲(chǔ)、記錄功能,方便后續(xù)維修服務(wù)。系統(tǒng)還在這部分配備了全站場(chǎng)室外信號(hào)設(shè)備監(jiān)視窗口,能夠讓操作員對(duì)情況隨時(shí)了解并進(jìn)行維護(hù)。通信前置機(jī)中,能夠和車站綜合廣域網(wǎng)及局域網(wǎng)進(jìn)行通信連接,包括各種輔助行車系統(tǒng),如旅客向?qū)到y(tǒng)、車次號(hào)輸入系統(tǒng)、DMIS系統(tǒng)、CTC系統(tǒng)等。同時(shí),能夠和聯(lián)鎖相關(guān)功能、聯(lián)鎖測(cè)試功能等進(jìn)行通信連接。
聯(lián)鎖邏輯運(yùn)算層中,分別設(shè)置了兩臺(tái)聯(lián)鎖機(jī),且相互作為熱備??梢詫?duì)人機(jī)會(huì)話機(jī)發(fā)出的聯(lián)鎖命令進(jìn)行接收,并按照采集驅(qū)動(dòng)層獲取現(xiàn)場(chǎng)實(shí)施狀態(tài)數(shù)據(jù),完成聯(lián)鎖運(yùn)算,并向人機(jī)會(huì)話層、采集驅(qū)動(dòng)層發(fā)送運(yùn)算結(jié)果。在計(jì)算機(jī)聯(lián)鎖控制系統(tǒng)中,聯(lián)鎖邏輯運(yùn)算層是一個(gè)重要的核心部分,其可靠性與安全性,對(duì)于整個(gè)系統(tǒng)的可靠性和安全性都有直接影響。采集驅(qū)動(dòng)層能夠?qū)θ藱C(jī)會(huì)話機(jī)發(fā)出的控制命令加以執(zhí)行,并將現(xiàn)場(chǎng)信號(hào)設(shè)備實(shí)時(shí)狀態(tài)發(fā)送到維管機(jī)和人機(jī)會(huì)話機(jī)。該部分使用了全電子化無觸點(diǎn)的電子模塊,負(fù)責(zé)采集現(xiàn)場(chǎng)信號(hào)設(shè)備數(shù)據(jù)信息,并提供驅(qū)動(dòng)功能。
4.2.1 硬件冗余。在硬件冗余部分,可將系統(tǒng)視為雙模容錯(cuò)結(jié)構(gòu)看待。這是由于在硬件方面,兩個(gè)聯(lián)鎖機(jī)屬于雙模塊。同時(shí)在鐵路信號(hào)系統(tǒng)中有實(shí)時(shí)性要求,所以運(yùn)用了熱備份的模式。使用兩個(gè)集線器,分別將維管機(jī)、人機(jī)對(duì)話機(jī)、聯(lián)鎖機(jī)連接形成了兩個(gè)局域網(wǎng),具有相互冗余的功能。兩個(gè)聯(lián)鎖機(jī)之間,以及人機(jī)對(duì)話機(jī)和兩個(gè)聯(lián)鎖機(jī)之間,分別能夠完成控制信息及數(shù)據(jù)的相互傳遞,并且使用了TCP/IP的通信協(xié)議實(shí)現(xiàn)。通過對(duì)局域網(wǎng)絡(luò)的應(yīng)用,能夠?qū)崿F(xiàn)相互通信的高速率要求,并且與DIMS系統(tǒng)等外部網(wǎng)絡(luò)的連接上也更加便利。在局部網(wǎng)絡(luò)的網(wǎng)絡(luò)通信當(dāng)中,有發(fā)生故障的可能,為了避免故障造成整個(gè)系統(tǒng)容錯(cuò)性能的降低,應(yīng)用了局部網(wǎng)絡(luò)冗余的形式。分別在兩個(gè)聯(lián)鎖機(jī)和人機(jī)對(duì)話機(jī)中,設(shè)置雙網(wǎng)絡(luò)接口板,連接也使用了兩套網(wǎng)線,因此分別連接了兩套局部網(wǎng)絡(luò),進(jìn)而使整個(gè)系統(tǒng)的容錯(cuò)性能得到了較好的提升。
4.2.2 軟件冗余。在軟件冗余中,使用雙份編碼的聯(lián)鎖模塊,而編碼分別使用了不同的編成結(jié)構(gòu)、編程語言,同時(shí)也應(yīng)用了不同物理地址內(nèi)存空間的數(shù)據(jù),采用仿作工作模式。在聯(lián)鎖運(yùn)算結(jié)果輸出前和數(shù)據(jù)采集之后,為了使故障潛伏期減小,使用軟件比較器、同步控制器等進(jìn)行監(jiān)控和比較,對(duì)故障做出實(shí)時(shí)監(jiān)測(cè)。在兩個(gè)程序相互同步過程中,應(yīng)用RTLinux實(shí)時(shí)時(shí)鐘,能夠根據(jù)任務(wù)周期完成同步。如果得出了不同的最終運(yùn)算結(jié)果,系統(tǒng)會(huì)對(duì)自檢程序加以調(diào)用并重新執(zhí)行,將瞬時(shí)故障過濾掉,對(duì)是否有永久故障加以確定。A、B機(jī)通過聯(lián)鎖運(yùn)算,獲取了2×2的結(jié)果,最終結(jié)果一致的兩個(gè)結(jié)果分別向聯(lián)鎖執(zhí)行主機(jī)傳輸比較,再次確認(rèn)一致之后,向人機(jī)交互及(M機(jī))發(fā)出確認(rèn)命令,由M機(jī)接受之后,對(duì)信息進(jìn)行確認(rèn),然后比較命令動(dòng)態(tài)表中的原始命令。確認(rèn)一致之后,將允許發(fā)送信號(hào)傳輸給聯(lián)鎖執(zhí)行主機(jī),再由聯(lián)鎖執(zhí)行主機(jī)向命令驅(qū)動(dòng)層發(fā)送結(jié)果命令。而如果比較后發(fā)現(xiàn)不一致,向B機(jī)發(fā)送重復(fù)運(yùn)算信號(hào),對(duì)本機(jī)動(dòng)態(tài)結(jié)果數(shù)據(jù)表中響應(yīng)標(biāo)示位進(jìn)行修改。A、B機(jī)重復(fù)運(yùn)算之后再進(jìn)行比較。如果超過約定次數(shù)之后,結(jié)果仍然不一致,則說明A、B機(jī)存在故障。此時(shí)將A、B機(jī)自檢程序啟動(dòng),完成故障測(cè)試并將故障機(jī)找出切換。在切換過程中,M機(jī)將允許信號(hào)OUTKEY發(fā)送,讓相應(yīng)機(jī)器發(fā)送命令,設(shè)置全局變量work_cpu。在每次比較成功之后,對(duì)該變量進(jìn)行讀取,如果是A,就由M向A發(fā)送允許A發(fā)送運(yùn)算的結(jié)果命令,并封鎖住B的發(fā)送進(jìn)程。通過這種方式,能夠利用信號(hào)在網(wǎng)絡(luò)中傳遞的方式完成切換控制,確保了無縫切換,將延遲降到了最低。
4.2.3 智能自測(cè)。在智能自測(cè)當(dāng)中,主要是對(duì)系統(tǒng)容錯(cuò)功能的進(jìn)一步確認(rèn)和保障。運(yùn)用該功能,可以確保在系統(tǒng)故障發(fā)生后,無須人工處理,能夠自動(dòng)完成故障的定位和排除。自檢的控制是通過守護(hù)進(jìn)程完成,對(duì)守護(hù)進(jìn)程進(jìn)行運(yùn)行后,能夠進(jìn)行系統(tǒng)周期性自我檢查,將系統(tǒng)故障及時(shí)發(fā)現(xiàn)。在問題發(fā)生后,能夠運(yùn)行終端自檢,將故障模塊找出后立即切換,進(jìn)而為系統(tǒng)正常運(yùn)行提供保障。在自檢當(dāng)中,包括了兩個(gè)部分,其一是人機(jī)交互機(jī)(M機(jī))中對(duì)M機(jī)的檢查程序,利用系統(tǒng)配置文件讀取,對(duì)自身工作是否正常做出判斷;其二是M機(jī)和A、B機(jī)中利用套接字通信的監(jiān)測(cè)系統(tǒng)。在特定時(shí)間內(nèi),M機(jī)將聯(lián)鎖運(yùn)算命令通過套接字發(fā)送給A、B機(jī),并遵循返回狀態(tài),對(duì)具體的主機(jī)和從機(jī)做出設(shè)置。當(dāng)某一個(gè)聯(lián)鎖機(jī)發(fā)生故障之后,系統(tǒng)可以立即向另一臺(tái)聯(lián)鎖機(jī)切換繼續(xù)完成數(shù)據(jù)采集工作,并對(duì)發(fā)生故障的聯(lián)鎖機(jī)重新啟動(dòng)。而當(dāng)兩臺(tái)聯(lián)鎖機(jī)均發(fā)生了故障,系統(tǒng)可以切換為HUB,相當(dāng)于切換到新的工作網(wǎng)絡(luò)。A、B通過運(yùn)算完成自判斷,并向M返回結(jié)果,在系統(tǒng)日志文件中記錄,方便后續(xù)查詢。考慮到系統(tǒng)要求特殊性,在自檢系統(tǒng)中,根據(jù)鐵路特殊工作性質(zhì),必須要及時(shí)解除故障,不然有可能發(fā)生生命安全及財(cái)產(chǎn)安全事故。因此要求系統(tǒng)的實(shí)時(shí)性較高,可以對(duì)故障及時(shí)發(fā)現(xiàn)并處理。在聯(lián)鎖機(jī)中,要能夠在配置文件中對(duì)M機(jī)發(fā)送的命令實(shí)時(shí)讀取,同時(shí)做好對(duì)命令執(zhí)行的準(zhǔn)備,在發(fā)生問題之后,切換另一臺(tái)聯(lián)鎖機(jī),并將故障機(jī)立即重啟嘗試。為了保證可靠性與安全性,自檢系統(tǒng)需要將整個(gè)計(jì)算機(jī)聯(lián)鎖系統(tǒng)均作為檢查對(duì)象,將系統(tǒng)軟件、網(wǎng)絡(luò)傳輸、信號(hào)采集、聯(lián)鎖機(jī)、人機(jī)交互界面,甚至自檢系統(tǒng)本身均要納入,從而確保檢測(cè)的全面性,為系統(tǒng)安全穩(wěn)定提供更大的保障。此外,系統(tǒng)還需要達(dá)到較高的智能化程度,為了方便使用者應(yīng)用,在自檢系統(tǒng)運(yùn)行中應(yīng)當(dāng)保證完全自動(dòng)化控制,無須人工干預(yù)。通過守護(hù)進(jìn)程,可以對(duì)自檢系統(tǒng)的系統(tǒng)檢測(cè)及故障自動(dòng)處理功能提供保障。
在鐵路信號(hào)計(jì)算機(jī)連鎖控制系統(tǒng)中,為了保證良好的運(yùn)行性能與運(yùn)行安全,采用了先進(jìn)的容錯(cuò)技術(shù)。利用硬件冗余、軟件冗余、智能自測(cè)方面發(fā)揮充分的作用,為系統(tǒng)運(yùn)行安全穩(wěn)定提供了有力的支持與保障,進(jìn)而提升了鐵路信號(hào)系統(tǒng)的性能。