黨夢(mèng)茜
在軌道交通運(yùn)行線路中,信號(hào)設(shè)備對(duì)于保障線路安全發(fā)揮著重要作用。其中計(jì)軸設(shè)備是通過檢測(cè)區(qū)段占用/空閑狀態(tài)來保證列車運(yùn)行安全[1]?;诂F(xiàn)有的計(jì)軸設(shè)備,本文提出了一種在進(jìn)路首末端配置計(jì)軸點(diǎn)進(jìn)行列車進(jìn)路占用檢查的模式,該模式可明顯降低投資成本和人員維護(hù)成本。另外,針對(duì)現(xiàn)有的計(jì)軸器通常采用繼電器輸出進(jìn)路狀態(tài)(進(jìn)路占用/空閑狀態(tài)),無法直接與聯(lián)鎖實(shí)現(xiàn)數(shù)據(jù)安全通信的問題,設(shè)計(jì)了一種進(jìn)路狀態(tài)判別處理器,通過該處理器計(jì)軸設(shè)備能夠?qū)⑦M(jìn)路狀態(tài)編碼后輸送至聯(lián)鎖,從而實(shí)現(xiàn)與聯(lián)鎖系統(tǒng)之間的數(shù)據(jù)安全傳輸。
1)實(shí)現(xiàn)進(jìn)路判別及處理。進(jìn)路狀態(tài)判別處理器接收到計(jì)軸器傳遞的進(jìn)路狀態(tài)(占用/空閑)信息后,先與聯(lián)鎖輸入的進(jìn)路選擇信息、道岔定/反位狀態(tài)進(jìn)行一致性校核,再將列車進(jìn)路空閑或占用狀態(tài)傳遞給聯(lián)鎖。
2)實(shí)現(xiàn)數(shù)據(jù)安全傳輸。遵從RSSP-I安全通信協(xié)議,進(jìn)路狀態(tài)判別處理器與聯(lián)鎖通過網(wǎng)口進(jìn)行雙向數(shù)據(jù)安全傳輸。
3)實(shí)現(xiàn)設(shè)備工作狀態(tài)監(jiān)測(cè)。將進(jìn)路狀態(tài)判別處理器的設(shè)備運(yùn)行狀態(tài)通過網(wǎng)口傳遞至集中監(jiān)測(cè),便于工作人員了解設(shè)備運(yùn)行狀況。
進(jìn)路狀態(tài)判別處理器設(shè)計(jì)結(jié)構(gòu)見圖1,主要由電源模塊、主控模塊和監(jiān)測(cè)模塊構(gòu)成。其中:電源模塊主要將24 V電壓轉(zhuǎn)換為3.3 V電壓,向主控模塊和監(jiān)測(cè)模塊供電;主控模塊作為核心模塊,主要實(shí)現(xiàn)進(jìn)路判別及處理功能,并遵從RSSP-I安全協(xié)議,與聯(lián)鎖實(shí)現(xiàn)雙向數(shù)據(jù)安全傳輸;監(jiān)測(cè)模塊是集中監(jiān)測(cè)和進(jìn)路狀態(tài)判別處理器的一個(gè)接口單元,將設(shè)備運(yùn)行狀態(tài)發(fā)送至集中監(jiān)測(cè)。
如圖1所示,電源模塊主要由24-5 V電壓轉(zhuǎn)換電路、負(fù)載開關(guān)電路、5-3.3 V電壓轉(zhuǎn)換電路構(gòu)成。24-5 V電壓轉(zhuǎn)換電路將24 V電壓轉(zhuǎn)化為5 V電壓,輸入至負(fù)載開關(guān)電路;負(fù)載開關(guān)電路采用3個(gè)完全相同的具有熱關(guān)斷保護(hù)功能的單通道負(fù)載開關(guān)TPS22810,可避免元器件結(jié)溫過高,確保元器件處于安全工作區(qū)域[2]。負(fù)載開關(guān)電路將5 V電壓分3路送至5-3.3 V電壓轉(zhuǎn)換電路,轉(zhuǎn)換為3路3.3 V電壓,對(duì)于主控模塊和監(jiān)測(cè)模塊供電。
圖1 進(jìn)路狀態(tài)判別處理器設(shè)計(jì)結(jié)構(gòu)
主控模塊采用冗余設(shè)計(jì),包含2個(gè)結(jié)構(gòu)、功能完全相同的硬件模塊,每個(gè)模塊主要包含主控CPU模塊、W5500網(wǎng)口芯片模塊和通信狀態(tài)展示模塊。
2.2.1 主控CPU1/2
主控CPU1/2模塊是主控模塊的核心電路模塊,均選用STM32F407VET6芯片。主控CPU1/2模塊電路主要包含電源、調(diào)試下載電路、啟動(dòng)方式選擇電路、晶振電路、復(fù)位電路,這些電路結(jié)合主控CPU1/2芯片稱為一個(gè)最小系統(tǒng)[3],從而保障CPU正常工作。
2.2.2 基于W5500網(wǎng)口芯片的數(shù)據(jù)通信
W5500與主控CPU(主機(jī))連接見圖2,有MOSI、MISO、SCLK、SCSn 4路信號(hào)[5]。MOSI代表主機(jī)輸出,W5500輸入;MISO代表主機(jī)輸入,W5500輸出;SCLK接收主機(jī)的SPI時(shí)鐘信號(hào);SCSn為片選信號(hào)。主控CPU芯片通過W5500網(wǎng)口芯片和聯(lián)鎖進(jìn)行雙向通信[5]。
圖2 主控CPU和W5500連接圖
2.2.3 通信狀態(tài)展示模塊
主控CPU與SN74HC245DW緩沖器連接,輸出CPU工作狀態(tài)至多個(gè)LED指示燈。工作狀態(tài)包含CPU工作/故障狀態(tài)、接收/發(fā)送數(shù)據(jù)狀態(tài)、與監(jiān)測(cè)CPU芯片通信狀態(tài)等。
通過串口通信方式接收主控CPU1/2發(fā)送的主控模塊運(yùn)行狀態(tài),并將主控模塊與監(jiān)測(cè)模塊的運(yùn)行狀態(tài)通過W5500網(wǎng)口芯片送至集中監(jiān)測(cè)。如圖1所示,監(jiān)測(cè)模塊主要由監(jiān)測(cè)CPU3、TF卡模塊、W5500網(wǎng)口芯片3及通信狀態(tài)展示模塊組成。其中,監(jiān)測(cè)CPU3采用和主控模塊相同的CPU芯片,與CPU1/2進(jìn)行通信;TF卡模塊可在卡槽內(nèi)插入,方便修改系統(tǒng)內(nèi)部實(shí)現(xiàn)邏輯,從而適應(yīng)不同場(chǎng)合的功能需求,提高設(shè)備的利用價(jià)值;W5500網(wǎng)口芯片將主控CPU傳遞的數(shù)據(jù)信息發(fā)送至集中監(jiān)測(cè),輸出的數(shù)據(jù)信息包括進(jìn)路狀態(tài)、通信狀態(tài)、CPU故障/工作狀態(tài)等;通信狀態(tài)展示模塊將監(jiān)測(cè)CPU3和主控CPU通信狀態(tài)、監(jiān)測(cè)CPU3工作/故障狀態(tài)等,通過緩沖器輸出至LED進(jìn)行顯示。
軟件實(shí)現(xiàn)分為主控模塊軟件和監(jiān)測(cè)模塊軟件2部分,主函數(shù)實(shí)現(xiàn)流程見圖3。
圖3 軟件主函數(shù)實(shí)現(xiàn)流程
1)進(jìn)入主函數(shù)main()進(jìn)行初始化配置。首先對(duì)系統(tǒng)進(jìn)行初始化配置,配置完成后開始進(jìn)入while(1)循環(huán),對(duì)于W5500端口進(jìn)行初始化配置。
2)W5500接收數(shù)據(jù)。判斷端口接收到數(shù)據(jù)后,進(jìn)入W5500接收數(shù)據(jù)程序。首先將接收數(shù)據(jù)指示燈點(diǎn)亮,再由CPU對(duì)數(shù)據(jù)進(jìn)行處理,處理時(shí)需先對(duì)數(shù)據(jù)進(jìn)行解碼,再進(jìn)行進(jìn)路判別及處理。
3)W5500發(fā)送數(shù)據(jù)。發(fā)送數(shù)據(jù)前,由CPU對(duì)處理后的數(shù)據(jù)進(jìn)行編碼,再由W5500發(fā)送數(shù)據(jù)程序發(fā)送數(shù)據(jù),并點(diǎn)亮發(fā)送數(shù)據(jù)指示燈。
3.1.1 基于RSSP-I協(xié)議的數(shù)據(jù)安全傳輸
隨著網(wǎng)絡(luò)通信的日趨深入,為鐵路通信帶來了極大的便利性和實(shí)用性,為保障信號(hào)安全設(shè)備互聯(lián)互通,必須采用統(tǒng)一的接口和協(xié)議[6]。本文將RSSP-I協(xié)議應(yīng)用于進(jìn)路狀態(tài)判別處理器和聯(lián)鎖之間的數(shù)據(jù)安全通信。RSSP-I協(xié)議具有6種安全防御技術(shù):序列號(hào)、時(shí)間戳、超時(shí)、源標(biāo)識(shí)、反饋報(bào)文和雙重校驗(yàn),可對(duì)應(yīng)解決封閉式網(wǎng)絡(luò)中的通信威脅,保障數(shù)據(jù)通信安全[7-8]。
當(dāng)主控CPU通過W5500接收數(shù)據(jù)后,首先需對(duì)接收到的報(bào)文進(jìn)行安全校驗(yàn),通過后才可對(duì)數(shù)據(jù)進(jìn)行處理。圖4為接收數(shù)據(jù)安全校驗(yàn)流程。首先對(duì)報(bào)文頭、尾進(jìn)行有效性檢查,有誤直接丟棄;然后再對(duì)報(bào)文中的安全校驗(yàn)域進(jìn)行檢查,包括序列號(hào)校驗(yàn)和雙通道安全校驗(yàn)碼(SVC)校驗(yàn)。序列號(hào)校驗(yàn)用于判斷報(bào)文是否有序,SVC校驗(yàn)可保障數(shù)據(jù)傳輸安全性,序列號(hào)校驗(yàn)或SVC校驗(yàn)其中之一有誤,則需要進(jìn)行時(shí)序?qū)R校正[8-9]。
圖4 接收數(shù)據(jù)安全校驗(yàn)流程
當(dāng)主控CPU通過W5500發(fā)送數(shù)據(jù)前,先對(duì)數(shù)據(jù)進(jìn)行編碼,生成發(fā)送報(bào)文。發(fā)送報(bào)文包括報(bào)文頭、安全校驗(yàn)域、用戶數(shù)據(jù)包、報(bào)文尾4個(gè)部分。其中,報(bào)文頭包含報(bào)文類型和源目標(biāo)地址;安全校驗(yàn)域包含序列號(hào)、安全數(shù)據(jù)長度、安全校驗(yàn)通道SVC_1和SVC_2;用戶數(shù)據(jù)包即需要傳輸?shù)臄?shù)據(jù);報(bào)文尾CRC16,根據(jù)報(bào)文頭、安全校驗(yàn)域和用戶數(shù)據(jù)包生成。
3.1.2 進(jìn)路判別及處理功能實(shí)現(xiàn)
圖5為進(jìn)路判別及處理功能實(shí)現(xiàn)流程圖。
圖5 進(jìn)路判別及處理功能流程
1)計(jì)軸器輸出進(jìn)路狀態(tài)(空閑/占用)給進(jìn)路狀態(tài)判別處理器,如果進(jìn)路空閑則進(jìn)入(2);如果進(jìn)路占用,則直接輸出進(jìn)路占用狀態(tài)至聯(lián)鎖。
2)判斷是否已選擇進(jìn)路。如果未選擇進(jìn)路,則直接輸出進(jìn)路空閑狀態(tài)至聯(lián)鎖;如果已選擇進(jìn)路,則進(jìn)入(3)。
3)判斷選擇進(jìn)路選擇信息和道岔的定/反位狀態(tài)是否一致。如果一致,則將進(jìn)路空閑信息傳遞給聯(lián)鎖;如果不一致,則將占用信息傳送給聯(lián)鎖,保障進(jìn)路狀態(tài)輸出符合“故障導(dǎo)向安全”原則[10]。
監(jiān)測(cè)模塊軟件主要是將設(shè)備工作/故障信息、進(jìn)路狀態(tài)等輸出至集中監(jiān)測(cè)。監(jiān)測(cè)模塊通過監(jiān)測(cè)CPU接收主控CPU1/2傳遞的數(shù)據(jù)信息,并通過W5500發(fā)送數(shù)據(jù)程序?qū)?shù)據(jù)信息通過網(wǎng)口傳遞給集中監(jiān)測(cè)。
本文提出的進(jìn)路狀態(tài)判別處理器計(jì)劃在成都某條旅游線路進(jìn)行試驗(yàn),能夠基于RSSP-I協(xié)議實(shí)現(xiàn)其與聯(lián)鎖之間的數(shù)據(jù)安全通信,接收聯(lián)鎖發(fā)送的進(jìn)路選擇信息和道岔狀態(tài)信息,并進(jìn)行一致性校核,對(duì)于保障列車運(yùn)行安全具有重要作用。