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