黃佳琪 王善偉 毛凌青 陳金江
摘要:該文闡述了由STM32F103C8T6為主控,以openmv4為圖像處理模塊的電磁炮控制系統(tǒng)的設(shè)計與實現(xiàn)。通過openmv4對引導(dǎo)標(biāo)識的圖像識別捕獲處理得到目標(biāo)點的水平偏角及距離。通過AD分壓采樣與mos管充電開關(guān)配合控制電容充電電壓,建立電容電壓與電磁炮發(fā)射距離之間的數(shù)學(xué)模型,通過調(diào)節(jié)電容電壓值使炮彈落點到指定位置。最終測試結(jié)果表明,該系統(tǒng)能自動獲取3m內(nèi)的引導(dǎo)標(biāo)識信息,并且實現(xiàn)精準(zhǔn)射擊。
關(guān)鍵詞:自動捕獲;數(shù)學(xué)模型;控制電壓;電磁炮
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)05-0225-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
隨著現(xiàn)代科技的發(fā)展與作戰(zhàn)戰(zhàn)術(shù)的發(fā)展,小型智能導(dǎo)彈需求增加,微系統(tǒng)、一體化技術(shù)的應(yīng)用為低成本精確制導(dǎo)武器的發(fā)展提供了可能性[1]。為了讓電磁炮能更加廣泛地用于日常,具有更多現(xiàn)實意義,設(shè)計小型化、便攜式的智能化電磁炮是十分有必要的。本設(shè)計研究智能模擬電磁炮控制系統(tǒng),可通過手動輸入目標(biāo)距離與水平偏角或使其通過圖像處理自動捕獲目標(biāo)并獲取水平偏角與距離,隨后一鍵式啟動發(fā)射,能夠精準(zhǔn)擊中目標(biāo)點。
1 系統(tǒng)總體方案設(shè)計
系統(tǒng)總體框圖如圖1所示,矩陣鍵盤與OLED屏作為人機(jī)交互部分,用于設(shè)置距離和偏角;openmv4為圖像處理模塊,用于識別目標(biāo)靶并計算靶心與電磁炮間距離與水平偏角,從而控制舵機(jī)云臺兩個維度的轉(zhuǎn)動,調(diào)整發(fā)射水平角度與仰角使炮管對準(zhǔn)目標(biāo);stm32f103c8t6為主控芯片,通過12位AD分壓采樣并計算大電容兩端電壓,建立電壓值與電磁炮射程的數(shù)學(xué)關(guān)系,判斷電容電壓值是否達(dá)到目標(biāo)距離對應(yīng)的電壓值,若達(dá)到預(yù)定值則斷開充電開關(guān),開啟放電開關(guān),電磁炮發(fā)射,使彈丸打到指定位置。
2 系統(tǒng)硬件設(shè)計
硬件電路主要包括以下四部分:控制及其外圍電路、電容充電與ADC采樣電路、電容充電開關(guān)電路、電容放電開關(guān)電路。
2.1 電容充電電路
電容充電電路如圖2所示,大電容采用lOOOOuF/IOOV電容,該電容耐壓為IOOV,在其兩端做ADC采樣分壓電路,用3.3V-5V的穩(wěn)壓管保護(hù)微控制器,利用50歐的功率電阻使其充電速度變緩易于控制。
2.2 電容充電開關(guān)電路
電容充電開關(guān)電路如圖3所示,采用光耦將微控制器與給電容充電開關(guān)隔離避免操作失誤使微控制器燒毀;用MOS管作為開關(guān)電路,MOS管為電壓驅(qū)動型,有電壓就能夠?qū)?,多用于大功率,大電流電壓的情況下;并用LED指示器是否正常工作。
2.3 電容放電開關(guān)電路
電容放電開關(guān)電路如圖4所示,由于電磁炮在放電的瞬間會產(chǎn)生極大的電流,采用25A大功率繼電器去控制放電,而用微控制器的10口驅(qū)動三極管讓12V的繼電器導(dǎo)通使電容放電,LED燈指示其是否正常工作。
2.4 控制及其外圍電路
本系統(tǒng)有兩個控制器,以STM32F103C8T6為主控,openmv用于圖像處理與舵機(jī)控制,它們之間用串口通信,控制鍵盤、OLED屏、兩個開關(guān)電路,STM32單片機(jī)10口分配如表1所示。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)是雙控制器的,stm32主要是用于控制電容的充放電與人機(jī)交互部分,openmv主要是用于圖像處理與舵機(jī)的控制。openmv通過串口與stm32相連,當(dāng)系統(tǒng)需要使用openmv時,stm32會通過串口發(fā)送信息給openmv,openmv進(jìn)行一系列控制之后再將“完成”的應(yīng)答信息返回給stm32,stm32再進(jìn)行相關(guān)控制。
3.1 STM32程序設(shè)計
系統(tǒng)上電后初始化硬件設(shè)備,通過串口解析openmv圖像處理信息,通過按鍵獲取當(dāng)前工作模式,進(jìn)入相應(yīng)工作狀態(tài),通過比較AD采樣值與當(dāng)前目標(biāo)距離對應(yīng)電壓值判斷是否開炮,流程圖如圖5所示。
為了防止由于執(zhí)行某項工作花費(fèi)時間過長而導(dǎo)致系統(tǒng)穩(wěn)定性較差,stm32f103c8t6通過SYstick定時器為串口檢測及解析、按鍵檢測、OLED屏顯示、開炮工作四個任務(wù)中依次切換提供調(diào)度硬件,各任務(wù)可被分配數(shù)ms時間進(jìn)行工作,需要一個Systick來產(chǎn)生周期性的中斷,作為整個系統(tǒng)的時基,而且不能讓用戶程序隨意訪問它的寄存器,以維持操作系統(tǒng)“心跳”的節(jié)奏[2]。
3.2 0penmv程序設(shè)計
通過openmv自帶的感光芯片采集圖像數(shù)據(jù),在原圖像中尋找與在預(yù)值范圍內(nèi)的像素點,預(yù)值為LAB顏色空間L、A、B三通道值的范圍,在openmv編程時預(yù)先設(shè)定好,該范圍正好是靶標(biāo)在光線影響下的顏色變化范圍。對這些像素點進(jìn)行高斯平滑濾波,防止噪聲的干擾[3],找出圖像中這些像素點所組成的最大色塊,并計算出色塊中心在圖像中的坐標(biāo)位置,并調(diào)用pid算法控制舵機(jī)轉(zhuǎn)動,使其坐標(biāo)與目標(biāo)坐標(biāo)一致,從而使得炮口等對準(zhǔn)環(huán)形靶,完成所有控制。通過獲得引導(dǎo)標(biāo)識的像素點從而獲取目標(biāo)距離,為減少像素點的丟失導(dǎo)致誤差的加大,選擇只測量在橫縱坐標(biāo)差別最大的像素點減少誤差。最后向stm32返回目標(biāo)距離與水平偏角。程序流程圖如圖6所示。
4 結(jié)束語
本文設(shè)計的電磁炮能夠在手動輸入距離與偏移角度時實現(xiàn)精準(zhǔn)射擊功能,還具有在一定范圍內(nèi)移動目標(biāo)耙后,自動追蹤靶標(biāo)并擊中靶標(biāo)功能,且系統(tǒng)具有重量輕,規(guī)模小,發(fā)射時無后坐力等優(yōu)點,此外,電磁炮在運(yùn)行時電流大,電壓大,本系統(tǒng)特別設(shè)計了保護(hù)電路,以確保使用安全。且系統(tǒng)成本低,易于實現(xiàn)。模塊化的設(shè)計,提高了實際應(yīng)用中選擇的靈活性。因此,具有廣泛市場前景。
參考文獻(xiàn):
[1]李陽,秦濤,朱捷,等.電磁軌道炮發(fā)展趨勢及其關(guān)鍵控制技術(shù)[Jl.現(xiàn)代防御技術(shù),2019,47(04):19-23.
[2]李立春,劉卓.基于ARM Cortex-M3的SysTick解析[J].吉林化工學(xué)院學(xué)報,2015,32(01):36-39.
[3]顧子侶,陳智強(qiáng),趙磊,等.電磁炮作為無人機(jī)武器系統(tǒng)的設(shè)計原理[J].電子制作,2018(18):7-8.
【通聯(lián)編輯:唐一東】