金道源 趙熠 鄺安玄
摘要: 在機(jī)電系統(tǒng)中,接口單元模塊承擔(dān)著信號采集、傳輸、控制等復(fù)雜任務(wù),導(dǎo)致該模塊內(nèi)部外部接口眾多、軟件規(guī)模大、信號種類多樣,故設(shè)備運行時故障產(chǎn)生的原因不可預(yù)測,發(fā)生故障后,對故障的定位與排查也非常不便。本文以搭載TI公司高性能DSP芯片的接口單元為例,闡述了接口單元模塊管理軟件的統(tǒng)一故障管理方式,包括故障數(shù)據(jù)記錄、故障解析工具設(shè)計、文件生成。大大方便了設(shè)備以及系統(tǒng)故障的定位與排查,極大降低了設(shè)備排障與后期維護(hù)的成本。
關(guān)鍵詞:故障記錄與解析;NVRAM;DSP
一、系統(tǒng)概述
在復(fù)雜機(jī)電系統(tǒng)中,接口單元模塊承擔(dān)著機(jī)電管理任務(wù)的執(zhí)行,需要為系統(tǒng)提供各類接口,如模擬量輸入輸出、離散量輸入輸出、總線接口等,且需要在系統(tǒng)中的不同位置實現(xiàn)不同配置,完成系統(tǒng)的狀態(tài)信息采集與上傳,響應(yīng)上位機(jī)輸出控制指令完成對子系統(tǒng)的控制與維護(hù),同時為系統(tǒng)健康管理提供BIT(自測試)信息支持,針對以上特點,接口單元核心處理芯片采用TI公司的高性能DSP芯片。
駐留在其上接口單元管理軟件作為整個接口單元模塊行為的控制核心,為硬件提供資源的配置、檢測、管理與控制功能,與模塊硬件共同完成接口單元任務(wù)的執(zhí)行,相應(yīng)的,該管理軟件的需求復(fù)雜、軟件規(guī)模大,所以管理軟件分為三層結(jié)構(gòu),分別為應(yīng)用軟件層、協(xié)議解析層和驅(qū)動程序?qū)?,如圖1所示。
接口單元實施并參與系統(tǒng)的功能控制管理、信息管理和健康管理有關(guān)的信號采集、信息傳輸、輸出控制和BIT檢測等任務(wù),與系統(tǒng)各設(shè)備之間相互交聯(lián)、物理、邏輯接口復(fù)雜、信號種類繁多,故設(shè)備正常運行時,發(fā)生故障的時機(jī)不定、類型不定、數(shù)量不定、位置不定,所以作為接口單元管理軟件的一部分,故障管理功能同軟件三層結(jié)構(gòu)均有交聯(lián)關(guān)系,如圖1所示,為了故障排查與后期維護(hù)的便利,統(tǒng)一的故障記錄與直觀的故障解析十分必要。
二、故障記錄
故障統(tǒng)一管理的目的是故障排查與后期維護(hù)的便利,首先需要針對模塊運行中可能出現(xiàn)的不同類型、不同位置、不同發(fā)生時機(jī)的故障進(jìn)行格式統(tǒng)一的記錄。
(一)故障類型
故障類型主要分為上電BIT(PuBIT)故障及周期BIT(PBIT)故障,其中上電BIT在模塊上電時對自身控制器相關(guān)硬件、供電及部分接口以及周期任務(wù)中不能檢測的電路進(jìn)行快速檢測,以確認(rèn)是否可以進(jìn)行最基本的正常控制工作。如果上電檢測出接口故障,置相應(yīng)故障狀態(tài),向接口本次上電故障記錄NVRAM地址寫入故障值,直到重新上電后再次上電BIT檢測可被新的檢測結(jié)果覆蓋。測試接口包括看門狗測試、模擬量輸出接口測試、離散量采集接口測試、電源測試、RS422測試、RAM測試、FLASH測試、NVRAM讀寫測試、FPGA握手測試等。
周期BIT是設(shè)備正常周期工作中,在對接口進(jìn)行控制的同時,以不干擾正常工作的方式,對設(shè)備各工作接口的工作狀態(tài)進(jìn)行周期性檢測。如果周期BIT測試接口的故障值有效,則向接口周期故障記錄NVRAM地址寫入故障值。測試接口包括模擬量采集接口測試、離散量采集接口測試、溫度測試、離散量輸出接口測試、供電測試、配置信號測試等。
(二)故障數(shù)據(jù)記錄
由于故障的不確定性,需要及時將故障發(fā)生瞬間的時間、故障現(xiàn)場等相關(guān)數(shù)據(jù)記錄在不易丟失的存儲單元中,以便事后故障分析。NVRAM(Non-Volatile Ram),非易失性隨機(jī)訪問儲存器,斷電后仍能保持?jǐn)?shù)據(jù),由于故障的多樣性、不確定性、偶然性,用該儲存器作為故障記錄的介質(zhì)最為合適。
將NVRAM作為擴(kuò)展存儲空間外掛至DSP芯片外部儲存的外擴(kuò)區(qū)域,用以儲存故障相關(guān)信息,如圖2所示。
為了區(qū)分故障種類,便于后續(xù)故障解析,預(yù)先在NVRAM中定義各類故障區(qū)域,當(dāng)故障發(fā)生時,故障可快速寫入到對應(yīng)的故障記錄內(nèi)。NVRAM故障記錄包含兩個部分,第一部分為公共部分信息記錄,主要涉及本次上電后整機(jī)的全局信息,包含上電測試,各類信號等,這部分內(nèi)容記錄在NVRAM的最前端;第二部分為各個故障的記錄,包括上電BIT、周期BIT等故障數(shù)據(jù)信息,依次進(jìn)行記錄。在進(jìn)行故障記錄時,為降低開發(fā)難度、提升軟件復(fù)用性、便于故障解析,將不同類型的故障數(shù)據(jù)以及相關(guān)故障現(xiàn)場數(shù)據(jù)以相同的數(shù)據(jù)格式記錄在NVRAM中,首先列出接口單元運行周期中可能出現(xiàn)的所有故障,針對每種故障整理引起該故障的數(shù)據(jù)或受該故障影響的數(shù)據(jù)作為故障現(xiàn)場數(shù)據(jù)。為每個故障在對應(yīng)類型故障空間中分配地址,故障數(shù)據(jù)以32字節(jié)為記錄單位記錄,記錄內(nèi)容包括故障發(fā)生時間,產(chǎn)品上電次數(shù),故障接口、故障通道號、故障類型、故障發(fā)生次數(shù),以及故障現(xiàn)場相關(guān)數(shù)據(jù),故障數(shù)據(jù)記錄格式整理如表1所示。
故障數(shù)據(jù)記錄的流程如下圖3所示。
模塊上電后,首先在設(shè)備初始化中對設(shè)備上電總時間、上電次數(shù)等公共信息進(jìn)行記錄,其次進(jìn)行上電BIT檢測并對故障接口進(jìn)行記錄,最后周期任務(wù)中進(jìn)行周期BIT檢測,并對故障接口進(jìn)行記錄。
三、故障解析
故障記錄完成之后,需要將NVRAM中記錄的信息進(jìn)行解析輸出,所以將NVRAM中故障數(shù)據(jù)下載至本地,并設(shè)計分析工具對下載的故障數(shù)據(jù)進(jìn)行解析,最后形成故障分析報告文件。
(一)NVRAM數(shù)據(jù)下載
記錄故障數(shù)據(jù)的NVRAM掛載在DSP芯片外擴(kuò)區(qū)域之上,故使用芯片提供的串行通信接口(SCI)外設(shè)模塊對NVRAM數(shù)據(jù)進(jìn)行讀取,通過串口通信傳輸至本地PC,本地應(yīng)用串口助手接收并捕獲NVRAM下載數(shù)據(jù)。
(二) NVRAM數(shù)據(jù)解析
設(shè)計NVRAM數(shù)據(jù)解析工具,對下載的NVRAM故障信息在本地進(jìn)行解析并形成故障分析報告,解析流程如圖4所示。
將下載至本地PC的數(shù)據(jù)文件導(dǎo)入解析工具,找到數(shù)據(jù)起始位置并解析公共信息部分;然后依據(jù)故障類型對故障進(jìn)行區(qū)分,依據(jù)地址信息對故障定位,依據(jù)該故障對故障現(xiàn)場數(shù)據(jù)的定義解析相關(guān)現(xiàn)場數(shù)據(jù);解析完成后選擇是否形成解析文件。
(三)解析工具
解析工具使用Microsoft Visual Studio2010開發(fā)環(huán)境,設(shè)計簡單應(yīng)用界面,實現(xiàn)NVRAM數(shù)據(jù)文件的導(dǎo)入、解析,解析報告文件的生成。該工具使用MFC開發(fā),集成了接口單元產(chǎn)品型號的選擇,NVRAM數(shù)據(jù)文件的導(dǎo)入與校驗,NVRAM數(shù)據(jù)文件解析,部分重要信息與故障的顯示,NVRAM數(shù)據(jù)解析結(jié)果報告的生成。
四、試驗驗證
故障記錄、解析工具設(shè)計完成后,進(jìn)行試驗驗證。通過人工強制在軟件內(nèi)置故,且使用預(yù)先定義好的故障現(xiàn)場進(jìn)行測試,將記錄數(shù)據(jù)使用工具解析并導(dǎo)出,若導(dǎo)出結(jié)果和與置故現(xiàn)場數(shù)據(jù)一致,則故障記錄與解析功能正確。
(一)測試環(huán)境
在應(yīng)用軟件中對某些接口進(jìn)行插樁置故,并設(shè)置故障現(xiàn)場數(shù)據(jù),將測試軟件固化至接口單元,運行穩(wěn)定后下載NVRAM數(shù)據(jù),導(dǎo)入解析工具中,對NVRAM數(shù)據(jù)進(jìn)行解析。在試驗中,使用測試設(shè)備對產(chǎn)品進(jìn)行供電與總線數(shù)據(jù)通信,測試PC與產(chǎn)品用串口線相連。將置故測試軟件通過串口固化至目標(biāo)機(jī),上電穩(wěn)定運行,下電后對目標(biāo)機(jī)模式配置信號進(jìn)行切換,切換至信息下載模式;PC端打開串口助手,目標(biāo)機(jī)重新上電,應(yīng)用串口助手捕獲NVRAM下載數(shù)據(jù)至本地,下載原始數(shù)據(jù)捕獲;最后依據(jù)NVRAM數(shù)據(jù)解析流程,進(jìn)行故障解析以及生成故障分析結(jié)果。
(二)解析結(jié)果
使用工具導(dǎo)入下載NVRAM數(shù)據(jù)文件,點擊解析,數(shù)據(jù)結(jié)果如圖5所示。
查看故障后,點擊導(dǎo)出將故障信息導(dǎo)出文本,如圖6所示。圖中最上方顯示上電后設(shè)備公共信息及重要故障,后方為其他故障信息,包含故障類型、通道、上電次數(shù)、故障次數(shù)以及故障現(xiàn)場數(shù)據(jù)。經(jīng)對比,工具解析結(jié)果和報告呈現(xiàn)結(jié)果與測試軟件設(shè)置的故障完全一致,可以認(rèn)為故障解析與故障記錄功能正確。
五、結(jié)束語
經(jīng)過上文對不同故障統(tǒng)一的故障記錄以及解析方式,后期維護(hù)時,開發(fā)維護(hù)人員可以很直觀地看到發(fā)生故障的接口,故障發(fā)生時間,以及發(fā)生故障時與該接口相關(guān)的現(xiàn)場數(shù)據(jù),極大方便了接口單元及系統(tǒng)故障排除以及維護(hù)。
作者單位:金道源? ? 趙熠? ? 鄺安玄? ? 航空工業(yè)西安航空計算技術(shù)研究所
參? 考? 文? 獻(xiàn)
[1] 李寶龍, 陳雪巖. DSP外擴(kuò)FLASH接口技術(shù)實現(xiàn)[J]. 哈爾濱商業(yè)大學(xué)學(xué)報. 2016(03).
[2] 張楠, 張達(dá)億. 基于DSP與NAND Flash的大容量存儲器設(shè)計[J].工業(yè)控制計算機(jī),2018(01).
[3] 郭警濤, 郭建奇. 機(jī)載機(jī)電管理系統(tǒng)數(shù)據(jù)下載與分析設(shè)備設(shè)計[J].信息通信, 2016(10).
[4] 胡寶雷, 韓毅博. 多功能控制面板的設(shè)計與實現(xiàn)[J].電腦編程技巧與維護(hù),2019(05).
[5] 劉宗福. 片上FLASH存儲器接口的設(shè)計[J]. 電子世界, 2016(03).