D-H建模知识讲解
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x 和 n 1 的原点重合。这时,两个参考坐标系
的原点处在同一位置。 如下图所示:
18
19
z x 4、将 n 轴绕 n 1轴旋转
,
n 1
z z 使得
n 轴与 n 1 轴对准,
这时坐标系n和 n+1 完全相同。至此, 我们就成功的从一个坐标系变换到了下一个 坐标系。如下图所示:
20
21
• 综上可知,坐标变换的步骤为: 旋转平移平移旋转
8
给每个关节指定本地参考坐标系
——确定z轴
• 如果关节是旋转的,Z轴位于按右手规则旋转的
方向。绕Z轴的旋转角 是关节变量;
• 如果关节是滑动的,Z轴为沿直线运动的方向。 沿Z轴的连杆长度d是关节变量;
注意:在每一种情况下,关节n处的Z轴下标为n-1。 例如,表示关节n+1的Z轴是Zn
9
给每个关节指定本地参考坐标系
An1S0n1
No
0
Cn1Cn1 Sn1
0
Cn1Sn1 an1Sn1
Cn1
0
dn1 1
Imag • 上式中:C n 1=cos n 1
S n 1 =sin n 1
26
• 比如,一般机器人的关节2与关节3之间的 变换可以简化为:
C3 S3C3 S3S3 a3C3
2T3A3S03
0
C3C3 S3
• 首先给每个关节指定一个参考坐标系,然 后,确定从一个关节到下一个关节(一个 坐标到下一个坐标)来进行变换的步骤。
• 如果从基座到第一个关节,再从第一个关 节到第二个关节直至到最后一个关节的所 有变换结合起来,就得到了机器人的总变 换矩阵。
4
5
• 图(a)表示了三个顺序的关节和两个连杆。 虽然这些关节和连杆并不一定与任何实际 机器人的关节或连杆相似,但是它们非常 常见,且能很容易的表示实际机器人的任 何关节。
Cn1 Sn1 0 0 1 0 0 0 1 0 0 an1 1 0
0 0
Sn1
0
0
Cn1
0 0
0 1 0
00 0 0 1 0
1 0 0
0 1 0
0 0
d1n1
0 0
1 0 0
0 1 0
0 0 Cn1 Sn1 0
0
1
0 0
Sn1
0
Cn1
0
0 1
25
Cn1 Sn1Cn1 Sn1Sn1 an1Cn1
• 两关节Z轴相交,它们之间没有公垂线(或 者说公垂线距离为零)。这时可将垂直于 两条轴线构成的平面的直线定义为X轴(相 当于选取两条Z轴的叉积方向作为X轴), 可简化模型;
11
关节变量
• 在图(a)中, 角表示绕Z轴的旋转角,d表示在
Z轴上两条相邻的公垂线之间的距离,a表示每一
条公垂线的长度(也叫关节偏移量),角 表示
n 轴旋转 n 1 使它们平行(并且共
面)。如下图所示:
14
15
z x d 2、沿 n 轴平移 n 1 距离,使得 n 和 x n 1
共线。
z 因为 x n 和 x n 1 已经平行并且垂直于 n ,沿
z 着 n 移动则可使它们互相重叠在一起。
如下图所示:
16
17
x x 3、沿 n 轴平移 a n 1 的距离,使得 n
其中n是关节数
28
• 为了简化A矩阵的计算,可以制作一张关节 和连杆参数的表格,其中每个连杆和关节 的参数值可从机器人的原理示意图上确定, 并且可将这些参数代入A矩阵。
29
• 例题:对于如下图所示的简单机器人,根 据D-H表示法,建立必要的坐标系,并填 写相应的参数表。
图1. 具有六个自由度的简单链式机器人
C6 0
0 0 1 0
0
0 0 1
34
• 在机器人的基座和手之间的总变换为:
RTHA 1A2A 3A4A 5A 6
C1(C23C 45C6S23S46) C1(C23C 45C6S23C 46) C1(C23S45) C1(C23a44
S1S5C6
S1S5S6
S1C5
C2a 33C2a2)
S1C (C 1S253 S SC 2 6 453C C 465C 6S23S46)
A2
S2
0
C2 0
0
S2a2
1 0
0
0
0
1
C3 S3 0 C3a3
A3
S3
0
C3 0
0
S3a3
1 0
0
0
0
1
C4
A4
S4
0
0
0 S4 0 C4 1 0 00
C4a4
S4a4
0
1
C5 0 S5 0
A5
S
5
0
0 1
C5 0
0 0
0
0
0
1
C6 S6 0 0
A6
S
6
0
S1(C23C 45C6S23C 46)
C1S5S6 S23C 45C6C23C 46
S1(C23S45)
C1C5 S23S45
S1(C23a44 S23C a442 a 33S 2C a 332a 2S)2a2
0
0
0
1
35
36
此课件下载可自行编辑修改,仅供参考! 感谢您的支持,我们努力做得更好!谢谢
12关节变量角表示绕z轴的旋转角d表示在z轴上两条相邻的公垂线之间的距离a表示每一条公垂线的长度也叫关节偏移量角表示两个相邻的z轴之间的角度也叫关节扭转13坐标变换假设现在位于本地坐标系那么通过四步标准运动即可到达下一个本地坐标轴旋转使得相平行
D-H建模
• Denavit—Hartenberg(D-H)模型表示了 对机器人连杆和关节进行建模的一种非常 简单的方法,它可用于表示在任何坐标中 的变换,如:直角坐标、圆柱坐标、球坐 标、欧拉坐标等;它还可以用于表示全旋 转的链式机器人、SCARA机器人或任何可 能的关节和连杆的组合。
30
图2.简单六个自由度链式机器人的参考坐标系
31
图3. 简单六个自由度链式机器人的参考坐标系线图
32
机器人参数表
#
d
a
1
1
0
0 90
2
2
3
3
4
4
5
5
0
0
a2
0
0
a3
0
-90
a4
0
0 90
6
6
0
0
0
33
C1 0 S1 0
A1
S1 0
0 1
C1 0
0
0
0
0
0
1
C2 S2 0 C2a2
6
• 图(a)表示了三个关节,每个关节都是可以 转动或平移的。第一个关节指定为关节n,第 二个关节为关节n+1,第三个关节为关节 n+2.在这些关节的前后可能还有其他关节。
• 连杆也是如此,连杆n位于关节n与n+1之间, 连杆n+1位于关节n+1与n+2之间.
7
给每个关节指定本地参考坐标系
• 为了用D-H表示法对机器人建模,第一件事 就是为每个关节指定一个本地的参考坐标 系。因此,对于每个关节,都必须指定一 个Z轴和X轴。
——确定x轴 • 当关节不平行或相交时,z轴通常是斜线,
但总有一条距离最短的公垂线,它正交于 任意两条斜线。在公垂线方向上定义本地 参考坐标系的x轴。 • 如果an表示Zn-1与Zn之间的公垂线,则xn的 方向将沿an
10
给每个关节指定本地参考坐标系
——特殊情形
• 两关节Z轴平行,就会有无数条公垂线,此 时可挑选与前一关节的公垂线共线的一条, 可简化模型;
2
前提
• 假设机器人由一系列关节和连杆组成。这 些关节可能是滑动(线性)的或者是旋转 (转动)的,它们可以按任意的顺序放置 并处于任意的平面。
• 连杆可意平面上。
• 所以任何一组关节和连杆都可以构成一个 我们想要建模和表示的机器人。
3
基本思路
• 由于所有的变换都是相对于当前坐标系的(他们 都是相对于当前的本地坐标系来测量与执行的), 因此所有的矩阵都是右乘。
24
• 从而得到结果如下:
n T n 1 A n 1 R z , n 1 o T 0 , 0 , d t n r 1 T a a n 1 , 0 r , 0 n R a x , a n 1 o n
两个相邻的Z轴之间的角度(也叫关节扭转)
12
坐标变换
• 假设现在位于本地坐标系 xn zn ,那么通
过四步标准运动即可到达下一个本地坐标 系 xn1 zn1
13
z x x 1、绕
n 轴旋转
,使得
n 1
n 和 n 1互
相平行。
a a z 因为 n 和 n 1 都是垂直于 n 轴的,
z 因此绕
0
C3S3 C3
0
a3S3
d3 1
27
推广到n个自由度
• 在机器人的基座上,可以从第一个关节开始变换 到第二个关节,然后到第三个关节……,再到机 器人的末端执行器。
• 若表把示每变个 换变 的换 矩定 阵义。为在机i 器1T人i 的,基则座可与以手得之到间许的多总
变换则为:
R T H R T 1 1 T 2 2 T 3 n 1 T n A 1 A 2 A 3 A n
22
• 在n+1和n+2坐标系间严格地按照同样的四 个运动顺序可以将一个坐标变换到下一个 坐标系。
• 从参考坐标系开始,我们可以将其转换到 机器人的基座,然后到第一个关节,第二 个关节… …,直至末端执行器。
23
• 通过右乘表示四个运动的四个矩阵就可以得到变 换矩阵A,矩阵A表示了四个依次的运动。
的原点处在同一位置。 如下图所示:
18
19
z x 4、将 n 轴绕 n 1轴旋转
,
n 1
z z 使得
n 轴与 n 1 轴对准,
这时坐标系n和 n+1 完全相同。至此, 我们就成功的从一个坐标系变换到了下一个 坐标系。如下图所示:
20
21
• 综上可知,坐标变换的步骤为: 旋转平移平移旋转
8
给每个关节指定本地参考坐标系
——确定z轴
• 如果关节是旋转的,Z轴位于按右手规则旋转的
方向。绕Z轴的旋转角 是关节变量;
• 如果关节是滑动的,Z轴为沿直线运动的方向。 沿Z轴的连杆长度d是关节变量;
注意:在每一种情况下,关节n处的Z轴下标为n-1。 例如,表示关节n+1的Z轴是Zn
9
给每个关节指定本地参考坐标系
An1S0n1
No
0
Cn1Cn1 Sn1
0
Cn1Sn1 an1Sn1
Cn1
0
dn1 1
Imag • 上式中:C n 1=cos n 1
S n 1 =sin n 1
26
• 比如,一般机器人的关节2与关节3之间的 变换可以简化为:
C3 S3C3 S3S3 a3C3
2T3A3S03
0
C3C3 S3
• 首先给每个关节指定一个参考坐标系,然 后,确定从一个关节到下一个关节(一个 坐标到下一个坐标)来进行变换的步骤。
• 如果从基座到第一个关节,再从第一个关 节到第二个关节直至到最后一个关节的所 有变换结合起来,就得到了机器人的总变 换矩阵。
4
5
• 图(a)表示了三个顺序的关节和两个连杆。 虽然这些关节和连杆并不一定与任何实际 机器人的关节或连杆相似,但是它们非常 常见,且能很容易的表示实际机器人的任 何关节。
Cn1 Sn1 0 0 1 0 0 0 1 0 0 an1 1 0
0 0
Sn1
0
0
Cn1
0 0
0 1 0
00 0 0 1 0
1 0 0
0 1 0
0 0
d1n1
0 0
1 0 0
0 1 0
0 0 Cn1 Sn1 0
0
1
0 0
Sn1
0
Cn1
0
0 1
25
Cn1 Sn1Cn1 Sn1Sn1 an1Cn1
• 两关节Z轴相交,它们之间没有公垂线(或 者说公垂线距离为零)。这时可将垂直于 两条轴线构成的平面的直线定义为X轴(相 当于选取两条Z轴的叉积方向作为X轴), 可简化模型;
11
关节变量
• 在图(a)中, 角表示绕Z轴的旋转角,d表示在
Z轴上两条相邻的公垂线之间的距离,a表示每一
条公垂线的长度(也叫关节偏移量),角 表示
n 轴旋转 n 1 使它们平行(并且共
面)。如下图所示:
14
15
z x d 2、沿 n 轴平移 n 1 距离,使得 n 和 x n 1
共线。
z 因为 x n 和 x n 1 已经平行并且垂直于 n ,沿
z 着 n 移动则可使它们互相重叠在一起。
如下图所示:
16
17
x x 3、沿 n 轴平移 a n 1 的距离,使得 n
其中n是关节数
28
• 为了简化A矩阵的计算,可以制作一张关节 和连杆参数的表格,其中每个连杆和关节 的参数值可从机器人的原理示意图上确定, 并且可将这些参数代入A矩阵。
29
• 例题:对于如下图所示的简单机器人,根 据D-H表示法,建立必要的坐标系,并填 写相应的参数表。
图1. 具有六个自由度的简单链式机器人
C6 0
0 0 1 0
0
0 0 1
34
• 在机器人的基座和手之间的总变换为:
RTHA 1A2A 3A4A 5A 6
C1(C23C 45C6S23S46) C1(C23C 45C6S23C 46) C1(C23S45) C1(C23a44
S1S5C6
S1S5S6
S1C5
C2a 33C2a2)
S1C (C 1S253 S SC 2 6 453C C 465C 6S23S46)
A2
S2
0
C2 0
0
S2a2
1 0
0
0
0
1
C3 S3 0 C3a3
A3
S3
0
C3 0
0
S3a3
1 0
0
0
0
1
C4
A4
S4
0
0
0 S4 0 C4 1 0 00
C4a4
S4a4
0
1
C5 0 S5 0
A5
S
5
0
0 1
C5 0
0 0
0
0
0
1
C6 S6 0 0
A6
S
6
0
S1(C23C 45C6S23C 46)
C1S5S6 S23C 45C6C23C 46
S1(C23S45)
C1C5 S23S45
S1(C23a44 S23C a442 a 33S 2C a 332a 2S)2a2
0
0
0
1
35
36
此课件下载可自行编辑修改,仅供参考! 感谢您的支持,我们努力做得更好!谢谢
12关节变量角表示绕z轴的旋转角d表示在z轴上两条相邻的公垂线之间的距离a表示每一条公垂线的长度也叫关节偏移量角表示两个相邻的z轴之间的角度也叫关节扭转13坐标变换假设现在位于本地坐标系那么通过四步标准运动即可到达下一个本地坐标轴旋转使得相平行
D-H建模
• Denavit—Hartenberg(D-H)模型表示了 对机器人连杆和关节进行建模的一种非常 简单的方法,它可用于表示在任何坐标中 的变换,如:直角坐标、圆柱坐标、球坐 标、欧拉坐标等;它还可以用于表示全旋 转的链式机器人、SCARA机器人或任何可 能的关节和连杆的组合。
30
图2.简单六个自由度链式机器人的参考坐标系
31
图3. 简单六个自由度链式机器人的参考坐标系线图
32
机器人参数表
#
d
a
1
1
0
0 90
2
2
3
3
4
4
5
5
0
0
a2
0
0
a3
0
-90
a4
0
0 90
6
6
0
0
0
33
C1 0 S1 0
A1
S1 0
0 1
C1 0
0
0
0
0
0
1
C2 S2 0 C2a2
6
• 图(a)表示了三个关节,每个关节都是可以 转动或平移的。第一个关节指定为关节n,第 二个关节为关节n+1,第三个关节为关节 n+2.在这些关节的前后可能还有其他关节。
• 连杆也是如此,连杆n位于关节n与n+1之间, 连杆n+1位于关节n+1与n+2之间.
7
给每个关节指定本地参考坐标系
• 为了用D-H表示法对机器人建模,第一件事 就是为每个关节指定一个本地的参考坐标 系。因此,对于每个关节,都必须指定一 个Z轴和X轴。
——确定x轴 • 当关节不平行或相交时,z轴通常是斜线,
但总有一条距离最短的公垂线,它正交于 任意两条斜线。在公垂线方向上定义本地 参考坐标系的x轴。 • 如果an表示Zn-1与Zn之间的公垂线,则xn的 方向将沿an
10
给每个关节指定本地参考坐标系
——特殊情形
• 两关节Z轴平行,就会有无数条公垂线,此 时可挑选与前一关节的公垂线共线的一条, 可简化模型;
2
前提
• 假设机器人由一系列关节和连杆组成。这 些关节可能是滑动(线性)的或者是旋转 (转动)的,它们可以按任意的顺序放置 并处于任意的平面。
• 连杆可意平面上。
• 所以任何一组关节和连杆都可以构成一个 我们想要建模和表示的机器人。
3
基本思路
• 由于所有的变换都是相对于当前坐标系的(他们 都是相对于当前的本地坐标系来测量与执行的), 因此所有的矩阵都是右乘。
24
• 从而得到结果如下:
n T n 1 A n 1 R z , n 1 o T 0 , 0 , d t n r 1 T a a n 1 , 0 r , 0 n R a x , a n 1 o n
两个相邻的Z轴之间的角度(也叫关节扭转)
12
坐标变换
• 假设现在位于本地坐标系 xn zn ,那么通
过四步标准运动即可到达下一个本地坐标 系 xn1 zn1
13
z x x 1、绕
n 轴旋转
,使得
n 1
n 和 n 1互
相平行。
a a z 因为 n 和 n 1 都是垂直于 n 轴的,
z 因此绕
0
C3S3 C3
0
a3S3
d3 1
27
推广到n个自由度
• 在机器人的基座上,可以从第一个关节开始变换 到第二个关节,然后到第三个关节……,再到机 器人的末端执行器。
• 若表把示每变个 换变 的换 矩定 阵义。为在机i 器1T人i 的,基则座可与以手得之到间许的多总
变换则为:
R T H R T 1 1 T 2 2 T 3 n 1 T n A 1 A 2 A 3 A n
22
• 在n+1和n+2坐标系间严格地按照同样的四 个运动顺序可以将一个坐标变换到下一个 坐标系。
• 从参考坐标系开始,我们可以将其转换到 机器人的基座,然后到第一个关节,第二 个关节… …,直至末端执行器。
23
• 通过右乘表示四个运动的四个矩阵就可以得到变 换矩阵A,矩阵A表示了四个依次的运动。