西北民族大學(xué)電氣工程學(xué)院 黃劍林 蔡志遠(yuǎn) 尹錦山
本文設(shè)計(jì)的系統(tǒng)主要由STM32f103C8T6控制,描述了以O(shè)PENMV4為圖像處理模塊的電磁槍控制系統(tǒng)的設(shè)計(jì)。通過OPENMV4對(duì)引導(dǎo)簽名的圖像識(shí)別和捕捉處理,可以確定水平偏轉(zhuǎn)角和目標(biāo)點(diǎn)的距離。電容器充電電壓由AD部分電壓采樣和MOS管充電控制。確立電磁槍的電容電壓和發(fā)射距離之間的數(shù)學(xué)模型。通過調(diào)整電容電壓值,子彈可以達(dá)到目標(biāo)點(diǎn)。最終測(cè)試結(jié)果表明,系統(tǒng)可以自動(dòng)獲得3m以內(nèi)的感應(yīng)信息,并且可以實(shí)現(xiàn)準(zhǔn)確的發(fā)射。
隨著現(xiàn)代科技的發(fā)展和作戰(zhàn)戰(zhàn)術(shù)的發(fā)展,對(duì)小型智能導(dǎo)彈的需求越來越大。微系統(tǒng)和集成技術(shù)的應(yīng)用為低成本精確制導(dǎo)武器的發(fā)展提供了可能。為了使電磁槍在日常生活中得到更廣泛的應(yīng)用和更具實(shí)際意義,有必要設(shè)計(jì)一種小型化、便攜式的智能電磁槍。本設(shè)計(jì)是一種智能模擬電子控制系統(tǒng),可以通過圖像處理自動(dòng)捕獲目標(biāo)并獲得水平偏角和距離,然后一鍵啟動(dòng)傳輸,可以準(zhǔn)確地進(jìn)行標(biāo)點(diǎn)。
本項(xiàng)目研究的是基于STM32的遠(yuǎn)程調(diào)控“電磁坦克”設(shè)計(jì),需要用到STM32芯片的各個(gè)模塊,比如:藍(lán)牙模塊、舵機(jī)模塊、攝像頭模塊等,還需要學(xué)習(xí)電路、機(jī)械等知識(shí),設(shè)計(jì)電磁炮的電路、“電磁坦克”的內(nèi)部機(jī)械結(jié)構(gòu)。
本項(xiàng)目的難點(diǎn)在于如何將“電磁坦克”下部分的STM32小車和上部分的STM32電磁炮模塊完美兼容,上下兩個(gè)部分都由STM32芯片驅(qū)動(dòng),分別用到了STM32芯片的不同模塊,而如何調(diào)整代碼使這些模塊協(xié)同工作是本項(xiàng)目的難點(diǎn),也是重要研究?jī)?nèi)容。
本項(xiàng)目將要實(shí)現(xiàn)的目標(biāo)是:完成好“電磁坦克”的底層代碼,實(shí)踐后不斷調(diào)整底層代碼的漏洞,使其能完美驅(qū)動(dòng)“電磁坦克”。此外,搭建好“電磁坦克”的各個(gè)模塊、電路及其內(nèi)部機(jī)械結(jié)構(gòu)也是本項(xiàng)目需要實(shí)現(xiàn)的目標(biāo)。而最終的目標(biāo)也應(yīng)當(dāng)是做出一個(gè)代碼邏輯自洽的、外表美觀的、具有一定威力的“電磁坦克”。
基于STM32的遠(yuǎn)程調(diào)控電磁坦克項(xiàng)目的預(yù)期成果:“電磁坦克”可通過藍(lán)牙連接到手機(jī),使用手機(jī)對(duì)它發(fā)出各種指令,操作它的移動(dòng)方向、彈道等。通過手機(jī)遠(yuǎn)程操縱,既增加了安全性又使操作簡(jiǎn)單化。此外,采用攝像頭顏色捕捉技術(shù)可以通過它自動(dòng)瞄準(zhǔn)物體,對(duì)物體進(jìn)行打擊,也就是說“電磁坦克”有兩種工作方式,一種是手動(dòng)控制(通過藍(lán)牙),另一種是自動(dòng)打擊(利用攝像頭模塊)。系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
電磁炮電路包括四個(gè)部分:控制及其外圍電路、電容充電和ADC采樣電路、電容充電開關(guān)電路和電容放電開關(guān)電路。
大容量電容器采用10000UF/100V電容器,電容器耐壓為100V,兩端均設(shè)有ADC采樣分壓電路。其采用3.3V-5V調(diào)壓控制器和50Ω的電源電阻,降低充電速度,控制方便??梢圆捎霉怦顚⑽⒖刂破髋c電容充電開關(guān)隔離,避免因誤操作燒毀微控制器;其開關(guān)電路采用MOS管,M為電壓驅(qū)動(dòng)型,可與電壓連接,主要用于大功率、大電流、高電壓等情況下;由于電磁槍在放電瞬間產(chǎn)生大電流,采用25A大功率繼電器控制放電,單片機(jī)I/O口晶體管使12V繼電器放電電容。
本模塊使用5V電源,需要使用到2個(gè)可調(diào)降壓模塊使鋰電池電源供調(diào)節(jié)電壓以滿足系統(tǒng)需要,保證能夠?yàn)镸CU及所用到的模塊提供其所需要的電壓使它們正常工作,這是完成項(xiàng)目的前提。通過調(diào)壓電路調(diào)壓從而改變電磁炮充電儲(chǔ)能,以便控制電磁炮的射程大小。
根據(jù)MCU不同I/O口所具有的硬件資源將不同模塊接在合適的I/O口上,以合理使用硬件資源。此外,大多數(shù)模塊采用串口通信,為了滿足模塊實(shí)現(xiàn)其功能并能夠進(jìn)行相互間的通信從而滿足項(xiàng)目需要,需要將MCU的串口資源進(jìn)行分配使其不存在沖突,以便順利完成項(xiàng)目所需要的功能。其中,藍(lán)牙通訊模塊使用USART4、OPENMV4與STM32,通訊使用USART3,此外MCU的定時(shí)器資源也需要分配給各個(gè)模塊,以防止因?yàn)榘l(fā)生定時(shí)器的沖突而影響模塊功能的實(shí)現(xiàn)。
系統(tǒng)上電后使硬件設(shè)備初始化,通過串行端口分析OPENMV4的圖像處理信息,將進(jìn)入當(dāng)前工作模式,進(jìn)入相應(yīng)的工作狀態(tài)。通過比較AD當(dāng)前目標(biāo)距離對(duì)應(yīng)的電壓值,判斷有無點(diǎn)火。
為了防止執(zhí)行時(shí)間過長(zhǎng)導(dǎo)致系統(tǒng)穩(wěn)定性惡化,STM32f103C8T6提供了由系統(tǒng)計(jì)時(shí)器觸發(fā)的串?dāng)_檢測(cè)和分析、鍵檢測(cè)、畫面顯示和四個(gè)任務(wù)之間順序切換的調(diào)度硬件。每一個(gè)系統(tǒng)都需要一個(gè)系統(tǒng)來保持系統(tǒng)的周期性,因?yàn)槊恳粋€(gè)系統(tǒng)都需要一個(gè)系統(tǒng)來生成一個(gè)系統(tǒng)的系統(tǒng)。用戶程序不能自由訪問那個(gè)寄存器。
圖像數(shù)據(jù)由OPENMV4感光芯片收集,并且在原始圖像中發(fā)現(xiàn)了預(yù)設(shè)值范圍內(nèi)的像素。pre值是實(shí)驗(yàn)室顏色空間中L、a、B三個(gè)通道值的范圍。ENMV編程時(shí),預(yù)先設(shè)置范圍,此范圍的目標(biāo)是光線,這些像素點(diǎn)通過高斯平滑濾波來防止噪聲干擾。查找由圖像中像素構(gòu)成的最大色塊,計(jì)算色塊中心圖像中的坐標(biāo)位置。使用PID算法控制舵手的旋轉(zhuǎn)使其與目標(biāo)坐標(biāo)一致,從而使目標(biāo)對(duì)準(zhǔn),完成所有控制。為了減小由于像素丟失而引起的誤差,僅選擇水平和垂直位置上的最大像素以減少誤差。最后,目標(biāo)距離和水平偏轉(zhuǎn)角返回到STM32。
圖2 程序執(zhí)行流程圖
藍(lán)牙模塊使用H C-0 5 模塊,該模塊將藍(lán)牙芯片BC41713、Flash存儲(chǔ)器芯片M29W800及藍(lán)牙天線等一體化。STM32F103經(jīng)由串?dāng)_與藍(lán)牙模塊連接,接收用于發(fā)送移動(dòng)電話藍(lán)牙的控制命令,每個(gè)組的控制命令包括兩個(gè)字節(jié),第一個(gè)字節(jié)包括控制號(hào),第二個(gè)馬達(dá)速度控制PWM值,這兩個(gè)字節(jié)包括藍(lán)牙電機(jī)控制程序被用作M的兩個(gè)參數(shù)。STM32F103處理器的PWM信號(hào)生成通過將STM32F103的計(jì)時(shí)器設(shè)置為PWM模式而生成的智能汽車馬達(dá)的PWM控制信號(hào)。STM32的TIM2~TIM5的每一個(gè)計(jì)時(shí)器可以同時(shí)生成4路輸出。TIM2~TIM5的PWM輸出通過改變自動(dòng)重載寄存器ARR的值來改變PWM信號(hào)輸出的周期,變更CCR的值來改變信號(hào)的占空比。通過藍(lán)牙模塊接收來自移動(dòng)電話的控制信號(hào),從而實(shí)現(xiàn)對(duì)兩個(gè)步進(jìn)電機(jī)的正反轉(zhuǎn)控制,實(shí)現(xiàn)步進(jìn)電機(jī)的正轉(zhuǎn)和當(dāng)前小型車的前進(jìn)、后退、旋轉(zhuǎn)、停止。網(wǎng)絡(luò)照相機(jī)能夠通過無線網(wǎng)絡(luò)實(shí)現(xiàn)與客戶機(jī)的連接,將小型車周圍的環(huán)境畫面?zhèn)魉徒o客戶機(jī)來進(jìn)行控制。傳感器信息通過藍(lán)牙模塊直接發(fā)送給客戶。小汽車可以正常行駛和試車。圖2為程序執(zhí)行流程圖。
結(jié)束語:本文設(shè)計(jì)了一種基于藍(lán)牙控制的無線遙控車。通過計(jì)算汽車的結(jié)構(gòu)參數(shù),可以使步進(jìn)電機(jī)、驅(qū)動(dòng)器和加載結(jié)構(gòu)更好。通過藍(lán)牙檢測(cè)和發(fā)送信息,智能手機(jī)與車輛系統(tǒng)之間的藍(lán)牙通信是通過智能手機(jī)上的Android軟件設(shè)計(jì)建立的,擴(kuò)展了由智能車輛控制器使用的藍(lán)牙串行模塊與處理器之間的串行通信模式。車輛通信部的藍(lán)牙開發(fā)通過串行通信方式實(shí)現(xiàn),大大降低了藍(lán)牙通信開發(fā)的難度。STM32處理器的內(nèi)部定時(shí)器的多通道PWM輸出功能實(shí)現(xiàn)了車速的便利控制。通過實(shí)際的駕駛測(cè)試,通過手機(jī)藍(lán)牙能夠高速應(yīng)答和短距離控制車體。
可以設(shè)想到在作戰(zhàn)愈發(fā)現(xiàn)代化的今天,無人坦克適應(yīng)了其變化趨勢(shì)?;跓o人、輕便、大量、機(jī)動(dòng)理念設(shè)計(jì)制作的產(chǎn)品不僅適用于正面戰(zhàn)場(chǎng),它兼顧特種兵的部分性質(zhì),可期待未來替代特種兵執(zhí)行具有相當(dāng)危險(xiǎn)性的工作。