馮強(qiáng) 楊鑫 田曉洋 劉智平 石俊 熊杰
摘 要:無人機(jī)是一種由無線電遙控設(shè)備或自身程序控制裝置操縱的無人駕駛飛行器。針對路徑跟蹤和圖像識別功能的UAV,我們提出的在線路徑跟蹤與圖像識別,以STM32F103VCT6作為主控芯片、四元數(shù)算法為解算核心,我們的工作的特點(diǎn):①GPS定位系統(tǒng)測得UAV的距離在10米以內(nèi)。②圖像可以實(shí)時(shí)傳回。③圖像傳輸用鷹眼攝像頭,數(shù)據(jù)總線頻率低,傳輸穩(wěn)定。
關(guān)鍵詞:無人機(jī);圖像識別功能;飛行器系統(tǒng)平臺
1引言
最早的無人機(jī)出現(xiàn)在20世紀(jì)20年代,當(dāng)時(shí)只是作為訓(xùn)練用的靶機(jī)。1955年到1974年的越南戰(zhàn)爭中,無人機(jī)被用于執(zhí)行軍事任務(wù),此后無人機(jī)在軍事活動(dòng)中的身影頻頻出現(xiàn),從最初的靶機(jī)到后來發(fā)展到具有跟蹤、情報(bào)收集、通訊、甚至戰(zhàn)斗的功能。無人機(jī)被譽(yù)為現(xiàn)代戰(zhàn)場的“千里眼”和“殺手锏”。隨著社會的發(fā)展,無人機(jī)的應(yīng)用領(lǐng)域也從軍用擴(kuò)展到了民用領(lǐng)域,在農(nóng)業(yè)領(lǐng)域應(yīng)用使得傳統(tǒng)的農(nóng)業(yè)生產(chǎn)方式發(fā)生變革,無人機(jī)是將繁重的體力勞動(dòng),低效益向解放生產(chǎn)力,高效益轉(zhuǎn)變的重要手段,無人機(jī)技術(shù)的深入和使用將使現(xiàn)有的農(nóng)業(yè)耕作變得更高效、更節(jié)約資源。無人機(jī)技術(shù)的發(fā)展現(xiàn)在已經(jīng)不僅僅是簡單的飛行,其兼?zhèn)涞呐恼諗z像,運(yùn)輸傳送,定位跟蹤等一系列功能都使得無人機(jī)成為一個(gè)巨大的工具,全面地為人類社會服務(wù)。本文設(shè)計(jì)研制一臺具有路徑跟蹤功能的飛行器一架,通過硬件搭建和軟件配合使得飛行器能夠完成四個(gè)通道的基本飛行,并在飛行器系統(tǒng)上加載GPS模塊,使其具有路徑規(guī)劃和圖像識別功能。
2硬件設(shè)計(jì)
2.1設(shè)計(jì)思路
在用F450機(jī)架上安裝無刷電機(jī),并與無刷電子調(diào)速器連接,電子調(diào)速器與飛控板輸出控制信號連接,電池組給飛控板和無刷電子調(diào)速器供電。
2.2 硬件模塊
飛控板采用Cortex-M3系列的STM32F103VCT6作為主控芯片,傳感器主要使用陀螺儀、加速度計(jì)、地磁傳感器、氣壓高度計(jì);無刷電子調(diào)速器;無刷電機(jī);電池組;電壓轉(zhuǎn)換模塊;超聲波模塊;遙控器等。
2.3硬件組成
2.3.1飛控板組成元器件:STM32F103VCT6、MPU6050、HMC5883L、MS5611、AT45DB161 Flash芯片、CP2102 串口芯片、JTAG接口
① STM32F103VCT6:32-bit ARM Cortex-M3微控制器,接收不同類型的傳感器數(shù)據(jù)和發(fā)送對無刷電子調(diào)速器的控制信號,工作頻率72MHz
② MPU6050:集成了3軸MEMS陀螺儀,3 軸MEMS加速度計(jì),連接一個(gè)第三方的數(shù)字傳感器
③ HMC5883L:數(shù)字接口的三軸弱磁傳感器,測量范圍從毫高斯到8高斯,羅盤精度控制在1°—2°的12位模數(shù)轉(zhuǎn)換器
④ MS5611:采用SPI和I2C總線接口,分辨率可達(dá)10cm的氣壓傳感器
⑤ AT45DB161D-SU:存儲容量為16 Mbit 的Flash存儲芯片
⑥ CP2102:USB轉(zhuǎn)串口芯片
⑦ JTAG接口:JTAG接口用于硬件調(diào)試,方便使用J-Link調(diào)試程序
2.3.2選購合適的外圍硬件,搭建飛行器的硬件框架
①機(jī)架大小的估計(jì)計(jì)算公式:槳葉的英寸P,機(jī)架軸距M
(1)
②電調(diào)的選用時(shí)注意大的電流的電調(diào)兼容用在小電流的地方。
③電機(jī)選用時(shí),一般選擇無刷電機(jī),無刷電機(jī)力氣大,噪聲小,穩(wěn)定性高。
④槳葉選擇時(shí)與電機(jī)搭配。
3軟件設(shè)計(jì)
3.1算法控制律設(shè)計(jì)
通過對四個(gè)裝槳的無刷電機(jī)轉(zhuǎn)速調(diào)節(jié)實(shí)現(xiàn)了調(diào)節(jié)四旋翼飛行器姿態(tài),由4個(gè)無刷電機(jī)的不同轉(zhuǎn)速組合實(shí)現(xiàn)了四旋翼的俯仰、偏航、橫滾等飛行姿態(tài),并通過3個(gè)姿態(tài)控制通道設(shè)計(jì)PID控制律。
為了增加飛行器的穩(wěn)定性提高控制性能,控制角速度,采用角度/角速度串級PID控制算法。兩個(gè)PID控制算法,串在一起,增強(qiáng)系統(tǒng)的抗干擾性(增強(qiáng)穩(wěn)定性),使得飛行器的適應(yīng)能力更強(qiáng)。
整定串級PID時(shí)是先整定內(nèi)環(huán)PID參數(shù),再整定外環(huán)P參數(shù)。
內(nèi)環(huán)P:數(shù)值由小到大,數(shù)值比較大時(shí),四軸高頻震動(dòng),過幾秒鐘后穩(wěn)定;繼續(xù)增大,可能出現(xiàn)翻機(jī)。
內(nèi)環(huán)I:積分用來消除靜差,降低系統(tǒng)穩(wěn)定性。它的數(shù)值從小到大,四軸定在一個(gè)位置不動(dòng),不再往下掉;繼續(xù)增加I的值,四軸不穩(wěn)定。
內(nèi)環(huán)D:微分項(xiàng)D為標(biāo)準(zhǔn)的PID原理下的微分項(xiàng),即本次誤差-上次誤差。數(shù)值從小到大,四旋翼的性能沒有多大改變,回中的時(shí)候更加平穩(wěn),D項(xiàng)屬于輔助項(xiàng)。
外環(huán)P:當(dāng)內(nèi)環(huán)PID全部整定完成后,四旋翼已經(jīng)可以穩(wěn)定在某一位置。內(nèi)環(huán)P,從小到大,飛機(jī)從傾斜位置回中,給外力時(shí),它會慢速回中,達(dá)到平衡位置。
3.2姿態(tài)解算
系統(tǒng)軟件設(shè)計(jì)采用Keil MDK-ARM的編譯器,MDK包含KeilC編譯器、宏匯編器、調(diào)試器、實(shí)時(shí)內(nèi)核等組件,支持所有基于ARM的設(shè)備。
采用四元數(shù)算法對機(jī)體姿態(tài)解算。姿態(tài)角通過陀螺儀、加速度計(jì)和數(shù)字羅盤測量得到。陀螺儀測量出來的姿態(tài)輸出給主控芯片以計(jì)算控制量;加速度計(jì)和數(shù)字羅盤測量得到地球重力與地球磁場在機(jī)體空間坐標(biāo)上的分量,是實(shí)際姿態(tài)。陀螺儀輸出解微分方程可得到更新后的四元數(shù),通過四元數(shù)和方向余弦矩陣中元素的對應(yīng)關(guān)系解算方向余弦矩陣微分方程。
飛行器的姿態(tài)信息是由世界坐標(biāo)系和機(jī)體坐標(biāo)系之間的旋轉(zhuǎn)關(guān)系確定。分設(shè)飛行器的滾轉(zhuǎn)角Φ、偏航角Ψ、俯仰角θ,從地理系向機(jī)體系旋轉(zhuǎn),首先沿著地球系的Z軸轉(zhuǎn)動(dòng)Ψ,再繞中間的Y軸轉(zhuǎn)動(dòng)θ,然后繞中間系的X軸轉(zhuǎn)動(dòng)Φ。
四元數(shù)和方向余弦矩陣(姿態(tài)矩陣 )間的關(guān)系:
VX,Vy,Vz為陀螺儀積分后的姿態(tài)推算的重力向量。
加速度計(jì)實(shí)際測量得到機(jī)體坐標(biāo)系的重力向量。aX,ay,az。陀螺儀和加速度計(jì)的重力分量間存誤差,測出來的姿態(tài)間的誤差規(guī)范化處理 aX,ay,az
陀螺儀體軸角速度修正后,得到更新四元數(shù):
其中 Pi(n+1),i=0,1,2,3為更新的四元數(shù);Pi(n),i=0,1,2,3修正陀螺儀體軸角速度ωx(n),ωy(n),ωz(n);T為陀螺采樣周期。從而最終的得到載體姿態(tài)角的計(jì)算公式:
(6)
3.3圖像識別功能的實(shí)現(xiàn)
3.3.1鷹眼攝像頭
利用野火stm32所帶的鷹眼野火攝像頭,野火硬件攝像頭,速率去噪點(diǎn)能力極強(qiáng),直接輸出二值化圖像,一次輸出8個(gè)像素。圖像像素先輸出高位,后輸出低位,輸出順序是從左到右
3.3.2圖像采集思路
①開場中斷;②啟行中斷;③行中斷for循環(huán)延時(shí)采集圖像;④關(guān)閉行中斷,圖像采集完畢。
4系統(tǒng)測試
將做好的電路板加上5V電源,加電后檢測電路連接是否有短路和斷路故障,依據(jù)原理圖在各主要電路節(jié)點(diǎn)上用萬用表檢測電路連接是否有故障。再檢測各芯片通電情況,檢查芯片電源引腳上所加的電壓是否在芯片所要求的電壓范圍內(nèi)。
將飛控代碼下載到飛控板,進(jìn)行地面調(diào)試,檢測系統(tǒng)是否接收遙控器信號,電機(jī)轉(zhuǎn)向是否正常。進(jìn)行外場試飛,檢測系統(tǒng)飛行姿態(tài)是否穩(wěn)定,對控制信號響應(yīng)是否迅速。
第一步的仿真試驗(yàn)已經(jīng)完成,第二部的室內(nèi)測試正在進(jìn)行。
5結(jié)論
本文將無人機(jī)的路徑跟蹤與圖像識別功能結(jié)合在一起,通過測驗(yàn)達(dá)到了預(yù)期的效果。不論從軍用還是民用的角度來看無人機(jī)的路徑跟蹤與圖像識別功能將是未來發(fā)展的趨勢,并且在無人機(jī)領(lǐng)域?qū)泻芎玫陌l(fā)展空間。
致謝:感謝大學(xué)生創(chuàng)新計(jì)劃項(xiàng)目(編號 201410702056)的資助;感謝劉智平老師、石俊老師、熊杰老師的耐心指導(dǎo)他們以嚴(yán)謹(jǐn)?shù)膶W(xué)術(shù)態(tài)度和誨人不倦的風(fēng)尚幫助和教導(dǎo)我們改正錯(cuò)誤,不斷提高。老師勤懇的工作態(tài)度、一絲不茍的治學(xué)方法和誨人不倦的教學(xué)精神給我留下了深刻的印象,使課題組全體同學(xué)受益非淺,他們淵博的知識開拓了我們的視野,必將在將來的工作和學(xué)習(xí)中激勵(lì)我們繼續(xù)努力。
參考文獻(xiàn):
[1]楊森、劉火良.stm32庫開發(fā)實(shí)戰(zhàn)指南[M]. 機(jī)械工業(yè)出版社/2013.
[2]楚拉多斯懷特、周洲、祝小平.無人機(jī)協(xié)同路徑規(guī)劃[M]. 國防工業(yè)出版社/2013.
[3]吳綱柱、趙榮先,斯里夫.慣性導(dǎo)航應(yīng)用理論[M].國防工業(yè)出版社/1978.
[4]程民德.圖像識別導(dǎo)論[M].上??茖W(xué)技術(shù)出版社1983.7.
[5]邱致和、王萬義、卡普蘭.GPS原理與應(yīng)用[M].電子工業(yè)出版社/2002.
[6]吳騰飛、周鑫、袁鎖中.無人機(jī)軟式自主空中加油視覺導(dǎo)航方法[J].測控技術(shù) ,2015年第34卷9期 :17—20.
[7]譚建豪,王耀南,王媛媛,等. 旋翼飛行機(jī)器人研究進(jìn)展[J].控制理論與應(yīng)用, 2015年第32卷10期:1278—1286.
[8]叢楚瀅,王從慶,丁臻極,等.一種小型無人機(jī)的FASTSLAM算法[J].華中科技大學(xué)學(xué)報(bào)(自 然 科 學(xué) 版), 2015年第43卷第1期:420—427.
(作者單位:西安工業(yè)大學(xué))