孫書鷹,李偉,劉江義,曹彬乾
(1.軍械工程學(xué)院,石家莊050003;2.解放軍77618部隊,拉薩850000)
基于STM32的高炮四炮手模擬訓(xùn)練裝置設(shè)計與實現(xiàn)
孫書鷹1,李偉1,劉江義1,曹彬乾2
(1.軍械工程學(xué)院,石家莊050003;2.解放軍77618部隊,拉薩850000)
盡管現(xiàn)代高炮武器系統(tǒng)自動化程度很高,但是人工瞄準(zhǔn)射擊仍然不可或缺,在人工瞄準(zhǔn)射擊過程中,四炮手的操作、訓(xùn)練難度較大,因為航向裝定要建立較強的空間平行感,需要平時刻苦訓(xùn)練來提高航向判裝精度。以STM32微控制器為核心,利用光電編碼器、MEMS加速度計和步進電機等設(shè)計了一款四炮手訓(xùn)練裝置,該裝置自動產(chǎn)生目標(biāo)航向信息,并完成航向給定;參訓(xùn)炮手根據(jù)給定航向,轉(zhuǎn)動模擬航向頭,使之與給定航向保持平行,微控制器通過航向給定值和裝定值之間的誤差即可對參訓(xùn)炮手訓(xùn)練水平進行評估。實驗表明,該裝置只需四炮手一人就能完成訓(xùn)練,可幫助四炮手快速建立平行感,是四炮手速成的好幫手。
高炮,人工瞄準(zhǔn),四炮手,STM32
現(xiàn)役高炮武器系統(tǒng),大部分已實現(xiàn)自動化且主要以火控系統(tǒng)法實施對空作戰(zhàn),可以實現(xiàn)目標(biāo)自動識別、跟蹤,并連續(xù)解算射擊諸元和控制高炮對空射擊。但是,在部隊機動途中、占領(lǐng)或撤出陣地或系統(tǒng)故障等情況下,只能采用人工瞄準(zhǔn)射擊的方法。因此,人工瞄準(zhǔn)射擊的訓(xùn)練仍然十分必要。
某型高炮人工瞄準(zhǔn)射擊中,要求四炮手具備良好的平行感以正確裝定目標(biāo)航向。目前我軍所使用的高炮四炮手訓(xùn)練器材多以航路裝定練習(xí)器為主。航路裝定練習(xí)器是純機械裝置,采取人工控制的方式,需要兩人配合訓(xùn)練,影響四炮手訓(xùn)練效率。
針對上述問題,本文以STM32F103微控制器為控制核心,采用步進電機、微型直流電機、光電編碼器和加速度計等部件,設(shè)計了一種新型的高炮四炮手訓(xùn)練裝置,較好地解決了傳統(tǒng)訓(xùn)練器材存在的不足,可改善四炮手訓(xùn)練條件、提高訓(xùn)練效率,對于幫助參訓(xùn)炮手快速建立空間平行感,進而提高訓(xùn)練效果具有積極意義。
四炮手訓(xùn)練裝置主要由航向給定裝置、航向裝定裝置、控制板及PC機4部分組成,其中航向給定部分包含步進電機、飛機模型、加速度計、微型直流電機及相關(guān)接口電路;航向裝定部分由光電編碼器、飛機模型、加速度計及相應(yīng)接口電路組成;控制板則主要由STM32微控制器及其外圍電路、A3988電機驅(qū)動電路組成,系統(tǒng)總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)圖
設(shè)計使用部隊配發(fā)的按20∶1標(biāo)準(zhǔn)制作的飛機模型,架設(shè)航向給定裝置時,用火炮瞄準(zhǔn)鏡內(nèi)分劃瞄準(zhǔn)飛機機翼兩端,前后移動航路給定裝置,當(dāng)飛機模型兩機翼兩端在瞄準(zhǔn)鏡內(nèi)寬為0-06時,便是航向給定裝置的安放位置[6]。STM32微控制器自動產(chǎn)生目標(biāo)航向信息,并控制電機帶動飛機模型指向目標(biāo)航向信息確定的水平航向和斜航向角度方向,完成目標(biāo)航向給定。
炮手根據(jù)觀察航向給定值確定的飛機模型指向,判斷目標(biāo)水平航向角和斜航向角,并轉(zhuǎn)動帶有加速度計(測斜航向角)和光電編碼器(測水平航向角)的模擬航路頭與飛機模型指向平行,完成航向裝定。STM32微控制器實時采集加速度計和光電編碼器的信息,獲取參訓(xùn)炮手航向裝定值,并與航向給定值相比較得出二者偏差的大小,對于多次連續(xù)訓(xùn)練結(jié)果可繪制出航向給定值、航向裝定值及相應(yīng)誤差曲線。通過分析各次誤差曲線變化規(guī)律,結(jié)合軍事訓(xùn)練考核評定標(biāo)準(zhǔn)即可對參訓(xùn)炮手的訓(xùn)練水平進行評估。
系統(tǒng)硬件設(shè)計以STM32F103微控制器為核心,使用該控制器的多通道PWM、定時器、IO口和SPI接口等外設(shè),擴展小量的硬件電路,實現(xiàn)步進電機多細(xì)分控制、直流電機驅(qū)動、光電碼盤旋變信號采集和加速度計角度信息采集等功能。
2.1 電機驅(qū)動電路設(shè)計
設(shè)計選用動態(tài)力矩大、定位精度高的YK42BYGH28-0404A13型步進電機實現(xiàn)水平航向角給定功能,該電機步距角為0.9°,采用多細(xì)分算法,可以實現(xiàn)電機微步距控。由于飛機模型體積有限,選擇微型直流電機(J928)植入飛機模型內(nèi)部以完成斜航向角給定,該電機具有結(jié)構(gòu)原理簡單、體積小、功耗低和調(diào)速方便等優(yōu)點,電機驅(qū)動原理框圖如圖2所示。
圖2 電機驅(qū)動原理圖
上位機經(jīng)接口電路給STM32F103微控制器發(fā)送控制命令。控制定時器1產(chǎn)生2路成正、余弦規(guī)律變化的PWM脈寬調(diào)制信號經(jīng)過低通濾波后分別與電機驅(qū)動器A3988的VREF1和VREF2引腳相連,為步進電機驅(qū)動提供參考電壓;控制定時器2產(chǎn)生一路占空比可控的PWM脈寬調(diào)制信號經(jīng)濾波后與A3988的VREF3引腳相連為直流電機驅(qū)動提供參考電壓。
同時,微控制器的PB6、PB7引腳分別與A3988的相位控制引腳PHASE1和PHASE2相連接,用于控制流過步進電機各相電流的方向[2],而微控制器的PB8引腳則與A3988的PHASE3引腳相連,用于控制直流電機的轉(zhuǎn)向,Rs1~Rs4則用于控制和檢測流經(jīng)電機各相電流大小。
2.2 光電編碼器及其接口電路設(shè)計
采用KSWL-3806S-1800-G5-24C型光電編碼器實現(xiàn)水平航向裝定信號采集,該型編碼器采用集電極開路的形式(如圖3所示)輸出A,B,Z三相信號,其中A,B為相位差90°的方波信號,依據(jù)其旋轉(zhuǎn)每圈產(chǎn)生的脈沖數(shù)決定編碼器分辨率,Z相為每轉(zhuǎn)一圈的零位起點標(biāo)志信號,每圈只產(chǎn)生一個脈沖信號,用于標(biāo)定機械角度零位。設(shè)計中將編碼器的A、B、Z相分別與STM32F103的3個IO端口PC9、PC10、PC11連接,并在各個引腳分別連接一個上拉電阻,電阻的另一端接3.3 V電源。
圖3 光電碼盤輸出等效電路圖
2.3 加速度計及其接口電路設(shè)計
系統(tǒng)斜航向給定和裝定信號均利用LIS3DH加速度計芯片進行采集。LIS3DH可以提供相互正交的X、Y、Z三軸方向上的加速度值,具有體積小、功耗低、功能強大等優(yōu)點,芯片采用1.71 V~3.6 V電壓進行供電,可以在±2 g/±4 g/±8 g/±16 g全量程范圍內(nèi)提供非常精確的數(shù)據(jù)輸出[3],并且通過I2C/SPI串口將測得的加速度值發(fā)送給STM32微控制器。其接口電路設(shè)計如圖4所示。
圖4 加速度計接口電路
其中,INT1、INT2為可編程中斷控制引腳,分別與PC4、PC5相連;SPC與PA4連接,為芯片提供實時時鐘;SDI和SDO為數(shù)據(jù)輸入和輸出引腳,分別與PA5和PA6相連;CS與PA7相連為芯片提供使能信號。STM32微控制器通過PC4、PC5和PA5 3個引腳輸出控制信號,完成對加速度計芯片寄存器的初始化配置,并且利用SPI通信讀取相應(yīng)寄存器值,獲得三軸加速度值,微控制器對接收到的加速度值進行數(shù)值濾波就可計算出模擬航路給定角度信息。
系統(tǒng)開機后首先完成STM32微控制器相關(guān)外設(shè)、A3988電機驅(qū)動器和三軸加速度計等的初始化配置,之后通過USART1串口等待接收上位機發(fā)送控制命令,控制步進電機和微型直流電機旋轉(zhuǎn),實現(xiàn)航向給定;參訓(xùn)炮手按照觀察到的航向,在水平和俯仰兩個方向轉(zhuǎn)動模擬航路頭,完成航向裝定。因此,系統(tǒng)軟件開發(fā)主要圍繞航向給定部分和航向裝定部分進行。
3.1 航向給定部分軟件設(shè)計
航向給定部分軟件設(shè)計主要涉及電機驅(qū)動和加速度計信號采集。此處著重介紹電機驅(qū)動軟件設(shè)計,而加速度計信息采集軟件則在航向裝定部分進行詳細(xì)介紹。
3.1.1 步進電機驅(qū)動軟件設(shè)計
系統(tǒng)水平航向給定主要由步進電機64細(xì)分控制實現(xiàn),細(xì)分控制是對電機電流的控制,A3988電機控制器各相電流ITripMax與該相的采樣電阻Rs、參考電壓VREFx有如下關(guān)系[4]:
其中,VREFx按正弦或余弦規(guī)律變化,由PMW組成的DAC實現(xiàn)[5]。通過改變VREFx就能得到按恒幅均勻變化的電機內(nèi)部合成磁場矢量,從而實現(xiàn)對轉(zhuǎn)子位置的細(xì)微精確控制。設(shè)計選用STM32高級定時器TIM1通道1、2產(chǎn)生2路PWM波,設(shè)置定時器自動裝載寄存器ARR-1的值為1 150,編程時,通過改變寄存器CCRx的值來改變PWM占空比,寄存器CCRx值計算公式如下[2]:
由此得到256個0~2π范圍內(nèi)按正弦規(guī)律變化的CCRx值并將其存放在數(shù)組BLOCK[256]內(nèi),編程時,通過查表的方法,使定時器TIM1輸出占空比成正弦規(guī)律變化的的PWM,因余弦與正弦相差90°,故可與正弦共用一個表,查表時,對應(yīng)的捕獲比較寄存器CCRx取值應(yīng)該錯開256/4=64個數(shù)組元素取值,PWM脈寬調(diào)制信號通過低通濾波器后產(chǎn)生VREFx波形如圖5所示。
圖5 兩相電流相位關(guān)系
從圖5中可以看出,輸出信號VREFx波形達(dá)到了預(yù)期目標(biāo)。兩相電壓相位相差90°,決定了兩相電流相位差也一定是90°。
由于此時的參考電壓值全為正值,并不能產(chǎn)生正弦變換的電流值,因此,需要通過改變Phasex信號來控制流入各相繞組的電流流向以獲取需要的正余弦電流信號,Phasex與各相電壓對應(yīng)關(guān)系如圖6所示。
圖6 相位與各相電壓對應(yīng)關(guān)系
當(dāng)Phasex為高電平時對應(yīng)輸出電流為正,反之為負(fù)。通過周期性改變Phasex的值,可實現(xiàn)實際輸出電流ITrip以2π為周期成正弦規(guī)律變化,在0~2π對應(yīng)產(chǎn)生256個電流值,從而實現(xiàn)步進電機的細(xì)分控制。
3.1.2 直流電機驅(qū)動軟件設(shè)計
系統(tǒng)斜航向給定由STM32微控制器控制嵌入飛機模型內(nèi)部的微型直流電機帶動飛機模型在俯仰方向旋轉(zhuǎn)實現(xiàn),斜航向給定過程中由加速度計實時測量出斜航向角現(xiàn)在量并反饋給控制器,微控制器將斜航向角現(xiàn)在量與斜航向角給定量進行比較并計算出位置誤差δ,利用位置補償?shù)姆椒ú粩嘞焙较蚪墙o定誤差,最終實現(xiàn)斜航向角給定。
其原理框圖如下。
圖7 直流電機控制框圖
程序開始時,系統(tǒng)利用STM32高級定時器TIM2通道1產(chǎn)生占空比可變的PWM信號,該信號經(jīng)低通濾波后輸入電機驅(qū)動芯片作為直流電機驅(qū)動參考電壓,編程時,通過判別誤差信號β的正負(fù)情況,將與A3988相位控制引腳PHASE3相連接的微控制器引腳PB8置高或者置低,從而控制流往電機的電流流向并控制電機按指定方向旋轉(zhuǎn),最終消除斜航向角誤差量,完成斜航向給定。
3.2 航向裝定部分軟件設(shè)計
系統(tǒng)航向裝定部分軟件設(shè)計主要包括光電編碼器信號采集和加速度計信號采集兩部分。其中光電編碼器負(fù)責(zé)水平航向角裝定信息采集,而加速度計則完成斜航向角角度信息采集。
3.2.1 光電編碼器數(shù)據(jù)采集模塊軟件設(shè)計
光電編碼器采用的是增量式,數(shù)據(jù)采集采用外部中斷方式檢測光電碼盤各相脈沖,為了實現(xiàn)倍頻,A、B相配置為上升沿和下降沿均觸發(fā)方式,Z相配置為上升沿觸發(fā)方式。光電碼盤信號變換關(guān)系如圖8所示。
圖8 信號波形圖
當(dāng)編碼器正轉(zhuǎn)時,狀態(tài)變化為10>11>01>00,反轉(zhuǎn)時,狀態(tài)變化為01>11>10>00,并且以此周期循環(huán)。根據(jù)各次狀態(tài)的唯一性,可根據(jù)A、B相電平的變化實現(xiàn)倍頻、判向并且實現(xiàn)計數(shù)。
當(dāng)A、B相脈沖觸發(fā)中斷時,調(diào)用外部中斷函數(shù)讀取相應(yīng)引腳輸入值,通過移位運算得到A、B相的編碼值,并根據(jù)現(xiàn)組合編碼值的前一個狀態(tài)來實現(xiàn)判相、計數(shù)。將得到的計數(shù)值按比例關(guān)系進行換算就可以得出水平航向角裝定信息,最后將計算所得的水平航向角裝定值發(fā)送給上位機進行后續(xù)分析和顯示。由于增量式光電編碼器開機默認(rèn)位置為零點,因此,使用前要與給定裝置標(biāo)定。
3.2.2 加速度計數(shù)據(jù)采集軟件設(shè)計
設(shè)模擬航路頭及飛機模型俯仰方向旋轉(zhuǎn)軸與三軸加速度計Y軸重合,此時只需要測量加速度計X軸的傾角就可獲得俯仰方向角度變化量,STM32微控制器與加速度計之間通過SPI進行通信,由于系統(tǒng)測量的是相對穩(wěn)定狀態(tài)下的目標(biāo)模型傾角,此時目標(biāo)模型的在X軸方向上的加速度分量不會大于g。因而加速度計寄存器值初始化時,往CTRL_REG4寄存器中寫入0x00將加速度計測量范圍設(shè)定為±2 g[4],加速度計軟件控制流程如圖9所示。
圖9 加速度計軟件設(shè)計流程
讀取出OUTX_L、OUTX_H寄存器值之后,將其進行移位處理,換算為16位有符號數(shù)N,由于此時加速度計測量范圍為±2 g,因此,按照比例換算關(guān)系就可計算出此時在X軸上的重力加速度分量a,計算公式如下:
然后對該加速度值a按公式:
求取反正弦就可得出X軸傾角θx即斜航向角裝定信息,同樣將計算所得的斜航向角裝定值發(fā)送回上位機進行評估和顯示。
根據(jù)軍事訓(xùn)練相關(guān)成績評定標(biāo)準(zhǔn),要求四炮手模擬訓(xùn)練裝置具有數(shù)據(jù)顯示及成績評定功能,采用C++Builder6集成開發(fā)工具完成軟件開發(fā),設(shè)計人機交互界面如圖10所示。
圖10 模擬訓(xùn)練裝置人機交互窗口
如圖所示,該四炮手模擬訓(xùn)練人機交互系統(tǒng)能夠?qū)崟r顯示出航向給定和航向裝定信息,并且繪制出相關(guān)曲線圖。同時,對每一次訓(xùn)練的航向給定與裝定誤差值進行數(shù)理統(tǒng)計。訓(xùn)練時,以8 s為一次訓(xùn)練周期,在完成規(guī)定的訓(xùn)練次數(shù)后(以5次為例),按照訓(xùn)練精度超過允許誤差的次數(shù)0/1/2分別記為優(yōu)秀/良好/及格,每次超過8 s則降低成績一等[7]。最后根據(jù)數(shù)理統(tǒng)計結(jié)果給出參訓(xùn)人員訓(xùn)練成績評估。
本文設(shè)計了一款基于STM32F103微控制器的四炮手模擬訓(xùn)練裝置。實驗與應(yīng)用表明,該四炮手模擬訓(xùn)練裝置較傳統(tǒng)的航向裝定練習(xí)器而言,具有自動化程度較高、操作簡單、考評客觀公正、不受人為因素影響等特點。符合高炮四炮手訓(xùn)練需求,達(dá)到了預(yù)訂的設(shè)計要求,其推廣應(yīng)用對于幫助參訓(xùn)四炮手快速建立平行感,提高訓(xùn)練效率具有重要意義。
[1]楊曉沸.步進電機細(xì)分控制的PWM實現(xiàn)[J].機電一體化,2008,14(10):51-55.
[2]曹彬乾,程遠(yuǎn)增.基于STM32步進電機多細(xì)分控制的設(shè)計[J].科學(xué)技術(shù)與工程,2013,13(23):6893-6897.
[3]意法半導(dǎo)體.LSM3DH英文參考手冊[S].www.st.com, 2010:1-6.
[4]Allegro Micro.A3988數(shù)據(jù)手冊[S].http://www.allegromicro.com,2006:4-7.
[5]秦健.一種基于PWM的電壓輸出DAC電路設(shè)計[J].現(xiàn)代電子技術(shù),2004,28(14):81-82.
[6]總參兵種部.防空兵兵器與操作教程[M].北京:解放軍出版社,2003.
[7]總參謀部.軍事訓(xùn)練成績評定標(biāo)準(zhǔn)[M].北京:解放軍出版社,1995.
Design and Implementation of a Simulated Training Device for the Fourth Gun Operator in Anti-aircraft Gun Based on STM32
SUN Shu-ying1,LI Wei1,LIU Jiang-yi1,CAO Bin-qian2
(1.Ordnance Engineering College,Shijiazhuang 050003,China;2.77618 Troops of PLA,Lasa 850000,China)
Although modern anti-aircraft gun weapon system with a high degree of automation,but artificial aimed shot is still essential.In the process of artificial aimed shot,the operation and training of the fourth gunner is turn out to be more difficult for the reason that the binding of course need to establish a strong sense of space parallel,this needs us training hard to improve the discrimination and binding precision of a course.In this paper,a fourth gunner training device is designed,using the photoelectricencoder,theMEMSaccelerometerandthesteppermotor,basedontheSTM32 microcontroller as the core.This device can automatically produce the course information and complete the course binding.The participation gunner then turn the course simulation head to make it parallel to the given one according to the given course information,and the microcontroller may evaluate the participation gunner training level through the error between course given value and the binding value. Experimental results show that the fourth gunner will be able to complete the training only by himself by using this device,and it can help the fourth gunner quickly create a parallel sense,so this device is a good helper in quick method of training for fourth gunner.
anti-aircraft gun,artificial aimed,fourth gunner,STM32
TJ35
A
1002-0640(2015)02-0170-05
2014-01-06
2014-02-07
孫書鷹(1957-),男,山東煙臺人,副教授,碩士生導(dǎo)師。研究方向:導(dǎo)航、制導(dǎo)與控制。