薛萍 周仁鶴 王宏民
摘 要:無人機(jī)技術(shù)現(xiàn)已被運(yùn)用到軍事、農(nóng)業(yè)等越來越多的領(lǐng)域。在大多數(shù)四旋翼飛行器上仍采用PID控制算法,但其參數(shù)的調(diào)節(jié)要依賴精確的運(yùn)動(dòng)學(xué)模型,且調(diào)節(jié)時(shí)間較長。針對(duì)PID控制器調(diào)節(jié)時(shí)間慢,精度差的問題。采用了一種改進(jìn)的PID控制器的方法來提高四旋翼飛行器的調(diào)整速度和穩(wěn)定性。研究了基于差分進(jìn)化算法的PID控制器的系統(tǒng)模型,相比于基于ZieglerNichols調(diào)參方法的PID控制器,系統(tǒng)的上升時(shí)間提高了36%。并通過matlab仿真,結(jié)果表明運(yùn)用差分進(jìn)化算法對(duì)四旋翼無人機(jī)的姿態(tài)進(jìn)行調(diào)整,不僅能夠提高四旋翼無人機(jī)的穩(wěn)定性,還能提高四旋翼無人機(jī)姿態(tài)調(diào)整的速度。
關(guān)鍵詞:四旋翼飛行器;模糊推理;差分進(jìn)化算法;PID控制器
DOI:10.15938/j.jhust.2019.03.015
中圖分類號(hào): TP391.9
文獻(xiàn)標(biāo)志碼: A
文章編號(hào): 1007-2683(2019)03-0093-07
Abstract:Unmanned aerial vehicle (UAV) technology has been applied to more and more fields, such as military and agriculture. The PID control algorithm is still used on most four rotor aircraft, but the adjustment of its parameters depends on the accurate kinematic model and the adjustment time is longer. Aiming at the slow and poor precision of PID controller.An improved PID controller is adopted to improve the speed and stability of the four rotor aircraft. The system model of PID controller based on differential evolution algorithm is studied. Compared to the PID controller based on ZieglerNichols tuning method, the rising time of the system is increased by 36%. Through MATLAB simulation, the results show that the use of differential evolution algorithm to adjust the attitude of the four rotor aircraft can not only improve the stability of the four rotor aircraft, but also improve the speed of the attitude adjustment of the four rotor aircraft.
Keywords:quadrotors; fuzzy logic; differential evolution algorithm; PID controller
0 引 言
四旋翼飛行器因其簡單的結(jié)構(gòu)和高機(jī)動(dòng)性越來越受到歡迎,但是同時(shí)四旋翼飛行器一直存在著兩個(gè)問題,其可承受的負(fù)載較小和較短的飛行時(shí)間。這些缺點(diǎn)都阻礙了四旋翼飛行器運(yùn)用到更廣泛的領(lǐng)域[1]。盡管四旋翼飛行器存在著這些缺點(diǎn),但是其小巧的模型,優(yōu)惠的價(jià)格和可垂直起飛降落,還是讓飛行器備受青睞。
另外,其他移動(dòng)機(jī)器人存在著許多缺點(diǎn),例如:翻越較高的地勢比較困難,探索未知的領(lǐng)域不便,在爬樓梯方面更是不便捷。并且在規(guī)避障礙物和搜尋復(fù)雜空間區(qū)域的時(shí)候需要復(fù)雜的算法。而四旋翼飛行器則可以輕松進(jìn)入到有許多復(fù)雜障礙物的環(huán)境,還可以在許多極端的環(huán)境下進(jìn)行工作,可以在核輻射嚴(yán)重的地方進(jìn)行監(jiān)測,或者在火山噴發(fā)地帶進(jìn)行拍攝。
但是四旋翼飛行器是一個(gè)非線性系統(tǒng),所以傳統(tǒng)的線性控制方法不能夠被用來控制飛行器。本文對(duì)傳統(tǒng)PID控制器的調(diào)整過程進(jìn)行改進(jìn),將差分進(jìn)化算法與PID控制器相融合從而得到新的PID控制參數(shù)[2],使四旋翼飛行器的姿態(tài)更穩(wěn)定。本文通過與傳統(tǒng)的基于ZieglerNichols參數(shù)整定的PID控制器和基于模糊推理的PID控制器相比較,并運(yùn)用MATLAB仿真。為了設(shè)計(jì)一種智能控制器,四旋翼飛行器數(shù)學(xué)模型的建立非常重要,下面給出了四旋翼飛行器數(shù)學(xué)模型的建立。
1 四旋翼系統(tǒng)的數(shù)學(xué)模型
通常,四旋翼飛行器是一種由四個(gè)電機(jī)組成的十字形結(jié)構(gòu)的模型。其飛行運(yùn)動(dòng)是通過改變電機(jī)的轉(zhuǎn)動(dòng)速度來實(shí)現(xiàn)的,從而能夠使四旋翼飛行器上升或下降等其它運(yùn)動(dòng)。其中電機(jī)2和電機(jī)4是順時(shí)針運(yùn)動(dòng),電機(jī)1和電機(jī)3是逆時(shí)針運(yùn)動(dòng)??梢酝ㄟ^增大(減小)電機(jī)3和減?。ㄔ龃螅╇姍C(jī)1的轉(zhuǎn)速來實(shí)現(xiàn)翻滾運(yùn)動(dòng)。還可以通過改變電機(jī)2和電機(jī)4的轉(zhuǎn)速進(jìn)行俯仰運(yùn)動(dòng)。最后通過增大逆時(shí)針電機(jī)速度和減小順時(shí)針電機(jī)速度來實(shí)現(xiàn)偏航運(yùn)動(dòng)。
3 基于模糊推理的PID控制器
傳統(tǒng)的PID控制器的系數(shù)不適用于參數(shù)變化的非線性設(shè)備。因此,PID控制器參數(shù)的自整定很重要[7]。模糊自整定PID控制器意味著PID控制器的三個(gè)參數(shù)能夠通過模糊控制器自動(dòng)調(diào)整[8]。
模糊自整定PID控制器的結(jié)構(gòu)如下圖所示。其中e是所期望的電機(jī)速度與實(shí)際電機(jī)速度之差,Δe表示偏差的變化率。模糊推理通過e和Δe的變化來對(duì)PID控制器的三個(gè)參數(shù)進(jìn)行修正。
關(guān)于模糊推理結(jié)構(gòu),其中模糊推理的兩個(gè)輸入分別是e和Δe。模糊控制器對(duì)PID控制器的每一個(gè)參數(shù)KP,KI和KD進(jìn)行調(diào)整。通過對(duì)Mamdani模型[9]的修改來構(gòu)建模糊控制器的結(jié)構(gòu),從而可以使PID控制器的參數(shù)得到優(yōu)化。模糊PID控制器的結(jié)構(gòu)如下圖所示
差分進(jìn)化算法被用來優(yōu)化PID控制器的參數(shù)從而對(duì)飛行器的飛行姿態(tài)進(jìn)行穩(wěn)定控制。差分進(jìn)化算法對(duì)于解決優(yōu)化問題非常有效。差分進(jìn)化算法始于一種包含許多參數(shù)向量的種群優(yōu)化問題,其中每個(gè)向量代表一個(gè)最優(yōu)解并且每個(gè)解都有不同的適應(yīng)度函數(shù)[14]。從根本上來說,差分進(jìn)化算法包含三個(gè)主要階段:變異,交叉和選擇[15]。這三個(gè)基本步驟一直循環(huán)進(jìn)行,直至達(dá)到停止標(biāo)準(zhǔn)。為此提出以下控制器的結(jié)構(gòu):
如上圖所示,差分進(jìn)化算法模塊的輸入是四旋翼飛行器待尋優(yōu)的比例系數(shù)KP,積分時(shí)間常數(shù)KI和微分時(shí)間常數(shù)KD。以這三個(gè)參數(shù)作為分量構(gòu)成一個(gè)三維行向量,然后進(jìn)行浮點(diǎn)數(shù)編碼,組成了差分進(jìn)化算法的個(gè)體。然后以ZieglerNichols法獲得的參數(shù)為中心向兩邊拓展,作為差分進(jìn)化算法的搜索空間,這樣大可以縮小實(shí)際參數(shù)的搜索空間。
為了仿真,差分進(jìn)化算法的控制參數(shù)設(shè)置如下:種群大?。∟P)=25;最大迭代次數(shù)=1200;被優(yōu)化參數(shù)個(gè)數(shù)=9;突變因素(F)=0.7;交叉率因素(CR)=0.38
仿真分析
所提出的基于差分進(jìn)化算法的PID控制器,通過輸入一個(gè)階躍信號(hào)來進(jìn)行測試,我們僅以翻滾角的輸出響應(yīng)進(jìn)行分析,從而驗(yàn)證下該控制器的效率和魯棒性[16]。并通過與傳統(tǒng)PID控制器和模糊PID控制器相比較。并從上升時(shí)間,穩(wěn)定時(shí)間和穩(wěn)定誤差進(jìn)行比較,從而展示這些控制器的不同性能。公式(24)被用來計(jì)算用在差分進(jìn)化算法PID控制器的適應(yīng)性函數(shù)。四旋翼系統(tǒng)的其他參數(shù)列在下表中[17]。
從上面翻滾角的階躍響應(yīng)來看,傳統(tǒng)PID控制器的上升時(shí)間約為0.456s,模糊PID控制器的上升時(shí)間約為0.057s,而基于差分進(jìn)化算法的PID控制器的上升時(shí)間為0.041s,由此可以看出基于差分進(jìn)化算法的PID控制器的響應(yīng)速度最快。
另外從階躍響應(yīng)的穩(wěn)定時(shí)間來看,傳統(tǒng)PID控制器的穩(wěn)定時(shí)間達(dá)到了0.924s,模糊PID控制器的穩(wěn)定時(shí)間為0.132s,而基于差分進(jìn)化算法的PID控制器的穩(wěn)定時(shí)間僅為0.056s,從結(jié)果上可以明顯地看出基于差分進(jìn)化算法的PID控制器達(dá)到穩(wěn)定時(shí)間的速度相對(duì)于傳統(tǒng)PID來講提高了數(shù)十倍,相較于模糊PID來說也提高了數(shù)倍之多。
而且模糊PID控制器在穩(wěn)態(tài)期間還出現(xiàn)有超調(diào)的現(xiàn)象,而基于差分進(jìn)化算法的PID控制器的超調(diào)量幾乎可以忽略不計(jì),可見基于差分進(jìn)化算法的PID控制器的魯棒性優(yōu)于模糊PID控制器。雖然傳統(tǒng)PID控制器的超調(diào)量也很小,其魯棒性可以和基于差分進(jìn)化算法的PID控制器相媲美,但是傳統(tǒng)PID控制器的反應(yīng)速度遠(yuǎn)遠(yuǎn)不如基于差分進(jìn)化算法的控制器優(yōu)異。因此基于差分進(jìn)化算法的PID控制器相比于其他兩種控制器性能得到大大的改善。
基于差分進(jìn)化算法的PID控制器更優(yōu)異主要得益于該算法在搜索能力方面的增強(qiáng)[18],該控制器增加了一個(gè)嚴(yán)格的約束條件,當(dāng)且僅當(dāng)種群中的試驗(yàn)個(gè)體產(chǎn)生了一個(gè)更優(yōu)的參數(shù)時(shí),原本種群中的個(gè)體將會(huì)被替代。如此的迭代改進(jìn),使種群的個(gè)體為全局最優(yōu)解。
5 結(jié) 論
在許多情況下,傳統(tǒng)PID控制器和模糊PID控制器的參數(shù)調(diào)整過程都耗時(shí)長且精度低。而差分進(jìn)化算法通過獲取參數(shù)的最優(yōu)解來控制四旋翼飛行器系統(tǒng)的姿態(tài)穩(wěn)定有著很高的精度。差分進(jìn)化算法僅需要幾個(gè)控制參數(shù)且容易實(shí)施,與其他PID控制相比,通過差分進(jìn)化算法的PID調(diào)整過程更快。
同時(shí)仿真結(jié)果表明,本文所提出的基于差分進(jìn)化算法的PID控制器相比于傳統(tǒng)PID控制器和模糊PID控制器,從上升時(shí)間和穩(wěn)定時(shí)間這兩方面來看,差分進(jìn)化算法的PID控制器對(duì)于系統(tǒng)參數(shù)的調(diào)節(jié)都更快。從超調(diào)量和穩(wěn)態(tài)誤差這兩方面來看,差分進(jìn)化算法的PID控制器對(duì)于系統(tǒng)參數(shù)的調(diào)節(jié)更具穩(wěn)定性。
參 考 文 獻(xiàn):
[1] 凌金福.四旋翼飛行器飛行控制算法的研究[D].南昌:南昌大學(xué),2013:24.
[2] ??×?,李亞朋,馬小平,等.基于改進(jìn)差分進(jìn)化算法的PID優(yōu)化設(shè)計(jì)[J].控制工程,2010,17(6):807.
[3] 曾小勇,彭輝,吳軍.四旋翼飛行器的建模與姿態(tài)控制[J].中南大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,44(9):3693.
[4] 黃友銳,曲立國.PID控制器參數(shù)整定與實(shí)現(xiàn)[M].北京,科學(xué)出版社,2010:61.
[5] KHAIRUDDIN,I.M., ANWAR P.P. A. and MAJEED,B.Modelling.PID Control of a Quadrotor Aerial Robot[J]. Advanced Materials Research ,2014,903(1):327.
[6] 姜立強(qiáng),劉光斌 ,郭錚.基于差分進(jìn)化算法的PID參數(shù)整定[J].計(jì)算機(jī)仿真,2009,26(6):204.
[7] 張鐳,李浩.四旋翼飛行器模糊PID姿態(tài)控制[J].計(jì)算機(jī)仿真,2014,31(8):73.
[8] 李一波,宋述錫.基于模糊自整定PID四旋翼無人機(jī)懸??刂芠J].控制工程,2013,20(5):910.
[9] ABBASI.E,MAHJOOB.M.Controlling of Quadrotor UAV Using a Fuzzy System for Tuning the PID Gains in Hovering Mode[J].International Journal of Control,Automation and Systems, 2012,10(1): 161.
[10]楊啟文,蔡亮,薛云燦.差分進(jìn)化算法綜述[J].模式識(shí)別與人工智能,2008,21(4):506.
[11]呼忠權(quán),王洪瑞,賀晙華.基于差分進(jìn)化算法的太陽自動(dòng)跟蹤控制方法[J].太陽能學(xué)報(bào),2014,35(6):1016.
[12]王右,王景成.基于差分進(jìn)化的模糊PID復(fù)合控制在汽輪機(jī)轉(zhuǎn)速調(diào)節(jié)系統(tǒng)中的應(yīng)用[J].東南大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,9(41):84.
[13]CHEN Y M, HE Y L, ZHOU M F.? Decentralized PID Neural Network Control for a Quadrotor Helicopter Subjected to Wind Disturbance[J]. Journal Of Central South University, 2015,22(1):168.
[14]王旭明,郭業(yè)才,于小兵.基于組合差分進(jìn)化算法的PID參數(shù)整定優(yōu)化[J].組合機(jī)床與自動(dòng)化加工技術(shù),2015,11(11):79.
[15]Jimoh O. Pedro, Muhammed Dangor, Praneet J. Kala. Differential EvolutionBased PID Control of a Quadrotor System for Hovering Application[J]. 2016 IEEE Congress on Evolutionary Computation (CEC),2016:2791.
[16]劉金琨.先進(jìn)PID控制及其MATLAB仿真[M].北京,電子工業(yè)出版社,2003:148.
[17]王榮杰,詹宜巨,周海峰.基于差分進(jìn)化機(jī)理優(yōu)化的PID控制的AVR系統(tǒng)[J].電力系統(tǒng)保護(hù)與控制,2015,43(24):108.
[18]汪慎文,丁立新,張文生.差分進(jìn)化算法研究進(jìn)展[J].武漢大學(xué)學(xué)報(bào)(理學(xué)版),2014,60(4):283.
(編輯:王 萍)