侯歆巖
(太原科技大學,太原 030000)
機械臂是機械手工作過程中的重要組成部分,由一系列的連桿和關節組成,負責對末端執行機構進行搬運,使其能到達指定的坐標位置。為完成預定的工作目標,需要對其進行運動控制。機械臂運動控制涉及機械臂運動學分析。運動學分析模型采用了D-H法,可通過其對機械臂進行運動學求解。
本次設計的機械臂主要用于圖書館內的自動借還書系統,用于對負責夾取圖書的末端執行機構進行搬運,使其能準確到達所需夾取圖書的位置。整個機械臂去除末端執行機構后具有五個關節,分為底座、腰部、大臂、小臂、手腕五個部分。其中腰部負責整個機械臂本體機構的轉動,大臂、小臂和手腕部負責末端執行機構位姿的變化。
本次設計的機械臂有五個關節,每個關節對應一個自由度,模型采用D-H法建立。機械臂的組成是由五個連桿以及五個關節組成。連桿使兩端的關節軸線具有固定的幾何關系,關節控制連桿的轉動角度和轉速。在對機械臂進行分析時,需給各個連桿都建立一個坐標系,如圖1所示。用每個連桿上的固定坐標系表明連桿和相鄰連桿的相對位置關系。在建立好連桿各個關節的坐標系后即可確定連桿參數,連桿參數如表1所示。每個連桿由四個參數來表示,即連桿長度li、連桿扭角αi、連桿距離di、連桿轉角θi[1]。

圖1 機械臂連桿坐標系Fig.1 Coordinate system of manipulator connecting rod

表1 連桿參數表Tab.1 Parameter list of connecting rod
運動學正解是根據機械臂各個關節工作狀態來求解末端執行機構的所在位置。得出運動學正解方程后,可根據正解方程和各個關節所在角度計算出末端執行機構相對于原點的位置與姿態[2]。計算過程如下:


其中,法向矢量n是通過右手定則確定的矢量。方位矢量o表示執行機構的連線方向,接近矢量a表示末端執行機構接近圖書的方向,則末端執行機構的姿態即可表示為R=[n,o,a],末端執行機構的位置可根據位置矢量p確定。
通過運動學逆解可以在規定末端執行機構位置時確定每個關節的值,從而計算機械手能做到預定姿態時各個關節的位置[3]。
上述為逆解該機械臂各關節變量的求解方程。在工作時已知末端執行機構所處位姿,可通過上述方程求解各個關節所對應的角度,從而控制機械臂到達相應位置。
通過MATLAB軟件中的Robotics Toolbox,可以對該機械臂建立D-H模型,從而對機械臂的運動進行可視化仿真[4]。
機械臂在到達所需工作的位置時,各個關節需同時運動才能到達最終的目標位置。設工作時機械臂的各個關節參數為θ=(90,90,-90,90,90),通過MATLAB編程對其進行正運動學方程求解,得n=(1,0,0),o=(0,1,0),a=(0,0,1),p=(0,4950,1150)。通過模型對其進行模擬,模擬結果如圖2所示。其位置參數與所求解相同,即計算得到的運動學正解是正確的。

圖2 機械臂模擬及位置參數Fig.2 Simulation and location parameter of manipulator
對其套用逆解公式求解。設當其工作時,機械臂工作位置為相對機械臂的原點,高3500,距離1500,其末端執行機構姿態為n=(1,0,0),o=(0,1,0),a=(0,0,1),p=(0,3500,1500)。將其各個位置參數帶入逆運動學方程,可求得其逆解。得該位置有且只有唯一解為θ1=90°,θ2=161°,θ3=-132°,θ4=90°,θ5=90°。通過模型對其解進行驗證,將各個角度帶入,如圖3所示。從求得的解可以看出,解與實際情況之間存在誤差的原因是由于機械設計過程中各個連接件之間的尺寸及配合之間存在誤差,主要原因是對三角函數的求解存在較大誤差,而且角度輸入亦存在誤差。但最終解與機械臂位置數據基本相符,驗證了所求運動學逆解的正確性。

圖3 機械臂模擬及位置參數Fig.3 Simulation and location parameter of manipulator