超聲波探傷系統應用軟件層的總體設計框圖
超聲波探傷系統軟件基于 Linux 操作系統和 Qt/Embedded 庫實現,應用軟件層在整個系統軟件中處于最頂層,通過 Linux 系統調用訪問和控制硬件設備,根據操作系統和 Qt/Embedded 提供的功能函數和類庫來實現超聲波探傷的各種功能以及系統的時間顯示、電池能量顯示,并為用戶提供友好的操作界面。應用軟件中的探傷波形實時處理是應用軟件層的數據平面,對時間的要求比較苛刻,所以設計實現時要對其進行優化。應用軟件的控制平面分為兩個部分,一是通過驅動程序提供的控制參數接口,與硬件進行通信,完成硬件參數的設置,二是控制應用層數據處理平面的工作方式,包括如下參數:雜波抑制參數、峰值包絡方式、跟蹤閘門起點、跟蹤閘門寬度和跟蹤閘門是否顯示等。應用軟件層的管理平面功能很多,實現相對復雜,主要包括超聲波探傷模塊、文件管理模塊、電池能量監測模塊、時鐘模塊和用戶界面模塊等。
系統應用軟件層的設計遵循了將數據平面、控制平面和管理平面分開的思想,采用了分層和模塊化的設計方法,將系統應用軟件按照不同的處理平面,分為設備控制適配層、功能處理層和用戶界面層。應用軟件層的總體設計框圖。設備控制適配層通過系統調用訪問硬件設備,為功能層提供統一的硬件設備控制接口,并完成操作系統相關系統調用的轉換過濾,以提高應用軟件的可移植性。功能處理層包括探傷波形實時處理模塊、超聲波探傷模塊、文件管理子系統、時間和電池能量顯示以及鍵盤和背光模塊,各個模塊分別實現,以提高各個模塊的內聚性,減少模塊之間的耦合性。用戶界面層通過功能處理層提供的功能控制接口,進行相關的功能處理,并為用戶提供圖形顯示和操作界面。
應用軟件的設備控制適配層、功能處理層和用戶界面層之間相互獨立實現,每層都只能通過下一層提供的接口進行相關的訪問和操作。設備控制適配層為功能處理層實現了設備控制和系統調用的屏蔽,提高了應用軟件的可移植性。而功能處理層則為用戶界面層屏蔽了探傷功能的實現細節,使得用戶界面層可以專注于圖形界面的設計和實現,而不用關心探傷的各種功能具體如何實現。