迪茹俠,張曉宇,劉長江,付莎莎
(西安汽車職業(yè)大學 智能制造工程學院,陜西 西安 710600)
工業(yè)機器人是集機械、電子、控制、計算機、傳感器、人工智能等多學科先進技術(shù)于一體的現(xiàn)代制造業(yè)中重要的自動化裝備,是實現(xiàn)智能制造業(yè)發(fā)展的重要方式,它的發(fā)展已經(jīng)成為衡量一個國家制造水平和科技水平的重要依據(jù)。
在汽車生產(chǎn)制造過程中,其四大工藝幾乎全域覆蓋機器人的工作領(lǐng)域,因此,機器人對汽車的生產(chǎn)制造至關(guān)重要。我校工業(yè)機器人實訓的主要設(shè)備是Asea Brown Boveri(ABB)集團的IRB 1410型工業(yè)機器人,該機器人結(jié)構(gòu)堅固可靠,軌跡精度和重復(fù)定位精度高,零件生產(chǎn)質(zhì)量穩(wěn)定,工作范圍大、結(jié)構(gòu)緊湊、手腕極為纖細,即使在條件苛刻、限制頗多的場所,仍能實現(xiàn)高性能操作。噪音水平低、例行維護間隔時間長、使用壽命長,主要應(yīng)用在弧焊、物料搬運、上下料等領(lǐng)域。實訓教學中,使用工業(yè)機器人不僅可以使學生加深對機器人基本結(jié)構(gòu)的認識理解,而且對所學基本理論進行實際應(yīng)用。同時,它也可以作為理論模型的基礎(chǔ),又可以對所建模型實物驗證,檢驗所建模型的準確性。真正做到理論學習與實踐有機結(jié)合。
為完成機器人的搬運、碼垛、焊接、裝配等任務(wù),就必須清楚機器人在運動過程中的初始位姿、運動軌跡及末端執(zhí)行器的位姿關(guān)系,而末端執(zhí)行器的空間位姿就是機器人控制過程中的運動學問題。雖然學生在實訓中可以通過示教器實時顯示機器人的空間位姿,但其直觀的顯示結(jié)果使得學生很難理解機器人內(nèi)部位姿變換的原理及過程。因此有必要使學生既要從理論上對機器人空間位姿進行描述,又要通過實際驗證位姿的準確性與合理性。
對于空間中的點的位置描述可用3*1的位置矢量矩陣PA=[PX PY PZ]T來表示。但在空間中的剛體除了描述其位置,還必須確定其空間姿態(tài)(方向)。因此,在空間中描述機器人的位姿[1-2],可以將機器人每一個連桿視為一個剛體,若給定了剛體上某一點的位置和該剛體在空間的姿態(tài),則這個剛體在空間上是唯一確定的,便可用唯一的一個位姿矩陣進行描述。可采用位姿矩陣d描述,如式(1)所示,其中位置矩陣為P=[Px Py Pz1]T,姿態(tài)為n=[nx ny nz1]T,o=[ox oy oz1]T,a=[ax ay az1]T。

IRB1410型機器人操作臂可看成一開式運動鏈,由一系列連桿通過轉(zhuǎn)動或移動關(guān)節(jié)串聯(lián)而成[3-5]。此類型的工業(yè)機器人是典型的多關(guān)節(jié)型串聯(lián)機器人,共六個關(guān)節(jié),如圖1所示,分別是:腰部的回轉(zhuǎn)軸1,大臂的擺動軸2,小臂的上下俯仰運動軸3,臂部的轉(zhuǎn)動軸4,腕部的擺動軸5,手部的轉(zhuǎn)動軸6。每個關(guān)節(jié)均是旋轉(zhuǎn)類型,內(nèi)部的運動依靠電機進行驅(qū)動,減速器來傳遞動力,安裝關(guān)節(jié)時按關(guān)節(jié)順序依次連接起來。

圖1 IRB1410型工業(yè)機器人關(guān)節(jié)順序?qū)嵨飯D
對機器人空間位姿描述是機器人運動學問題,主要表述機器人各個關(guān)節(jié)與末端執(zhí)行器之間在空間中的位姿關(guān)系。通常建立機器人相對應(yīng)的運動學模型,即建立機器人的坐標系,通過坐標變換就可確定連桿最終位姿矩陣,進而確定末端操作器位姿。在機器人應(yīng)用中,采用D-H參數(shù)法[6]進行建模。
基于機器人的基坐標建立IRB1410型工業(yè)機器人的連桿坐標系[6],如圖2所示。其中基座稱為連桿0,不包含在這6個連桿之內(nèi)。連桿1與基座0由關(guān)節(jié)1相連接;連桿2與連桿1通過關(guān)節(jié)2相連接。機器人具體參數(shù)數(shù)據(jù)來源于本校機器人技術(shù)手冊,其中a1=150 mm,a2=600 mm,a3=120 mm,d4=720 mm,d6=85 mm,連桿扭轉(zhuǎn)角利用D-H法分析得到各個角度。由于關(guān)節(jié)轉(zhuǎn)角θ不是一個固定值隨著運動而變化角度,所以給出了各個關(guān)節(jié)轉(zhuǎn)角的運動范圍,如表1所示。

圖2 機器人連桿坐標系

表1 IRB1410型六軸工業(yè)機器人D-H參數(shù)表
表1中,i為連桿,θi為連桿轉(zhuǎn)動角度,ai為連桿長度,di為連桿偏距,alphai為連桿扭角,range為關(guān)節(jié)角度范圍。
在機器人的建模研究中,分為正向和逆向運動學問題。正向運動學問題是已知關(guān)節(jié)旋轉(zhuǎn)角度求解末端執(zhí)行器的空間位姿,其主要解決運動學方程的建立以及末端執(zhí)行器位姿的求解問題;反之,已知末端執(zhí)行器的空間位姿,求解機器人各個關(guān)節(jié)的旋轉(zhuǎn)角度便是運動學逆問題[7-8],通過運動學逆問題便能解決手部在空間的指定位姿時各個關(guān)節(jié)所需達到的角度問題。

建立正向運動學方程需相鄰桿件的位姿矩陣,在D-H參數(shù)法中,Ai表示連桿i的坐標到達連桿i+1的坐標系中經(jīng)歷旋轉(zhuǎn)平移基礎(chǔ)矩陣變換。根據(jù)表1中參數(shù)列寫出機器人六個關(guān)節(jié)處的位姿變換矩陣如下:

式(3)中cθi=cosθi,sθi=sinθi,i=1,2…6。
因此,末端執(zhí)行器位姿矩陣T6,即式(4)為該工業(yè)機器人的正運動學模型。

通過上述矩陣方程計算發(fā)現(xiàn),運動學方程的求解需要大量的數(shù)學計算,因此可借助計算機軟件進行編程計算,本文采用Matlab2016b及機器人工具箱Matlab Robots Toolbox在D-H參數(shù)表的基礎(chǔ)上構(gòu)建工業(yè)機器人仿真模型。
創(chuàng)建機器人三維模型需要兩個重要的函數(shù)Link()和SerialLink(),其調(diào)用格式為R=Link ([theta關(guān)節(jié)轉(zhuǎn)角,d連桿偏距,a連桿長度,alpha連桿扭轉(zhuǎn)角],’standard’),應(yīng)用Link函數(shù)創(chuàng)建帶參數(shù)的各個連桿,SerialLink函數(shù)將各連桿連接起來,構(gòu)建IRB1410型工業(yè)機器人,仿真結(jié)果如圖3所示。

圖3 IRB1410型工業(yè)機器人仿真結(jié)果
關(guān)鍵程序如下:

正向運動學問題是已知關(guān)節(jié)旋轉(zhuǎn)角度和D-H參數(shù)求解末端執(zhí)行器的空間位姿,其主要解決運動學方程的建立以及末端執(zhí)行器位姿的求解問題;而逆運動學是已知末端執(zhí)行器的空間位姿,反求機器人各個關(guān)節(jié)的旋轉(zhuǎn)角度,通過運動學逆問題便能解決將手部放置在空間的指定位姿時各個關(guān)節(jié)所需達到的角度問題。由于正逆運動學求解方法可采用幾何法、代數(shù)法、迭代法等,運算量大,代數(shù)方程多,因此可借助Matlab中的fkine()和ikine()兩個函數(shù)進行正逆運動學分析,實現(xiàn)簡化計算,分析更為快速。
利用Robotics Toolbox中的fkine()函數(shù)可以實現(xiàn)機器人正運動學的求解,其調(diào)用格式為:TR=fkine(機器人對象名稱robot,關(guān)節(jié)轉(zhuǎn)角q)。利用ikine()函數(shù)可以實現(xiàn)機器人逆運動學的求解,其調(diào)用格式為:q=ikine(機器人對象名稱robot,末端執(zhí)行器空間位姿TR)。
在上述構(gòu)建好機器人三維仿真模型的基礎(chǔ)上進行正運動學分析,假設(shè)其6個關(guān)節(jié)旋轉(zhuǎn)角度分別為theta=[pi/12 pi/12 pi/12 pi/12 pi/12 pi/12],運動學正問題的求解可利用Matlab Robots Toolbox工具箱中的fkine()函數(shù),并使用plot函數(shù)繪制出其姿態(tài),關(guān)鍵程序如下:

程序計算結(jié)果為

為驗證正運動學結(jié)果的正確性,可將正運動學方程矩陣利用Matlab編程進行檢驗,結(jié)果相等,因此所建模型準確。
在正運動學仿真結(jié)果的基礎(chǔ)上,已知末端執(zhí)行器的位姿,使用ikine()功能函數(shù)可以求解出機器人各個關(guān)節(jié)在達到末端執(zhí)行器指定位姿時候的旋轉(zhuǎn)角度,逆運動學求解程序如下:

結(jié)果:theta_1=[-0.78 -0.26 -0.26 2.63 2.02 0.10]
經(jīng)比較發(fā)現(xiàn)theta_1≠theta,原因在于機器人逆運動學求解按照理論計算應(yīng)有八種不同的逆解[9],即到達末端執(zhí)行器指定位姿可以有八種不同的方式[10]到達,而theta僅是其中一組。
通過仿真結(jié)果發(fā)現(xiàn),兩組數(shù)據(jù)繪制出的機械臂的姿態(tài)不相同,但是其末端關(guān)節(jié)相對于基坐標系的姿態(tài)是相同的。theta_1≠theta,原因在于每一個姿態(tài)下可有多個逆解。結(jié)果證明所建機器人三維仿真模型完全正確。
本論文以學校實訓設(shè)備IRB1410型機器人為研究對象,建立了機器人的D-H坐標系并列寫出參數(shù)表作為建模的關(guān)鍵數(shù)據(jù),利用相鄰連桿位姿矩陣推導(dǎo)出機器人的運動學模型。應(yīng)用Matlab及機器人工具箱構(gòu)建機器人三維仿真模型。結(jié)果表明:
(1)采用fkine()函數(shù)計算T與正運動學方程矩陣結(jié)果一致,證明構(gòu)建的IRB1410型工業(yè)機器人三維仿真模型完全正確;
(2)應(yīng)用ikine()函數(shù)進行逆運動學求解,仿真出的機械臂各關(guān)節(jié)姿態(tài)不同,但其末端關(guān)節(jié)相對于基坐標系的姿態(tài)是相同的,原因在于每一個姿態(tài)下可有多個逆解。間接證明所建機器人三維仿真模型的合理性。
本文對于職業(yè)本科院校實踐教學理論的模型建立、仿真模擬以及實際操作提供了一套行之有效的方法,對于職業(yè)本科的教學理論和實踐操作提供了一定的思路。學生在實踐過程中可將機器人內(nèi)部的理論與外部的實踐有機結(jié)合,極大地促進學生探索機器人運動模型的積極性;通過實訓機器人驗證位姿的準確性與合理性,培養(yǎng)學生分析問題解決問題的能力,同時以問題為導(dǎo)向,間接促進學生對理論知識的理解,提高動手能力以及求知能力。