机器人的动力学——牛顿欧拉,拉格朗日,凯恩

机器人的动力学推导方法有很多,常用得有牛顿,拉格朗日,凯恩等方法,接下来,简单说说他们之间的使用。注:这里不考虑怎么来的,只说怎么应用。

参考1:4-14动力学分析方法-牛顿—欧拉方程_哔哩哔哩_bilibili4-14动力学分析方法-牛顿—欧拉方程, 视频播放量 8604、弹幕量 13、点赞数 55、投硬币枚数 28、收藏人数 92、转发人数 14, 视频作者 每一天都应不同, 作者简介 ROS1是DCS,ROS2是FCS,相关视频:机器人学 3.6 牛顿欧拉递推动力学算法,机器人动力学拉格朗日法详细推导(二连杆机械臂),机器人学 3.3 牛顿欧拉递推动力学算法的前置知识1,欧拉动力学方程的推导,【理论力学】第十二周 惯量主轴与欧拉动力学方程(1),机器人 牛顿欧拉递推 基础 速度分析1,机器人 动力学分析 牛顿欧拉递推法 基础 速度分析2,欧拉运动学方程的推导,4-3二自由度机器人雅克比矩阵计算示例,4-1机器人速度雅可比矩阵https://www.bilibili.com/video/BV1MP411z7Su/?spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=c0f0446e22649eeb5ab253cb77c744c7

首先了解一下动力学方程在实际应用中的作用,它是运动学的一个延展,同时它的出现让工程师知道了关节的力矩和关节的速度和角速度关系。那么知道了这个关系有什么用呢?

比如:性能的能耗,振动的分析,精准定位,运动轨迹优化等等,一个具体的实际例子,在工业机器人中,实现高速的点到点之间的移动,要做到平滑的运动,这时就需要考虑到各个关节之间的速度和加速度之间的关系,换一个角度,还可以进行对设备电机的选型和降低成本等。

牛顿欧拉:

牛顿欧拉,顾名思义是分为2个部分,一部分是牛顿方程,一部分是欧拉方程。

同时,刚体的运动 可以描述成:质心的平动和绕质心转动的集合。利用牛顿方程描述平动,用欧拉方程描述转动。平动就是力,转动就是力矩。它们结合了牛顿第二定律(力与加速度的关系)和欧拉方程(力矩与角加速度的关系)。那么什么是平动和转动呢?

平动:质心平动是指物体作为一个整体在空间中的平移运动。比如:一个球在平面上滚动,如果忽略滚动摩擦,球的质心沿着一条直线运动,这就是质心平动,机械臂的末端执行器从一个点移动到另一个点,沿着直线或曲线运动,这就是平动。

转动:转动是指机器人末端执行器围绕某个轴进行的旋转运动。比如,一个球在平面上滚动,球的表面各点相对于球心旋转,这就是转动。机械臂的末端执行器从一个姿态旋转到另一个姿态,围绕某个轴旋转,这就是转动。

914acde09f52432d94532543331778bf.png

954e303991944ed58afc7aed4e42af40.pngeg.(需要进行递推,比如先求1连杆的,在求2连杆的)768087aea34b4e1ca52cb80939e8c252.pngc621f830eed146e489cc06ce1668157e.png5e64f7ec7f074ac7984aab30cf94515b.png

819bff1613fc42909b681c5f5f8546e5.png 这个是常用的动力学方程通式。

0c4894575f4c463ba17195434c6a8041.png

b27b4a78863a4aa294c2dcc2677f32e9.png

拉格朗日方程:

 拉格朗日方程大大减少了推导的复杂性,不需要对关节等进行受力分析等操作,就可以进行计算和求出动力学方程。(针对有模型的情况下)

本质是:

1e9da4228dfe49349eeaae209eeaa5d4.png

拉格朗日方程:

ba953fc6320a48a0aae7b46aa763159a.png比如想让某一个关节运动,那么就可以使用拉格朗日方程的方式求出关节的力矩。35d66083a32240719a9db346bfc92752.png动能包括:平动动能和转动动能

9854909e9d2448278b2ffa3a069e07eb.png势能:就是常说的重力势能

9ee3c3298d2e4838987275d3b80d6421.png 向心力:向心力(Centripetal Force)是指物体在做圆周运动时,指向圆心的力。向心力是维持物体做圆周运动的必要条件,它使物体不断改变运动方向,但保持速度大小不变。向心力的方向始终指向圆心,与物体的运动方向垂直。

 eg.

34f9a19f1a644044a819e0ddf04e96d6.png88bc14d165d146ec9588b9b30fbbf0d9.png8c7a64e26b2b49dfa5936437639bfbd6.pnged3dee8bdf04488eb72e3364d33d2723.png

65ea5781f73040c5b2bcd9f087f8af4f.png

这里的话,其实很简单的,大部分是公式,就不一一打上公式了,而是用截图的方式进行替代了。

应用的话:可以在程序中加入一个前馈的式子,去控制电机,保证机器的运行。 

注意:328fbcb292f34579a63c00a90c3ca146.png

还有一点提示一下:就是在手动推导的时候要注意一个点:比如sin(theta)对它进行再一次对时间求导等于啥? 

1f094c1d3c814d70ab729fbd036771c7.png

对于凯恩方程来说:(不需要模型)

凯恩方程是一种基于矢量力学的方法,特别适用于处理复杂的多体系统,如机器人、航天器、车辆等。凯恩方程的优势在于它可以直接处理系统的速度和加速度,而不需要显式地计算动能和势能。0ef1479fc2ef4c8a91e790aa07617004.png b830e10ec7e048f9803dab5a7d55e2ad.png

eg.

考虑一个双连杆机械臂,每个连杆的质量分别为 m_1m1​ 和 m_2m2​,长度分别为 l_1l1​ 和 l_2l2​,惯性张量分别为 I_1I1​ 和 I_2I2​。连杆的关节角度分别为 \theta_1θ1​ 和 \theta_2θ2​。

首先的话,要求出质心的位置,速度和加速度一些基本的信息,即6f9f7058dcfc4b9d9e6c28e195999cb4.png 之后需要进行对广义惯性力进行求解,广义惯性力包括平动惯性力和转动惯性力。

在力学中,“广义”(Generalized)一词通常指的是将物理量或方程从具体的坐标系或特定的物理量扩展到更一般的形式。广义坐标、广义速度、广义力等概念都是为了描述系统的运动状态和作用力,而不依赖于特定的坐标系或物理量。哎哟,换一句人话就是说,在机器人系统中不需要考虑坐标系在哪里,而是直接定义一个角度,速度,力,坐标等等,可以说是任意的(只要在正常建立的过程中有的),都是广义。

148d13a08b1f470fb61fffee68579a3c.png

最终可以写成:01e890d643f64d1fa9948052408fc8e5.png 之后就可以求出广义力的关系了。f400bf7af8cc469fb3e104046daa63c5.png

想具体了解的可以看一下:B站的视频,里面详细的推导了凯恩方程的使用(串并联)

番外:看了一下完整的机器人程序源码,给我的感悟对电机的感悟是一个,如果是以后在做diy的情况下,最好使用FOC算法的无刷电机,这个可以保证速度和位置的闭环,如果可以的话可以使用更高级的电机,伺服电机等。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/144241.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

第J8周:Inception v1算法实战与解析

本文为365天深度学习训练营 中的学习记录博客原作者:K同学啊 任务: 1.了解并学习下图 a《卷积计算过程中》的卷积层运算量的计算过程(储备知识->卷积层运算量的计算) 2.了解并学习卷积层的并行结构与1x1卷积核部分内容&#xf…

基于STM32的光敏电阻检测及OLED显示仿真(库函数)

本专栏所有源资料都免费获取,无任何隐形消费。 注意事项:STM32仿真会存在各种各样BUG,且尽量按照同样仿真版本使用。本专栏所有的仿真都采用PROTEUS8.15。 本文已经配置好STM32F103C8T6系列,在PROTUES仿真里,32单片机一般只用一种型号,如需其他型号,可改名。 本次功能…

【C盘清理】Pycharm远程调试重度使用者C盘清理

文章目录 1 remote source 1 remote source 找到本地的这个路径C:\Users\verse\AppData\Local\JetBrains\PyCharm2022.3\remote_sources 这个文件夹是 PyCharm 在进行远程调试时使用的,它包含了远程服务器上的源代码副本。当你在 PyCharm 中设置远程调试并启动调试会…

如何测试和验证API的性能和稳定性?

在开发过程中,测试和验证API的性能和稳定性是确保软件质量的关键步骤。以下是一些有效的方法和最佳实践: 功能测试:首先,确保API的所有功能按预期工作。这包括对请求参数、方法、路径和预期响应的理解,以及对正常流程和…

飞机表面缺陷检测系统源码分享

飞机表面缺陷检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer…

R高级绘图 | 不用 Cytoscape 也能绘制精美的蛋白互作(PPI)网络图啦!| STRING 网站 + R 代码

在进行 PPI 网络图绘制时,我们通常会将 STRING 网站与 Cytoscape 软件结合使用。但是经常有小伙伴们苦恼,不太会用 Cytoscape 软件进行处理可咋整呐!之前我也吭哧吭哧学了点 Cytoscape,后来偶然的一个机会,我发现可以直…

python 识别省市、区县并组建三级信息数据库

一、网址: 全国行政区划信息查询平台 二、分析并搭建框架 检查网页源码: 检查网页源码可以发现: 所有省级信息全部在javaScript下的json中,会在页面加载时加载json数据,填充到页面的option中。 1、第一步&#xff1a…

MATLAB系列08:输入/输入函数

MATLAB系列08:输入/输入函数 8. 输入/输入函数8.1 函数textread8.2 关于load和save命令的进一步说明8.3 MATLAB文件过程简介8.4 文件的打开和关闭8.4.1 fopen函数8.4.2 fclose函数 8.5 二进制 I/O 函数8.5.1 fwrite 函数8.5.2 fread函数 8.6 格式化 I/O 函数8.6.1 f…

C语言 | Leetcode C语言题解之第414题第三大的数

题目&#xff1a; 题解&#xff1a; int cmp(const void *a, const void *b) {return *(int*)a < *(int*)b; }int thirdMax(int* nums, int numsSize){qsort(nums, numsSize, sizeof(nums[0]), cmp);int diff 0;for (int i 1; i < numsSize; i) {if (nums[i] ! nums[i…

(黑马点评) 五、探店达人系列功能实现

5.1 发布和查看探店笔记 5.1.1 发布探店笔记 这块代码黑马已经完成了&#xff0c;在发布探店笔记界面&#xff0c;有两块内容是需要上传的。一是笔记内容&#xff0c;二是笔记配图。其中笔记配图部分黑马使用的是上传到本地前端服务器上面的。我我觉得可以将图片文件发布在阿里…

【靶点Talk】免疫检查点争夺战:TIGIT能否超越PD-1?

曾经的TIGIT靶点顶着“下一个PD-1”的名号横空出世&#xff0c;三年的“征程”中TIGIT走过一次又一次的失败&#xff0c;然而面对质疑和压力仍有一批公司选择前行。今天给大家分享TIGIT靶点的相关内容&#xff0c;更多靶点科普视频请关注义翘神州B站和知乎官方账号。 TIGIT的“…

如何使用Java代码实现日期的比较以及如何在列表中按照日期进行排序

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 在Java编程中&#xff0c;经常需要处理日期和时间相关的操作。本文将向您展示如何使用Java代码实现日期的比较以及如何在列表中按照日期进行排序。将通过以下几个步骤来实现这个目标&#xff1a; 理解日期比较&…

【2025】基于微信小程序的网上点餐系统设计与实现、基于微信小程序的智能网上点餐系统、微信小程序点餐系统设计、智能点餐系统开发、微信小程序网上点餐平台设计

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

C语言深入理解指针(二)

目录 指针运算指针-整数指针-指针指针的关系运算 野指针野指针成因指针未初始化指针越界访问指针指向的空间释放 如何规避野指针指针初始化注意指针越界指针不使用时就用NULL避免返回局部变量的地址 assert断言指针的使用和传址调用传址调用例子&#xff08;strlen函数的实现&a…

Euro 2024 足球中的IMU技术突破

在体育技术领域&#xff0c;IMU&#xff08;惯性测量单元&#xff09;技术正以前所未有的方式重塑足球比赛。Adidas Fussballliebe Finale足球&#xff0c;作为首个在欧洲锦标赛中采用公司“连接球技术”的官方比赛用球&#xff0c;展示了IMU技术在现代足球中的应用。以下是这款…

gitlab/极狐-离线包下载地址

如果想要使用Gitlab/极狐进行数据的恢复&#xff0c;只能使用相同版本或者相近版本的安装包&#xff0c;因此有时候需要到它的官网上下载对应版本的安装包&#xff0c;以下是我收集到的对应地址的下载路径&#xff1a; Gitlab Gitlab离线库&#xff0c; https://packages.gitl…

美国站群服务器优化技巧解析

美国站群服务器&#xff0c;作为专为管理多个网站而设计的托管解决方案&#xff0c;其优化对于提升网站性能和用户体验至关重要。以下是一些关键的优化技巧&#xff1a; 首先&#xff0c;硬件配置是基础。选择高性能的CPU、大容量的内存以及高速的硬盘(如SSD)是提升服务器运算速…

使用电容式感应原理设计的4键触摸检测IC-CT8224C

CT8224C是一款使用电容式感应原理设计的触摸IC&#xff0c;此款IC内建稳压电路给触摸感测器使用&#xff0c;稳定的感应方式可以应用到各种不同电子类产品。面板介质可以是完全绝源的材料&#xff0c;专为取代传统的机械结构开关或普通按键而设计&#xff0c;提供4个触摸输入端…

Leetcode面试经典150题-130.被围绕的区域

给你一个 m x n 的矩阵 board &#xff0c;由若干字符 X 和 O 组成&#xff0c;捕获 所有 被围绕的区域&#xff1a; 连接&#xff1a;一个单元格与水平或垂直方向上相邻的单元格连接。区域&#xff1a;连接所有 O 的单元格来形成一个区域。围绕&#xff1a;如果您可以用 X 单…

深入探究 Flask 的应用和请求上下文

目标 读完本文后&#xff0c;您应该能够解释&#xff1a; 什么是上下文哪些数据同时存储在应用程序和请求上下文中在 Flask 中处理请求时&#xff0c;处理应用程序和请求上下文所需的步骤如何使用应用程序和请求上下文的代理如何在视图函数中使用current_app和代理request什么…