25/2/7 <机器人基础> 牛顿-欧拉递推公式,开闭环

news/2025/2/9 5:23:10 标签: 机器人

        牛顿-欧拉递推公式是用于计算刚体动力学中,刚体的角速度和角加速度的递推关系。这个公式是牛顿第二定律和欧拉旋转定理的结合,适用于描述刚体在空间中的旋转运动。

        对于一个刚体,设其在某时刻的角速度为 ω,角加速度为 α,刚体的转动惯量张量为 I,则牛顿-欧拉递推公式可以表示为:

其中,τ 是作用在刚体上的外力矩。

这个公式可以用于递推计算刚体在每个时间步长内的角速度和角加速度。具体来说,如果我们知道了刚体在某个时刻的角速度 ωn​ 和外力矩 τn​,以及刚体的转动惯量张量 I,那么我们可以通过这个公式计算出下一个时间步长内的角加速度 αn+1​,进而更新角速度 ωn+1​。

例题

我们来举一个简单的例子来说明如何使用牛顿-欧拉递推公式计算刚体的角速度和角加速度。

假设我们有一个刚体,其转动惯量张量 I 为对角矩阵,即:

其中,Ix​, Iy​, Iz​ 分别是刚体关于 x, y, z 轴的转动惯量。

假设在某个时刻 tn​,刚体的角速度 ωn​ 为:

并且在该时刻,作用在刚体上的外力矩 τn​ 为:

我们希望计算下一个时刻 tn+1​=tn​+Δt 的角速度 ωn+1​。

首先,我们使用牛顿-欧拉递推公式计算角加速度 αn+1​:

由于 I 是对角矩阵,我们可以简化这个公式为:

计算叉乘项:

代入原公式,我们得到

解这个方程组,我们可以得到 αn+1​:

最后,我们使用欧拉方法更新角速度 ωn+1​:

这样,我们就完成了从时刻 tn​ 到 tn+1​ 的角速度和角加速度的递推计算。

路径规划三次多项式插值

三次多项式插值是一种通过给定的四个点来构造一个三次多项式的方法,使得这个多项式通过这四个点。假设我们有四个点 (x0​,y0​), (x1​,y1​), (x2​,y2​), (x3​,y3​),我们希望找到一个三次多项式 P(x)=ax3+bx2+cx+d,使得 P(xi​)=yi​ 对于 i=0,1,2,3 成立。

步骤

  1. 建立方程组:根据插值条件,我们可以得到以下四个方程:

  1. 这是一个关于 a,b,c,d 的线性方程组。

  2. 求解方程组:我们可以使用各种方法求解这个线性方程组,例如高斯消元法、矩阵求逆等。求解得到 a,b,c,d 的值。

  3. 写出插值多项式:将求得的 a,b,c,d 代入 P(x)=ax3+bx2+cx+d,即得到所求的三次插值多项式。

开闭环

定义

  • 开环控制机器人按照预先设定的命令执行任务,但不会对执行过程中的状态进行反馈和调整。其输入不依赖于输出,即系统的输出对控制作用没有任何影响。

  • 闭环控制机器人通过传感器或其他检测设备获取执行任务过程中的状态信息,将这些信息反馈给控制系统,从而实现对机器人执行任务过程中的实时控制和调整。其输出会反馈给输入端从而影响输入。

特点

  • 开环控制

    • 优点:结构简单、成本低,稳定性好,适用于模型已知且不变的情况。

    • 缺点:无法感知执行任务的实际情况,无法自动调整行动,导致执行任务的成功率低,可靠性差。对干扰引起的误差不能自行修正,控制精度不够高。

  • 闭环控制

    • 优点:能够根据实际情况进行实时调整,提高了机器人执行任务的成功率和可靠性。抗干扰能力强,动态性能得到改善,系统响应速度、超调量和稳态误差等均可以通过闭环控制增益来改善。

    • 缺点:结构相对复杂,成本较高,且可能存在一定的延迟,导致系统的输出有一定的滞后。

应用

  • 开环控制:适用于一些简单的任务,如基本的运动控制或简单的搬运,在速度很重要而精确操作并不重要的情况下也会使用,例如在加工步骤完成之后将工具收缩回来的操作。

  • 闭环控制:在机器人应用中更为普遍,尤其是在一些高精度和复杂的应用场景中,如精密加工、医疗手术、自动驾驶等。


http://www.niftyadmin.cn/n/5845546.html

相关文章

详解状态模式

引言 水有固态、液态、气态三种状态,在不同条件下这三种状态可以相互转化。同样在软件设计中,有些对象也有不同的状态,不同状态的行为不同,状态模式就是用来处理这种情况的。 1.概念 状态模式(State Pattern):允许一个…

QT 加图标

1.准备一张图标文件 放在源文件目录下新建一个ICON文件夹,将ICO图标文件放进去 2.添加资源 右键项目->add New 3.错误处理 如果加载不出来,一般是ICO文件大小不对,可以设置为24*24试试,如果还不行,可以依次试试其…

Netty初学四 数据载体ByteBuf

一、ByteBuf的结构: 1.结构图: 从上图可以看出,该结构是一个字节容器,里面的数据分为三部分,第一部分是已经丢弃的字节,这部分的数据是无效的,第二部分是可读字节,这部分数据是该结构…

【学术投稿】第五届计算机网络安全与软件工程(CNSSE 2025)

重要信息 官网:www.cnsse.org 时间:2025年2月21-23日 地点:中国-青岛 简介 第五届计算机网络安全与软件工程(CNSSE 2025)将于2025年2月21-23日在中国-青岛举行。CNSSE 2025专注于计算机网络安全、软件工程、信号处…

初始数据结构☞复杂度与泛式

一.时间复杂度 定义: 算法的时间复杂度是一个数学函数,算法中的基本操作的执行次数,为算法的时间复杂度。 O渐进表示方法: 原因: 计算时间复杂度时,我们其实并不一定要计算精确的执行次数,而…

从Oracle 到帆软BI:打造高效数据可视化仪表盘

从Oracle 到帆软BI:打造高效数据可视化仪表盘 在现代数据驱动的环境中,企业需要通过高效的数据可视化来洞察业务趋势和做出决策。本案例将展示如何利用帆软BI 6.1的强大功能,轻松连接到Oracle数据库,实现数据集成,并创…

MR30分布式IO模块:驱动智能制造工厂的工业互联与高效控制新范式

在工业4.0与智能制造浪潮的推动下,传统制造业正经历着从“机械驱动”向“数据驱动”的深刻转型。作为工业数据连接领域的领军者,明达技术凭借其自主研发的MR30分布式IO模块,以创新的技术架构与卓越的性能表现,为全球制造企业构建了…

Scala语言的区块链

以Scala语言的区块链 随着数字货币和去中心化应用的兴起,区块链技术逐渐成为计算机科学与金融科技领域中的一颗耀眼明星。区块链以其去中心化、不可篡改、透明可信等特性,吸引了无数开发者与企业的关注。在众多编程语言中,Scala凭借其独特的…