馬晨翔,耿 濤,車志宣,陳衛杰,吳愛平
(1.長江大學 電子信息學院,湖北 荊州 434022;2.東莞小豚智能技術有限公司,廣東 東莞 523830)
隨著無人駕駛技術、計算機技術等先進技術的發展,無人船已成為未來船舶發展的一個重要分支。因為其較強的靈活性與較高的可擴展性,無人船無論是在軍用還是在民用領域都有著廣泛的應用。隨著無人船的快速發展,航向的控制問題得到了重點關注。目前傳統的航向控制方法主要為PID控制、模糊PID控制[1],張晨等[2 – 4]基于不同類型的滑模控制設計無人船航向控制器,并通過仿真證明控制器的優越性。但上述這些方法多數較為復雜,調參困難,對計算資源要求較高,難以在工程應用中實現。
Tzeng等[5 – 6]提出利用一階 Nomoto 模型和內模控制思想設計船舶首向控制器。楊吉[7]基于內模控制設計航向控制器,并實船驗證航向內模控制器的可行性。但傳統內模控制器在系統穩定后存在靜態誤差。近年來,國內外專家提出二自由度控制方式[8],許多學者根據不同的對象或控制方式設計了二自由度內模控制器,具有較好的跟蹤性能和抗負載干擾特性[9 – 10]。本文以二自由度內模控制器原理為基礎,結合線性Nomoto船舶模型,提出一種改進的二自由度內模航向控制器。消除了靜態誤差,通過建模仿真,證明該控制器具有良好的控制效果。
目前對于無人船數學模型的描述,由于水動力模型建模復雜,而響應型模型需要考慮的因素較少,反映了無人船航向角隨時間的變化規律,所以在工程上響應型模型應用廣泛。響應型模型可以直觀地顯示模型輸入輸出關系,非常適合無人船航向控制器的設計,可通過實驗獲得輸入輸出數據辨識參數。
線性Nomoto模型已具有較高的精度,將船舶的縱向運動從三自由度操縱運動方程中解耦,忽略掉縱向運動,得到僅考慮船舶的2個自由度橫漂速度v和轉艏角速度r,船舶動力學的方程如下:
為得到無人船轉首角速度與舵角之間的關系,將式(1)中的橫向速度v消掉即可得到一個描述操縱舵角對首搖的二階線性響應模型,即
式中:K及T1,T2,T3為無人船的操縱性指數,其中T=T1+T2?T3,T稱為跟隨指數。為得到無人船轉首角速度r與舵角δ的關系,對式(2)進行拉普拉斯變換,并且考慮到航向角ψ與轉向角速度r之間的關系:
采用野本謙作[11]提供的線性模型,可得航向角ψ與舵機指令δ對應的傳遞函數模型為:
式(4)為船舶操縱運動方程,也稱Nomoto模型。本文采用Thor I.Fossen書中貨船的航向模型參數,K=0.185,T1=118,T2=7.8,T3=18.5,可得本文無人船航向控制模型為:
考慮實際工程中的應用,需要在離散系統中實現,對船舶模型進行離散化可得:
其中:
內模控制(IMC)是一種采用被控對象的內部模型和反饋修正的預測控制,作為Smith預估控制的擴展,因為其控制系統設計簡單、可調參數少,且性能良好,使得參數整定較為簡單,方便工業現場的調試。傳統的內模控制器結構如圖1所示。

圖1 傳統內模控制器結構圖Fig.1 Structure diagram of traditional internal model controller
圖中,Gc為內模控制器,G為被控對象,即為無人船,Ghat為被控模型,即為無人船航向模型,r為設定值,即期望航向值,d為系統輸出擾動,y為內模系統的輸出,即實際輸出航向值。
根據內模結構原理可得出系統對應的傳遞函數為:
當實際被控無人船與所建立的船舶模型達到匹配時,即G(s)=Ghat(s)時,上式可簡化為:
航向輸出值與航向期望值之間的差值為:
內模控制器Gc的設計方法有很多,本文內模控制器基于零極點相消法設計。由式(9)、式(10)可知,當無人船模型建立準確時,若令Gc(s)=G?1(s)時,在理想的情況下,系統實際航向輸出等于輸入的期望航向。
由于期望航向輸入一般為階躍信號,需要對輸入的期望航向進行柔化,為了物理可實現引入低通濾波器結構F(s),并且提高閉環控制系統的魯棒性,內模控制器設計表達式為:
式中,Ghat?(s)為無人船航向模型最小相位部分。其中低通濾波器F(s)表達式為:
式中:n為濾波器的階次,一般n的選擇要保證內模控制器的正則性。由圖1可以看出,傳統內模控制方法可調節參數非常少,只有一個濾波器參數τ可調節,且τ的選取對系統的跟蹤性能和魯棒性起著決定作用,有明確的調整方向。當τ的取值越小時,對于輸入航向的跟蹤更快,會導致魯棒性變差,故τ的取值需要結合仿真以及實際現場測試情況,平衡二者需求。一般對于連續系統取值大于0,對于離散系統的取值一般在0~1之間。
式(4)為內模控制系統中被控對象數學模型Ghat,由于K和T均大于0,所以可知無人船具有航向穩定性,則式(4)是一個最小相位部分,將式(4)代入式(11)可得控制器Gc(s):
對IMC控制器Gc進行離散化,由式(13)可得:
對濾波器F(s)進行離散化可得,由式(12)可得:
使用反向差分整理可得低通濾波器離散形式為:
其中:
將式(6)和式(16)代入式(14)可得離散形式Gc:
傳統的一自由度內模控制或是二自由度內模控制方法,無論無人船模型建立是否準確,在擾動傳遞函數中,都存在不穩定的極點s=0,如果想要應用作為控制器,需要設法消除擾動傳遞函數中的純積分項s,否則無法直接應用作為航向控制器,將會存在穩態誤差。
在無人船實際工程應用中,在安裝船舵時,由于機械誤差或是人工安裝誤差,使得船舵存在一定程度的偏差,這樣的偏舵作為負載干擾,使得傳統的內模控制方法即使在系統達到穩定后,總存在一定的靜態誤差,造成無人船航向存在一定的偏差。這一點在仿真中也證實存在。本文介紹一種改進的二自由度內模控制結構,通過零極點對消的方法,使得控制器穩定,從而消除靜態誤差與鎮定控制對象。改進的二自由度內模控制結構,如圖2所示。

圖2 改進的二自由度內模控制結構圖Fig.2 Improved two degrees of freedom internal model control structure diagram
該結構改進之處在于它是在傳統內模控制的基礎上增加一個預穩定控制器Gm,用于調節無人船被控對象輸出和無人船模型輸出之差。通過控制器Gm消除擾動傳遞函數中的不穩定極點,消除負載偏舵的影響,保證系統穩態無差。
該結構另一個優點在于將輸入的期望航向值響應和負載干擾響應實現解耦控制,使控制器的設計如傳統內模控制方法設計一樣簡便,且控制器內的參數有各自的意義,控制器Gc調節系統的跟蹤能力,控制器Gm調節系統的抗負載擾動能力,從而使控制系統的這2個性能能夠各自達到最佳的狀態。當控制器Gm=0時,此種結構與傳統內模控制結構完全一樣。
由圖2可得系統的輸出y的傳遞函數為:
當無人船模型建立準確時,即G(s)=Ghat(s)時,上式傳遞函數可簡化為:
上式中輸入干擾d(s)的輸出傳遞函數Tyd由兩部分組成,前一部分為:
可以看出其是一個閉環系統,通過調節控制器Gm(s)就可以整定被控無人船,后面一部分1?Gc(s)Ghat(s)作用是消除由于偏舵負載干擾引起的靜差,從而保證航向控制系統穩定誤差。
由式(19)可以看出,Gc和Gm兩個控制器相互獨立,一同決定航向輸出,故在設計時可以分開設計,互不干擾。其中控制器Gc的設計可以按照傳統內模控制器原理進行,預穩定控制器Gm的設計方法如下:
設預穩定控制器G為:
式中:Kc為控制器增益;T為無人船模型中跟隨指數;β為濾波器參數,其計算公式為:
式中:Am為幅值裕度,K為無人船回轉參數,θ為被控系統的時滯常數。為使系統穩定,通過幅值相角裕度理論確定該控制器參數,應使相角裕度?m>0?,幅值裕度Am>1。這樣使得系統穩定,具有一定的穩定裕量[12]。為了獲得較滿意的過渡過程,通常要求幅值裕量2~5,相角裕量為30?~60?,本文選取Am=3,?m=60?,其中Kc的取值范圍如下:
對于無人船,舵機的時滯常數θ的值比較小,不會對控制系統產生影響,故可以忽略,且由式(23)可知,當Kc取越大時,β取值越小。
改進的二自由度內模控制方法總共有3個可調參數,但Gm控制器中Kc,β的取值與船舶模型K和T有關,只有Gc控制器中的τ需要調節。
為在離散系統中實現,將式(22)進行離散化:
其中:
無人船航向作為被控對象,使用改進的二自由度內模控制器對航向進行控制,通過Matlab/Simulink仿真平臺,針對式(5)船舶航向模型,期望值分別在30?與60?時航向控制性能仿真,其中K=0.185,T=107.3,τ=0.12,β=0.001,Kc=2.82。
為模擬實際工程中由于船舵的安裝誤差及設備誤差導致的偏舵問題,在Matlab/Simulink仿真軟件中,對船舶機理模型對象中加入偏舵干擾,一般取0.02~0.05 rad/s之間較為符合實際工程中的情況。仿真中偏舵取0.02 rad/s,結構如圖3所示。

圖3 偏舵干擾模型結構Fig.3 Rudder interference model structure
開展不同航向值以及偏舵干擾影響下的航向控制仿真。仿真實驗結果如圖4~圖6所示。圖4~圖6中加入偏舵的仿真結果總結于表1。

表1 各航向控制算法仿真結果對比Tab.1 Comparison of simulation results of each heading control algorithm

圖4 30°時航向控制算法對應的航向角變化Fig.4 Change of heading angle corresponding to heading control algorithm at 30°

圖5 45°時航向控制算法對應的航向角變化Fig.5 Change of heading angle corresponding to heading control algorithm at 45°

圖6 60°時航向控制算法對應的航向角變化Fig.6 Change of heading angle corresponding to heading control algorithm at 60°
由數據分析可以看出,傳統內模控制器和PID控制器,2種控制方法均存在不同程度的靜態誤差,傳統內模控制方法靜差最大,而本文方法則消除了靜態誤差。傳統PID控制器在偏舵干擾下,超調量顯著增加,而改進的二自由度內模控制方法與傳統內模控制方法均無超調。相較于另外2種控制器,本文提出的方法具有更短的穩定時間,并且該控制器控制性能不會因為初始航向角的不同而產生較大的偏差,說明該系統具有良好的控制性能和魯棒性。
本文針對無人船航向控制Nomoto線性系統,設計一種改進二自由度內模航向控制器,實現單獨設計和調節跟蹤性能和抗負載擾動性能,相比傳統航向控制方法相比可調參數少,僅有一個可調參數,且整定簡單。當無人船模型參數確定后,整套控制系統即確定,為實現自適應控制提供控制方法。通過Matlab/Simulink將該控制器與傳統內模控制器、PID控制器相比,改進的二自由度內模控制器消除了靜態誤差,對于航向的控制沒有超調量,同時擁有更短的穩定時間。