草庐IT

机器人D-H矩阵分析(SCARA机器人为例)

荒-于-嬉 2025-01-03 原文

D-H矩阵是一种通用方法,在机器人的每个连杆上固定一个坐标系,然后用4×4的齐次变换矩阵来描述相邻两个连杆的空间关系。通过依次变换可以推导出末端执行器相对基座(基坐标系)的位姿,从而建立机器人的运动学方程。
1.位姿描述
机器人的位姿描述与坐标变换是进行工业机器人运动学和动力学分析的基础,明确位姿描述和坐标变换的关系,用到的基本数学知识就是——矩阵。位姿代表位置和姿态。任何一个刚体在空间坐标系中都可以用位置和姿态来精确、唯一表示其位置状态。

位置:x、y、z坐标
姿态:刚体与OX轴的夹角rx 、与OY轴的夹角ry 、与OZ轴的夹角rz
具体做法:假设基坐标系{A}为OAXAYAZA,刚体坐标系{B}为OBXBYBZB,XA轴与XB轴的夹角为rx , YA轴与YB轴的夹角为ry , ZA轴与ZB轴的夹角为rz 。
对于机器人而言,空间中的任何一个点都必须要用上述6个参数明确指定,即(x,y,z,rx,ry,rz),即便(x,y,z)都一样, (rx,ry,rz)不同代表机器人以不同的姿态去到达同一个点。
2. D-H矩阵计算
在D-H表示法内,机器人的每个连杆都用𝑎,𝛼,𝑑,𝜃四个参数来描述。其中,𝑎表示连杆的长度,𝛼表示连杆扭角, 𝑑表示两个相邻连杆间的距离,𝜃表示两个相邻连杆的夹角。 𝑎,𝛼描述连杆自身的特征, 𝑑,𝜃描述相邻连杆间的关系。
对于平移关节, 𝑑是关节变量, 𝑎,𝛼,𝜃是关节参数;对于旋转关节,𝜃是关节变量, 𝑎,𝛼,𝑑是关节参数。
D-H矩阵分为标准D-H矩阵和改进D-H矩阵,分别对应MATLAB中的‘standard’和 ‘modified’。
(1)标准D-H矩阵
如图表示了三个关节(joint)和两个连杆(link),第一个关节指定为关节i-1,第二个关节指定为关节i,第三个关节指定为关节i+1。在这些关节前后可能还有其他关节,连杆也是如此表示,连杆i位于关节i与关节i+1之间。

首先建立参考坐标系{i},建立过程遵循以下规则:
𝑧_𝑖轴与𝑖+1关节轴线重合
𝑥_𝑖轴垂直于𝑧_(𝑖−1)轴和𝑧_𝑖轴,并由关节i指向关节𝑖+1
以𝑧_(𝑖−1)轴和𝑧_𝑖轴的公垂线与𝑧_𝑖轴的交点为原点
𝑦_𝑖轴通过右手坐标系规则建立。




(2)改进D-H矩阵
如图表示了三个关节(Axis)和两个连杆(link),第一个关节指定为关节i-1,第二个关节指定为关节i,第三个关节指定为关节i+1。在这些关节前后可能还有其他关节,连杆也是如此表示,连杆i位于关节i与关节i+1之间。

首先建立参考坐标系{i},建立过程遵循以下规则:
𝑧_𝑖轴与𝑖关节轴线重合
𝑥_𝑖轴垂直于𝑧_(𝑖+1)轴和𝑧_𝑖轴,并由关节i指向关节𝑖+1
以𝑧_(𝑖+1)轴和𝑧_𝑖轴的公垂线与𝑧_𝑖轴的交点为原点
𝑦_𝑖轴通过右手坐标系规则建立





(3)SCARA机器人D-H矩阵
SCARA机器人属于串联机器人,有四个自由度:3个旋转副,1个移动副。根据标准D-H矩阵的建立方法分别建立各关节坐标系。


有关机器人D-H矩阵分析(SCARA机器人为例)的更多相关文章

  1. ruby - 在 Windows 机器上使用 Ruby 进行开发是否会适得其反? - 2

    这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby​​-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub

  2. 旋转矩阵的几何意义 - 2

    点向量坐标矩阵的几何意义介绍旋转矩阵的几何含义之前,先介绍一下点向量坐标矩阵的几何含义点:在一维空间下就是一个标量,如同一条直线上,以任意某一个位置为0点,以一定的尺度间隔为1,2,3...,相反方向为-1,-2,-3...;如此就形成了一维坐标系,这时候任何一个点都可以用一个数值表示,如点p1=5,即即从原点出发沿着x轴正方向移动5个尺度;点p2=-3,负方向移动3个尺度;     在一维坐标系上过原点做垂直于一维坐标系的直线,则形成了二维坐标系,此时描述一个点需要两个数值来表示点p3=(3,2),即从原点出发沿着x轴正方向移动3个尺度,在此基础上沿着y轴正方向移动两个尺度的位置就是点p3。

  3. ruby - 我的 Ruby IRC 机器人没有连接到 IRC 服务器。我究竟做错了什么? - 2

    require"socket"server="irc.rizon.net"port="6667"nick="RubyIRCBot"channel="#0x40"s=TCPSocket.open(server,port)s.print("USERTesting",0)s.print("NICK#{nick}",0)s.print("JOIN#{channel}",0)这个IRC机器人没有连接到IRC服务器,我做错了什么? 最佳答案 失败并显示此消息::irc.shakeababy.net461*USER:Notenoughparame

  4. 机器学习——时间序列ARIMA模型(四):自相关函数ACF和偏自相关函数PACF用于判断ARIMA模型中p、q参数取值 - 2

    文章目录1、自相关函数ACF2、偏自相关函数PACF3、ARIMA(p,d,q)的阶数判断4、代码实现1、引入所需依赖2、数据读取与处理3、一阶差分与绘图4、ACF5、PACF1、自相关函数ACF自相关函数反映了同一序列在不同时序的取值之间的相关性。公式:ACF(k)=ρk=Cov(yt,yt−k)Var(yt)ACF(k)=\rho_{k}=\frac{Cov(y_{t},y_{t-k})}{Var(y_{t})}ACF(k)=ρk​=Var(yt​)Cov(yt​,yt−k​)​其中分子用于求协方差矩阵,分母用于计算样本方差。求出的ACF值为[-1,1]。但对于一个平稳的AR模型,求出其滞

  5. 华为OD机试真题 C++ 实现【带传送阵的矩阵游离】【2023 Q2 | 200分】 - 2

            所有题目均有五种语言实现。C实现目录、C++实现目录、Python实现目录、Java实现目录、JavaScript实现目录题目n行m列的矩阵,每个位置上有一个元素你可以上下左右行走,代价是前后两个位置元素值差的绝对值.另外,你最多可以使用一次传送阵(只能从一个数跳到另外一个相同的数)求从走上角走到右下角最少需要多少时间。输入描述:第一行两个整数n,m,分别代表矩阵的行和列。后面n行,每行m个整数,分别代表矩阵中的元素。输出描述:一个整数,表示最少需要多少时间。

  6. 建模分析 | 平面2R机器人(二连杆)运动学与动力学建模(附Matlab仿真) - 2

    目录0专栏介绍1平面2R机器人概述2运动学建模2.1正运动学模型2.2逆运动学模型2.3机器人运动学仿真3动力学建模3.1计算动能3.2势能计算与动力学方程3.3动力学仿真0专栏介绍?附C++/Python/Matlab全套代码?课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等);局部规划(DWA、APF等);曲线优化(贝塞尔曲线、B样条曲线等)。?详情:图解自动驾驶中的运动规划(MotionPlanning),附几十种规划算法1平面2R机器人概述如图1所示为本文的研究本体——平面2R机器人。对参数进行如下定义:机器人广义坐标

  7. 网站日志分析软件--让网站日志分析工作变得更简单 - 2

    网站的日志分析,是seo优化不可忽视的一门功课,但网站越大,每天产生的日志就越大,大站一天都可以产生几个G的网站日志,如果光靠肉眼去分析,那可能看到猴年马月都看不完,因此借助网站日志分析工具去分析网站日志,那将会使网站日志分析工作变得更简单。下面推荐两款网站日志分析软件。第一款:逆火网站日志分析器逆火网站日志分析器是一款功能全面的网站服务器日志分析软件。通过分析网站的日志文件,不仅能够精准的知道网站的访问量、网站的访问来源,网站的广告点击,访客的地区统计,搜索引擎关键字查询等,还能够一次性分析多个网站的日志文件,让你轻松管理网站。逆火网站日志分析器下载地址:https://pan.baidu.

  8. ABB-IRB-1200运动学分析MATLAB RVC工具分析+Simulink-Adams联合仿真 - 2

    一、机器人介绍        此处是基于MATLABRVC工具箱,对ABB-IRB-1200型号的微型机械臂进行正逆向运动学分析,并利Simulink工具实现对机械臂进行具有动力学参数的末端轨迹规划仿真,最后根据机械模型设计Simulink-Adams联合仿真。 图1.ABBIRB 1200尺寸参数示意图ABBIRB 1200提供的两种型号广泛适用于各作业,且两者间零部件通用,两种型号的工作范围分别为700 mm 和 900 mm,大有效负载分别为 7 kg 和5 kg。 IRB 1200 能够在狭小空间内能发挥其工作范围与性能优势,具有全新的设计、小型化的体积、高效的性能、易于集成、便捷的接

  9. 关于Qt程序打包后运行库依赖的常见问题分析及解决方法 - 2

    目录一.大致如下常见问题:(1)找不到程序所依赖的Qt库version`Qt_5'notfound(requiredby(2)CouldnotLoadtheQtplatformplugin"xcb"in""eventhoughitwasfound(3)打包到在不同的linux系统下,或者打包到高版本的相同系统下,运行程序时,直接提示段错误即segmentationfault,或者Illegalinstruction(coredumped)非法指令(4)ldd应用程序或者库,查看运行所依赖的库时,直接报段错误二.问题逐个分析,得出解决方法:(1)找不到程序所依赖的Qt库version`Qt_5'

  10. 智能客服 | 浅谈人工智能聊天机器人ChatGPT - 2

    2022年底,OpenAI的预训练模型ChatGPT给人工智能领域的爱好者和研究人员留下了深刻的印象和启发,他展现的惊人能力将人工智能的研究和应用热度推向高潮,网上也充斥着和ChatGPT的各种聊天,他可以作诗、写小说、写代码、讨论疫情问题等。下面就是一些他的神回复:人命关天的坑: 写歌,留给词作者的机会不多了。。。 回答人类怎么样面对人工智能: 什么是ChatGPT?借用网上的一段介绍,ChatGPT是由人工智能研究实验室OpenAI在2022年11月30日发布的全新聊天机器人模型,一款人工智能技术驱动的自然语言处理工具。它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动

随机推荐