运动学问题是在不考虑引起运动的力和力矩的情况下,描述机械臂的运动。这篇文章是我翻过了几本机器人教材再参考网上各种博客的总结,先说看资料过程中的感想/结论:网上的博客基本不完整,要详细地了解DH建模法还是直接看书比较好。教材中《机器人建模与控制》把标准DH建模法讲得比较清楚,主要是它的坐标系建模方法比较简单、直接,因此这篇文章总结一下《机器人建模与控制》里DH建模法的整个过程。

1.关节、连杆等物理量的描述

不同的教材这个部分的描述不一样,一定要先理清楚再看下面的核心内容,最好自己画一个示意图。

关节&连杆:(见图1)

1)关节i连接连杆i-1和连杆i

2)关节i被驱动时,连杆i发生转动

关节&坐标系:

是第i+1个关节的驱动轴

以上约束条件保证了关节i被驱动时,连杆i以及相连坐标系Oi都将经历一个相应的运动。

2.建立坐标系

表达两个坐标系之间的转换关系,通常需要一个旋转矩阵R和位移矩阵P,一共12个参数。但是对于常规的机械臂来说,只要满足如下两个约束条件,即可以用4个参数表达清楚坐标系的转换关系,即  。(4个参数的存在唯一性证明参考《机器人建模与控制》)

DH法的这两个约束条件是:

后一个关节坐标系  的 x轴要垂直于前一个坐标系  的z 轴。

后一个关节坐标系  的 x轴要和前一个坐标系  的 z 轴相交,见图2。

建立坐标轴的步骤如下:

1)确定Zi轴

作为第i+1个关节的驱动轴,其方向和关节轴线方向保持一致。例如Z0是第1个关节的驱动轴,Z1是第2个关节的驱动轴。可能看上去有点混乱,但是符合规则的,这保证了:当关节i被驱动时,连杆i以及与其相连的坐标系 OiXiYiZi,将会经历一个对应的运动。

另外 Zi轴的方向符合右手定则,注意和关节的转动方向对应!

2)确定基础坐标系

由前面的讨论可知,满足DH建模约束条件的坐标变换可以用  四个参数得到!

基础坐标系的选择近乎是任意的,我们可以选择将基础坐标系的原点 Oo放置在Z0 轴上任何一点。然后,可以通过任意方便的方式来选择X0轴和Y0轴。但是建立0坐标系时,要尽可能使得最后的DH

3)确定 Xi方向

a.轴 Zi-1和轴Zi不共面

那么轴Zi-1和轴Zi的公垂线定义了Xi轴,并且它于轴Zi的交点即为原点Oi。

b.轴Zi-1平行于轴Zi

这种情况下,轴Zi-1和轴Zi之间存在无穷多个共同法线。将穿过原点Oi-1的法线选作Xi轴, Oi是该法线和Zi轴的交点。

c.轴Zi-1和轴Zi相交

选择Xi垂直于由Zi-1和Zi组成的平面。原点Oi一般设为Zi-1和Zi的交点。不过,轴线Zi上的任意一点都可以被选作原点。

4)确定坐标系N

以上的三个步骤适用于坐标系0,…N-1。最终的坐标系通常被称为末端执行器或者工具坐标系。最常见的是,将原点Oi以对称方式布置在夹具的中间, Zi轴方向沿着末端移动方向(最后一个关节伸缩的方向)。Xi轴方向沿着夹具的上下开合方向。

因为有很多情况可以随意选择坐标系 Xi轴的方向,这就导致了不同的DH参数。为了规范DH建模方法,总结“使得DH参数简单”的一些法则。

1、确定Xi轴方向时,如果有很多种选择,尽可能选择与Xi-1相同的方向

2、确定坐标系0时,使得关节变量1的取值为零。如果是转动关节,关节变量就是  ;如果是平动关节,关节变量是d

3、符合人的习惯

3. 举例(仅分析坐标系建模):

例1

例2

4.确定DH参数

根据图3确定DH参数。

对于转动关节的关节变量  来说,不同的位姿会有不同的关节角度,所以在很多教材上直接把这个变量写成  。这容易产生一个误解,只要是转动关节,不用参考图3对  的定义(不计算),直接在DH参数表中写变量  。这样的误解忽略了初始位型,求出来的转移矩阵肯定会有问题。

看一个实际的例子:

图4为球型手腕的基本结构示意图,三个转动关节的原点相同。根据坐标轴建模的顺序,如果轴 Zi-1和轴Zi相交,选择Xi垂直于由Zi-1和Zi组成的平面,轴Xi的方向可以任意选择。根据这一点,上图X4的方向有两种可能的结果。如果直接把关节变量理解成一个待确认的变量,那么可算出以下DH参数:

表1 图4(左)DH参数

表2 图4(右)DH参数

很明显两个图算出来的变化矩阵是不一样的,问题就出在关节角度应该考虑初始位型。如果计算一下左图和右图的初始关节角度,就会发现关节角度是不一样的。因此实际的DH参数应该表达为:

表3 图4(左)DH参数

表4 图4(右)DH参数

随意代入  值,计算结果相同,符合DH建模法的描述。

机器人标准DH建模法相关推荐

  1. 机器人建模中移动关节如何建立坐标系_机器人标准DH建模法

    运动学问题是在不考虑引起运动的力和力矩的情况下,描述机械臂的运动.这篇文章是我翻过了几本机器人教材再参考网上各种博客的总结,先说看资料过程中的感想/结论:网上的博客基本不完整,要详细地了解DH建模法还 ...

  2. 标准DH建模与改进DH建模(三)—— 怎么用改进DH法

    能力强的大佬可以直接看原文<A new geometric notation for open and close-loop robots> 另外,只想学习怎么使用改进DH法可以直接看第四 ...

  3. 标准DH建模与改进DH建模(四,完)——标准DH建模与改进DH建模实例对比

    本文我们分别用SDH法和MDH来给同一个机器人模型建模,感受一下两种建模方法在串联机械臂里面的应用. 所用平台:Matlab 本文重点是建系以及提取DH参数表的过程 想要运行程序只需要把所有代码复制粘 ...

  4. 标准DH建模与改进DH建模(一)——标准DH建模方法整理与总结

    仅供个人学习记录 前言 DH法一般用一次就丢,然后后面再需要用的时候就会忘,所以本文整理了DH建模法,方便需要使用的时候进行参考.这里不讲原理,只讲结论和方法 1. 建模方法(简述) DH法可分成以下 ...

  5. 空间二连杆机器人标准DH法和改进DH法建系实例

    本文旨在针对一个简单的空间二连杆机器人,分别采用标准DH法和改进DH法对其进行建系 1. 空间二连杆机器人构型如下: 2. 标准DH法建系如下: 标准DH参数表如下: 启动Matlab的机器人工具箱: ...

  6. 标准DH建模与改进DH建模

    standard_DH    根据DH表示法确定一个一般步骤为每个关节指定参考坐标系,然后确定如何实现任意两个相邻坐标系之间的变换,最后写出机器人的总变换矩阵.如图所示表示了三个顺序关节和两个连杆,每 ...

  7. 四足机器人—matlab机器人工具箱DH建模

    目录 基于matlab机器人工具箱的四足机器人DH建模 模型展示 代码 参考博客 基于matlab机器人工具箱的四足机器人DH建模 模型展示 代码 %2021/10/28四足机器人DH建模 %碎弧的星 ...

  8. 机械臂 标准DH建模与改进DH建模

    参考这篇博客,非常感谢 https://blog.csdn.net/u013528298/article/details/81021386?utm_source=blogxgwz8 ZX变换和XZ类变 ...

  9. 机器人学回炉重造(1-2):各种典型机械臂的正运动学建模(标准D-H法)

    文章目录 写在前面 三连杆平面机械臂 平行四边形操作臂 闭链结构 例:平行四边形操作臂 球形臂 拟人臂 球腕 斯坦福机械臂 带球形手腕的拟人化机械臂 DLR机械臂 参考文献 写在前面 本文所有机械臂均 ...

  10. 机器人学之运动学笔记【3】—— 机械臂DH表示法+正向运动学(Forward Kinematics)

    机器人学之运动学笔记[3]-- 机械臂DH表示法+正向运动学(Forward Kinematics) 1. 手臂几何描述方式 2. 改进DH法 描述机械臂 2.1 在连杆上建立Frame 2.2 D- ...

最新文章

  1. springmvc json 406
  2. 利用腾讯云为你的域名申请并配置免费SSL一年
  3. android手写简单mvp,[webpack]手写一个mvp版本的webpack
  4. php简单实用的操作文件工具类(创建、移动、复制、删除)
  5. 64位centOS5.4系统安装memcached
  6. mysql-普通查询(General Query)慢查询(Slow Query)相关日志配置
  7. 【MM系列】SAP 关于更改物料的价格控制类型
  8. Java 9 特性与示例
  9. 【Java】用while循环实现1+2+3......+100
  10. 蔡高厅老师 - 高等数学阅读笔记 - 07 - 函数的微分 - 微分中值定理 罗尔、拉格朗日中值定理 (31、32、33、34、35)
  11. cvc 降噪_哪款蓝牙耳机降噪效果最好,降噪音质俱佳的蓝牙耳机推荐
  12. 文科辅修计算机科学,英属哥伦比亚大学专业详情.docx
  13. FPGA杂记5——格雷码转换设计
  14. 计算机主机报警 声,电脑开机报警声音大全
  15. matlab中的kron函数
  16. 用生产者消费者模式爬取斗图吧,一次性收获超多表情包【python爬虫入门进阶】(11)
  17. 【ARMv8】异常级别的定义EL0、EL1、EL2、EL3
  18. 光绘文件 c语言 解析,基于NXP TEA19051的Type-C 60W多协议快充方案设计(含gerber+方案阐述 )...
  19. Click Once使用总结
  20. STM32的USART串口通信

热门文章

  1. ffplay源码编译
  2. 北京市城八区廉租住房和经济适用住房保障家庭收入、住房、资产标准已确定
  3. uniapp小程序webSocket封装、断线重连、心跳检测
  4. load west0479 matlab,matlab矩阵详解 - Matlab 资料库 视频 教程 讲义 代码 - 数学建模社区-数学中国...
  5. Kafka面试题(附答案)
  6. 微信小程序——video视频播放
  7. 一文看懂数字孪生,工信部权威白皮书
  8. linux安装weget命令,linux安装wget命令
  9. mac安装win7之后鼠标失灵_苹果电脑安装win7时键盘鼠标无响应3种解决方案
  10. 京香julia_百度百科