色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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 個電機可以理解的位置、速度、力矩指令。

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

    關注

    112

    文章

    16444

    瀏覽量

    179045
  • 機器人
    +關注

    關注

    211

    文章

    28632

    瀏覽量

    207984
  • 運動學
    +關注

    關注

    0

    文章

    8

    瀏覽量

    7142
收藏 人收藏

    評論

    相關推薦

    如何使用PLC控制myCobot 320機械

    根據持續的用戶反饋,目前市場對 PLC 與 myCobot 系統集成的需求很大,因此本文提供的案例介紹了如何使用 PLC(可編程邏輯控制器)來控制 myCobot 320 機械。本案例重點介紹
    的頭像 發表于 01-23 14:03 ?120次閱讀
    如何使用PLC控制myCobot 320<b class='flag-5'>機械</b><b class='flag-5'>臂</b>

    深度解析!RK3568 加持機械是如何實現顏色識別與抓取的?

    ;2、掌握機械識別顏色抓取積木的實現方法。三、實驗原理顏色識別抓取積木功能:實現識別出不同顏色的積木,機械夾取后并放在相應的位置
    的頭像 發表于 01-15 08:07 ?96次閱讀
    深度解析!RK3568 加持<b class='flag-5'>機械</b><b class='flag-5'>臂</b>是如何實現顏色識別與抓取的?

    機械的高效運作,連接器起關鍵作用

    了眾多危險、重復的工作。 機械的工作原理 ? ? ?機械運動控制是通過控制電機和傳動裝置來實現的。控制電機的作用是將電能轉換為
    的頭像 發表于 11-11 18:07 ?311次閱讀

    【原創】 drawbot 平面機械scara寫字畫畫機器人DIY教程貼

    /1CdGoDr8WFIMfic-iPf5Znw 提取碼:m1ov 項目簡介:桌面級scara機械運動機構為兩個42步進電機和一個9g舵機,控制板為mega 2560 和ramps 1.4,其他部件主要為3D打印件
    發表于 08-30 11:54

    OrangePi AIpro應用:機械應用開發指南

    2024世界人工智能大會上,香橙派攜OrangePiAIpro20T在世博展覽館H1-A301展區亮相,給大家帶來AI+互動的沉浸式體驗。其中,搭載OrangePiAIpro開發板的智能機械吸引了
    的頭像 發表于 08-19 16:42 ?643次閱讀
    OrangePi AIpro應用:<b class='flag-5'>機械</b><b class='flag-5'>臂</b>應用開發指南

    工業機器人和機械的設計、功能和應用有哪些區別?

    自動化設備,專門用于在工業生產線或其他工業環境執行各種操作任務。它們通常具備多軸關節結構,能夠在三維空間內自由移動,并搭載各種工具、夾具或傳感器來完成特定的任務。 工業機器人和機械都屬于自動化設備,用于執行
    的頭像 發表于 08-16 09:43 ?564次閱讀

    奧比光推出2.0版大模型機械

    近期,奧比光研發團隊融合前沿多模態大模型技術,推出最新2.0版大模型機械演示方案。新方案搭載公司最新深度相機Gemini 335L和Femto Bolt,能夠基于語音指令,自動執行沏茶、插花、滴
    的頭像 發表于 07-19 16:50 ?774次閱讀

    大象機器人開源協作機械機械接入GPT4o大模型!

    本文已經或者同濟子豪兄作者授權對文章進行編輯和轉載 引言 隨著人工智能和機器人技術的快速發展,機械在工業、醫療和服務業等領域的應用越來越廣泛。通過結合大模型和多模態AI,機械能夠實
    的頭像 發表于 07-03 14:09 ?989次閱讀
    大象機器人開源協作<b class='flag-5'>機械</b><b class='flag-5'>臂</b><b class='flag-5'>機械</b><b class='flag-5'>臂</b>接入GPT4o大模型!

    國產Cortex-A55人工智能教學實驗箱_基于Python機械跳舞實驗案例分享

    發行包管理,它也提供一些工具和庫用于獲取、建立、編寫和執行多機融合的程序。 機械通過ROS機器人操控系統,簡化了6自由度串行總線舵機復雜運動控制,可實現機械
    發表于 06-28 14:37

    干貨!國產Cortex-A55人工智能實驗箱機械積木搬運實驗案例

    的順序疊起來放到中間灰色的方塊上。二、實驗原理機械自由度機械手自由度,是指傳送機構機械手的運動靈活性。通常把傳送機構的
    的頭像 發表于 06-27 08:32 ?942次閱讀
    干貨!國產Cortex-A55人工智能實驗箱<b class='flag-5'>機械</b><b class='flag-5'>臂</b>積木搬運實驗案例

    基于六維力傳感器的機械自動裝配應用

    外部環境的關鍵裝置,六維力傳感器通常安裝于機器末端執行器與機械之間,用于檢測作業的機器人與環境之間的多維交互力/力矩,并將交互力/力矩反饋給機器人力控制系統,
    的頭像 發表于 06-06 13:49 ?857次閱讀
    基于六維力傳感器的<b class='flag-5'>機械</b><b class='flag-5'>臂</b>自動裝配應用

    自然語言控制機械:ChatGPT與機器人技術的融合創新(下)

    引言 在我們的上一篇文章,我們探索了如何將ChatGPT集成到myCobot 280機械臂中,實現了一個通過自然語言控制機械的系統。我們詳細介紹了項目的動機、使用的關鍵技術如Cha
    的頭像 發表于 04-11 15:54 ?953次閱讀
    自然語言控制<b class='flag-5'>機械</b><b class='flag-5'>臂</b>:ChatGPT與機器人技術的融合創新(下)

    機械技術的前沿探索:年度案例回顧!

    在過去的幾年里,機械技術經歷了前所未有的發展,其應用領域從傳統的制造業擴展到了醫療、服務、物流等多個新興行業。這種跨界擴展得益于科技的飛速進步,尤其是在傳感器、控制系統和人工智能領域的突破。特別是
    的頭像 發表于 03-12 15:14 ?1199次閱讀
    <b class='flag-5'>機械</b><b class='flag-5'>臂</b>技術的前沿探索:年度案例回顧!

    如何去提升機械的位置控制性能?

    1.背景介紹 機械的位置控制是機械最重要的功能。機械的位置控制精度也是研究者及工程師一直關
    的頭像 發表于 03-05 08:43 ?1081次閱讀
    如何去提升<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的位置控制性能?

    【國產FPGA+OMAPL138開發板體驗】(原創)2.手把手玩轉游戲機械

    : 提高機械的定位精度是一個涉及多個方面的復雜問題。以下是一些建議,有助于進一步提高機械的定位精度: 離線標定與補償 關節參數標定:對機械
    發表于 02-01 20:18
    主站蜘蛛池模板: 午夜福利电影网站鲁片大全 | 夜色伊甸园 | 激情内射亚州一区二区三区爱妻 | 99热婷婷国产精品综合 | 偷偷鲁青春草原视频 | 国产a级午夜毛片 | 97国产精品久久精品国产 | 国产极品美女视频福利 | a级男女性高爱潮高清试看 A级毛片无码久久精品免费 | 国产成人精品自拍 | 国产精品一区二区人妻无码 | 99热在线精品免费全部my | 西西人体一级裸片 | 中国人泡妞www免费 中国拍三a级的明星女 | 毛片手机在线观看 | 97久久久久 | 亚洲精品第一国产综合 | 国产SUV精品一区二区883 | 优菈的乳液狂飙天堂W98 | 中文字幕专区高清在线观看 | 国产成人无码WWW免费视频在线 | 亚洲 综合 自拍 精品 在线 | 超碰视频在线 | 色老汉网址导航 | 亚洲精品沙发午睡系列 | 成年人免费观看视频网站 | 日日噜噜大屁股熟妇 | 国产成人欧美日韩在线电影 | 纯肉宠文高h一对一 | 国产在线观看免费观看 | 久久久久激情免费观看 | 2020国产成人精品视频人 | 国产国产人免费观看在线视频 | 伊人久久丁香色婷婷啪啪 | 日产精品高潮呻吟AV久久 | 久久视频在线视频观看精品15 | 强奸美女老师 | 99久久精品免费看国产免费 | 2020国产成人精品免费视频 | 日韩AV片无码一区二区三区不卡 | 久久久久久久久久综合情日本 |