?

基于MATLAB的機器人正運動學分析與仿真

2016-12-06 08:43趙慧娟
電子測試 2016年21期
關鍵詞:運動學連桿坐標系

趙慧娟

(中國礦業大學,江蘇徐州,221116)

基于MATLAB的機器人正運動學分析與仿真

趙慧娟

(中國礦業大學,江蘇徐州,221116)

鑒于機器人技術的迅猛發展,不同用途的機器人活躍在各個領域。研究機器人,運動學分析是關鍵,包括運動學方程的正解和逆解。本文應用坐標系變換對機器人進行建模分析,計算出機器人運動方程的正解求解公式,得到了關節末端坐標與各個關節角之間的對應關系。并應用Matlab—Simulink下的SimMechanics仿真模塊進行機器人的運動學三維仿真,驗證仿真模型,為今后機器人運動學方面的研究提供一個直觀有效的環境。

機器人;運動分析;仿真

0 引言

機器人技術是一門多學科綜合交叉的邊緣學科,涉及電子、機械、運動學、動力學、控制理論、傳感器檢測、計算機技術和人機工程。計算機技術的不斷發展促使機器人技術的發展達到一個新水平。上至宇宙飛船、下至深海開發,大到空間站,小到微型機器人,機器人技術已經拓展到全球經濟發展的諸多領域,成為高科技中非常重要的部分。

機器人機械設計與一般的機械設計相比,有很多不同之處。首先,從機構學的角度來看,機器人的結構是由一系列連桿通過旋轉關節連接起來的開式運動鏈。機械手是機器人系統的運動部分。作為自動化工具的機械手,它有如下特點:它的執行機構是用來保證復雜空間運動的綜合剛體,而且它自身也往往需要在機械加工或裝配等過程中作為統一體進行運動。因此我們分析機器人需要一種可行性方法。

1 機器人的結構參數模型

1.1連桿坐標系的建立

圖1 坐標系的建立

要想分析機器人的運動,必須建立坐標系,Denavit和Hatenberg提出構造連桿D-H坐標系方法,這種方法在各個連桿上固結一個坐標系,命名與基座固結在一起的坐標系為{0},與連桿i固結在一起的坐標系為{i}。笛卡爾坐標系用分為固聯坐標系后置和固聯坐標系前置兩種形式,本文默認選為固聯坐標系前置方式。

1.2連桿坐標系的建立方法與原則連桿機構的結構模型如圖1所示:笛卡爾坐標系的建立規則如下:

將各個關節軸延長并標出。確定坐標原點的位置。畫出關節軸i-1和i之間的公垂線,則公垂線與關節軸i-1的交點作為坐標系{i-1}的原點,公垂線與關節軸i的交點作為坐標系{i}的原點。若兩關節軸線相交,則交點即為原點。確定坐標系Z軸的方向。規定的方向與關節軸i-1的方向相同。確定坐標系X軸的方向。規定軸與公垂線共線,方向由坐標系{i-1}。的原點指向坐標系{i}的原點。若關節軸i與i-1相交,規定軸垂直于關節軸i-1和i所在平面。確定坐標系X軸的方向。規定的方向通過,由右手定則確定。坐標系{0}的的位置和方向可以任意選取,基本上是遵循使用者的個人習慣確

1.3D-H參數

連桿坐標系建立成功之后,為描述機器人的結構和特性,規定一系列參數,包括:

1.3.1單根連桿參數

用兩相鄰關節軸線間的相對位置關系來描述單根連桿的尺寸,有兩個參數就(見圖2)

1.3.2相鄰連桿之間的參數

相鄰兩連桿之間的參數,用兩根公垂線之間的關系來描述。桿距離為兩根公垂線與之間的距離,即兩x軸與之間的距離,在軸上測量。對于轉動關節,=常數;對于移動關節,=變量。連桿轉角為兩根公垂線與之間的夾角,即兩x軸與軸之間的夾角,繞軸從軸旋轉到軸,符合右手規則的為正。對于轉動關節,為變量;對于移動關節,為常數。

連桿坐標系的建立為處理和分析機器人提供了便利,通過變換矩陣可以遞推求出末端執行器的坐標。機器人的連桿由四個參數描述,其中參數和將連桿本身的個各種特征描述出來。另兩個參數和用于將連桿之間的的關系描述出來,為后續正運動學提供基礎。

2 機器人正運動學分析

機器人運動學分析建立在機器人研究的基礎上,同時機器人仿真系統也是建立運動學分析上的。在工業應用中對機械手進行編程必須建立各種坐標系以及設定關節坐標。當運行程序時,控制器的運算單元分析出程序所給出的坐標變化,通過這些坐標變化進一步轉變成關節位置的變化,這就是整個控制過程。而這些功能得以實現的最關鍵一步就是運動分析。

機器人的正運動學又稱為正解過程。其指的是給出了D-H參數及變換矩陣,當給定一組連桿角度值,相應的求出末端執行器位姿矩陣的過程。

以PUMA560機器人為例,參照其D-H參數表中參數,將表中的四個參數分別帶入到四階齊次變換矩陣,運用傳遞公式,計算得

3 正運動學方程的matlab驗算

依據PUMA560機器人的D-H參數,查閱參數得a2=431.8mm, a3=20.32mm;d2=149.09mm,

d4=433.07mm,立柱高660.4mm。采用迭代原理,并繪出正解結果折線圖。編寫matlab函數文件,令1到6關節角度為分別為:90°,0°,-90°,0,90°,0°那么它的形態應該是桿3,4,5處于水平狀態,且各個坐標系遠點位置可通過簡單幾何加減關系推到出如下:

圖2 機器人正運動學

以上結果與預測的坐標點相同。

運行程序的同時會得到各個坐標點的折線圖如圖3所示,它可以直觀體現機器人各個關節的位置形態。

圖3 關節折線圖

可見其3,4,5關節水平和設想基本一致,可初步證明正解方程正確性。

4 基于Simmechanic的機器人三維建模仿真

MATLAB是Mathworks公司開發的一種集數值計算、符號計算和圖形可視化三大基本功能于一體的功能強大、操作簡單的優秀工程計算應用軟件。MATLAB不僅可以處理代數問題和數值分析問題,而且還具有強大的圖形處理及仿真模擬等功能。從而能夠很好的幫助工程師及科學家解決實際的技術問題。

Simulink 是 Matlab 的一個方便的、交互式的、可視化的程序編制系統。對于非線性動態系統的模擬仿真極其有用,可以在圖形界面下,利用鼠標操作,畫方框圖的方式建立系統模型和運行仿真操作,可以應用于線性、非線性、連續離散、多變量和多速率系統。SimMechanics 結合 Simulink 和 Matlab,對一個機械系統進行建模仿真。通過一系列相關的模塊來表示一個機構系統,就如同 Simulink 模型一樣,而且你可以將SimMechanics作為 Simulink 的一個分級子系統嵌入 Simulink 當中。在仿真之前,利用 Matlab 圖形系統,SimMechanics 可視化工具可以簡化為機械結構直觀顯示。

其基本步驟如下:選擇Groud、Body、和Joint模塊:從Bodies和Joints模塊組中拖放建立模型所必需的Body和Joint模塊,還包括Machine Environment模塊和至少一個Ground模塊到Simulink窗口中。這些模塊的功能已經在本章第三小節說明過,在此不多作講解。定位于聯接模塊:將Joint和Body模塊拖放到適當的位置,然后按正確的順序將它們依次連接起來。

整個系統可以是一個開環的或者是閉環的拓撲結構,但至少有一個構件是Ground模塊,而且有一個環境設置模塊直接與其相連。

圖4 仿真圖

圖5 末端位置圖

一個構件可能不止兩個鉸(Joint),即可以產生分支。但是一個鉸只能連接兩個構件。配置Body模塊:雙擊模塊,打開參數對話框,配置質量屬性(質量和慣性矩),然后確定Body模塊和Ground模塊與整體坐標系或其他坐標系之間的關系。配置Joint模塊:雙擊模塊,打開參數對話框,設置移動或轉動軸,或球面鉸結點等。選擇、連接和配置Constraint模塊和Driver模塊:從它們的模塊庫中添加模塊到模型窗口中,打開并配置它們每一個對話框,為了限制或驅動Constraint/Driver所連接的兩個構件的相對運動。選擇、連接和配置Actuator和Sensor模塊:從對應的模塊庫中添加所需模塊至模型窗口,并依次連接。通過Actuator模塊確定控制信號,通過Sensor模塊測量運動。Actuator、Sensor模塊實現SimMechanics模塊與Simulink模塊的連接。利用這兩個模塊就能夠達到與Simulink環境實現信號傳遞。同時,Actuator模塊從Simulink模塊接受信號(如Sources模塊庫)來激勵機構運動。Sensor模塊的輸出端口向Simulink中輸出信號(Sinks模塊庫),反饋輸出結果。

由于第6軸只起到旋轉作用,模型圖只設置了五個角度驅動器和一個末端位置傳感器。

運行結構模型仿真圖和示波器輸出的位置分別如圖4和圖5所示。

可見當在結構模型中輸入各個關節角度時,該結構模型可以得出末端的坐標位置,這相當于一個正解過程,不過這是一個直觀的物理仿真過程。

當我們將軸3的角度約束去掉,同時在剛體2和剛體3之間加一角度傳感器如圖6所示。由于第3軸沒有了角度的約束驅動,那么整個機器人將在重力作用下作局部擺動,這樣我們通過傳感器就能觀察到軸角度和末端位置的變化,甚至有需要可以得到末端坐標的變化速度和關節角速度。

圖6 加角度傳感器后局部視圖

運行模型文件, 兩個示波器分別輸出軸3的角度和末端坐標,波形如下圖7和圖8。

圖7 軸3角度

圖8 末端坐標位置

至此,機器人的三維仿真模型建立完畢,可以應用它來輔助學習研究機器人相關理論。

5 總結

本文根據坐標變換理論,分析機器人對應的結構和參數,建立D-H參數模型,對正運動學進行求解。并運用matlab編程對正運動學方程進行驗證,這是對運動學分析的一種自我肯定與檢驗并且通過驗證過程將正運動學過程熟練應用。運用matlab的機構仿真模塊simmechanics建立了一種串聯機器人的的仿真模型。該仿真模型具有直觀性與易操作性,可以完成動態分析和對不可預測的因素進行排除。本結構模型已經有它的的作用所在,它可以為日后分析機器人提供一個直觀工具,為以后更深入的研究機器人的軌跡分析與運動規劃奠定基礎。

[1]王佳.一種六自由度工業機器人的軌跡規劃及仿真研究[D].西安:長安大學,2011

[2]張煥.六自由度機器人結構設計、運動學分析及仿真.西安:西安理工大學,2004

[3]周國義,謝明紅,孫友生,劉仁中.6自由度解藕機器人運動學逆解優化的研究[J].機電產品開發與創新,2009,22(5):21-23.

[4]楊國良. 工業機器人動力學仿真及有限元分析[D].武漢:華中科技大學,2007.

[5]汪國平.仿真模擬技術及應用[J].物理學與信息科學技術專題,2005,34(8):596-602

[6]石志新,羅玉峰,葉海燕.一般5R串聯機器人逆運動學通用求解方法研究[J].機械科學與技術,2009,28(5):661-664.

[7]周品,何正風.MATLAB數值分析[M].北京:機械工業出版社,2013.1.

[8]陳偉華,張鐵.噴涂機器人軌跡規劃的研究[J].2009,3(37):16-18.

Robotic forward kinematics analysis and simulation based on MATLAB

Zhao Huijuan
(China University of Mining and Technology,Xuzhou,Jiangsu,221116)

In view of great progress of robot technology,robots with different function are used in various fields.kinematics analysis including forward and inverse solution is critical to study robots.This paper applies coordinate system transformation to make model analysis of robot, works out positive solution to robots equations of motion and at last gets correspondence between joint ends coordinate and corresponding joint angle.Then it utilizes SimMechanics under Matlab—Simulink to make robot 3D kinematics simulation aiming to vertify simulation model,which provides a effective environment for the research of robot kinematics.

robot;kinematics analysis;simulation

趙慧娟(1981-),女,江蘇泰州人,講師,工程碩士在讀,研究方向:電氣控制。

猜你喜歡
運動學連桿坐標系
壓裂泵虛擬試驗連桿疲勞性能研究
獨立坐標系橢球變換與坐標換算
某發動機連桿螺栓擰緊工藝開發
基于MATLAB的6R機器人逆運動學求解分析
工業機器人在MATLAB-Robotics中的運動學分析
基于D-H法的5-DOF串并聯機床運動學分析
解密坐標系中的平移變換
坐標系背后的故事
連桿的設計及有限元分析
基于運動學原理的LBI解模糊算法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合