陳 俊 馮 輝 徐海祥 余文瞾
(武漢理工大學交通學院1) 武漢 430063) (高性能船舶技術教育部重點實驗室2) 武漢 430063)
在動力定位的各種工作模式中,循跡控制是指船舶在作業或航行過程中,沿某一條預先設定的路徑以恒定的縱向速度前進[1].循跡控制主要應用于石油管線的鋪設與檢修、挖泥船作業等.循跡過程中預設的路徑與時間無關,是不考慮時間的幾何位置跟蹤,因此,循跡控制主要分為兩個目標[2]:①幾何目標,保證船舶的位置收斂到幾何路徑上;②運動目標,保證船舶的速度滿足期望要求.
對于船舶循跡控制研究, Encarna??o等[3]利用Serret-Frenet框架,根據期望曲線重新定義輸出誤差信號,從而將船舶循跡的控制輸出轉化為跟蹤誤差與艏向角誤差.Fossen等[4]將LOS引導算法引入到欠驅動船舶循跡控制問題中,將原先的三自由度跟蹤目標轉化為二自由度的艏向角與前進速度,并設計了非線性反饋跟蹤控制器;在之前的LOS算法中,前向距離(lookahead distance)通常設為常數,而之后文獻[5]又提出了一種改進的LOS方法,將前向距離作為時變參數處理,并在此基礎上設計了滑模控制器,減小了循跡過程中的振蕩.Borhaug等[6]針對受流載荷作用的欠驅動水面船舶,在LOS引導律中加入積分操作抵消外界環境的干擾,進一步減小了橫向偏差.Peymani等[7]基于反步法,在控制器的設計中引入關于橫向偏差的非線性函數,根據偏差的大小改變循跡的速度. 針對耙吸挖泥船的循跡控制問題,盧佳佳[8]采用LOS引導算法獲取期望的艏向角,對于速度控制采用帶參考前饋的PI控制算法,艏向控制采用自動舵的形式,并在速度控制與艏向控制中增加了參考模型的結構,運用最小二乘法對模型參數進行最優估計;瞿洋等[9]同樣利用LOS引導律來獲得船舶所需的艏向角,而考慮到動態執行機構的飽和、死區和遲滯等物理限制,將執行機構的動態響應方程并入到三自由度操縱數學模型中,使控制輸出更加平滑;張愛華等[10]引入平行目標接近(CB)導引算法為跟蹤控制生成期望速度矢量信號,并與自適應反步控制算法相結合,得到不受船舶驅動特性限制的全速度范圍動力定位船舶導引跟蹤控制算法;Liu等[11]針對欠驅動船舶的循跡控制問題,提出一種改進的LOS引導律,根據橫向偏差和縱向偏差自適應地調整引導律參數,選取路徑切向速度作為虛擬控制輸入,將欠驅動系統轉化成虛擬的全驅動系統,簡化了控制器的設計.
以上船舶循跡控制,通常將船舶的速度控制從位置和艏向控制中獨立開來.而循跡過程中如果橫向偏差較大,保持較小的恒定速度將使船舶長時間偏離預設路徑,其首要目標——幾何目標不能得到滿足.針對這一問題,本文提出一種基于LOS引導律的時變速度循跡控制,將船舶的位置控制和速度控制同時考慮到控制器的設計當中,首先運用狀態反饋法計算出使船舶橫向偏差最小的加速度,再運用反步法計算出滿足速度要求的加速度,最后利用最小二乘法對船舶的加速度進行最優估計并得到最終的控制律,使得船舶在偏離路徑時,能根據橫向偏差的大小及其變化率調整速度,而當船舶到達預設路徑時,保持預定的速度前進.

(1)
(2)
式中:η=[x,y,ψ]T為船舶在固定坐標系下的位置和艏向角;ν=[u,υ,r]T為船舶在船體運動坐標系下的縱向、橫向速度和轉艏角速度;R(ψ)為從運動坐標系到固定坐標系的旋轉矩陣;MRB為船舶剛體慣性矩陣;MA為附黏水慣性矩陣;D為水動力線性阻尼矩陣;νr∈R3×1為在運動坐標系下船舶與流的相對速度.νr和ν的關系可表示為:
νr=ν-R(ψ)Tνc
(3)
(4)
νc=[Vccosβc,Vcsinβc, 0]T
(5)
式中:Vc和βc分別為流速的大小和流向角;τ∈R3×1為作用在船上的推力和力矩.模型中所用到的矩陣的具體形式為

對于船舶的直線循跡控制,通常運用LOS引導系統來獲取所需的艏向角.引導系統的作用是在每一時刻為船舶提供期望的艏向角,將期望的船舶位置映射為期望的艏向角,使得船舶能更平滑地駛向路徑并保持在路徑上.
現考慮一條由路徑點Pk=[xk,yk]T和Pk+1=[xk+1,yk+1]T連接的預設直線路徑.LOS引導系見圖1,以Pk為原點建立路徑坐標系,其X軸沿PkPk+1方向,Y軸與X軸形成右手坐標系,該坐標系相對于固定坐標系旋轉一個固定角度ψk.船舶位置用P=[x,y]T表示,Po為P點在路徑上的投影,Plos=[xlos,ylos]T為每一時刻船舶在路徑上的期望位置.為了獲取Plos的坐標,文獻[9]提出了一種基于前向距離的引導算法,即Plos位于Po前方Δ距離處.LOS向量即為由P指向Plos的有向線段,LOS角即為固定坐標系的Xo軸與LOS向量所形成的夾角,用ψlos表示.

圖1 LOS引導系統
偏差向量ε=[s,e]T,其中:s為縱向偏差;e為橫向偏差.根據坐標轉換關系,偏差向量可以表示為
ε=J(ψ)T(P-Pk)
(6)


為了減小循跡過程中的振蕩,Δ可選取為時變的參數:
Δ(e)=(Δmax-Δmin)e-ξ|e|+Δmin
(7)
式中:Δmax和Δmin為與船長LOA有關的參數;ξ為前向距離的收斂速率.當橫向偏差越大時,Δ越小,能獲得較快的轉艏速度;而當偏差減小時,Δ增大,能夠減小振蕩.
循跡控制的首要目標是使船舶趨近于預設路徑并保持在路徑上,也就是幾何目標,需滿足

(8)
為了使船舶更平滑地駛向路徑,船舶的艏向角也需要跟蹤期望的角度,即
(9)
引導系統已經為船舶提供了期望的艏向角,令ψd=ψlos,這就表明船舶沿LOS向量向路徑行進.
對于循跡控制的次要目標,也就是運動目標,船舶的速度需滿足期望的要求
(10)

(11)
而為了能夠盡可能保證船舶滿足首要目標,可以適當放寬次要目標的條件,因此可以設計變速循跡控制器以達到更好的控制效果.
本文提出的基于LOS的變速循跡控制器的設計分為兩步.①快速減小橫向偏差,使船舶收斂到預設路徑,運用狀態反饋的思想推導出船舶的加速度σe;②為滿足速度及艏向的控制目標,運用反步法計算出加速度σz,再運用最小二乘法,對σe和σz進行最優估計并由此得到最終的控制律.
將坐標系旋轉矩陣R(ψ)按行劃分成
對式(6)進行展開得
e=-sinψk(x-xk)+cosψk(y-yk)
(13)
對橫向偏差e求導得
(14)
結合式(1)和式(14)得

cosψ-υsinψsinψk)+
(usinψ+υcosψcosψk)
(15)
進一步化簡得
(16)

為鎮定橫向偏差,定義如下的狀態變量
(17)
其狀態空間形式為
(18)

設計反饋控制律為
(19)
式中:Ke=[ke1,ke2]T.
展開式(18),得
(20)

(21)
由式(21)可知,期望的加速度使船舶以指數收斂率趨近于預設路徑,船舶的加速度依賴于橫向偏差及其導數,因此可以根據偏差和偏差的變化率調整船舶的速度,達到時變速度的目標.
定義艏向角及速度偏差為
z0=ψ-ψd
(22)
z=ν-α=[z1,z2,z3]T
(23)
式中:α=[α1,α2,α3]T為待設計的虛擬控制項.
對z0求導得到
(24)
定義第一個Lyapounv函數為
(25)
對V1求導得
(26)
代入(23)式得
(27)
因此虛擬控制量α3可選為
(28)
于是式(27)可以簡化為
(29)
定義第二個Lyapounv函數為
(30)
對V2求導得:
(31)
如果令
K=diag(k1,k2,k3)>0
(32)
則有
(33)

由式(21)和式(32),船舶的加速度可以表示為

(34)

(35)

由矩陣運算可得
Q(γ)TQ(γ)=I3+ρ2(γ)ρ2(γ)T
(36)
而Q(γ)TQ(γ)的逆矩陣是存在的,且
(37)


(38)
結合船舶運動數學模型(2),最終的控制律為
rSTR(ψ)Tνr]+D(ν-R(ψ)Tνr)
(39)
為驗證所提出方法的有效性,本文以一艘動力定位船為對象,以典型的直線路徑作為期望路徑進行仿真分析.船舶的初始位置為η0=[-25 m,20 m,π/4],期望的路徑點為P1=(0,-10),P2=(0,100),即P1P2兩點構成的直線與Yo軸重合,期望的循跡速度為ud=0.2 m/s.
仿真中所用的其他參數建表1~2.

表1 船舶相關參數

表2 控制器相關參數
圖2a)為船舶實際的運動軌跡,圖2b)~c)為船舶運動的艏向角和運動速度圖,圖2d)~e)給出了傳統LOS循跡控制與所提出的變速循跡控制的速度對比以及橫向偏差的對比.

圖2 仿真結果
由圖2a)可知,船舶在控制器的作用下能夠平穩地駛向預設的直線路徑,在到達路徑之后能保持在路徑上行駛,完成了循跡控制的目標.圖2b)表明在仿真開始后的若干個周期內,時變的前向距離能夠使船舶的艏向迅速地轉到所需角度,而在之后的過程中,隨著橫向偏差的減小,轉艏趨于平緩且沒有出現震蕩現象,實際艏向角也與LOS引導律所需的艏向角保持高度吻合.圖2c)表明在循跡過程的初期,船舶的縱向速度有較明顯的提升,能夠快速地消除橫向偏差,當船舶趨近于預設的路徑時,速度減小并且能夠保持期望的速度完成循跡控制.而圖2d)~e)通過對不同的控制器可知,在所設計的時變速度控制器作用下,船舶在100s左右就能夠到達預設的路徑,相比于傳統的LOS循跡控制所需時間大大減少,其首要目標——幾何目標得到了保證,能夠獲得更好的控制效果.
針對動力定位船舶的循跡控制問題,本文利用LOS引導律來獲取船舶所需的艏向角,為了使得船舶能夠快速地趨近預設路徑,運用狀態反饋和反步法分別求出船舶所需的加速度,并利用最小二乘法對加速度進行估計,使得船舶能夠根據橫向偏差的大小以及其變化率調整循跡速度.仿真結果表明,本文提出的循跡控制算法能夠達到更好的控制效果.