李潤(rùn)儀 李華根 魏海松
?
四旋翼自主飛行算法
李潤(rùn)儀 李華根 魏海松
本文針對(duì)四旋翼飛控程序的制作進(jìn)行一定研究。通過(guò)STM32芯片以及MPU6050等器件搭建一個(gè)簡(jiǎn)易的四旋翼模型。通過(guò)四元數(shù)算法得到姿態(tài)。再通過(guò)串級(jí)PID來(lái)控制飛機(jī)。同時(shí)通過(guò)超聲波與加速度計(jì)數(shù)據(jù)融合后實(shí)現(xiàn)定高。設(shè)計(jì)完成的四旋翼能夠進(jìn)行比較好的姿態(tài)自穩(wěn),以及定高。為下一步定點(diǎn)循跡打下基礎(chǔ)。
對(duì)于四旋翼的研究可以追溯到20世紀(jì)初。當(dāng)時(shí)所制造的四旋翼體積都相當(dāng)龐大。受制于當(dāng)時(shí)的工業(yè)水平,所制造出來(lái)的四旋翼效能低下,平衡性差。如1907年法國(guó)Breguet兄弟在Charles Richet教授的指導(dǎo)下所制造出來(lái)的高達(dá)3.7m,重達(dá)約500kg的Gyroplane No.10。雖然性能較差,但是作為四旋翼的起步雛形,意義十分重要。
21世紀(jì)開(kāi)始隨著電子集成技術(shù)以及各類(lèi)自動(dòng)控制理論的發(fā)展,小型四旋翼的制作成為可能,如瑞士洛桑聯(lián)邦學(xué)院在2003年所研發(fā)的OS4小型四旋翼,就是使用了PID算法0,最優(yōu)控制理論實(shí)現(xiàn)了自主飛行。
四旋翼使用常規(guī)的PID控制器,通過(guò)選擇合適的參數(shù)即可達(dá)到較好的自穩(wěn)狀態(tài)。目前,民用級(jí)的四旋翼多使用PID控制,或串級(jí)PID控制來(lái)實(shí)現(xiàn)自平衡。
飛控軟件設(shè)計(jì)
當(dāng)前市場(chǎng)上有眾多成熟的成品四旋翼以及成品飛控,也有許多較為成熟的開(kāi)源飛控軟件。實(shí)驗(yàn)所使用四旋翼飛控程序使用Keil μVision5編寫(xiě)。使用ANO-TC上位機(jī)進(jìn)行調(diào)試。
實(shí)驗(yàn)四旋翼角度自穩(wěn)控制使用的是串級(jí)PID,外環(huán)控制角度使用PID控制器,提高控制精度,內(nèi)環(huán)控制角速度使用PD控制器產(chǎn)生阻尼效果,防止調(diào)節(jié)過(guò)快導(dǎo)致震蕩,優(yōu)化飛行效果。兩級(jí)PID均采用位置式PID。
依據(jù)調(diào)參順序:
外環(huán)角速度PID:
其中Epitch(t)為當(dāng)前四旋翼實(shí)際角度與目標(biāo)角度的差值,即:
PID參數(shù)為:
同理橫滾角的PID:
參數(shù)同俯仰角
偏航角的PD
參數(shù)相比于前面的角度有所變化
內(nèi)環(huán)角速度PD:
G(t)為當(dāng)前測(cè)得的角速度,即:
圖1 Gyroplane No.1
圖2 PID控制器
圖3 實(shí)驗(yàn)四旋翼模型
外環(huán)中選擇參數(shù):
橫滾以及偏航類(lèi)似與此,不再一一列舉。
計(jì)算完成之后將PID的總輸出輸出到電機(jī)PWM參數(shù)中,通過(guò)改變PWM的占空比來(lái)調(diào)整電機(jī)的轉(zhuǎn)速。
定高算法設(shè)計(jì)
定高算法參考了開(kāi)源飛控crazepony、ANO-TC的開(kāi)源飛控程序,通過(guò)融合MPU6050的加速度計(jì)的來(lái)進(jìn)行定高。
高度控制也使用了串級(jí)PID。但是由于高度受到飛行器質(zhì)量,所處環(huán)境的影響較大。因此相較于角度環(huán),PID參數(shù)更難整定。另外超聲波數(shù)據(jù)與加速度計(jì)融合后用于PID控制也是定高控制的難點(diǎn)之一。
實(shí)驗(yàn)所使用的ks103自帶溫度補(bǔ)償,因此可以較為準(zhǔn)確的獲得距離,但是它的波束角較大(約35°),且溫度補(bǔ)償后,數(shù)據(jù)處理時(shí)間較長(zhǎng)(間隔約91ms)。因此需要加速度計(jì)的參與來(lái)實(shí)現(xiàn)較高的控制頻率,達(dá)到較好的控制效果。
定高的內(nèi)環(huán)將超聲波的數(shù)據(jù)直接用于控制,其公式為:
外環(huán)為Z軸上的速度環(huán):
得到PID輸出后,與原有油門(mén)桿量加權(quán)求和后加到電機(jī)PWM占空比上。達(dá)到定高目的。
實(shí)驗(yàn)效果
實(shí)驗(yàn)四旋翼在角度自穩(wěn)上有比較好的表現(xiàn),在人為干擾的情況下也能較快的回到目標(biāo)姿態(tài)。但是控制精度一般,因此會(huì)導(dǎo)致四旋翼相對(duì)位置在短時(shí)間變化非常大,難以控制。而高度環(huán)上控制效果較好,在無(wú)干擾時(shí)能在上下5cm內(nèi)震蕩,但是當(dāng)四軸飛行器在受到干擾時(shí),回到目標(biāo)位置就比較緩慢。
人工神經(jīng)網(wǎng)絡(luò)興起于20世紀(jì)初,但是隨后隨著對(duì)神經(jīng)網(wǎng)絡(luò)的進(jìn)一步研究。人們開(kāi)始認(rèn)識(shí)到人工伸進(jìn)網(wǎng)絡(luò)的局限性。但是隨著近些年電子技術(shù)的發(fā)展,人工神經(jīng)網(wǎng)絡(luò)再次興起,出現(xiàn)了Hopfield網(wǎng)絡(luò),Boltzmann機(jī)等。
現(xiàn)今人工神經(jīng)網(wǎng)絡(luò)已經(jīng)成為涉及認(rèn)知,數(shù)理,信息,計(jì)算機(jī)科學(xué)等多多學(xué)科交叉、綜合的前沿學(xué)科。在智能控制,信號(hào)處理,機(jī)器視覺(jué)等方面也有許多的應(yīng)用。
神經(jīng)網(wǎng)絡(luò)智能PID控制器
神經(jīng)網(wǎng)絡(luò)通過(guò)模擬人腦的工作來(lái)實(shí)現(xiàn)自我調(diào)整,具有可逼近任何復(fù)雜非線(xiàn)性系統(tǒng),魯棒性、容錯(cuò)性強(qiáng)。因此,近年來(lái)在控制領(lǐng)域得到了極為廣泛的應(yīng)用。神經(jīng)網(wǎng)絡(luò)在解決高度復(fù)雜,高度非線(xiàn)性,高度不確定性系統(tǒng)方面有巨大的潛能在這種控制方式中。神經(jīng)網(wǎng)絡(luò)會(huì)先按照一定的算法進(jìn)行學(xué)習(xí),一般分為有指導(dǎo)和無(wú)指導(dǎo)學(xué)習(xí)。然后接入控制系統(tǒng),并更具當(dāng)前的各項(xiàng)輸入給出一組最佳的PID控制器參數(shù)。同時(shí)還要繼續(xù)學(xué)習(xí),不斷調(diào)整各個(gè)神經(jīng)元之間的連接權(quán)系數(shù)以得到最好的控制效果。由于權(quán)系數(shù)是由學(xué)習(xí)階段所有的信息更具特定算法計(jì)算后得到的統(tǒng)計(jì)信息。因此,加入了神經(jīng)網(wǎng)絡(luò)的智能PID算法有著更高的容錯(cuò)性,更好的適應(yīng)性,更高的控制效率。
本文設(shè)計(jì)完成了一套能夠角度自穩(wěn),實(shí)現(xiàn)定高的四旋翼模型。使用STM32芯片,以及MPU6050等傳感器。通過(guò)四元數(shù),PID控制等算法完成了能夠進(jìn)行遙控飛行,定高的要求的飛行器。但是在定高,定位效果上比較一般。下一步將整合攝像頭等傳感器,以及使用神經(jīng)網(wǎng)絡(luò)算法來(lái)優(yōu)化飛行效果。并且實(shí)現(xiàn)自主懸停以及低空循跡等功能。
李潤(rùn)儀 李華根 魏海松
中國(guó)民航大學(xué)
基金來(lái)源:天津市級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目
項(xiàng)目編號(hào):201510059087
10.3969/j.issn.1001-8972.2016.10.009