史瓊艷,謝小敏
(1.常州機(jī)電職業(yè)技術(shù)學(xué)院 機(jī)械工程學(xué)院,江蘇 常州 213164; 2.河海大學(xué) 機(jī)電工程學(xué)院,江蘇 南京 210098)
腿式機(jī)器人與輪式機(jī)器人不同,腿式機(jī)器人可以執(zhí)行多種工作,比如在復(fù)雜的環(huán)境中爬梯子和克服障礙等[1].近幾年大量的專家學(xué)者在腿式機(jī)器人上進(jìn)行了大量的研究以提高機(jī)動性.在腿式機(jī)器人中,更多的研究重點(diǎn)放在四足機(jī)器人的應(yīng)用上,例如在不平坦的地形中進(jìn)行救援和承載負(fù)重,因?yàn)樗淖銠C(jī)器人的特性確保了腿式機(jī)器人具有更多的靜態(tài)穩(wěn)定性[2].
文獻(xiàn)[3]研究了平面雙滑塊機(jī)構(gòu)的2DOF并聯(lián)機(jī)器人,計(jì)算得到機(jī)器人驅(qū)動力方程,利用Matlab及ADAMS軟件驗(yàn)證模型的有效性.文獻(xiàn)[4]研究3-PRR并聯(lián)機(jī)器人機(jī)構(gòu)運(yùn)動學(xué),研究3-PRR并聯(lián)機(jī)器人運(yùn)動特性,并進(jìn)行數(shù)學(xué)建模,利用ADAMS仿真軟件驗(yàn)證建模的合理性.文獻(xiàn)[5]深入研究6PUS-UPU并聯(lián)機(jī)器人運(yùn)動學(xué)以及動力學(xué),基于拉格朗日方程建立該并聯(lián)機(jī)器人運(yùn)動學(xué)模型,對該模型進(jìn)行模糊辨識,為了實(shí)現(xiàn)驅(qū)動力的優(yōu)化對冗余分支控制器進(jìn)行設(shè)計(jì),最后在Matlab及ADMAS中驗(yàn)證控制效果.
并聯(lián)結(jié)構(gòu)在運(yùn)動學(xué)及動力學(xué)上有強(qiáng)耦合性[6],通??梢杂脗鹘y(tǒng)的基于模型的控制器進(jìn)行并聯(lián)機(jī)器人全動態(tài)建??刂芠7].雖然這種方法可以減少建模誤差,但在動力學(xué)計(jì)算方面非常復(fù)雜.此外,在串聯(lián)機(jī)器人中設(shè)計(jì)基于模型的控制器的一般方法并不適用于并聯(lián)機(jī)器人.對此,本文提出并聯(lián)機(jī)構(gòu)機(jī)器人腿的簡化建模和控制策略,構(gòu)造并聯(lián)2自由度機(jī)器人腿簡化模型,給出了簡化模型動力學(xué)方程,利用RLS法識別簡化模型動力學(xué)參數(shù),對比PD控制器和非線性控制器控制策略,使用ADAMS/Matlab進(jìn)行簡化模型的參數(shù)識別及兩種不同類型控制器控制效果驗(yàn)證.結(jié)果表明,所提出的建模方法在仿真軟件中實(shí)現(xiàn)系統(tǒng)識別和基于模型控制的有效性.
本文研究的并聯(lián)機(jī)器人腿是一種用于在非結(jié)構(gòu)化環(huán)境下進(jìn)行運(yùn)動的液壓機(jī)器人腿平臺.該平臺具有2個自由度,每個自由度都有液壓缸和伺服閥驅(qū)動[8].
腿部機(jī)構(gòu)設(shè)計(jì)成用來匹配極坐標(biāo)中的驅(qū)動關(guān)節(jié),并且它可以在關(guān)節(jié)空間中簡化為彈簧式倒立擺(SLIP)模型,其中,θr,r分別為二維空間上極坐標(biāo)的角度和極徑.
兩個執(zhí)行器分別進(jìn)行擺動和徑向運(yùn)動.如果擺動執(zhí)動器是固定的并且徑向運(yùn)動執(zhí)行器可以自由運(yùn)動,那么腿的端點(diǎn)(以r表示)可以沿直線(徑向)移動.如果擺動執(zhí)行器可以自由運(yùn)動并且徑向運(yùn)動執(zhí)行器是固定的,則整個關(guān)節(jié)腿(以θr表示)可以在擺動軸的方向上旋轉(zhuǎn).為了更好地描述機(jī)器人腿在二維空間的運(yùn)動,引入了圖1中的模型,其中,f1,f2分別是執(zhí)行器1和2產(chǎn)生的力,τ,F(xiàn)分別是對θr和r施加的廣義力,L1,L2,L3是相應(yīng)腿部的長度,φ1,φ2,φ3是相應(yīng)位置的角度.那時,執(zhí)行器的作用力(f1,f2)和廣義力(τ,f)關(guān)系如下[9]:
圖1 具有運(yùn)動參數(shù)和執(zhí)行器力的示意圖Fig.1 Schematic diagram with kinematic parameters and actuator forces
為了實(shí)現(xiàn)基于模型的控制,這里需要獲得模型的動力學(xué)和參數(shù).然而,與串聯(lián)機(jī)器人動力學(xué)相比,并聯(lián)機(jī)構(gòu)具有復(fù)雜的耦合動力,因此,獲得并聯(lián)機(jī)器人的完整動力學(xué)方程需要大量的努力和時間.此外,從完整的動力學(xué)方程中重寫回歸矩陣是困難的.本文提出了一個簡單的模型,而不是整個并聯(lián)機(jī)構(gòu)模型.假設(shè)這個并聯(lián)關(guān)節(jié)腿為2自由度機(jī)械手,該機(jī)械手只具有一個轉(zhuǎn)動關(guān)節(jié)和一個移動關(guān)節(jié).這個模型能夠通過徑向及轉(zhuǎn)動方向驅(qū)動器獨(dú)立地進(jìn)行徑向運(yùn)動以及擺動.
為了簡化計(jì)算,假設(shè)該系統(tǒng)為理想的運(yùn)動,忽略了作用在機(jī)器人上的摩擦力和重力.此外,本文假設(shè)坐標(biāo)系原點(diǎn)固定在地面上.利用拉格朗日公式生成機(jī)器人動力學(xué)模型,2自由度機(jī)器人動力學(xué)方程的結(jié)果如下:
(5)
(6)
M22=m2
(7)
獲得機(jī)器人動力學(xué)參數(shù)的簡便方法是通過計(jì)算機(jī)輔助設(shè)計(jì)(CAD)獲取設(shè)計(jì)模型的理論值.然而,由于簡化模型與實(shí)際模型不同,因此,不可能獲得實(shí)際參數(shù).本文使用另一種方法獲得簡化模型參數(shù)——系統(tǒng)識別.
傳統(tǒng)的系統(tǒng)識別方法主要有以下幾個步驟.
步驟1從機(jī)器人動力學(xué)方程式(3)中定義動態(tài)參數(shù),構(gòu)造一個不隨時間變化的回歸矩陣.
步驟2將回歸矩陣和動態(tài)參數(shù)從機(jī)器人動力學(xué)方程中分離出來,重寫機(jī)器人動力學(xué)方程,該方程與動態(tài)參數(shù)呈線性關(guān)系[7].因此,式(3)改為如下:
(8)
定義動態(tài)參數(shù)如下:
(9)
最終得到回歸矩陣如下:
(10)
為了識別系統(tǒng)的動態(tài)參數(shù),首先需要確立關(guān)節(jié)腿的回歸矩陣,然后對每次采樣周期的輸入信號(關(guān)節(jié)力和力矩)、輸出信號(關(guān)節(jié)位置、速度和加速度)進(jìn)行測量[10].這時的測量信號可以表示為
其次,利用優(yōu)化算法對系統(tǒng)的動態(tài)參數(shù)進(jìn)行估算.如果選擇常用的最小二乘法進(jìn)行估算,那么參數(shù)如下:
(13)
此外,還有其他類型的優(yōu)化方法用于估算:加權(quán)最小二乘法、最大相似估計(jì)法(利用傅里葉級數(shù)輸出滿足PE條件的期望軌跡)以及擴(kuò)展卡爾曼濾波器(EKF)(用于非線性系統(tǒng)中)[12].本研究采用遞歸最小二乘法(RLS)[13].識別算法如下所示:
首先初始化參數(shù),然后在每個采用時間點(diǎn)測量輸入輸出值,得到回歸矩陣,最后更新估算參數(shù).
并聯(lián)機(jī)器人的控制策略一般有兩類,分別為運(yùn)動學(xué)控制及動力學(xué)控制策略.為了驗(yàn)證建模方法的有效性,同時獲得基于模型控制的名義值,本文使用PD控制器(見圖2)和非線性同步控制器(見圖3).
圖2 PD控制器框圖Fig.2 PD controller block diagram
圖3 非線性同步控制框圖Fig.3 Nonlinear synchronous controller block diagram
定義末端執(zhí)行器的期望軌跡如下:
(14)
式中:x,y分別為關(guān)節(jié)1和2期望軌跡的輪廓.
PD控制器控制輸入定義如下:
(15)
式中:KP為比例增益矩陣;Kv為積分增益矩陣;S為末端執(zhí)行器與關(guān)節(jié)的速度雅克比矩陣;e為關(guān)節(jié)誤差.
非線性同步控制器控制輸入定義如下:
(16)
式中:Kp為比例增益矩陣;Kd為微分增益矩陣;T為耦合誤差;S為末端執(zhí)行器與關(guān)節(jié)的速度雅克比矩陣;e為關(guān)節(jié)誤差.
本節(jié)利用仿真軟件Matlab驗(yàn)證上文所提出的建模方法的有效性,同時獲得基于模型控制的動態(tài)參數(shù)值.首先,利用上節(jié)中介紹的識別模型和識別算法對簡化模型進(jìn)行系統(tǒng)識別.然后,選擇兩種不同的控制策略應(yīng)用于模型控制,比較兩者的控制性能.對于動態(tài)參數(shù)值的獲取,使用ADMAS軟件來進(jìn)行動力學(xué)模擬.圖4為軟件中機(jī)器人腿模型.
圖4 機(jī)器人腿的仿真模型Fig.4 Simulation model of robot legs
為了將機(jī)器人腿系統(tǒng)作為2自由度機(jī)械手來進(jìn)行系統(tǒng)識別,本文首先檢查是否滿足以下條件,然后啟動執(zhí)行機(jī)構(gòu)進(jìn)行輸入:① 機(jī)器人腿應(yīng)在其運(yùn)動范圍內(nèi)移動;② 回歸矩陣在激勵過程中必須滿秩(即應(yīng)滿足持續(xù)激勵條件).其次,以1 ms為時間間隔,測量了2 s內(nèi)的輸入(關(guān)節(jié)力和扭矩)和輸出信號(關(guān)節(jié)位置、速度和加速度).最后,使用RLS算法估算動態(tài)參數(shù).
使用RLS算法估算動態(tài)參數(shù)的仿真結(jié)果如圖5所示,式(9)中機(jī)器腿動力學(xué)參數(shù)ρ1,ρ2,ρ3最后收斂到一個恒定值,分別為10.02 kg,-0.412 kg·m以及1.213 5 kg·m2.
圖5 系統(tǒng)識別的仿真結(jié)果Fig.5 Simulation results of system identification
得到簡化模型動力參數(shù)之后,利用Matlab分別采用PD控制器及非線性同步控制器進(jìn)行仿真驗(yàn)證.控制器跟蹤控制的性能評價(jià)指標(biāo)如下:① 關(guān)節(jié)位置誤差的幅值;② 末端執(zhí)行器位置誤差的幅值.仿真結(jié)果顯示:PD控制下關(guān)節(jié)1和2以及末端執(zhí)行器的位置誤差如圖6所示,非線性同步控制下關(guān)節(jié)1和2以及末端執(zhí)行器位置誤差如圖7所示.
由6可知:PD控制下關(guān)節(jié)1的位置誤差幅度0.007 9 mm,關(guān)節(jié)2的位置誤差幅度0.007 0 mm,末端執(zhí)行器的位置誤差X向幅度0.008 5 mm,Y向幅度0.009 3 mm.由圖7可知:非線性同步控制器下關(guān)節(jié)1的位置誤差幅度0.003 9 mm,關(guān)節(jié)2的位置誤差幅度0.004 9 mm,末端執(zhí)行器位置誤差X向0.007 2 mm,Y向0.006 8 mm.說明由于采用了非線性飽和函數(shù),在非線性控制器下關(guān)節(jié)1、關(guān)節(jié)2以及末端執(zhí)行器的位置誤差幅度均有明顯減小,非線性同步控制器在兩種性能評價(jià)指標(biāo)上均優(yōu)于PD控制器.結(jié)果表明,本文所提出的建模方法可以有效地消除閉環(huán)系統(tǒng)中的非線性模型效應(yīng).
圖6 PD控制下關(guān)節(jié)及末端執(zhí)行器位置誤差Fig.6 Position error of joint and end effector under PD control
圖7 非線性同步控制下關(guān)節(jié)及末端執(zhí)行器位置誤差Fig.7 Position error of joint and end effector under nonlinear synchronous control
本文建立了2自由度并聯(lián)機(jī)器人腿簡化模型,將機(jī)器人腿看作是一個2自由度機(jī)械手.對傳統(tǒng)動力學(xué)方程進(jìn)行改進(jìn),建立了簡化模型的動力學(xué)方程.為了識別簡化模型動態(tài)參數(shù),建立參數(shù)識別算法.在ADMAS仿真軟件中識別系統(tǒng)的動態(tài)參數(shù),在Matlab中對兩個關(guān)節(jié)及末端執(zhí)行器位置進(jìn)行仿真驗(yàn)證,比較PD控制器及非線性同步控制器跟蹤控制性能.結(jié)果顯示:采用非線性同步控制器不僅關(guān)節(jié)位置誤差小,而且末端執(zhí)行器的位置誤差也降低,說明本文采用的建模思路對于多自由度并聯(lián)機(jī)器人腿的分析具有借鑒意義.