本發(fā)明涉及的是一種欠驅(qū)動(dòng)水下無人航行器的控制方法,特別是涉及一種避免微分爆炸的欠驅(qū)動(dòng)uuv空間軌跡跟蹤反步控制方法。
背景技術(shù):
水下無人航行器(unmannedunderwatervehicle,uuv)的空間軌跡跟蹤控制能力是實(shí)現(xiàn)海洋勘探的保障。所研究的欠驅(qū)動(dòng)系統(tǒng)一方面可以使uuv硬件系統(tǒng)的設(shè)計(jì)得到相當(dāng)大程度的簡化;同時(shí),當(dāng)全驅(qū)動(dòng)uuv的部分輔助推進(jìn)裝置出現(xiàn)故障里,uuv變?yōu)榍夫?qū)動(dòng)系統(tǒng),設(shè)計(jì)的欠驅(qū)動(dòng)uuv軌跡跟蹤控制方法依然可以保障任務(wù)最大限度地完成,這大大提高了全驅(qū)動(dòng)系統(tǒng)的可靠性。綜上,對(duì)于欠驅(qū)動(dòng)uuv空間軌跡跟蹤控制方法的研究非常重要。
本發(fā)明所涉及到的欠驅(qū)動(dòng)uuv在垂向和橫向上缺少推進(jìn)裝置,加之uuv空間軌跡為六自由度運(yùn)動(dòng),使得欠驅(qū)動(dòng)uuv模型具有高度耦合性和非線性的特性。主流的控制方法分為兩大類:其一是設(shè)計(jì)解耦的子系統(tǒng)以及線性化處理,但不能保證系統(tǒng)在線性化工作點(diǎn)的全局穩(wěn)定;其二是通過非線性控制方法進(jìn)行控制。本發(fā)明所涉及的非線性控制方法是基于李雅普諾夫理論的非線性反步控制方法,它能有效實(shí)現(xiàn)對(duì)欠驅(qū)動(dòng)uuv的直接非線性控制。反步法將一個(gè)復(fù)雜的非線性系統(tǒng)劃分為若干個(gè)迭代子系統(tǒng),通過設(shè)計(jì)中間虛擬控制函數(shù)并逐步計(jì)算出中間虛擬控制量的導(dǎo)數(shù),然后逐級(jí)的引入后續(xù)的子系統(tǒng),實(shí)現(xiàn)對(duì)前級(jí)子系統(tǒng)的鎮(zhèn)定,進(jìn)而實(shí)現(xiàn)整個(gè)被控系統(tǒng)的漸進(jìn)穩(wěn)定。對(duì)中間虛擬控制量的解析求導(dǎo)會(huì)導(dǎo)致“微分爆炸”現(xiàn)象和控制器設(shè)計(jì)復(fù)雜問題,不僅會(huì)影響控制精度,還會(huì)出現(xiàn)執(zhí)行機(jī)構(gòu)輸入飽和問題。針對(duì)三維軌跡跟蹤控制,文獻(xiàn)《spatialpathfollowingforauvsusingadaptiveneuralnetworkcontrollers》(mathematicalproblemsinengineering.2013,第9期.)使用三個(gè)神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)控制器,克服參數(shù)的不確定性和環(huán)境擾動(dòng),實(shí)現(xiàn)了auv的空間軌跡跟蹤,但是神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)需要時(shí)間。文獻(xiàn)《position-trackingcontrolofunderactuatedautonomousunderwatervehiclesinthepresenceofunknownoceancurrents》(ietcontroltheoryandapplications.2010,第4卷第11期)通過虛擬速度誤差變量的定義簡化了傳統(tǒng)反步法的計(jì)算過程,完成欠驅(qū)動(dòng)auv的平面軌跡跟蹤控制。文獻(xiàn)《three-dimensionalstraightlinepath-trackingcontrolforunderactuatedunderwatervehicle》(controltheoryandapplications.2013,第30卷第4期)通過合理地選擇控制器參數(shù)來消除一些非線性項(xiàng),與傳統(tǒng)的反步法設(shè)計(jì)過程相比,它簡化了虛擬控制形式,但仍然需要逐步對(duì)虛擬控制量解析求導(dǎo)。文獻(xiàn)《three-dimensionalpath-followingcontrolofunderactuatedautonomousunderwatervehiclewithcommandfilteredbackstepping》(自動(dòng)化學(xué)報(bào).2015,第41卷第3期)使用濾波反步法簡化了推導(dǎo)過程并消除了高頻噪聲,實(shí)現(xiàn)了欠驅(qū)動(dòng)auv的三維軌跡跟蹤控制。在上述反步法中,忽略了時(shí)變軌跡對(duì)速度和姿態(tài)控制的影響。然而,在引入中間虛擬控制變量之后,導(dǎo)數(shù)運(yùn)算將使控制器設(shè)計(jì)變得非常復(fù)雜,影響控制精度,甚至使執(zhí)行機(jī)構(gòu)產(chǎn)生輸入飽和問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種能簡化計(jì)算量和控制器的復(fù)雜性,提高系統(tǒng)的控制性能和魯棒性,可以實(shí)現(xiàn)對(duì)欠驅(qū)動(dòng)uuv三維軌跡的精確跟蹤控制的避免微分爆炸的uuv軌跡跟蹤控制方法。
本發(fā)明的目的是這樣實(shí)現(xiàn)的:
步驟1、初始化,uuv通過所搭載的導(dǎo)航設(shè)備和傳感器采集數(shù)據(jù),獲得當(dāng)前的位置x(t)=[x(t),y(t),z(t)]t信息、姿態(tài)[θ(t),ψ(t)]t信息、速度v(t)=[u(t),v(t),ω(t),q(t),r(t)]t信息,同時(shí)將期望軌跡位置信息給定uuv;
步驟2、利用步驟1中的信息,通過欠驅(qū)動(dòng)uuv的數(shù)學(xué)模型和軌跡跟蹤誤差模型,計(jì)算出實(shí)際軌跡與期望軌跡之間的位置誤差和期望姿態(tài),將地面坐標(biāo)信息轉(zhuǎn)換為船體坐標(biāo)信息;
步驟3、基于步驟2中計(jì)算出的位置誤差,采用定義虛擬速度誤差變量的方法,將姿態(tài)跟蹤控制轉(zhuǎn)化為速度控制,計(jì)算出縱向速度虛擬控制律ud、縱傾角速度虛擬控制律qd和艏向角速度虛擬控制律rd,并將虛擬期望控制律ud,v1d,w1d用三個(gè)生物啟發(fā)模型的輸出量uf,v1f,w1f代替;
步驟4、結(jié)合步驟2和步驟3中的數(shù)據(jù),通過構(gòu)造lyapunov函數(shù)將位置誤差的鎮(zhèn)定轉(zhuǎn)移到對(duì)速度誤差的鎮(zhèn)定上,然后分別通過動(dòng)力模型中的實(shí)際控制τu,τr,τq消除速度誤差eu,er,eq,通過虛擬控制輸入r,q消除虛擬速度誤差ev1,ew1;
步驟5、推導(dǎo)避免微分爆炸的欠驅(qū)動(dòng)uuv空間軌跡跟蹤控制器,包括縱向控制力矩τu的控制信號(hào)、縱傾控制力矩τq和艏搖控制力矩τr的控制信號(hào),計(jì)算出外界擾動(dòng)自適應(yīng)控制律,實(shí)現(xiàn)在外界常值擾動(dòng)下對(duì)欠驅(qū)動(dòng)uuv空間軌跡跟蹤控制。
本發(fā)明還可以包括:
1、所述欠驅(qū)動(dòng)uuv的數(shù)學(xué)模型包括運(yùn)動(dòng)學(xué)模型、動(dòng)力學(xué)模型、位置與姿態(tài)誤差、三維軌跡跟蹤誤差模型與期望姿態(tài)的表達(dá)式分別為:
運(yùn)動(dòng)學(xué)模型:
動(dòng)力學(xué)模型:
式中:
位置與姿態(tài)誤差:
三維軌跡跟蹤誤差模型:
其中,
期望姿態(tài):
2、虛擬速度誤差變量v1、w1,縱向速度虛擬控制律ud,縱傾角速度虛擬控制律qd,艏搖角速度虛擬控制律rd和生物啟發(fā)模型的表達(dá)式分別為:
虛擬速度誤差變量及其控制律為:
縱向速度虛擬控制律:
ud=-k1ex/e+vpsinθdsinθ+vtcosθcoseψ
其中,k1,k2,k3為正常數(shù),
艏向角、縱傾角速度虛擬控制律:
其中,k5,k7為正常數(shù);
生物啟發(fā)模型為:
其中,參數(shù)ai,i=1,2,3是正常數(shù),為模型的輸出量的衰減率;正常數(shù)bi和di分別為模型的輸出量的上限和下限;函數(shù)f(·)和g(·)定義為變量a的線性函數(shù)f(a)=max{a,0}和g(a)=max{-a,0}。
3、lyapunov函數(shù),速度誤差和虛擬速度誤差的表達(dá)式分別為:
lyapunov函數(shù)為:
速度誤差為:
虛擬速度誤差為:
4、lyapunov函數(shù)的導(dǎo)數(shù)
lyapunov函數(shù)的導(dǎo)數(shù)為:
其中,
空間軌跡跟蹤控制器為:
針對(duì)已有技術(shù)中存在的問題,本發(fā)明提出了一種避免微分爆炸的空間軌跡跟蹤反步控制方法。該方法創(chuàng)新性地結(jié)合反步控制方法引入生物啟發(fā)模型,利用生物啟發(fā)模型的微分輸出值,代替反步法控制中對(duì)虛擬控制量的實(shí)時(shí)數(shù)值求導(dǎo),避免了對(duì)虛擬控制量的反復(fù)求導(dǎo),簡化了計(jì)算量和控制器的復(fù)雜性,有效的減小了控制輸入飽和對(duì)系統(tǒng)的影響。本發(fā)明的結(jié)合生物啟發(fā)模型的軌跡跟蹤反步控制方法,來避免控制器設(shè)計(jì)時(shí)的“微分爆炸”并實(shí)現(xiàn)欠驅(qū)動(dòng)uuv的空間軌跡跟蹤控制。
本發(fā)明方法的有益效果:
1、定義了虛擬速度誤差變量,將姿態(tài)跟蹤控制轉(zhuǎn)化為速度控制,簡化了計(jì)算過程;
2、利用生物啟發(fā)模型的微分輸出值,代替反步法控制中對(duì)虛擬控制量的實(shí)時(shí)數(shù)值求導(dǎo),避免了對(duì)虛擬控制量的反復(fù)求導(dǎo),簡化了計(jì)算量和控制器的復(fù)雜性;
3、提高了系統(tǒng)的控制性能和魯棒性,滿足推進(jìn)器的推力約束和欠驅(qū)動(dòng)uuv三維軌跡跟蹤對(duì)位置、速度以及姿態(tài)的時(shí)間約束要求;
4、在外界常值擾動(dòng)下可以實(shí)現(xiàn)對(duì)欠驅(qū)動(dòng)uuv三維軌跡的精確跟蹤控制。
附圖說明
圖1欠驅(qū)動(dòng)水下無人航行器三維軌跡跟蹤控制流程圖;
圖2uuv大地坐標(biāo)系與船體坐標(biāo)系;
圖3欠驅(qū)動(dòng)uuv三維軌跡跟蹤控制系統(tǒng)結(jié)構(gòu)圖;
圖4欠驅(qū)動(dòng)uuv三維軌跡跟蹤效果圖;
圖5欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱向速度及其誤差;
圖6欠驅(qū)動(dòng)uuv三維軌跡跟蹤橫向速度及其誤差;
圖7欠驅(qū)動(dòng)uuv三維軌跡跟蹤垂向速度及其誤差;
圖8欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱傾角及其誤差;
圖9欠驅(qū)動(dòng)uuv三維軌跡跟蹤艏向角及其誤差;
圖10欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱傾角速度及其誤差;
圖11欠驅(qū)動(dòng)uuv三維軌跡跟蹤艏向角速度及其誤差;
圖12欠驅(qū)動(dòng)uuv三維軌跡跟蹤控制力及力矩輸入。
具體實(shí)施方式
下面舉例對(duì)本發(fā)明的避免微分爆炸的uuv軌跡跟蹤控制方法做詳細(xì)描述:
步驟1中uuv根據(jù)當(dāng)前任務(wù),將期望軌跡位置信息給定uuv,并通過所搭載的導(dǎo)航設(shè)備和傳感器采集數(shù)據(jù),獲得當(dāng)前的位置x(t)=[x(t),y(t),z(t)]t信息、姿態(tài)[θ(t),ψ(t)]t信息、速度v(t)=[u(t),v(t),ω(t),q(t),r(t)]t信息。
然后uuv獲取在地面坐標(biāo)系下的初始位置x(t)=[x(t),y(t),z(t)]t,uuv初始的艏向角ψ(t),縱傾角θ(t),uuv的初始縱向速度ur(t)、橫向速度vr(t)和艏搖角速度r(t),并給定期望軌跡位置xd(t)=[xd(t),yd(t),zd(t)]t。
步驟2中利用步驟1中的信息,通過欠驅(qū)動(dòng)uuv的數(shù)學(xué)模型和軌跡跟蹤位置誤差模型,計(jì)算出實(shí)際軌跡與期望軌跡之間的位置誤差,和期望姿態(tài),將地面坐標(biāo)信息轉(zhuǎn)換為船體坐標(biāo)信息。
所涉及的欠驅(qū)動(dòng)uuv的數(shù)學(xué)模型包括運(yùn)動(dòng)學(xué)模型和動(dòng)力學(xué)模型、位置與姿態(tài)誤差、軌跡跟蹤誤差模型與期望姿態(tài)的表達(dá)式分別為:
運(yùn)動(dòng)學(xué)模型:
動(dòng)力學(xué)模型:
式中:
位置與姿態(tài)誤差:
三維軌跡跟蹤誤差模型:
其中,
根據(jù)給定的期望軌跡位置信息可以得到uuv期望姿態(tài):
所述的將地面坐標(biāo)信息轉(zhuǎn)換為船體坐標(biāo)的過程如下:
首先根據(jù)期望軌跡獲得地面坐標(biāo)系下的位置誤差為:
再經(jīng)過坐標(biāo)轉(zhuǎn)換后得到新的船體坐標(biāo)系下的位置誤差為:
至此完成了欠驅(qū)動(dòng)uuv的初始化設(shè)置。
欠驅(qū)動(dòng)uuv滿足如下的假設(shè):
假設(shè)1.1欠驅(qū)動(dòng)uuv的速度和控制輸入均有界,即
假設(shè)1.2當(dāng)t>0時(shí),期望軌跡的變量ud,qd,rd均有界,且它們的導(dǎo)數(shù)
假設(shè)1.3對(duì)
步驟3中按下式分別給出或計(jì)算出所定義的虛擬速度誤差變量v1、w1,縱向速度虛擬控制律ud,縱傾角速度虛擬控制律qd,艏搖角速度虛擬控制律rd和生物啟發(fā)模型。
所設(shè)計(jì)的虛擬速度誤差變量及其控制律為:
縱向速度虛擬控制律:
ud=-k1ex/e+vpsinθdsinθ+vtcosθcoseψ(9)
其中,k1,k2,k3為正常數(shù),
為了避免當(dāng)艏向角誤差eψ=0時(shí)所具有奇異值的問題,設(shè)計(jì)r的虛擬期望控制律為:
艏向角、縱傾角速度虛擬控制律:
其中,k5,k7為正常數(shù)。
生物啟發(fā)模型為:
其中,參數(shù)ai(i=1,2,3)是正常數(shù),為模型的輸出量的衰減率;正常數(shù)bi和di分別為模型的輸出量的上限和下限;函數(shù)f(·)和g(·)定義為變量a的線性函數(shù)f(a)=max{a,0}和g(a)=max{-a,0}。
步驟4中結(jié)合步驟2和步驟3中的數(shù)據(jù),通過構(gòu)造lyapunov函數(shù)將位置誤差的鎮(zhèn)定轉(zhuǎn)移到對(duì)速度誤差的鎮(zhèn)定上:
然后分別通過動(dòng)力模型中的實(shí)際控制τu,τr,τq消除速度誤差eu,er,eq,通過虛擬控制輸入r,q消除虛擬速度誤差
速度誤差為:
虛擬速度誤差為:
步驟5中推導(dǎo)的避免微分爆炸的欠驅(qū)動(dòng)uuv軌跡跟蹤控制器,具體的計(jì)算和推到過程如下:
結(jié)合式(13)和(14),對(duì)式(12)求導(dǎo)可得:
其中,
根據(jù)李雅普諾夫穩(wěn)定性理論,要使v收斂,需滿足條件
其中,
考慮整個(gè)控制系統(tǒng),根據(jù)式(12),設(shè)計(jì)如下lyapunov函數(shù):
對(duì)上式求導(dǎo)可得:
令生物模型中的參數(shù)bj=dj;令ai=aj+f(id)+g(id);令bj=ai,其中(i=u,v1,w1,r,q;j=1,2,3,4,5),則有:
其中:
因此式(16)可以改寫為:
即上式又可以變?yōu)椋?/p>
下面利用楊氏不等式
在式(21)中,有:
且滿足:
于是,式(21)最終可寫為:
同時(shí)做出如下定義:
結(jié)合式(72)有:
2v1=||z||2(26)
根據(jù)比較原理有:
其中γ=min{l1,l2,l3,k4,l4,k6,l5,k8,l6,l7,l8,l9,l10}。
再結(jié)合(19)可得到:
因此最終可知:
式(27)表明,lyapunov函數(shù)v1(t)被界定在(0-δ/2γ)范圍內(nèi),即跟蹤系統(tǒng)誤差均是有界的,且收斂在半徑為δ/2γ的鄰域內(nèi),可以通過適當(dāng)?shù)脑龃螃檬沟酶櫹到y(tǒng)誤差最終收斂到零值附近的一個(gè)壓縮有界值,即系統(tǒng)誤差全局一致最終有界,并且所設(shè)計(jì)的控制器免去了對(duì)ud,qd,rd的求導(dǎo)運(yùn)算,簡化了計(jì)算量。
仿真實(shí)驗(yàn)驗(yàn)證與分析
為了驗(yàn)證所設(shè)計(jì)的軌跡跟蹤控制器的優(yōu)點(diǎn)和有效性,對(duì)基于虛擬速度代替姿態(tài)誤差反步法和避免微分爆炸反步法進(jìn)行了對(duì)比仿真實(shí)驗(yàn),并模擬實(shí)際工程應(yīng)用設(shè)計(jì)了相關(guān)下潛空間軌跡,最后對(duì)相關(guān)結(jié)果進(jìn)行了分析。
其中基于虛擬速度代替姿態(tài)誤差的反步法控制器設(shè)計(jì)為:
從式(30)和式(14)的對(duì)比中可以看出本發(fā)明所設(shè)計(jì)控制器免去了對(duì)ud,qd,rd的求導(dǎo)運(yùn)算,簡化了計(jì)算量。
選取期望軌跡為:xd=t,
uuv初始狀態(tài):
x=-5(m),y=10(m),z=1(m),θ=0(°),ψ=0(°),u=0(m/s),v=0(m/s),w=0(m/s),q=0(rad/s),r=0(rad/s)。
控制器參數(shù):
{k1,k2,k3,k4,k5,k6,k7,k8}={1,1.5,1.5,0.3,0.02,0.1,0.01,0.1}。
生物模型參數(shù):
a1=12,b1=d1=10,a2=13,b2=d2=9,a3=8,b3=d3=12,a4=10,b4=d4=12,a5=10,b5=d5=12。
基于matlab的仿真實(shí)驗(yàn)結(jié)果如圖4-圖12所示,欠驅(qū)動(dòng)uuv在具有起始誤差的情況下,實(shí)現(xiàn)了對(duì)期望三維空間軌跡的精確跟蹤。
圖4為欠驅(qū)動(dòng)uuv三維軌跡跟蹤的效果圖,從圖中的對(duì)比可以看出基于避免微分爆炸反步法中,由于省去對(duì)中間虛擬控制變量的求導(dǎo),因此其受噪聲的干擾較小,在起始點(diǎn)和幾個(gè)直線拐點(diǎn)處的跟蹤效果都好于反步法。
圖5-圖7分別為欠驅(qū)動(dòng)uuv三維軌跡跟蹤x軸、y軸和z軸方向的軌跡及其誤差響應(yīng)曲線,可以看出起始誤差為(xe,ye,ze)=(-5,10,0.4)米;避免微分爆炸反步法在50s內(nèi)就已經(jīng)收斂至穩(wěn)定的狀態(tài),且誤差都在1米以內(nèi);而反步法中到達(dá)穩(wěn)定狀態(tài)則需要更多的時(shí)間,且誤差最大超過5米。
圖5-圖7分別為欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱向、橫向和垂向速度及其誤差變化曲線,反步法的各項(xiàng)速度在誤差較大和軌跡拐點(diǎn)時(shí)的跳變要比避免微分爆炸反步法要大,且各項(xiàng)速度誤差也大于避免微分爆炸反步法;。
圖8和圖9分別為欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱傾角和艏向角及其誤差響應(yīng)曲線,圖8中,縱傾角在0°到10°的范圍內(nèi)變化,每次角度的改變避免微分爆炸反步法都會(huì)平滑的到達(dá)穩(wěn)態(tài)值,而反步法則會(huì)出現(xiàn)跳變的現(xiàn)象;圖9中,艏向角在0°到25°的范圍內(nèi)變化,可以看出在起始位置誤差較大時(shí),反步法出現(xiàn)了短時(shí)間內(nèi)的角度跳變,這樣會(huì)導(dǎo)致執(zhí)行機(jī)構(gòu)不能快速的響應(yīng),從而引起誤差的加大,但避免微分爆炸反步法就很好的克服了該缺點(diǎn)。
圖10和圖11分別為欠驅(qū)動(dòng)uuv三維軌跡跟蹤縱傾角速度和艏向角速度及其誤差變化曲線,圖10中,避免微分爆炸反步法的縱傾角速度變化快速且平滑,誤差僅為反步法的一半;圖11中,由于起始的位置誤差,反步法中的艏向角速度出現(xiàn)了大且頻率較高的跳變。
圖12為欠驅(qū)動(dòng)uuv三維軌跡跟蹤控制力及力矩輸入的變化曲線,直觀的反映出所設(shè)計(jì)控制器實(shí)際控制輸入的變化情況:反步法中的艏搖控制力矩輸入在起始誤差較大時(shí)出現(xiàn)了抖振的現(xiàn)象,而避免微分爆炸反步法的各項(xiàng)輸入?yún)s很平滑;反步法中的縱向控制力輸入和艏搖控制力矩輸入出現(xiàn)了飽和輸入的現(xiàn)象。
圖4-圖12可以看出本發(fā)明所設(shè)計(jì)的控制器在避免傳統(tǒng)反步法中微分爆炸現(xiàn)象的同時(shí),還具有控制輸入抗飽和控制精度高的特性,實(shí)現(xiàn)了在外界常值擾動(dòng)下對(duì)時(shí)變?nèi)S軌跡的精確跟蹤。