夏偉 吳玉文
摘 要:本文基于MATLAB Robtics Toolbox建立MOTOMAN-HP0020D-A00機(jī)械臂仿真模型,并進(jìn)行機(jī)械臂正逆運(yùn)動(dòng)學(xué)仿真,驗(yàn)證模型的正確性。最后,采用七次多項(xiàng)式插值算法完成機(jī)械臂軌跡規(guī)劃。結(jié)果表明。算法準(zhǔn)確合理,可為后續(xù)機(jī)械臂控制設(shè)計(jì)提供依據(jù)。
關(guān)鍵詞:MATLAB Robtics Toolbox;仿真模型;運(yùn)動(dòng)學(xué)分析;軌跡規(guī)劃
中圖分類號(hào):TP241文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):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
隨著科技的快速發(fā)展,智能制造成為工業(yè)生產(chǎn)的核心方向。工業(yè)機(jī)械臂是先進(jìn)設(shè)計(jì)制造中不可或缺的生產(chǎn)設(shè)備。對(duì)機(jī)械臂的運(yùn)動(dòng)特性進(jìn)行研究是進(jìn)行機(jī)器人技術(shù)研究的前提,也是機(jī)器人研究的重要環(huán)節(jié)[1]。
在當(dāng)前的教學(xué)中,用實(shí)體機(jī)械臂進(jìn)行實(shí)踐教學(xué)代價(jià)非常大,因而應(yīng)用仿真軟件研究機(jī)械臂特性尤為重要[2]。通過仿真軟件可以建立機(jī)械臂模型,進(jìn)行圖形仿真,模擬動(dòng)態(tài)特性,直觀展示機(jī)械臂的工作空間和位姿形態(tài),并獲得運(yùn)動(dòng)過程中的參數(shù)曲線和其他重要信息。這更有利于使用者掌握運(yùn)動(dòng)規(guī)律,從而規(guī)劃機(jī)械臂的運(yùn)動(dòng)特性[3-4]。
本文基于MATLAB Robtics Toolbox進(jìn)行機(jī)器人學(xué)仿真,擬應(yīng)用于實(shí)驗(yàn)教學(xué)中,對(duì)實(shí)驗(yàn)室多功能機(jī)械臂MOTOMAN-HP0020D-A00進(jìn)行仿真研究。
1 MOTOMAN-HP0020D-A00機(jī)械臂模型建立
多功能機(jī)械臂MOTOMAN-HP0020D-A00主要由基座、上臂、下臂、手臂和手腕組成,如圖1所示。有六個(gè)自由度,均為旋轉(zhuǎn)關(guān)節(jié),J1軸為基座回轉(zhuǎn)運(yùn)動(dòng),J2軸為上臂傾動(dòng),J3軸為下臂傾動(dòng),J4軸實(shí)現(xiàn)手臂橫擺,J5軸為手腕俯仰,J6軸為手腕回轉(zhuǎn)。多功能機(jī)械臂MOTOMAN-HP0020D-A00相關(guān)參數(shù)主要參數(shù)如表1所示。
已知機(jī)械臂的結(jié)構(gòu)模型后,采用改進(jìn)的D-H法建立MOTOMAN數(shù)學(xué)模型[5],其連桿參數(shù)和關(guān)節(jié)變量如表2所示。
建立多功能機(jī)械臂MOTOMAN-HP0020D-A00的參數(shù)模型后,基于MATLAB Robtics Toolbox中的link函數(shù)構(gòu)建機(jī)械臂仿真模型。其中,link函數(shù)的調(diào)用格式為:
基于drivebot(r)函數(shù)得到空間位姿,如圖2所示,初始位姿時(shí)各個(gè)關(guān)節(jié)角均為零。通過控制各關(guān)節(jié)滑塊實(shí)現(xiàn)機(jī)器人不同位姿運(yùn)動(dòng)。
2 機(jī)械臂運(yùn)動(dòng)學(xué)仿真
機(jī)械臂運(yùn)動(dòng)學(xué)是機(jī)器人進(jìn)行軌跡規(guī)劃、控制的基礎(chǔ)[6]。基于前述機(jī)械臂的仿真模型,在機(jī)器人工具箱中,對(duì)多功能機(jī)械臂MOTOMAN-HP0020D-A00進(jìn)行機(jī)器人正逆運(yùn)動(dòng)學(xué)仿真。
利用fkine對(duì)機(jī)械臂進(jìn)行正運(yùn)動(dòng)學(xué)仿真,求取MOTOMAN-HP0020D-A00末端執(zhí)行器的位姿變換矩陣。取六個(gè)關(guān)節(jié)的關(guān)節(jié)向量為[q=[π/2,-π/3,-π/2,π/5,π/3,π/6]],調(diào)用函數(shù)格式為:
在MATLAB中求解出機(jī)械臂的末端位姿在基座下的變換矩陣[T]為:
逆運(yùn)動(dòng)學(xué)是已知末端執(zhí)行器變換矩陣[T],逆解出各關(guān)節(jié)變量[7]。在MATLAB Robtics中基于ikine函數(shù)實(shí)現(xiàn)逆運(yùn)動(dòng)學(xué)仿真計(jì)算。函數(shù)格式為:
據(jù)此可求解出[qi]=[1.570 8,-1.047 2,-1.570 8,0.628 3,1.047 2,0.523 6]。
由此可知,仿真結(jié)果中[q=qi],可見,在MATLAB Robtics Toolbox中模型建立正確。
3 機(jī)械臂軌跡規(guī)劃
對(duì)于機(jī)器人從起始點(diǎn)[Q0]到運(yùn)動(dòng)到終止點(diǎn)[Q1]的過程,采用七次多項(xiàng)式插值對(duì)該軌跡進(jìn)行規(guī)劃。在MATLAB Robtics Toolbox中調(diào)用jtraj函數(shù)完成插值軌跡規(guī)劃,采用plot函數(shù)仿真過程的末端軌跡狀況以及機(jī)械臂六個(gè)關(guān)節(jié)的運(yùn)動(dòng)參數(shù)[8]。末端軌跡圖如圖3所示。
在運(yùn)動(dòng)時(shí)間向量[t]=[0:0.05:4]條件下,采用subplot函數(shù)求取機(jī)械臂末端[X]方向、[Y]方向和[Z]方向的末端位移圖。調(diào)用格式為:
subplot(311),plot(t,squeeze(T(1,4,:))),xlabel('時(shí)間/s'),ylabel('位移/mm'),title('末端位移圖')
采用subplot函數(shù)求取機(jī)械臂末端執(zhí)行器位移、速度和加速度并展示。機(jī)械臂方向位移如圖4,末端關(guān)節(jié)的位移、速度和加速度圖如圖5所示。
從圖4和圖5可得出,機(jī)械臂從初始點(diǎn)到終止點(diǎn)運(yùn)動(dòng)過程隨時(shí)間的變化曲線及[X、Y、Z]三個(gè)方向運(yùn)動(dòng)過程隨時(shí)間的變化情況,運(yùn)動(dòng)過程中,曲線無拐點(diǎn)和突變且平滑連續(xù),機(jī)械臂在運(yùn)動(dòng)過程中結(jié)構(gòu)穩(wěn)定,無振動(dòng)。由此可知,應(yīng)用MATLAB Robtics Toolbox建立機(jī)械臂模型正確,符合MOTOMAN機(jī)械臂運(yùn)動(dòng)要求,且該軌跡規(guī)劃方法設(shè)計(jì)合理。
4 結(jié)語
本文基于改進(jìn)的D-H方法,利用MATLAB Robotics Toolbox建立MOTOMAN-HP0020D-A00機(jī)械臂仿真模型,并進(jìn)行了機(jī)械臂運(yùn)動(dòng)學(xué)仿真。仿真結(jié)果證明了力運(yùn)動(dòng)學(xué)模型建立的正確性。同時(shí)采用七次多項(xiàng)式插值進(jìn)行機(jī)械臂運(yùn)動(dòng)過程的軌跡規(guī)劃,仿真得到機(jī)械臂末端軌跡圖像,通過姿態(tài)分析求得機(jī)械臂從初始點(diǎn)到終止點(diǎn)過程中[X、Y、Z]方向的運(yùn)動(dòng)參數(shù),仿真結(jié)果驗(yàn)證了軌跡算法的合理性和準(zhǔn)確性,為后續(xù)機(jī)器人研究分析打下堅(jiān)實(shí)的基礎(chǔ)。
參考文獻(xiàn):
[1]孫斌.六軸工業(yè)機(jī)器人的離線編程與仿真系統(tǒng)研究[D].太原:太原理工大學(xué),2014.
[2]左富勇,胡小平,謝珂,等.基于MATLABRobotics工具箱的SCARA機(jī)器人軌跡規(guī)劃與仿真[J].湖南科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2012(2):43-46.
[3]謝斌,蔡自興.基于MATLAB Robotics Toolbox的機(jī)器人學(xué)仿真實(shí)驗(yàn)教學(xué)[J].計(jì)算機(jī)教育,2010(19):144-147.
[4]劉長柱,曹巖,賈峰,等.基于MATLAB Robotics的SCARA機(jī)器人運(yùn)動(dòng)學(xué)分析及軌跡規(guī)劃[J].機(jī)電工程技術(shù),2018(4):121-125.
[5]何價(jià)來,羅金良,宦朋松,等.基于蒙特卡洛法的七自由度擬人機(jī)械臂工作空間分析[J].組合機(jī)床與自動(dòng)化加工技術(shù),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ī)械臂動(dòng)力學(xué)協(xié)同仿真方法研究[J].機(jī)械設(shè)計(jì)與制造,2017(7):250-253,257.
[8]樂英,岳艷波.六自由度機(jī)器人運(yùn)動(dòng)學(xué)仿真及軌跡規(guī)劃[J].組合機(jī)床與自動(dòng)化加工技術(shù),2016(4):89-92.