王元慧,隋玉峰,吳靜
(哈爾濱工程大學(xué) 自動化學(xué)院,黑龍江 哈爾濱 150001)
船舶動力定位(dynamic positioning,DP)是指在有風(fēng)、浪、流的干擾情況下,不借助錨泊系統(tǒng),利用本身的推進裝置使船舶保持一定的位置和角度或按照預(yù)定的運動軌跡運動.動力定位系統(tǒng)主要應(yīng)用于海上作業(yè)船和平臺的定點系泊,還可應(yīng)用于相對潛水器的軌跡控制.其控位精度高、靈活性好,而且成本不會隨著水深增加而增加,日益受到重視,得到大力發(fā)展.DP系統(tǒng)的控制技術(shù)發(fā)展到現(xiàn)在可分為3個階段,第1階段通常采用常規(guī)的PID控制規(guī)律,第2階段以現(xiàn)代控制理論為基礎(chǔ),即最優(yōu)控制和Kalman濾波理論相結(jié)合,第3階段采用智能控制理論和方法,例如魯棒控制、模糊控制、神經(jīng)網(wǎng)絡(luò)控制、非線性模型預(yù)測控制等[1-3].模型預(yù)測控制是20世紀(jì)70年代產(chǎn)生,發(fā)展至今成為在工業(yè)中被廣為接受的先進控制技術(shù).它能夠顯示的處理帶有不同類型約束、而控制規(guī)律又不能離線計算得到的多變量約束控制問題,而且有提前預(yù)測的功能,可以在偏差產(chǎn)生之前就進行校正,對系統(tǒng)參數(shù)和環(huán)境變化有很好的魯棒性.國內(nèi)外對模型預(yù)測控制的研究不斷深入,取得了很多新的研究成果,例如一些基于非線性模型(Wiener模型、Hammerstein模型、Volterra模型等)的預(yù)測控制算法;還有一些與智能控制算法相結(jié)合的算法產(chǎn)生,例如模糊預(yù)測控制、神經(jīng)網(wǎng)絡(luò)預(yù)測控制、支持向量機預(yù)測控制等[4-6].Chen在前人的基礎(chǔ)上提出了切換解析模型預(yù)測控制算法.該算法具有模型預(yù)測控制一般特點,并吸取反饋線性化的優(yōu)點,成為一種重要的算法.張國銀等人對Chen提出的切換解析模型預(yù)測控制算法進行改進,提出了基于相關(guān)度的非切換解析模型預(yù)測控制算法,避免了控制器在不同狀態(tài)間進行切換,有效的避免了系統(tǒng)震蕩[7-8].
本文基于非切換解析模型預(yù)測控制理論和方法,設(shè)計一種船舶動力定位控制器,使船舶能夠快速準(zhǔn)確移動到指定位置,并保持位置.
在風(fēng)、浪、流共同作用的復(fù)雜海況下,船舶在海面上作六自由度的運動.在船舶動力定位中,對于傳統(tǒng)水面船,一般只考慮水面3種自由度的運動即可,即:縱蕩(surge)、橫蕩(sway)、艏搖(yaw).在建模中,假設(shè)船舶模型的慣性矩陣M以及阻尼矩陣D均為已知,并且均為時不變矩陣,船舶做低速運動,二次項可以忽略不計,最終可以得到三自由度船舶模型如下所示[9-12]:
式中:η=[x y ψ]T為北東坐標(biāo)系下船舶的北向位置、東向位置和艏向角,v=[u v r]T為船體坐標(biāo)系下縱向速度、橫向速度以及轉(zhuǎn)艏角速度,R(ψ)為北東坐標(biāo)系與船體坐標(biāo)系之間的旋轉(zhuǎn)變換矩陣,M為包括剛體質(zhì)量和附加質(zhì)量的船舶慣量矩陣,D為阻尼矩陣,τ為控制力和力矩矩陣.它們的結(jié)構(gòu)形式如下:
本文控制器的設(shè)計理論基于微分方程組形式,因此根據(jù)式(2)~(5),將式(1)展開可以得到船舶方程的微分方程組形式:
定義1 給定一個x= [x1x2… xn]T的標(biāo)量函數(shù) h(x)與一個向量函數(shù) f(x)=[f1f2…fn]T,則沿著f的李導(dǎo)數(shù)定義為
即函數(shù)h沿向量場f的李導(dǎo)數(shù)就是h在向量場方向的梯度.
高階李導(dǎo)數(shù)定義為
若g是另一個向量場,則
式中:x∈Rn,u∈R,y∈R分別為系統(tǒng)的狀態(tài)向量、控制輸入和系統(tǒng)輸出.f(x)、g(x)、h(x)均為光滑的向量函數(shù).假設(shè)對上述系統(tǒng)的平衡點 x0有f(x0)=0,h(x0)=0,g(x0)≠0.
定義2 非線性系統(tǒng)稱為在x0點處具有確定相關(guān)度ρ,如果
考慮單輸入單輸出的非線性系統(tǒng):
條件2)說明x0的任意一個鄰域內(nèi)系統(tǒng)都具有相關(guān)度ρ.
如果在x0滿足=0,而在x0的一個鄰域內(nèi)存在一點滿足條件≠0,那么 x0稱為奇異點(singular point),此時稱上述非線性系統(tǒng)的相關(guān)度不確定(ill-defined).
非線性模型預(yù)測控制與傳統(tǒng)的線性模型預(yù)測控制一樣,也是一種基于優(yōu)化的控制策略,都符合模型預(yù)測控制的基本原理:預(yù)測模型、滾動優(yōu)化和反饋校正.由于其本身的非線性特性,最適合用于強非線性、多約束等過程控制系統(tǒng),因此得到廣泛應(yīng)用.
船舶模型具有非線性、時滯性等特點,考慮其控制的特殊性,本文利用系統(tǒng)相關(guān)度概念,根據(jù)非線性模型預(yù)測控制原理,設(shè)計實現(xiàn)控制器.
控制目標(biāo)是:設(shè)計控制器 (τX,τY,τN)使得系統(tǒng)的輸出x、y和ψ能夠快速準(zhǔn)確的移動到設(shè)定狀態(tài),并且能夠保持狀態(tài).
假設(shè)1 系統(tǒng)輸出(x,y,ψ)和期望輸出(xd,yd,ψd)連續(xù),可做足夠次數(shù)的微分運算.
將系統(tǒng)寫成如下的規(guī)范形式:
其中,x∈Rn為系統(tǒng)的狀態(tài)向量,u∈Rl為系統(tǒng)的控制輸入,y∈Rm為系統(tǒng)的輸出,n=6,l=3,m=3.
其中:
模型預(yù)測控制設(shè)計需要給出一個具體的性能指標(biāo).為了能夠綜合考慮各個方面的作用,給出一個在滾動時域內(nèi)的性能指標(biāo)函數(shù)如下所示:
式中:T 是預(yù)測周期,μ1、μ2、μ3是非負的(通常情況下,μ2是正數(shù),而 μ1,μ3可以取零),分別反映了輸出終端約束、跟蹤誤差以及控制量所占的權(quán)重;(t+T)和(t+T)分別為系統(tǒng)的輸出和期望輸出在滾動時域[t,t+T]內(nèi)的預(yù)測值,上標(biāo)“∧”代表預(yù)測值,期望輸出的預(yù)測值一般是設(shè)定值,因此是確定的.
模型預(yù)測控制可以表述為在一個滾動時域[t,t+T]內(nèi),用 ^x(τ)表示系統(tǒng)狀態(tài),用 ^u(τ)表示控制輸入,那么系統(tǒng)在滾動時域內(nèi)的動態(tài)方程可表示為
其初始狀態(tài)即為系統(tǒng)當(dāng)前狀態(tài),即
根據(jù)式(18)和(19)的約束下,可以預(yù)測[t,t+T]時間段內(nèi)系統(tǒng)的輸出.據(jù)此,最小化性能指標(biāo)J的問題就是尋找[t,t+T]時間段內(nèi)的最優(yōu)控制輸入^u(t+τ).綜上所述,非線性模型預(yù)測控制可以描述為:
式(18)和(19)約束.
式(20)與其他的控制思想一樣,并不需要計算 τ∈[0,T]內(nèi)所有的控制輸入 ^u(t+ τ),而只需計算其初始值 ^x(t).實際的控制量u(t)可以采用最優(yōu)預(yù)測控制律 ^u(t+τ)的初始值 ^u(t),即
綜上所述,在非線性預(yù)測控制中,系統(tǒng)的控制輸入總是取使性能指標(biāo)J最小的控制輸入,并且只關(guān)心^u(t+τ)的初始值.當(dāng)滾動時域時,性能指標(biāo)J逐漸減小,同時系統(tǒng)輸出逐漸接近期望值u(t).在數(shù)字控制技術(shù)及其工程實踐中,通常的控制量是分段函數(shù),因此可以作如下假設(shè):
假設(shè)2 控制輸入在滾動時域[t,t+T]內(nèi)假設(shè)為常數(shù),即
在這個假設(shè)條件下,^u的各階導(dǎo)數(shù)均為零.
為了得到非線性預(yù)測控制規(guī)律,需要將滾動時域[t,t+T]內(nèi)系統(tǒng)的輸出以及性能指標(biāo)進行適當(dāng)階次的泰勒級數(shù)展開.
系統(tǒng)輸出^y(t+τ)以及期望輸出^yd(t+τ)可以表示為
因此式(17)所示的性能指標(biāo)J的N階泰勒級數(shù)展開可以近似為
式中
同理,
同理
在這里記
在此討論一下確定相關(guān)度以及不確定關(guān)系的問題.從以上的推導(dǎo)公式結(jié)合實際得到的值可以看出:對于所有狀態(tài)x滿足Lg3Lfh3=b2≠0,因此從相關(guān)度的定義可以看出,ρ3,3是確定相關(guān)度,并且 ρ3,3=2,在某些狀態(tài) x 為零,這就意味著 ρ11,ρ12,ρ13,ρ21,ρ22,ρ23,ρ31,ρ32是不確定相關(guān)度,其中 ρij(1≤i≤l,1≤j≤m)代表控制輸出ui到系統(tǒng)輸出yi的相關(guān)度.
文中選取泰勒級數(shù)展開階次為N=3,選取L=2.記
其中:
且
因此可以將^y(t)重寫為
將式(40)、(41)代入到式(29)中,得到方程
式中,
由式(42),得到非切換解析模型預(yù)測控制的解:
取其初值,即為非切換解析模型預(yù)測控制的非線性船舶動力定位控制規(guī)律:
因為 q.,1(x)TMq.,1(x)+M3一定是正定的,具體證明過程在文獻[5]中有詳細的說明,因此控制規(guī)律解決了由奇異點引起的不確定相關(guān)度問題;并且該控制規(guī)律對所有狀態(tài)都是連續(xù)的,避免了在不同狀態(tài)之間進行切換引起的震蕩,這就是“非切換”控制的由來.
為了驗證基于非線性模型預(yù)測控制規(guī)律的有效性,進行如下仿真實驗.本文采用某動力定位船作為仿真對象仿真試驗,主要參數(shù)如表1所示[10-11].
表1 船舶主要參數(shù)Table 1 The parameters of the ship
選取預(yù)測周期 T=9.0s,μ1=1.0,μ2=0.000 5,μ3=0.
仿真時間共計500 s,設(shè)定仿真時船舶的初始狀態(tài)和期望狀態(tài)分別為:
根據(jù)上述系統(tǒng)的仿真參數(shù),進行船舶動力定位仿真系統(tǒng),得到的仿真結(jié)果如圖1~3.
圖1 船舶位置和艏向角Fig.1 The position and heading angle of ship
圖2 船舶縱蕩、橫蕩速度和艏搖角速度Fig.2 The Speed and angular velocity of ship
圖3 船舶縱向、橫向力和艏搖力矩狀態(tài)Fig.3 The control force and m oment of ship
從以上仿真結(jié)果可以看出,將非切換模型預(yù)測控制算法應(yīng)用于DP控制器的設(shè)計,船舶動態(tài)響應(yīng)快速,穩(wěn)定性較好.從仿真曲線也可以看出,北向位置和東向位置有少量超調(diào),但是都收斂較快;艏向角變化范圍比較小,但是穩(wěn)定時間相對較長.
本文利用非線性模型預(yù)測控制處理強非線性系統(tǒng)的優(yōu)勢,根據(jù)其原理設(shè)計了基于非線性模型預(yù)測控制算法的船舶動力定位控制器,選擇了合理參數(shù),并在無風(fēng)浪流干擾情況下,驗證了非線性模型預(yù)測控制器的有效性.仿真結(jié)果表明,本文所設(shè)計的基于非線性模型預(yù)測理論的控制器能夠使船舶較快的達到預(yù)期狀態(tài),證明了非線性模型預(yù)測在船舶動力定位上應(yīng)用的有效性.
[1]韓春生,劉劍,汝福興,等.基于PID算法的船舶航跡自動控制[J].自動化技術(shù)與應(yīng)用,2012,31(4):9-12.HAN Chunsheng,LIU Jian,RU Fuxing,et al.Track keeping control for a ship with PID algorithm[J].Techniques of Automation and Applications,2012,31(4):9-12.
[2]劉勝,楊震.船舶橫搖運動實時在線預(yù)報方法[J].電機與控制學(xué)報,2011,15(10):82-94.LIU Sheng,YANG Zhen.Real-time online prediction method of ship rolling motion[J].Electric Machines and Control,2011,15(10):82-94.
[3]嚴(yán)浙平,遲冬南,趙智,等.UUV推進系統(tǒng)模糊自適應(yīng)融合故障診斷方法[J].電機與控制學(xué)報,2012,16(9):14-19.YAN Zheping,CHIDongnan,ZHAO Zhi,et al.Propeller fault diagnosis for UUV using fuzzy adaptive fusion[J].E-lectric Machines and Control,2012,16(9):14-19.
[4]趙志高,楊建民,王磊.動力定位系統(tǒng)發(fā)展?fàn)顩r及研究方法[J].海洋工程,2002,20(1):91-97.ZHAO Zhigao,YANG Jianmin,WANG Lei.The development and research method of dynamic positioning system[J].The Ocean Engineering,2002,20(1):91-97.
[5]夏偉江.動力定位系統(tǒng)(DPS)船舶的產(chǎn)生、發(fā)展及在海洋石油勘探、開發(fā)、生產(chǎn)等階段的應(yīng)用[J].天津航海,2005(3/4):21.
[6]鄒濤,丁寶倉.模型預(yù)測控制工程應(yīng)用導(dǎo)論[M].北京:化工工業(yè)出版社,2010:1-33.
[7]CHEN W H.Analytic predictive controllers for nonlinear systems with ill-defined relative degree[J].IEEE Proc.-Control Theory Appl,2001,148(1):9-16.
[8]張國銀,楊智,譚洪舟.一類非線性系統(tǒng)非切換解析模型預(yù)測控制方法研究[J].自動化學(xué)報,2008,34(9):1147-1156.ZHANG Guoyin,YANG Zhi,TAN Hongzhou.Research on non-switch analytic nonlinearmodel predictive controlmethod for a class of nonlinear systems[J].Acta Automatica Sinica,2008,34(9):1147-1156.
[9]賈欣樂,楊鹽生.船舶運動數(shù)學(xué)建模-機理建模與辨識建模[M].大連:大連海事大學(xué)出版社,1999:7-50.
[10]邊信黔,付明玉,王元慧.船舶動力定位[M].北京:科學(xué)出版社,2011:47-49.
[11]王元慧.模型預(yù)測控制在動力定位系統(tǒng)中的應(yīng)用[D].哈爾濱:哈爾濱工程大學(xué),2006:14-26.WANG Yuanhui.Application ofmodel predictive control to dynamic positioning system[D].Harbin Engineering University,2006:14-26.
[12]FOSSEN T I.Marine control system:guidance,navigation and control of ships,rigs and underwater vehicles[M].(s.l.):Marine Cybermetic,2002:104-107.
[13]?Asmund V?age Fannemel.Dynamic positioning by nonlinear model predictive control[D].Norway:Norwegian University of Science and Technology,2008:13-24.
[14]趙大威,邊信黔,丁福光.非線性船舶動力定位控制器設(shè)計[J].哈爾濱工程大學(xué)學(xué)報,2011,32(1):57-61.ZHAO Dawei,BIAN Xinqian,DING Fuguang.Design of a nonlinear controller for dynamic ship positioning[J].Journal of Harbin Engineering University,2011,32(1):57-61.