張 磊,魯 凱,高春俠,劉榮明,丁 浩,田 偉,洪 偉
(1.中國(guó)石油大學(xué)(華東)新能源學(xué)院,山東青島 266580;2.中海石油(中國(guó))有限公司天津分公司,天津 300459)
焊接機(jī)器人因其有效工作空間有限,需要使用額外的輔助設(shè)備[1,2].實(shí)現(xiàn)焊接任務(wù)有賴于軌跡規(guī)劃及軌跡跟蹤控制,因此,對(duì)二者的研究就顯得很有必要.機(jī)器人是一種非線性、強(qiáng)耦合的系統(tǒng),傳統(tǒng)的線性控制方法很難實(shí)現(xiàn)精確控制[3].
目前已經(jīng)有許多軌跡規(guī)劃方法.文獻(xiàn)[4]提出一種改進(jìn)快速擴(kuò)展隨機(jī)樹(shù)的多機(jī)器人編隊(duì)路徑規(guī)劃算法,用于解決多機(jī)器人在復(fù)雜環(huán)境下的編隊(duì)路徑規(guī)劃問(wèn)題.文獻(xiàn)[5]采用B-spline 進(jìn)行軌跡規(guī)劃,考慮角度、速度、動(dòng)態(tài)轉(zhuǎn)矩約束,但是轉(zhuǎn)矩約束可能會(huì)與其他約束沖突.文獻(xiàn)[6]提出一種可以在動(dòng)態(tài)環(huán)境下實(shí)時(shí)地為移動(dòng)機(jī)器人規(guī)劃出一條安全且最短的路徑的方法.文獻(xiàn)[7]提出一種高斯混合樣條的算法,利用運(yùn)動(dòng)數(shù)據(jù)集生成軌跡.綜上所述,目前已有的方法計(jì)算量都較大.因此,本文在現(xiàn)有的方法基礎(chǔ)之上,提出一種改進(jìn)的三次樣條插值的軌跡規(guī)劃方法.
為了實(shí)現(xiàn)精確軌跡跟蹤,大量的控制方法被提出.文獻(xiàn)[8]利用線性自抗擾技術(shù)實(shí)現(xiàn)高速四輪車的軌跡跟蹤,但是未考慮峰值現(xiàn)象;文獻(xiàn)[9]采用滑??刂品椒ㄔO(shè)計(jì)軌跡跟蹤控制規(guī)律;文獻(xiàn)[10]提出一種考慮關(guān)節(jié)角加速度約束的仿人機(jī)器人偏擺力矩控制方法;文獻(xiàn)[11]設(shè)計(jì)一種基于移動(dòng)機(jī)器人運(yùn)動(dòng)模型的模糊開(kāi)閉環(huán)PID-P型非線性離散迭代學(xué)習(xí)控制方法;文獻(xiàn)[12]提出一種二維控制器,使用H∞框架解決規(guī)范之間權(quán)衡的約束控制設(shè)計(jì)問(wèn)題.這些方法能夠解決軌跡跟蹤問(wèn)題,但是只是考慮運(yùn)動(dòng)學(xué)約束,未考慮對(duì)實(shí)際研究?jī)r(jià)值的動(dòng)力學(xué)約束.
綜上所述,為了抑制峰值現(xiàn)象,提高跟蹤精度,本文提出了一種變?cè)鲆孀钥箶_技術(shù)的機(jī)器人軌跡跟蹤控制方法.首先,采用跟蹤微分器將逆運(yùn)動(dòng)學(xué)求解的關(guān)節(jié)變量處理為插值點(diǎn)區(qū)間;然后,根據(jù)目標(biāo)函數(shù)選取插值點(diǎn)擬合得到的軌跡曲線;最后,在考慮機(jī)器人動(dòng)力學(xué)下設(shè)計(jì)軌跡跟蹤控制器.通過(guò)仿真和實(shí)驗(yàn)驗(yàn)證,本文提出的方法可以保證機(jī)器人軌跡跟蹤的準(zhǔn)確性,能抑制初始峰值,且具有較強(qiáng)的魯棒性.
圖1為二自由度機(jī)器人簡(jiǎn)化模型示意圖,根據(jù)平焊工藝要求,設(shè)焊點(diǎn)法線向量為[x1,y1,z1].θ1,θ2為機(jī)器人關(guān)節(jié)變量,建立機(jī)器人運(yùn)動(dòng)學(xué)方程[14]可以求出θ1,θ2的表達(dá)式為
圖1 二自由度機(jī)器人簡(jiǎn)化模型
根據(jù)式(1)求出的關(guān)節(jié)角度進(jìn)行軌跡規(guī)劃,為了提高控制精度需要建立機(jī)器人的動(dòng)力學(xué)方程[15].根據(jù)拉格朗日力學(xué)建立的動(dòng)力學(xué)方程如下為
其中,
各項(xiàng)的含義分別如下:x,分別表示為機(jī)器人的關(guān)節(jié)角、角速度與角加速度;M(x)表示機(jī)器人的轉(zhuǎn)動(dòng)慣量矩陣;C(x,)為向心科氏力矩;G(x)為重力、摩擦力和未知擾動(dòng)的總和;u為關(guān)節(jié)控制力矩,即系統(tǒng)的控制輸入;m1為關(guān)節(jié)1 與關(guān)節(jié)2 之間連桿的質(zhì)量;m2為關(guān)節(jié)2圓盤的質(zhì)量;d1為關(guān)節(jié)1 圓心距離地面的距離;d2為關(guān)節(jié)1 與關(guān)節(jié)2 圓心之間距離;τd1,τd1分別為關(guān)節(jié)的未知擾動(dòng).
軌跡規(guī)劃是在逆運(yùn)動(dòng)學(xué)求解基礎(chǔ)之上,且滿足路徑平滑前提下[2]進(jìn)行的,本文提出的改進(jìn)型三次樣條插值擬合可以降低機(jī)器人的應(yīng)力水平和減少能量消耗.求解最優(yōu)軌跡規(guī)劃的具體步驟如下:(1)將通過(guò)逆運(yùn)動(dòng)學(xué)求解的關(guān)節(jié)變量采用TD 進(jìn)行處理為6個(gè)數(shù)據(jù)區(qū)間;(2)根據(jù)步長(zhǎng)為0.05 的規(guī)則在每個(gè)區(qū)間選取一個(gè)點(diǎn),采用改進(jìn)型三次樣條插值擬合路徑曲線;(3)建立沖擊力目標(biāo)函數(shù),將步驟(2)得到的曲線帶入到目標(biāo)函數(shù),求取目標(biāo)函數(shù)值;(4)對(duì)不同點(diǎn)擬合到的曲線進(jìn)行目標(biāo)函數(shù)值比較,選取最小值的一組解作為最優(yōu)解.
為了解決插值關(guān)鍵點(diǎn)選取的問(wèn)題,采取跟蹤微分器的思想.將由逆運(yùn)動(dòng)學(xué)求解的關(guān)節(jié)變量處理為6 個(gè)區(qū)間的數(shù)據(jù).跟蹤微分器主要是用來(lái)根據(jù)指令安排期望的過(guò)渡過(guò)程及其導(dǎo)數(shù),TD[17]的一般形式為
其中,v(t)為期望值;q1(k)的為期望速度安排的過(guò)渡過(guò)程;q2(k)為q1(k)的微分信號(hào);h為步長(zhǎng);參數(shù)h0的作用是于消除超調(diào)現(xiàn)象;參數(shù)r的作用是決定跟蹤期望信號(hào)的速度.
機(jī)器人的軌跡由關(guān)鍵點(diǎn)組成,采用三次樣條擬合關(guān)鍵點(diǎn)[13].機(jī)器人軌跡規(guī)劃一般采用樣條曲線.三次樣條曲線的二階導(dǎo)數(shù)連續(xù),三次樣條曲線插值[18]是將整個(gè)區(qū)間等分,通過(guò)關(guān)鍵點(diǎn)進(jìn)行擬合.需要滿足的條件為:(1)擬合函數(shù)在已知點(diǎn)的函數(shù)值等于原函數(shù)值;(2)擬合分段函數(shù)是二階連續(xù);(3)端點(diǎn)的二階導(dǎo)數(shù);(4)關(guān)鍵插值點(diǎn)選取.主要步驟如下.
定義樣條曲線的表達(dá)式為
為了保證插值的連續(xù)性和微分連續(xù)性,則
定義步長(zhǎng)為hi=xi+1-xi,邊界條件首尾的兩個(gè)端點(diǎn)的微分值分別為A 和B,根據(jù)式(4)和式(5)建立如下矩陣方程:
其中
根據(jù)式(6)可以求出樣條曲線的系數(shù),然后根據(jù)插值點(diǎn)求出每個(gè)子區(qū)間(xi≤x≤xi+1)的方程為
角加加速度為物體角加速度的變化率,角加加速度過(guò)大意味著物體所受力變化過(guò)快,會(huì)形成沖擊力.沖擊力不僅對(duì)關(guān)節(jié)的運(yùn)行產(chǎn)生影響,而且影響機(jī)器人的壽命.為了提高跟蹤精度,減少機(jī)器人的諧振頻率和系統(tǒng)的機(jī)械磨損,規(guī)劃出角加加速度值較小的軌跡顯得十分重要[19].以角加加速度的絕對(duì)值對(duì)時(shí)間的積分來(lái)表示關(guān)節(jié)沖擊大小,即
線性自抗擾控制器為了實(shí)現(xiàn)控制效果需要很大的觀測(cè)器增益,較大增益可能會(huì)出現(xiàn)峰值現(xiàn)象,因此針對(duì)這些問(wèn)題,設(shè)計(jì)了一種變?cè)鲆孀钥箶_控制器.ADRC 是一種不依賴系統(tǒng)模型的新型控制技術(shù),具有超調(diào)小、響應(yīng)快、精度高的優(yōu)點(diǎn),圖2 為3 階ADRC 控制器結(jié)構(gòu)圖[17].ADRC包括3部分:安排過(guò)渡過(guò)程(TD)、反饋控制規(guī)律(NF)和擴(kuò)張狀態(tài)觀測(cè)器(ESO).
圖2 3階ADRC控制器結(jié)構(gòu)
圖2 中,r0為控制目標(biāo);v1是r0的跟蹤信號(hào);v2是r0的跟蹤信號(hào)的微分;z1是系統(tǒng)輸出y的估計(jì);z2是系統(tǒng)輸出y的微分估計(jì);z3是對(duì)象總擾動(dòng)f(x,w(t),t)的估計(jì);e1,e2是誤差;u0是NF 的輸出;b0是b(t)的估計(jì);u是ADRC 的控制量.
將式(2)改寫為下列狀態(tài)空間形式:
其 中,Α(q)=M(x)-1(-C(x,)+G(x)),B(q)=M(x)-1;θ=[θ1 θ2]T;τ=[τ1,τ2]T.
動(dòng)力學(xué)方程中系數(shù)矩陣包含耦合變量,將耦合變量視為內(nèi)部擾動(dòng),動(dòng)力學(xué)方程進(jìn)一步化為
在式(10)的基礎(chǔ)之上可以實(shí)現(xiàn)兩個(gè)關(guān)節(jié)獨(dú)立控制,在原系統(tǒng)其中一個(gè)關(guān)節(jié)控制系統(tǒng)添加一個(gè)新的狀態(tài)變量f1,原系統(tǒng)新的狀態(tài)方程如下:
建立擴(kuò)張狀態(tài)觀測(cè)器(ESO):
根據(jù)式(11)和式(12)得出系統(tǒng)的誤差模型如下:
根據(jù)對(duì)偶性可以將式(13)轉(zhuǎn)化為標(biāo)準(zhǔn)形式的可控系統(tǒng),求取誤差模型的解為
其中,系統(tǒng)eAt在初始時(shí)刻會(huì)因?yàn)楦咴鲆鎺捴岛艽?,因此采用常?shù)高增益觀測(cè)器會(huì)帶來(lái)觀測(cè)誤差,即初始峰值現(xiàn)象.因此,本文設(shè)計(jì)了一種變?cè)鲆孀钥箶_控制器.與式(13)對(duì)應(yīng)的標(biāo)準(zhǔn)系統(tǒng)如下:
其中,ai(t)是時(shí)變參數(shù).
定義式(13)的可控矩陣為M,式(15)的可控矩陣為Mc.矩陣M的定義如下:
根據(jù)式(16)可以求出:
從式(17)可以看出,設(shè)計(jì)合適的ai,式(13)和式(15)是可控的,定義z=T(t)e,其中變換矩陣T(t)為
假定ai光滑且有界,通過(guò)式(17)和式(18)很容易證出T(t)是一個(gè)李雅普諾夫變換矩陣.這意味著:(1)T(t)和T(t)的導(dǎo)數(shù)是連續(xù)的;(2)T(t)是非奇異的;3)T(t)和T(t)的導(dǎo)數(shù)有界.由李雅普諾夫變換可得
為了得到增益li(t),定義L(t)=[-l1(t),-l1(t),-l1(t)]T.將T(t)分解為n+1 列向量的形式,根據(jù)(19)可以得到
通過(guò)將狀態(tài)誤差矩陣(13)轉(zhuǎn)化為標(biāo)準(zhǔn)型(15),得到了觀測(cè)器增益li(t)表達(dá)式,即
結(jié)合文獻(xiàn)[20],a1,a2,a3選取為
文獻(xiàn)[21]中的sigmoid函數(shù),取
建立控制規(guī)律:
誤差式(13)可轉(zhuǎn)為
其中
當(dāng)l1(t)>0,l2(t)>0,l3(t)>0有界且l1(t)l2(t)-l3(t)>0時(shí),可以得到主對(duì)角元素均為正的矩陣D,即
使得DA(e(t))為正定對(duì)稱矩陣,在式(26)中,γ,δ1,δ2均為無(wú)窮小正數(shù),且
取誤差式(13)的Lyapunov函數(shù)為
其中,t>0,常數(shù)C為充分大的常數(shù).
在式(13)的平衡點(diǎn)局部,V(t)中第一項(xiàng)的被積函數(shù)值為有界,因此,只要常數(shù)C取足夠大的常數(shù),就可以保證V(t)>0.Lyapunov函數(shù)(28)的導(dǎo)數(shù)為
因此,系統(tǒng)(13)在其平衡點(diǎn)處漸進(jìn)穩(wěn)定.
本文研究對(duì)象的物理約束如表1 所示.首先,驗(yàn)證TD 算法的可行性,將傳統(tǒng)和改進(jìn)軌跡規(guī)劃方法進(jìn)行對(duì)比分析,將變?cè)鲆鍭DRC 和傳統(tǒng)ADRC 控制效果進(jìn)行對(duì)比;然后,使用ADAMS進(jìn)行能量消耗分析.
表1 二自由度機(jī)器人約束條件
為了保證機(jī)器人的平穩(wěn)運(yùn)行,采用TD 進(jìn)行過(guò)渡安排,圖3 中關(guān)節(jié)變量預(yù)期值分別為2°,4°,6°,8°.在圖3中,不同給定值都在5s達(dá)到給定值.假設(shè)關(guān)節(jié)2的始末為15°和90°,關(guān)節(jié)1的始末為-5°和45°,經(jīng)過(guò)TD 得到的數(shù)據(jù)如表2所示.
圖3 關(guān)節(jié)變量跟蹤值
表2 關(guān)節(jié)變量插值點(diǎn)數(shù)據(jù)
以機(jī)器人的關(guān)節(jié)2為例,分別采用傳統(tǒng)插值擬合和改進(jìn)插值擬合方法進(jìn)行仿真.假設(shè)始末角度分別為15°和90°,根據(jù)表2 選取中間點(diǎn)的數(shù)據(jù)為t={0,1,1.5,2,2.5,3,3.5,5},θ={15,20,30,45,60,72.8,81.3,90}.為了避免速度突變,設(shè)邊界條件為A=0,B=0,將數(shù)據(jù)經(jīng)過(guò)擬合得到運(yùn)動(dòng)軌跡,根據(jù)表1 的數(shù)據(jù)進(jìn)行選取插值點(diǎn),選取的規(guī)則為在每個(gè)子區(qū)間以步長(zhǎng)0.01范圍為0.2選取插值點(diǎn),選取三次樣條曲線中三次項(xiàng)系數(shù)最小的作為插值點(diǎn),最終選取中間點(diǎn)數(shù)據(jù)的時(shí)間序列為t={0,0.95,1.5,2.05,2.6,3.15,3.65,5},θ={15,20,30,45,60,72.8,81.3,90}.為了避免始末位置速度突變,設(shè)定樣條曲線的邊界條件中A=0,B=0,將數(shù)據(jù)經(jīng)過(guò)擬合得到運(yùn)動(dòng)軌跡.仿真結(jié)果如圖4~圖7 所示.
圖4 關(guān)節(jié)2軌跡曲線
圖5 關(guān)節(jié)2速度曲線
圖6 關(guān)節(jié)2加速度曲線
圖7 關(guān)節(jié)2加加速度曲線
圖4~7 中,Trace1,Speed1,Acceleration1,Jerk1 為傳統(tǒng)方法的軌跡、速度、加速度、加加速度;Trace2,Speed2,Acceleration2,Jerk2 為優(yōu)化方法的軌跡、速度、加速度、加加速度.采用傳統(tǒng)的三次樣條插值擬合出的軌跡曲線是很平滑的,速度和加速度都是連續(xù)的且不是很大,但是關(guān)節(jié)的加加速度是很大的,求得一般三次樣條插值擬合的沖擊力目標(biāo)函數(shù)值F=105.89.采用改進(jìn)的三次樣條插值擬合出的軌跡曲線沖擊力目標(biāo)函數(shù)值F=63.74,比傳統(tǒng)的三次樣條插值擬合降低了39.8%.改進(jìn)的三次樣條插值擬合算法明顯降低了沖擊力對(duì)機(jī)器人的影響.
假定關(guān)節(jié)擬合的期望軌跡為0.1 sint,外部擾動(dòng)為0.1 sintm.ESO 參數(shù)設(shè)計(jì)如圖8 所示,變?cè)鲆鍭DRC 和傳統(tǒng)ADRC 的仿真結(jié)果如圖9 所示,二者控制量的仿真結(jié)果如圖10所示.
圖8 ESO時(shí)變參數(shù)
圖9 關(guān)節(jié)軌跡曲線
在圖8 中,LESO 為線性自抗擾控制參數(shù),AESO為變?cè)鲆孀钥箶_控制參數(shù),可以看出線性自抗擾的參數(shù)為常量,變?cè)鲆孀钥箶_控制器的參數(shù)為從零開(kāi)始漸變的時(shí)變參數(shù);在圖9 中,Ideal 為期望軌跡,Trace1 為傳統(tǒng)ADRC 仿真結(jié)果,Trace1 為傳統(tǒng)ADRC仿真結(jié)果,可以看出二者都可以在穩(wěn)定時(shí)達(dá)到預(yù)期軌跡,但是,傳統(tǒng)自抗擾控制在初始階段出現(xiàn)峰值現(xiàn)象,而變?cè)鲆孀钥箶_控制可以很好地跟蹤軌跡;在圖10 中,LESO 為傳統(tǒng)ADRC 的控制量,AESO 為變?cè)鲆鍭DRC 的控制量,從圖10 可以看出前者的控制量在初始階段很大.針對(duì)觀測(cè)器的初始誤差較大的問(wèn)題,線性自抗擾控制方法的增益為較大的常數(shù)不能解決此問(wèn)題,而變?cè)鲆娌捎脮r(shí)變?cè)鲆婵梢越鉀Q傳統(tǒng)自抗擾方法帶來(lái)的初始控制量較大的問(wèn)題,從而解決峰值現(xiàn)象.
圖10 關(guān)節(jié)控制變量
使用ADAMS 對(duì)虛擬機(jī)械系統(tǒng)進(jìn)行功率消耗分析.以機(jī)器人的關(guān)節(jié)1為例對(duì)能量消耗進(jìn)行對(duì)比,仿真結(jié)果如圖11 所示.Energy2 為傳統(tǒng)方法對(duì)應(yīng)能量曲線,Energy1為優(yōu)化方法對(duì)應(yīng)能量曲線.
圖11 關(guān)節(jié)1電機(jī)能量消耗
根據(jù)圖11可以看出,傳統(tǒng)方法的關(guān)節(jié)1的電機(jī)功率消耗在1.5 s時(shí)達(dá)功率消耗峰值,峰值為3636 W;優(yōu)化的方法的關(guān)節(jié)1的電機(jī)功率消耗在1.5 s時(shí)達(dá)功率消耗峰值,峰值為2830 W,比傳統(tǒng)插值擬合降低了28.48%.優(yōu)化的三次樣條曲線插值擬合算法明顯降低了電機(jī)消耗的能量.
本文的實(shí)驗(yàn)平臺(tái)由控制柜、六自由度機(jī)器人本體、二自由度機(jī)器人和焊機(jī)4 部分組成.其實(shí)驗(yàn)平添環(huán)境如圖12 所示,其中二自由度機(jī)器人的參數(shù)為m1=40 kg,m2=20 kg,d1=0.3 m,d2=0.2 m,r=0.4 m,在二自由度機(jī)器人驗(yàn)證提出的改進(jìn)軌跡規(guī)劃及跟蹤控制方法的有效性.
圖12 實(shí)驗(yàn)環(huán)境
結(jié)合實(shí)驗(yàn)樣機(jī)的實(shí)際參數(shù),對(duì)樣機(jī)進(jìn)行實(shí)驗(yàn).采用常規(guī)ADRC 控制的軌跡跟蹤曲線如圖13 所示;采用變?cè)鲆鍭DRC 控制的軌跡跟蹤曲線如圖14 所示;采用常規(guī)ADRC 控制的軌跡動(dòng)態(tài)響應(yīng)曲線如圖15 所示;采用變?cè)鲆鍭DRC 控制的軌跡動(dòng)態(tài)響應(yīng)曲線如圖16所示.
圖13 常規(guī)控制軌跡跟蹤曲線
圖14 優(yōu)化控制軌跡跟蹤曲線
圖15 關(guān)節(jié)1常規(guī)軌跡動(dòng)態(tài)響應(yīng)
圖16 關(guān)節(jié)1優(yōu)化軌跡動(dòng)態(tài)響應(yīng)
從圖13 和圖14 可以看出,采用常規(guī)的自抗擾技術(shù)會(huì)在初始階段存在峰值現(xiàn)象,而采用變?cè)鲆孀钥箶_技術(shù)可以解決初始階段的峰值現(xiàn)象;從圖15 和圖16 可以看出,常規(guī)方法的動(dòng)態(tài)響應(yīng)時(shí)間為0.7 s,變?cè)鲆娣椒ǖ膭?dòng)態(tài)響應(yīng)時(shí)間為0.2 s,明顯快于常規(guī)方法.實(shí)驗(yàn)表明,本文提出的變?cè)鲆孀钥箶_控制的軌跡跟蹤效果及動(dòng)態(tài)響應(yīng)優(yōu)于常規(guī)自抗擾方法.
(1)根據(jù)焊接工藝要求建立機(jī)器人運(yùn)動(dòng)學(xué)方程,以及根據(jù)拉格朗日力學(xué)建立機(jī)器人動(dòng)力學(xué)方程.利用跟蹤微分器算法(TD)將逆運(yùn)動(dòng)學(xué)求解的關(guān)節(jié)變量處理為6 個(gè)子數(shù)據(jù)區(qū)間,采用TD 算法可以保證各個(gè)關(guān)節(jié)同時(shí)到達(dá)預(yù)期值.
(2)設(shè)定插值點(diǎn)選取規(guī)則,然后進(jìn)行三次樣條曲線插值擬合,以及建立以角加加速度的絕對(duì)值對(duì)時(shí)間積分的目標(biāo)函數(shù),規(guī)劃出角加加速度較小的軌跡以提高跟蹤精度、減少機(jī)器人的諧振頻率、系統(tǒng)的機(jī)械磨損和電機(jī)能量消耗.
(3)采用變?cè)鲆孀钥箶_控制器對(duì)軌跡進(jìn)行跟蹤控制,克服了傳統(tǒng)自抗擾控制的初始階段峰值現(xiàn)象,仿真和實(shí)驗(yàn)結(jié)果表明,該方法能保證機(jī)器人軌跡跟蹤的準(zhǔn)確性、穩(wěn)定性和動(dòng)態(tài)響應(yīng)能力,能克服外界干擾的影響,具有較強(qiáng)的魯棒性.
(4)目標(biāo)函數(shù)的設(shè)計(jì)僅考慮了角加加速度因素,需要進(jìn)一步考慮其他因素,進(jìn)一步完善目標(biāo)函數(shù)的設(shè)計(jì).結(jié)合實(shí)驗(yàn)樣機(jī),進(jìn)一步驗(yàn)證優(yōu)化軌跡規(guī)劃方法降低電機(jī)能量消耗的效果.