台大机器人学——03 机械臂描述及其顺向运动学

本文详细介绍了机械臂的运动学概念,包括运动学与动力学的区别,以及机械臂的结构与描述方式。重点讲解了DH参数(Denavit-Hartenberg)法,用于建立杆件间的坐标转换关系,并通过具体示例展示了如何运用DH参数进行坐标变换,以确定末端执行器在不同坐标系下的位置。此外,还提到了顺向和逆向运动学在实际应用中的意义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PS: 本篇文章为台大机器人学学习笔记,B站视频链接如下:
https://www.bilibili.com/video/BV1v4411H7ez?p=7

0. 引言

  • 运动学:关于运动状态本身,不讨论到力,关于位置、速度、加速度、时间等的关系。
  • 动力学:力/力矩如何产生运动
  • 机械臂:
    多个杆件(link)相串联,杆件间可以相对运动或者转动,由制动器驱动完成
    对应关系描述:描述臂的末端点状态(位置,速度…)
    连接方式: W P = f ( θ 1 , θ 2 , . . . , θ n ) {}^{W}P=f(\theta_{1},\theta_{2},...,\theta_{n}) WP=f(θ1,θ2,...,θn)
    描述方法:找出各个杆件间的相对几何状态,在各个杆件上建立frame,以其状态来表述

1. 机械臂描述方式

  • 关节(joint)
    每个关节具有1自由度,每个关节绕着特定的轴(axis)进行转动或者移动

  • 杆件(link): 连接关节
    在这里插入图片描述

  • 两个关节间描述:
    对于每个关节与其连接的杆件,可以其连接方向进行连续的定义,例如图中标号 i − 1 i-1 i1的关节与杆件以及标号为 i i i的;每个关节对应的转轴可以为任意方向:
    ① 两个转轴之间有一线段( a i − 1 a_{i-1} ai1)与两个转轴都垂直;
    ② 还需要一个角度来描述转轴之间的转动关系( α i − 1 \alpha_{i-1} αi1
    每两个杆之间,用 a , α a,\alpha a,α即可定义
    在这里插入图片描述

  • 多个关节间描述:
    如果需要多杆串联,则还需要另外两个参数来描述相邻线段 a i − 1 a_{i-1} ai1 a a a之间的相对几何关系
    ① 轴垂直线段 a i − 1 a_{i-1} ai1 a a a之间的相对距离: d i d_{i} di
    ② 轴垂直线段 a i − 1 a_{i-1} ai1 a a a之间的转角关系: θ i \theta_{i} θi
    在这里插入图片描述

–> 针对每个杆件,需要四个参数描述其状态: ( α i , a i , d i , θ i ) (\alpha_{i},a_{i},d_{i},\theta_{i}) (αi,ai,di,θi)

根据轴的功能不同,移动与转动的轴,够各自只有一个参数在变化:
以axis i 为例:

转动移动
θ i \theta_{i} θi变化,其它参数固定 d i d_{i} di变化,其它参数固定

2. DH表达法(denavit-hartenberg)

  • 如何在杆件上建立坐标系:
    在这里插入图片描述
Z ^ i \hat{Z}_{i} Z^i X ^ i \hat{X}_{i} X^i Y ^ i \hat{Y}_{i} Y^i
转动/移动关节的转轴方向 a i a_{i} ai≠0:沿着 a i a_{i} ai的方向遵循右手定则,与 Z ^ i \hat{Z}_{i} Z^i X ^ i \hat{X}_{i} X^i两者垂直
a i = 0 a_{i}=0 ai=0(即 Z ^ i \hat{Z}_{i} Z^i Z ^ i + 1 \hat{Z}_{i+1} Z^i+1 相交):则取 X ^ i \hat{X}_{i} X^i Z ^ i \hat{Z}_{i} Z^i Z ^ i + 1 \hat{Z}_{i+1} Z^i+1两者垂直(如下图)

在这里插入图片描述

  • 地杆(第0杆)的特别表述:
    由于link(0)固定,条件相对少,较为特殊,对于link(0)可以有特别的表述方式

令frame(0) 与 frame(1)重合:

α 0 \alpha_{0} α0 a 0 a_{0} a0 d 1 d_{1} d1 θ 1 \theta_{1} θ1
转动0(令frame(0) 与 frame(1)重合)0(令frame(0) 与 frame(1)重合)0任意
移动0(令frame(0) 与 frame(1)重合)0(令frame(0) 与 frame(1)重合)任意0
  • 任意杆件link(n)的表述:

在这里插入图片描述
取与 X ^ n − 1 \hat{X}_{n-1} X^n1同方向:

α n \alpha_{n} αn a n a_{n} an d n d_{n} dn θ n \theta_{n} θn
转动000任意
移动00任意0
  • DH表达法(denavit-hartenberg)
    在这里插入图片描述
    统一规律(注意下标):
α i − 1 \alpha_{i-1} αi1 a i − 1 a_{i-1} ai1 d i d_{i} di θ i \theta_{i} θi
方向 Z ^ i − 1 \hat{Z}_{i-1} Z^i1方向看沿 X ^ i − 1 \hat{X}_{i-1} X^i1方向 Z ^ i − 1 \hat{Z}_{i-1} Z^i1方向看沿着 Z ^ i − 1 \hat{Z}_{i-1} Z^i1方向
含义 Z ^ i − 1 \hat{Z}_{i-1} Z^i1 Z ^ i \hat{Z}_{i} Z^i夹角 Z ^ i − 1 \hat{Z}_{i-1} Z^i1 Z ^ i − 1 \hat{Z}_{i-1} Z^i1间的距离( a i > 0 a_{i}>0 ai>0 X ^ i − 1 \hat{X}_{i-1} X^i1 X ^ i \hat{X}_{i} X^i夹角 X ^ i − 1 \hat{X}_{i-1} X^i1 X ^ i − 1 \hat{X}_{i-1} X^i1间的距离

3. 杆件的坐标转换

在这里插入图片描述

根据转轴间由四个参数来表达的特点,分成四步进行转换,得到:
在这里插入图片描述
i i − 1 T = T X ^ i − 1 ( α i − 1 ) T X ^ R ( a i − 1 ) T Z ^ Q ( θ i ) T Z ^ P ( d i ) {}^{i-1}_{i}T=T_{\hat{X}_{i-1}}(\alpha_{i-1})T_{\hat{X}_{R}}(a_{i-1})T_{\hat{Z}_{Q}}(\theta_{i})T_{\hat{Z}_{P}}(d_{i}) ii1T=TX^i1(αi1)TX^R(ai1)TZ^Q(θi)TZ^P(di)
在这里插入图片描述

  • 对于连续的link,有:

n 0 T = 1 0 T 2 1 T . . . n − 1 n − 2 T n n − 1 T {}^{0}_{n}T ={}^{0}_{1}T{}^{1}_{2}T...{}^{n-2}_{n-1}T{}^{n-1}_{n}T n0T=10T21T...n1n2Tnn1T
frame{n} 相对于 frame{n} 的空间几何关系可以清晰表达;
在 frame{n} 下表达的向量,可以转回 frame{0} 下进行表达。

  • 示例1:
    在这里插入图片描述
    Z Z Z轴为转轴方向(垂直与纸面);
    X X X轴为与两个转轴垂直的一线段方向;
    Y Y Y轴根据 Z 、 X Z、X ZX轴右手定则确定;

对于 frame{0}:
选择坐标系与 frame{1} 重合,但取 θ 0 = 0 \theta_{0}=0 θ0=0,在 frame{1} 转动角度为0时,frame{1} 与 frame{0} 重合。
对于 frame{3}( frame{n}):
也选择杆件的方向,在 θ 3 = 0 \theta_{3}=0 θ3=0时,与杆件2 方向重合。

四个参数列表如下:
在这里插入图片描述
由于在此范例中,转轴都是相互平行,垂直于纸面的,因此多数参数为0.

机械臂末端点 P P P 在frame{3} 下的坐标为:
3 P = { L 3 , 0 , 0 } {}^{3}P=\{L_{3},0,0\} 3P={L3,0,0}
如果想知道末端点 P P P 在frame{0} 下(相对地面)的坐标则可以进一步进行转化。

- 示例2:
在这里插入图片描述
分析流程:
① 分析转动移动,找到转轴方向
在这里插入图片描述
1转动,2移动,3转动

② 找与两两转轴向垂直的线段 a a a
转轴1、2垂直相交,线段a即为两转轴的交点;
转轴2、3重合,也以一点作为基准。

③ 按照方法建立各个转轴(先不定义地杆与最后一杆)的坐标系
其中 X ^ 1 , X ^ 2 \hat{X}_{1},\hat{X}_{2} X^1,X^2定义为往前或往后都可以
在这里插入图片描述

④ 建立frame(0) , frame(n) 的坐标系
frame(0) 与frame(1) 重合且选择 θ = 0 \theta=0 θ=0的位置
frame(3) (即frame(n))选择相对于frame(2) 角度为0的时候
在这里插入图片描述
⑤ 可以列出各个坐标系之间的四个参数关系
在这里插入图片描述
其中90°为 Z ^ 1 \hat{Z}_{1} Z^1转到 Z ^ 2 \hat{Z}_{2} Z^2
a a a都为0:根据②中的分析,转轴都重合在某点,所以都为0;
d d d根据图示,可以看出坐标系之间转轴的距离;

⑥ 机械臂末端分析
P P P点对于frame{3}来说,其坐标为:
3 P = { 0 , 0 , L 3 } {}^{3}P=\{0,0,L_{3}\} 3P={0,0,L3}
可以通过转换将 P P P点坐标转换到frame{0}

  • PS:对于转轴相交时的讨论:
    在这里插入图片描述
    Z ^ 1 \hat{Z}_{1} Z^1 Z ^ 2 \hat{Z}_{2} Z^2相交时, Z ^ 2 \hat{Z}_{2} Z^2的方向有两个选择, X ^ 1 \hat{X}_{1} X^1的方向有两个选择。

4. 坐标系转换

在这里插入图片描述
顺向运动学:
即先找到各个关节之间的关系,再得到末端与机械臂之间的关系(由 θ \theta θ W P {}^{W}P WP)。

逆向运动学:
先知道末端在世界坐标系下的表达,再得到各个关节的关系。

cartesian space:
末端点在世界坐标系下的表达

joint space:
关节坐标系下的表达

actuator space:
在某些情况下,关节的表达与执行机构相关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值