Loading [MathJax]/jax/input/TeX/jax.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Robot-adams机器人动力学仿真

Robot-adams机器人动力学仿真

原创
作者头像
ZC_Robot机器人技术
修改于 2021-05-15 13:36:25
修改于 2021-05-15 13:36:25
8K9
举报
文章被收录于专栏:腾讯云IoT腾讯云IoT

机器人的动力学仿真软件有很多,在之前的文章中【Robot-走近机器人动力学建模与仿真】也有详细的分类介绍,在众多的机器人仿真软件中,Adams 是科学研究中关于动力学仿真求解最稳定的。这主要是由于adams 具有强大的动力学微分仿真求解器.本文旨在详细介绍adams在机器人研发领域内的应用。

adams的应用
adams的应用

1 动力学系统与求解

动力学系统一般设计到力、位置、速度和加速度,一般系统的动态过程可以由微分方程式表示

动力学系统的微分方程
动力学系统的微分方程

对于上述微分方程的求解问题,一般是属于动力学仿真的内核算法。微分仿真的求解是决定一个软件稳健性和口碑的关键。一般可以分为单步求解方法和多步求解方法。单步求解方法需要固定的步长,比如四阶龙格库塔方法,该算法在求解的过程中,每一步需要多次进行方程右边表达式的计算。但是在单步求解方案中,步长越小求解器越稳定且结果越精确,但是步长越小,计算量越大,导致计算负载增大。对于多步积分算法,其不需要在同一个周期内多次计算方程右边的表达式,其需要借助前K次求解结果启动算法。典型的算法包括Adams算法以及BDF算法。

adams 是美国MDI公司开发的著名虚拟样机分析软件。目前已经被大家在各行各业中广泛使用。其主要有UNIX版本和Windows版本,目前被大家熟知的是windows 版本。刚性多体系统的分析一般是运动学和自由空间动力学的分析,而目前市面上关于多刚体的运动学和动力学分析的开源代码库也较多,而Adams这类优秀的虚拟样机分析软件除了可以进行运动学和动力学分析之外,还包含了其他重要的模块:

(1)几何形体的计算机辅助设计技术

(2)有限元分析技术

(3)软件编程实现力和运动的模拟

(4)构件建模

(5)控制系统设计与分析

(6)优化分析

2 多体系统动力学

多体系统
多体系统

多体系统动力学某种程度上只是单体系统动力学的延申。简单的单体系统动力学可以采用牛顿-欧拉方给出力-加速度,力矩-转动角加速度之间的关系。而当系统的刚体数增加到一定数目后,牛顿-欧拉方程虽然仍可以求解其动力学,但是各个刚体之间的转动以及约束需要事先按照一定的规则定义,才能将相关力和加速度的信息带入到牛顿-欧拉方程中。多体系统的动力学需要涉及到各个刚体的连体坐标系、质心位置、转动惯量以及连杆矢量等动力学参数。动力学根据研究问题的角度可以分为动力学正问题、动力学逆问题以及动力学混合问题

动力学正问题

已知关节驱动力和力矩,求解关节运动状况

动力学逆问题

已知关节运动状况,求解关节驱动力和力矩

动力学混合问题

已知部分关节运动状况和部分驱动力和力矩,求解未知运动和力

动力学抽象模型
动力学抽象模型

对于实际的实验系统,例如汽车或者机器人,外部或者电机给与其激励,系统开始运动,此时根据特定的要求,汽车完成前进或者转弯动作。而对于实际系统的仿真,需要事先将系统抽象为多体系统的力学模型(三要素):物体、约束和力。再根据多体系统动力学建模原理,建立其相应的多体系统数学模型(不同算法建模过程不尽相同,但是最终结果一致),再根据相应的数值方法进行仿真分析。

多体动力学计算机实现
多体动力学计算机实现

需要指出的是,仿真虽然是在实际的物体基础上抽象出的数学模型,但是仿真的结果和过程需要贴近实际的物理过程,否则仿真没有意义。纯粹数学的仿真对于实际的指导作用较小。仿真旨在提高实物的设计与控制水平。

3.adams软件介绍

基本设置

adams 界面
adams 界面

adams 的界面菜单主要包括了物体-连接-驱动-力-单元-设计探索等部分。篇幅有限,关于adams基本设置的详细介绍可以参见超链接。软件包括三个最基本的模块,即adams/view, adams/solver, adams/postprocessor.

adams 仿真主要分为4步

  • 模型创建
  • 测试与验证模型
  • 细化模型与迭代
  • 优化设计

adams中典型的几个驱动关节如下所示

典型关节
典型关节

adams还可以建立柔性体进行刚柔耦合动力学仿真。

柔性体设置模块
柔性体设置模块
柔性体设置
柔性体设置

在 Flexible Body Name 栏中输入要创建的柔性体名称。 在 MNF 可选项中,可输入 MNF 或 MD DB 文件名。Damping Ratio栏中可设置阻尼比:1%为频率小于 100的模态衰减;10%为频率在 100~1000 之间的模态衰减;100%为频率大于 1000 的模态衰减。

Generalized Damping 设置使用阻尼衰减类型,方向可选择 Orientation(相对全局坐标系)、Along Axis、In Plane。FEM Translate 适用于使用 MSC Nastran 软件的用户.

模型导入

通过 Adams/Exchange 模块,用户可以将所有来源于产品数据交换库的标准格式表示的机构部件或系统的几何外形进行数据导入,从而实现 Adams 与 CATIA、IDEAS、UG、Pro/E、MDT、Inventor、Solidworks、Solidedge 等 CAD 软件之间的标准通用接口。标准格式包括 IGES、STEP、DWG、DXF 及 Parasolid 等,数据传入 Adams 软件时,能够保持该模型原有的精度。也可以通过 Adams_CAD_Tranlators 模块,直接导入和导出 CAD 几何模型原始文件(需要单独的 license),不需要通过中立格式文件,可直接读取 CAD 装配体文件到 Adams 中并生成运动部件,可以精确地定义系统几何模型。

Import

Export

CATIA V4

CATIA V4

CATIA V5

CATIA V5

IGES

IGES

Inventor

Inventor

ACIS

ACIS

Parasolid

Parasolid

Pro/E

SolidWorks

STEP

STEP

Unigraphics

VDA­FS

VDA­FS

数值积分

adams中的刚性数值积分器主要有: GSTIFF,WSTIFF和DBF三种。三种数值积分器的计算效率和稳定性也有一定的差异。

计算稳定性

GSTIFF < WSTIFF < DBF

计算效率

GSTIFF > WSTIFF > DBF

从上可以看出,数值积分器的计算稳定性和计算效率是矛盾的,计算效率高的GSTIFF积分器,相对来说其稳定性也是三种中最差的。系统默认的积分器是GSTIFF,当在系统默认求解器求解失败后,可以采用其他两种数值积分器进行仿真求解。

adams中的数值积分格式主要有三种,I3,SI2,SI1, 三种积分格式的具体对比如下表所示

I3

SI2

SI1

精度

位置精度高

位置、速度、加速度精度高

位置、速度、加速度、拉氏乘子精度高

稳定性

一般

求解速度

快速

一般

一般

高频问题

适合中低频

适合高频

适合高频

实际的数值积分器以及积分格式的选择需要根据具体的问题具体对待,没有统一的配置。一般的问题采用Adams默认设置即可以。

具体设置:

settings=>solver=>Dynamics=>integrator=>Gstiff

4. 仿真实例

4.1 机械手抓取仿真,机械手由两个电机驱动,电机带动三个手指实现开合等动作。由于三只手的特殊设计,其既可以抓取大负载的物体,也可以抓取小物件,自适应抓取能力较强。

4.2 机械臂轴插孔实验

4.3 机械系统仿真

4.4 上下楼梯机器人仿真

4.5 并联机器人仿真

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
9 条评论
热度
最新
写得很详细,后面的柔性连接部分后面会出案例吗?
写得很详细,后面的柔性连接部分后面会出案例吗?
11点赞举报
后面会持续更新,欢迎持续关注哈。
后面会持续更新,欢迎持续关注哈。
回复回复点赞举报
你好,请问有没有adams对双足机器人行走的仿真教程或者可以讲一下驱动行走关节的原理吗?
你好,请问有没有adams对双足机器人行走的仿真教程或者可以讲一下驱动行走关节的原理吗?
33点赞举报
adams主要负责机器人的动力学建模,具体控制的话简单的算法可以基于adams函数,复杂算法借助其他软件。基于双足的运动要么是基于力的驱动,要么是基于运动的驱动。即 torque或者motion.
adams主要负责机器人的动力学建模,具体控制的话简单的算法可以基于adams函数,复杂算法借助其他软件。基于双足的运动要么是基于力的驱动,要么是基于运动的驱动。即 torque或者motion.
回复回复点赞举报
请问有什么可以快速上手的资料推荐么?对Adams还不熟悉
请问有什么可以快速上手的资料推荐么?对Adams还不熟悉
回复回复点赞举报
查看全部3条回复
请问作者可以再介绍一下matlab联合仿真相关步骤介绍吗?
请问作者可以再介绍一下matlab联合仿真相关步骤介绍吗?
11点赞举报
联合仿真这个后期会加的
联合仿真这个后期会加的
回复回复点赞举报
文章在动力学仿真上写的比较详细,甚至是受益。
文章在动力学仿真上写的比较详细,甚至是受益。
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
Robot-走近机器人动力学建模与仿真
云机器人就是云计算与机器人学的结合。而机器人则是云机器人的主要终端,云可以为机器人提供数据监控以及分析服务,同时也可从远端遥操作机器人的动作。腾讯云社区为大家了解和使用腾讯云服务提供了优秀的平台。而对于机器人部分,下面给出关于机器人关键技术之一的动力学建模与仿真的介绍。
ZC_Robot机器人技术
2020/05/09
14.8K2
Robot-走近机器人动力学建模与仿真
机器人动力学:机械臂正向动力学与逆向动力学
正向动力学:已知机器人的关节驱动力矩和上一时刻的运动状态(角度和角速度),计算得到机器人下一时刻的运动加速度,再积分得到速度和角度;
ZC_Robot机器人技术
2020/10/16
23.2K1
机器人动力学:机械臂正向动力学与逆向动力学
组合体惯量法B:原理—机械臂动力学建模
对于多自由度机械臂, 为了研究机械臂的运动特性, 因此需要建立多自由度机械臂的半实物仿真系统以及全数值仿真系统, 而对其动力学的研究又是其中必不可少的环节之一。考虑到实时系统下, 计算机的运算速度以及数据通讯速度, 用于模拟机械臂运动的正向动力学需满足实时性、 快速性以及稳定性。 为此,有必要研究一种针对多自由度冗余机械臂的实时动力学用于模拟机械臂的实际运动情况。
ZC_Robot机器人技术
2020/09/23
4K2
组合体惯量法B:原理—机械臂动力学建模
【Dynamics】SimMechanics在机器人动力学建模中的应用
Matlab中有关于机械系统动力学仿真分析的软件SimMechanics,SimMechanics是基于Simulink基础上的工具箱模块,其可以通过图形化建模的方法建立机械系统的动力学,并且由于其是基于Simulink框架的动力学建模软件,因此可以通过与simulink的控制系统相关接口连接,从而达到仿真-控制一体化的分析。Matlab-Simulink-SimMechanics的架构对于机械系统的建模-仿真-控制具有重要的作用。
ZC_Robot机器人技术
2020/06/21
3.6K0
【Dynamics】SimMechanics在机器人动力学建模中的应用
机器人动力学建模:机械臂动力学
多体系统动力学形成了多种建模和分析的方法, 早期的动力学研究主要包括 Newton-Euler 矢量力学方法和基于 Lagrange 方程的分析力学方法。 这种方法对于解决自由度较少的简单刚体系统, 其方程数目比较少, 计算量也比较小, 比较容易, 但是, 对于复杂的刚体系统, 随着自由度的增加, 方程数目 会急剧增加, 计算量增大。 随着时代的发展, 计算机技术得到了突飞猛进的进步, 虽然可以利用计算机编程求解出动力学方程组, 但是, 对于求解下一时刻的关节角速度需要合适的数值积分方法, 而且需要编写程序, 虽然这种方法可以求解出方程的解, 但是, 由于这种编程方法不具有通用性, 针对每个具体问题, 都需要编程求解, 效率比较低, 因此, 如果能在动力学建模的同时就考虑其计算问题, 并且在建模过程中考虑其建模和求解的通用性, 就能较好的解决此问题。
ZC_Robot机器人技术
2020/10/15
8.8K1
机器人动力学建模:机械臂动力学
基于空间矢量的机器人动力学建模与对比分析
普通的矢量属于3D矢量,即每个3D矢量是由空间的三个标量表示,举例来说,空间的某个位置矢量是由三个XYZ轴的标量值得到,空间的力矢量是力在XYZ轴的标量值合成,力矩也是三个标量合成。而在6D 空间矢量则是分为运动学量以及动力学量,具体为
ZC_Robot机器人技术
2020/09/19
3.2K9
基于空间矢量的机器人动力学建模与对比分析
机器人运动学和动力学:机器人学究竟有什么不同
说到智能化设备,首先想到的是机器人与数控加工中心。至于二者,均是工业4.0时代的重要加工媒介和工具,是支撑工业智能化时代的重要组成设备。但是二者的具体区别到底在什么地方尼?
ZC_Robot机器人技术
2020/10/10
4K0
机器人运动学和动力学:机器人学究竟有什么不同
【Dynamics】机械臂动力学建模(牛顿-欧拉法)
(1)动力学用于机械臂的仿真,机械臂的动力学有助于进行机械臂完成特定任务比如目标捕获、操作、抓取以及分拣等操作;仿真可以得到机械臂在完成此类任务过程中的动态特性;
ZC_Robot机器人技术
2020/06/25
11.9K0
【Dynamics】机械臂动力学建模(牛顿-欧拉法)
自由漂浮机器人运动学与动力学建模:space robot工具箱
根据冗余空间机器人的拓扑形式,建立其运动学方程,进而可以得到各个部分之间的位置关系、速度关系以及加速度关系。基座的运动将会引起机械臂末端的位置和姿态的变化,由于空间机器人在自由漂浮状态下的动量守恒,任意时刻基座的动量和机械臂的动量可以表示成一阶微分形式,进而,基座的运动关系可以表示为机械臂的各个关节角度的表达式。
ZC_Robot机器人技术
2020/11/14
5.1K11
自由漂浮机器人运动学与动力学建模:space robot工具箱
Robot:七自由度机械臂动力学建模与控制研究(一)
冗余构型机械臂的动力学与控制存在着其特殊性。七自由机械臂的动力学算法一般计算量大,且其控制中存在“自运动”问题。针对上述问题,本文主要研究内容包括:基于铰接体算法的空间机械臂正向动力学,冗余机械臂位置控制,基于增强混合阻抗控制的空间冗余机械臂力控制研究。
ZC_Robot机器人技术
2021/01/21
5.1K3
Robot:七自由度机械臂动力学建模与控制研究(一)
柔性机器人动力学方程
机械臂的动力学在机械臂的控制中具有十分重要的意义,建立机械臂的动力学模型,是描述控制系统的依据,也是设计控制器的前提。机械臂动力学建模的常用方法是拉格朗日法和牛顿-欧拉法。采用牛顿-欧拉法建立机械臂动力学模型时,要计算每个部分加速度,然后消去内作用力,牛顿-欧拉法是解决动力学问题的力平衡方法。但是,当机械臂变得复杂,此方法的计算也将变得复杂。拉格朗日法依据的是能量平衡原理,不需要对内作用力进行求解。对于多自由度复杂度高的机械臂,拉格朗日法比牛顿-欧拉法的求解更适用。
ZC_Robot机器人技术
2021/03/07
4.9K6
柔性机器人动力学方程
自由漂浮机器人运动学和动力学建模
随着空间技术的不断发展和人类对空间探索的不断深入,空间机器人在完成诸如空间站的建造与维护等任务中发挥着重要的作用。
ZC_Robot机器人技术
2020/10/17
4.1K2
自由漂浮机器人运动学和动力学建模
机器人运动学和动力学:概念区分
机械臂是典型的多体系统,研究机器人操作能力,机械臂是典型的研究对象之一。关于机械臂的基本理论知识主要涉及到机器人的路径规划、轨迹规划、运动学以及动力学。机器人的相关概念具体如下所示:
ZC_Robot机器人技术
2020/10/04
8.1K1
机器人运动学和动力学:概念区分
Adams机器人仿真教程
本文主要介绍adams仿真过程中遇到的各种问题。由于adams是一款优秀的动力学仿真软件,其在机器人方面的应用,本文主要基于视频教学的方式给出具体的操作步骤。
ZC_Robot机器人技术
2020/10/29
4.7K0
Adams机器人仿真教程
四步重新认识冗余机器人的控制器设计
冗余机器人是一个相对的概念,并不是一个机器人自由度越多就是冗余机器人。当机器人执行任务的维度小于机器人本身的自由度时,可以认为机器人是冗余的。即有更多任务完成选择,机器人因而存在任务的零空间。最典型的冗余机器人比如七自由度机械臂,或者蛇形机器人等。冗余机器人的任务 ,其中 ,
ZC_Robot机器人技术
2020/09/20
6.1K5
四步重新认识冗余机器人的控制器设计
多体动力学模拟仿真系统软件Adams,Adams软件中文版下载安装教程
ADAMS软件使用交互式图形环境和零件库、约束库、力库,创建完全参数化的机械系统几何模型,其求解器采用多刚体系统动力学理论中的拉格朗日方程方法,建立系统动力学方程,对虚拟机械系统进行静力学、运动学和动力学分析,输出位移、速度、加速度和反作用力曲线。ADAMS软件的仿真可用于预测机械系统的性能、运动范围、碰撞检测、峰值载荷以及计算有限元的输入载荷等。
用户10436734
2023/04/01
9470
多体动力学模拟仿真系统软件Adams,Adams软件中文版下载安装教程
组合体惯量法A: matlab程序—机械臂动力学建模
机械臂为典型的多体系统,针对机械臂的动力学建模可以采用传统的多刚体系统建模原理,但是针对机械臂,由于其一般为串行链结构,针对其特殊性,可以采用有别于传统动力学建模原理的特殊方法。机械臂的实时动力学按照计算原则不同分为单处理器串行计算以及多处理器并行计算方法,本文研究的为单处理器串行计算的机械臂实时动力学。
ZC_Robot机器人技术
2020/09/22
4.3K0
组合体惯量法A: matlab程序—机械臂动力学建模
固定基座机器人与漂浮基座动力学建模异同点
本章将重点介绍空间矢量描述的空间机械臂动力学建模,其克服了传统的动力学建模其计算量较大,计算效率低的问题。且结合空间固定基座机械臂的正向动力学建模方法,分析动力学建模的效率、计算量以及稳定性问题。动力学建模的基本原理很多,实现方法也很多,动力学量的表示方法也不尽相同,因此针对不同的建模对象,不同的动力学建模任务,需要选择不同的建模方法。本章结合动力学建模方法分析了固定基座机器人动力学建模与漂浮基座机器人动力学建模的异同点。
ZC_Robot机器人技术
2020/10/18
4.5K4
固定基座机器人与漂浮基座动力学建模异同点
浅谈机器人关节空间与笛卡尔空间控制
对于机械臂系统最简单的控制策略即在机械臂运动速度不大时,可以忽略其离心力、科氏力影响以及各连杆的耦合,进而将机械臂视为解耦的线性系统,对其控制采用基于 个独立关节的控制,对每个关节施加PD控制。其控制率如下:
ZC_Robot机器人技术
2020/09/24
9.9K2
浅谈机器人关节空间与笛卡尔空间控制
柔性机械臂:动力学建模原理
刚性机械臂建模方法已经可以有效地求解出机械臂各部分之间的耦合情况,但是对于柔性机械臂的动力学建模其侧重点在于基于刚性机械臂建模方法的基础上如何有效的处理机械臂关节柔性以及臂杆柔性的问题。由于机械臂的截面相对于其长度而言很小,可以将柔性杆作为Euler-Bernouli梁,柔性机械臂可以视为一个具有无限自由度的连续系统。相对于刚性机械臂杆件之间的耦合,柔性机械臂还需要考虑关节的柔性以及臂杆弹性变形的耦合。因而,柔性机械臂的运动方程具有高度非线性。
ZC_Robot机器人技术
2020/10/03
4.4K0
柔性机械臂:动力学建模原理
推荐阅读
相关推荐
Robot-走近机器人动力学建模与仿真
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档