班陽陽,王偉光,李 穎,蔡文彬
(中國船舶集團有限公司第八研究院,南京 211153)
雷達信號在經過系列處理后送至點跡提取軟件進行點跡凝聚,然后輸出目標點跡至數據處理器進行跟蹤處理[1]。雷達點跡提取功能銜接著信號處理和數據處理,關系著整個雷達系統的功能是否能正常使用[2]?,F有的點跡提取軟件已經實現了模塊化、精細化處理,但缺乏必要的健康管理,故障排查和定位時耗時較長,調試效率低下,可維護性較差,無法適應現代雷達系統智能化監測的需求[3],因此很有必要對點跡提取軟件開展健康管理技術研究[4]。
軟件健康管理思想旨在實現自動監測、診斷、預計和減緩由軟件異常引起的不良事件[5]。本文以一型雷達系統點跡提取軟件為例,研究適用于雷達系統點跡提取軟件的健康管理技術,增加對整個軟件的多維度狀態監控、監測和分析措施,建立基于倒序追蹤-分層排查(ROT-LTS)準則的在線狀態監測體系、健康評估指標和故障診斷庫,并開發了一套健康管理人機交互界面集成在雷達健康管理系統中。該系統實現了對點跡提取軟件各個處理模塊的在線狀態監測和健康指標可視化顯示,可根據故障診斷庫快速定位故障模塊及故障發生原因,便于問題排查和解決,極大地提高了軟件調試效率和可維護性,滿足工程使用需求。
點跡提取軟件健康管理主要完成對點跡提取功能各個模塊的應用級狀態監測、故障分析和可視化顯示,主要包括數據流異常監測、參數異常監測、線程異常監測、鏈路異常監測,并根據各異常信息進行健康評估和故障診斷,同時健康管理人機交互界面支持健康監測指標可視化顯示以及異常數據一鍵式采集,具體如圖1所示。

圖1 點跡提取軟件健康管理功能劃分圖
點跡提取軟件健康評估與故障診斷以ROT-LTS為準則,對點跡提取軟件運行時的健康狀態進行評估,并在運行故障時進行輔助故障診斷,方便研發人員事后快速定位故障原因。點跡提取軟件健康評價指標包括數據流包計數、參數合法性、CPU利用率及鏈路狀態,具體如圖2所示,不同指標對點跡提取軟件的影響不同,需要通過大量試驗數據進行分析和統計。不同的監測狀態對應不同的故障情形,建立二者之間的對應關系,形成故障診斷庫和應急解決預案,方便調測人員快速定位故障問題和找到合適的解決方案。

圖2 點跡提取軟件健康評價指標
點跡提取軟件各個模塊之間進行數據交互時,上一級輸出模塊會對輸出數據進行自動連續打包編號,下一級接收模塊在接收數據時會對數據包計數進行連續性判斷。如果包計數不連續,則判定為數據流異常,同時將相鄰輸出和輸入異常的模塊狀態信息上報至人機交互界面進行健康狀態顯示。調測人員可根據顯示信息判定故障發生原因以及定位故障發生位置。
點跡提取軟件在接收信號處理輸出的視頻數據及顯示控制軟件發送的控制命令時,會對其中的具體參數進行合法性判斷和代碼級保護,以防止程序崩潰。同時將異常狀態信息上報至人機交互界面進行健康狀態顯示,人機交互界面將顯示具體的參數錯誤信息。
點跡提取軟件會監測和實時收集各個處理線程的CPU利用率,在任務過載時自動剪裁部分處理數據,防止出現程序崩潰;根據當前時間與上一包數據進入各個線程的時間差,判定當前線程執行處理任務的狀態,據此可以判定上一級模塊輸出是否異常。線程異常信息上報至人機交互界面進行健康狀態顯示,在測試人員判定是程序邏輯出現異常導致線程進入死循環時,人機交互界面支持對該線程進行重啟操作。
點跡提取軟件通過RapidIO和網絡UDP發送點跡處理結果至其他分系統,在數據分發時監測發送返回狀態和發送耗時。在返回結果異?;蛘吆臅r異常時,上報該信息至人機交互界面進行健康狀態顯示,測試人員可據此排查相關的軟件配置和物理鏈路。
點跡提取軟件健康管理系統支持對以上異常監測信息的數據和狀態進行一鍵式采集,為測試人員進行線下分析、查找和定位問題提供歷史數據,如圖3所示。接收到人機交互界面發送的開始采集指令后,點跡提取軟件會啟動異常數據收集線程,采集當前滿足異常條件的數據、狀態,以及信號處理發送的原始視頻數據和顯示控制發送的歷史操控指令。收集線程將異常數據按照約定格式打包之后,通過網絡UDP發送至人機交互軟件進行本地存儲。異常數據收集線程在接收到人機交互界面發送的停止采集或者采集時長達到預設時間時,停止收集和發送異常數據。

圖3 健康管理異常數據一鍵式采集流程圖
點跡提取健康管理軟件由點跡提取軟件、人機交互軟件和故障診斷庫構成。點跡提取功能通常包括視頻信號接收模塊、距離凝聚模塊、俯仰凝聚模塊、方位凝聚模塊和點跡輸出模塊[6],具體數據流如圖4所示。

圖4 點跡提取功能數據流圖
在點跡輸出異常時,根據人機交互界面顯示的健康狀態信息依次追蹤點跡輸出模塊、方位凝聚模塊、俯仰凝聚模塊、距離凝聚模塊和視頻信號接收模塊,分層級排查每個模塊出現的相關異常信息, 根據異常信息狀態和故障診斷庫定位故障模塊及故障原因。
視頻接收模塊支持多個信號處理通道數據,該模塊記錄各個通道數據進入時間,通過當前系統時間與最新一包數據進入各個通道的時間差判定該通道狀態,如果時間差超過閾值,則通道異常。同時,該模塊接收上一級信號處理器發送的狀態信息,包括其心跳信息和信號處理器視頻輸入狀態信息。由故障診斷庫可知,視頻接收模塊異常狀態分為3種情況:
(1) 信號處理軟件未啟動,鏈路異常;
(2) 信號處理軟件啟動,信號處理器無數據輸入,鏈路異常;
(3) 信號處理軟件啟動,信號處理器有數據輸入,鏈路異常。
在上述異常狀態中,(1)、(2)為上一級節點故障,(3)需要通過信號分析儀等手段排查信號處理器與點跡提取器之間的鏈路是否正常。
視頻接收模塊狀態監測流程如圖5所示。

圖5 視頻接收模塊狀態監測流程圖
視頻接收模塊將數據打包計數后發送至距離凝聚模塊,將該模塊對應線程的CPU利用率實時發送至人機交互界面顯示。
距離凝聚模塊對輸入數據進行包計數連續性判斷,依據故障診斷庫,如果數據包計數不連續,則判定數據流異常,并將異常信息上報至人機交互軟件。距離凝聚模塊對輸入的雷達參數(工作方式、掃描方式、方位碼、仰角碼等)進行合法性判斷,超出閾值則判定為異常,且進行代碼級保護,防止程序崩潰,將參數異常信息上報至人機交互軟件。
距離凝聚模塊獲取視頻接收模塊輸出數據進入當前模塊的時間,并定時判斷當前時間與最新一包數據進入當前模塊的時間差。由故障診斷庫可知,如果時間差超過閾值,則上報距離凝聚模塊數據輸入異常,據此判斷視頻接收模塊輸出是否異常;或者根據CPU利用率判斷距離凝聚模塊內部是否進入死循環,同時排查內部程序執行邏輯。其他模塊的任務執行狀態監測與距離凝聚模塊相同。圖6給出了模塊A的流程。

圖6 模塊A任務執行狀態監測流程圖
距離凝聚模塊將數據打包計數后發送至俯仰凝聚模塊,并將該模塊對應線程的CPU利用率實時發送至人機交互界面顯示。
俯仰凝聚模塊對輸入數據進行包計數連續性判斷,依據故障診斷庫,如果數據包計數不連續,則判定數據流異常,并將異常信息上報至人機交互軟件。俯仰凝聚模進行連續俯仰波位跨度異常判斷,在完成一個仰角歸零后,判斷相鄰波位俯仰跨度是否異常。由故障診斷庫可知,如果相鄰波位俯仰跨度超過閾值,則會導致點跡在俯仰維凝聚時出現分裂,該異常信息會上報至人機交互軟件。
俯仰凝聚模塊將數據打包計數后發送至方位凝聚模塊,并將該模塊對應線程的CPU利用率實時發送至人機交互界面顯示。
方位凝聚模塊對輸入數據進行包計數連續性判斷,依據故障診斷庫,如果數據包計數不連續,則判定數據流異常,并將異常信息上報至人機交互軟件。方位凝聚模塊狀態進行連續輸出波位跨度異常判斷,該模塊記錄上一次輸出波位,判斷與當前輸出波位跨度是否異常。由故障診斷庫可知,如果連續波位跨度超過閾值,會導致點跡輸出模塊扇區不連續,連續波位跨度異常信息會上報至人機交互軟件。
方位凝聚模塊將數據打包計數后發送至點跡輸出模塊,并將該模塊對應線程的CPU利用率實時發送至人機交互界面顯示。
點跡輸出模塊對輸入數據進行包計數連續性判斷,由故障診斷庫可知,如果數據包計數不連續,則判定數據流異常,并將異常信息上報至人機交互軟件。點跡輸出模塊異常包括FC鏈路異常、網絡鏈路異常、扇區輸出不連續異常等。
(1) FC鏈路監測
點跡輸出模塊通過RapidIO與FC板卡進行交互,將扇區點跡輸出至數據處理器。在與FC板卡交互過程中,該模塊監測完成1次交互前后所耗時間,依據故障診斷庫,如果超過閾值,則報告FC鏈路異常。
(2) 網絡鏈路監測
點跡輸出模塊通過網絡UDP與交換機進行交互,將扇區點跡輸出至終端顯示器。在與交換機交互過程中,該模塊監測完成一次交互前后所耗時間,依據故障診斷庫,如果超過閾值,則報告網絡鏈路異常。
(3) 扇區連續性監測
點跡輸出模塊記錄上一次點跡輸出扇區編號。依據故障診斷庫,如果與當前點跡輸出扇區編號不連續,則報告扇區輸出連續性異常。同時排查FC鏈路和網絡鏈路是否正常,因為輸出鏈路堵塞會造成輸出緩存區溢出,進而導致未輸出點跡數據被覆蓋而出現扇區不連續;如果輸出鏈路正常,則可以判定點跡過濾模塊輸出的方位扇區不連續。
故障診斷庫的形成需要基于大量的試驗數據進行驗證和分析,建立各類故障狀態組合與故障發生原因一對一或者一對多的映射關系,并生成可讀性文圖示意說明,供調測人員參考使用。
本文以一型雷達系統點跡提取軟件為例進行分析,該軟件以MFC實現對各個模塊的健康狀態監測功能。如圖7所示,指示燈綠色代表對應功能模塊工作正常,指示燈黃色代表對應功能模塊工作異常。

圖7 各模塊狀態監測顯示圖
通過人機交互軟件顯示各個模塊的狀態可以很清楚地定位工作異常的功能模塊,并根據故障診斷庫分析故障發生原因,能有效排查和定位點跡提取功能的故障問題,在實際工程中使用效果較好。
本文針對當前點跡提取軟件調試和維護存在的問題,設計了一套包括健康指標體系和故障診斷庫的可視化健康管理系統,實現了點跡提取軟件的應用級狀態監測和可視化健康狀態顯示,提高了點跡提取軟件的調試效率和可維護性。通過試驗驗證,該系統能夠有效提高故障排查、定位和解決的效率,在軟件調測中使用效果較好,滿足實際工程需求,有良好的工程推廣和應用價值。