陳家輝,王亞閣,陳朝大,翟東麗,吳濤,陳業(yè)威
(1.廣東科技學(xué)院機(jī)電工程學(xué)院,東莞 523000;2.廣東省機(jī)械研究所有限公司,廣州 510530)
四軸飛行器作為一類(lèi)具有自主決策能力的空中機(jī)器人[1-2],近年來(lái)技術(shù)發(fā)展快速,應(yīng)用越來(lái)越廣泛[3-4]。在使用過(guò)程中,由于所處環(huán)境的復(fù)雜性和不確定性,常導(dǎo)致飛行器穩(wěn)定性能差、無(wú)法精準(zhǔn)避障等問(wèn)題,有時(shí)會(huì)造成損壞,甚至危及人身安全。目前,飛行器常用的避障技術(shù)有超聲波測(cè)距[5]、激光測(cè)距[6]及視覺(jué)測(cè)距[7]。然而,四軸飛行器在復(fù)雜環(huán)境中工作僅靠搭載傳感器,無(wú)法使其精準(zhǔn)避障。飛行器尋找最優(yōu)避障路徑[8-9]是首要解決的問(wèn)題,為此必須設(shè)計(jì)更好的控制系統(tǒng)。張仕充[10]將深度確定性策略梯度的強(qiáng)化學(xué)習(xí)方法應(yīng)用在四軸飛行器自主智能避障上,有效解決連續(xù)飛行空間的動(dòng)作選擇問(wèn)題,使飛行器在障礙環(huán)境中探索出完整的避障路徑;付強(qiáng)[11]基于視覺(jué)的撲翼飛行器避障方法能夠準(zhǔn)確識(shí)別障礙物,實(shí)現(xiàn)撲翼飛行器的自主避障;王家亮[12]基于貝葉斯估計(jì)與區(qū)域劃分遍歷的避障路徑規(guī)劃算法,使四軸飛行器進(jìn)行避障時(shí)的實(shí)時(shí)性有所提升;王傳為[13]基于改進(jìn)D-S證據(jù)理論的多傳感器信息融合的方法,提高四軸飛行器對(duì)障礙物識(shí)別的準(zhǔn)確率,提高避障精度。本研究在傳統(tǒng)PID控制的基礎(chǔ)上設(shè)計(jì)變論域模糊PID控制系統(tǒng)的四軸飛行器,通過(guò)對(duì)傳統(tǒng)PID控制改變引入伸縮因子,改變控制論域,提高控制穩(wěn)定性,達(dá)到精準(zhǔn)避障。
所設(shè)計(jì)四軸飛行器的實(shí)物如圖1所示。機(jī)身設(shè)計(jì)選用“X”形,具有機(jī)動(dòng)性能強(qiáng)、運(yùn)動(dòng)靈活等特點(diǎn);機(jī)身箭頭方向?yàn)闄C(jī)頭前進(jìn)方向。四軸飛行器有一個(gè)上升力和三個(gè)方向轉(zhuǎn)矩,有六個(gè)輸出分別為三個(gè)坐標(biāo)軸方向的平動(dòng)運(yùn)動(dòng)和轉(zhuǎn)動(dòng)運(yùn)動(dòng)。
圖1 四軸飛行器實(shí)物圖
四軸飛行器通過(guò)四個(gè)無(wú)刷電機(jī)帶動(dòng)螺旋槳產(chǎn)生升力,通過(guò)對(duì)應(yīng)電機(jī)的轉(zhuǎn)速控制四軸飛行器的位姿。如圖2為其運(yùn)動(dòng)控制示意圖。常規(guī)的運(yùn)動(dòng)方式有懸停和垂直兩種,如若改變四軸飛行器電機(jī)的轉(zhuǎn)速,使機(jī)體產(chǎn)生一個(gè)力矩,便可進(jìn)一步實(shí)現(xiàn)四軸飛行器的俯仰、翻滾和偏航等運(yùn)動(dòng)。
圖2 四軸飛行器運(yùn)動(dòng)控制示意圖
在對(duì)四軸飛行器機(jī)體運(yùn)動(dòng)位姿進(jìn)行建模時(shí),需要建立坐標(biāo)系來(lái)定義四軸飛行器在空中避障時(shí)的位姿變化。四軸飛行器在空中的運(yùn)動(dòng)一般可分為兩種狀態(tài),第一種是把機(jī)體當(dāng)作一個(gè)質(zhì)點(diǎn),在空中三維方向運(yùn)動(dòng);第二種是由飛行器自身運(yùn)動(dòng),如俯仰運(yùn)動(dòng)、翻滾運(yùn)動(dòng)和偏航運(yùn)動(dòng)。此處選擇第二種進(jìn)行運(yùn)動(dòng)建模。
由四軸飛行器運(yùn)動(dòng)控制原理可知,所設(shè)計(jì)的四軸飛行器基本運(yùn)動(dòng)可沿著X、Y、Z軸做平移運(yùn)動(dòng)和繞X、Y、Z軸進(jìn)行旋轉(zhuǎn)運(yùn)動(dòng)。圖3為四軸飛行器繞歐拉角坐標(biāo)變換矩陣,通過(guò)飛行器繞各軸運(yùn)動(dòng)闡述其在避障后位姿的矩陣變換。
圖3 歐拉角坐標(biāo)
設(shè)定四軸飛行器機(jī)體繞其X軸旋轉(zhuǎn),得到橫滾角φ;機(jī)體繞其Y軸旋轉(zhuǎn),得到俯仰角θ;繞其Z軸旋轉(zhuǎn),得到偏航角ω??傻盟妮S飛行器機(jī)體坐標(biāo)轉(zhuǎn)換矩陣為:
PID控制算法原理簡(jiǎn)單,在工程控制系統(tǒng)中易于實(shí)現(xiàn),因此在工業(yè)領(lǐng)域受到廣泛采用。PID控制原理如圖4所示。
圖4 PID控制原理圖
所設(shè)計(jì)的PID控制系統(tǒng)分為PID控制系統(tǒng)和四軸飛行器兩部分。PID控制器主要由比例環(huán)節(jié)、積分環(huán)節(jié)和微分環(huán)節(jié)三個(gè)部分組成,根據(jù)PID控制原理,PID控制模型為:
式中,kp為比例系數(shù),ki為積分系數(shù),kd為微分系數(shù)。
對(duì)式(2)采用分?jǐn)?shù)階微積分定義可得:
通過(guò)分析可知,控制系統(tǒng)主要對(duì)飛行器的俯仰、翻滾和偏航運(yùn)動(dòng)姿態(tài)進(jìn)行控制,由于傳統(tǒng)PID對(duì)四軸飛行器這樣的非線性控制系統(tǒng)具有局限性,且在受障礙物和外界信號(hào)干擾的影響的情況下,可能會(huì)使飛行器發(fā)生失控等現(xiàn)象。為達(dá)到良好的避障效果,必須對(duì)傳統(tǒng)PID控制加以改進(jìn)。
如圖5所示為變論域模糊PID控制原理圖。由于四軸飛行器是一個(gè)復(fù)雜的控制對(duì)象,尤其在避障運(yùn)動(dòng)時(shí),難以精確地建立飛行器的位姿數(shù)學(xué)模型,使得傳統(tǒng)PID控制系統(tǒng)無(wú)法滿足四軸飛行器實(shí)際避障需求。為了解決這一問(wèn)題,在傳統(tǒng)PID控制基礎(chǔ)上設(shè)計(jì)變論域模糊PID控制系統(tǒng),進(jìn)一步提高四軸飛行器控制的精度,從而提高飛行器避障精度。
圖5 變論域模糊PID控制原理圖
在傳統(tǒng)PID控制系統(tǒng)的基礎(chǔ)上加入模糊控制規(guī)則,通過(guò)自學(xué)習(xí)實(shí)時(shí)調(diào)整控制器中的P、I、D三個(gè)參數(shù),提高系統(tǒng)的自適應(yīng)能力,解決非線性模型問(wèn)題。在此基礎(chǔ)上再引入變論域思想,其原理是由于基本論域會(huì)隨著飛行器避障誤差變化而實(shí)時(shí)地改變論域范圍;再通過(guò)引入伸縮因子使初始論域跟著對(duì)應(yīng)變量的改變而實(shí)時(shí)調(diào)整,從而實(shí)現(xiàn)變論域模糊PID控制,提高四軸飛行器控制精度。
根據(jù)變論域模糊PID控制原理圖可知,設(shè)計(jì)合適的伸縮因子是變論域模糊PID控制的關(guān)鍵因素,根據(jù)飛行器輸入變量和輸出變量的基本論域,模糊推理規(guī)則可表示為:
再以xk表示為Akm的峰值點(diǎn),ym為Bm的峰值點(diǎn)。
根據(jù)模糊控制器的插值機(jī)理,基于上述表示的模糊推理規(guī)則可以變換為一個(gè)插值函數(shù):
因?yàn)槟:刂破鞯目刂凭热Q于控制系統(tǒng)對(duì)模糊規(guī)則的數(shù)量及準(zhǔn)確性的輸入,在四軸飛行器避障后要分析輸入與輸出軌跡誤差,就需要對(duì)初始論域進(jìn)行更精細(xì)的模糊劃分,因此需要改變論域的大小以提高控制精度,也就是論域可以分別隨著模糊輸入量的變化而自動(dòng)調(diào)整。變換后的論域記為:
式中,α(xk)、β(xk)分別稱(chēng)作論域的伸縮因子和基于函數(shù)型伸縮因子。
為了使得控制器中初始論域隨著對(duì)應(yīng)變量的改變而實(shí)時(shí)調(diào)整,變論域模糊控制器控制精度的關(guān)鍵就在于對(duì)論域伸縮因子如何選擇。為提高飛行器避障精度,本研究采用的論域伸縮因子為:
式中,λ∈(0,1),k>0,0<τ<1。而在四軸飛行器實(shí)際的模糊控制系統(tǒng)中,誤差e和誤差的變化率ec是相關(guān)聯(lián)的,所以用單一變量分別調(diào)節(jié)多個(gè)系統(tǒng)輸入論域,將對(duì)論域進(jìn)行反復(fù)調(diào)節(jié),并降低系統(tǒng)的收斂速度。誤差e和誤差的變化率ec對(duì)輸入論域伸縮因子會(huì)產(chǎn)生影響,所以都會(huì)影響到飛行器控制系統(tǒng)的避障控制效果。為克服這一影響,須對(duì)論域伸縮因子進(jìn)行合理設(shè)計(jì)。由于伸縮因子的取值僅與誤差或誤差的變化率有關(guān),所以要在輸出誤差和誤差變化率的基礎(chǔ)上進(jìn)行伸縮因子的選擇。
為了驗(yàn)證四軸飛行器采用變論域模糊PID控制的避障精度,采用MATLAB仿真軟件對(duì)PID控制、變論域模糊PID控制的四軸飛行器避障誤差進(jìn)行仿真分析,仿真時(shí)間為3s。仿真結(jié)果如圖6。
圖6 PID控制輸出誤差仿真結(jié)果對(duì)比
由圖可見(jiàn),當(dāng)四軸飛行器采用PID控制時(shí),超調(diào)量較大,響應(yīng)時(shí)間慢,最大避障誤差為0.85 mm,當(dāng)四軸飛行器在有避障的環(huán)境中穩(wěn)定飛行時(shí),其飛行軌跡穩(wěn)定性較差,避障誤差在0.4mm上下波動(dòng);當(dāng)四軸飛行器采用變論域模糊PID控制系統(tǒng)避障飛行時(shí),其超調(diào)量較小,響應(yīng)時(shí)間短,僅為0.5s,產(chǎn)生的最大避障誤差為0.49mm,且快速回穩(wěn),在飛行器穩(wěn)定時(shí),其飛行穩(wěn)軌跡定性較好,避障誤差較小。
由于所處環(huán)境中障礙物輪廓復(fù)雜難辨,四軸飛行器在飛行中還容易受到外界干擾。對(duì)比仿真結(jié)果可知,采用傳統(tǒng)PID控制飛行器,響應(yīng)速度慢,調(diào)節(jié)時(shí)間較長(zhǎng),很難調(diào)整避障后的飛行位姿;而四軸飛行器采用變論域模糊PID控制時(shí),能夠有效抑制外界環(huán)境的干擾,系統(tǒng)響應(yīng)速度快,從而降低控制系統(tǒng)輸出誤差,提高避障精度,同時(shí)還可以提高四軸飛行器追蹤精度。
針對(duì)四軸飛行器在復(fù)雜環(huán)境中避障問(wèn)題,本研究在傳統(tǒng)PID控制算法的基礎(chǔ)上提出一種變論域模糊PID控制系統(tǒng),通過(guò)對(duì)飛行器控制進(jìn)行仿真驗(yàn)證。所設(shè)計(jì)的四軸飛行器飛采用歐拉坐標(biāo)建立運(yùn)動(dòng)位姿模型,在此基礎(chǔ)上提出變論域模糊PID控制系統(tǒng),在PID控制系統(tǒng)引入伸縮因子,改變控制系統(tǒng)論域,從而降低飛行器避障誤差。通過(guò)MATLAB對(duì)兩種控制避障仿真,證明了變論域模糊PID控制系統(tǒng)的可行性,為提高四軸飛行器在復(fù)雜環(huán)境抗干擾能力和精準(zhǔn)避障提供了理論與技術(shù)基礎(chǔ)。