陳志梅,盧瑩斌,邵雪卷,趙志誠
(太原科技大學 電子信息工程學院,太原 030024)
在海洋上,深海起重機船體受海浪、洋流等因素的影響,會產生升沉、艏搖、橫搖、橫移、縱移、縱搖6個方向的復雜自由運動。這些復雜的自由運動會給深海起重機正常作業帶來極大的安全隱患。隨著船舶動力定位系統的逐步發展,船體的艏搖、橫搖、橫移、縱移、縱搖均能夠得到較好的控制。因此,為了進一步消除升沉運動對深海起重機帶來的不良影響,就需要對深海起重機進行升沉補償。
在對于深海起重機的模型建立上,文獻[1]對升沉補償系統進行了動力學建模,并引入PID控制,采用Simulink與ADAMS對系統進行了聯合仿真。文獻[2]對電驅動絞車型升沉補償系統進行了建模與仿真。
在對于深海起重機升沉補償系統的控制研究上,文獻[3]將模糊PID控制方法與BP網絡PID控制進行了比較,表明BP網絡PID控制控制效果更佳。與PID控制相比,模型預測控制(Model Predictive Control-MPC)能顧及不確定性的影響并及時反饋校正,實現滾動優化。文獻[4]將PID控制與模型預測控制進行對比,結果表明模型預測控制方法性能優于PID控制方法。
由于系統慣性和信號傳輸等因素的影響,升沉補償系統存在一定的時延問題。文獻[5-6]針對此問題進行了研究。
對于深海起重機這種在復雜環境下工作的系統來說,精確的數學模型是很難建立的。與傳統預測方法相比,神經網絡無需對被控制對象進行精確建模,并且能很好地適應各種復雜的環境,見文獻[7-10]的研究。
雖然對于深海起重機升沉補償的研究已經取得了豐碩成果,但傳統的神經網絡的訓練速度緩慢,預測精度不高。LSTM網絡具有時序記憶功能,具有較好的預測精度,見文獻[11-12]的研究。傳統LSTM網絡存在求解梯度緩慢的問題,而CNN網絡具有對數據進行特征提取的功能,可以減少網絡中的數據量,加快網絡的訓練速度。
因此,本文在LSTM網絡的基礎上,利用CNN的特征提取功能減小網路的訓練壓力,設計了CNN-LSTM深度學習網絡預測模型。
深海起重機升沉補償系統主要由絞車,復合式液壓缸,電液比例換向閥等元件組成。文獻[13]設計的升沉補償系統,如圖1所示:
圖1 深海起重機升沉補償系統原理圖
此升沉補償系統的原理為:纜繩的一端與絞車相連,另一端與負載相連。在圖1的復合液壓缸中,左側為被動液壓缸,右側為主動液壓缸,其中,主動液壓缸可通過電液比例換向閥控制其伸縮。為了彌補復合液壓缸行程的不足,纜繩在動滑輪組與靜滑輪組之間纏繞兩圈,使得液壓缸行程進行了四倍放大。假定絞車不旋轉,當海浪運動引起船體上升時,負載就會跟隨船體上升。此時可以通過控制主動液壓缸減小動滑輪組與靜滑輪組之間的距離,使得負載位置保持不變。同理,當海浪運動引起船體下降時,控制主動液壓缸增大動滑輪組與靜滑輪組之間的距離即可。
深海起重機升沉補償系統的位移關系可表示為:
(1)
對負載與復合液壓缸進行受力分析,可得:
T-Mtg=Mt(d2y/dt2)
(2)
(3)
其中,T為纜繩的拉力,Mt為負載質量,g為重力加速度。Pc為被動液壓缸的油壓,A1為被動液壓缸活塞的面積,A2為主動缸的面積,PL為主動液壓缸的油壓,Mb為復合液壓缸活塞桿的質量,Bk為液壓油粘性阻尼系數。
對蓄能器進行分析,可得:
P=P0V0/V
(4)
其中,P0為蓄能器內部的初始壓力,V0為蓄能器內的初始氣體體積,P為升沉補償系統工作時氣體的壓力,V為升沉補償系統工作時氣體的體積。
此外,體積變化量ΔV=ybA1,可得:
V=V0+ybA1
(5)
因為V相對于V0變化很小。因此,在式(4)中,將P視為因變量,V視為自變量,在V0處對V進行泰勒展開,可得:
P=2P0-(P0/V0)V
(6)
在初始狀態下,系統處于受力平衡狀態,蓄能器的氣體壓力與復合液壓缸活塞桿重力跟纜繩拉力的的四倍之和相等,纜繩拉力與負載重力相等,可得:
P0A1=4Mtg+Mbg
(7)
此外,為了增強升沉補償系統的阻尼作用,需要在油路中串入a個節流閥,可得:
(8)
(9)
其中,q為節流閥的流量特性,d為節流閥閥孔直徑,l為閥孔的長度,μ為油液粘性系數,ΔP為節流閥兩端液壓差,P為蓄能器內部氣體壓力,Pc指的是被動液壓缸內部油壓,hc=128aμl/(πd4).
主動液壓缸流量連續方程為:
QL=A2(dyb/dt)+[Vt/(4βe)]dPL/dt
(10)
其中,QL為主動缸的負載流量,Vt為主動缸的內部體積,βe為有效體積彈性模量。
將電液比例換向閥簡化為一個比例環節,得:
(11)
其中,Ps為供油油壓,I為電液比例換向閥控制輸入。
聯立式(1)-式(11),得其深海起重機升沉補償系統動力學模型為:
y(s)=
I(s)+
ys(s)
(12)
其中,I(s)部分表示電液比例換向閥輸入電流對負載位移產生的影響??芍?可以通過控制電液比例換向閥輸入電流,進而控制負載的位移,實現升沉補償;ys(s)部分表示船體升沉運動對負載位移產生的影響,為系統的干擾。
1.2.1 海浪的數值模擬
為了對海浪進行數值模擬,將海浪視為具有不同初相位與頻率的余弦波的疊加,可得:
(13)
其中,ξ為海浪某固定位置x相對于靜止水面的海浪高度;ai為各個余弦波的振幅;ωi為各個余弦波的角速度;εi為各個余弦波的初相。
海浪譜S(ω)是隨機海浪能量密度相對于組成波頻率的分布函數,海浪頻譜與余弦波振幅ai的關系為:
(14)
本文采用PM譜作為海浪譜,其譜函數為:
(15)
其中,H1/3代表有義波高。
1.2.2 船體升沉運動
一般情況下,船體升沉運動由海浪引起,船體升沉運動與海浪具有相同的頻率。通常情況下,將船體升沉運動看作海浪乘以一定的比例系數,可得:
ys(t)=μyh(t)
(16)
其中,yh(t)為海浪相對于靜止水面的海浪高度。ys(t)為船體的升沉位移。μ為船體升沉運動與海浪的比例系數。
由深海起重機動力學模型可知,升沉補償系統的控制輸入為電液比例換向閥的輸入電流I(在本節用u表示);輸出為負載位移y.由CNN-LSTM(Convolutional Neural Network-Long-Short Term Memory)深度學習網絡建立深海起重機升沉補償系統預測模型:
yn(k+1)=g[y(k),…,y(k-n+1),
u(k),…,u(k-m+1)]
(17)
其中,n為預測模型輸出量階數,m為預測模型輸入量階數,yn為網絡預測值,u(k)、y(k)分別為系統k時刻的輸入輸出數據。
本文對建立好的深海起重機升沉補償系統模型進行仿真,得到20 000組系統的輸入輸出數據。并將數據按照9:1的比例劃分為訓練集與測試集。將本文建立的CNN-LSTM深度學習網絡預測模型與RBF網絡預測模型的預測結果進行對比,預測誤差如表1所示:
表1 起重機負載位移預測誤差對比
由表可知,相比于RBF神經網絡,本文建立的CNN-LSTM深度學習網絡預測精度更高。
為了對系統輸出進行P步預測,需要利用CNN-LSTM深度學習網絡對系統輸出進行遞推預測,遞推公式可以表示為:
(18)
其中,y(k)為k時刻負載位移,yn(k+1)為深度學習網絡預測的k+1時刻負載位移。其中,由于y(k+1)~y(k+P-1)在k時刻未知,可用CNN-LSTM深度學習網絡對負載位移的預測值yn(k+1)~yn(k+P-1)代替。
2.2.1 滑模面建立
定義系統誤差:
e(k)=yr(k)-y(k)
(19)
其中,y(k)為k時刻負載的實際位移,yr(k)為k時刻負載的期望位移。
定義滑模面為:
s(k)=Ce(k)
(20)
其中,C為適維矩陣。
2.2.2 滑模面參考軌跡
由預測控制理論可知,滑模面s(k)需要跟隨一條滑模參考軌跡sr(k).為了保證良好的控制性能,本文采用冪次趨近律[14]設計滑模參考軌跡。冪次函數可表示為:
(21)
其中,0<α<1,0<δ<1.
滑模面參考軌跡為:
(22)
為了減小起重機負載位移預測誤差,本文在預測k+1時刻系統輸出位移時,通過引入k時刻的負載實際位移與預測位移誤差,對k+1時刻的系統輸出位移預測值進行修正??傻?
yp(k+1)=yn(k+1)+hie(k)
(23)
其中,yp為修正后系統預測位移,hi為誤差修正系數。
2.4.1 性能指標
定義:
Sp(k+1)=[sp(k+1),sp(k+2),…,sp(k+P)]T
Sr(k+1)=[sr(k+1),sr(k+2),…,sr(k+P)]T
Yr(k+1)=[yr(k+1),yr(k+2),…,yr(k+P)]T
Yn(k+1)=[yn(k+1),yn(k+2),…,yn(k+P)]T
U(k)=[u(k),u(k+1),…,u(k+P-1)]T
Q=diag[Q1,Q2,…,QP]
其中,P為預測步長,Sp(k+1)為滑模面預測值向量,Sr(k+1)為滑模面參考值向量,Yr(k+1)為負載的期望位移向量,Yn(k+1)為負載位移的預測值向量,U(k)為k時刻系統的控制律,Q為跟蹤誤差加權系數矩陣。
為了保證系統控制系統具有良好控制性能,本文設計如下性能指標:
J=[Sp(k+1)-Sr(k+1)]T
Q[Sp(k+1)-Sr(k+1)]
(24)
2.4.2 粒子群算法(PSO)滾動優化
PSO算法,就是根據粒子搜尋規則,在規定范圍內搜尋使得適應度函數的適應度最佳的粒子位置。本文取性能指標J作為PSO算法的適應度函數??刂坡蒛(k)作為粒子群中粒子的位置。設預測步長為P,則U(k)為P維列向量,取粒子搜尋的空間維數D=P.
根據PSO算法進行滾動優化,獲得系統最優控制律U(k).則控制器在k時刻的控制律輸出為:
u(k)=[1,0,…,0]U(k)
(25)
選取預測步長P=6,控制步長N=3.因此,本文CNN-LSTM深度學習網路輸入維度為9,CNN-LSTM深度學習網路輸出維度為1.滑模面系數矩陣取C=[200,20,1,1,1,1],跟蹤誤差加權系數矩陣取Q=4·I,誤差校正系數hi取1.在四級海況下,負載為2T,取參考位移yr為單位階躍信號,將本文控制方法與PID控制、傳統模型預測控制進行比較,結果如圖2所示:
圖2 階躍信號跟蹤
圖3 4級海浪下船體位移與負載實際位移
圖4 5級海浪下船體位移與負載實際位移
圖5 6級海浪下船體位移與負載實際位移
三種控制方法控制結果可總結為表2:
表2 階躍跟蹤性能比較
由表2可知,本文的控制方法與PID控制、模型預測控制相比,性能更為優越,能更好地跟蹤參考位移。
取負載為4T,參考位移yr為始終為0時,得系統在不同海浪下的船體升沉位移與加入控制器后的負載實際位移,并將其與傳統模型預測控制相比較,可得:
由表3可知,與傳統模型預測控制相比,本文設計的滑模預測控制方法在不同海況下的補償精度更高,精度可達97%以上。
表3 升沉補償精度表
本文設計的基于CNN-LSTM深度學習網絡的滑模預測控制方法。采用CNN-LSTM深度學習網絡作為預測模型;將滑??刂婆c模型預測控制相結合,根據參考位移與實際位移的誤差建立了滑模面,并設計了滑模面參考軌跡;最后采用了粒子群算法對性能指標進行尋優。最終通過分析仿真結果,可以得出以下結論:
(1)與RBF神經網絡相比,本文所采用的CNN-LSTM深度學習網絡的預測精度更高。
(2)與PID控制,傳統模型預測控制相比,本文的滑模預測控制方法超調量更小,調整時間更短。
(3)與傳統模型預測控制相比,本文的滑模預測控制方法在同一海況下補償精度更高,在不同海況下的魯棒性更強。