本發(fā)明涉及動力定位船舶的控制領(lǐng)域,尤其是涉及一種動力定位船舶跟蹤的導(dǎo)引控制方法。
背景技術(shù):
動力定位船舶跟蹤控制一般包括路徑跟蹤和目標(biāo)跟蹤兩種任務(wù),路徑跟蹤指控制船舶跟蹤一條給定的直線或曲線路徑,目標(biāo)跟蹤指控制船舶跟蹤一個給定的目標(biāo)物。跟蹤控制是動力定位船舶的主要功能之一,也是動力定位系統(tǒng)的重要組成部分,廣泛應(yīng)用于海洋作業(yè)和海上運輸。動力定位船舶可以通過調(diào)節(jié)推進(jìn)器來獨立地控制其縱向、橫向和艏向的運動狀態(tài),屬于全驅(qū)動的控制系統(tǒng),研究人員一般通過設(shè)計線性或非線性控制算法解決跟蹤控制問題。但是當(dāng)船舶的運動速度提高時,其慣性增加,非線性和不確定性加強(qiáng),增加了跟蹤過程的調(diào)節(jié)難度,傳統(tǒng)的跟蹤控制方法不容易得到良好的跟蹤控制效果。因此,品質(zhì)良好的跟蹤控制算法成為當(dāng)今船舶運動控制研究中的熱點。
動力定位船舶的控制系統(tǒng)由導(dǎo)航系統(tǒng)、導(dǎo)引策略和控制算法三部分組成,其中導(dǎo)引策略可以為控制器提供期望速度、位置等輸入信息,控制算法根據(jù)這些信息計算控制指令,可見導(dǎo)引算法對控制系統(tǒng)的品質(zhì)具有重要影響。所以為了保證控制的精度、魯棒性和過程品質(zhì),將導(dǎo)引算法引入到控制器設(shè)計中來,改善動力定位船舶的跟蹤控制性能,使之更適合工程應(yīng)用必不可少。
多年以來,關(guān)于動力定位船舶跟蹤控制的文獻(xiàn)層出不窮,但考慮工程實踐的文獻(xiàn)并不多。挪威理工大學(xué)的fossen教授和他的團(tuán)隊在文獻(xiàn)《handbookofmarinecrafthydrodynamicsandmotioncontrol》(johnwiley&sonsltd,2011)中寬泛地介紹了近年來對動力定位船舶的研究成果,包括先進(jìn)導(dǎo)引策略的原理和控制算法的原理,以及動力定位系統(tǒng)其他方面的相關(guān)內(nèi)容。哈爾濱工程大學(xué)的邊信黔、付明玉、王元慧教授在其著作《船舶動力定位》(科學(xué)出版社,2011)中給出了跟蹤控制問題在工程實踐中的方法的概略性介紹。哈爾濱工程大學(xué)研制的動力定位產(chǎn)品也實現(xiàn)了高速循跡功能,但沒有相關(guān)文獻(xiàn)進(jìn)行介紹。mortenbreivik在他的博士論文《topicsinguidedmotioncontrolofmarinevehicles》(2010)討論了導(dǎo)引算法的重要性,系統(tǒng)地引入了導(dǎo)彈控制中使用廣泛的視線、追擊、平行目標(biāo)接近等算法為船舶設(shè)計導(dǎo)引策略,但并未提及如何設(shè)計平行目標(biāo)接近導(dǎo)引與控制算法的結(jié)合問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是針對上述問題提供一種動力定位船舶跟蹤的導(dǎo)引控制方法。
本發(fā)明的目的可以通過以下技術(shù)方案來實現(xiàn):
一種動力定位船舶跟蹤的導(dǎo)引控制方法,所述方法包括下列步驟:
1)建立動力定位船舶的數(shù)學(xué)模型;
2)根據(jù)動力定位船舶的數(shù)學(xué)模型,結(jié)合積分平行目標(biāo)導(dǎo)引算法,得到動力定位船舶的期望速度vd(t);
3)根據(jù)步驟2)得到的動力定位船舶的期望速度vd(t),結(jié)合積分滑??刂品椒ǎ嬎愕玫絼恿Χㄎ淮暗膶?dǎo)引控制命令τ*;
4)根據(jù)步驟3)得到的動力定位船舶的導(dǎo)引控制命令,結(jié)合步驟1)建立的動力定位船舶的數(shù)學(xué)模型,計算得到動力定位船舶的數(shù)學(xué)模型的位置和速度;
5)判斷動力定位船舶是否結(jié)束跟蹤,若是則結(jié)束計算,若否則返回步驟2)。
所述步驟2)具體為:
21)通過虛擬質(zhì)點表示根據(jù)跟蹤任務(wù)計算得到的當(dāng)前被跟蹤位置,得到動力定位船舶與虛擬質(zhì)點之間的位置偏差向量
22)根據(jù)步驟21)得到的位置偏差向量
23)根據(jù)步驟22)得到的動力定位船舶沿視線方向與虛擬質(zhì)點的接近速度va(t),結(jié)合積分平行目標(biāo)導(dǎo)引算法,計算得到動力定位船舶的期望速度vd(t)。
所述動力定位船舶沿視線方向與虛擬質(zhì)點的接近速度va(t)具體為:
其中,ua,max(t)為向虛擬質(zhì)點方向最大接近速度的參數(shù),
所述動力定位船舶的期望速度vd(t),具體為:
其中,vt(t)為虛擬質(zhì)點的運動速度,k1為設(shè)計參數(shù),vep(t)為動力定位船舶的跟蹤速度誤差。
所述步驟1)具體為:
11)在大地坐標(biāo)系和船體坐標(biāo)系中建立動力定位船舶的三自由度數(shù)學(xué)模型;
12)根據(jù)步驟11)建立的三自由度數(shù)學(xué)模型,通過坐標(biāo)變換得到大地坐標(biāo)系中動力定位船舶的數(shù)學(xué)模型。
所述動力定位船舶的三自由度數(shù)學(xué)模型具體為:
其中,η為動力定位船舶在大地坐標(biāo)系中的位置和艏向向量,v為動力定位船舶在船體坐標(biāo)系中的線速度和角速度向量,τ為推進(jìn)器產(chǎn)生的力和力矩向量,j(ψ)為船體坐標(biāo)系到大地坐標(biāo)系的轉(zhuǎn)換矩陣,m為動力定位船舶的慣性矩陣,d(v)為動力定位船舶的水動力阻尼項,c(v)為科里奧利向心力矩陣,δτ為環(huán)境干擾的不確定項。
所述步驟3)具體為:
31)根據(jù)步驟2)得到的動力定位船舶的期望速度vd(t),計算得到大地坐標(biāo)系中動力定位船舶的速度和角速度的偏差向量νe(t);
32)根據(jù)步驟31)得到的偏差向量,得到滑模面函數(shù)sn;
33)根據(jù)步驟32)得到的滑模面函數(shù),選擇李雅普諾夫候選函數(shù)vn;
34)對步驟33)得到的李雅普諾夫候選函數(shù)vn求導(dǎo),得到導(dǎo)引控制器作為動力定位船舶的導(dǎo)引控制命令τ*。
所述大地坐標(biāo)系中動力定位船舶的速度和角速度的偏差向量νe(t)具體為:
ve(t)=vd*(t)-vη(t)
其中,vd*(t)的前兩項為步驟2)得到的動力定位船舶的期望速度vd(t),第三項為期望艏向角速度0,vη(t)為大地坐標(biāo)系中動力船舶的當(dāng)前速度向量。
所述步驟4)具體為:
41)將步驟3)得到的動力定位船舶的導(dǎo)引控制命令τ*,轉(zhuǎn)換為動力定位船舶的數(shù)學(xué)模型中的參數(shù)τ,具體為:
τ=j(luò)-1(ψ)τ*
其中,j(ψ)為船體坐標(biāo)系到大地坐標(biāo)系的轉(zhuǎn)換矩陣;
42)將步驟41)計算得到的參數(shù)τ,代入至動力定位船舶的數(shù)學(xué)模型中,計算得到動力定位船舶的數(shù)學(xué)模型的位置和速度。
所述步驟5)具體為:根據(jù)步驟4)得到的動力定位船舶的數(shù)學(xué)模型的位置,判斷動力定位船舶是否到達(dá)跟蹤路徑的終點或與接觸到跟蹤目標(biāo),若是則結(jié)束計算,若否則返回步驟2)。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
(1)本發(fā)明通過將積分平行目標(biāo)導(dǎo)引算法作為跟蹤控制方法的導(dǎo)引策略,為控制算法提供動力定位船舶實時期望速度指令,將平行目標(biāo)接近導(dǎo)引算法完美的與動力定位船舶跟蹤控制結(jié)合,可以解決慣性增大時傳統(tǒng)的控制算法不易于得到良好的跟蹤控制效果的問題。
(2)通過積分滑??刂扑惴?,結(jié)合通過積分平行目標(biāo)導(dǎo)引算法得出的動力定位船舶的實時期望速度,可以對動力船舶實現(xiàn)閉環(huán)控制,控制精度高,而且由于積分滑??刂扑惴ǖ聂敯粜阅軓?qiáng),因而使得提出的動力定位船舶跟蹤的導(dǎo)引控制方法具有魯棒性,適用于工程實踐中,實用性能強(qiáng)。
(3)本發(fā)明提出的控制方法,通過實驗驗證,可以確保在時間t趨于無窮大時,滑模面函數(shù)的值趨于0,即表明本發(fā)明提出的控制方法可以保證導(dǎo)引控制系統(tǒng)的穩(wěn)定性,穩(wěn)定性能好,優(yōu)于現(xiàn)有的控制方法。
附圖說明
圖1為本發(fā)明的方法流程圖;
圖2為船體坐標(biāo)系和大地坐標(biāo)系的示意圖,其中(2a)為船體坐標(biāo)系,(2b)為大地坐標(biāo)系;
圖3為步驟3)的方法流程圖;
圖4為動力定位船舶跟蹤的原理圖;
圖5為仿真方式1中動力定位船舶在大地坐標(biāo)系中的位置與艏向角度的響應(yīng)曲線,其中,(5a)為北向位置的響應(yīng)曲線,(5b)為東向位置的響應(yīng)曲線,(5c)為艏向角度的響應(yīng)曲線;
圖6為仿真方式1中以船舶東向位置為橫軸,北向位置為縱軸給出的船舶路徑曲線;
圖7為仿真方式1中船舶在跟蹤過程中船舶的速度與艏向角速度的曲線圖,其中,(7a)為縱向速度的曲線圖,(7b)為橫向速度的曲線圖,(7c)為艏向角速度的曲線圖;
圖8為仿真方式1中船舶期望位置與實際位置之間的偏差隨時間的變化曲線;
圖9為仿真方式1中推進(jìn)器產(chǎn)生的推力與力矩隨時間的變化曲線,其中,(9a)為縱向力隨時間的變化曲線,(9b)為橫向力隨時間的變化曲線,(9c)為力矩隨時間的變化曲線;
圖10為仿真方式2中動力定位船舶在大地坐標(biāo)系中的位置與艏向角度的響應(yīng)曲線,其中,(10a)為北向位置的響應(yīng)曲線,(10b)為東向位置的響應(yīng)曲線,(10c)為艏向角度的響應(yīng)曲線;
圖11為仿真方式2中以船舶東向位置為橫軸,北向位置為縱軸給出的船舶路徑曲線;
圖12為仿真方式2中船舶在跟蹤過程中船舶的速度與艏向角速度的曲線圖,其中,(12a)為縱向速度的曲線圖,(12b)為橫向速度的曲線圖,(12c)為艄向角速度的曲線圖;
圖13為仿真方式2中船舶期望位置與實際位置之間的偏差隨時間的變化曲線;
圖14為仿真方式2中推進(jìn)器產(chǎn)生的推力與力矩隨時間的變化曲線,其中,(14a)為縱向力隨時間的變化曲線,(14b)為橫向力隨時間的變化曲線,(14c)為力矩隨時間的變化曲線。
具體實施方式
下面結(jié)合附圖和具體實施例對本發(fā)明進(jìn)行詳細(xì)說明。本實施例以本發(fā)明技術(shù)方案為前提進(jìn)行實施,給出了詳細(xì)的實施方式和具體的操作過程,但本發(fā)明的保護(hù)范圍不限于下述的實施例。
本發(fā)明提出的一種動力定位船舶實現(xiàn)跟蹤任務(wù)的控制方法,是一種針對具有大慣性和強(qiáng)非線性與不確定性的動力定位船舶控制系統(tǒng)的積分平行目標(biāo)接近導(dǎo)引跟蹤控制算法,它運用積分平行目標(biāo)接近導(dǎo)引算法得出實時的期望速度,并且結(jié)合積分滑模算法使系統(tǒng)具有一定的魯棒性和控制精度,其控制方法示意圖如圖1所示,包括下列步驟:
s1)建立動力定位船舶的數(shù)學(xué)模型:
s11)在大地坐標(biāo)系和船體坐標(biāo)系中建立動力定位船舶的三自由度數(shù)學(xué)模型,具體為:
其中,η為動力定位船舶在大地坐標(biāo)系中的位置和艏向向量,v為動力定位船舶在船體坐標(biāo)系中的線速度和角速度向量,τ為推進(jìn)器產(chǎn)生的力和力矩向量,j(ψ)為船體坐標(biāo)系到大地坐標(biāo)系的轉(zhuǎn)換矩陣,m為動力定位船舶的慣性矩陣,d(v)為動力定位船舶的水動力阻尼項,c(v)為科里奧利向心力矩陣,δτ為環(huán)境干擾的不確定項;
s12)根據(jù)步驟s11)建立的三自由度數(shù)學(xué)模型,通過坐標(biāo)變換得到大地坐標(biāo)系中動力定位船舶的數(shù)學(xué)模型;
s2)根據(jù)動力定位船舶的數(shù)學(xué)模型,結(jié)合積分平行目標(biāo)導(dǎo)引算法,得到動力定位船舶的期望速度vd(t):
s21)將跟蹤任務(wù)簡化為虛擬質(zhì)點,得到動力定位船舶與虛擬質(zhì)點之間的位置偏差向量
s22)根據(jù)步驟s21)得到的位置偏差向量
其中,ua,max(t)為向虛擬質(zhì)點方向最大接近速度的參數(shù),
s23)根據(jù)步驟s22)得到的動力定位船舶沿視線方向與虛擬質(zhì)點的接近速度va(t),結(jié)合積分平行目標(biāo)導(dǎo)引算法,計算得到動力定位船舶的期望速度vd(t):
其中,vt(t)為虛擬質(zhì)點的運動速度,k1為設(shè)計參數(shù),vep(t)為動力定位船舶的跟蹤速度誤差;
s3)根據(jù)步驟s2)得到的動力定位船舶的期望速度vd(t),結(jié)合積分滑??刂品椒ǎ嬎愕玫絼恿Χㄎ淮暗膶?dǎo)引控制命令τ*:
s31)根據(jù)步驟s2)得到的動力定位船舶的期望速度vd(t),計算得到大地坐標(biāo)系中動力定位船舶的速度和角速度的偏差向量νe(t),具體為:
ve(t)=vd*(t)-vη(t)
其中,vd*(t)的前兩項為步驟s2)得到的動力定位船舶的期望速度vd(t),第三項為期望艏向角速度0,vη(t)為大地坐標(biāo)系中動力船舶的當(dāng)前速度向量;
s32)根據(jù)步驟s31)得到的偏差向量,得到滑模面函數(shù)sn;
s33)根據(jù)步驟s32)得到的滑模面函數(shù),選擇李雅普諾夫候選函數(shù)vn;
s34)對步驟s33)得到的李雅普諾夫候選函數(shù)vn求導(dǎo),得到導(dǎo)引控制器作為動力定位船舶的導(dǎo)引控制命令τ*;
s4)根據(jù)步驟s3)得到的動力定位船舶的導(dǎo)引控制命令,結(jié)合步驟s1)建立的動力定位船舶的數(shù)學(xué)模型,計算得到下一時刻的動力定位船舶的數(shù)學(xué)模型:
s41)將步驟s3)得到的動力定位船舶的導(dǎo)引控制命令τ*,轉(zhuǎn)換為動力定位船舶的數(shù)學(xué)模型中的參數(shù)τ,具體為:
τ=j(luò)-1(ψ)τ*
其中,j(ψ)為船體坐標(biāo)系到大地坐標(biāo)系的轉(zhuǎn)換矩陣;
s42)將步驟s41)計算得到的參數(shù)τ,代入至動力定位船舶的數(shù)學(xué)模型中,計算得到動力定位船舶數(shù)學(xué)模型的位置和速度;
s5)判斷動力定位船舶是否結(jié)束跟蹤,若是則結(jié)束計算,若否則返回步驟s2),具體為:判斷動力定位船舶是否到達(dá)跟蹤路徑的終點或與接觸到跟蹤目標(biāo),若是則結(jié)束計算,若否則返回步驟s2)。
根據(jù)上述步驟進(jìn)行算法的設(shè)計,該控制算法的主要設(shè)計步驟如下:
(1)建立大地坐標(biāo)系與船體坐標(biāo)系
如圖2所示,選取海平面上任意一點為原點oe,以正東方向east為橫軸,正北方向north為縱軸,建立大地坐標(biāo)系eoen,以n表示位置向北分量坐標(biāo),e表示位置向東分量坐標(biāo),ψ表示船舶艏向角度(范圍為-180°到180°)。然后,以船舶的幾何中心為原點ob,以原點指向船艏的方向為縱軸x、以原點指向右舷的方向為橫軸y,建立船體坐標(biāo)系xoby。
(2)在上述坐標(biāo)系中建立動力定位船舶三自由度數(shù)學(xué)模型:
式中,η表示船舶在大地坐標(biāo)系中位置和艏向向量[n,e,ψ]t;v表示船舶在船體坐標(biāo)系中線速度和角速度向量[u,v,r]t,u為縱向速度,v為橫向速度,r為艏向角速度;τ為推進(jìn)器產(chǎn)生的力和力矩向量[fx,fy,nz]t,是控制器設(shè)計的目標(biāo),而δτ為環(huán)境干擾的不確定項;j為從船體坐標(biāo)到大地坐標(biāo)的轉(zhuǎn)換矩陣,
(3)在上述數(shù)學(xué)模型基礎(chǔ)上建立大地坐標(biāo)系中動力定位船舶數(shù)學(xué)模型:
利用坐標(biāo)變換的等式:
式中:
(4)通過設(shè)定的虛擬質(zhì)點的期望位置和當(dāng)前時刻船舶大地坐標(biāo)系中的位置,利用積分平行導(dǎo)引算法計算當(dāng)前時刻大地坐標(biāo)系中船舶的期望速度,該導(dǎo)引算法的流程圖如圖3所示。主要包括以下內(nèi)容:
①設(shè)定虛擬質(zhì)點的軌跡路線
設(shè)定虛擬質(zhì)點北向位置的函數(shù)表達(dá)式position(1,1)與東向位置的函數(shù)表達(dá)position(2,1),組成虛擬質(zhì)點位置pt(t),分別求出位置表達(dá)式的一階導(dǎo)數(shù)組成虛擬質(zhì)點速度
當(dāng)前時刻船舶在大地坐標(biāo)系中的位置為p(t),其速度為vp(t),定義當(dāng)前時刻虛擬質(zhì)點與船舶之間的位置偏差
②設(shè)置指定朝虛擬質(zhì)點方向最大接近速度的參數(shù)ua,max(t)以及用于調(diào)節(jié)接近表現(xiàn)的參數(shù)
③速度偏差vep(t)=vd(t)-vp(t)需要船舶期望速度vd(t)與船舶當(dāng)前速度vp(t)來確定。設(shè)定好k11,k12,計算出積分項
(5)利用積分滑模控制,結(jié)合積分平行目標(biāo)接近導(dǎo)引算法,計算三個自由度的控制力fx,fy和力矩nz。主要包括以下幾個步驟:
①定義大地坐標(biāo)系中速度和角速度偏差ve(t)=vd*(t)-vη(t),νd*(t)的前兩項為導(dǎo)引算法得到的期望速度vd(t),第3項為期望艏向角速度0。
②定義滑模面函數(shù)
定義變換矩陣:
③選擇李雅普諾夫候選函數(shù):
若對vn進(jìn)行求導(dǎo):
設(shè)計導(dǎo)引控制器:
其中,sgn(sn)=-1,1為一個符號函數(shù),設(shè)定參數(shù)σ、μ并使其滿足σ≥|δτ|i(i=1,2,3)及μ>0,就有
(6)將得到的導(dǎo)引控制器τ=j(luò)-1(ψ)τ*傳遞給建立的動力定位船舶的數(shù)學(xué)模型,解算下一時刻船舶的狀態(tài)信息,然后由當(dāng)前時刻更新到下一時刻。
(7)根據(jù)得到的新的船舶狀態(tài)信息,重復(fù)執(zhí)行步驟(2)~(6),直到完成整個軌跡,結(jié)束計算。
根據(jù)上述步驟進(jìn)行了具體的仿真,仿真包含的試驗條件有:
采用具體實施方式中步驟(2)所給出數(shù)學(xué)模型的參數(shù):
船舶慣性矩陣m需要的參數(shù):
x_du=-142;
y_dv=-1715;
n_dr=-1350;
y_dr=188;
iz=2000;m=2234.5;xg=0;
船舶水動力阻尼項d(v)需要的參數(shù):
y_avv=-667;
y_v=-346;
n_v=-686;
x_avv=-128.4;
x_auu=-35.4;
n_avv=443;
n_r=-1427;
初始值與期望路徑設(shè)置:設(shè)定系統(tǒng)仿真步長:0.1;
仿真方式1
設(shè)定運行時間:8000*0.1=800秒;
設(shè)定船舶初始位置和艏向:(50米,0米,72°);
設(shè)定期望軌跡參數(shù):
期望北向位置為300*sin(0.15*t*2*pi/100);
期望東向位置為5*t;
期望形成的軌跡是一條正弦函數(shù)曲線。
仿真方式2
設(shè)定運行時間:6500*0.1=650秒;
設(shè)定船舶初始位置和艏向:(150米,0米,54°);
設(shè)定期望軌跡參數(shù):
期望北向位置為200*cos(0.15*t*2*pi/100);
期望東向位置為200*sin(0.15*t*2*pi/100);
期望形成的軌跡是一條圓形曲線。
仿真結(jié)果及分析
附圖5是仿真方式1中船舶大地坐標(biāo)中的位置與艏向角度響應(yīng)曲線,圖10是仿真方式2中船舶大地坐標(biāo)中的位置與艏向角度響應(yīng)曲線,圖中的黑色虛線為設(shè)定好的期望位置與艏向角度曲線,黑色實線為本發(fā)明給出的導(dǎo)引控制算法得到的船舶實際位置與艏向角度曲線。
附圖6和圖11是分別針對仿真方式1和仿真方式2以船舶東向位置為橫軸,北向位置為縱軸給出船舶路徑曲線,圖中黑色虛線為設(shè)定的期望路徑曲線,黑色實線為船舶實際路徑曲線。
附圖7為仿真方式1中船舶在跟蹤過程中船舶的速度與艏向角速度曲線,圖12為仿真方式2中船舶在跟蹤過程中船舶的速度與艏向角速度曲線,圖中虛線為根據(jù)導(dǎo)引算法得到的隨時間變化的期望速度與角速度,實線為根據(jù)導(dǎo)引控制算法得到的船舶實際速度與角速度。
附圖8和圖13分別為仿真方式1和仿真方式2中船舶期望位置與實際位置之間的偏差隨時間變化的曲線。
附圖9和圖14分別為仿真方式1和仿真方式2中推進(jìn)器產(chǎn)生的推力與力矩隨時間變化的曲線。
根據(jù)附圖5至附圖14所給出的船舶動態(tài)響應(yīng)過程,得到如下的分析結(jié)果:
給出的導(dǎo)引控制算法能夠根據(jù)通過設(shè)定的虛擬質(zhì)點的期望位置和當(dāng)前時刻船舶大地坐標(biāo)系中的位置,利用積分平行導(dǎo)引算法計算當(dāng)前時刻大地坐標(biāo)系中船舶的期望速度,并通過積分滑模的控制方法得到推進(jìn)器產(chǎn)生的力與力矩從而控制船舶最終達(dá)到虛擬質(zhì)點或跟蹤上目標(biāo)。
從這兩組仿真結(jié)果可見,在控制過程中根據(jù)實施步驟(4)所給出的積分平行導(dǎo)引策略和步驟(5)所給出的滑??刂扑惴梢砸龑?dǎo)并保證船舶在期望路徑上行駛,其實際的位置與艏向角度,實際的速度與艏向角速度能夠逼近相應(yīng)期望,整體的控制效果穩(wěn)定,船舶跟蹤精度較高。