陳 俊 馮 輝 徐海祥 余文瞾
(武漢理工大學(xué)交通學(xué)院1) 武漢 430063) (高性能船舶技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室2) 武漢 430063)
在動力定位的各種工作模式中,循跡控制是指船舶在作業(yè)或航行過程中,沿某一條預(yù)先設(shè)定的路徑以恒定的縱向速度前進(jìn)[1].循跡控制主要應(yīng)用于石油管線的鋪設(shè)與檢修、挖泥船作業(yè)等.循跡過程中預(yù)設(shè)的路徑與時(shí)間無關(guān),是不考慮時(shí)間的幾何位置跟蹤,因此,循跡控制主要分為兩個目標(biāo)[2]:①幾何目標(biāo),保證船舶的位置收斂到幾何路徑上;②運(yùn)動目標(biāo),保證船舶的速度滿足期望要求.
對于船舶循跡控制研究, Encarna??o等[3]利用Serret-Frenet框架,根據(jù)期望曲線重新定義輸出誤差信號,從而將船舶循跡的控制輸出轉(zhuǎn)化為跟蹤誤差與艏向角誤差.Fossen等[4]將LOS引導(dǎo)算法引入到欠驅(qū)動船舶循跡控制問題中,將原先的三自由度跟蹤目標(biāo)轉(zhuǎn)化為二自由度的艏向角與前進(jìn)速度,并設(shè)計(jì)了非線性反饋跟蹤控制器;在之前的LOS算法中,前向距離(lookahead distance)通常設(shè)為常數(shù),而之后文獻(xiàn)[5]又提出了一種改進(jìn)的LOS方法,將前向距離作為時(shí)變參數(shù)處理,并在此基礎(chǔ)上設(shè)計(jì)了滑??刂破鳎瑴p小了循跡過程中的振蕩.Borhaug等[6]針對受流載荷作用的欠驅(qū)動水面船舶,在LOS引導(dǎo)律中加入積分操作抵消外界環(huán)境的干擾,進(jìn)一步減小了橫向偏差.Peymani等[7]基于反步法,在控制器的設(shè)計(jì)中引入關(guān)于橫向偏差的非線性函數(shù),根據(jù)偏差的大小改變循跡的速度. 針對耙吸挖泥船的循跡控制問題,盧佳佳[8]采用LOS引導(dǎo)算法獲取期望的艏向角,對于速度控制采用帶參考前饋的PI控制算法,艏向控制采用自動舵的形式,并在速度控制與艏向控制中增加了參考模型的結(jié)構(gòu),運(yùn)用最小二乘法對模型參數(shù)進(jìn)行最優(yōu)估計(jì);瞿洋等[9]同樣利用LOS引導(dǎo)律來獲得船舶所需的艏向角,而考慮到動態(tài)執(zhí)行機(jī)構(gòu)的飽和、死區(qū)和遲滯等物理限制,將執(zhí)行機(jī)構(gòu)的動態(tài)響應(yīng)方程并入到三自由度操縱數(shù)學(xué)模型中,使控制輸出更加平滑;張愛華等[10]引入平行目標(biāo)接近(CB)導(dǎo)引算法為跟蹤控制生成期望速度矢量信號,并與自適應(yīng)反步控制算法相結(jié)合,得到不受船舶驅(qū)動特性限制的全速度范圍動力定位船舶導(dǎo)引跟蹤控制算法;Liu等[11]針對欠驅(qū)動船舶的循跡控制問題,提出一種改進(jìn)的LOS引導(dǎo)律,根據(jù)橫向偏差和縱向偏差自適應(yīng)地調(diào)整引導(dǎo)律參數(shù),選取路徑切向速度作為虛擬控制輸入,將欠驅(qū)動系統(tǒng)轉(zhuǎn)化成虛擬的全驅(qū)動系統(tǒng),簡化了控制器的設(shè)計(jì).
以上船舶循跡控制,通常將船舶的速度控制從位置和艏向控制中獨(dú)立開來.而循跡過程中如果橫向偏差較大,保持較小的恒定速度將使船舶長時(shí)間偏離預(yù)設(shè)路徑,其首要目標(biāo)——幾何目標(biāo)不能得到滿足.針對這一問題,本文提出一種基于LOS引導(dǎo)律的時(shí)變速度循跡控制,將船舶的位置控制和速度控制同時(shí)考慮到控制器的設(shè)計(jì)當(dāng)中,首先運(yùn)用狀態(tài)反饋法計(jì)算出使船舶橫向偏差最小的加速度,再運(yùn)用反步法計(jì)算出滿足速度要求的加速度,最后利用最小二乘法對船舶的加速度進(jìn)行最優(yōu)估計(jì)并得到最終的控制律,使得船舶在偏離路徑時(shí),能根據(jù)橫向偏差的大小及其變化率調(diào)整速度,而當(dāng)船舶到達(dá)預(yù)設(shè)路徑時(shí),保持預(yù)定的速度前進(jìn).
(1)
(2)
式中:η=[x,y,ψ]T為船舶在固定坐標(biāo)系下的位置和艏向角;ν=[u,υ,r]T為船舶在船體運(yùn)動坐標(biāo)系下的縱向、橫向速度和轉(zhuǎn)艏角速度;R(ψ)為從運(yùn)動坐標(biāo)系到固定坐標(biāo)系的旋轉(zhuǎn)矩陣;MRB為船舶剛體慣性矩陣;MA為附黏水慣性矩陣;D為水動力線性阻尼矩陣;νr∈R3×1為在運(yùn)動坐標(biāo)系下船舶與流的相對速度.νr和ν的關(guān)系可表示為:
νr=ν-R(ψ)Tνc
(3)
(4)
νc=[Vccosβc,Vcsinβc, 0]T
(5)
式中:Vc和βc分別為流速的大小和流向角;τ∈R3×1為作用在船上的推力和力矩.模型中所用到的矩陣的具體形式為
對于船舶的直線循跡控制,通常運(yùn)用LOS引導(dǎo)系統(tǒng)來獲取所需的艏向角.引導(dǎo)系統(tǒng)的作用是在每一時(shí)刻為船舶提供期望的艏向角,將期望的船舶位置映射為期望的艏向角,使得船舶能更平滑地駛向路徑并保持在路徑上.
現(xiàn)考慮一條由路徑點(diǎn)Pk=[xk,yk]T和Pk+1=[xk+1,yk+1]T連接的預(yù)設(shè)直線路徑.LOS引導(dǎo)系見圖1,以Pk為原點(diǎn)建立路徑坐標(biāo)系,其X軸沿PkPk+1方向,Y軸與X軸形成右手坐標(biāo)系,該坐標(biāo)系相對于固定坐標(biāo)系旋轉(zhuǎn)一個固定角度ψk.船舶位置用P=[x,y]T表示,Po為P點(diǎn)在路徑上的投影,Plos=[xlos,ylos]T為每一時(shí)刻船舶在路徑上的期望位置.為了獲取Plos的坐標(biāo),文獻(xiàn)[9]提出了一種基于前向距離的引導(dǎo)算法,即Plos位于Po前方Δ距離處.LOS向量即為由P指向Plos的有向線段,LOS角即為固定坐標(biāo)系的Xo軸與LOS向量所形成的夾角,用ψlos表示.
圖1 LOS引導(dǎo)系統(tǒng)
偏差向量ε=[s,e]T,其中:s為縱向偏差;e為橫向偏差.根據(jù)坐標(biāo)轉(zhuǎn)換關(guān)系,偏差向量可以表示為
ε=J(ψ)T(P-Pk)
(6)
為了減小循跡過程中的振蕩,Δ可選取為時(shí)變的參數(shù):
Δ(e)=(Δmax-Δmin)e-ξ|e|+Δmin
(7)
式中:Δmax和Δmin為與船長LOA有關(guān)的參數(shù);ξ為前向距離的收斂速率.當(dāng)橫向偏差越大時(shí),Δ越小,能獲得較快的轉(zhuǎn)艏速度;而當(dāng)偏差減小時(shí),Δ增大,能夠減小振蕩.
循跡控制的首要目標(biāo)是使船舶趨近于預(yù)設(shè)路徑并保持在路徑上,也就是幾何目標(biāo),需滿足
(8)
為了使船舶更平滑地駛向路徑,船舶的艏向角也需要跟蹤期望的角度,即
(9)
引導(dǎo)系統(tǒng)已經(jīng)為船舶提供了期望的艏向角,令ψd=ψlos,這就表明船舶沿LOS向量向路徑行進(jìn).
對于循跡控制的次要目標(biāo),也就是運(yùn)動目標(biāo),船舶的速度需滿足期望的要求
(10)
(11)
而為了能夠盡可能保證船舶滿足首要目標(biāo),可以適當(dāng)放寬次要目標(biāo)的條件,因此可以設(shè)計(jì)變速循跡控制器以達(dá)到更好的控制效果.
本文提出的基于LOS的變速循跡控制器的設(shè)計(jì)分為兩步.①快速減小橫向偏差,使船舶收斂到預(yù)設(shè)路徑,運(yùn)用狀態(tài)反饋的思想推導(dǎo)出船舶的加速度σe;②為滿足速度及艏向的控制目標(biāo),運(yùn)用反步法計(jì)算出加速度σz,再運(yùn)用最小二乘法,對σe和σz進(jìn)行最優(yōu)估計(jì)并由此得到最終的控制律.
將坐標(biāo)系旋轉(zhuǎn)矩陣R(ψ)按行劃分成
對式(6)進(jìn)行展開得
e=-sinψk(x-xk)+cosψk(y-yk)
(13)
對橫向偏差e求導(dǎo)得
(14)
結(jié)合式(1)和式(14)得
cosψ-υsinψsinψk)+
(usinψ+υcosψcosψk)
(15)
進(jìn)一步化簡得
(16)
為鎮(zhèn)定橫向偏差,定義如下的狀態(tài)變量
(17)
其狀態(tài)空間形式為
(18)
設(shè)計(jì)反饋控制律為
(19)
式中:Ke=[ke1,ke2]T.
展開式(18),得
(20)
(21)
由式(21)可知,期望的加速度使船舶以指數(shù)收斂率趨近于預(yù)設(shè)路徑,船舶的加速度依賴于橫向偏差及其導(dǎo)數(shù),因此可以根據(jù)偏差和偏差的變化率調(diào)整船舶的速度,達(dá)到時(shí)變速度的目標(biāo).
定義艏向角及速度偏差為
z0=ψ-ψd
(22)
z=ν-α=[z1,z2,z3]T
(23)
式中:α=[α1,α2,α3]T為待設(shè)計(jì)的虛擬控制項(xiàng).
對z0求導(dǎo)得到
(24)
定義第一個Lyapounv函數(shù)為
(25)
對V1求導(dǎo)得
(26)
代入(23)式得
(27)
因此虛擬控制量α3可選為
(28)
于是式(27)可以簡化為
(29)
定義第二個Lyapounv函數(shù)為
(30)
對V2求導(dǎo)得:
(31)
如果令
K=diag(k1,k2,k3)>0
(32)
則有
(33)
由式(21)和式(32),船舶的加速度可以表示為
(34)
(35)
由矩陣運(yùn)算可得
Q(γ)TQ(γ)=I3+ρ2(γ)ρ2(γ)T
(36)
而Q(γ)TQ(γ)的逆矩陣是存在的,且
(37)
(38)
結(jié)合船舶運(yùn)動數(shù)學(xué)模型(2),最終的控制律為
rSTR(ψ)Tνr]+D(ν-R(ψ)Tνr)
(39)
為驗(yàn)證所提出方法的有效性,本文以一艘動力定位船為對象,以典型的直線路徑作為期望路徑進(jìn)行仿真分析.船舶的初始位置為η0=[-25 m,20 m,π/4],期望的路徑點(diǎn)為P1=(0,-10),P2=(0,100),即P1P2兩點(diǎn)構(gòu)成的直線與Yo軸重合,期望的循跡速度為ud=0.2 m/s.
仿真中所用的其他參數(shù)建表1~2.
表1 船舶相關(guān)參數(shù)
表2 控制器相關(guān)參數(shù)
圖2a)為船舶實(shí)際的運(yùn)動軌跡,圖2b)~c)為船舶運(yùn)動的艏向角和運(yùn)動速度圖,圖2d)~e)給出了傳統(tǒng)LOS循跡控制與所提出的變速循跡控制的速度對比以及橫向偏差的對比.
圖2 仿真結(jié)果
由圖2a)可知,船舶在控制器的作用下能夠平穩(wěn)地駛向預(yù)設(shè)的直線路徑,在到達(dá)路徑之后能保持在路徑上行駛,完成了循跡控制的目標(biāo).圖2b)表明在仿真開始后的若干個周期內(nèi),時(shí)變的前向距離能夠使船舶的艏向迅速地轉(zhuǎn)到所需角度,而在之后的過程中,隨著橫向偏差的減小,轉(zhuǎn)艏趨于平緩且沒有出現(xiàn)震蕩現(xiàn)象,實(shí)際艏向角也與LOS引導(dǎo)律所需的艏向角保持高度吻合.圖2c)表明在循跡過程的初期,船舶的縱向速度有較明顯的提升,能夠快速地消除橫向偏差,當(dāng)船舶趨近于預(yù)設(shè)的路徑時(shí),速度減小并且能夠保持期望的速度完成循跡控制.而圖2d)~e)通過對不同的控制器可知,在所設(shè)計(jì)的時(shí)變速度控制器作用下,船舶在100s左右就能夠到達(dá)預(yù)設(shè)的路徑,相比于傳統(tǒng)的LOS循跡控制所需時(shí)間大大減少,其首要目標(biāo)——幾何目標(biāo)得到了保證,能夠獲得更好的控制效果.
針對動力定位船舶的循跡控制問題,本文利用LOS引導(dǎo)律來獲取船舶所需的艏向角,為了使得船舶能夠快速地趨近預(yù)設(shè)路徑,運(yùn)用狀態(tài)反饋和反步法分別求出船舶所需的加速度,并利用最小二乘法對加速度進(jìn)行估計(jì),使得船舶能夠根據(jù)橫向偏差的大小以及其變化率調(diào)整循跡速度.仿真結(jié)果表明,本文提出的循跡控制算法能夠達(dá)到更好的控制效果.