趙 偉, 張曉暉, 楊松楠
(西安理工大學(xué) 自動(dòng)化與信息工程學(xué)院, 陜西 西安 710048)
多關(guān)節(jié)機(jī)械臂由于其靈活性,是執(zhí)行水下資源勘測(cè)、水下檢測(cè)維修等任務(wù)的理想工具。區(qū)別于陸用機(jī)械臂,水下機(jī)械臂在運(yùn)動(dòng)時(shí)會(huì)受到水作用力的影響以及多種難以預(yù)測(cè)的外部干擾[1]。分析水下機(jī)械臂的受力情況與提高水下機(jī)械臂的控制精度有助于水下機(jī)械臂的設(shè)計(jì)研發(fā)[2]。
精準(zhǔn)的動(dòng)力學(xué)模型是水下機(jī)械臂運(yùn)動(dòng)仿真與控制器設(shè)計(jì)的基礎(chǔ)[3]。文獻(xiàn)[4]通過(guò)理論分析計(jì)算了單關(guān)節(jié)水下機(jī)械臂的動(dòng)力學(xué)模型。文獻(xiàn)[5]利用Navier-Stokes方程計(jì)算了物體在水中的動(dòng)力學(xué)模型,該方法求解過(guò)程復(fù)雜,不適用于多關(guān)節(jié)水下機(jī)械臂。文獻(xiàn)[6]使用切片理論計(jì)算了水下機(jī)械臂的動(dòng)力學(xué)模型,提供了新的計(jì)算思路。文獻(xiàn)[7]使用微分變化法構(gòu)建了機(jī)械臂在水環(huán)境中的動(dòng)力學(xué)模型,通過(guò)仿真驗(yàn)證了機(jī)械臂在靜水環(huán)境中受水作用力的影響,但沒(méi)有計(jì)算水流對(duì)機(jī)械臂的沖擊力。
實(shí)時(shí)性和抗干擾性是衡量水下機(jī)械臂控制器性能的重要指標(biāo)[8]。水下機(jī)械臂是典型的多輸入多輸出的非線性系統(tǒng),國(guó)內(nèi)外研究學(xué)者針對(duì)此類系統(tǒng)提出了許多先進(jìn)控制算法。文獻(xiàn)[9]將前饋模糊補(bǔ)償器引入滑??刂扑惴?,用于消除動(dòng)力學(xué)模型中的不確定干擾項(xiàng)。文獻(xiàn)[10]使用自適應(yīng)滑??刂扑惴▽?shí)現(xiàn)了水下機(jī)械臂的控制,該算法具有良好的魯棒性,但實(shí)時(shí)性仍有待提高。文獻(xiàn)[11]和文獻(xiàn)[12]利用徑向基(RBF)網(wǎng)絡(luò)動(dòng)態(tài)逼近模型誤差,提高了多關(guān)節(jié)機(jī)械臂控制器的響應(yīng)速度,證明了利用前饋神經(jīng)網(wǎng)絡(luò)在多關(guān)節(jié)機(jī)械臂控制器設(shè)計(jì)中的有效性。
本文利用切片理論與Morison公式計(jì)算了雙關(guān)節(jié)水下機(jī)械臂在運(yùn)動(dòng)時(shí)受到的水阻力、附加質(zhì)量力、浮力與水流的沖擊力,結(jié)合傳統(tǒng)機(jī)械臂動(dòng)力學(xué)方程推導(dǎo)出雙關(guān)節(jié)水下機(jī)械臂在水環(huán)境中的動(dòng)力學(xué)模型?;趧?dòng)力學(xué)模型提出了一種RBF滑??刂撇呗?,該策略使用多個(gè)RBF神經(jīng)網(wǎng)絡(luò)分塊逼近動(dòng)力學(xué)模型中的不確定項(xiàng),快速補(bǔ)償計(jì)算模型與實(shí)際模型的誤差;使用飽和函數(shù)改進(jìn)控制律,削弱控制系統(tǒng)的抖振效應(yīng)。
雙關(guān)節(jié)水下機(jī)械臂的結(jié)構(gòu)簡(jiǎn)化示意圖見(jiàn)圖1,圖中l(wèi)1和l2是機(jī)械臂連桿的長(zhǎng)度,m1和m2是連桿的質(zhì)量,q1和q2代表機(jī)械臂關(guān)節(jié)的轉(zhuǎn)動(dòng)角度。根據(jù)圖1,使用Lagrange方程求解出雙關(guān)節(jié)水下機(jī)械臂的傳統(tǒng)動(dòng)力學(xué)方程如式(1)所示[13]。
圖1 雙關(guān)節(jié)水下機(jī)械臂結(jié)構(gòu)簡(jiǎn)化示意圖Fig.1 Simplified schematic diagram for double-joint manipulator
(1)
水下機(jī)械臂在水中受到的力分別為水流對(duì)靜止機(jī)械臂的沖擊力和機(jī)械臂在靜水中運(yùn)動(dòng)時(shí)所受的作用力。根據(jù)流體力學(xué),物體單位長(zhǎng)度在靜水中運(yùn)動(dòng)時(shí)的受到的作用力可以描述為:
(2)
式中:fd、fm、ff和fl分別為水阻力、附加質(zhì)量力、浮力和升力。
本文研究的雙關(guān)節(jié)水下機(jī)械臂模型的連桿均為圓柱體,因此在進(jìn)行受力分析時(shí)不用考慮升力帶來(lái)的影響。
Morison方程給出了水阻力和附加質(zhì)量力的微分計(jì)算公式:
(3)
式中:ρ是水密度;D是連桿直徑;A是連桿垂直于水流速度方向上的投影面積;v是與速度相關(guān)的函數(shù);Cd和Cm是水阻力系數(shù)與附加質(zhì)量力系數(shù),難以直接獲取精確值,一般選用經(jīng)驗(yàn)值[14]。
根據(jù)圖1中雙關(guān)節(jié)水下機(jī)械臂的D-H坐標(biāo)系,繪制其運(yùn)動(dòng)模型示意圖,見(jiàn)圖2。
圖2 雙關(guān)節(jié)水下機(jī)械臂運(yùn)動(dòng)模型示意圖Fig.2 Schematic diagram for motion model of double-joint underwater manipulator
(4)
式中:c1=cosq1,c2=cosq2。
(5)
(6)
(7)
(8)
根據(jù)式(9)和式(10)求得機(jī)械臂關(guān)節(jié)J1與關(guān)節(jié)J2受到水流沖擊力矩T″1與T″2。
(9)
(10)
根據(jù)上述推導(dǎo)過(guò)程,可將雙關(guān)節(jié)水下機(jī)械臂關(guān)節(jié)在水中受到的水作用力矩歸納為TW:
(11)
假設(shè)雙關(guān)節(jié)水下機(jī)械臂各關(guān)節(jié)連桿的重心與浮心的位置重合,且重力與浮力的作用力方向相反,可根據(jù)下式求得機(jī)械臂各連桿的等效重力:
(12)
式中:mi為連桿i的質(zhì)量;g為重力加速度;Vi為連桿i的體積;ρ為水密度;ρm為機(jī)械臂的等效密度。
根據(jù)式(12)與重力矩陣g求得雙關(guān)節(jié)水下機(jī)械臂的等效重力矩陣g′:
g′=
(13)
式中:c12=cos(q1+q2)。
將由式(11)求得的水作用力矩陣TW與式(13)求得的等效重力矩陣g′結(jié)合式(1)可以求得水下機(jī)械臂在水環(huán)境中的動(dòng)力學(xué)模型:
(14)
定義滑模函數(shù)為:
(15)
e(t)=qd-q
(16)
對(duì)式(15)進(jìn)行求導(dǎo)可得:
(17)
(18)
f+εsgns+ks
(19)
式中:M′=M+Mw,C′=C+Cw。
將式(19)中的不確定項(xiàng)整理得到:
(20)
由于式(20)中包含了多個(gè)不確定參數(shù)項(xiàng),使用常規(guī)RBF神經(jīng)網(wǎng)絡(luò)控制器對(duì)其進(jìn)行整體逼近會(huì)產(chǎn)生逼近時(shí)間過(guò)長(zhǎng)與逼近精度不足的問(wèn)題。
為解決上述問(wèn)題,本文使用由四個(gè)RBF神經(jīng)網(wǎng)絡(luò)組成RBF神經(jīng)網(wǎng)絡(luò)控制器對(duì)式(20)中的系數(shù)矩陣進(jìn)行分塊逼近,再結(jié)合滑模控制算法設(shè)計(jì)水下機(jī)械臂控制器,控制器的原理框圖見(jiàn)圖3。
圖3 水下機(jī)械臂控制器設(shè)計(jì)原理框圖Fig.3 Underwater manipulator controller design principle block diagram
根據(jù)上圖中RBF神經(jīng)網(wǎng)絡(luò)控制器的結(jié)構(gòu)可知各RBF神經(jīng)網(wǎng)絡(luò)的輸入分別為:
(21)
(22)
(23)
(24)
RBF神經(jīng)網(wǎng)絡(luò)控制器的各網(wǎng)絡(luò)隱含層均包含五個(gè)神經(jīng)元,神經(jīng)元內(nèi)部算子均為Gauss核函數(shù):
(25)
式中:ci為第i個(gè)神經(jīng)元的中心矢量,bi為神經(jīng)元的基寬度。
各RBF神經(jīng)網(wǎng)絡(luò)的自適應(yīng)律分別為:
(26)
(27)
(28)
(29)
式中:FM′、FC′、Fg′與Ff均為正定矩陣。
(30)
式中:
(31)
式中:K為控制系數(shù)矩陣,A為大于0的常數(shù)。Ks+Asat(s)用于消除外部干擾τd與神經(jīng)網(wǎng)絡(luò)控制器的輸出誤差δ。
定義正定的Lyapunov函數(shù)L:
(32)
對(duì)Lyapunov函數(shù)L進(jìn)行求導(dǎo)可得:
(33)
(34)
(35)
當(dāng)A≥(‖δ‖+‖τd‖)時(shí),有:
sT(τd-Asat(s)+δ)≤0
(36)
圖4中展示的是在雙關(guān)節(jié)水下機(jī)械臂仿真控制實(shí)驗(yàn)中整體逼近型RBF神經(jīng)網(wǎng)絡(luò)控制器與分塊逼近型RBF神經(jīng)網(wǎng)絡(luò)控制器的輸出對(duì)比。
圖4 RBF神經(jīng)網(wǎng)絡(luò)控制器輸出對(duì)比圖Fig.4 RBF neural network output comparison diagram
從上圖可以看出分塊逼近RBF神經(jīng)網(wǎng)絡(luò)控制器在0.8 s附近實(shí)現(xiàn)了對(duì)目標(biāo)值的逼近,整體逼近型RBF神經(jīng)網(wǎng)絡(luò)控制器在1.2 s附近實(shí)現(xiàn)對(duì)目標(biāo)值的逼近。結(jié)果表明使用多個(gè)RBF神經(jīng)網(wǎng)絡(luò)對(duì)雙關(guān)節(jié)水下機(jī)械臂動(dòng)力學(xué)模型中的不確定參數(shù)進(jìn)行分塊逼近可以提高對(duì)實(shí)際模型的逼近速度,分塊逼近RBF神經(jīng)網(wǎng)絡(luò)控制器相比于整體逼近RBF神經(jīng)網(wǎng)絡(luò)控制器具有更好逼近效果。
不同控制算法下雙關(guān)節(jié)水下機(jī)械臂各關(guān)節(jié)的角度跟蹤曲線見(jiàn)圖5,角度的跟蹤誤差曲線見(jiàn)圖6,仿真實(shí)驗(yàn)數(shù)據(jù)見(jiàn)表1。
圖5 雙關(guān)節(jié)水下機(jī)械臂各關(guān)節(jié)角度跟蹤曲線Fig.5 Angel tracking curve of each joint of double-joint underwater manipulator
圖6 雙關(guān)節(jié)水下機(jī)械臂各關(guān)節(jié)角度跟蹤誤差曲線Fig.6 Angle tracking error curve of each joint of double-joint underwater manipulator
表1 仿真實(shí)驗(yàn)數(shù)據(jù)分析表
通過(guò)表1中的數(shù)據(jù)對(duì)比可知,使用RBF神經(jīng)網(wǎng)絡(luò)優(yōu)化滑??刂扑惴梢悦黠@提升傳統(tǒng)滑模控制算法的性能。使用分塊逼近RBF滑??刂扑惴〞r(shí),關(guān)節(jié)1和關(guān)節(jié)2的響應(yīng)時(shí)間分別為1.03 s與0.97 s,最大穩(wěn)態(tài)誤差分別為3.81×10-4rad與2.72×10-4rad,平均穩(wěn)態(tài)誤差分別為1.18×10-6rad與-3.68×10-6rad。使用整體逼近RBF滑??刂扑惴〞r(shí),關(guān)節(jié)1和關(guān)節(jié)2的響應(yīng)時(shí)間分別為1.36 s與1.32 s,最大穩(wěn)態(tài)誤差分別為9.67×10-4rad與6.75×10-4rad,平均穩(wěn)態(tài)誤差分別為4.24×10-6rad與-6.73×10-6rad。
經(jīng)對(duì)比,分塊逼近RBF滑??刂扑惴▽⑺聶C(jī)械臂的關(guān)節(jié)響應(yīng)時(shí)間縮短了24%和27%,最大穩(wěn)態(tài)誤差減少了60%和59%,平均穩(wěn)態(tài)誤差減少了72%和45%。
從圖7所示的關(guān)節(jié)2控制輸入曲線圖可以看出,當(dāng)控制律中使用開(kāi)關(guān)函數(shù)時(shí),關(guān)節(jié)2的控制輸入存在劇烈抖振,振動(dòng)幅度為0.6 N·m。當(dāng)控制律中使用飽和函數(shù)sat(s)時(shí),關(guān)節(jié)2的控制輸入的抖振現(xiàn)象明顯減小,振動(dòng)幅度為0.01 N·m。
圖7 關(guān)節(jié)2控制輸入曲線Fig.7 Control input curve for joint 2
仿真實(shí)驗(yàn)結(jié)果表明,本文提出的基于動(dòng)力學(xué)模型分塊逼近的水下機(jī)械臂RBF滑??刂扑惴ㄏ啾扔趥鹘y(tǒng)滑??刂坪驼w逼近RBF滑模控制可以大幅縮短水下機(jī)械臂控制系統(tǒng)的響應(yīng)時(shí)間,降低控制系統(tǒng)的最大穩(wěn)態(tài)誤差與平均穩(wěn)態(tài)誤差,并能夠抑制控制系統(tǒng)的抖振效應(yīng),實(shí)現(xiàn)良好的控制效果。
1) 通過(guò)計(jì)算雙關(guān)節(jié)水下機(jī)械臂在水中運(yùn)動(dòng)時(shí)受到的水作用力矩,建立了雙關(guān)節(jié)水下機(jī)械臂在水環(huán)境中的動(dòng)力學(xué)模型。
2) 結(jié)合水下機(jī)械臂的動(dòng)力學(xué)模型,提出了一種分塊逼近RBF滑??刂扑惴ǎ撍惴s短了對(duì)水下機(jī)械臂實(shí)際動(dòng)力學(xué)模型的逼近時(shí)間,提升了逼近精度,從而縮短了控制系統(tǒng)的響應(yīng)時(shí)間,提高了控制系統(tǒng)的控制精度;通過(guò)飽和函數(shù)改進(jìn)了控制律,有效削弱了控制系統(tǒng)的抖振效應(yīng)。仿真試驗(yàn)結(jié)果表明該算法將水下機(jī)械臂的關(guān)節(jié)響應(yīng)時(shí)間縮短至1 s,穩(wěn)態(tài)精度提升至3×10-6rad,滿足水下機(jī)械臂的控制要求。
西安理工大學(xué)學(xué)報(bào)2021年4期