李光亮,陳君若
(昆明理工大學機電工程學院,云南 昆明 560500)
工業機器人的應用日漸廣泛,其研究越來越重要。機器人的研發存在成本高、周期長等不足。機器人的理論研究分析和仿真有助于機器人的研發。MATLAB除了傳統的交互式編程之外,還提供了豐富、可靠的矩陣運算、圖形繪制、數據處理、圖像處理等工具[1]。利用MATLAB機器人仿真模塊,可以進行機器人的參數建模、運動學分析和軌跡規劃仿真。在MATLAB環境下,運用Robotics Toolbox[2]編制程序,對空間直線、馬鞍形曲線進行了軌跡規劃仿真,得到機器人在運動過程中的關節穩定性以及位移、速度和加速度。工業機器人軌跡規劃,可以使機器人的運動軌跡更平穩、光滑、連續,使機器人的工作效率更高[3]。
機器人連桿坐標系如圖1所示。

圖1 機器人連桿坐標系
KUKA機器人關節結構主要由回轉主體、大臂、伸長臂、腕部等部分組成,KUKA KR6機器人屬于關節機器人,有6個轉動關節:前3個關節用來確定手腕參考點的位置,后3個關節用來確定手腕的方位,實現手腕的俯仰、翻滾和偏轉。采用改進的D-H法對機器人在6個桿件之間的相對位置和姿態進行標注。機器人連桿運動參數如表1所示。

表1 機器人連桿運動參數
確定了KUKA KR6 機器人各連桿坐標系之后,就可以確定改進KUKA KR6機器人的D-H參數。根據機器人結構參數和連桿坐標系,可以確定KUKA KR6 機器人各連桿坐標系的改進D-H參數。改進D-H方法一共有以下4個參數。①θi為關節i處連桿(i-1)與連桿i之間的關節轉角,即繞Z軸旋轉的角度;②di為連桿(i-1)與連桿i之間的連桿偏距,即繞Z軸平移的距離;③ai為連桿i的長度,即沿X軸平移的距離;④αi為連桿(i-1)與連桿i之間的連桿轉角,即繞X軸旋轉的角度[4-6]。
機器人運動學分析是機器人動力學、軌跡規劃和位置控制的重要基礎,機器人的連桿參數分析和改進的D-H參數建立主要是為了分析機器人運動學。機器人運動學分為以下兩類基本問題:①機器人運動方程的表示問題,即正運動學;②機器人運動方程的求解問題,即逆向運動學[7]。

(1)
由式(1)結合KUKA KR6機器人結構,可得:


得到機器人各連桿坐標系的變換矩陣后,進一步得到機器人的運動學方程,即坐標系{0}~坐標系{6}的變換矩陣:
(2)
式中:n、o、a和p分別為法線矢量、方向矢量、接近矢量和原點矢量。
機器人運動學逆問題就是已知末端連桿的位置和方位(可表示為位姿矩陣T),求得機器人的各個關節變量。機器人運動學逆問題的求解方法是:用未知的連桿逆變換,將關鍵變量分離出來,從而求得各關節變量。
對于上述的KUKA KR6,采用逆運動學求解,即求解關節變量θ1,θ2,…,θ6。
(3)
軌跡規劃分為點到點運動和連續路徑規劃。前者只需規定起始點和終止點,后者既要規定起始點和終止點,又要指明若干中間路徑點[8-9]。結合KUKA KR6機器人模型,采用點到點運動進行軌跡規劃,得到機器人回轉關節、肩關節和肘關節坐標運動曲線。設定初始變換矩陣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關節坐標運動曲線如圖2所示。
調用plot[t,q(:,i)]、plot[t,qd(:,i)]和plot[t,qdd(:,i)]指令,繪制對應關節的角位移、角速度和角加速度曲線,如圖3所示。

圖2 前三個關節坐標運動曲線

圖3 前三個關節的角位移、角速度、角加速度曲線
對于空間曲線的軌跡規劃,采用連續路徑規劃,規定起始點和終止點,指明若干中間路徑點。利用MATLAB繪制馬鞍形空間曲線,兩圓管直徑分別為50 mm和100 mm。對馬鞍形空間曲線上的40個點進行軌跡規劃仿真,t=2 s,調用函數Ta=ctraj(T0,T1,length(t)),q=ikine(r,Ta),求解運動學逆解關節坐標[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 馬鞍形空間曲線
機器人各關節運動變化曲線如圖5所示。
從圖5可以看出:機器人各運動曲線變化連續緩和,沒有出現突變現象。這說明機器人運動時,各關節運動靈活,各活動部件運動平穩。

圖5 各關節運動變化曲線
通過對KUKA KR6工業機器人進行研究分析,基于MATLAB中的Robotics Toolbox模塊,進行了以下幾方面的工作。①采用改進的D-H法,建立KUKA KR6工業機器人的運動學方程和機器人各連桿坐標系。②根據機器人的運動學方程,進行了運動學的正、逆解。③在MATLAB中建立機器人模型,對空間軌跡進行仿真,分析了機器人在運動過程中的關節穩定性以及位移、速度和加速度的變化。④對空間馬鞍形焊縫軌跡進行仿真,為機器人焊接系統焊接馬鞍形焊縫提供了理論分析。
KUKA KR6機器人的運動學分析與仿真,為工業機器人的研究開發提供了理論基礎。
[1] 薛定宇,陳陽泉.基于MATLAB/Simulink的系統仿真技術與應用[M].北京:清華大學出版社,2002.
[2] CORKE P I.A robotics toolbox for matlab[J].IEEE Robotics and Automation Magzine,1996,3(1):24 -32.
[3] 林仕高,劉曉麟,歐元賢.機械手笛卡爾空間軌跡規劃研究[J].機械設計與制造,2013(3):49-52.
[4] 張禹,丁磊宇.基于Matlab的6R工業機器人運動學仿真與研究[J].機械工程,2017(1):24-27.
[5] 張舒曼,周亞軍.基于Matlab的機器人運動學分析與軌跡規劃仿真[J].工業控制計算機,2014(8):12-14.
[6] 徐呈藝,李業農,周小青,等.MOTOMAN-UP6機器人運動學分析及仿真[J].機床與液壓,2013(9):144-149
[7] 蔡自興.機器人學基礎 [M].2版.北京:機械工業出版社,2015.
[8] 王智興,樊文欣,張保成.基于Matlab的工業機器人運動學分析與仿真[J].機電工程,2012,29(1):33-37.
[9] 于天宇,李達,宋寶玉.基于MATLAB-Robotics工具箱的工業機器人軌跡規劃及仿真研究[J].機械工程師,2011(7):81-83.
[10]扶宇陽,葛阿萍.基于MATLAB的工業機器人運動學仿真研究[J].機械工程與自動化,2013(3):40-42.