六自由度机器人牛顿-欧拉法动力学建模(自己学习用)
目录
一、理论知识
1、机器人正向运动学与逆向运动学
2、机器人动力学建模方法
3、推牛顿-欧拉法
(1)一些物理概念
(2)牛顿-欧拉法推导
二、算法实现
都是自己在建立模型过程中发现需要掌握的知识点,找的一些别人的讲解以及教学视频的内容。
一、理论知识
1、机器人正向运动学与逆向运动学
看到一个用公式表示各个机器人学部分的内涵:
- 轨迹规划: x=>˙x,¨x ,根据笛卡尔位置生成平滑的速度和加速度;
- 逆向运动学: x,˙x,¨x=J+=>q,˙q,¨q ,根据笛卡尔轨迹生成生成关节空间轨迹;
- 逆向动力学:τ=M(Θ)¨Θ+V(Θ,˙Θ)+G(Θ) , 根据关节运动状态生成关节驱动力矩;
- 正向动力学: Θ=∬¨Θ=∬τ−(V(Θ,˙Θ)+G(Θ)) ,根据驱动力矩生成机械臂运动状态;
- 正向运动学: q,˙q,¨q=>x,˙x,¨x, 根据关节运动状态生成关节驱动力矩;
正向动力学:已知机器人的关节驱动力矩和上一时刻的运动状态(角度和角速度),计算得到机器人下一时刻的运动加速度,再积分得到速度和角度;
逆向动力学: 已知机器人各个时刻的运动状态(加速度,速度和角度等),求解得到机器人的驱动力和力矩;
动力学类型 |
用途 | 已知 | 求解量 |
正向 | 数值仿真,半实物仿真 | 驱动力矩 | 运动状态 |
逆向 | 前馈控制,反馈控制,重力补偿,零部件校核 | 运动状态 | 驱动力矩 |
2、机器人动力学建模方法
主要有牛顿欧拉法、拉格朗日、多体系统传递矩阵法
动力学模型最终的方程表示如下:
3、推牛顿-欧拉法
(1)一些物理概念
惯性矩:是一个几何量,通常被用作描述截面抵抗弯曲的性质。惯性矩的国际单位为(m4)。即面积二次矩,也称面积惯性矩,而这个概念与质量惯性矩(即转动惯量)是不同概念。
惯性积:质量惯性积是刚体动力学中一个重要的质量几何性质。刚体中的质量微元 Δmi与这微元的两个直角坐标的乘积对刚体的总和。
转动惯量:转动惯量是刚体绕轴转动时惯性的量度,转动惯量与旋转轴的选取和刚体本身质量分布有关。
惯性张量:是表示刚体绕通过该点任一轴的转动惯量的大小,是二阶对称张量。 转动惯量 (Moment of Inertia)是表征刚体转动惯性大小的物理量,它与刚体的质量、质量相对于转轴的分布有关。另外选一些坐标系,惯性张量可以成为对角型。
平行移轴概念:由于实际应用中,质心位置必然不会和坐标系重合,所以需要用到平行移轴定理将以刚体质心为原点的坐标系平移到运动学坐标系
此处定义质心坐标系为{G},运动学坐标系为{O}
对于刚体质心坐标系{G}刚体惯性张量可以表示为:
质心{G}相对于{O}的位置为:( x , y , z )
则根据平行轴定理有对于{O}的惯性张量为:
(2)连杆间力和力矩传递
(3)连杆之间加速度传递
(4)牛顿-欧拉法推导
首先从连杆1到n递推计算各连杆的速度和加速度;再由牛顿欧拉公式计算每个连杆的惯性力和力矩;最后从连杆n到1递推计算各连杆内部相互作用的力和力矩。
牛顿方程:
欧拉方程:
1)向外递推连杆速度、加速度
2)向内递推计算力、力矩
二、算法实现
还是不放自己瞎写的程序了
六自由度机器人牛顿-欧拉法动力学建模(自己学习用)相关推荐
- 【Matlab 六自由度机器人】定义标准型及改进型D-H参数建立机器人模型(附MATLAB建模代码)
Matlab建立六自由度机器人模型 近期更新 前言 1.Matlab机器人工具箱 2.研究对象-六自由度机器人 正文 一.D-H参数(Denavit–Hartenberg parameters) 1. ...
- 六自由度机器人(机械臂)运动学建模及运动规划系列(五)——避障路径规划
在之前的内容中,我们对机器人的运动轨迹进行了规划,但是,这种规划方法的运动路径是根据简单的轨迹人为组合起来的,具有较大的任意性.在实际的复杂工作环境中,采用人工规划路径的方法,难以保证规划的效率和准确 ...
- 【Matlab 六自由度机器人】基于蒙特卡罗方法(Monte Carlo Method)构建机器人工作空间(附MATLAB建模仿真完整代码)
[Matlab 六自由度机器人]基于蒙特卡洛法构建工作空间 往期回顾 前言 正文 一.蒙特卡洛方法及机器人工作空间的概述 1. 蒙特卡洛法 2. 机器人工作空间 二.rand函数的应用 1. rand ...
- 三自由度机器人运动学matlab仿真实验报告,3自由度机器人的正运动学建模研究...
. 3 MATLAB构建机器人仿真模型 机器人学工具箱(Robotics Toolbox for MATLAB) 是MATLAB中专门用于机器人仿真的工具箱,在机器人建模.轨迹规划.控制.可视化方面使 ...
- 六自由度方程组 matlab,采用Matlab的六自由度机器人三维运动学仿真_李庆.pdf
采用Matlab的六自由度机器人三维运动学仿真_李庆 第 ( ) 3 卷 第 期 华侨大学学报 自然科学版 7 3 Vol.37 No.3 年 月 ( ) 2016 5 JournalofHua ia ...
- 【Matlab 六自由度机器人】关于机器人运动学反解的有关问题
[Matlab 六自由度机器人]关于机器人运动学反解的有关问题 近期更新 前言 正文 反解的三类问题 一.中间点在工作空间之外 二.在奇异点附近关节速度骤增 三.起始点和目标点有多重解 总结 参考资料 ...
- 【Matlab 六自由度机器人】系列文章汇总
[Matlab 六自由度机器人]系列文章汇总 前言 正文 ⧫[主线]\blacklozenge \fcolorbox{black}{aqua}{[主线]}⧫[主线] ⧫[补充说明]\blackloz ...
- matlab机器人轨迹规划仿真程序,基于MATLAB的六自由度机器人轨迹规划与仿真.pdf...
基于MATLAB的六自由度机器人轨迹规划与仿真 学兔兔 l 訇 似 基于MATLAB的六自由度机器人轨迹规划与仿真 Trajectory planning and simulation of six- ...
- 【Matlab 六自由度机器人】关于灵活工作空间与可达工作空间的理解(附MATLAB推导代码)
[Matlab 六自由度机器人]灵活工作空间与可达工作空间的解释 往期回顾 前言 正文 一.两种工作空间的定义及区别 1. 可达工作空间 2. 灵活工作空间 二.辅助理解工作空间的代码 1. 可达工作 ...
最新文章
- 时间和邮箱的正则表达式,获取当前时间函数
- B1059 C语言竞赛
- python -m spacy download en”究竟做了什么?(What does “python -m spacy download en” exactly do?
- 【技术人员访谈数学王子】塞德里克·维拉尼的多面人生
- 算法学习:后缀自动机
- 【Android 插件化】Hook 插件化框架 ( 合并 “插件包“ 与 “宿主“ 中的 Element[] dexElements | 设置合并后的 Element[] 数组 )
- 缓存框架OSCache部分源码分析
- redis数据持久化的两种方式
- android 查找字符在字符串的位置
- 单开双控_卧室或者楼梯灯怎么安装单联双控
- ICCV2021 2D和3D通用!新医疗影像自监督SOTA(代码已开源)
- JavaScript学习五
- Magic Odd Square 思维
- 微信全文搜索优化之路
- python课设带报告_20192423 2019-2020-2 《Python程序设计》实验三报告
- 这几个好用的简单流程图模板,你可不能错过
- Unity美术场景制作基础流程和注意事项梳理
- 欺骗的艺术——第二部分(11)
- unity3d--PlayerPrefs 游戏存档
- 火车票余票问题的算法解析