尹智勇,都業(yè)林,張 哲,趙春燕,黃 濤
(1.中車(chē)大連機(jī)車(chē)車(chē)輛有限公司,遼寧 大連 116022;2.廣州運(yùn)達(dá)智能科技有限公司,廣東 廣州 510330)
國(guó)內(nèi)軌道車(chē)輛控制系統(tǒng)主要通過(guò)硬線(xiàn)電路和網(wǎng)絡(luò)通信實(shí)現(xiàn)車(chē)輛邏輯控制、狀態(tài)監(jiān)視和故障診斷功能[1]。經(jīng)多年實(shí)際應(yīng)用驗(yàn)證,該系統(tǒng)框架雖然比較可靠,但是電路中使用了大量的繼電器。繼電器本身受其機(jī)械觸點(diǎn)動(dòng)作次數(shù)及性能的限制,部分動(dòng)作頻繁的器件容易發(fā)生故障,進(jìn)而影響車(chē)輛的正常運(yùn)行[2]。為進(jìn)一步保障車(chē)輛安全、可靠和高效運(yùn)行,必須對(duì)車(chē)輛控制系統(tǒng)進(jìn)行選型和開(kāi)發(fā),并設(shè)計(jì)可靠性、安全性、可用性、維護(hù)性均較強(qiáng)且故障時(shí)導(dǎo)向安全的嵌入式車(chē)載計(jì)算機(jī)系統(tǒng)。
目前,已有學(xué)者對(duì)嵌入式車(chē)載計(jì)算機(jī)系統(tǒng)進(jìn)行了研究。數(shù)字邏輯單元(digital logic unit,DLU)是專(zhuān)為軌道車(chē)輛邏輯控制而設(shè)計(jì)的1套嵌入式車(chē)載計(jì)算機(jī)系統(tǒng)。DLU采用計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù),通過(guò)光耦和場(chǎng)效應(yīng)管等無(wú)觸點(diǎn)電路替代車(chē)輛傳統(tǒng)的中間繼電器、時(shí)間繼電器等有觸點(diǎn)控制電路。DLU主要由輸入/輸出(input/output,I/O)控制單元、主控制器和網(wǎng)絡(luò)控制器構(gòu)成。DLU采集司機(jī)控制器、按鍵開(kāi)關(guān)組、微動(dòng)開(kāi)關(guān)、接觸器輔助觸點(diǎn)等開(kāi)關(guān)量信號(hào),經(jīng)邏輯運(yùn)算后完成指定的時(shí)序控制,以實(shí)現(xiàn)車(chē)輛邏輯控制、故障診斷及綜合保護(hù)等功能[3-5]。DLU可簡(jiǎn)化車(chē)輛電路、提升車(chē)輛智能化水平和可靠性指標(biāo),是現(xiàn)階段軌道交通車(chē)輛控制技術(shù)革新的結(jié)果。文獻(xiàn)[6]介紹了冗余可編程控制器的總體架構(gòu)和硬件設(shè)計(jì),通過(guò)軟件編程實(shí)現(xiàn)雙控制器的冗余切換,提升了控制系統(tǒng)的可靠性和高效性。文獻(xiàn)[7]分析了基于現(xiàn)場(chǎng)可編程門(mén)陣列(field programmable gate array,FPGA)的高速冗余I/O總線(xiàn),采用FPGA與多芯核結(jié)構(gòu)芯片相結(jié)合的嵌入式平臺(tái),保證了系統(tǒng)的實(shí)時(shí)性、可靠性和穩(wěn)定性。文獻(xiàn)[8]~文獻(xiàn)[10]介紹了雙冗余I/O模塊的切換方法。I/O模塊由2組相同且完全獨(dú)立的控制系統(tǒng)構(gòu)成,彼此互為熱備。某個(gè)系統(tǒng)發(fā)生局部故障時(shí),該系統(tǒng)降級(jí)至單系工作,安全性?xún)H能達(dá)到安全完整性等級(jí)2級(jí)。文獻(xiàn)[11]介紹了二乘二取二架構(gòu)控制單元的基本結(jié)構(gòu)和控制算法,優(yōu)化了系統(tǒng)的冗余架構(gòu),提升了關(guān)鍵模塊的冗余切換方式。二乘二取二架構(gòu)單系發(fā)生局部故障時(shí),系統(tǒng)降級(jí)至雙冗余機(jī)制繼續(xù)工作,安全性可達(dá)到安全完整性等級(jí)4級(jí)。但該架構(gòu)的I/O通道較少,必須增加主機(jī)數(shù)量來(lái)滿(mǎn)足I/O通道數(shù)量需求。這會(huì)造成控制單元資源利用率低下。
本文在對(duì)多種冗余設(shè)計(jì)方案進(jìn)行分析和研究的基礎(chǔ)上,針對(duì)列車(chē)復(fù)雜運(yùn)行環(huán)境以及現(xiàn)有車(chē)載計(jì)算機(jī)系統(tǒng)的運(yùn)用情況,提出了更高可靠性、高可用性和高安全性的三取二冗余容錯(cuò)技術(shù),并設(shè)計(jì)了相應(yīng)的模塊化硬件和獨(dú)立冗余容錯(cuò)的軟件框架。該設(shè)計(jì)使各模塊形成良好的互補(bǔ)關(guān)系,可以剔除系統(tǒng)中的異常數(shù)據(jù),從而最大限度保障系統(tǒng)資源可用性、提高DLU的可用性和安全性。
DLU是集高速數(shù)字信號(hào)處理、開(kāi)關(guān)驅(qū)動(dòng)、網(wǎng)絡(luò)通信以及分布式控制技術(shù)于一體的邏輯控制裝置。裝置采取三取二的控制策略,具有A、B、C這3套軟件、硬件相同的輸入采集、邏輯處理和輸出驅(qū)動(dòng)模塊。各模塊獨(dú)立工作,互不干擾。當(dāng)某個(gè)模塊異?;蚬收蠒r(shí),裝置以“多數(shù)計(jì)算機(jī)通道的運(yùn)行是正確的”為基礎(chǔ),根據(jù)“少數(shù)服從多數(shù)”的糾錯(cuò)原理,剔除系統(tǒng)中的異常數(shù)據(jù),以保證DLU的正常運(yùn)行。
當(dāng)某組的某個(gè)功能模塊發(fā)生故障時(shí),故障功能模塊自動(dòng)隔離,使單點(diǎn)故障不會(huì)影響裝置的正常運(yùn)行。故障包括供電故障、生命信號(hào)丟失、輸入故障、輸出故障等。這切實(shí)降低了車(chē)輛運(yùn)行故障和風(fēng)險(xiǎn),提高了運(yùn)營(yíng)保障能力。三取二冗余容錯(cuò)架構(gòu)設(shè)計(jì)如圖1所示。
圖1 三取二冗余容錯(cuò)架構(gòu)設(shè)計(jì)圖
DLU的硬件采用模塊化設(shè)計(jì),主要包含4種功能板卡,分別為電源板、通信板、主控板、I/O板。不同功能板卡根據(jù)具體工況和失效模式選擇合適的備份切換方式。
各功能板卡間通過(guò)背板2路獨(dú)立且冗余的控制局域網(wǎng)總線(xiàn)(controller area network,CAN)進(jìn)行數(shù)據(jù)交互。
DLU硬件框架如圖2所示。
圖2 DLU硬件框架圖
電源板內(nèi)置獨(dú)立的電源電路。外部電源經(jīng)浪涌防護(hù)電路和電磁濾波電路有效去除供電端的共模干擾后分為2路。其中:1路通過(guò)電源模塊變換為5 V,并聯(lián)輸出從而為各功能板卡供電;1路直接連接到背板,為輸出通道提供工作電源。所選用的金升陽(yáng)75 W電源模塊,輸入電壓范圍為43~160 V,輸出調(diào)壓后為5 V。輸入與輸出進(jìn)行了電氣隔離,同時(shí)具有輸入欠壓保護(hù)、輸出過(guò)壓保護(hù)、輸出短路保護(hù)、過(guò)載保護(hù)、過(guò)溫保護(hù)、電磁隔離、自檢測(cè)等功能。
通信板主要包括多功能車(chē)輛總線(xiàn)(multifunction vehicle bus,MVB)板和以太網(wǎng)總線(xiàn)(Ethernet,ETH)板。通信板不參與控制,只負(fù)責(zé)通信數(shù)據(jù)的傳輸、監(jiān)聽(tīng)和反饋。MVB板內(nèi)置2路MVB通信介質(zhì)電路,同時(shí)配備1個(gè)FPGA芯片用于邏輯運(yùn)算。ETH板內(nèi)置1個(gè)ETH控制器,用于實(shí)現(xiàn)與外部設(shè)備的以太網(wǎng)通信功能。
主控板是DLU運(yùn)行的核心,內(nèi)置芯片電路、串口電路、通信電路及供電轉(zhuǎn)換電路。主芯片采用高性能芯片來(lái)實(shí)現(xiàn)多任務(wù)實(shí)時(shí)計(jì)算與各種安全冗余功能。處理器的整數(shù)計(jì)算能力為210×100萬(wàn)條指令/s。 主芯片外擴(kuò)1個(gè)系統(tǒng)隨機(jī)存取存儲(chǔ)器(random access memory,RAM),采用并行接口的靜態(tài)存儲(chǔ)器芯片,用于動(dòng)態(tài)高速數(shù)據(jù)的分配。主芯片同時(shí)還外擴(kuò)2個(gè)閃存芯片,采用串行外設(shè)接口,用于故障數(shù)據(jù)及過(guò)程數(shù)據(jù)的記錄和存儲(chǔ)。主控板內(nèi)置CAN控制器,通過(guò)2路冗余的CAN通信電路與所有功能板卡進(jìn)行數(shù)據(jù)交互。維護(hù)接口采用2路串口功能電路,分別用于固件升級(jí)和應(yīng)用程序更新調(diào)試,以及日志下載和數(shù)據(jù)維護(hù)。主控板內(nèi)置硬件看門(mén)狗電路,當(dāng)板卡運(yùn)行出現(xiàn)異常時(shí)可復(fù)位重啟系統(tǒng),執(zhí)行故障導(dǎo)向安全原則。
I/O板內(nèi)置輸入電路、微處理器電路和輸出電路。輸入電路采用光耦隔離的方式實(shí)時(shí)采集110 V輸入信號(hào)。輸出電路采用金屬氧化物半導(dǎo)體場(chǎng)效應(yīng)晶體管(metal oxide semiconductor field effect transistor,MOSFET)的方式實(shí)時(shí)輸出110 V信號(hào),以驅(qū)動(dòng)外部負(fù)載。輸入電路將外部電源電平作穩(wěn)壓、濾波、隔離處理后,轉(zhuǎn)化為A、B、C這3組板卡微處理器使用的邏輯電平,由I/O板對(duì)3組輸入采集值進(jìn)行三取二表決。表決結(jié)果通過(guò)內(nèi)部CAN通信電路傳遞至主控板,再由主控板進(jìn)行邏輯運(yùn)算,并對(duì)運(yùn)算結(jié)果進(jìn)行三取二表決。表決結(jié)果用于驅(qū)動(dòng)MOSFET輸出110 V信號(hào)。每張I/O板內(nèi)置2個(gè)MOSFET。輸出電路由不同組板卡的2個(gè)MOSFET以先串聯(lián)再并聯(lián)的方式構(gòu)成1個(gè)輸出通道。輸入電路有效低電平為0~30 V、有效高電平為77~137.5 V;輸出電路有效低電平為0~10 V、有效高電平為77~137.5 V。
輸入通道內(nèi)置自診斷電路,通過(guò)反向隔離器與輸入電路連接,采用高頻脈沖激勵(lì)的方式實(shí)時(shí)動(dòng)態(tài)檢測(cè)輸入通道的狀態(tài),為冗余切換提供決策依據(jù)。輸出通道同樣內(nèi)置自診斷電路,通過(guò)反向隔離器與電平轉(zhuǎn)換電路連接,將輸出電平轉(zhuǎn)化為邏輯電平,并通過(guò)內(nèi)部CAN通信電路傳遞至主控板,以動(dòng)態(tài)檢測(cè)輸出通道的狀態(tài),從而實(shí)現(xiàn)MOSFET的故障診斷功能,以及輸出通道的過(guò)流、短路保護(hù)功能。
DLU軟件架構(gòu)采用分層、模塊化設(shè)計(jì)。DLU的底層為硬件驅(qū)動(dòng)描述與操作接口層,采用STM32F4xx標(biāo)準(zhǔn)外設(shè)驅(qū)動(dòng)庫(kù)來(lái)實(shí)現(xiàn)功能?;趦?yōu)先級(jí)的搶占式多任務(wù)實(shí)時(shí)操作系統(tǒng)作為任務(wù)調(diào)度與任務(wù)間同步的載體,包含了實(shí)時(shí)內(nèi)核、任務(wù)管理、時(shí)鐘管理、任務(wù)間通信同步(信號(hào)量、消息隊(duì)列)和內(nèi)存管理等功能。該系統(tǒng)可以使各任務(wù)獨(dú)立工作、互不干涉,以實(shí)現(xiàn)準(zhǔn)時(shí)、精準(zhǔn)執(zhí)行。這可以使實(shí)時(shí)應(yīng)用程序的設(shè)計(jì)和應(yīng)用更加容易,并且大幅簡(jiǎn)化應(yīng)用程序的設(shè)計(jì)過(guò)程[12]。用戶(hù)端應(yīng)用軟件開(kāi)發(fā)環(huán)境采用符合IEC 61131標(biāo)準(zhǔn)的FlexiSafe編程系統(tǒng)。軟件功能要求符合IEC 61508的安全完整性等級(jí)3級(jí)。這實(shí)現(xiàn)了控制邏輯的二次開(kāi)發(fā)及圖形化編程,并且具備邏輯處理、故障定位及切換、日志記錄和數(shù)據(jù)離線(xiàn)分析等功能。DLU數(shù)據(jù)診斷軟件基于SQLite對(duì)上位機(jī)調(diào)試軟件信號(hào)作出響應(yīng),以實(shí)現(xiàn)故障下載和記錄上傳,并能夠以圖表方式分析和查看故障數(shù)據(jù)。
DLU軟件框架如圖3所示。
圖3 DLU軟件框架圖
在圖3的基礎(chǔ)上,DLU內(nèi)部構(gòu)建CAN通信模塊以及各應(yīng)用模塊。CAN通信采用特別的策略對(duì)數(shù)據(jù)幀進(jìn)行處理,包括數(shù)據(jù)位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)等,以提高數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。采用非破壞性仲裁機(jī)制篩選當(dāng)前發(fā)送節(jié)點(diǎn),可以在提高總線(xiàn)使用效率的同時(shí)確??煽啃?。
CAN通信框架如圖4所示。
圖4 CAN通信框架圖
通信板負(fù)責(zé)DLU內(nèi)外部的數(shù)據(jù)信息共享與交流。MVB板采用主幀+從幀的數(shù)據(jù)傳輸包通信方式,根據(jù)預(yù)先設(shè)置的端口協(xié)議控制端口數(shù)據(jù)的傳輸,并在板卡接收到數(shù)據(jù)后作出響應(yīng)。ETH板采用傳輸控制協(xié)議(transmission control protocol,TCP)/網(wǎng)際協(xié)議(Internet protocol,IP)通信方式,將邏輯程序燒錄至運(yùn)行系統(tǒng),以讀取、下載日志記錄。
主控板主要負(fù)責(zé)系統(tǒng)的核心業(yè)務(wù),是數(shù)據(jù)的匯總處理與分發(fā)中心,擁有系統(tǒng)的最高控制權(quán)限,以實(shí)現(xiàn)邏輯的實(shí)時(shí)運(yùn)算、板卡管理、故障診斷、安全隔離、通信調(diào)度、日志記錄以及調(diào)試維護(hù)等功能。
每塊主控板通過(guò)內(nèi)網(wǎng)CAN獲取I/O板A、B、C組所有的數(shù)字量輸入信號(hào)。eCLR內(nèi)核根據(jù)輸入信號(hào)進(jìn)行邏輯運(yùn)算,生成輸出指令數(shù)據(jù),并將數(shù)據(jù)通過(guò)內(nèi)網(wǎng)CAN發(fā)送至目標(biāo)I/O板卡。主控板具有配置功能及網(wǎng)絡(luò)管理功能,對(duì)各功能板卡的軟件版本進(jìn)行一致性管理。主控板具有故障診斷功能,通過(guò)上電自診斷,可檢測(cè)判斷板類(lèi)型、外擴(kuò)RAM、閃存是否正常。I/O板通過(guò)內(nèi)網(wǎng)CAN將工作狀態(tài)數(shù)據(jù)上傳至主控板。主控板將數(shù)據(jù)存儲(chǔ)至板載閃存。主控板為安全板卡。當(dāng)板類(lèi)型識(shí)別錯(cuò)誤或外擴(kuò)RAM自檢失敗時(shí),主控板會(huì)鎖死,不再發(fā)送任何數(shù)據(jù)。
I/O板卡負(fù)責(zé)輸入信號(hào)采集處理和輸出信號(hào)驅(qū)動(dòng)處理,可實(shí)時(shí)采集12路輸入信號(hào)狀態(tài)和驅(qū)動(dòng)6路輸出信號(hào)。3個(gè)輸入通道同步、獨(dú)立采集同一輸入信號(hào),通過(guò)具備滯回特性的滑動(dòng)濾波器算法有效濾除列車(chē)抖動(dòng)等產(chǎn)生的毫秒級(jí)干擾信號(hào)。同組的3個(gè)冗余輸入模塊根據(jù)輸入通道自檢狀態(tài)和采集數(shù)據(jù),對(duì)輸入采集值進(jìn)行軟件三取二運(yùn)算,以獲得有效的輸入信號(hào)[13]。輸入環(huán)節(jié)采用3-2-1-0的降級(jí)處理方式,即單組或2組輸入故障不會(huì)影響DLU的邏輯控制運(yùn)行。如3組輸入均故障,則DLU會(huì)進(jìn)入安全導(dǎo)向模式,控制MOSFET全部關(guān)斷,不再外發(fā)輸出指令。
輸入表決策略如表1所示。
表1 輸入表決策略
輸出環(huán)節(jié)采用3-2-0的降級(jí)處理方式,即:單組輸出故障不會(huì)影響DLU的邏輯控制運(yùn)行;2組或3組輸出故障時(shí),DLU會(huì)進(jìn)入安全導(dǎo)向。輸出表決策略采用硬件三取二表決電路。輸出模塊A控制MOSFET A1和A2。輸出模塊B控制MOSFET B1和B2。輸出模塊C控制MOSFET C1和C2。通過(guò)背板繞接:A1和B2串聯(lián)形成輸出支路1;B1和C2串聯(lián)形成輸出支路2;C1和A2串聯(lián)形成輸出支路3。輸出支路1~輸出支路3并接。輸出等效表達(dá)式為:
O=a×c′+b×a′+c×b′
(1)
式中:a為晶體管A1的數(shù)字開(kāi)關(guān)量;b為晶體管B1的數(shù)字開(kāi)關(guān)量;c為晶體管C1的數(shù)字開(kāi)關(guān)量;a′為晶體管A2的數(shù)字開(kāi)關(guān)量;b′為晶體管B2的數(shù)字開(kāi)關(guān)量;c′為晶體管C2的數(shù)字開(kāi)關(guān)量。
當(dāng)存在2張板的MOSFET閉合時(shí),輸出通道導(dǎo)通,如A上C下形成通路。若某個(gè)MOSFET發(fā)生故障時(shí),相應(yīng)支路輸出能力喪失,由另外2 條支路決定該通道的輸出狀態(tài)。例如,當(dāng)MOSFET B1發(fā)生故障時(shí),B1、A2組成的支路喪失輸出能力。該通道的輸出等效表達(dá)式變?yōu)?
O′=a×c′+c×b′
(2)
I/O板具備故障自診斷能力,通過(guò)上電自檢和周期比對(duì),能夠診斷板類(lèi)型、CAN網(wǎng)絡(luò)、輸入通道和輸出通道故障等狀態(tài)。I/O板為安全板卡。當(dāng)I/O板卡識(shí)別自身掉線(xiàn)時(shí),則會(huì)封鎖輸出,即所有的輸出控制都為低電平。
本文基于雙冗余、二乘二取二和三取二架構(gòu)DLU,從電源電路、運(yùn)算電路、輸入電路和輸出電路等方面進(jìn)行失效模式對(duì)比分析。
相較于二乘二取二和雙冗余架構(gòu),三取二架構(gòu)的每個(gè)環(huán)節(jié)均增加了系統(tǒng)容錯(cuò)能力,以最大化避免外部電磁環(huán)境、電壓波動(dòng)異常等導(dǎo)致的系統(tǒng)失效,從而保障了車(chē)輛控制的穩(wěn)定性和運(yùn)營(yíng)的安全性。
在電源、輸入、輸出環(huán)節(jié),三取二架構(gòu)比二乘二取二、雙冗余架構(gòu)多出一重冗余,即使在輸入、輸出2點(diǎn)故障情況下,三取二架構(gòu)仍能保證系統(tǒng)輸出的穩(wěn)定性。其可用性更高。輸出在3點(diǎn)故障情況下,三取二架構(gòu)存在50%的可用性。
在邏輯運(yùn)算環(huán)節(jié),二乘二取二架構(gòu)比三取二、雙冗余架構(gòu)多出半重冗余,即在邏輯運(yùn)算2點(diǎn)故障情況下,二乘二取二架構(gòu)存在50%的可用性。
3種架構(gòu)失效模式對(duì)比如表2所示。
表2 3種架構(gòu)失效模式對(duì)比
三取二和二乘二取二架構(gòu)在輸入、邏輯運(yùn)算、輸出環(huán)節(jié)均采用相應(yīng)表決結(jié)構(gòu)。只有不少于2個(gè)信號(hào)一致時(shí),相關(guān)結(jié)果才有效。這保證了邏輯控制的高可靠性和高安全性。在安全方面,三取二架構(gòu)設(shè)計(jì)可達(dá)到安全完整性等級(jí)4級(jí),保證了系統(tǒng)在極端環(huán)境下的安全導(dǎo)向運(yùn)行高于雙冗余架構(gòu)DLU。
本文首先以冗余容錯(cuò)技術(shù)的DLU作為研究對(duì)象,對(duì)系統(tǒng)架構(gòu)、工作原理、硬件設(shè)計(jì)、軟件算法及故障診斷進(jìn)行研究。然后,本文通過(guò)檢測(cè)外部的輸入電平,在網(wǎng)絡(luò)通信安全措施下,根據(jù)三取二的表決策略及邏輯單元內(nèi)部電路的原理對(duì)電源模塊、信號(hào)采集模塊、信號(hào)輸出模塊和處理器模塊進(jìn)行了調(diào)整與改進(jìn),并構(gòu)建了系統(tǒng)的功能邏輯。最后,本文通過(guò)可用性和安全性這2個(gè)方面的綜合對(duì)比分析,驗(yàn)證了DLU在正常運(yùn)行下基本功能的實(shí)現(xiàn)和在失效模式下對(duì)系統(tǒng)運(yùn)行保護(hù)的冗余切換功能,確?;谌《哂嗳蒎e(cuò)設(shè)計(jì)的DLU在功能上的完整性和可靠性。隨著控制系統(tǒng)融合冗余架構(gòu)技術(shù)的發(fā)展,三取二冗余容錯(cuò)架構(gòu)DLU已逐步得到推廣應(yīng)用。尤其是在全自動(dòng)無(wú)人駕駛車(chē)輛上,高可靠性、高可用性、高安全性架構(gòu)DLU的應(yīng)用成為必然趨勢(shì)。通過(guò)DLU在軌道交通車(chē)輛控制系統(tǒng)中的應(yīng)用,為傳統(tǒng)控制技術(shù)升級(jí)探明了新方向,將推動(dòng)構(gòu)建更安全、更高效、更節(jié)能、更經(jīng)濟(jì)的融合控制系統(tǒng),進(jìn)而打造一流的軌道交通車(chē)輛控制系統(tǒng)平臺(tái)。