机器人的动力学——牛顿欧拉,拉格朗日,凯恩
机器人的动力学推导方法有很多,常用得有牛顿,拉格朗日,凯恩等方法,接下来,简单说说他们之间的使用。注:这里不考虑怎么来的,只说怎么应用。
参考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个部分,一部分是牛顿方程,一部分是欧拉方程。
同时,刚体的运动 可以描述成:质心的平动和绕质心转动的集合。利用牛顿方程描述平动,用欧拉方程描述转动。平动就是力,转动就是力矩。它们结合了牛顿第二定律(力与加速度的关系)和欧拉方程(力矩与角加速度的关系)。那么什么是平动和转动呢?
平动:质心平动是指物体作为一个整体在空间中的平移运动。比如:一个球在平面上滚动,如果忽略滚动摩擦,球的质心沿着一条直线运动,这就是质心平动,机械臂的末端执行器从一个点移动到另一个点,沿着直线或曲线运动,这就是平动。
转动:转动是指机器人末端执行器围绕某个轴进行的旋转运动。比如,一个球在平面上滚动,球的表面各点相对于球心旋转,这就是转动。机械臂的末端执行器从一个姿态旋转到另一个姿态,围绕某个轴旋转,这就是转动。

eg.(需要进行递推,比如先求1连杆的,在求2连杆的)


这个是常用的动力学方程通式。


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

拉格朗日方程:
比如想让某一个关节运动,那么就可以使用拉格朗日方程的方式求出关节的力矩。
动能包括:平动动能和转动动能
势能:就是常说的重力势能
向心力:向心力(Centripetal Force)是指物体在做圆周运动时,指向圆心的力。向心力是维持物体做圆周运动的必要条件,它使物体不断改变运动方向,但保持速度大小不变。向心力的方向始终指向圆心,与物体的运动方向垂直。
eg.





这里的话,其实很简单的,大部分是公式,就不一一打上公式了,而是用截图的方式进行替代了。
应用的话:可以在程序中加入一个前馈的式子,去控制电机,保证机器的运行。
注意:
还有一点提示一下:就是在手动推导的时候要注意一个点:比如sin(theta)对它进行再一次对时间求导等于啥?

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

eg.
考虑一个双连杆机械臂,每个连杆的质量分别为 m_1m1 和 m_2m2,长度分别为 l_1l1 和 l_2l2,惯性张量分别为 I_1I1 和 I_2I2。连杆的关节角度分别为 \theta_1θ1 和 \theta_2θ2。
首先的话,要求出质心的位置,速度和加速度一些基本的信息,即
之后需要进行对广义惯性力进行求解,广义惯性力包括平动惯性力和转动惯性力。
在力学中,“广义”(Generalized)一词通常指的是将物理量或方程从具体的坐标系或特定的物理量扩展到更一般的形式。广义坐标、广义速度、广义力等概念都是为了描述系统的运动状态和作用力,而不依赖于特定的坐标系或物理量。哎哟,换一句人话就是说,在机器人系统中不需要考虑坐标系在哪里,而是直接定义一个角度,速度,力,坐标等等,可以说是任意的(只要在正常建立的过程中有的),都是广义。

最终可以写成:
之后就可以求出广义力的关系了。
想具体了解的可以看一下:B站的刘国军老师视频,里面详细的推导了凯恩方程的使用(串并联)
Guojun_Liu投稿视频-Guojun_Liu视频分享-哔哩哔哩视频点击观看Guojun_Liu的全部投稿视频,在这里可以查看Guojun_Liu最新发布、最多播放和最多收藏的视频。
https://space.bilibili.com/509190321/video
番外:看了一下完整的机器人程序源码,给我的感悟对电机的感悟是一个,如果是以后在做diy的情况下,最好使用FOC算法的无刷电机,这个可以保证速度和位置的闭环,如果可以的话可以使用更高级的电机,伺服电机等。
相关文章:
机器人的动力学——牛顿欧拉,拉格朗日,凯恩
机器人的动力学推导方法有很多,常用得有牛顿,拉格朗日,凯恩等方法,接下来,简单说说他们之间的使用。注:这里不考虑怎么来的,只说怎么应用。 参考1:4-14动力学分析方法-牛顿—欧拉方…...
【AI写作】解释区块链技术的应用场景和优势
【AI写作】解释区块链技术的应用场景和优势 浅浅的玩一下这个 AI 写作,本内容全为 AI 生成,仅为 AI 观点,无作者本人的观点。 区块链技术是一种去中心化的分布式账本技术,具有以下应用场景和优势: 金融领域ÿ…...
IPsec-Vpn
网络括谱图 IPSec-VPN 配置思路 1 配置IP地址 FWA:IP地址的配置 [FW1000-A]interface GigabitEthernet 1/0/0 [FW1000-A-GigabitEthernet1/0/0]ip address 10.1.1.1 24 [FW1000-A]interface GigabitEthernet 1/0/2 [FW1000-A-GigabitEthernet1/0/2]ip address...
一日连发两款视频大模型,火山引擎杀疯了!
9月24日,字节跳动旗下火山引擎在深圳举办AI创新巡展,并首次对外发布豆包视频生成-PixelDance、豆包视频生成-Seaweed两款AI大模型,并公布了多项AI大模型的全新升级,以一种全新的姿态迎接AI时代的到来。 雷科技此次受邀参与巡展&a…...
JavaScript --数字Number的常用方法
toFixed(保留几位小数) <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthde…...
GIS开发常用的开源地图数据框架有哪些?
学完Web前端开发,还需要掌握哪些内容?本篇文章再给大家主要讲讲针对WebGIS开发的地图和可视化数据库。 Echarts ECharts是一个使用 JavaScript 实现的开源可视化库。它可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(…...
SPSS26统计分析笔记——2 描述统计
1 统计量 1.1 集中量数 (1)平均值:最常用的集中趋势统计指标,包括算术平均值、几何平均值和调和平均值等。 ①算术平均数:最常见的平均数,是所有数据的总和除以数据的个数。它能简单地反映数据的整体水平&…...
C++——输入一个字符串,把其中的字符按逆序输出。如输入LIGHT,输出THGIL。用string方法。
没注释的源代码 #include <iostream> #include <string.h> using namespace std; int main() { string a; cout<<"请输入字符串a:"; cin>>a; int k; ka.size(); for(int ik-1;i>0;i--) { cout<<a[i]; } return 0; }...
基于区块链的相亲交易系统源码解析
随着区块链技术的成熟与发展,其去中心化、不可篡改的特性逐渐被应用于各行各业。特别是在婚恋市场中,区块链技术的应用为相亲平台带来了新的可能性 。本文将探讨如何利用区块链技术构建一个透明、高效的相亲交易系统,并提供部分源码示例。 区…...
win11 wsl2安装ubuntu22最快捷方法
操作系统是win11,wsl版本是wsl2,wsl应该不用多介绍了,就是windows上的虚拟机,在wsl上可以很方便的运行Linux系统,性能棒棒的,而且wsl运行的系统和win11主机之间的文件移动是无缝的,就是两个系统…...
jekyll相关的技术点
jekyll相关的技术点 1. gem bundle jekyll 三者的关系gembundleJekyll 2. jekyll命令3. 注意事项 如果你用过github的Pages功能(现在在Action功能中),或者gitee中的Pages,那么对于jekyll你一定不陌生。今天研究部署了一下,供参考 1. gem bund…...
【Golang】Go语言中如何面向对象?
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
E2VPT: An Effective and Efficient Approach for Visual Prompt Tuning
论文汇总 存在的问题 1.以前的提示微调方法那样只关注修改输入,而应该明确地研究在微调过程中改进自注意机制的潜力,并探索参数效率的极限。 2.探索参数效率的极值来减少可调参数的数量? 解决办法 提示嵌入进行transformer中 提示剪枝 Token-wise …...
影刀RPA实战:网页爬虫之天猫商品数据
1.实战目标 1.1 实战目标 在电商行业,我们经常爬取各个平台的商品数据,通过收集和分析这些商品数据,企业可以了解市场趋势、消费者偏好和竞争对手的动态,从而制定更有效的市场策略。爬取商品数据对于企业在市场竞争中把握先机、…...
微信小程序注册流程及APPID获取(完整版图文教程)
文章目录 前言1. 注册微信小程序账号1.1微信小程序注册1.2 点击注册按钮,进入小程序注册步骤。1.3 填写邮箱、密码、验证码1.4 用户信息登记1.5 微信扫码认证后,回到微信公众平台点击确认提交1.6 进小程序后台,完成注册 2.完善小程序账号信息…...
分享课程:VUE数据可视化教程
在当今这个数据驱动的世界中,数据可视化已经成为了一种至关重要的工具,它帮助我们理解复杂的数据集,发现模式、趋势和异常。数据可视化不仅仅是将数字转换成图表,它是一种将数据转化为洞察力的艺术。 1.什么是数据可视化…...
Flink的反压机制:底层原理、产生原因、排查思路与解决方案
反压(Backpressure)是流处理框架(如 Apache Flink)中非常重要的概念。反压的产生和有效处理,直接影响整个流处理作业的稳定性和性能。本文将从 Flink 的底层原理、反压产生的原因、如何排查反压问题,以及如…...
Unity DOTS系列之Aspect核心机制分析
最近DOTS发布了正式的版本, 我们来分享一下DOTS里面Aspect机制,方便大家上手学习掌握Unity DOTS开发。 Aspect 机制概述 当我们使用ECS开发的时候,编写某个功能可能需要某个entity的一些组件,如果我们一个个组件的查询出来,可能…...
webpack 的打包target讲解 node环境打包下的文件存储造成不易察觉的坑点
背景 electron 主渲进程的打包,以及 preload 的打包,还有注入脚本的打包,这些东西 webpack 本身是自带的,这里主要讲一下 target: node 模式 代码 https://gitee.com/sen2020/webpack-demo/tree/feature%2Fnode-code-package/ n…...
JVM面试问题集
什么是运行时数据区? 什么是JVM? 了解过字节码文件的组成吗? 说一下运行时数据区 哪些区域会出现内存溢出,会有什么现象? JM在JDK6-8之间在内存区域上有什么不同 类的生命周期 常见的类加载器 什么是双亲委派机制 说明各个类加载器之间的关系 解释双亲委派机制 …...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
SQL慢可能是触发了ring buffer
简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...
无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...
