李晶 孟立凡 劉春美 李菠 黃廣炎 喬志強
摘 要: 為滿足單兵攔截低空慢速小型無人飛行器實戰(zhàn)中對彈道解算器的低成本、小體積、高精度的要求,設(shè)計了一種在STM32硬件平臺上實現(xiàn)的手持彈道解算器。通過研究彈丸質(zhì)心運動模型及其數(shù)值解法,提出并設(shè)計了基于STM32F407平臺的提前命中目標位置的精確彈道解算方法,并完成軟硬件調(diào)試。實驗結(jié)果表明,設(shè)計的手持彈道解算器在精度和實時性方面能夠滿足單兵攔截低慢小目標作戰(zhàn)需求。
關(guān)鍵詞: 低慢小無人飛行器; 手持彈道解算器; STM32F407; 彈道模型
中圖分類號: TN911.1?34; TP274 文獻標識碼: A 文章編號: 1004?373X(2017)07?0032?04
Research and implementation of trajectory resolving method intercepting
low?altitude, slow?speed and small?size UVA
LI Jing1, MENG Lifan1, LIU Chunmei2, LI Bo1, HUANG Guangyan3, QIAO Zhiqiang4
(1. National Key Laboratory for Electronic Measurement Technology, North University of China, Taiyuan 030051, China;
2. The First Research Institute of Ministry of Public Security, Beijing 100048, China;
3. State Key Laboratory of Explosion Science and Technology, Beijing Institute of Technology, Beijing 100081, China;
4. School of Mechanical and Power Engineering, North University of China, Taiyuan 030051, China)
Abstract: In order to meet the requirement of the single pawn to intercept the low?altitude, slow?speed and small?size UAV in the actual combat for the low?cost, small?size and high?precision trajectory solver, a handheld trajectory solver implemented on the STM32?based hardware platform was designed. The motion model of the projectile barycenter and its numerical solution are studied to propose and design the STM32F407 platform based accurate trajectory solving method to hit the target beforehand. The hardware and software are debugged. The experimental results show that the handheld trajectory solver can meet the fight requirement that the single pawn can intercept the low?altitude, slow?speed and small?size UAV in the aspects of the accuracy and real?time performance.
Keywords: low?altitude, slow?speed and small?size UAV; handheld trajectory solver; STM32F407; trajectory model
0 引 言
低空慢速小型無人飛行器(以下簡稱“低慢小”)因其具有升空突然、易操控、反射截面小、隱蔽性強等優(yōu)勢,成為城市防空的難點和重點[1]。單兵發(fā)現(xiàn)“低慢小”并實施攔截時,不能使用現(xiàn)有的防空武器和槍支等殺傷性武器,需選擇軟毀傷的攔截方式。而彈道解算器的解算精度和速度是對目標實行精確攔截的關(guān)鍵,在微控制器的能力范圍內(nèi),最大限度的提高彈道解算算法的解算精度是提高彈道測試精度的重要途徑。而計算彈道解算方程組比較復(fù)雜,在精度較高的情況下相比來說速度就會降低,因此尋找精度高且計算量小的算法顯得尤為重要[2]。在確定解算算法后,彈道解算器既要保證計算精度,又要滿足單兵模式攔截中對彈道解算器體積小型化、低功耗、解算速度快的要求。而傳統(tǒng)的彈道解算多運行在較大型的計算機系統(tǒng)上[3],難以滿足單兵攔截時對彈道解算器的小巧、靈活、操作簡便、節(jié)能等需求。因此有必要選擇一種低功耗、高性能的微控制器,在精確解算外彈道微分方程組的基礎(chǔ)上,開發(fā)出一種嵌入式便攜軍用彈道解算器,用于單兵攔截低慢小中彈道的快速解算。
本文正是基于這樣的需求下,通過建立彈丸質(zhì)點彈道模型,研究高精度彈道快速解算方法。選取低功耗、高性能的微控制器,設(shè)計出一種基于單片機STM32F407平臺的便攜軍用彈道解算器,具有體積小、能耗低、解算精度高的特點,能夠滿足單兵攔截低慢小的需要[4]。
1 基礎(chǔ)理論
1.1 提前命中目標位置分析
低慢小定位系統(tǒng)幾何模型如圖1所示,點[O]為炮口中心,[P1,P2]為低慢小飛行軌跡中的兩位置點。[P1]為當前時刻低慢小位置,[P2]為經(jīng)過[t]時間后的位置,[h1,h2]是低慢小的高度,[d1,d2]是低慢小的水平距離,[θ1,][θ2]是炮高低角,為了讓彈藥精確攔截低慢小目標,炮必須提前[t]時間射擊,這樣才有可能使彈目交會,具體操作過程如下:經(jīng)過探測裝置測得[P1]點低慢小的位置及速度信息,經(jīng)[t]時間后低慢小飛行到[P2]點,提前[t]時間發(fā)射彈丸,經(jīng)過[t]時間后彈丸與低慢小在[P2]遭遇,將低慢小攔截。
其中式(1)為低慢小運動方程組,利用方程(2)可以得到高低角及可攔截時間[t,]這兩個公式聯(lián)立就是一般的彈目交會方程組。
1.2 外彈道模型建立
有些比較復(fù)雜的外彈道模型精度很高但解算速度較低,所以在均衡解算精度和速度的情況下,對于設(shè)計正確的彈丸,圍繞質(zhì)心的轉(zhuǎn)動對質(zhì)心運動影響不大,可以暫時忽略圍繞質(zhì)心轉(zhuǎn)動對質(zhì)心運動的影響,即認為攻角始終為零,科氏加速度為零,地球表面是平面,重力加速度的大小不變、方向始終向下,氣象條件是標準的、無風(fēng)雨。采用彈丸質(zhì)心運動微分方程組作為計算模型,彈丸受力分析如圖2所示。
直角坐標系的外彈道運動微分方程組經(jīng)化簡后如下:
參數(shù)說明:[H(y)]為空氣密度函數(shù),[H(y)=][(20 000-y)(20 000+y)](經(jīng)驗公式);[G(v)=4.737×10-4vCx0,][v=v2x+v2y,]其中[v0]為彈丸初速,[Cx0]為阻力系數(shù);[c]為彈道系數(shù)[5]。
上述彈道解算主要涉及三角、反三角及四則計算等,并且需要參數(shù)數(shù)值的大量轉(zhuǎn)換[6],由空氣彈道存在的惟一性定理可知,彈道系數(shù)、射角(高低角)和炮彈初速可以完全且惟一的決定一條彈道,因此,得到準確的高低角和可攔截時間是進行外彈道微分方程組解算的目的。
2 彈道解算方案
2.1 算法實現(xiàn)
進行外彈道常微分方程組實時解算常用的數(shù)值解法有牛頓?迭代法、歐拉法、龍格?庫塔法等,不同的解法對應(yīng)的精度不一樣,在速度一定的情況下,牛頓?迭代法、歐拉法的解算精度大約為一階,而龍格?庫塔進行解算的精度為二階,龍格?庫塔法精度較高,因此,這里用四階R?K的方法[7?9]。按初值問題求解微分方程組,將式(3)進行解算,目的是求解出射擊高低角和可攔截時間。該運算方法的思想如下:通過計算函數(shù)某些點上的函數(shù)值,經(jīng)過對函數(shù)值做線性組合,構(gòu)造一組近似的計算公式,通過近似公式和泰勒展開式進行比較,得到一定精度的計算公式[6]:
解算外彈道微分方程組需要通過迭代進行計算,即每次的求解需要上步的運算結(jié)果,前后的兩次運算具有相關(guān)性,運算過程的關(guān)鍵在于選取合適的迭代步長,雖然步長短能提高精度但計算時間過長,導(dǎo)致最終發(fā)射累積誤差較大,步長過長會引起迭代發(fā)散,本文通過選取合適的迭代步長進行計算。
首先將給定的彈丸初始速度及有關(guān)參數(shù)代入式(3),利用式(5)解算微分方程組,解算出彈丸擊中低慢小時的高低角及可攔截時間,將擊中點坐標和由式(1)預(yù)測該時刻低慢小的位置坐標進行比較,檢驗精度是否滿足要求,其中本文采取相對高度誤差和相對水平誤差最大不超過10 m(采取攔截網(wǎng)方式攔截時,網(wǎng)面積一般不小于100 m2),如果滿足則可得射擊高低角及可攔截時間,若不滿足要求,則繼續(xù)迭代,同時在迭代過程中不斷檢查運算進行的迭代次數(shù),如果迭代次數(shù)超過所定次數(shù)則認為迭代失敗,重新將初始值代入公式進行上述計算,不斷重復(fù)上述計算過程直至得出解算結(jié)果。
2.2 利用單片機進行彈道解算
本系統(tǒng)設(shè)計實現(xiàn)的硬件實驗平臺采用Keil μVision5作為編程工具,將ALIENTEK公司STM32系列STM32F407型號作為彈道解算控制器的核心芯片。STM32F407采用Cortex M4內(nèi)核,擁有集成FPU和DSP指令,該芯片配置非常強悍,很多功能相對STM32F1進行了重大改進,例如FSMC的速度,F(xiàn)4刷屏速度可達3 300 萬像素/s,可以有效處理例如FFT,DTMF等各種復(fù)雜運算[10?11],選擇STM32F407ZGT6作為彈道解算控制器核心板,利用實驗板進行外彈道解算和相關(guān)控制,理論上,該實驗板可以滿足計算要求。
3 彈道解算驗證
3.1 算法可行性驗證
以某型彈丸為例,對其任意射角的彈道在計算機上進行仿真計算,將解算結(jié)果和該型號的彈丸射表進行比較,得到本文提出的算法解算精度。圖3是選擇射角為45°時在計算機上解算的數(shù)據(jù)和射表的比較。在對低慢小無人飛行器進行攔截時,為了提高攔截成功率,要求彈丸在彈道的上升段與目標相遇[12],所以假設(shè)彈丸做上升運動時將低慢小有效攔截。
對圖中數(shù)據(jù)進行統(tǒng)計分析,運算的結(jié)果和射表距離相差不大,只有在末期才出現(xiàn)一定小角度的偏離,利用龍格?庫塔算法解算微分方程組時,是把前一次的迭代結(jié)果作為下一次迭代輸入,也就是說會把前一次迭代產(chǎn)生的誤差引入下次計算中,從而產(chǎn)生誤差累計[13],由圖3得到粗略的統(tǒng)計結(jié)果:遭遇位置最大距離誤差可以控制在0.2 m之內(nèi),存速最大誤差在0.3 m/s內(nèi),可以看出本文提出的算法仿真結(jié)果和射表數(shù)據(jù)基本吻合,可以用于彈道的仿真計算。
3.2 解算實例驗證
在選擇高精度快速彈道解算方法的基礎(chǔ)上,微控制器的解算精度與速度是彈道解算的關(guān)鍵,因此,需要對STM32F407單片機的解算精度與速度進行驗證。
通過對彈丸不同初速時,目標做不同運動的大量數(shù)據(jù)分析,最大相對距離誤差<10.0 m,解算耗時在12 ms之內(nèi),可以認為基于單片機STM32F407平臺設(shè)計的彈道解算器滿足對“低慢小”飛行物軟毀傷攔截時的精度。
選取目標做不同運動時采集兩組數(shù)據(jù),解算結(jié)果見表1和表2。
4 系統(tǒng)設(shè)計
基于STM32F407單片機平臺設(shè)計的彈道解算器主要包括顯示部分、電源部分、通信部分和控制部分,其中,單片機部分主要用于數(shù)據(jù)采集和彈道解算,通信部分用于系統(tǒng)調(diào)試和參數(shù)裝定,電源部分為彈道測試系統(tǒng)提供工作電源,顯示部分用于顯示相關(guān)參數(shù)。通過對單片機的編程,并和有關(guān)器件配合設(shè)計實現(xiàn)了對顯示、通信、電源等部分的控制。
5 實驗與分析
本文將攔截對象選為常見可自行組裝的小型航模機,尺寸為450 mm×450 mm,采取的攔截網(wǎng)面積為15 m×20 m,共進行三次試驗,第一次試驗是在風(fēng)速為2.67 m/s的環(huán)境下進行,網(wǎng)被航模機的一個螺旋槳纏繞,航模機墜落,第二次試驗時風(fēng)速為7.56 m/s,網(wǎng)被風(fēng)吹的較遠,未能觸碰航模機,第三次試驗風(fēng)速為3.88 m/s,航模機兩個槳被網(wǎng)纏繞,航模機墜落。根據(jù)實地試驗,在風(fēng)速較小的情況下可以進行有效攔截。
6 結(jié) 論
本文通過建立彈丸質(zhì)點運動模型,在選擇高精度彈道快速解算方法的基礎(chǔ)上,選用單片機STM32F407為主控制器實現(xiàn)彈道解算,相比在較大型計算機上進行解算的方式,資源消耗不多、運行速度快、性能穩(wěn)定且便于攜帶,具有較強的實用性。并且,本文對低慢小進行了軟毀傷攔截實驗,在風(fēng)速較小的情況下初步實現(xiàn)了采用不小于100 m2的網(wǎng)對“低慢小”進行成功攔截,實驗結(jié)果表明,本文設(shè)計的集高精度、速度快、低功耗且小型化于一體的手持彈道解算器在單兵進行攔截低慢小目標的實際應(yīng)用中可以使用。
注:本文通訊作者為劉春美。
參考文獻
[1] 張建偉,郭慧明.低空慢速小目標攔截系統(tǒng)研究[J].計算機工程與設(shè)計,2012,33(7):2874?2878.
[2] 申強,楊登紅,李東光.基于MSP430單片機的彈道解算方法研究與實現(xiàn)[J].北京理工大學(xué)學(xué)報,2011,31(2):140?143.
[3] 吳紅權(quán),赫赤,韋宏強,等.基于Android平臺嵌入式彈道仿真系統(tǒng)研究與實現(xiàn)[J].系統(tǒng)仿真學(xué)報,2013,25(8):1741?1745.
[4] 陳偉.基于RT?thread的遠程家用服務(wù)機器人系統(tǒng)開發(fā)[D].杭州:浙江工業(yè)大學(xué),2015:13?15.
[5] 韓子鵬.彈箭外彈道學(xué)[M].北京:北京理工大學(xué),2008:145?188.
[6] 潘艇,楊福彪,朱勇,等.基于龍格?庫塔的彈道微分方程解算的FPGA實現(xiàn)[J].計算機測量與控制,2015,23(12):4217?4220.
[7] 王旭智,孫中森,宋建中.利用外彈道微分方程組實時快速解算高炮理論彈道的研究[J].電子器件,2007,30(6):2297?2306.
[8] 孫幸福,狄邦達.高炮火控外彈道實時解算及其應(yīng)用[J].火力與指揮控制,2007,32(5):110?112.
[9] 胡紹勇,朱齊丹.快速解命中的一種改進算法[J].火力與指揮控制,1998,23(1):65?69.
[10] 張洋,劉軍,嚴漢宇.原子教你玩STM32(庫函數(shù)版)[M].2版.北京:北京航空航天大學(xué)出版社,2015:18?20.
[11] 曹彬乾,程遠增,孫書鷹,等.基于STM32步進電機多細分控制的設(shè)計[J].科學(xué)技術(shù)與工程,2013,13(23):6893?6897.
[12] 肖元星,張冠杰.地面防空武器系統(tǒng)效費分析[M].北京:國防工業(yè)出版社,2006:280?310.
[13] 馬飛,趙光權(quán),彭宇.FPGA實現(xiàn)飛輪模型求解方法研究[J].計算機測量與控制,2011,19(11):2795?2797.