李光磊,李冀永,鐘榮興,*,謝華偉,但楊文,侯成剛
(1.海軍駐九江軍事代表室,江西 九江 332007;2.天津航海儀器研究所,天津 300131)
智能水下機(jī)器人(Autonomous Underwater Vehicle,AUV)是一種可脫離母船,以自主形式完成作業(yè)任務(wù)的水下航行器[1-3]。AUV 可用于執(zhí)行一系列海洋科考、工程設(shè)備檢修維護(hù)以及軍事任務(wù),三維路徑跟蹤控制是實(shí)現(xiàn)上述任務(wù)的關(guān)鍵技術(shù)。AUV 本身是一種欠驅(qū)動(dòng)機(jī)構(gòu),在實(shí)際任務(wù)環(huán)境中,還受到外界環(huán)境干擾、自身模型不確定性的影響。因此,如何克服上述問題實(shí)現(xiàn)AUV 高精度跟蹤控制,受到各國科研機(jī)構(gòu)及研究人員的廣泛重視。
當(dāng)前,AUV 主要采用PID 控制器[4]、S 面控制器[5-6]實(shí)現(xiàn)運(yùn)動(dòng)控制,這類無模型控制方法結(jié)構(gòu)簡單、計(jì)算量少,但沒有考慮AUV 動(dòng)力學(xué)模型及環(huán)境對控制品質(zhì)的影響,因此在復(fù)雜環(huán)境下控制效果較差,甚至可能導(dǎo)致任務(wù)失敗?;?刂萍夹g(shù)不需要模型精確參數(shù),對外界干擾具有魯棒性。孫俊松[7]提出了一種終端滑??刂品椒?,提高了海流干擾下AUV 的控制品質(zhì)。韓亞楠[8]提出了一種反步積分滑模相結(jié)合的控制方法,在模型參數(shù)不確定、具有外界干擾的條件下實(shí)現(xiàn)了路徑跟蹤控制?;?刂频娜毕菔窍到y(tǒng)在趨近律引導(dǎo)下可能會頻繁穿越滑模面,導(dǎo)致執(zhí)行機(jī)構(gòu)高頻抖振,影響AUV控制品質(zhì)及使用壽命。
LEVANT 等人[9]提出了一種 Super-Twisting滑??刂评碚?,將符號函數(shù)隱藏在控制律積分項(xiàng)中,一定程度上降低了傳統(tǒng)滑??刂频亩墩瘳F(xiàn)象。黃博倫等人[10]提出了一種基于Super-Twisting 的遙控水下機(jī)器人控制方法,仿真表明了該算法相較于傳統(tǒng)滑模控制器的優(yōu)越性;NERKAR 等[11]設(shè)計(jì)了一種基于Super-Twisting 的滑模干擾觀測器,從而實(shí)現(xiàn)AUV 干擾補(bǔ)償;MANZANILLA 等[12]將Super-Twisting 滑??刂破鲬?yīng)用于四自由度遙控水下機(jī)器人上,并取得了較好的效果。當(dāng)上述研究少有將六自由度欠驅(qū)動(dòng)AUV 作為研究對象,Super-Twisting 滑模理論中由于符號函數(shù)在誤差零點(diǎn)附近所引起的快速變化仍會帶來一定執(zhí)行機(jī)構(gòu)抖振。
本文設(shè)計(jì)了一種改進(jìn)Super-Twisting 滑模控制算法,結(jié)合非線性干擾觀測器,對模型不確定以及外界環(huán)境干擾進(jìn)行了補(bǔ)償,相較于傳統(tǒng) Super-Twisting 控制器,進(jìn)一步降低了控制輸出抖振現(xiàn)象,通過仿真,實(shí)現(xiàn)了環(huán)境干擾條件下的X 舵AUV 高精度控制,證明了所提方法的優(yōu)越性。
AUV 在大地坐標(biāo)系下與艇體坐標(biāo)系下速度關(guān)系如式(1)[13]:
式中:η=[x,y,z,φ,θ,Ψ]T表示大地坐標(biāo)系下AUV位置姿態(tài)矢量,其中,[x,y,z]表示大地坐標(biāo)系下艇體的位置,歐拉角向量[φ,θ,Ψ]描述AUV 姿態(tài);v=[u,v,w,p,q,r]T表示艇體坐標(biāo)系下AUV 廣義速度矢量,[u,v,]w表示艇體坐標(biāo)系下AUV 的線速度,[p,q,r] 表示艇體坐標(biāo)系下艇體的角速度;J(η)為轉(zhuǎn)換矩陣,有:
式中:c?表示cos(?);s?表示sin(?);t?表示tan(?)。
進(jìn)一步考慮海流影響,艇體坐標(biāo)系下海流的速度可以寫為
式中,Uc和Ψc分別是大地坐標(biāo)系下的海流速度大小及方向。艇體坐標(biāo)系下的相對速度為
假設(shè)AUV 在水中受零浮力,考慮海流影響的AUV 縱向動(dòng)力學(xué)模型可以描述為[14]
同理,AUV 剩余5 自由度動(dòng)力學(xué)模型可描述為
式中:m為AUV 質(zhì)量;Cmn為水動(dòng)力系數(shù),C為AUV 六自由度對應(yīng)的水動(dòng)力,下角標(biāo)mn代表對應(yīng)的運(yùn)動(dòng);fr代表動(dòng)力學(xué)模型已知項(xiàng);Dr代表未建模動(dòng)態(tài);τm為對應(yīng)自由度的控制力/力矩,由AUV推進(jìn)器和X 舵產(chǎn)生,此外,有:
式中,Ix、Iy、Iz為繞載體對應(yīng)坐標(biāo)軸的慣性矩,τp、τq和τr均由X 舵產(chǎn)生。
X 型艉舵形式如圖2所示,X 舵分配模型描述了舵角與輸出力矩之間的關(guān)系,如式(5)所示:
圖2 所提控制器框架Fig.2 Architecture of the proposed control method
式中:kδi、mδi、nδi,i=1,…,4為4 個(gè)舵在橫傾、縱傾與回轉(zhuǎn)自由度的水動(dòng)力系數(shù);δi為X 舵的4 個(gè)舵角。
如圖5所示,以AUV 橫搖鎮(zhèn)定控制為例,定義系統(tǒng)的跟蹤誤差為
式中,dφ為期望橫傾角,設(shè)為0。設(shè)計(jì)線性滑模面為
c 為增益,對上式求導(dǎo),有:
由式(1),有:
設(shè)計(jì)高滑模趨近律為
式中:k1,k2為增益;sgn()為符號函數(shù)。將式(7)、(9)、(10)代入式(3)中,得到橫搖自由度基于Super-Twisting 滑??刂破餍问綖?/p>
考慮到AUV 橫搖角度較小,式(1)可改寫為
類似于式(6)–(11)過程,可得到AUV 縱搖、艏搖自由度的高階滑??刂坡蔀?/p>
AUV 還要實(shí)現(xiàn)速度控制,設(shè)計(jì)滑模面為
式中,eu=u-ud為速度誤差。類似于式(6)–(11)過程,可得面向AUV 速度的高階滑??刂坡蔀?/p>
式中,eu=u-ud??刂坡桑?1)、(13)、(15)中包未建模動(dòng)態(tài)可通過后文中的干擾觀測器進(jìn)行補(bǔ)償?;赟uper-Twisting 滑??刂破鞯姆€(wěn)定性分析可參考文獻(xiàn)[15]-[16]。
如控制律式(11)所示,Super-Twisting 控制器將符號函數(shù)寫入積分中,使控制律連續(xù),減輕了傳統(tǒng)滑??刂破髟斐傻妮敵龆墩瘳F(xiàn)象。但當(dāng)sφ趨于0 時(shí),由于符號函數(shù)的影響,控制器仍會在增益1k作用下產(chǎn)生一定控制輸出,導(dǎo)致sφ反復(fù)穿越平面sφ=0,所以形成一定程度的抖振。
Sigmoid 函數(shù)是一種連續(xù)函數(shù),取值范圍為[–1,1],在零點(diǎn)附近變化平緩,在遠(yuǎn)離零點(diǎn)位置性質(zhì)與符號函數(shù)一致。利用Sigmoid 函數(shù)代替符號函數(shù),降低sφ趨于0 時(shí)控制器輸出,從而降低控制輸出抖振,改進(jìn)Super-Twisting 滑??刂破餍问綖?/p>
式中,s ig (k,s)=-2/(1+eks) + 1為sigmoid 函數(shù),k 為增益。如圖 1 所示,對比算子sig (k,s)及sgn (s),可發(fā)現(xiàn)在sφ趨于0 時(shí),sigmoid 函數(shù)算子產(chǎn)生的輸出要小于符號函數(shù),且變化更平滑。
圖1 sig (k,s)和 sgn (s)算子在零點(diǎn)附近輸出Fig.1 Output of function sig (k,s) and sgn(s)near 0
設(shè)計(jì)非線性干擾觀測器對未建模動(dòng)態(tài)進(jìn)行估計(jì)和補(bǔ)償,對應(yīng)4 個(gè)自由度上觀測器形式為
式中:L 為干擾觀測器增益;ξu、ξp、ξq、ξr為輔助變量;、、、為觀測器估計(jì)的模型不確定性與海流共同造成的干擾。
結(jié)合干擾觀測器的改進(jìn)Super-Twisting 滑??刂破餍问綖?/p>
本文通過直接偽逆法計(jì)算X 舵舵角輸出,X舵舵角解算形式為
式中:y為偽逆法輸出的指令舵角;τ=[τp,τq,τr]T為控制器輸出,執(zhí)行機(jī)構(gòu)配置矩陣為式(5)中的:
本文所提控制器框架如圖2所示。
對所提控制方法進(jìn)行仿真分析,所采用的AUV 主體長度2 145 mm,系統(tǒng)主體外徑200 mm,m=49.8 kg,Ix=1.9 kg ?m2,Iy=Iz=1.6 kg ? m2,艉部舵面呈X 舵形式。
仿真中要求AUV 遍歷預(yù)設(shè)的航跡點(diǎn),由于AUV 是一類欠驅(qū)動(dòng)運(yùn)動(dòng)載體,選取視線導(dǎo)航法進(jìn)行運(yùn)動(dòng)學(xué)解算[17-18],仿真中,AUV 初始航速設(shè)為1.5 m/s,期望航速為1.5 m/s。初始點(diǎn)位置為[–8,102,0]m,要求依次遍歷[500,300,15]m,[1 000,300,30]m,[1 500,0,45]m,[1 000,–300,30]m,[500,–300,15]m,[80,0,0]m,海流速度0.2 m/s。對比了Super-Twisting 滑模控制器與本文所提結(jié)合干擾觀測器的改進(jìn)控制器的控制效果。
AUV 在路徑跟蹤過程中,期望速度為2 m/s,LOS 算法實(shí)時(shí)提供期望艏向和期望縱傾,艏向誤差、縱傾誤差以及速度誤差如圖3和圖4所示,誤差RMS 如表1所示。
表1 AUV 路徑跟蹤過程中的控制誤差Table 1 Control error of AUV path tracking
圖3 AUV 姿態(tài)控制誤差Fig.3 AUV attitude control error
圖4 AUV 速度控制誤差Fig.4 AUV speed control error
從圖3和圖4可以看出,所提算法和Super-Twisting 算法在艏向和縱傾誤差上表現(xiàn)接近,在速度誤差上,Super-Twisting 算法誤差明顯較大,且存在明顯振動(dòng)現(xiàn)象。從表1可以看出,由于干擾觀測器的補(bǔ)償作用,所提方法在艏向、縱傾表現(xiàn)上均優(yōu)于 Super-Twisting 算法,優(yōu)于引入的Sigmoid 算子作用,速度誤差遠(yuǎn)遠(yuǎn)優(yōu)于原始Super-Twisting 算法。
AUV 在Z方向、水平面和三維跟蹤軌跡如圖5所示。
圖5 所提方法及Super-Twisting 方法的路徑跟蹤效果Fig.5 Path tracking of the proposed control method and the original Super-Twisting control method
從圖5可以看出,在深度控制方面,2 種算法效果接近,但從圖5(b)、(c)可知,AUV 在遍歷第3 個(gè)路徑點(diǎn)后,Super-Twisting 算法在路徑上有一定的抖動(dòng),而所提算法較好的實(shí)現(xiàn)了全過程的路徑跟蹤。
Super-Twisting 算法和所提算法下X 舵的輸出如圖6和圖7所示。
圖6 Super-Twisting 方法下X 舵輸出Fig.6 Output of X-rudder under the original Super-Twisting control method
圖7 所提方法下X 舵輸出Fig.7 Output of X-rudder under the proposed method
從圖6和圖7可以看出,Super-Twisting 算法出現(xiàn)了較嚴(yán)重的抖振現(xiàn)象,所提算法較好的解決了抖振問題。
本文提出了一種改進(jìn)Super-Twisting 滑??刂扑惴?,改善了傳統(tǒng)滑??刂埔约癝uper-Twisting 滑??刂浦休敵龆墩竦默F(xiàn)象。同時(shí),結(jié)合非線性干擾觀測器,對AUV 實(shí)際試驗(yàn)環(huán)境中模型不確定以及外界環(huán)境干擾進(jìn)行了補(bǔ)償,形成了面向X 舵AUV的路徑跟蹤控制器。結(jié)合LOS 制導(dǎo)律以及X 舵控制分配方法,對所提改進(jìn)算法進(jìn)行了路徑跟蹤控制仿真驗(yàn)證,并與Super-Twisting 滑??刂七M(jìn)行對比,證明了所提方法的在控制精度以及執(zhí)行機(jī)構(gòu)輸出效果方面的優(yōu)越性。