国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MATLAB中的運動學機械臂算法

MATLAB ? 來源:djl ? 作者:MathWorks ? 2019-09-11 15:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MATLAB 在 2016 年就推出了 Robotics System Toolbox(RST),其中有很多關于機械臂方面的算法。而且隨著客戶需求的增加,也在加入一些新的功能。為了試圖讓讀者了解更多 RST 在機械臂方面的支持,讓我們來看一下機械臂方面的算法概貌。

MATLAB中的運動學機械臂算法

這些名詞聽起來都比較深奧,但是在機械臂的世界里,這些都非常有用。

讓我們看一個簡單的例子。下圖是一個簡單的機械臂示意:機械臂的 end-effector(末端機構)受到 4 個旋轉關節和 3 個連桿的共同作用,可以到達不同的作業地點,也可以處于不同的旋轉角度。

MATLAB中的運動學機械臂算法

為了分析 end-effector 的具體位置和角度,我們看到:

它相對底座開始,做了 4 次旋轉(rotation)和 3 次轉置(translation)。那這 4 此旋轉和 3 此轉置的總和,我們可以用一個矩陣來表示:

MATLAB中的運動學機械臂算法

這個矩陣也叫 Homogeneous Transformation(齊次變換)。

有時候,對于旋轉會有不同的表達方式,例如歐拉角(Euler Angles)、四元素(Quaternion)、旋轉矩陣(Rotation Matrix)等等;表達轉置,也可使用轉置向量(Translation Vector)。有了 RST 這些都可以輕松通過不同的函數進行互換。下圖為具體的函數列表:

MATLAB中的運動學機械臂算法

例如:將歐拉角轉為Homogeneous Transformation:

>> eul = [0 pi/2 0];

tformZYX = eul2tform(eul)

tformZYX =

0.0000 0 1.0000 0

0 1.0000 0 0

-1.0000 0 0.0000 0

0 0 0 1.0000

由于機械臂的連桿長度是已知的,只要確定了各個關節轉動的角度,我們就可以確定 end-effector 的最終位置和方向。這個我們稱之為 forward kinematics(正向運動學)。反過來,如果我們知道了 end-effector 的最終位置和方向,我們也可以推導各個關節的角度,這個我們稱之為 inverse kinematics(反向運動學)。

機械臂關注的主要是反向運動學。

如果 end-effector,需要走一段比較長的路程(path),從甲點運行到乙點。我們為了使得機械臂的 end-effector 的路徑平滑,需要規劃一系列的路徑點(waypoints),這個我們叫做路徑規劃(trajectory planning)或者叫運動插補(interpolation)。例如下圖,藍色的曲線叫 path,而各個時間經過的路徑點叫 trajectory。如何設計經過這些路徑點的 trajectory,比較顯而易見的指標是 “平滑” 。那什么是“平滑” ,它可能意味著 “速度連續” 、“加速度連續” 、 “沒有頓挫” 等等。這些指標,都會轉化成數學算法。 RST 也會有相應的算法支持,作者將另外寫文章描述。

MATLAB中的運動學機械臂算法

機械臂的關節位置我們一般用電機來驅動。電機通過產生力矩來轉動機械裝置,驅動機械臂。不同場合或者時機,需要的力矩不盡相同。

例如,機械臂水平放置的時候需要關節電機產生力矩來抵消地球引力;當機械臂需要迅速移動的時候,需要的力矩比緩慢移動的要大,當機械臂彎曲或者平展時候,重心發生變化,由于慣量(I = mr2)的不同,需要的關節力矩也不相同;另外,在很多場合,機械臂需要和人交互(collaborative robots),在碰到人體的時候,需要做出安全的保護動作,并對力矩進行調整。

這些需要考慮力矩的因素,我們稱之為動力學(dynamics)。和運動學類似,動力學分為正向動力學(forward dynamics)和反向運動學(inverse dynamics)。 RST 里支持兩種都有相應的 MATLAB 函數和Simulink block。作者也會另外寫文章詳細介紹 RST 關于動力學的部分。

運動學

1. Rigid Body Tree (剛體樹)

我們說研究運動學(主要是反向運動學),就是研究 end-effector 的位置改變會帶動各個關節的角度如何改變。RST 用 Rigid Body Tree 這樣一個對象,在這個對象上可以使運動學設計易用且可視化。下圖展示了機械臂的剛體樹樣例,可以在 MATLAB 界面中展示各個 body 的詳細參數。

MATLAB中的運動學機械臂算法

MATLAB中的運動學機械臂算法

一般來說,Rigid Body Tree 都是直接從機械臂的 CAD 文件或者 URDF(Unified Robot Description Format)文件導入。不過,也支持每個 body 的逐步添加。

我們隨便敲幾行 MATLAB 命令:

robot = importrobot('iiwa14.urdf');

show(robot);

MATLAB中的運動學機械臂算法

讓我們來改變一下機器人的各個關節角度(configuration),比如讓MATLAB自動給一個隨機角度配置,再看一下結果。顯然各個角度發生了變化。

q=randomConfiguration(robot);

show(robot,q);

MATLAB中的運動學機械臂算法

我們看看這個機械臂最末端的 end-effector 是什么?

showdetails(robot)

MATLAB中的運動學機械臂算法

我們再看看 end-effector 相對機器人底座(base)的 Homogeneous Transformation(相對位置和角度)。

MATLAB中的運動學機械臂算法

2. 反向運動學算法

反向運動學算法求解分兩種:一種是分析解法(Analytic solutions);一種是數值解法(Numerical solutions)。

MATLAB 用的是數值解法,可以理解為迭代尋優,或者近似解。

MATLAB 里面的反向運動學求解器(solver)有兩個:

Inverse Kinematics

Generalized Inverse Kinematics

兩者的區別是,后者比前者多了很多限制(constraints) 。例如end-effector的方向限制、機械臂各個關節的角度限制、位置限制等等。

我們先看一下比較簡單的 Inverse Kinematics:

MATLAB中的運動學機械臂算法

這是一個 6 軸機器人,end-effector 是 L6。

MATLAB中的運動學機械臂算法

我們想要的最終結果就是下圖:

tform 是 L6 相對 base 的位置和方向(合稱 pose)。

MATLAB中的運動學機械臂算法

下面的 MATLAB 代碼是計算出最終的各個關節的角度(configSoln),由于是用了迭代的數值解法,weights 為權重,initialguess 為給出一個初始估計。

MATLAB中的運動學機械臂算法

我們再看一下比較復雜的 Generalized Inverse Kinematics:

下面的代碼,做了這么幾件事情:

導入了一個 7 自由度的 rethink 機械臂— sawyer

設定反向運動學的求解限制— 例如機械臂的 end-effector 永遠指向地面的一個物體

對反向運動學進行求解

MATLAB中的運動學機械臂算法

如果我們加一段 end-effector 位置變化后,調用這段代碼的動畫效果,你會發現 end-effector 的指向沒有變化 – 帶限制的反向動力學求解成功了:

3. Simulink 示例

在安裝 RST 之后,Simulink 的 library 里就會出現幾個和機械臂(manipulator)相關的 block:

其中 Inverse Kinematics 就是反向運動學 block,其他的一些模塊顧名思義和動力學有關,在下一篇文章我會重點介紹。

MATLAB中的運動學機械臂算法

在 MATLAB Central File Exchange 上搜索 “Designing Robot Manipulator Algorithms”,這是一個基于 Simulink 和 Stateflow 的例子。我們先看一下運行結果:

這個例子展現了機械臂的 end-effector 抓了紅色物體,沿著規劃好的紫色 trajectory,進行運動。

下圖的 stateflow 狀態機是一個 trajectory tracking 的算法,它的作用是確保 end-effctor 沿著預設的 trajectory 運行。

MATLAB中的運動學機械臂算法

狀態機下面的是運動控制部分和環境和物理模型。運動控制很簡單 – 直接計算反向運動學,將算好的關節角度交給物理模型去展現。物理模型構建也很簡單—— 用 SimScape 中的 SimMultibody 直接導入機械臂的 URDF 文件即可。

MATLAB中的運動學機械臂算法

這里可以看到物理模型并沒有包含伺服電機,而是“透明傳輸”— 反向運動學的結果直接發給了機械模型去展現。實際上真實的運動控制器會將位置、速度、力矩指令通過伺服總線(例如 EtherCAT)發給每個關節的電機去執行,電機通過減速器去帶動機械結構。例如,一個 6 軸機械臂會有 6 個伺服電機,運動控制器會將運動過程解析為 6 個電機可以理解的位置、速度、力矩指令。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    114

    文章

    17791

    瀏覽量

    193177
  • 機器人
    +關注

    關注

    213

    文章

    31079

    瀏覽量

    222256
  • 運動學
    +關注

    關注

    0

    文章

    8

    瀏覽量

    7221
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    射頻RFID+機械:工業零部件加工后智能分揀

    某精密機械加工廠采用RFID+機械協同方案,提升零部件分揀精度與效率,降低錯分率,實現智能制造升級。
    的頭像 發表于 01-21 14:51 ?175次閱讀

    告別圍欄時代!激光雷達讓機械產線“智能守衛”效率飆升

    某知名制藥企業的無菌制劑灌裝生產線上,并排部署了8臺高精度灌裝機械,在A級潔凈區(ISO5級)環境下工作,這些機械需要尋求安全防護方案來替代傳統的圍欄方案。傳統方案(圍欄)和安全光
    的頭像 發表于 12-02 07:32 ?276次閱讀
    告別圍欄時代!激光雷達讓<b class='flag-5'>機械</b><b class='flag-5'>臂</b>產線“智能守衛”效率飆升

    什么是 GNSS 杠桿,它在 GNSS/INS 傳感器融合算法起什么作用?

    隨著MTi-8和MTi-680(G)RTKGNSS/INS的發布,Xsens還引入了一個新的配置參數,稱為GNSS杠桿(LevelArm)。GNSS杠桿是獲得可靠的厘米級位置、速度和方向數據
    的頭像 發表于 11-24 12:05 ?370次閱讀
    什么是 GNSS 杠桿<b class='flag-5'>臂</b>,它在 GNSS/INS 傳感器融合<b class='flag-5'>算法</b><b class='flag-5'>中</b>起什么作用?

    復合機器人對比傳統AGV和機械的優勢何在?

    復合機器人對比傳統AGV和機械的優勢,核心在于它突破了單一設備的功能局限,實現了“移動+操作”的深度協同,尤其在上下料和物料轉運場景優勢顯著。經世智能復合機器人:重新定義上下料與物料轉運的效率
    的頭像 發表于 11-21 15:32 ?1632次閱讀
    復合機器人對比傳統AGV和<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的優勢何在?

    3C 電子 / 汽車 / 物流與新零售:協作機械的三大行業落地范式

    在協作機械的技術創新與行業應用,北京沃華慧通測控技術有限公司憑借深厚的研發積累與豐富的落地經驗,成為企業智能化升級的可靠選擇。從技術研發到場景落地,從產品供應到持續服務,北京沃華慧通測控技術
    的頭像 發表于 10-27 09:14 ?733次閱讀
    3C 電子 / 汽車 / 物流與新零售:協作<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的三大行業落地范式

    傳統測試設備的局限與協作機械的破局

    在協作式測試設備的研發與落地中,北京沃華慧通測控技術有限公司憑借深厚的測控技術積累,成為行業核心賦能者。作為專注于智能測控設備研發的高新技術企業,北京沃華慧通測控技術有限公司深度把握協作機械的技術特性,構建了 “機械
    的頭像 發表于 10-11 09:34 ?478次閱讀
    傳統測試設備的局限與協作<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的破局

    機器人機械效率提升的革命性解決方案:上海永銘電容器實踐

    在現代自動化與精密制造,機器人機械(人形/工業)的穩定性與效率至關重要。電容器作為電路的基本組件,對機器人機械
    的頭像 發表于 09-01 10:06 ?591次閱讀
    機器人<b class='flag-5'>機械</b><b class='flag-5'>臂</b>效率提升的革命性解決方案:上海永銘電容器實踐

    EtherCAT轉Profinet協議轉換網關實現PLC與機械通訊的配置案例

    在某汽車零部件制造企業的生產線,面臨著設備協議不兼容的問題。該生產線的核心控制系統采用的是西門子S7-1500PLC,其通信協議為Profinet,而用于零部件加工的機械則采用EtherCAT協議。由于協議差異,
    的頭像 發表于 08-30 10:55 ?792次閱讀
    EtherCAT轉Profinet協議轉換網關實現PLC與<b class='flag-5'>機械</b><b class='flag-5'>臂</b>通訊的配置案例

    創想智控焊縫跟蹤+發那科機器人實現工程機械架焊接智能化升級

    在工程機械領域,架是起重機、高空作業車等工程機械的關鍵承力部件,架焊接的精度和質量直接影響整機的結構強度與使用壽命。傳統人工焊接方式無法滿足現代工程
    的頭像 發表于 08-16 15:17 ?732次閱讀

    協作機械產品介紹

    多元需求比鄰星協作機械擁有出色的負載表現,別看其外觀設計精巧,卻能輕松承載較重的物品 。在工業生產中,無論是搬運大型零部件,還是在精密電子制造環節對微小元器件進行精準操作,它都能穩定運行,重復定位精度極高
    發表于 08-07 17:20 ?0次下載

    PROFINET轉MODBUS TCP網關在機械通信操作的應用研究

    在特定的汽車零部件生產工廠焊接生產線上,機械被應用于焊接作業,其控制體系基于Profinet協議。同時,工廠的自動化控制體系以西門子S7-1200PLC為核心,通過ModbusTCP協議實現
    的頭像 發表于 07-03 16:56 ?576次閱讀
    PROFINET轉MODBUS TCP網關在<b class='flag-5'>機械</b><b class='flag-5'>臂</b>通信操作<b class='flag-5'>中</b>的應用研究

    專為機械打造!思嵐48V具身智能版底盤強勢登場,助力具身智能場景落地!

    "的三級跳演進。思嵐科技(SLAMTEC)針對機械所需的48V供電環境以及工作環境特性,正式推出全新升級的48V赫爾墨斯(Hermes)具身智能機器人通用底盤。用戶可以非常快速的將多系統結合
    的頭像 發表于 07-01 16:11 ?745次閱讀
    專為<b class='flag-5'>機械</b><b class='flag-5'>臂</b>打造!思嵐48V具身智能版底盤強勢登場,助力具身智能場景落地!

    GZCOM-NET:為機械測試帶來高效無線解決方案!

    在智慧工廠機械的性能和安全性需通過靜態與動態測試來保障。批量化測試時,后臺需實時顯示數據曲線和異常數據。GZCOM-NET憑借高效穩定的無線傳輸,為機械
    的頭像 發表于 06-20 11:36 ?825次閱讀
    GZCOM-NET:為<b class='flag-5'>機械</b><b class='flag-5'>臂</b>測試帶來高效無線解決方案!

    大象機器人攜手進迭時空推出 RISC-V 全棧開源六軸機械產品

    大象機器人成立于2016年,專注協作機器人研發與應用,產品線涵蓋輕量級協作機器人、人形機器人、仿生機器人等多種形態。拳頭產品myCobot系列以“全球最輕的六軸機械”聞名,累計銷量超數萬臺,覆蓋
    發表于 04-25 17:59

    海康威視推出大模型機械防碰撞相機

    工業機械負載作業時,往往重達幾百斤甚至更重,提升效率的同時,如果它們“意外傷人”,后果不堪設想。
    的頭像 發表于 03-17 09:47 ?1059次閱讀