摘 要: 提出了一種基于STM32單片機的火控系統(tǒng)信號采集測試方案,以新型ARMv7系列STM32單片機為控制核心,利用其豐富的外設(shè)接口和I/O資源對某型裝備火控系統(tǒng)輸出信號進行采集、測試與分析,確定某火力控制板功能的完好性。方案完成了對某型火力控制板輸出的數(shù)字信號和模擬信號的采集、存儲與測量工作,且可以為其提供部分測試需要信號,具有CAN接口,可以與控制器局域網(wǎng)內(nèi)其他節(jié)點進行互通,具有體積小、結(jié)構(gòu)簡單、操作方便和易于實現(xiàn)等優(yōu)點,具有一定的實際意義。
關(guān)鍵詞: STM32; 火控板; 采集; CAN
火控系統(tǒng)是控制火炮瞄準和發(fā)射的系統(tǒng),火控計算機是火控系統(tǒng)的核心,在完成火控解算進而引導(dǎo)高炮射擊時具有重要作用。由于火控系統(tǒng)信號眾多,狀態(tài)復(fù)雜,對其關(guān)鍵信號的采集測試就顯得尤為重要[1]。
普通信號采集測試裝置具有結(jié)構(gòu)復(fù)雜、造價昂貴、攜帶不便等特點,該方案結(jié)合最新型ARMv7系列STM32單片機,利用其豐富的外設(shè)接口和I/O資源,對某型火控系統(tǒng)的重點輸出信號進行采集,存入板載Flash以備使用。另外,為便于使用和調(diào)試,還設(shè)計了CAN接口和RS-232串口。該信號采集盒大小為100 mm×65 mm,可由被測板提供電源信號,具有攜帶方便、使用簡單的特點,對裝備信號的實時采集具有重要的實用意義。
1 總體設(shè)計方案
1.1 總體設(shè)計框圖
總體設(shè)計框圖如圖1所示,其中裝備板是被測對象,STM32為控制核心,用于完成對各電路的控制,CAN總線用于與其他節(jié)點間的通信,RS-232串口用于調(diào)試及與LCD液晶屏通信。裝備板被測信息分為模擬信號和數(shù)字信號,可向裝備版提供5路數(shù)字控制信號,以模擬裝備板的輸入信號。
1.2 硬件設(shè)計
該方案的硬件組成主要包括:電源轉(zhuǎn)換模塊、微控制器模塊、信號調(diào)理模塊、CAN接口電路、Flash接口模塊和信號顯示模塊等。
1.2.1 電源轉(zhuǎn)換模塊
被測裝備板采用7.5 V~8 V電壓供電,信號采集板需要3.3 V、5 V以及±12 V四種電壓等級,因此需要將測試板載電壓等級進行轉(zhuǎn)換。5 V和3.3 V采用兩片Alpha公司高性能、低功耗AS117電源轉(zhuǎn)換模塊;±12 V電壓由兩片輸入輸出隔離單輸出DC/DC模塊DLW02-05S12獲得。經(jīng)實驗測試得知,用上述方法得到的電壓紋波較小,電壓幅值穩(wěn)定,滿足要求。
1.2.2 微控制器模塊
微控制器采用基于Cortex-M3內(nèi)核型號為STM32F-
103R8單片機,最高頻率可達72 MHz,具有性能強勁、代碼密度高、位帶操作、可嵌套中斷、低成本和低功耗等眾多優(yōu)勢。STM32擁有FSMC、TIMER、SPI、I2C、USB、CAN、I2S、SDIO、ADC、DAC、RTC和DMA等眾多外設(shè)和功能,擁有優(yōu)異的實時性能,可提供84個中斷、16級可編程優(yōu)先級,另外支持SWD和JTAG兩種調(diào)試口,為設(shè)計帶來很多方便[2]。
該微控制器帶有的CAN接口,可方便本系統(tǒng)與其他節(jié)點互聯(lián),RS-232接口可用于調(diào)試及控制液晶顯示模塊,兩路SPI接口可以完成MAX1270 A/D轉(zhuǎn)換器的通信控制及Flash存儲器的讀寫,眾多的I/O端口可以方便其他功能擴展。
1.2.3 信號調(diào)理模塊
火力控制板是某型火力控制系統(tǒng)的重要組成部分,其輸出信號主要分為:8路模擬信號和8路輸出信號。
(1) 數(shù)字信號調(diào)理電路
為了便于處理火力控制板輸出的8路數(shù)字信號,在進入單片機前需要對其進行同步及電平轉(zhuǎn)換。圖2為數(shù)字信號同步及電平轉(zhuǎn)換電路,主要器件為74HCT245。需要注意的是,在輸入單片機時要對比其數(shù)據(jù)手冊,選擇具有FT(容忍5 V)標注的管腳,防止電平不兼容[3]。
(2) 模擬信號調(diào)理電路
圖3為模擬信號調(diào)理電路,它將火控板輸出的模擬信號進行濾波及放大處理。圖中,電容用來濾除一些來自地端的高頻串擾;R37為電位器,用于靈活調(diào)整信號輸出大?。? V穩(wěn)壓二極管用于保護運放LF412不被損壞。另外,LF412可使用雙電壓模式,且具有較高的轉(zhuǎn)換速率,較為適合完成火控板上變化速率較快的信號處理工作。
1.2.4 CAN接口電路
控制器局域網(wǎng)CAN可以以最小的CPU符合來高效處理收到的大量報文,可用軟件配置報文發(fā)送的優(yōu)先級特性。圖4為bxCAN模塊,通過CAN總線收發(fā)器65HVD290可以完成自動接收和發(fā)送CAN報文,對標準標識符(11 bit)和擴展標識符(29 bit)完全支持[4]。通過CAN接口電路可以完成信號采集板與其他設(shè)備CAN網(wǎng)絡(luò)節(jié)點的連通。
1.2.5 Flash接口電路
圖5為Flash閃存接口電路,用于存放采集到的數(shù)據(jù)以及其他節(jié)點傳送的信息。設(shè)計采用ST公司的M25P20閃存芯片,具有2 MB存儲空間,單片機通過SPI接口控制其讀寫過程,具有擦寫速率快、壽命長等優(yōu)點[5],可以較好地完成采集板數(shù)據(jù)高速存取。
1.2.6 信號顯示模塊
液晶顯示器(LCD)是提供友好人機界面、實現(xiàn)信息交互的關(guān)鍵器件,具有功耗低、體積小、顯示效果好等相對于傳統(tǒng)顯示方式的優(yōu)點[6]。系統(tǒng)采用基于ARM920T內(nèi)核的藍海微芯7寸液晶屏,通過RS-232串口與STM32通信,完成信息顯示工作。
1.3 軟件設(shè)計
STM32單片機使用Keil對其編程,使用J-Link下載器調(diào)試,下載采用JTAG方式,使用ST提供的庫函數(shù)操作,非常方便。
1.3.1 模擬信號數(shù)據(jù)采集子程序
模擬信號采集是通過美信MAX1270進行A/D轉(zhuǎn)換實現(xiàn)的。A/D轉(zhuǎn)換芯片MAX1270通過SPI接口與單片機通信。信號采集子程序流程圖如圖6所示,首先,對ADC進行初始化,進行采樣時間、轉(zhuǎn)換時鐘的設(shè)定等;然后,啟動ADC,對調(diào)理信號進行采集,任一時段采樣結(jié)果為8次連續(xù)采樣的平均值;A/D轉(zhuǎn)換結(jié)束后,轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序,對采樣得到的數(shù)據(jù)進行分析和處理。
1.3.2 數(shù)字信號數(shù)據(jù)采集子程序