李光亮,陳君若
(昆明理工大學(xué)機電工程學(xué)院,云南 昆明 560500)
工業(yè)機器人的應(yīng)用日漸廣泛,其研究越來越重要。機器人的研發(fā)存在成本高、周期長等不足。機器人的理論研究分析和仿真有助于機器人的研發(fā)。MATLAB除了傳統(tǒng)的交互式編程之外,還提供了豐富、可靠的矩陣運算、圖形繪制、數(shù)據(jù)處理、圖像處理等工具[1]。利用MATLAB機器人仿真模塊,可以進行機器人的參數(shù)建模、運動學(xué)分析和軌跡規(guī)劃仿真。在MATLAB環(huán)境下,運用Robotics Toolbox[2]編制程序,對空間直線、馬鞍形曲線進行了軌跡規(guī)劃仿真,得到機器人在運動過程中的關(guān)節(jié)穩(wěn)定性以及位移、速度和加速度。工業(yè)機器人軌跡規(guī)劃,可以使機器人的運動軌跡更平穩(wěn)、光滑、連續(xù),使機器人的工作效率更高[3]。
機器人連桿坐標(biāo)系如圖1所示。
圖1 機器人連桿坐標(biāo)系
KUKA機器人關(guān)節(jié)結(jié)構(gòu)主要由回轉(zhuǎn)主體、大臂、伸長臂、腕部等部分組成,KUKA KR6機器人屬于關(guān)節(jié)機器人,有6個轉(zhuǎn)動關(guān)節(jié):前3個關(guān)節(jié)用來確定手腕參考點的位置,后3個關(guān)節(jié)用來確定手腕的方位,實現(xiàn)手腕的俯仰、翻滾和偏轉(zhuǎn)。采用改進的D-H法對機器人在6個桿件之間的相對位置和姿態(tài)進行標(biāo)注。機器人連桿運動參數(shù)如表1所示。
表1 機器人連桿運動參數(shù)
確定了KUKA KR6 機器人各連桿坐標(biāo)系之后,就可以確定改進KUKA KR6機器人的D-H參數(shù)。根據(jù)機器人結(jié)構(gòu)參數(shù)和連桿坐標(biāo)系,可以確定KUKA KR6 機器人各連桿坐標(biāo)系的改進D-H參數(shù)。改進D-H方法一共有以下4個參數(shù)。①θi為關(guān)節(jié)i處連桿(i-1)與連桿i之間的關(guān)節(jié)轉(zhuǎn)角,即繞Z軸旋轉(zhuǎn)的角度;②di為連桿(i-1)與連桿i之間的連桿偏距,即繞Z軸平移的距離;③ai為連桿i的長度,即沿X軸平移的距離;④αi為連桿(i-1)與連桿i之間的連桿轉(zhuǎn)角,即繞X軸旋轉(zhuǎn)的角度[4-6]。
機器人運動學(xué)分析是機器人動力學(xué)、軌跡規(guī)劃和位置控制的重要基礎(chǔ),機器人的連桿參數(shù)分析和改進的D-H參數(shù)建立主要是為了分析機器人運動學(xué)。機器人運動學(xué)分為以下兩類基本問題:①機器人運動方程的表示問題,即正運動學(xué);②機器人運動方程的求解問題,即逆向運動學(xué)[7]。
(1)
由式(1)結(jié)合KUKA KR6機器人結(jié)構(gòu),可得:
得到機器人各連桿坐標(biāo)系的變換矩陣后,進一步得到機器人的運動學(xué)方程,即坐標(biāo)系{0}~坐標(biāo)系{6}的變換矩陣:
(2)
式中:n、o、a和p分別為法線矢量、方向矢量、接近矢量和原點矢量。
機器人運動學(xué)逆問題就是已知末端連桿的位置和方位(可表示為位姿矩陣T),求得機器人的各個關(guān)節(jié)變量。機器人運動學(xué)逆問題的求解方法是:用未知的連桿逆變換,將關(guān)鍵變量分離出來,從而求得各關(guān)節(jié)變量。
對于上述的KUKA KR6,采用逆運動學(xué)求解,即求解關(guān)節(jié)變量θ1,θ2,…,θ6。
(3)
軌跡規(guī)劃分為點到點運動和連續(xù)路徑規(guī)劃。前者只需規(guī)定起始點和終止點,后者既要規(guī)定起始點和終止點,又要指明若干中間路徑點[8-9]。結(jié)合KUKA KR6機器人模型,采用點到點運動進行軌跡規(guī)劃,得到機器人回轉(zhuǎn)關(guān)節(jié)、肩關(guān)節(jié)和肘關(guān)節(jié)坐標(biāo)運動曲線。設(shè)定初始變換矩陣T1=[0 1 0 50; 0 0 1 0; 1 0 0 86.602 5; 0 0 0 1],終止變換矩陣T2=[0 1 0 0; 0 0 1 30; 1 0 0 86.602 5; 0 0 0 1],仿真時間t=2 s。
機器人前3關(guān)節(jié)坐標(biāo)運動曲線如圖2所示。
調(diào)用plot[t,q(:,i)]、plot[t,qd(:,i)]和plot[t,qdd(:,i)]指令,繪制對應(yīng)關(guān)節(jié)的角位移、角速度和角加速度曲線,如圖3所示。
圖2 前三個關(guān)節(jié)坐標(biāo)運動曲線
圖3 前三個關(guān)節(jié)的角位移、角速度、角加速度曲線
對于空間曲線的軌跡規(guī)劃,采用連續(xù)路徑規(guī)劃,規(guī)定起始點和終止點,指明若干中間路徑點。利用MATLAB繪制馬鞍形空間曲線,兩圓管直徑分別為50 mm和100 mm。對馬鞍形空間曲線上的40個點進行軌跡規(guī)劃仿真,t=2 s,調(diào)用函數(shù)Ta=ctraj(T0,T1,length(t)),q=ikine(r,Ta),求解運動學(xué)逆解關(guān)節(jié)坐標(biāo)[10]。
MATLAB程序如下。
a=50;
b=100;
alpha=0:pi/20:2*pi;
x=a*cos(alpha);
y=a*sin(alpha);
z=sqrt(b.^2-a.^2*cos(alpha).^2);
在曲線上均勻選取40個點,進行機器人的軌跡運動仿真。程序如下。
t=0:0.05:2
for i=1:1:40
T{i}=transl(x(i),y(i),z(i));
end
for i=1:1:39
Ta{i}=ctraj(T{i},T{i+1},length(t));
end
q=ikine(r,Ta{i})
馬鞍形空間曲線如圖4所示。
圖4 馬鞍形空間曲線
機器人各關(guān)節(jié)運動變化曲線如圖5所示。
從圖5可以看出:機器人各運動曲線變化連續(xù)緩和,沒有出現(xiàn)突變現(xiàn)象。這說明機器人運動時,各關(guān)節(jié)運動靈活,各活動部件運動平穩(wěn)。
圖5 各關(guān)節(jié)運動變化曲線
通過對KUKA KR6工業(yè)機器人進行研究分析,基于MATLAB中的Robotics Toolbox模塊,進行了以下幾方面的工作。①采用改進的D-H法,建立KUKA KR6工業(yè)機器人的運動學(xué)方程和機器人各連桿坐標(biāo)系。②根據(jù)機器人的運動學(xué)方程,進行了運動學(xué)的正、逆解。③在MATLAB中建立機器人模型,對空間軌跡進行仿真,分析了機器人在運動過程中的關(guān)節(jié)穩(wěn)定性以及位移、速度和加速度的變化。④對空間馬鞍形焊縫軌跡進行仿真,為機器人焊接系統(tǒng)焊接馬鞍形焊縫提供了理論分析。
KUKA KR6機器人的運動學(xué)分析與仿真,為工業(yè)機器人的研究開發(fā)提供了理論基礎(chǔ)。
[1] 薛定宇,陳陽泉.基于MATLAB/Simulink的系統(tǒng)仿真技術(shù)與應(yīng)用[M].北京:清華大學(xué)出版社,2002.
[2] CORKE P I.A robotics toolbox for matlab[J].IEEE Robotics and Automation Magzine,1996,3(1):24 -32.
[3] 林仕高,劉曉麟,歐元賢.機械手笛卡爾空間軌跡規(guī)劃研究[J].機械設(shè)計與制造,2013(3):49-52.
[4] 張禹,丁磊宇.基于Matlab的6R工業(yè)機器人運動學(xué)仿真與研究[J].機械工程,2017(1):24-27.
[5] 張舒曼,周亞軍.基于Matlab的機器人運動學(xué)分析與軌跡規(guī)劃仿真[J].工業(yè)控制計算機,2014(8):12-14.
[6] 徐呈藝,李業(yè)農(nóng),周小青,等.MOTOMAN-UP6機器人運動學(xué)分析及仿真[J].機床與液壓,2013(9):144-149
[7] 蔡自興.機器人學(xué)基礎(chǔ) [M].2版.北京:機械工業(yè)出版社,2015.
[8] 王智興,樊文欣,張保成.基于Matlab的工業(yè)機器人運動學(xué)分析與仿真[J].機電工程,2012,29(1):33-37.
[9] 于天宇,李達,宋寶玉.基于MATLAB-Robotics工具箱的工業(yè)機器人軌跡規(guī)劃及仿真研究[J].機械工程師,2011(7):81-83.
[10]扶宇陽,葛阿萍.基于MATLAB的工業(yè)機器人運動學(xué)仿真研究[J].機械工程與自動化,2013(3):40-42.