夏偉 吳玉文



摘 要:本文基于MATLAB Robtics Toolbox建立MOTOMAN-HP0020D-A00機械臂仿真模型,并進行機械臂正逆運動學仿真,驗證模型的正確性。最后,采用七次多項式插值算法完成機械臂軌跡規劃。結果表明。算法準確合理,可為后續機械臂控制設計提供依據。
關鍵詞:MATLAB Robtics Toolbox;仿真模型;運動學分析;軌跡規劃
中圖分類號:TP241文獻標識碼:A文章編號:1003-5168(2020)04-0054-03
Abstract: In this paper, a simulation model of MOTOMAN-HP0020D-A00 manipulator was established based on the MATLAB Robotics toolbox, and the forward and inverse kinematics of the manipulator were simulated to verify the correctness of the model. Finally, the seven degree polynomial interpolation algorithm was used to complete the trajectory planning of the manipulator. The results show that the algorithm is accurate and reasonable, which can provide the basis for the subsequent control design of the manipulator.
Keywords: MATLAB Robtics Toolbox;simulation model;kinematics analysis;trajectory planning
隨著科技的快速發展,智能制造成為工業生產的核心方向。工業機械臂是先進設計制造中不可或缺的生產設備。對機械臂的運動特性進行研究是進行機器人技術研究的前提,也是機器人研究的重要環節[1]。
在當前的教學中,用實體機械臂進行實踐教學代價非常大,因而應用仿真軟件研究機械臂特性尤為重要[2]。通過仿真軟件可以建立機械臂模型,進行圖形仿真,模擬動態特性,直觀展示機械臂的工作空間和位姿形態,并獲得運動過程中的參數曲線和其他重要信息。這更有利于使用者掌握運動規律,從而規劃機械臂的運動特性[3-4]。
本文基于MATLAB Robtics Toolbox進行機器人學仿真,擬應用于實驗教學中,對實驗室多功能機械臂MOTOMAN-HP0020D-A00進行仿真研究。
1 MOTOMAN-HP0020D-A00機械臂模型建立
多功能機械臂MOTOMAN-HP0020D-A00主要由基座、上臂、下臂、手臂和手腕組成,如圖1所示。有六個自由度,均為旋轉關節,J1軸為基座回轉運動,J2軸為上臂傾動,J3軸為下臂傾動,J4軸實現手臂橫擺,J5軸為手腕俯仰,J6軸為手腕回轉。多功能機械臂MOTOMAN-HP0020D-A00相關參數主要參數如表1所示。
已知機械臂的結構模型后,采用改進的D-H法建立MOTOMAN數學模型[5],其連桿參數和關節變量如表2所示。
建立多功能機械臂MOTOMAN-HP0020D-A00的參數模型后,基于MATLAB Robtics Toolbox中的link函數構建機械臂仿真模型。其中,link函數的調用格式為:
基于drivebot(r)函數得到空間位姿,如圖2所示,初始位姿時各個關節角均為零。通過控制各關節滑塊實現機器人不同位姿運動。
2 機械臂運動學仿真
機械臂運動學是機器人進行軌跡規劃、控制的基礎[6]。基于前述機械臂的仿真模型,在機器人工具箱中,對多功能機械臂MOTOMAN-HP0020D-A00進行機器人正逆運動學仿真。
利用fkine對機械臂進行正運動學仿真,求取MOTOMAN-HP0020D-A00末端執行器的位姿變換矩陣。取六個關節的關節向量為[q=[π/2,-π/3,-π/2,π/5,π/3,π/6]],調用函數格式為:
在MATLAB中求解出機械臂的末端位姿在基座下的變換矩陣[T]為:
逆運動學是已知末端執行器變換矩陣[T],逆解出各關節變量[7]。在MATLAB Robtics中基于ikine函數實現逆運動學仿真計算。函數格式為:
據此可求解出[qi]=[1.570 8,-1.047 2,-1.570 8,0.628 3,1.047 2,0.523 6]。
由此可知,仿真結果中[q=qi],可見,在MATLAB Robtics Toolbox中模型建立正確。
3 機械臂軌跡規劃
對于機器人從起始點[Q0]到運動到終止點[Q1]的過程,采用七次多項式插值對該軌跡進行規劃。在MATLAB Robtics Toolbox中調用jtraj函數完成插值軌跡規劃,采用plot函數仿真過程的末端軌跡狀況以及機械臂六個關節的運動參數[8]。末端軌跡圖如圖3所示。
在運動時間向量[t]=[0:0.05:4]條件下,采用subplot函數求取機械臂末端[X]方向、[Y]方向和[Z]方向的末端位移圖。調用格式為:
subplot(311),plot(t,squeeze(T(1,4,:))),xlabel('時間/s'),ylabel('位移/mm'),title('末端位移圖')
采用subplot函數求取機械臂末端執行器位移、速度和加速度并展示。機械臂方向位移如圖4,末端關節的位移、速度和加速度圖如圖5所示。
從圖4和圖5可得出,機械臂從初始點到終止點運動過程隨時間的變化曲線及[X、Y、Z]三個方向運動過程隨時間的變化情況,運動過程中,曲線無拐點和突變且平滑連續,機械臂在運動過程中結構穩定,無振動。由此可知,應用MATLAB Robtics Toolbox建立機械臂模型正確,符合MOTOMAN機械臂運動要求,且該軌跡規劃方法設計合理。
4 結語
本文基于改進的D-H方法,利用MATLAB Robotics Toolbox建立MOTOMAN-HP0020D-A00機械臂仿真模型,并進行了機械臂運動學仿真。仿真結果證明了力運動學模型建立的正確性。同時采用七次多項式插值進行機械臂運動過程的軌跡規劃,仿真得到機械臂末端軌跡圖像,通過姿態分析求得機械臂從初始點到終止點過程中[X、Y、Z]方向的運動參數,仿真結果驗證了軌跡算法的合理性和準確性,為后續機器人研究分析打下堅實的基礎。
參考文獻:
[1]孫斌.六軸工業機器人的離線編程與仿真系統研究[D].太原:太原理工大學,2014.
[2]左富勇,胡小平,謝珂,等.基于MATLABRobotics工具箱的SCARA機器人軌跡規劃與仿真[J].湖南科技大學學報(自然科學版),2012(2):43-46.
[3]謝斌,蔡自興.基于MATLAB Robotics Toolbox的機器人學仿真實驗教學[J].計算機教育,2010(19):144-147.
[4]劉長柱,曹巖,賈峰,等.基于MATLAB Robotics的SCARA機器人運動學分析及軌跡規劃[J].機電工程技術,2018(4):121-125.
[5]何價來,羅金良,宦朋松,等.基于蒙特卡洛法的七自由度擬人機械臂工作空間分析[J].組合機床與自動化加工技術,2015(3):48-51.
[6] Sajjad I , Shahzad M K . Biped simulation with Robotics Toolbox for MATLAB[C]// International Conference on Robotics & Emerging Allied Technologies in Engineering. IEEE,2014.
[7]羅寧康,梅益,曹貴崟,等.有限空間約束機械臂動力學協同仿真方法研究[J].機械設計與制造,2017(7):250-253,257.
[8]樂英,岳艷波.六自由度機器人運動學仿真及軌跡規劃[J].組合機床與自動化加工技術,2016(4):89-92.