魏健雄 萬舟
摘要:為解決全墊升氣墊船受風和慣性力影響較大,容易產(chǎn)生側(cè)漂,其轉(zhuǎn)艏角速度較常規(guī)船舶難于控制的問題,建立了全墊升氣墊船的平面運動模型。設計了神經(jīng)網(wǎng)絡PID控制器,利用BP神經(jīng)網(wǎng)絡具有的任意非線性表達能力,通過對系統(tǒng)性能的學習,實現(xiàn)具有最佳組合的PID控制。對氣墊船的轉(zhuǎn)艏角速度控制進行仿真,并與常規(guī)PID控制效果進行對比,結(jié)果表明,在全墊升氣墊船受風力干擾的情況下,神經(jīng)網(wǎng)絡PID控制器相比常規(guī)PID控制器在克服風力干擾方面控制效果更好。
關鍵詞關鍵詞:全墊升氣墊船;轉(zhuǎn)艏角速度;神經(jīng)網(wǎng)絡;風力干擾
DOIDOI:10.11907/rjdk.172512
中圖分類號:TP301
文獻標識碼:A文章編號文章編號:16727800(2018)003001805
英文摘要Abstract:For solving the problem that the air cushion vehicle is easy to be affected by wind and inertia force, and it is easy to have large side drift, so the keeping of its angular velocity is difficult to control. In order to improve the heading maneuver of Air Cushion Vehicle, the Yawing Angular Velocity Keeping Control must be used frequently, established the air cushion vehicle motion model, and the design of PIDneural network controller based on BP neural network with arbitrary nonlinear expression ability, the system can achieve the best combination of learning. The control of the angular velocity of air cushion vehicle is simulated by the model, and the results are compared with those of the conventional PID control.The simulation results show that the air cushion vehicle in the case of wind disturbance, PIDneural network controller of the yawing angular velocity control, control effect in overcoming the wind disturbance compared with the conventional PID controller has better effect.
英文關鍵詞Key Words:air cushion vehicle; yawing angular velocity; neural network; wind disturbance
0引言
氣墊船是一種高性能船舶,其結(jié)構(gòu)與其它船舶有很大不同,它由氣墊壓力承擔船體重量,采用空氣螺旋槳推進,具有水陸兩棲能力,可在草地、沼澤地帶、多石灘河面、淺水和冰雪海面航行,在軍用和民用領域應用廣泛。全墊升氣墊船沒有常規(guī)排水船的水下螺旋槳、舵等水下器件,不能通過水下器件產(chǎn)生回轉(zhuǎn)向心力,而是通過空氣舵產(chǎn)生回轉(zhuǎn)力。全墊升氣墊船在回轉(zhuǎn)運動中,由于側(cè)向水阻力很小,而且航速高,很容易受風和慣性力影響,其轉(zhuǎn)艏角速度很難保持在相對穩(wěn)定的水平,影響航行安全。
隨著現(xiàn)代控制理論及技術的發(fā)展,許多先進控制算法成功應用到全墊升氣墊船的航跡向控制[14]和升沉運動控制中[5],但是在轉(zhuǎn)艏角速度控制中應用較少。針對經(jīng)典PID控制參數(shù)不能在線調(diào)整的缺陷,為改善全墊升氣墊船的操縱水平,使氣墊船在回轉(zhuǎn)運動中轉(zhuǎn)艏角速度保持在相對穩(wěn)定水平,設計了一種基于BP神經(jīng)網(wǎng)絡的PID控制算法,利用BP神經(jīng)網(wǎng)絡具有的任意非線性表達能力,通過對系統(tǒng)性能的學習,實現(xiàn)具有最佳組合的PID控制[69]。
1全墊升氣墊船運動模型
為建立全墊升氣墊船的三自由度平面運動數(shù)學模型,作如下假設:①氣墊船為剛體;②船體左右對稱;③船所在的水域流速為零。
圖1所示為船體坐標系xOy及北東坐標系ξEζ,其中ξ指北東坐標系的北, ζ指北東坐標系的東,ψ為艏向角,以ξ軸至x軸順時針旋轉(zhuǎn)為正。x軸指向船艏,y軸指向右舷,E和O為各自坐標系的原點且處于同一水平高度,各坐標軸都與水面平行。
u、v分別是船速V在x軸和y軸上的分量,V和x軸間的夾角β為氣墊船漂角,x軸至船速V順時針方向為正?;谏鲜鲎鴺讼担⑷珘|升氣墊船平面運動模型:
m(-vr)=Fx
m(+ur)=Fy
Iz=Mz(1)
其中,m為氣墊船質(zhì)量,F(xiàn)x為船體縱向所受合力,F(xiàn)y為船體橫向所受合力,Iz為氣墊船通過其重心的鉛垂線轉(zhuǎn)動慣量,Mz為氣墊船的轉(zhuǎn)艏力矩,r為船的轉(zhuǎn)艏角速度。上述合力及力矩的表達式為:
Fx=Fxa+Fxh+Fxp+FxR
Fy=Fya+Fyh+Fyp+FyR
Mz=Mza+Mzh+Mzp+MzR (2)
下標α表示空氣動力,R表示空氣舵力,通過船模風洞試驗得到。h表示水動力,通過水池拖拽試驗和船??諝鈩恿鄢囼灥玫健表示空氣螺旋槳推進力,通過選槳及單槳試驗、推力影響等試驗得到[1011]。北東坐標系與船體坐標系之間的轉(zhuǎn)換關系為:
=ucosψ-vsinψ
=usinψ+vcosψ
=r(3)
式(3)組成了全墊升氣墊船完整的操縱運動微分方程組,通過解算作用在船體上的力和力矩,得到全墊升氣墊船的實時運動狀況。
2風對全墊升氣墊船操作的影響
2.1海風模型
為了建立接近真實航行環(huán)境的海風模型,通過von Karman譜對海風進行仿真[12],主風向風速譜為:
Su(ω)=42Lux[1+(2cω(Lux/))2]5/6(4)
Lux為標度參數(shù),為縱向平均風速,c=4.206 5為常數(shù),2為縱向風變化范圍,根據(jù)式(4)可建立主風向脈動風速:
uw(t)=∫∞0cos(ωt+ε)2Su(ω)dω(5)
式(5)中,ω為風速的圓頻率,隨機相位ε為在[0,2π]上均勻分布的隨機變量。仿真過程中,根據(jù)風速譜函數(shù)曲線,利用頻率等分法,在有意義頻率區(qū)間(ωmin,ωmax)內(nèi)使用式(5)的離散形式:
uw(t)=∑Ki=1cos(ωit+εi)2Su(ωi)Δω(6)
式(6)中,K為頻率等分數(shù),ωi為頻率點,εi分布同ε。根據(jù)主風向風速譜與側(cè)風向風速譜具有湍流同性的特點,可得兩者關系:
Sv(ω)=12Su(ω)-ωdSu(ω)dω(7)
具體形式為:
Sv(ω)=22Lux[1+83(2cn(Lux/))2][1+(2cω(Lux/))2]11/6(8)
同理可得側(cè)風向脈動風速為:
vw(t)=∑Ki=1cos(ωit+εi)2Sv(ωi)Δω(9)
進而得到脈動風速:
Vw(t)=u2w(t)+v2w(t)(10)
脈動風向角為:
βw(t)=tan-1(uw(t)/vw(t))+βw0(11)
式(11)中,βw0為主風向角。
對絕對風速平均值為10m/s、絕對風向平均值為45°的脈動風仿真,仿真試驗結(jié)果如圖2所示。
2.3操舵回轉(zhuǎn)實驗與分析
操舵回轉(zhuǎn)性能是檢驗全墊升氣墊船模型正確性的重要指標[13]。本文設全墊升氣墊船初始航速為15m/s,初始艏向為0°,固定螺距角,分別設置不同方向平均風速為5m/s的脈動風,然后操相同舵角進行回轉(zhuǎn)仿真實驗。在不同主風向的脈動風作用下,氣墊船操舵回轉(zhuǎn)運動軌跡如圖3所示。
由于存在風力干擾,全墊升氣墊船所受到的相對風速、風向會隨著航速、航向發(fā)生變化,因此氣墊船不能進入定?;剞D(zhuǎn)狀態(tài)。逆風時,作用在空氣舵上的相對風速較大,產(chǎn)生的舵力較大,可使全墊升氣墊船更快地回轉(zhuǎn),順風時情況剛好相反。因此,在環(huán)境風作用下,全墊升氣墊船的航速、轉(zhuǎn)艏角速度等都呈周期性變化,其運動軌跡為螺旋線型,與常規(guī)水面船相比,風對其操縱性影響較大。
3神經(jīng)網(wǎng)絡PID控制器設計
3.1神經(jīng)網(wǎng)絡參數(shù)選擇
神經(jīng)網(wǎng)絡PID控制器原理如圖4所示, r為期望輸出,在本氣墊船轉(zhuǎn)艏角速度保持控制系統(tǒng)中,即為給定的轉(zhuǎn)艏角速度,PID控制器就是常規(guī)的比例積分微分控制,u為控制器輸出,y為氣墊船的實際轉(zhuǎn)艏角速度。
采用的神經(jīng)網(wǎng)絡NN是一個三層BP網(wǎng)絡,其結(jié)構(gòu)如圖5所示,有3個輸入節(jié)點、5個隱含層節(jié)點、3個輸出節(jié)點。輸入節(jié)點對應所選系統(tǒng)的運動狀態(tài)量,為氣墊船轉(zhuǎn)艏角速度控制系統(tǒng)不同時刻的輸入量和輸出量,要進行歸一化處理[14]。輸入節(jié)點個數(shù)取決于被控系統(tǒng)的復雜程度,選用3個輸入節(jié)點,分別為3個不同時刻的轉(zhuǎn)艏角速度誤差。輸出節(jié)點分別對應PID控制器的3個可調(diào)參數(shù)Kp、Ki和Kd。隱含層節(jié)點個數(shù)根據(jù)經(jīng)驗公式,選擇使用5個隱含層節(jié)點[15]。由于Kp、Ki、Kd不能為負值,所以輸出層神經(jīng)元的變換函數(shù)取非負的Sigmoid函數(shù),而隱含層神經(jīng)元的活化函數(shù)可取雙曲正切函數(shù)。
O(1)j=xk-j=e(k-j)j=0,1,2(14)
網(wǎng)絡隱含層的輸入輸出為:
net(2)i(k)=∑2j=0w(2)ijO(1)j(k)-θ(2)i(15)
O(2)i(k)=f[net(2)i(k)]i=0,1…q-1(16)
ω(2)ij為隱含層加權系數(shù),θ(2)i為隱含層閾值,上標(1)、(2)、(3)分別代表輸入層、隱含層、輸出層,f(x)為雙曲正切函數(shù),即:
f(x)=tanh(x)=(ex-e-x)/(ex+e-x)(17)
網(wǎng)絡輸出層3個節(jié)點的輸入、輸出分別為:
net(3)l(k)=∑q-1i=0w(3)liO(2)i(k)-θ(3)l(18)
O(3)l(k)=g[net(3)l(k)]l=0,1,2(19)
O(3)0(k)=KpO(3)1(k)=KiO(3)2(k)=Kd(20)
ω(3)li為輸出層加權系數(shù),θ(3)l為輸出層閾值,輸出層神經(jīng)元活化函數(shù)取非負的Sigmoid函數(shù):
g(x)=1/(ex+e-x)(21)
3.2神經(jīng)網(wǎng)絡權系數(shù)調(diào)整
性能指標函數(shù)為:
E(k)=12[r(k+1)-y(k+1)]2=12e2(k+1)(22)
按照梯度下降法修正網(wǎng)絡的權系數(shù),即按E(k)對加權系數(shù)的負梯度方向搜索調(diào)整,并附加一個使搜索快速收斂至全局極小的慣性項,則有
Δw(3)li(k+1)=-ηE(k+1)w(3)li+γΔw(3)li(k)(23)
η為學習率,γ為慣性系數(shù)。而
E(k+1)w(3)li=E(k+1)y(k+1)·y(k+1)u(k)·
u(k)O(3)l(k)·O(3)l(k)net(3)l(k)·net(3)l(k)w(3)li(24)
這里需要用到變量y(k+1)/u(u)。由于y(k+1)/(k)未知,所以近似用符號函數(shù)sgn[y(k+1)/u(k)]來取代,由此帶來計算不精確的影響可通過調(diào)整學習速率η加以補償[16]。
由式(18)、(19)、(20)得:
u(k)O(3)0=e(k)-e(k-1)u(k)O(3)1=e(k)
u(k)O(3)2=e(k)-2e(k-1)+e(k-2) (25)
這樣,可得BP神經(jīng)網(wǎng)絡輸出層加權系數(shù)計算公式為:
Δw(3)li(k+1)=ηδ(3)lO(2)i(k)+γΔw(3)li(k)(26)
δ(3)l=e(k+1)·sgn[y(k+1)u(k)]·δu(k)O(3)l(k)·g[net(3)l(k)]l=0,1,2(27)
同理可得隱含層加權系數(shù)計算公式為:
Δw(2)ij(k+1)=ηδ(2)iO(1)j(k)+γΔw(2)li(k)(28)
δ(2)i=f[net(2)i(k)]∑2l=0δ(3)lw(3)li(k)
i=0,1,2…q-1(29)
4實驗與分析
4.1轉(zhuǎn)艏角速度保持控制仿真
分別使用設計的神經(jīng)網(wǎng)絡PID以及傳統(tǒng)PID控制器進行氣墊船轉(zhuǎn)艏角速度保持控制仿真。仿真時,設定氣墊船初始狀態(tài)艏向角為0°,轉(zhuǎn)艏角速度為0°/s,航速為15m/s,轉(zhuǎn)艏角速度期望值為2°/s。整個仿真過程中保持左右螺距角相同且始終不變,僅通過改變舵角實現(xiàn)氣墊船轉(zhuǎn)艏角速度控制。分別設定環(huán)境為無風,以及主風向角為45°,平均風速分別為5m/s、10m/s的脈動風,仿真結(jié)果如圖6、圖7、圖8所示。
4.2控制結(jié)果對比分析
比較圖6、圖7、圖8的轉(zhuǎn)艏角速度保持控制仿真曲線,發(fā)現(xiàn)神經(jīng)網(wǎng)絡PID控制下的收斂速度較快,對氣墊船轉(zhuǎn)艏角速度控制效果好。PID控制器在無環(huán)境風情況下,基本能滿足轉(zhuǎn)艏角速度控制要求,但在有脈動風干擾時穩(wěn)態(tài)誤差較大。神經(jīng)網(wǎng)絡PID控制器具有自學習、自適應能力,無論在無風還是有環(huán)境風干擾的狀況下,都能基本保持轉(zhuǎn)艏角速度穩(wěn)定,相對期望值的偏移總體小于傳統(tǒng)PID控制算法,抗干擾能力更強,是較優(yōu)良的控制算法。
5結(jié)語
全墊升氣墊船由于結(jié)構(gòu)的特殊性,其轉(zhuǎn)艏角速度相比常規(guī)排水船難于控制。本文設計了神經(jīng)網(wǎng)絡PID控制器,對全墊升氣墊船的轉(zhuǎn)艏角速度保持控制進行了仿真,并與常規(guī)PID控制的效果進行了對比。實驗結(jié)果顯示,在氣墊船受到環(huán)境風干擾時,神經(jīng)網(wǎng)絡PID控制器在克服干擾方面比常規(guī)PID控制效果更好。
參考文獻參考文獻:
[1]劉振業(yè),劉偉,付明玉,等.基于模糊自適應ADRC的全墊升氣墊船航向控制[J].信息與控制,2011,40(6):747752.
[2]胡妍妍.氣墊船特有操縱裝置在航向控制中的應用研究[D].哈爾濱:哈爾濱工程大學,2011.
[3]WANG C L, ZHANG H Y, FU M Y. Motion control of an amphibious hovercraft based on fuzzy weighting[C] .International Conference on Communication Technology.IEEE,2013:10061011.
[4]劉振業(yè),劉偉,付明玉,等.神經(jīng)網(wǎng)絡自抗擾全墊升氣墊船航跡控制[J].哈爾濱工程大學學報,2012,33(3):283288.
[5]劉偉,陳光祥.全墊升氣墊船墊升壓力控制[J].自動化技術與應 用,2014,33(10):2025.
[6]WANG F Z, YU Q X. Speedregulation system of PMLSM based on BP neural network PID control[J]. Advanced Materials Research,2012.
[7]OHNISHI Y, KITAGAWA H, MORI S, et al. Design of neural networks based FRIT PID controllers and its applications[J]. Ifac Proceedings Volumes,2013,46(11):355359.
[8]汪先兵,費樹岷,徐清揚,等.BP神經(jīng)網(wǎng)絡PID控制的永磁真空開關儲能電容恒流充電特性分析[J].電工技術學報,2015,30(10):212218.
[9]劉寧,王曉強,任慧龍,等.全墊升氣墊船在波浪中運動的非線性理論研究[J].華中科技大學學報:自然科學版,2014,42(4):9195.
[10]王成龍,付明玉,邊信黔,等.全墊升氣墊船四自由度運動仿真[J].計算機仿真,2009,26(7):278281.
[11]付明玉,王元慧,王成龍.海洋運載器運動建模[M].哈爾濱:哈爾濱工程大學出版社,2017.
[12]李木國,褚曉安,劉于之,等.開放式風速控制系統(tǒng)的研制[J].計算機測量與控制,2015,23(9):30263028.
[13]田園,楊承恩.基于ANFIS的舵阻橫搖系統(tǒng)[J].南京航空航天大學學報,2006,38(7):112115.
[14]趙光輝.幾種非線性控制算法的比較及過程控制實驗測試[D].青島:中國石油大學(華東),2010.
[15]田國鈺,黃海洋.神經(jīng)網(wǎng)絡中隱含層的確定[J].信息技術,2010(10):7981.
[16]王玲芝,王忠民.動態(tài)調(diào)整學習速率的BP改進算法[J].計算機應用,2009,29(7):18941896.
責任編輯(責任編輯:杜能鋼)