机器人工具箱中的Denavit-Hartenberg参数详解
【免费下载链接】robotics-toolbox-matlab Robotics Toolbox for MATLAB 项目地址: https://gitcode.com/gh_mirrors/ro/robotics-toolbox-matlab
引言
Denavit-Hartenberg(DH)参数是描述机器人运动学链中相邻连杆之间空间关系的标准化方法。对于刚接触机器人手臂研究的人来说,DH参数可能是最令人困惑的主题之一。本文将深入探讨几种常见机器人配置及其DH参数的物理意义,通过一致的图表和参数表格来阐明关键概念。
DH参数基础
本质上,我们希望描述运动链中每个连杆相对于前一个连杆的位姿。我们期望这需要六个参数,其中一个参数是连接两个连杆的关节变量。然而,Denavit-Hartenberg方法仅使用四个参数来描述相邻连杆坐标系之间的空间关系,这是通过引入两个约束来实现的:
轴x_j垂直于轴z_{j-1}
轴x_j与轴z_{j-1}相交
这种约束导致连杆坐标系有时被放置在看起来不太直观的位置,甚至可能不在物理连杆本身上。此外,坐标系的选择也不是唯一的,不同的人可能会推导出不同但正确的坐标系分配方案。
机器人运动学的分解
在机器人运动学中,通常将关节分为两组:
T_6 = T_p(q1...q3) * T_o(q4...q6)
第一组变换(前三个关节的函数)控制坐标系P的原点位置,负责设置坐标系6的位置。第二组变换(后三个关节的函数)控制坐标系6相对于坐标系P的方向。在现代机器人上,这通常由一个球形腕部机构实现,该机构提供零平移的任意方向。
这种方法允许我们将末端执行器坐标系6的位置和方向解耦。坐标系P的方向是前三个关节的函数,但我们使用这些自由度来控制位置而非方向。
常见机器人配置分析
1. 无肩部偏移的RRR机械臂
几乎所有机器人手臂都是拟人化的(类似人类),它们具有:
绕垂直轴的腰部旋转
绕水平轴的肩部旋转
绕水平轴的肘部旋转
末端的3轴腕关节
这种机器人只有两个重要尺寸:上臂和下臂段的长度,分别表示为l1和l2。所有其他a_j和d_j值均为零。
值得注意的是α1和α3的值。它们总是具有相同的幅度π/2,但符号相反。在本模型中,我们通常认为α1=-π/2。
2. 带肩部偏移的RRR机械臂
许多机器人将手臂组件放置在基座x轴的一侧水平位置。这类机器人有左右手工作配置。这种机器人有三个偏移量:o1、o2和o3。
o1偏移量不太常见,通常为零。如示意图所示,这意味着关节1和2的旋转轴不相交。
3. PUMA 560机器人(特殊RRR情况)
经典的PUMA 560机器人是上述情况的一个特例,但有一些重要区别:
α1和α3的符号与其他模型相反
机器人有一个非常明显的肩部偏移
机械设计中有一个肘部偏移的奇特之处
在PUMA 560机器人的参数中,腕部位置和方向并没有清晰地在前三个和后三个关节之间分开。
4. 带棱柱关节的RRP机械臂(斯坦福手臂)
斯坦福手臂并不是真正的拟人化手臂。它具有腰部、肩部,但手臂长度可变——它有一个滑动或棱柱形的第三关节。还有一个肩部偏移,由偏移参数o1处理。
Denavit-Hartenberg方法要求棱柱延伸在z方向,因此在这种情况下d3=q3。
基座和工具变换
基座变换
机器人坐标系的原点机械地位于关节1和2轴的交点处(对于某些机器人,这两个轴不相交)。d1的值通常设为零,但大多数真实机器人安装在某种高于地面的基座上。
工具变换
机器人坐标系6的原点位于关节4、5和6轴的交点处,通常位于腕部组件的中心。有用的机器人携带一个工具,其末端带有相对于框架6固定位姿的框架E。工具尖端(框架E的原点)通常称为工具中心点(TCP)。
结论
理解DH参数对于机器人运动学建模至关重要。虽然不同机器人可能有不同的参数配置,但基本原理是一致的。通过分析几种典型机器人的DH参数,我们可以更好地理解如何将这些参数应用于实际机器人建模和控制中。
在实际应用中,还需要考虑基座和工具的变换,这些因素会影响机器人的最终工作空间和操作精度。掌握这些概念将为机器人编程和控制打下坚实基础。
【免费下载链接】robotics-toolbox-matlab Robotics Toolbox for MATLAB 项目地址: https://gitcode.com/gh_mirrors/ro/robotics-toolbox-matlab