蔡偉紅,吳晶晶,王景輝
(1.中國鐵路廣州局集團有限公司長沙工程建設(shè)指揮部,湖南 長沙 410007;2.固安信通信號技術(shù)股份有限公司,河北 固安 065500)
故障維護信息管理的作用為記錄軌道電路設(shè)備運行期間的重要參數(shù),了解設(shè)備的運行狀態(tài),快速定位設(shè)備的運行節(jié)點,分析設(shè)備異常狀況等。根據(jù)故障維護信息,可以幫助運行人員掌握運行情況,積累運行經(jīng)驗,指導(dǎo)運行工作,也可以及時發(fā)現(xiàn)設(shè)備隱患,做到及時消除,此外還能提供事故分析及檢修數(shù)據(jù),從而為后續(xù)保證設(shè)備的安全運行提供數(shù)據(jù)支撐。
近年來,數(shù)字信號處理器(Digital Signal Processor,DSP)廣泛應(yīng)用于軌道電路信號處理及通信設(shè)備中,存儲器已成為許多電路系統(tǒng)中不可缺少的組成部分,這是故障維護信息以運行日志方式存儲的技術(shù)實現(xiàn)支持。
在嵌入式系統(tǒng)中,F(xiàn)lash和帶電可擦可編程只讀存儲器(Electrically Erasable Programmable Read-Only Memory,EEPROM)能夠存儲可用于通信或執(zhí)行某些功能的數(shù)據(jù),通過多種不同的串行協(xié)議來連接存儲設(shè)備[1]。單片機中也集成了多種不同類型的串行外設(shè)接口(Serial Peripheral Interface,SPI)存儲設(shè)備。另外,F(xiàn)lash和EEPROM均為非易失性存儲器,意味著該設(shè)備能夠保存數(shù)據(jù),且在關(guān)閉電源的情況下也能保留歷史數(shù)據(jù)信息。它們都是電子可寫和可擦除存儲器,用以存儲單片機的應(yīng)用程序及數(shù)據(jù)信息。
EEPROM可以在字節(jié)級別讀取,寫入和擦除數(shù)據(jù)。Flash是EEPROM的一種,在結(jié)構(gòu)上以塊的形式排列,在塊中擦除數(shù)據(jù),并且可以在字節(jié)級別讀取或?qū)懭霐?shù)據(jù)。
使用閃存或EEPROM設(shè)備有很多優(yōu)點和缺點,具體如下。(1)由于EEPROM以字節(jié)為單位運行其擦除功能,因此增加了清除和編輯設(shè)備所花費的時間,但允許開發(fā)人員在需要時編輯特定部分。Flash能夠擦除大量數(shù)據(jù),從而大大提高了擦除速度,并使設(shè)備可以更緊湊地存儲信息。但是由于這個原因,它也失去了編輯某些字節(jié)的能力,從而迫使開發(fā)人員在進行任何更改時都重寫整個數(shù)據(jù)塊。(2)在存儲設(shè)備上執(zhí)行多個擦除和寫入周期將導(dǎo)致其最終隨著時間的推移而降級。使用EEPROM的優(yōu)點之一是使用壽命更長,EEPROM在其生命周期內(nèi)最多可以執(zhí)行1 000 000個擦除/重寫周期。根據(jù)Flash的類型,其使用壽命會縮短,大多數(shù)Flash產(chǎn)品在磨損開始惡化存儲完整性之前能夠承受大約10 000~1 000 000次擦除/寫入循環(huán)。就大小和成本而言,F(xiàn)lash具有比EEPROM更小的存儲單元尺寸,并且實現(xiàn)成本更低[2,3]。因此,本文采用Flash作為存儲器,描述對軌道電路設(shè)備故障維護信息自主進行存儲和讀取。
故障維護信息包括信號的外部配置、載頻、低頻、電壓等信息,設(shè)備正常運行過程中,周期維護數(shù)據(jù)存儲到一個Buffer中,設(shè)備故障后對Buffer中的既有數(shù)據(jù)按獲取時間排序,同時接收通道故障碼,獲取所有信息后將排序后的數(shù)據(jù)再存儲到Flash中,以便離線維護使用。
存儲故障信息前,應(yīng)先對中央處理器(Central Processing Unit,CPU)芯片進行配置。配置步驟為:(1)在CPU芯片對外設(shè)進行相應(yīng)的初始化,包括對引腳的配置、通信速率的設(shè)定、郵箱的收發(fā)配置等;(2)配置MUX寄存器,選定引腳配置成特殊功能,即CANRX和CANTX;(3)配置ECanXRegs和ECanXMboxes寄存器,即配置和使能ECanB中的郵箱,用于發(fā)送CPU1中Flash存儲的維護數(shù)據(jù),ECanA中的郵箱用于發(fā)送CPU2中Flash存儲的維護數(shù)據(jù)[4]。
Flash存儲策略選用預(yù)留存儲空間的方式,預(yù)留32 768 Byte的空間。Buffer中的信息僅在設(shè)備故障后才會存儲到Flash中,大小為120 Byte,并在故障分析后可知,空間足夠使用。
軌道電路設(shè)備故障維護信息自存儲實現(xiàn)流程如圖1所示。

圖1 Flash存儲流程
設(shè)備故障后進行離線分析,讀取采用控制器局域網(wǎng)絡(luò)(Controller Area Network,CAN)通信方式。當(dāng)檢測到郵箱收到同步幀后發(fā)送故障數(shù)據(jù),將故障信息讀取到分析軟件中,然后按照幀數(shù)據(jù)格式進行解析得到故障描述[5]。故障維護信息發(fā)送方式采用定時發(fā)送,發(fā)送方式如圖2所示。

圖2 CAN讀取方式
故障維護信息發(fā)送到分析軟件的數(shù)據(jù)格式為16進制,如圖3所示。

圖3 故障維護信息數(shù)據(jù)
每周期存儲1組信息,每組信息24 Byte,共存儲多個運行周期的數(shù)據(jù)。其中,右側(cè)是故障前的運行狀態(tài)信息,左側(cè)是對故障編碼對應(yīng)故障描述,便于輔助定位故障。
本文提出了一種新的Flash故障維護信息存儲技術(shù),能夠?qū)崿F(xiàn)故障信息的高效存儲及分析。Flash存儲技術(shù)比較簡單且實用,在嵌入式系統(tǒng)設(shè)計的嵌入式數(shù)據(jù)存儲系統(tǒng)中,可以檢驗嵌入式數(shù)據(jù)存儲系統(tǒng)在實際應(yīng)用中的表現(xiàn)。通過以上分析可以看出,F(xiàn)lash存儲相比傳統(tǒng)的磁盤存儲有很多優(yōu)勢,有望顯著提高存儲系統(tǒng)的性能,降低能耗,但同時也存在一些缺陷,亟需進一步研究。根據(jù)Flash讀寫存儲的編程特點,后續(xù)有必要對其進行存儲過程管理,以使整個系統(tǒng)性能得以改善。