使用Denavit-Hartenberg表示法有什么优势?


11

当要对运动链建模时,特别是要定义连接到每个物体的框架时,通常使用Denavit-Hartenberg参数

这种表示法有什么优势?

我可以理解使用规范化表示的兴趣,但这会影响算法性能吗?该算法的实现并非易事,我们可以从中获得什么样的收益,而不是仅仅手动(即任意地)固定参考帧,就像在许多机器人格式(如URDF)中那样

Answers:


5

除了获得矩阵乘法的组合的最终结果(确实有很大帮助)外,DH约定的一个关键方面是可以仅针对每个链接用4个变量(即,链接长度,扭曲,偏移量和关节角度)来代替规范6(即,平移为3,旋转为3)。

综上所述,鉴于在DH中我们可以方便地分配符合指定标准的后续参考帧的位置,因此我们可以压缩表示形式:例如,对于配备7个自由度的拟人操纵器,我们可以仅处理7 * 4 = 28个独立变量/参数,而不是7 * 6 = 42。


3

我相信这是关键因素:

按照这种约定,将坐标系附加到两个链接之间的关节上,以使一个变换与关节[Z]相关联,而第二个变换与链接[X]相关联。沿着由n个链接组成的串行机器人的坐标变换形成了机器人的运动学方程,

[T] = [Z1] [X1] [Z2] [X2] ... [X(n-1)] [Zn]

其中[T]是定位末端链接的转换。

也就是说,要从串行连接的链接中获取转换,您只需乘以转换矩阵即可,与使用基本几何体手动计算所有矩阵相比,该转换矩阵更容易编写和使用。

问候


2
还有另一种表示形式,称为指数乘积(POE),它也可以做到这一点,但是更加直观。DH的问题在于,它严格地(但不总是唯一地)约束每个关节的坐标系,这通常与我们自然选择的坐标不匹配。POE允许坐标系是任意的,因此工程师可以选择最自然的坐标系。
ryan0270'4

仍然我的意思是,例如,在URDF中,您将定义围绕旋转的轴,因此,根据您选择的旋转轴,基本上(对于旋转关节)具有三个矩阵。然后,您可以在之前/之后进行静态转换,以便将框架放置在所需的位置...模型中的更多参数(不像它会影响现代计算机)和更大的灵活性,不是吗?我看到的唯一兴趣是运动
学校准

1
此外,如果将其他人的DH参数交给其他人,则可以保证它们推导出您定义的相同坐标系。
Andrew Capodieci 2014年

1
这与将其他人在关节n和关节n-1坐标系之间的转换交给别人没有什么不同。不必是DH参数。
ryan0270'4
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.