鄧魯克,呂東坡
(天津大學(xué) 海洋技術(shù)學(xué)院,天津 300072)
水下機(jī)器人在海洋、湖泊、河流等水下作業(yè)的應(yīng)用越來越廣泛,其中有纜水下機(jī)器人(Remotely Operated Vehicle,ROV)由于其具有操作靈活、可實時傳輸數(shù)據(jù)等優(yōu)點得到了廣泛的應(yīng)用。同時,水下機(jī)器人的穩(wěn)定性也提出了更高要求,獲取水下機(jī)器人的運動控制方程以及采取響應(yīng)速度更快的控制策略變得至關(guān)重要[1,2]。
ROV在水中運動情況較為復(fù)雜,為了能夠便于分析研究,根據(jù)艏向角和深度的變化將ROV的運動情況分為水平面與垂直面。ROV在水平面運動時,只改變艏向角,深度不會改變;在垂直面運動時,只會改變深度,艏向角不會改變,由于本次主要研究ROV姿態(tài)的控制,所以主要對艏向角進(jìn)行研究。
在進(jìn)行簡化之后,水下機(jī)器人在水平面的運動方程為[3]:
其中,X、Y、N與u、v、r方向相同,推進(jìn)器1、3和推進(jìn)器2、4提供的推力相反,推進(jìn)器產(chǎn)生的合力為各個推進(jìn)器提供的力之和:
圖1 ROV的三維模型
ROV的水動力模型為:
M是ROV的質(zhì)量矩陣;是附加質(zhì)量;
CRB(V)是ROV的科式力和向心力矩陣;
D(V)V為ROV水阻尼矩陣;
G(η)為由靜力產(chǎn)生的回復(fù)力(矩)向量;
T為推力系統(tǒng)產(chǎn)生的推力(矩)。
由于本次研究主要針對ROV的運動控制方程以及控制方法,所以水動力系數(shù)以及其余相關(guān)矩陣由仿真實驗得到的數(shù)據(jù)直接給出。
將式(1)和式(2)代入式(3)可得:
在理想的情況下,由于ROV的模型左右完全對稱,直航情況下ROV不會有u和r。但在實際情況下,ROV直航可能會由于外界擾動,在水平面內(nèi)除了會有u,還可能會有v和r,但是v和r數(shù)值較小,其乘積更可以忽略。此外,ROV以一定速度向前行駛,u保持不變,所以其導(dǎo)數(shù)為零。ROV左右形狀幾乎完全對稱,可以忽略橫向運動方向上產(chǎn)生的力以及會使ROV發(fā)生旋轉(zhuǎn)運動的力矩。式(3)可化簡為:
對上式進(jìn)行拉氏變換并進(jìn)行整理,得到艏向控制方程:
系統(tǒng)輸入:
系統(tǒng)輸出:
由式(6)、式(7)、式(8)可得控制系統(tǒng)的傳遞函數(shù):
在ROV實際運動中,因橫向速度、加速度引起的回轉(zhuǎn)力矩較小,而且因回轉(zhuǎn)加速運動對橫向力影響較小,所以N·v、Nv、Y·r較小,可以忽略,可將式(9)簡化為:
表1 ROV模型參數(shù)
遺傳算法是用計算機(jī)來模擬外界條件在生物進(jìn)化時對生物的優(yōu)化選擇作用[4]。
在針對有關(guān)優(yōu)化的問題上,遺傳算法也具有著諸多優(yōu)勢:
1)不僅能夠解決連續(xù)優(yōu)化的問題,還能解決離散優(yōu)化的問題;
2)可以同時針對多個變量進(jìn)行相應(yīng)處理;
3)在面對較為復(fù)雜的優(yōu)化問題上,可以更多的考慮全局最小值;
4)該算法是在解決優(yōu)化問題的時候采用的是編碼的方式,所以在分析離散數(shù)據(jù)和處理解析函數(shù)之外,還能針對有關(guān)符號數(shù)據(jù)的優(yōu)化問題進(jìn)行處理;
5)可以并行實現(xiàn)預(yù)期目標(biāo);
6)得出最優(yōu)解之后,可以將此最優(yōu)解有關(guān)的參數(shù)一并給出。
1)變量選擇與適應(yīng)函數(shù)
根據(jù)問題定義染色體(chromosome),即確定被優(yōu)化的變量集合。如果染色體包含Npop個變量,可表示為:
染色體通過適應(yīng)函數(shù)f來確定其適應(yīng)度,適應(yīng)度較高的個體在遺傳的時候保留下來的幾率也會相應(yīng)提高。
2)變量的編碼與解碼
本次解決的問題為離散優(yōu)化問題,所以采用二進(jìn)制編碼的方法,用其變量以及最小化適應(yīng)函數(shù)。二進(jìn)制法具有簡潔、利于實現(xiàn)遺傳操作的優(yōu)點。
其編碼公式為:
其解碼公式為:
其中,0≤pnorm≤1為規(guī)范化變量,plo為最小變量值,phi為最大變量值,gene[m]為基因,是pn在二進(jìn)制的表示形式,round{}為對括號內(nèi)容取整的函數(shù),pquant為pnorm量化后的表示形式,qn為pn的量化值。
3)種群與染色體的自然選擇
在進(jìn)行每一代之間的自然選擇的時候,假設(shè)種群中染色體的數(shù)量為Npop,染色體的長度為Nbit,染色體的保留比例為Xrate,則每一代遺傳之后保留下來的染色體數(shù)量為:
新一代染色體保留了Nkeep之后,會將余下的染色體進(jìn)行舍棄,因此需要補(bǔ)充Npop-Nkeep個色體,保證下一次的遺傳可以正常進(jìn)行。新生成染色體的配對方法有三種:順序配對、隨機(jī)配對、加權(quán)隨機(jī)配對、競爭配對。本論文將所有染色體按照適應(yīng)度降序排名,且保留50條基因,排名靠后的基因?qū)惶蕴?/p>
4)染色體交叉
染色體的交叉是為了能夠?qū)⒏复旧w通過配對將基因遺傳到新的染色體上。本遺傳算法設(shè)定交叉概率PC=0.8。
5)染色體變異
變異操作用于對二進(jìn)制串中特定的位置進(jìn)行變化。此操作可以引入原本不存在于種群中的基因,使得染色體在空間中能夠包含更多可能的解。本遺傳算法設(shè)定變異概率PM=0.1。
6)終止條件
當(dāng)遺傳算法滿足指定條件的時候,算法計算結(jié)束。終止條件主要優(yōu)化解的結(jié)果落入預(yù)定范圍中,算法計算的次數(shù)達(dá)到預(yù)設(shè)次數(shù)的最大值,或者種群中每個染色體的適應(yīng)值都相同等。
圖2 二進(jìn)制遺傳算法的基本步驟組成
PID控制在生產(chǎn)過程中是一種非常常見的控制策略,利用輸入值r(t)與輸出值的的偏差e(t),按照比例、積分、微分的函數(shù)關(guān)系進(jìn)行運算,并將其結(jié)果應(yīng)用于對輸出的控制,從而達(dá)到一個穩(wěn)定的狀態(tài)[5]。
圖3 PID控制原理圖
其中:
kP為比例系數(shù)、TI為積分時間系數(shù)、TD為微分時間系數(shù)。
本系統(tǒng)將會對PID通過kP、kI、kD三個參數(shù)進(jìn)行優(yōu)化,其中0≤kP≤50,0≤kI≤1,0≤kD≤1。
為了防止限制的控制量超出預(yù)期以及考慮到相應(yīng)的暫態(tài)性能,決定用輸入的平方項和誤差絕對值的積分作為目標(biāo)函數(shù)。
w1、w2、w3、w4為權(quán)值,取值:w1=0.5、w2=0.4、w3=1.0、w4=0.5。
e(t)=cd-c為誤差,σ=cmax-c(∞)為超調(diào)量,tr為上升時間,tp為峰值時間,ts為調(diào)整時間。
圖4 遺傳算法PID原理圖
在MATLAB中,設(shè)置傳遞函數(shù)為G(s),迭代次數(shù)設(shè)為200次,仿真時間設(shè)置為10s,變量個數(shù)設(shè)置為3,種群上限設(shè)置為50,單個變量的編碼基因長度設(shè)置為10,交叉概率設(shè)置為0.8,變異概率設(shè)置為0.1,自我復(fù)制概率設(shè)置為0.2。
圖5 遺傳算法目標(biāo)函數(shù)值優(yōu)化曲線
從圖中可以看出,最優(yōu)函數(shù)值1s附近開始急劇下降,后續(xù)下降相較之前變得較為平坦??傻贸鲞z傳算法對于PID三個參數(shù)的整定速度較快,且后續(xù)較穩(wěn)定。
圖6 階躍信號的響應(yīng)曲線
經(jīng)過遺傳算法計算之后,針對水下機(jī)器人姿態(tài)調(diào)節(jié)的PID三個參數(shù)分別為kP=19.8754、kI=0.0010、kD=0.0287。上升時間較PID減少了2s,調(diào)整時間減少25s,超調(diào)量增加了9.8%。
由于水下機(jī)器人在水下遇到擾動時需要較快的響應(yīng)速度,調(diào)整自身姿態(tài),回到預(yù)定軌跡,所以對響應(yīng)速度要求較高。PID算法雖然也可以完成對于擾動的抑制效果,但從實驗中可以看到響應(yīng)速度較慢,而遺傳PID則具有更快的反應(yīng)速度,利于水下機(jī)器人及時調(diào)節(jié)自身姿態(tài)。雖然遺傳PID超調(diào)量較大,但由于水下機(jī)器人運動時也具有一定慣性,對系統(tǒng)的動態(tài)特性也會有一定的要求,超調(diào)量較大也可以使機(jī)器人更快回到直航姿態(tài)。從仿真實驗來看,遺傳PID相較于PID算法具有更佳的控制效果。