基于 Sim Mechanics 的六自由度機械臂仿真研究
2017-7-31 來源:廣東工業大學機電工程學院,廣東廣州 作者:康信勇,趙翼翔,陳新
摘要: 運動學和動力學分析對機械臂的研究具有很重要的作用。以往對機械臂的研究方法均需要建立復雜的數學模型和程序,而 Sim Mechanics 具有簡單、快捷獲取動態系統的模型的功能,并且系統建模方便直觀,仿真功能強大,可以在模型中通過改變結構,優化系統參數,在仿真環境中分析結果。利用 Sim Mechanics 的上述優點,以工業六自由度機械臂 ER10為研究對象,將 Solid Works 建立好的機械臂 ER10 模型導入到 MATLAB/Sim Mechanics 仿真平臺中,生成對應的仿真模型,并且在運動仿真平臺中,通過在機械臂模型添加末端位姿信號和各個關節信號 ( 角度函數,力矩值) ,全面地對機械臂進行運動學和動力學分析。
關鍵詞: 機械臂; MATLAB/Sim Mechanics ; 運動仿真
前言
隨著工業機械臂的發展,工業機械臂越來越廣泛地被運用于工業各個領域。而機械臂本身是一個復雜的機電系統,設計出來的機械臂的機電系統,需要包含驅動力 /力矩和驅動器。在設計機械臂控制系統時,我們需要獲得每個部分的數學模型,每個電機的所需要扭矩和旋轉角度,并預計機械臂的運動位置。現以六自由度工業機械臂 ER10 為研究對象,基于 MAT-LAB / Sim Mechanics 仿真平臺進行仿真研究。ER10 機械臂末端負載為 10 kg,可以應用于噴釉,拋光打磨等行業。Sim Mechanics 仿真平臺最大的特點是: 不需要去建立機構運動的數學模型和編制復雜程序; 系統建模方便直觀,仿真功能強大; 可以通過改變結構,優化系統參數,在仿真軟件環境中分析結果。這些特點大大減輕建立機構運動仿真模型這一過程的工作量,研究機械臂時可以通過這種簡單、快捷的方法來獲取機械臂的動態系統的模型。Sim Mechanics 包含一個模塊庫和特殊的仿真接口 ( 傳感器和驅動塊) ,這些模塊將 Sim Mechanics 模 塊 和 Simulink 環境相銜接
文中將六自由度機械臂三維模型導入至 Sim Me-chanics 仿真平臺中,生成對應的仿真模型,并在仿真模型的關節上添加關節角度信號,進行機械臂運動學正解分析; 添加末端位姿信號,進行機械臂運動學反解分析; 添加關節力矩和末端位姿信號,進行機械臂動力學正解分析; 添加關節角度信號,進行機 械 臂 動 力 學 反 解 分 析。仿 真 流 程 圖 如 圖 1所示

1 、Sim Mechanics 建模技術
Sim Mechanics 可以仿真機構的運動,并提供了一系列工具求解帶有靜力學約束、坐標系變換等在內的機構系統的運動問題,可以利用虛擬現實工具箱提供的功能顯示機 構系統運 動的動畫 示 意圖。可以在Sim Mechanics 的機構模型中通過特殊的 Sensor 模塊和Actuator 模塊與一般的 Simulink 模塊相連接,利用牛頓動力學基本概念,對各種運動副連接的剛體進行建模與仿真,實現對機構系統進行分與析設計的目的。
下面簡單介紹 Sim Mechanics 包含的并將用到的模塊,如表 1。表 1 Sim Mechanics 模塊


表 1 Sim Mechanics 模塊
Ground 模塊表示在慣性坐標系中一個相對地面靜止的點,一端連接到關節上以阻止關節一側的移動。每個有效的 Sim Mechanics 機構至少含有一個 Ground 模塊。
Machine Environment 模塊是用于查看和修改機械模型的環境變量設置。 每個Ground 模塊必須連接一個有效的機械環境模塊。
Body 模塊代表一個用戶定義的剛體屬性。用戶指定的屬性必須包括: 物體的質量和慣性矩張量。物體的重心坐標( CG) 一個或多個物體坐標系統 ( CSs) 。
Joint Sensor 模塊表示測量關節模塊原始的位置、速度和加速度; 也可以測量關節模塊的接觸力和力矩。
Joint Actuator 模塊表示一個或者多個信號驅動物體之間的關節,這些信號可以為力信號和運動信號 ( 包括角度,角速度和角加速度) 。
Constants &DriversLinear Driver 模塊驅動塊指定組件的不同身體坐標系統 ( CS) 起源作為時間的函數。
Driver Actuator 模塊為驅動聯系兩物體之間的驅動塊。驅動塊需要一個時間函數來指定相對位置、速度和加速度。兩個平行約束機構連接的限制他們的相對轉動運動。確保兩個物體的軸向量是平行的。
JointsRevolute 模塊表示物體之間的旋轉關節。
Weld 模塊表示兩個物體之間沒有自由度的關節,兩端物體連接在一起沒有相對移動。
Custom Joint 模塊表示自定義關節 ( 含移動、轉動或球形) 代表最一般和不受約束的自由度在三維空間中,可以表示三個平移自由度和三個旋轉自由度,也可以作為一個球形關節表示作為一個,兩個或三個轉動轉動自由度由右手法則定義。
2 、機械臂模型導入
將 Solid Works 建 立 的 機 械 臂 模 型 利 用 Sim-Mechainics 插件導入到 MATLAB 中,得到機械臂本體的仿真模型,如圖 2 所示。

圖 2 機械臂仿真模型
仿真運行時的運動可視化模型如圖 3 所示。

圖 3 機械臂可視化模型
3 、六自由度機械臂運動學分析
3. 1 機械臂運動學正解關節角度驅動信號如圖 4 所示。

圖 4 關節角度驅動信號
機械臂運動學正解是根據各個關節變量 θ1,θ2,θ3,θ4,θ5,θ6的值,來求解機械臂末端位姿。按照這個要求,為了方便分析運動學正解,取各個關節角度變化值。關節 1 角度變化函數為 θ1= 35sint; 關節 2角度變化函數

六自由度機械臂添加關節角度驅動信號后模型如圖 5 所示。

圖 5 運動學正解模型
ER10 子系統模型如圖 6 所示。


圖 6 ER10 子系統模型
各個關節角度函數的變化曲線圖如圖 7 所示。

圖 7 關節角度變化
實際末端軌跡如圖 8 所示。

圖 8 末端軌跡圖
這樣通過直接在關節上添加關節角度函數來觀察機械臂末端軌跡變化,直觀地觀察機械臂運動學正解仿真時的變化情況。
3. 2 六自由度機械臂運動學反解
機械臂運動學反解是通過機械臂末端位置,求各個關節角度變化。為了分析機械臂反向運動,定義機械臂末端位置軌跡為:x = 0. 2sin t+π2( )-2; y = 0. 2sint-1; z = 0. 04
利用 Sim Mechanics 建立運動學反解模型如圖 9 所示。

圖 9 運動學反解模型
端軌跡子系統模型如圖 10 所示。

圖 10 末端軌跡模型
方位子系統 Sim Mechanics 模型如圖 11 所示。

圖 11 末端方位模型圖

理 想 情 況 下 末 端 軌 跡 繪 制 三 維 圖 形 如 圖 12所示。

圖 12 末端軌跡
仿真后各關節角度變化曲線如圖 13 所示。

圖 13 各關節角度變化曲線
求得關節角度變化可為機 械臂控制系統中進一步設 計 電 機 的 旋 轉 角 度 變 化 提 供 一 定 的 理 論依據。
4 、六自由度機械臂動力學分析
4. 1 機械臂動力學正解
根據 關 節 驅 動 力 或 力 矩,計 算 機 械 臂 的 運 動( 關節位移、速度和加速度) 。現在在前 3 個旋轉關節上添加驅動力矩 M = 10 N/m,后 3 個旋轉關節上添加驅動力矩 M = 3 N/m。動力學正解模型中末端軌跡和方位的設定與機械臂運動學反解中的末端軌跡和方位的設定一致。
以此創建出來的機械臂動力學正解 Sim Mechanics模型如圖 14 所示。

圖 14 機器人動力學正解
機械臂運動仿真后各關節角度變化曲線如圖 15所示。

圖 15 角度變化曲線
從圖中看出在各個關節上施加旋轉力矩的情況下隨著末端位置軌跡的變化,機械臂各個關節角也在不斷變化,反應出在添加關節力矩后,關節角的變化情況。
4. 2 機械臂動力學反解
根據軌跡運動的對應的關節位移、速度和加速度、求所需要的關節力矩或力。現在在各個關節上添加角位 移變化函數,關 節 1 角 度 變 化 函 數 為 θ1=35sint; 關節 2 角度變化函數 θ2= 20sin ( t - pi / 2) ; 關節 3 角度變化函數 θ3= 10sint; 關節 4 角度變化函數θ4= 5sin( t-pi / 2) ; 關節 5 角度變化函數 θ5= 15sin( t -pi / 2) ; 關節 6 角度變化函數 θ6= 25sint。 各關節的角度函數通過求導可以得到角速度和角加速度函數。各個 關 節 角 度 驅 動 信 Simulink 模 型 如 圖 4所示。
添加驅動信號和輸出模塊后,六自由度機械臂Sim Mechanics 動力學反解模型如圖 16 所示。
對 Sim Mechanics 模塊中的 Joint Sensor 模塊設置如圖 17 所示,選擇輸出為關節矩。

圖 16 機械臂動力學反解
θ4= 5sin( t-pi / 2) ; 關節 5 角度變化函數 θ5= 15sin( t -pi / 2) ; 關節 6 角度變化函數 θ6= 25sint。 各關節的角度函數通過求導可以得到角速度和角加速度函數各個 關 節 角 度 驅 動 信 號 Simulink 模 型 如 圖 4所示。
添加驅動信號和輸出模塊后,六自由度機械臂Sim Mechanics 動力學反解模型如圖 16 所示。
對 Sim Mechanics 模塊中的 Joint Sensor 模塊設置如圖 17 所示,選擇輸出為關節矩。

圖 17 模塊設置
仿真運行后各旋轉關節力矩的變化情況如圖 18 所示。

圖 18 關節力矩變化
在實際操作過程中可以通過機械臂的動力學反解的變化情況,來分 析關節角的變化對關節力 矩的影響。
5 、結束語
研究和分析了六自由度機械臂運動學和動力學仿真。機械臂相關控制的研究設計都是在運動學和動力學基礎上進行,利用 MATLAB /Sim Mechanics 仿真平臺分析機器人運動學和動力學,大大減輕建立機構仿真模型這一過程的工作量,并且分析出機械臂運動學正反解中各個關節的角度變化和位姿變化情況,以及動力學正反解中角度變化和力矩等相關數值相互影響后的變化情況,為進一步設計機械臂的控制做準備。
投稿箱:
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com