楊 維,石德乾,趙 凱,胡江峰
(西北機電工程研究所,陜西 咸陽 712099 )
火控軟件是自行高炮武器系統的重要組成部分,為了進行火控軟件功能、性能的調試和系統控制流程的驗證,需要研制相應的調試軟件。Windows系統利用普通PC機為硬件平臺,軟件開發手段比較豐富、通用性較強,但實時性較差[1],RTX是美國Ardence公司推出解決Windows2000(XP)強實時性的擴展模塊,它不對Windows 2000(XP)系統進行任何封裝或修改,通過在硬件抽象層增加實時擴展來實現基于優先級的搶占式實時任務的管理和調度,不僅可獲得很好的實時特性,又可完全利用Windows 2000(XP)平臺的優點。筆者利用RTX實時擴展系統[2-4]來解決Windows XP系統在開發火控控制平臺軟件中實時性不足這一難題,將強實時性的外同步中斷服務、定時器中斷服務、CAN總線數據接收、發送等工作在RTSS進程中;將實時性不強的參數設置、圖形顯示等工作在Win32進程中,開發出一種基于Windows XP+RTX為軟件平臺的火控調試平臺軟件[5],很好地實現了火控軟件的功能和性能調試。同時,基于Windows XP+RTX的軟件開發手段可進一步應用于自行高炮CAN總線的研究。
軟件體系結構如圖1所示。
軟件分為實時進程和非實時進程,兩大進程之間通過高速IPC通信和同步機制,實現數據交換。實時進程由RTX實現,主要完成同步時統信號接收、CAN總線數據的接收/發送、時標處理;非實時進程由Windows實現,主要完成CAN總線數據的處理、圖形顯示及參數輸入功能。

采用Visual C++ 6.0和RTX SDK為開發工具,首先建立一個MFC AppWizard工程來作為Win32進程……