駱福宇,曾江峰,艾寧
(中國船舶工業(yè)系統(tǒng)工程研究院,北京 100094)
水面無人艇(USV)具有體積小、機動性強、作業(yè)效率高等優(yōu)點,在軍事和民用領域得到了廣泛應用[1-4]。USV為了精確地完成一些復雜任務,如特定線路的自主航行、預設區(qū)域的掃描測繪等,都需要執(zhí)行航跡跟蹤控制操作。然而,常規(guī)的USV具有欠驅動特性,而且復雜的海洋環(huán)境極大地影響著USV的操縱性,這些都為實現(xiàn)精確的航跡跟蹤控制提出了挑戰(zhàn)。
通常,USV只需要實現(xiàn)平穩(wěn)的線性航跡跟蹤即可滿足一般的工程應用需求[5]。具體做法是,提前設定一系列航路點并進行分段線性插值,得到一條由直線路徑單元組成的復合線性航跡,然后控制USV進行分段直線航跡跟蹤。而在航路點轉折處,通過設定可接受圓半徑完成航跡單元的切換。線性航跡跟蹤簡單、易于實現(xiàn),但無法保證每個航路點的可達性,而且航跡單元切換處參考艏向角的驟變又會使航跡跟蹤控制精度嚴重受損,無法滿足高品質的航跡跟蹤控制要求。Serret-Frenet坐標系的提出為實現(xiàn)USV的曲線航跡跟蹤提供了解決思路,但大多數(shù)學者仍局限于具有典型數(shù)學形式的曲線航跡跟蹤控制研究[6-8],關于由給定航路點生成任意曲線參考航跡的問題卻少有人提及。根據(jù)預設點進行曲線擬合可以采用樣條插值技術,常用的插值方法有B樣條插值、自然樣條插值等[9-10]。B樣條插值擬合出的曲線并不通過所有插值點;自然樣條插值可以擬合出通過所有插值點的光滑曲線但不具備局部控制能力,改變某一個插值點將會影響到整條插值曲線。航跡跟蹤控制系統(tǒng)的另外兩個重要組成部分是制導律和控制器[11]。視線(LOS)法是一種有效的制導策略,已經(jīng)普遍應用于USV的航跡跟蹤控制中[5,12]。文獻[13]考慮環(huán)境干擾力的影響,提出了積分LOS制導方式,但著眼于解決線性航跡跟蹤問題。對于控制器問題,常用方法是分別設計PID控制器進行航向和航速控制。也有學者采用反步法或徑向基神經(jīng)網(wǎng)絡(RBFNN)等控制方式[7-8,14],但反步法過于依賴USV的精確數(shù)學模型,傳統(tǒng)RBFNN為了保證較高的逼近精度往往需要設置大量網(wǎng)絡節(jié)點,從而導致在線自適應參數(shù)過多而計算量過大、實時性較差。
基于以上分析,本文研究一類欠驅動USV的非線性航跡跟蹤控制問題,旨在提高航跡跟蹤控制的精度和品質。首先根據(jù)預設航路點采用單調3次埃爾米特樣條插值(CHSI)技術進行航跡擬合,獲得一條通過所有航路點且具有保形能力的非線性曲線航跡;然后在Serret-Frenet坐標系框架下,設計考慮航跡曲率影響的自適應LOS制導律以及基于最小學習參數(shù)思想的RBFNN動力學控制器。與傳統(tǒng)RBFNN相比,本文中每個神經(jīng)網(wǎng)絡的自適應學習參數(shù)只有1個,而與網(wǎng)絡節(jié)點數(shù)無關,能夠有效地減輕網(wǎng)絡計算負擔。通過穩(wěn)定性分析證明了系統(tǒng)的一致最終有界性,并通過仿真實例驗證了所提出控制方案的有效性。
欠驅動USV的水平面3自由度運動數(shù)學模型可以表示[10,15]為
(1)
式中:x、y、ψ分別為USV在大地坐標系{E}下的縱向位置、橫向位置和艏向角;u、v、r分別為USV在艇體坐標系{B}下的前進速度、橫向速度和艏搖角速度;τu、τr分別為施加于USV艇體上的控制力、控制力矩;duE、dvE分別為作用于USV 2個自由度u、v上的環(huán)境干擾力,drE為作用于USV自由度γ上的干擾力矩;Fu(v,r)、X(u)、Y(u)、Fr(u,v,r)均為未知非線性函數(shù),
(2)
正常量m11、m22、m23、m33、d11、d22、d23、d32、d33表示USV的模型參數(shù),分別描述USV的質量、附加質量和水動力阻尼。本文假設USV的模型具有任意不確定性,因此模型參數(shù)以及非線性函數(shù)項的結構完全未知。
為了便于控制器的設計與分析,本文引入以下假設與引理。
假設2USV的橫向速度v具有一致耗散有界性[16]。
假設3USV的艏向控制器能夠實現(xiàn)對期望艏向角的精確跟蹤[17]。
需要指出的是,對于通常的USV等水面船舶,假設1和假設2總是成立的。環(huán)境干擾力主要由風、浪和流等引起,在很大程度上歸因于外部效應,具有有限能量,因此是有界的。文獻[16]針對典型的船舶橫向動力學模型,對橫向速度v的有界性已經(jīng)給出了系統(tǒng)性分析和證明。引入假設3的主要目的是便于分析USV的航跡跟蹤誤差,假設3可以通過調整USV的艏向控制器參數(shù)來保證。
引理1[18]RBFNN能夠在緊集ΩZ∈Rn(n為正整數(shù))中逼近任意的光滑、連續(xù)函數(shù)f(Z),即
f(Z)=W*TH(Z)+ε,?Z∈ΩZ,
(3)
(4)
W=[w1,w2,…,wl]T∈Rl為RBFNN的權值向量,l為節(jié)點數(shù);H(Z)=[h1(Z),h2(Z),…,hl(Z)]T∈Rl為基函數(shù)向量?;瘮?shù)的形式有多種,一般選擇高斯函數(shù),其形式為
(5)
式中:bj為基函數(shù)寬度,j=1,2,…,l;cj=[cj1,cj2,…,cjn]T∈Rn為基函數(shù)中心。
USV的非線性航跡跟蹤控制目標可以描述為:根據(jù)規(guī)劃系統(tǒng)提供的航路點信息,通過插值算法擬合出一條光滑、連續(xù)的非線性曲線參考航跡,并設計相應的制導律和控制器,使USV能夠以一定的航速到達并保持在期望航跡之上。
為了生成經(jīng)過預設航路點的非線性曲線參考航跡,本文采用如下單調CHSI方法進行擬合。
考慮在區(qū)間I=[a,b]上存在的n個控制點a=q1 p(qt)=ft,t=1,2,…,n, (6) 式中:p(q)具有單調性,且在每個子區(qū)間It=[qt,qt+1]上均是一個3次多項式,其形式[19]為 p(q)=ftH1(q)+ft+1H2(q)+dsH3(q)+ds+1H4(q), (7) 其中,ds=p′(qs)為第s=t或s=t+1個控制點處對應的1階微分值,H1(q)、H2(q)、H3(q)和H4(q)為子區(qū)間It上的3次埃爾米特基函數(shù),即 H1(q)=ζ[(qt+1-q)/ht],H2(q)=ζ[(q-qt)/ht], (8) ht=qt+1-qt,ζ(ω)=3ω2-2ω2,η=ω3-ω2,ω為曲線參數(shù)。為保證單調性,控制點處的斜率通過如下方式計算: 定義δt=(ft+1-ft)/ht為子區(qū)間It的分段線性插值斜率,如果δt和δt-1符號相反或其中有1個為0,則xt為函數(shù)的局部極小或極大點,此時可以取dt=0;如果δt和δt-1符號相同且所對應的子區(qū)間長度也相等,則dt的計算公方式為 (9) 如果δt和δt-1符號相同且兩個子區(qū)間長度不相等,則dt的計算公式為 (10) 式中:ω1=2ht+ht-1;ω2=ht+2ht-1. 將單調CHSI算法用于非線性航跡擬合時,需要另外引入獨立變量θ來描述曲線方程。此時,針對定義在笛卡爾坐標系中的一系列航路點坐標P1(x1,y1),…,Pk(xk,yk),…,Pn(xn,yn),k=1,…,n,則通過相鄰2個航路點Pk(xk,yk)和Pk+1(xk+1,yk+1)的3次多項式可以插值為 xd(θ)=cx0+cx1(θ-θk)+cx2(θ-θk)2+cx3(θ-θk)3, (11) 式中: (12) 單調CHSI具有很好的形狀塑造和保持能力,能夠有效地避免航跡曲線在2個連續(xù)航路點之間出現(xiàn)搖擺和曲折問題,而且新增加的航路點對整條航跡的影響較小,能更好地滿足USV航跡跟蹤控制中航路點實時變化的需要。 采用單調CHSI算法和常用的自然樣條插值(NSI)算法對5個航路點進行航跡擬合的實例對比,結果如圖1所示。由圖1可以看到,CHSI算法能夠擬合出更優(yōu)良的參考航跡,而且改變最后1個航路點幾乎不會對前面已生成的航跡曲線形狀產(chǎn)生影響,從而為實現(xiàn)USV準確、高效的航跡跟蹤控制奠定了基礎。 圖1 航跡擬合對比Fig.1 Path fitting 在大地坐標系{E}中建立如圖2所示的局部Serret-Frenet參考坐標系{f},并定義坐標系{f}下的縱向和橫向航跡跟蹤誤差分別為 xe=x-xd(θ),ye=y-yd(θ), (13) 則USV的航跡跟蹤誤差運動學方程可以表示[7]為 (14) 圖2 Serret-Frenet參考坐標系Fig.2 Serret-Frenet reference frame 為了消除航跡跟蹤位置誤差xe和ye,本文提出如下自適應LOS制導律: (15) 式中:ψd為USV的期望艏向角;yint為關于橫向跟蹤誤差的積分項,且滿足|yint|≤ymax;Δ=(Δmax-Δmin)e-kc|c(θ)|+Δmin為前視距離,Δmax、Δmin分別為設計的最大和最小前視距離,kc>0為設計參數(shù),c(θ)=dχP(θ)/dθ為參考目標點處的航跡曲率;k1>0為積分增益。 與傳統(tǒng)USV的期望艏向角制導相比,本文設計的制導律更靈活,能夠為USV提供一個隨航跡曲率和環(huán)境干擾力變化的自適應視線角。曲率的引入使得USV在航跡曲線平坦處平緩地趨向期望航跡,而在陡峭處激進地改變航向,更符合USV的實際操舵思想;非0積分項的引入旨在增強USV抵抗環(huán)境漂移力的能力,提高航跡跟蹤控制精度。 Serret-Frenet坐標系下的航跡跟蹤控制需要將參考目標點與USV的運動聯(lián)系起來。本文將參考目標點的線速度設計如下: (16) 式中:k2>0為設計參數(shù)。則對應的航跡曲線參數(shù)更新律可以設計為 (17) 定義如下Lyapunov函數(shù): (18) (19) (20) 則給定任意的σ>0,對所有的|ye|≤σ,有 (21) 定義USV的艏向角跟蹤誤差為 ψe=ψ-ψd, (22) 對(22)式求導,可得 (23) 則虛擬控制律αr可以設計為 (24) 定義艏向角速度跟蹤誤差為 re=r-αr, (25) 對(25)式求導,并結合USV的動力學方程,可得 (26) 定義函數(shù)Φr(Zr)=Fr(u,v,r),其中Zr=[u,v,r]T。由于Φr(Zr)為未知非線性函數(shù),本文采用RBFNN對其進行逼近,則(26)式可進一步寫為 (27) (28) 式中:kr>0為設計參數(shù);r為正常量的估計值,為理想權值范數(shù)。則將(28)式代入(27)式,可得 (29) 則神經(jīng)網(wǎng)絡自適應參數(shù)更新律設計為 (30) 式中:ηr、κr為正的設計參數(shù),則USV的艏向跟蹤誤差動力學可以描述為 (31) 定義USV的縱向速度跟蹤誤差為 ue=u-ud, (32) 式中:ud為期望縱向速度大小,通常為定值。對(32)式求導,并結合USV的動力學方程,可得 (33) 定義Φu(Zu)=Fu(v,r)-d11u/m11,其中Zu=[u,v,r]T。由于Φu(u,v,r)為未知非線性函數(shù),采用RBFNN對其進行逼近,則(33)式可進一步寫為 (34) (35) 式中:ku>0為設計參數(shù);u為未知正常量的估計值,為理想權值向量的范數(shù)。則將(35)式代入(34)式,可得 (36) 則神經(jīng)網(wǎng)絡自適應參數(shù)更新律設計為 (37) 式中:ηu、κu為正的設計參數(shù),則USV的縱向速度跟蹤誤差動力學可以描述為 (38) 定理1考慮(1)式、(2)式所示的欠驅動USV系統(tǒng),在假設1~假設3滿足的條件下,設計如(15)式所示的制導律以及(28)式和(35)式所示的控制律,構建在線學習參數(shù)為(30)式和(37)式所示的自適應RBFNN,則航跡跟蹤控制系統(tǒng)的所有信號一致最終有界。 證明選擇如下Lyapunov函數(shù): (39) 對(39)式求導,并代入(31)式和(38)式,可得 (40) 對(40)式進行不等式放縮[20]并進行整理,可得 (41) 式中:μ、λi和ρi為正常量。 為了分析閉環(huán)控制系統(tǒng)的穩(wěn)定性,定義如下Lyapunov函數(shù): V=V1+V2, (42) 對(42)式求導,并考慮(21)式、(41)式,可得 (43) 其中,φ和ξ為正常量,分別定義為 (44) (45) 由此可見,如果控制參數(shù)滿足以下條件: (46) 采用文獻[21]中的USV模型進行仿真對比研究,該USV質量為15 kg,艇長為1.25 m.其中,由風、浪和流等引起的環(huán)境干擾力假定由下列1階Gauss-Markov過程生成[22]: (47) 式中:cu、cv、cr為設計參數(shù);wu、wv、wr為高斯白噪聲。 實例1為了驗證本文提出的自適應LOS制導律和神經(jīng)網(wǎng)絡控制器的有效性及優(yōu)越性,增加傳統(tǒng)LOS制導律和PID控制器設計。以LOS+NN、ALOS+NN、ALOS+PID分別表示采用傳統(tǒng)LOS加神經(jīng)網(wǎng)絡控制、自適應LOS加神經(jīng)網(wǎng)絡控制、自適應LOS加PID控制3種航跡跟蹤控制方案,進行對比分析研究。航跡跟蹤控制目標為控制USV跟蹤由4個航路點通過CHSI擬合得到的一條S形非線性曲線航跡,預設航路點坐標為 P1=(20 m,20 m),P2=(40 m,50 m), (48) 圖3 基于4個航路點的航跡跟蹤控制結果對比Fig.3 Path tracking control results based on 4 way-points 圖3中的線性航跡為分段線性插值結果,非線性航跡為本文CHSI擬合結果,橙色船行圖為USV基于本文所提ALOS+NN控制方案在航跡跟蹤過程中位置和艏向變化情況的直觀顯示。由圖3可以看到,3種控制方案都成功地實現(xiàn)了對非線性曲線航跡的跟蹤,但3種控制方案的跟蹤效果仍然存在一些差異,如圖3中的兩個局部放大圖所示。圖3左上角的局部放大圖為3種控制方案在第3個航路點處的跟蹤細節(jié),可以看出LOS+NN控制方案的跟蹤效果較差,而ALOS+NN和ALOS+PID控制方案的跟蹤效果較好而且效果幾乎完全相同。這主要是因為第3個航路點處的航跡曲率變化較大,而本文所提自適應LOS在制導律設計中考慮了航跡曲率因素,能夠在航跡曲率變化較大處為USV提供一個較小的前視距離,以激進地改變航向從而保證較高的跟蹤精度。圖3右側的局部放大圖為3種控制方案在第3個航路點至第4個航路點之間穩(wěn)定階段的跟蹤細節(jié),可以看出采用神經(jīng)網(wǎng)絡控制的LOS+NN和ALOS+NN控制方案相對于采用PID控制的ALOS+PID控制方案,具有較高的收斂精度,體現(xiàn)了本文設計的神經(jīng)網(wǎng)絡控制器的優(yōu)越性。 實例2為了充分測試本文所提航跡擬合和航跡跟蹤控制方案的性能,并分析控制系統(tǒng)誤差信號的收斂性,選擇一條由10個航路點擬合得到的8字型曲線航跡進行仿真對比研究,預設航路點的具體坐標為 P1=(60.00 m,0 m),P2=(40.45 m,47.55 m), (49) 圖4 基于10個航路點的航跡跟蹤控制結果對比Fig.4 Path tracking control results based on 10 way-points 圖4描繪了采用2種控制方案的航跡跟蹤控制結果對比。從圖4中可以看到,相比于傳統(tǒng)的LOS+PID控制方案,ALOS+NN控制方案能夠使USV在初始橫向位置跟蹤誤差較大時快速地趨向期望航跡,而在大曲率處以及穩(wěn)定之后具有較高的跟蹤控制精度,體現(xiàn)了本文所提控制方案的優(yōu)越性。圖5給出了2種控制方案在航跡跟蹤過程中的位置跟蹤誤差收斂情況。從圖5中可以看出,基于ALOS+NN控制方案的位置跟蹤誤差具有較快的收斂速度,而且在航跡曲線陡峭處能夠明顯降低抖振,具有較強的航跡保持能力。 圖5 位置跟蹤控制結果對比Fig.5 Position tracking control results 圖6 艏向角跟蹤控制結果對比Fig.6 Comparison of heading angle tracking control results 圖7 速度控制結果對比Fig.7 Comparison of velocity control results 圖6為航跡跟蹤過程中的艏向角跟蹤情況對比。由圖6可見,本文所提ALOS+NN控制方案在艏向角跟蹤方面也具有明顯優(yōu)勢。值得注意的是,由于2種控制方案在收斂速度方面存在差異,對應的期望艏向角在演繹過程中存在相位的偏差。圖7給出了2種方案在航跡跟蹤過程中的USV艏向角速度和縱向速度誤差變化情況。由圖7可以看到,受環(huán)境干擾力的影響,艏向角速度和縱向速度均不可避免地出現(xiàn)了振蕩,而且艏向角速度對航跡的變化更敏感。雖然2種方案都能使速度偏差穩(wěn)定在0值附近,但采用本文控制方案的跟蹤誤差振動幅度更小、收斂性更好,由此證明了本文設計的自適應神經(jīng)網(wǎng)絡控制器具有較強的魯棒性。 圖8 艏向角跟蹤控制結果對比Fig.8 Comparison of heading angle tracking control results 圖9 控制輸入Fig.9 Control input 圖8為本文所提RBFNN控制器的自適應參數(shù)變化情況。由圖8可以看到,穩(wěn)定之后的自適應參數(shù)能夠隨航跡曲率以及環(huán)境干擾力的變化及時更新,保證具有較好的控制效果。由于本文引入了最小學習參數(shù)思想對神經(jīng)網(wǎng)絡的結構進行了優(yōu)化,使得每個神經(jīng)網(wǎng)絡只含有1個在線學習參數(shù),有效地減輕了網(wǎng)絡的計算負載。圖9給出了本文提出的控制方法在航跡跟蹤控制過程中控制力矩和控制力的變化情況,可以看到,二者均穩(wěn)定在一定的合理范圍之內(nèi)。 本文針對USV的非線性航跡跟蹤控制問題進行研究,提出了一種基于CHSI航跡擬合和RBFNN控制的解決方法。CHSI能夠根據(jù)預設航路點擬合出一條光滑且具有保形特性的非線性參考航跡,為實現(xiàn)USV的高品質航跡跟蹤提供了保障。此外,考慮非線性航跡的曲率因素設計了自適應LOS制導律,并針對USV的模型不確定性及環(huán)境干擾力問題開發(fā)了基于最小學習參數(shù)思想的RBFNN動力學控制器。所提出的控制策略能夠有效地改善USV航跡跟蹤控制的精度和品質問題,且具有魯棒性強、運算負載小等優(yōu)點。最后基于Lyapunov理論分析了系統(tǒng)的穩(wěn)定性,并開展了仿真對比實例,驗證了所提方法的有效性及優(yōu)越性。 下一步工作將研究考慮避障需求的航跡擬合方法,并開展實艇實驗,對本文所提算法進行驗證。
H3(q)=-htη[(qt+1-q)/ht],
H4(q)=htη[(q-qt)/ht],
yd(θ)=cy0+cy1(θ-θk)+cy2(θ-θk)2+cy3(θ-θk)3,3 航跡跟蹤控制
3.1 自適應LOS制導
3.2 艏向控制器
3.3 縱向速度控制器
4 穩(wěn)定性分析
5 仿真實例
P3=(70 m,40 m),P4=(100 m,120 m).
P3=(15.45 m,29.35 m),
P4=(-15.45 m,-29.35 m),
P5=(-40.45 m,-47.55 m),
P6=(-60.00 m,-1.25 m),
P7=(-40.45 m,47.55 m),
P8=(-15.45 m,29.35 m),
P9=(15.45 m,-29.35 m),
P10=(40.45 m,-47.55 m).6 結論