趙旭,齊國(guó)元,*,蔚昕晨,胡建兵,李霞
1.天津工業(yè)大學(xué) 控制科學(xué)與工程學(xué)院,天津 300387
2.天津工業(yè)大學(xué) 機(jī)械工程學(xué)院,天津 300387
四旋翼飛行器具有機(jī)動(dòng)性強(qiáng)、體積小、自主執(zhí)行任務(wù)的能力強(qiáng)等優(yōu)點(diǎn)。隨著計(jì)算機(jī)處理能力的提高及傳感器和執(zhí)行器成本的降低,該飛行器被廣泛應(yīng)用于軍事和民用等領(lǐng)域[1-3]。由于四旋翼飛行器系統(tǒng)的欠驅(qū)動(dòng)、非線性等特性,其姿態(tài)控制容易受到四旋翼數(shù)學(xué)模型中的非線性項(xiàng)、外部擾動(dòng)項(xiàng)和未建模動(dòng)態(tài)及負(fù)載的影響,這些因素極大地破壞了四旋翼飛行器系統(tǒng)的穩(wěn)定性和控制品質(zhì),甚至?xí)瓜到y(tǒng)出現(xiàn)混沌振蕩行為[4-5],因此四旋翼飛行器抗干擾能力成為影響其姿態(tài)控制精度的主要因素。
在實(shí)際的工程中,由于未建模部分的動(dòng)力學(xué)特性和外界不確定因素的影響,很難獲得四旋翼飛行器精確的數(shù)學(xué)模型,這在很大程度上限制了依賴于模型控制算法的實(shí)際應(yīng)用。當(dāng)這種模型不確定性以及外部未知擾動(dòng)作用變強(qiáng)時(shí),依賴模型控制器的參數(shù)整定變得更困難,這進(jìn)一步加大了這類控制器的應(yīng)用難度。因此,不依賴模型的控制方法在工程上獲得廣泛應(yīng)用。
不依賴模型控制是基于通過(guò)輸入—輸出行為信息不斷更新估計(jì)系統(tǒng)模型函數(shù)的一種控制方法[6-7]。這種方法的關(guān)鍵特征在于,模型觀測(cè)器在線估計(jì)模型值或模型偏差和擾動(dòng)值總和,控制器在線前饋應(yīng)用估計(jì)所得到的系統(tǒng)未知函數(shù)值和擾動(dòng)。因此,即使被控系統(tǒng)具有高度非線性、時(shí)變、耦合、外擾動(dòng),這些信息通過(guò)觀測(cè)器估計(jì)能在控制器中得到部分補(bǔ)償。
PID 控制是典型的不依賴模型的控制方法,如Salih 等[8]將PID 用于四旋翼3D 空間的飛行,但PID 沒(méi)有在線估計(jì)未知模型函數(shù)值或擾動(dòng)值的能力,因而不能實(shí)現(xiàn)在線補(bǔ)償,而只是依靠誤差的整定,隨著擾動(dòng)增大,控制品質(zhì)可能變差。隨著智能理論的發(fā)展,研究者們提出了結(jié)合智能理論的新型PID 控制器,如專家系統(tǒng)PID 控制器[9]、模糊PID 控制器[10]、神經(jīng)網(wǎng)絡(luò)PID 控制器[11]等,并被相繼應(yīng)用于四旋翼的控制。系統(tǒng)模型值和擾動(dòng)值稱為總擾動(dòng)[12],而擴(kuò)張狀態(tài)觀測(cè)器(Extended State Observer, ESO)能夠有效的估計(jì)總擾動(dòng),所以Han[13]提出了自抗擾控制(Active Disturbance Rejection Control,ADRC)。ADRC 可以基于系統(tǒng)誤差,設(shè)計(jì)控制器參數(shù),同時(shí),在線應(yīng)用該估計(jì)值,實(shí)現(xiàn)不依賴模型控制。這種方法的一個(gè)關(guān)鍵特征是通過(guò)對(duì)干擾或模型不確定性的處理、提高了系統(tǒng)控制的魯棒性和自適應(yīng)能力。Dong 等[14]將ADRC應(yīng)用于多旋翼飛行器位置控制。除此之外,ADRC 在姿態(tài)控制中也有應(yīng)用[15],李霞和陳奕梅[16]采用降階ADRC 控制四旋翼位置和姿態(tài),在滿足系統(tǒng)穩(wěn)態(tài)性能和動(dòng)態(tài)性能的前提下,降低了系統(tǒng)帶寬與噪聲的敏感度。Zhao 和Guo[17]針對(duì)具有動(dòng)態(tài)和外部不確定性的SISO 非線性系統(tǒng),設(shè)計(jì)了非線性自抗擾控制器并給出了變量收斂性的嚴(yán)格證明。Gao[18-19]對(duì)自抗擾控制中的主要模塊進(jìn)行了線性化處理,并引入了帶寬的概念,提出了線性自抗擾控制(Linear Active Disturbance Rejection Control, LADRC),并在實(shí)際的無(wú)人機(jī)控制中得到了應(yīng)用[2,20]。然而,Qi 等[21-22]研究發(fā)現(xiàn),ESO 的估計(jì)精度不高,對(duì)快速機(jī)動(dòng)變化的模型函數(shù)或擾動(dòng)不能實(shí)現(xiàn)估計(jì)收斂。ESO 的結(jié)構(gòu)導(dǎo)致了ESO 僅可等效為I型跟蹤系統(tǒng),只能對(duì)常量模型函數(shù)實(shí)現(xiàn)無(wú)差估計(jì)[21],而飛行器系統(tǒng)的動(dòng)力學(xué)模型和擾動(dòng)是動(dòng)態(tài)變化的,這些未知模型函數(shù)或擾動(dòng)信號(hào)的泰勒展開(kāi)中的一次項(xiàng)、二次項(xiàng)甚至三次項(xiàng)會(huì)主導(dǎo)函數(shù)變化,因此造成ESO 估計(jì)精度較低。因此,Qi 等[21]提出了補(bǔ)償函數(shù)觀測(cè)器(Compensation Function Observer, CFO),采用信號(hào)跟蹤思想進(jìn)行設(shè)計(jì)結(jié)構(gòu),采用積分串級(jí)結(jié)構(gòu),應(yīng)用速度誤差信息,采用一階濾波器或積分器作為未知函數(shù)或擾動(dòng)的補(bǔ)償,使得CFO 的類型為Ⅲ型,能對(duì)常量、斜坡和加速度函數(shù)實(shí)現(xiàn)無(wú)差估計(jì)。
然而,對(duì)于飛行器處于強(qiáng)非線性干擾的環(huán)境下(如有強(qiáng)風(fēng)干擾時(shí)),CFO 中的補(bǔ)償器中的線性一階濾波器不能充分逼近。有必要用非線性函數(shù)替代線性的一階濾波器或積分項(xiàng),以進(jìn)一步提高估計(jì)精度,因此筆者提出用光滑的徑向基(Radial Basis Function, RBF)神經(jīng)網(wǎng)絡(luò)的非線性擬合補(bǔ)償函數(shù)替代CFO 中的線性一階積分補(bǔ)償函數(shù)。本文仍然采用CFO 的觀測(cè)器結(jié)構(gòu),創(chuàng)新貢獻(xiàn)在于:
1)提出帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器,使用RBF 神經(jīng)網(wǎng)絡(luò)替代原有CFO 中的一階濾波器,實(shí)現(xiàn)補(bǔ)償。因?yàn)镽BF 神經(jīng)網(wǎng)絡(luò)能實(shí)現(xiàn)對(duì)非線性函數(shù)的逼近效果更好,因此將CFO 的線性函數(shù)補(bǔ)償替換為非線性函數(shù)補(bǔ)償。
2)針對(duì)具有未知擾動(dòng)和不確定性的四旋翼飛行器姿態(tài)系統(tǒng)設(shè)計(jì)了不依賴模型控制策略。應(yīng)用帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器估計(jì)未知模型函數(shù),設(shè)計(jì)了模型補(bǔ)償控制器。應(yīng)用Lyapunov 穩(wěn)定性理論,證明了所設(shè)計(jì)的帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器的控制閉環(huán)系統(tǒng)穩(wěn)定性。
3)通過(guò)基于Pixhawk 的四旋翼飛行器姿態(tài)系統(tǒng)控制測(cè)試平臺(tái),實(shí)驗(yàn)驗(yàn)證了所設(shè)計(jì)的基于新的觀測(cè)器的不依賴模型控制策略對(duì)不同參考姿態(tài)角的跟蹤性能以及2 種控制器的抗擾性能。同時(shí)設(shè)計(jì)了自抗擾控制器,并與所提出的閉環(huán)控制策略進(jìn)行了性能對(duì)比分析,進(jìn)一步驗(yàn)證了所提出的帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器的模型補(bǔ)償在控制性能上更具優(yōu)勢(shì)。
本文章節(jié)安排為:第1 節(jié)分析了補(bǔ)償函數(shù)觀測(cè)器優(yōu)越于擴(kuò)張觀測(cè)器的結(jié)構(gòu)和特點(diǎn),指出存在的問(wèn)題;第2 節(jié)提出了帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器,給出了收斂性分析;第3 節(jié)給出了四旋翼飛行器的模型和參數(shù);第4 節(jié)提出了基于CFO 的模型補(bǔ)償控制,并給出了穩(wěn)定性證明,構(gòu)建了各個(gè)通道的串級(jí)控制器;第5 節(jié)仿真分析;第6 節(jié)實(shí)驗(yàn)驗(yàn)證了模型補(bǔ)償控制性能和抗干擾性能;第7 節(jié)總結(jié)本文的研究結(jié)果。
針對(duì)單輸入單輸出(Single-Input Single-Output, SISO)二階控制系統(tǒng),設(shè)計(jì)函數(shù)觀測(cè)器在線實(shí)時(shí)估計(jì)未知函數(shù)。
式中:y和為系統(tǒng)的輸出;d為時(shí)變未知擾動(dòng)項(xiàng);為模型項(xiàng);b為系統(tǒng)結(jié)構(gòu)參數(shù);u為系統(tǒng)輸入。
假設(shè) 1令,假定為未知時(shí)變光滑非線性函數(shù)。
CFO 借鑒了ESO,其思想也包含Luenberger 觀測(cè)器和齊國(guó)元等[22]所提出的高階微分器、高階微分反饋控制[7]、跟蹤和型別思想,提出了模型補(bǔ)償來(lái)解決模型函數(shù)估計(jì)精度問(wèn)題和收斂性問(wèn)題。下面首先分析一下補(bǔ)償函數(shù)觀測(cè)器思想和結(jié)構(gòu)。完整的CFO 設(shè)計(jì)見(jiàn)文獻(xiàn)[21],這里做一個(gè)分析性研究。
針對(duì)式(2)的系統(tǒng)模型,設(shè)計(jì)Luenberger 觀測(cè)器為
圖1 Luenberger 觀測(cè)器Fig. 1 Luenberger observer
系統(tǒng)估計(jì)值與誤差之間的等效開(kāi)環(huán)傳遞函數(shù)為
則該觀測(cè)器為Ⅱ型系統(tǒng),這與該觀測(cè)器2 個(gè)純積分環(huán)節(jié)相對(duì)應(yīng)。在后面的將詳細(xì)給出類型的分析。
評(píng)注1觀測(cè)器式(3)優(yōu)勢(shì)在于:①利用了位置和速度雙重信息,速度信息比位置信息更接近加速度信息,而加速度信息直接關(guān)聯(lián)未知函數(shù),因此速度信息的使用大大提高了估計(jì)精度;②原系統(tǒng)具有純積分(或稱純導(dǎo)數(shù))結(jié)構(gòu),=x2,因此,該觀測(cè)器保持了原系統(tǒng)的純積分形式,即=z2,較ESO相比,純積分環(huán)節(jié)能提高一個(gè)跟蹤類型。
Zhu 等[23]在設(shè)計(jì)ESO 中包含了擾動(dòng)估計(jì)項(xiàng),其中擾動(dòng)估計(jì)器中包含了系統(tǒng)的速度信息。這是一個(gè)間接使用速度信息方法,不是在ESO 中直接使用該信息。要使用速度信息,必須大幅度改變?cè)瓉?lái)ESO 的結(jié)構(gòu),否則就不能保證穩(wěn)定性。本文中的CFO 的結(jié)構(gòu)采用的是Luenberger 結(jié)構(gòu),既能保證系統(tǒng)的穩(wěn)定性,又能保證位置和速度信息的雙重使用。
通過(guò)仿真發(fā)現(xiàn),觀測(cè)器式(3)估計(jì)精度高于ESO[21]。由式(2)減去式(3)可得Luenberger 觀測(cè)器的觀測(cè)誤差為
式中:f為式(2)中的未知時(shí)變光滑非線性函數(shù),顯然,估計(jì)誤差受未知函數(shù)f影響。
為了降低f的影響,改進(jìn)觀測(cè)器(3)為
基于觀測(cè)器式(6)的估計(jì)誤差為
為了解決該問(wèn)題,考慮二者都用來(lái)逼近f,可以用一階濾波器建立連接,即
在此基礎(chǔ)上,Qi 和Chen[21]提出了可用帶有濾波器的補(bǔ)償函數(shù)觀測(cè)器(CFO)來(lái)估計(jì)未知函數(shù)f,表達(dá)為
式中:λ為濾波因子。
評(píng)注2CFO 中補(bǔ)償函數(shù)的引入,能一定程度上抵消模型函數(shù)未知問(wèn)題,進(jìn)一步提高估計(jì)精度。文獻(xiàn)[21]的誤差分析表明,補(bǔ)償函數(shù)提高了觀測(cè)器的1 個(gè)型別,加上純積分結(jié)構(gòu)增加的型別,該CFO 較ESO 提高了2 個(gè)型別,為Ⅲ型系統(tǒng),因此大大提高了估計(jì)精度。
由式(8)和式(9)中的第3 個(gè)方程,有
可以得到
那么可以得出帶有積分補(bǔ)償形式的CFO,即
式(12)中的CFO也是三階系統(tǒng),與ESO有相同的階次,其中z3通過(guò)積分補(bǔ)償了原系統(tǒng)中的f。
圖2 為帶有積分補(bǔ)償形式的CFO 原理框圖,其開(kāi)環(huán)特征方程為
圖2 補(bǔ)償函數(shù)觀測(cè)器Fig. 2 Compensation function observer
通常,為了簡(jiǎn)化參數(shù)選取,同時(shí)保證CFO 穩(wěn)定,令
式中:ω>0、-ω、 -4ω和 -4ω是CFO 的極點(diǎn)。從而有
其中:ωc是唯一的可調(diào)參數(shù)。
在CFO 設(shè)計(jì)中,對(duì)未知函數(shù)估計(jì)采用了控制中信號(hào)跟蹤思想,如圖3 所示,把這個(gè)觀測(cè)器等效看成一個(gè)單位負(fù)反饋系統(tǒng),觀測(cè)器輸入信號(hào)為未知函數(shù)f,輸出為,傳遞函數(shù)G(s)的類型決定估計(jì)誤差類型,類型不同誤差有質(zhì)的區(qū)別。
圖3 觀測(cè)器到跟蹤器的轉(zhuǎn)換Fig. 3 Transformation of observer to tracker
ESO 的結(jié)構(gòu)如圖4 所示,能夠得到,其估計(jì)與誤差之間的等效開(kāi)環(huán)傳遞函數(shù)為
圖4 ESO 結(jié)構(gòu)框圖Fig. 4 Schematic diagram of ESO
因此ESO 為I 型估計(jì)系統(tǒng)。
評(píng)注3CFO 為III 型估計(jì)系統(tǒng),ESO 為I 型估計(jì)系統(tǒng)。在對(duì)未知函數(shù)或信號(hào)估計(jì)誤差類型上有本質(zhì)上差別。CFO 在收斂性方面能對(duì)常值、斜坡和拋物線函數(shù)實(shí)現(xiàn)零差估計(jì),而ESO 是I 型系統(tǒng),只能對(duì)常值函數(shù)實(shí)現(xiàn)零差估計(jì),或?qū)?shù)有界函數(shù)[24-25],如對(duì)斜坡函數(shù)估計(jì),誤差有界,對(duì)拋物線函數(shù)估計(jì)誤差發(fā)散,對(duì)一般的信號(hào),如正弦信號(hào)等有較大的估計(jì)滯后。CFO 對(duì)斜坡和拋物線這樣導(dǎo)數(shù)無(wú)界,甚至二階導(dǎo)數(shù)無(wú)界函數(shù)都能實(shí)現(xiàn)估計(jì)收斂,對(duì)正弦函數(shù)估計(jì)誤差也很?。?1]。另外,CFO 通過(guò)結(jié)構(gòu)解決精度和收斂性問(wèn)題,不是通過(guò)參數(shù)調(diào)整,避免了因參數(shù)過(guò)大,惡化信噪比問(wèn)題,而ESO 通過(guò)參數(shù)帶寬調(diào)整精度,容易帶來(lái)噪聲放大。
評(píng)注4由系統(tǒng)式(1),f的估計(jì)等價(jià)于y?的估計(jì),CFO的本質(zhì)在于,它用y??位置y和速度信息估計(jì)了加速度信息y?,即y?獲得了,那么就有f?=y??-bu。一個(gè)系統(tǒng)通過(guò)IMU 等機(jī)載傳感器能夠獲得位置y和速度y?信息,他們的變化能夠反映系統(tǒng)受力或加速度信息,也就反映了f(y,y?,t,d)+bu信息,CFO 利用了速度信息,對(duì)于估計(jì)加速度信息更為可靠。
CFO 和ESO 都是基于系統(tǒng)已知狀態(tài),估計(jì)系統(tǒng)為未知函數(shù),將未知函數(shù)當(dāng)作信號(hào)或狀態(tài)來(lái)進(jìn)行估計(jì),是觀測(cè)擴(kuò)張狀態(tài)的思想。不依賴于系統(tǒng)模型或模型結(jié)構(gòu)等特征。CFO 的補(bǔ)償實(shí)現(xiàn)為式(8)或式(11),采用了一階濾波器或積分器實(shí)現(xiàn),λ值越高,補(bǔ)償越充分,但由于λ是個(gè)參數(shù),不宜太大。但采用高階濾波會(huì)增加階次和CFO 的復(fù)雜性。下面分析采用非線性函數(shù)替換的必要性。在實(shí)際中一個(gè)光滑的信號(hào)或函數(shù)可以表達(dá)成泰勒展開(kāi)式為
由于采樣時(shí)間τ?1,特別高的高次項(xiàng)可以忽略,但是無(wú)論未知模型函數(shù)或信號(hào)f,往往不是簡(jiǎn)單的線性函數(shù)或信號(hào),而是復(fù)雜的非線性形式(例如無(wú)人機(jī)中包含二次型函數(shù)、余弦函數(shù);環(huán)境中的大風(fēng)或陣風(fēng)或紊流風(fēng)所產(chǎn)生的風(fēng)擾未建模動(dòng)態(tài),陀螺力矩、機(jī)體部分壞損、負(fù)載和氣動(dòng)阻力以及可能存在的內(nèi)部或外部未知時(shí)變擾動(dòng)),對(duì)于這些非線性較強(qiáng)的情況,泰勒展開(kāi)中二次項(xiàng)、三次項(xiàng)不可忽略。盡管CFO 精度很高,但對(duì)泰勒展開(kāi)中三次或四次仍然會(huì)帶來(lái)誤差。本文在針對(duì)正弦函數(shù)以及Duffing 方程的觀測(cè)中發(fā)現(xiàn),CFO 對(duì)這類非線性函數(shù)的估計(jì)仍有一定的誤差。
因此本文采用RBF 神經(jīng)網(wǎng)絡(luò)替換式(12)的積分式,實(shí)現(xiàn)在線自適應(yīng)更新權(quán)重,如同參數(shù)自適應(yīng)控制方法[26],因而不涉及訓(xùn)練,另外,通常RBF 神經(jīng)網(wǎng)絡(luò)隱含層只含有5 個(gè)節(jié)點(diǎn),其權(quán)值用一個(gè)自適應(yīng)積分函數(shù)即可更新,不會(huì)大幅增加計(jì)算量。其重要意義在于利用了RBF 神經(jīng)網(wǎng)絡(luò)的非線性和光滑性,即使未知函數(shù)中包含泰勒展開(kāi)的高階次,快速變化的函數(shù),RBF 神經(jīng)網(wǎng)絡(luò)也夠充分地逼近。因此考慮使用RBF 神經(jīng)網(wǎng)絡(luò)這種非線性逼近高次項(xiàng)的方式,替換CFO 中的線性補(bǔ)償結(jié)構(gòu),從而進(jìn)一步提高估計(jì)精度。
設(shè)計(jì)RBF 神經(jīng)網(wǎng)絡(luò)為
式中:誤差向量e作為神經(jīng)網(wǎng)絡(luò)的輸入向量;h是高斯函數(shù)的輸出,h=[h1,h2,…,hi,…,hn]T;i為隱藏層節(jié)點(diǎn)個(gè)數(shù);ci為神經(jīng)網(wǎng)絡(luò)第i個(gè)節(jié)點(diǎn)的均值;W*是理想的神經(jīng)網(wǎng)絡(luò)權(quán)重;ε是神經(jīng)網(wǎng)絡(luò)的近似誤差ε≤εN。
RBF 神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出,即補(bǔ)償函數(shù)輸出為
提出帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器,其表達(dá)式為
式中:γ>0,為調(diào)節(jié)因子;σ為滑模面函數(shù),σ=Fe=l2e1+e2;F為滑模面函數(shù)的系數(shù),F(xiàn)=[l2, 1]。式(21)中第3 個(gè)方程為RBF 神經(jīng)網(wǎng)絡(luò)自適應(yīng)權(quán)重調(diào)節(jié)律。注意到帶有RBF 神經(jīng)網(wǎng)絡(luò)的CFO 仍然是三階系統(tǒng),其框圖結(jié)構(gòu)如圖5 所示。為了方便,記帶有RBF 神經(jīng)網(wǎng)絡(luò)的CFO 為R-CFO。
圖5 帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器Fig. 5 Compensated function observer with RBF neural network
定理1對(duì)于系統(tǒng)式(1),所提出的帶有RBF神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器對(duì)未知函數(shù)f的估計(jì)能任意逼近,即
證明式(2)減去式(21)得
設(shè)計(jì)滑模面函數(shù)為
對(duì)σ求導(dǎo)得
定義李雅普諾夫函數(shù)為
對(duì)V求導(dǎo),得
權(quán)重調(diào)節(jié)的自適應(yīng)律為
則有
由于RBF 神經(jīng)網(wǎng)絡(luò)能實(shí)現(xiàn)任意逼近,誤差ε足夠小,可以獲得。證畢。
本文所使用的四旋翼飛行器結(jié)構(gòu)如圖6 所示,該四旋翼為“×”型結(jié)構(gòu)。通過(guò)控制1、3 和2、4 號(hào)電機(jī)的轉(zhuǎn)速差實(shí)現(xiàn)四旋翼無(wú)人機(jī)俯仰角的控制,2、3和1、4 號(hào)電機(jī)的轉(zhuǎn)速差實(shí)現(xiàn)無(wú)人機(jī)橫滾角的控制,1、2和3、4號(hào)電機(jī)的轉(zhuǎn)速差實(shí)現(xiàn)偏航角的控制。
圖6 四旋翼飛行器Fig. 6 Four-rotor flight vehicle
如圖6 所示,機(jī)體坐標(biāo)系B={xb,yb,zb},大地坐標(biāo)系E={x,y,z}。 其中:Fi(t),i=1, 2, 3, 4 代表4 個(gè)電機(jī)所產(chǎn)生的推力,推力方向?yàn)閦b軸的負(fù)方向;θ、?和ψ分別為四旋翼的俯仰角、橫滾角以及偏航角,且有,
式中:Ωi為第i號(hào)電機(jī)的轉(zhuǎn)速;kT為推力因子。
根據(jù)Newton-Euler 法,得到四旋翼動(dòng)力學(xué)方程為
式中:m為四旋翼的質(zhì)量;g為重力加速度;P為四旋翼的位置向量,P=[x,y,z]Τ;v為四旋翼整體的速度;e3為單位向量,e3=[0,0,1]T;?表示四旋翼在大地坐標(biāo)系E={x,y,z}中的角速度,?=;ω表示四旋翼在機(jī)體坐標(biāo)系B={xb,yb,zb}中的角速度,ω=[p,q,r]Τ;I為四旋翼的慣性矩陣。τ表示通過(guò)控制電機(jī)轉(zhuǎn)速所產(chǎn)生的力矩;d為系統(tǒng)的不確定性,d=[dx,dy,dz]Τ,它包括2 部分,一部分是未建模動(dòng)態(tài),如陀螺力矩、機(jī)體部分壞損、負(fù)載和氣動(dòng)阻力等;另一部分是可能存在的內(nèi)部或外部未知時(shí)變擾動(dòng)。
d可以表示為
式中:Ir代表電機(jī)的轉(zhuǎn)動(dòng)慣量;R1為?與ω之間的轉(zhuǎn)換矩陣,由式(31)可得
即
在實(shí)際中,對(duì)四旋翼的姿態(tài)控制基于小角度假設(shè),即
從而可得
基于DJI F450 模型所得到的各個(gè)參數(shù)及其物理意義如表1 所示。
表1 DJI F450 各物理參數(shù)及取值Table 1 DJI F450 physical parameters and values
對(duì)于圖6 所示的“×”型四旋翼飛行器機(jī)體坐標(biāo)系的轉(zhuǎn)矩控制量可以表示為
由于四旋翼的姿態(tài)角和推力只與FT、τx、τy和τz有關(guān),因此姿態(tài)控制器設(shè)計(jì)過(guò)程中只需要考慮設(shè)計(jì)FT、τx、τy和τz的控制律。
針對(duì)四旋翼飛行器的姿態(tài)系統(tǒng),假定模型函數(shù)未知,或者部分已知,本節(jié)設(shè)計(jì)了基于CFO 的模型補(bǔ)償控制(Model Compensation Control,MCC)策略的閉環(huán)控制器。MCC 基于非線性極點(diǎn)配置控制,使用未知模型的估計(jì)值?補(bǔ)償未知函數(shù)f。
實(shí)際控制中,f=fk+fu,其中fk為已知部分,fu為未知部分,可以用R-CFO 的式(21)得到,需要注意的是,需要將式(21)中的bu,替換成fk+bu,則估計(jì)值為,其他不變,如果考慮f完全未知,可以直接采用式(21)。補(bǔ)償控制就是用?補(bǔ)償真實(shí)的f,或用? 補(bǔ)償fu,主動(dòng)抵消該未知量在控制中的影響。
因此本文使用基于極點(diǎn)配置的MCC,利用R-CFO 估計(jì)未知模型并主動(dòng)抵消該未知量在控制中的影響。圖7 為四旋翼比例一串級(jí)控制器的結(jié)構(gòu)框圖。
圖7 四旋翼飛行器系統(tǒng)控制結(jié)構(gòu)Fig. 7 Control structure of quadrotor flight vehicle system
考慮系統(tǒng)方程式(2),給定參考信號(hào)yr,設(shè)定跟蹤誤差為,其中下標(biāo)c表示控制跟蹤誤差,以區(qū)別觀測(cè)器誤差,誤差向量為ec=[ec1,ec2]Τ。由式(2)可知,跟蹤誤差方程為
式中:參數(shù)k2、k1使誤差方程的特征多項(xiàng)式s2+k1s+k2為Hurwitz 多項(xiàng)式,可根據(jù)期望的極點(diǎn)配置設(shè)計(jì)。假定f未知,依賴觀測(cè)器與控制器設(shè)計(jì)分離原理[27],先依據(jù)觀測(cè)數(shù)據(jù)估計(jì)系統(tǒng)未知模型函數(shù)f;如果部分未知,就估計(jì)其中的部分未知項(xiàng),包含擾動(dòng)、耦合和時(shí)變部分,再把估計(jì)值看成真實(shí)值,按照確定性系統(tǒng)設(shè)計(jì)控制器。
提出的基于R-CFO 的模型補(bǔ)償控制器,即MCC 為
注意到,基于R-CFO 的模型補(bǔ)償控制僅利用系統(tǒng)的期望輸入信號(hào)和輸出信號(hào),控制器可以不依賴于系統(tǒng)模型,或者不依賴于部分未知模型和擾動(dòng)。通過(guò)R-CFO 估計(jì)未知模型函數(shù)值,在線反饋補(bǔ)償給控制器。該模型補(bǔ)償控制器和補(bǔ)償函數(shù)觀測(cè)器的參數(shù)均具有實(shí)際的物理意義,所以容易根據(jù)特性需求選取。
對(duì)該飛行器系統(tǒng),本文采用控制策略為內(nèi)外環(huán)的串級(jí)控制,外環(huán)采用比例控制,內(nèi)環(huán)采用基于R-CFO 的模型補(bǔ)償控制。實(shí)際姿態(tài)實(shí)驗(yàn)中遙控器的4 個(gè)通道指令分別轉(zhuǎn)化為滾轉(zhuǎn)角、俯仰角的參考指令,偏航角速度參考指令和升力指令,因此外環(huán)只需考慮滾轉(zhuǎn)角和俯仰角的跟蹤控制。設(shè)計(jì)的滾轉(zhuǎn)角和俯仰角的角速度指令為
由式(35)和式(36),系統(tǒng)姿態(tài)內(nèi)環(huán)模型可以描述為
式中:fp、fq和fr是每個(gè)子系統(tǒng)未知模型函數(shù);Ix、Iy和Iz是四旋翼3 個(gè)軸上的轉(zhuǎn)動(dòng)慣量,但是如果有參數(shù)測(cè)量誤差,也可以設(shè)為系統(tǒng)相關(guān)可調(diào)的參數(shù)。
系統(tǒng)小角度假設(shè)造成的誤差、擾動(dòng)、未建模動(dòng)態(tài)和負(fù)載變化都隱含在fp、fq以及fr中,因此,提出使用R-CFO 進(jìn)行補(bǔ)償控制,和為3 個(gè)通道未知非線性模型項(xiàng)的估計(jì)值。由式(42),可以給出一階模型的補(bǔ)償控制器,即
可推導(dǎo)出3 個(gè)姿態(tài)角的控制律分別為
式中:kp、kq和kr是內(nèi)環(huán)角速度誤差增益;bp、bq和br是系統(tǒng)相關(guān)的未知可調(diào)的參數(shù);和為參考角加速度,可由高階微分器(High Order Differentiator,HOD)得到[7,22]。
HOD 可以設(shè)置為任意階系統(tǒng),可對(duì)任意階信號(hào)提取微分。本文采用了三階結(jié)構(gòu),如圖8 所示,通過(guò)HOD 可以估計(jì)參考輸入的微分以及二階微分信息,其中xi(i=1, 2, 3) 為HOD 的狀態(tài)。
圖8 HOD 結(jié)構(gòu)Fig. 8 HOD structure
根據(jù)圖8 可得由輸入量yr估計(jì)其各階導(dǎo)數(shù)的輸出方程。三階微分器的輸出方程為
四旋翼飛行器姿態(tài)系統(tǒng)中,每個(gè)子系統(tǒng)的模型都可以用如式(46)和式(47)所示的二階系統(tǒng)描述(以俯仰角為例):
或
定義姿態(tài)角跟蹤誤差為eθ=θr-θ,角速度跟蹤誤差為eq=qr-q。針對(duì)該二階系統(tǒng),設(shè)計(jì)的基于R-CFO 的MCC 雙閉環(huán)串級(jí)控制策略為
定理2基于R-CFO 的模型補(bǔ)償控制器(式(46))控制四旋翼飛行器跟蹤參考姿態(tài)角,能實(shí)現(xiàn)閉環(huán)系統(tǒng)穩(wěn)定,姿態(tài)跟蹤誤差漸近收斂。
證明令E=[eθ,eq]Τ,假設(shè)=0,將控制器(48)代入系統(tǒng)(44)中,可得
有
得到閉環(huán)系統(tǒng)矩陣表達(dá)式為
定義R-CFO 對(duì)未知函數(shù)的估計(jì)誤差為ef=-f,式(51)可寫(xiě)為
設(shè)計(jì)Lyapunov 函數(shù)為
P是對(duì)稱正定矩陣且滿足如式(54)所示的Lyapunov 方程:
Q>0,取,則有
從而有
式中:ε為RBF 神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)逼近誤差,能夠充分小,因此V?≤0。證畢。
在實(shí)際控制中,由于未建模動(dòng)態(tài),如陀螺力矩、機(jī)體部分壞損、負(fù)載和氣動(dòng)阻力等,可能存在的內(nèi)部或外部未知時(shí)變擾動(dòng)對(duì)無(wú)人機(jī)的影響,因此對(duì)非線性模型項(xiàng)的高精度估計(jì)尤為重要,因此分2 種情況討論。
案例1觀測(cè)器對(duì)3 種簡(jiǎn)單函數(shù)的觀測(cè)性能
先介紹一下擴(kuò)張觀測(cè)器(ESO),表達(dá)式為
由式(57)可知,當(dāng)bu=0 時(shí)可得ESO 的特征方程為
選取a=8,即ESO 的參數(shù)為l1=24,l2=192,l3=512。為了對(duì)比公平,讓ESO 與CFO的特征多項(xiàng)式常數(shù)項(xiàng)相等,都等于512。由式(13)和式(14),可以確定ω=3.174 8。因此式(13)的參數(shù)l1=28.57,l2=121,λ=4.23,得到CFO 的特征多項(xiàng)式s3+28.57s2+242s+512。 本文提出的 R-CFO,同樣取l1=28.57,l2=121,γ=0.001。
對(duì)于系統(tǒng)式(1),在仿真過(guò)程中令bu=1,令模型函數(shù)項(xiàng)f=1,t, 0.5t2, sin 3t,分別用ESO、帶有積分器的CFO 和R-CFO 進(jìn)行估計(jì),結(jié)果如圖9 所示。為了統(tǒng)一,第5 節(jié)圖9~圖11 中和分別代表各觀測(cè)器對(duì)模型函數(shù)項(xiàng)的估計(jì)值,f代表實(shí)際值。
圖9 ESO 和R-CFO 關(guān)于不同函數(shù)的估計(jì)Fig. 9 Estimation of ESO and R-CFO on different functions
圖9(a)顯示,對(duì)于常值函數(shù),ESO、CFO 和R-CFO 都能實(shí)現(xiàn)無(wú)差估計(jì);但是,圖9(b)表明,對(duì)于斜坡函數(shù),ESO 估計(jì)的穩(wěn)態(tài)誤差為0.375,而CFO 和R-CFO 估計(jì)的穩(wěn)態(tài)誤差為零;圖9(c)表明,對(duì)于拋物線函數(shù),ESO 估計(jì)的穩(wěn)態(tài)誤差隨著時(shí)間無(wú)限增大,估計(jì)的誤差發(fā)散,而CFO 和RCFO 仍能實(shí)現(xiàn)無(wú)差估計(jì);由圖9(d)可知,對(duì)于更為一般的函數(shù),CFO 和R-CFO 的估計(jì)性能遠(yuǎn)高于ESO,并且對(duì)于非線性三角函數(shù)R-CFO 的收斂速率快于CFO。在圖9 中,ESO 的平均絕對(duì)值誤差為0.595 2,CFO 的平均絕對(duì)誤差為0.023 9,而R-CFO 為0.007 1。
案例2對(duì)強(qiáng)非線性系統(tǒng)模型項(xiàng)的估計(jì)
由于無(wú)人機(jī)屬于強(qiáng)非線性系統(tǒng)[28],故考察RCFO 對(duì)強(qiáng)非線性模型項(xiàng)的觀測(cè)性能,并與ESO進(jìn)行對(duì)比??紤]非線性Duffing 系統(tǒng)
式中:時(shí)變非線性未知函數(shù)為f=25y?-y3+11cost+sin(πy)sin(πy?)+5sint,令bu=3sint,2 種觀測(cè)器的參數(shù)選擇與案例1 相同。ESO、CFO 和R-CFO 關(guān)于Duffing 模型函數(shù)估計(jì)性能對(duì)比如圖10 所示。
圖10 ESO、CFO 和R-CFO 關(guān)于Duffing 模型函數(shù)估計(jì)性能對(duì)比Fig. 10 Comparison of ESO, CFO and R-CFO on Duffing model function estimation performance
圖10(a)和圖10(c)表明,ESO 對(duì)該Duffing系統(tǒng)中未知函數(shù)的估計(jì)有明顯的相位差。在尖峰處,跟蹤嚴(yán)重不足,誤差范圍在[-100, 100],說(shuō)明其對(duì)高頻非線性函數(shù)估計(jì)誤差較大;而R-CFO 估計(jì)精度高,即使在尖峰處也能高精度估計(jì),誤差范圍在[ -5, 5]。
由圖10(b)和圖10(c)對(duì)比可知,相對(duì)于CFO,R-CFO 將誤差范圍進(jìn)一步縮小,觀測(cè)精度更高。R-CFO 對(duì)該系統(tǒng)模型函數(shù)的估計(jì)平均絕對(duì)誤差為0.785,而ESO 為19.644,CFO 是3.341。
被控對(duì)象為四旋翼飛行器式(41),將設(shè)計(jì)的模型補(bǔ)償控制(MCC)策略應(yīng)用于四旋翼飛行器的姿態(tài)控制,并與PID、ADRC 控制方法比較。模型參數(shù)由表1 給出。系統(tǒng)的初始狀態(tài)取Θ0=ω0=0。為了對(duì)比的公平性,數(shù)值仿真中3 種控制算法外環(huán)采用的比例控制參數(shù)均為kθ=6.5。通常,ADRC 控制律表達(dá)式為
而基于R-CFO 的MCC 控制律為式(42),其中所估計(jì)與ADRC 不同;另外,ADRC 控制律式(60)中一般沒(méi)有。3 種內(nèi)環(huán)控制器選取參數(shù)在表2 中給出。以滾轉(zhuǎn)通道為例,給定設(shè)置為?r=0.12 rad,在3 ~5 s 之間加入外部擾動(dòng)d?0=0.05 sin5t。
表2 內(nèi)環(huán)控制器參數(shù)Table 2 Inner loop controller parameters
滾轉(zhuǎn)通道控制及估計(jì)的對(duì)比如圖11 所示。對(duì)滾轉(zhuǎn)角系統(tǒng)控制和未知模型估計(jì)的對(duì)比如表3所示。
表3 對(duì)滾轉(zhuǎn)角系統(tǒng)控制和未知模型估計(jì)的對(duì)比Table 3 Comparison of roll angle system control and unknown model estimation
圖11 滾轉(zhuǎn)通道控制及估計(jì)的對(duì)比Fig. 11 Comparison of roll channel control and estimation
從圖11(a)和表3 看出,對(duì)于階躍給定,MCC對(duì)擾動(dòng)的抑制效果最好,ADRC 抑制擾動(dòng)的性能也明顯優(yōu)于PID。由圖11(b)和圖11(c)及表3 看出,對(duì)于未知模型的估計(jì),R-CFO 估計(jì)的精度最高。仿真發(fā)現(xiàn),為了提高控制性能,增大ESO 參數(shù),使得ADRC 方法控制性能有所提高,但是控制性能仍達(dá)不到MCC 的效果。因此本文所提出的MCC 能以較小參數(shù)實(shí)現(xiàn)較優(yōu)越的控制性能和抗干擾性能。
實(shí)驗(yàn)中利用基于Pixhawk 的四旋翼飛行器控制算法開(kāi)發(fā)平臺(tái)實(shí)現(xiàn)四旋翼內(nèi)部算法更新,流程如圖12 所示。選擇MCC 控制作為內(nèi)環(huán)姿態(tài)控制器,四旋翼的結(jié)構(gòu)如圖6 所示。
圖12 基于Pixhawk 的四旋翼算法開(kāi)發(fā)平臺(tái)Fig. 12 Four-rotor algorithm development platform based on Pixhawk
本實(shí)驗(yàn)主要考察四旋翼對(duì)跟蹤橫滾角的性能,參考值通過(guò)遙控器給定。實(shí)驗(yàn)過(guò)程中,首先保證懸停四旋翼飛行器在萬(wàn)向節(jié)底座上的初始狀態(tài)約為[?0,θ0,ψ0]Τ=[0,-0.61,0]Τrad,參考的初始狀態(tài)為[?r0,θr0,ψr0]Τ=[0,0,0]Τrad,四旋翼飛行器在萬(wàn)向節(jié)底座上的滾轉(zhuǎn)角和俯仰角最大值為?max=θmax=±0.61 rad。期望角度由遙控器輸出,控制器參數(shù)由表2 給出。
本組實(shí)驗(yàn)測(cè)試2 種控制算法跟蹤任意給定參考的性能,滾轉(zhuǎn)角的參考值?r通過(guò)遙控器實(shí)時(shí)給出,由式(61)給出,即
式中:rc 代表遙控器的滾轉(zhuǎn)通道搖桿量,對(duì)應(yīng)PWM 值的范圍是1 100 ~1 900 μs。首先通過(guò)遙控器的油門(mén)通道使機(jī)體到達(dá)參考的初始姿態(tài)[?r0,θr0,ψr0]Τ=[0,0,0]Τrad,并保持懸停一段時(shí)間,由遙控器控制改變參考值。基于MCC 和ADRC 的控制算法跟蹤參考滾轉(zhuǎn)角的結(jié)果如圖13 所示,跟蹤隨機(jī)給定信號(hào)的平均絕對(duì)誤差由表4 所示。
表4 MCC 與ADRC 控制性能對(duì)比Table 4 MCC and ADRC control performance comparison
圖13 滾轉(zhuǎn)角2 種控制算法跟蹤效果對(duì)比Fig. 13 Comparison of tracking effects of two control algorithms for roll angle
圖13(a)和圖13(b)顯示,對(duì)于任意給定,ADRC 和MCC 都能實(shí)現(xiàn)高精度跟蹤。但是,對(duì)于階躍信號(hào),由于ESO 的高頻噪聲問(wèn)題,所以ADRC 在控制過(guò)程中會(huì)產(chǎn)生振蕩并出現(xiàn)超調(diào)。而圖13(a)表明,由于R-CFO 觀測(cè)精度高,故MCC 能夠更快收斂且無(wú)超調(diào)。結(jié)合表4 數(shù)據(jù)可知MCC 無(wú)論是在跟蹤的穩(wěn)態(tài)性能還是暫態(tài)性能都要強(qiáng)于ADRC。
下面給出抗擾實(shí)驗(yàn)結(jié)果。對(duì)于MCC 和ADRC 實(shí)驗(yàn),在飛行器機(jī)體左側(cè)懸掛同一重物,實(shí)驗(yàn)前先將其托起,使它不影響飛行器的正常啟動(dòng)和懸停。當(dāng)飛行器啟動(dòng)并懸停一段時(shí)間后,瞬間釋放該懸掛的重物,并保持重物加載,以模擬機(jī)體可能受到的外部擾動(dòng)。2 種控制算法的抗擾測(cè)試結(jié)果如圖14 所示。
圖14 滾轉(zhuǎn)角2 種控制算法跟抗擾果對(duì)比Fig. 14 Comparison of disturbance rejection of two control algorithms for roll angle
由圖14 可以看出,總體MCC 控制優(yōu)于ADRC,穩(wěn)態(tài)誤差較小。在大約9 s 處,無(wú)人機(jī)受擾,與MCC 相比,ADRC 控制下的滾轉(zhuǎn)角產(chǎn)生了大得多的受擾振蕩,克服擾動(dòng)的調(diào)節(jié)時(shí)間也更長(zhǎng),不能快速重新回到原來(lái)的平衡位置。這是由于R-CFO 對(duì)未知模型函數(shù)的估計(jì)值更為精確,并將估計(jì)值及時(shí)反饋給控制器以平衡抵消該擾動(dòng),因此MCC 較ADRC 的受擾超調(diào)小得多,調(diào)節(jié)時(shí)間更短,以更高精度重新回到平衡狀態(tài),抗擾能力得到了很大的提升。
該組實(shí)驗(yàn)與圖11 所示的仿真結(jié)果相比,在控制器參數(shù)類似的情況下,其中ADRC 的暫態(tài)表現(xiàn)出明顯超調(diào)和振蕩。由于ESO 的觀測(cè)器參數(shù)較小,面對(duì)實(shí)際系統(tǒng)中更大的不確定性還需要繼續(xù)增大參數(shù)來(lái)提高估計(jì)精度,更容易引入高頻噪聲,由于超調(diào)量以及振蕩的存在,導(dǎo)致調(diào)節(jié)時(shí)間更長(zhǎng)。相比之下,MCC 在選擇與仿真時(shí)相近的觀測(cè)器參數(shù)條件下,MCC 調(diào)節(jié)時(shí)間更短,幾乎沒(méi)有超調(diào),而ADRC 的最大超調(diào)達(dá)到了58%,穩(wěn)態(tài)精度方面,MCC 具有更強(qiáng)的魯棒性。
1)基于無(wú)人機(jī)各個(gè)通道之間的強(qiáng)耦合,負(fù)載時(shí)變,強(qiáng)風(fēng)干擾等特性,提出了一類不依賴模型的控制策略。本文用RBF 神經(jīng)網(wǎng)絡(luò)替代了CFO 中的線性濾波補(bǔ)償,設(shè)計(jì)了帶有RBF 神經(jīng)網(wǎng)絡(luò)的補(bǔ)償函數(shù)觀測(cè)器(R-CFO),提高了估計(jì)精度,基于Lyapunov 函數(shù)給出了收斂性證明。
2)基于所提出的R-CFO 對(duì)未知模型的估計(jì),本文提出了模型補(bǔ)償控制策略(MCC),以補(bǔ)償模型偏差、時(shí)變和各類擾動(dòng),給出了閉環(huán)系統(tǒng)控制穩(wěn)定性的證明。通過(guò)幾個(gè)確定非線性函數(shù)的仿真測(cè)試,表明基于帶有RBF 神經(jīng)網(wǎng)絡(luò)的CFO 估計(jì)精度大幅優(yōu)越于ESO 估計(jì)。
3)通過(guò)四旋翼無(wú)人機(jī)的數(shù)值仿真測(cè)試以及實(shí)際實(shí)驗(yàn)發(fā)現(xiàn),模型補(bǔ)償控制較現(xiàn)有的自抗擾控制(ADRC)在跟蹤性能更優(yōu)越,穩(wěn)態(tài)精度更高,魯棒性強(qiáng)。