前些日子,知乎上有知友问“现在工业机器人里面到底有没有基于动力学控制”。我的回答是这样子的:

”机器人控制开发早已实现基于动力学模型的控制,否则打不开那么多的应用场景。举个例子: 短距离快速运动的点焊运动, 没有基于机器人机械动力学模型的话,这种运动会激励机械振动,只有基于动力学模型的控制才可以克服。另外像精准激光切割, 涂胶和去毛刺等应用场景,精准的contour tracking很重要,如果没有基于模型的控制,无法达成高跟随精度。还有,现在工业机器人具有末端负载自动识别功能,你说如果没有用到动力学模型,能实现吗?”

今天想总结和分享一下动力学模型在机器人开发和机器人控制和机器人参数监控中的角色:

1)计算控制环前馈信号和优化关节参考信号

帮助计算机器人控制环前馈信号和优化关节参考信号,优化机器人在应用任务要求和动力学约束下的速度,加速度和加速度率的参考信号。机器人末端装上不同的工具完成不同应用任务,一般情况(除了PTP)都是在机器人笛卡尔坐标系下规划工具的运动轨迹,然后通过运动学关系投射到机器人关节空间,生成关节空间的运动轨迹,因为毕竟最终机器人运动是靠驱动关节上的电机的。这些量驱动电机,间接使得末端工具按照预定轨迹运动。然而由于从机器人末端工具到关机电机输出轴之间耦合了弹性连杆,弹性轴承,摩擦和其他非线性要素如迟滞,使得最终任务空间的轨迹与定义的轨迹产生较大的偏离。基于动力学模型可以在线控制关节空间的参考轨迹指令;基于动力学模型可以计算前馈通道的速度和力矩,提升机器人系统的响应性能。

2)改善机器人静态误差

出厂的机器人个体之间存在差别,运动学和动力学参数存在差异,需要基于机器人运动学模型和动力学模型,使用测量手段和系统辨识方法辨识个体机器人的相关参数。为了改善机器人静态误差,需要特别考虑机器人弹性动力学模型。(可参考这篇文章:YuanH:工业机器人参数校准技术)

3)实施碰撞检测和负载辨识

如果没有实施动力学控制的话,机器人发生碰撞后,当某个轴超过一定力矩保护限值,或超过允许位置误差时才会触发停止。由于机器人从关节到末端的非线性,末端的撞击力可能会非常大,允许能达到千牛级别。实施了基于动力学的碰撞检测,那么当撞击力数十牛(具体要看机器人“吨位”了)时即可触发相对安全的停止。

4)高级的控制算法才有可能

一般情况机器人只有电机轴角度可测量,所以没有基于动力学模型的观测器设计或状态估计,很难达成状态反馈控制。其实,连最简单的控制形式即关节PID控制也需要实际关节速度和加速度,简单的差分求解速度和加速度会带来极大的噪音,通过状态估算可以获取较好的结果。另外更高级的控制例如LQG,QFT,H_infinity或者滑模控制都是基于动力学模型的控制算法。所以动力学模型是状态估计和控制算法设计的重要基础。

5)实施机器人故障辨识和诊断

工业无法承受宕机带来的经济损失,所以需要基于机器人运动学模型和动力学模型实施残差识别观测和监控,实现在线监控机器人运行性能,尽早发现性能下滑,实现预测性维护。这其中的难点包括:

A) 很难获得关键参数的变化趋势。因为机器人正常作业运行状态下所能获取的模态激励度往往很低。为了获得这一信息,往往要求机器人执行一些特殊设计的轨迹。并且这些轨迹动作需要额外编程,同时也要求机器人周边有足够的空间。这在实际工业环境,很难保证这样的条件要求。

B) 关键参数变化因素复杂。因为机器人工作在工厂环境,另外工况也可能发生变化,所以关键参数大幅度变化并不能说明机器人就有机械问题/故障发生,如机械磨损,轴承保持架断裂,也可能是工厂环境温度的变化或机器人作业对象发生了变化。

6)支持机器人设计阶段

机器人的研发设计过程是多学科互相交叉影响的迭代过程,强调协同设计(co-design)理念. 运动学模型和动力学模型为机器人在技术规范和成本约束下的设计及性能优化提供了重要基础。机器人的设计和控制基于同一个机器人模型,这样可以在机器人样机制造之前,就可以分析机器人的控制性能以及评估机器人控制软件。

另外基于动力学模型特别支持了驱动链包含电机,减速机,驱动单元的开发或选型,我们知道关节动力单元占据了机器人的很大部分成本。从它的设计过程我们也能看出动力学模型的重要功用。机器人关节驱动链一般设计步骤:

a)根据设计要求中的机器人工作空间和负载,定型运动支链基本尺寸和材质选择;

b)根据刚体动力学模型计算,估算所需的关节力矩和功率大小;

c) 依据控制带宽要求和弹性动力学模型分析,设计机械结构尺寸保证足够的机械带宽。

为了使得关节驱动链选型不小也不过分的大(尽量做到最小化成本),充分发挥其性能,将关节驱动链的模型集成于机器人的多体动力学模型中(即形成连杆到关节到关节内部的动力学模型),这些模型实时运行在机器人控制器中,计算和施加机器人速度和加速度的动态限值(具体限值取决于机器人位形),保护关节受到过大的力和力矩负载。有了这种关节负载动态(而非静态)限值,其实总体上是可以提升机器人的平均运行速度和加速度,从而提升机器人效率。

总之,从上面我们可以看出动力学模型从机器人设计阶段就开始发挥重要作用。在机器人设计定型,运行阶段的高性能轨迹跟踪,负载识别,碰撞检测,以及预测性维护等方面发挥着重要角色。也许还有很多其他的功用,欢迎补充和交流。

接下来的文章里面会介绍具体的实施方法,请持续关注哦。

机器人动力学与控制_机器人动力学模型角色相关推荐

  1. 机器人动力学与控制_大负载协作机器人难关怎么攻克?3大技术细节解析!

    对传统机器人来说,大负载的机器人控制难度会更大,这极大影响了机器人的效率和稳定性. 其主要原因如下: (1)传统的机器人编码器安装在减速机输入侧,但是减速机多少都有背隙,随着臂展的变长,背隙造成末端点 ...

  2. 机器人动力学与控制_力控制与位置控制的区别

    1.背景介绍 目前已经广泛落地的力控制方案是在机械臂末端安装多轴力矩传感器,用以检测机械臂对外界环境施加的力反馈值,并配合适当的控制策略,已达到控制机械臂与环境的作用力. 这篇文章所要探讨的力控制(上 ...

  3. 《机器人动力学与控制》第九章——动力学 9.3 再看欧拉-拉格朗日运动方程

    文章目录 <机器人动力学与控制>第九章--动力学 9.3 再看欧拉-拉格朗日运动方程 9.3.0 回顾欧拉-拉格朗日方程法 9.3.1 方便计算的特殊形式 参考文献 <机器人动力学与 ...

  4. 《机器人动力学与控制》第五章——速度运动学之机械臂的雅各比矩阵 5.0 导言

    文章目录 <机器人动力学与控制>第五章--速度运动学之机械臂的雅各比矩阵 5.0 导言 参考文献 <机器人动力学与控制>第五章--速度运动学之机械臂的雅各比矩阵 5.0 导言 ...

  5. 【机器人算法】机器人动力学、运动学和基于动力学模型的仿真与控制

    文章目录 运动学 机器人运动学参数标定(DH参数标定) 运动学逆解 解析解 数值解 工作空间分析 可操纵性 轨迹规划 路径规划 静力学 动力学 动力学模型 动力学仿真 自由下落 遇到跳床 重力补偿 动 ...

  6. 机器人动力学与控制学习笔记(九)————基于模糊自适应增益调整的机器人滑模控制

    九.基于模糊自适应增益调整的机器人滑模控制 采用自适应模糊系统,可实现机器人滑模控制中切换增益的自适应逼近,从而消除滑模控制中的抖振.本文设计一类基于模糊自适应增益调整的机器人滑模控制设计方法. 9. ...

  7. 车辆动力学及控制_第一届国际轮胎动力学仿真技术峰会在长春举行

    9月2日上午,轮胎动力学协同创新联盟与汽车振动噪声与安全控制综合技术国家重点实验室联合主办的第一届国际轮胎动力学仿真技术峰会在长春正式启动.本次峰会以"平台融通.产业创新.精品输出" ...

  8. 安卓机器人做图软件_机器人管理与开发软件RoboStudio出安卓版本啦~

    为了解放用户双手 让用户可随时随地移动操作 实现对机器人更好的监测与控制 RoboStudio 安卓版,已经上线啦!Windows & Android版本 01.如何下载Android版Rob ...

  9. 机器人的弊议论文_机器人的利与弊议论文

    Holle!大家好!我是赫赫有名的吴博士,让我们乘坐时光机(是我自己发明的)穿越到987598670年.来看看我伟大的发明之一--智能机器人吧! 智能机器人物美价廉,它不但会干家务活,还有其他一些特. ...

  10. 机器人的弊议论文_机器人的利弊作文800字

    Holle!大家好!我是赫赫有名的吴博士,让我们乘坐时光机(是我自己发明的)穿越到987598670年.来看看我伟大的发明之一--智能机器人吧! 智能机器人物美价廉,它不但会干家务活,还有其他一些特. ...

最新文章

  1. Nature综述:多年冻土的微生物组
  2. 单例模式下的懒汉和饿汉模式
  3. Py之dominate:python的dominate库的简介、安装、使用方法之详细攻略
  4. CentOS7下Elasticsearch集群部署记录
  5. 计算机无法从硬盘启动怎么办,电脑不能从硬盘启动应该怎么解决
  6. linux 网络装机,如何搭建和配置PXE网络装机服务
  7. red5 + java+flex free download_Flex 4 +Red5 流媒体使用研究2——Flex4的VideoPlayer控件应用...
  8. PDFLib9以上版本的去水印办法
  9. 我用3天时间,整理了几十个项目的Python资料
  10. nyoj 题目172 小柯的图表
  11. 【ZYNQ】petalinux包含自定义的动态库
  12. dream_c梦想标准化语言评估,孩子语言发展落后,诊断治疗需“量体裁衣”
  13. pytorch框架--简单模型预测
  14. [转]SEO做关键词的十大分析方法
  15. 解决Ubuntu14.04不能打正确拼音--无法选择第二个拼音
  16. 数据中台架构与技术选型
  17. 【商城报错】-商品上架功能报错
  18. 【计算机图形学】壹 · 光栅图形学之直线段的扫描转换算法
  19. 图神经网络基础--图结构数据
  20. 云诊所管理系统 云诊所管理软件 诊所管理软件 诊所管理系统

热门文章

  1. 本地搭建mysql数据库
  2. DevOps落地实践:通讯行业系列:NTT COMWARE之Devaas
  3. 负一的n次方c语言,c语言 10 负次方
  4. 佳博标签打印机如何打印条码流水号
  5. el-select默认选中 显示的是id 不是汉字
  6. Java获取时间戳,System.currentTimeMillis() 和 System.nanoTime() 哪个更快?
  7. win10安装flash ax debuger
  8. 程序员:我终于知道post和get的区别
  9. pid c语言算法plc,三种比较简单pid控制算法公式
  10. 蔡勒公式与Python