蘇 晨 鄧三鵬
(天津職業(yè)技術師范大學,天津300222)
機器人運動學分析是機器人動力學、軌跡規(guī)劃和位控制的重要基礎,運動學分析包括正運動學分析和逆運動學分析2個基本問題[1]:第一個問題常被稱為運動學正問題(直接問題),第二個問題被稱為運動學逆問題(解臂形問題)。由于機器人手臂的獨立變量是關節(jié)變量,而終端運動位置是已知的,因此,會較頻繁地用到運動學逆問題。
本文采用D—H法建立機器人坐標系,并對機器人運動學方程的建立方法進行概述。最后嘗試在Matlab環(huán)境下運用Robotics Toolbox模塊實現(xiàn)機器人運動學模型的構建和運動學仿真,獲取終端位置數(shù)據(jù)。
D—H法是由Denavit和Hartenberg于1955年提出的。該方法在機器人各連桿上建立坐標系,并通過齊次變換矩陣來描述相鄰兩桿坐標系的幾何關系,建立了機器人運動學方程。利用這樣的方法依次進行推導,可獲得機器人終端的位姿數(shù)據(jù)。文中利用D—H法完成對機器人運動學方程的建立,其過程如下:
(1)按照D—H方法建立的模塊化六自由度機器人的桿件坐標系如圖1所示。機器人各桿件的D—H參數(shù)如表1所示。
圖1 模塊化六自由度機器人的桿件坐標系
表1 機器人各連桿D—H參數(shù)
(2)運動學方程式通過齊次變換矩陣來描述第i坐標系相對于i-1坐標系的位置和姿態(tài)[2]。相鄰坐標系i和i-1的D—H變換矩陣為:
第i坐標系相對于基礎模塊坐標系位姿的齊次變換矩陣0T i,表示為機器人的運動學正解方程:0Ti=0A11A2…i-1A i。
當i=6時,可求得T=0T6,它確定了機器人的終端坐標系相對于基礎模塊坐標系的位置和姿態(tài),可以把T矩陣表示為
將表1中各參數(shù)代入連桿變換矩陣(1),便可求得機器人末端坐標系相對基礎模塊坐標系的位姿數(shù)據(jù)。該運算過程屬于機器人運動學方程的正解過程,也稱為機器人正運動學分析。
機器人逆運動學分析就是已知機器人終端坐標系的位置和姿態(tài)(可表示為位姿矩陣T),求機器人各關節(jié)的角度變量。機器人逆運動學分析方法是:對上述式(1)兩邊依次左乘A的逆矩陣,并使兩端相等矩陣的對應元素相等,即可求得機器人各關節(jié)的角度變量。
由于在求解過程中可能出現(xiàn)多組解,它們分別代表了手臂的不同位置,因此運動學方程的逆解不是唯一的。在對機器人的軌跡規(guī)劃和控制研究中,可選擇“最小移動且最大角度,最大移動且最小角度”的原則來確定最優(yōu)解。
Matlab在工業(yè)設計與開發(fā)、數(shù)據(jù)處理與分析、數(shù)學教學等相關領域得到了廣泛應用。作為一種工具,它為物理學研究和控制理論優(yōu)化提供了很好的解決方案。本文采用Matlab Robotics Toolbox建立機器人的運動模型,并對正運動學問題進行仿真。
機器人運動學仿真過程可以在Matlab Robotics Toolbox模塊中通過編寫運動控制程序來實現(xiàn),選擇在關節(jié)空間內(nèi)對運動軌跡進行規(guī)劃,并使關節(jié)2、3從0°旋轉(zhuǎn)到90°,觀察機器人仿真運動過程,并通過滑塊控制器獲得末端執(zhí)行器相對基礎坐標系的位姿數(shù)據(jù)。
正運動學仿真程序:首先定義機器人各關節(jié)起始點為qz=[0 0 0 0 0 0],終止點為qr=[0-1.571-1.571 0 0 0],且在起點和終點手臂的移動速度為0,運動時間t=2 s。
建立機器人正運動學仿真的命令如下:
運行上述程序可以觀察到機器人從初始位置運動到圖2的整個過程,即完成了機器人運動學仿真實驗。
圖2 終止點位置
最后,利用機器人運動方程對終端位姿數(shù)據(jù)進行了計算,并將計算結(jié)果與運動學仿真中所獲得的位姿數(shù)據(jù)進行對比,驗證了運動學方程和所建立的機器人對象的可靠性。
本文對模塊化六自由度機器人進行了正運動學、逆運動學分析,并在Matlab環(huán)境下,利用Robotics Toolbox建立了機器人對象,進行了運動學仿真,并將仿真數(shù)據(jù)與運動學方程計算結(jié)果進行對比,驗證了運動學方程和所建立的機器人對象的可靠性,說明了所設計的參數(shù)是正確的,達到了預定目標,為物理樣機的設計提供了參考依據(jù)。
[1]朱世強,王宣銀.機器人技術及其應用[M].杭州:浙江大學出版社,2001
[2]劉松國,朱世強,李江波,等.6R機器人實時逆運動學算法研究[J].控制理論與應用,2008(6)