机器人动力学方程

机器人动力学方程是描述机器人力和运动之间的关系的方程。只描述力和运动的关系,不考虑产生运动的力和扭矩。

欧拉 - 拉格朗日方程

欧拉-拉格朗日方程(OL)描述了处于完整约束下,并且约束力满足虚功原理的机械系统的力和运动随时间的变化

有两种推导方法,先介绍使用牛顿第二定律的推导方法。

根据牛顿第二定律,某质点的运动方程是:

先对时间求导,再对y ˙求偏导,方程左侧可以写为:

其中K = 1 /2 m y ˙ 2 ,是动能。接着将重力表示为:

其中 P=mgy表示重力势能。

定义拉格朗日算子L,表示系统动能与势能之差:

并且有:

则初始的质点运动方程可化为:

即:

此方程被称为欧拉-拉格朗日方程。

推广到n自由度的系统,得到:

其中τ k 是与广义坐标q k相关的力。

动能与势能

欧拉-拉格朗日方程可以直接用来推导动力学方程,前提是我们能够以一组广义坐标来表示该系统的动能和势能。如果要让这能够得到实际应用,那么我们就必须能够针对一个n连杆机器人计算出他的动能和势能。接下来将推到刚性连杆机器人动能和势能的表达式。

动能表示

刚体的动能可表示为平移动能和关于质心的旋转动能之和:

Z表示物体的惯性张量,是一个3*3的对称矩阵。

,R是附体坐标系与惯性坐标系之间的姿态变换。

I 是附体坐标系中的惯性张量,仅取决于物体的形状和质量分布,与物体运动无关。


在这里插入图片描述

速度v 和角速度ω需要转置,因为要考虑多个维度的方向。连杆上任意一点的现速度和角速度可通过雅可比矩阵和关节速度(关节变量的导数)来表示:

机器人总动能可表示为:

用D(q)来表示机器人的惯性矩阵:

机器人惯性矩阵D(q)有如下特点:

1.只与机器人构型有关
2.对称且正定
3.动能总是非负的

势能表示

在刚体动力学情形下,势能总是来源于重力。假设物体质量集中在质心,计算第i ii个连杆的势能:

g是惯性坐标系中的重力向量,r c i 是连杆i 的质心坐标。机器人总势能为:

在m、g保持不变的情况下,机器人势能只与广义坐标r c i 有关。

运动方程

上面我们得到了如下结果:

系统动能是关于广义速度(坐标微分)的二次函数:

系统势能是关于广义坐标的函数,且与广义速度无关:

欧拉-拉格朗日算子为:

欧拉-拉格朗日方程为:

其中:

因此对于每个k=1,2,...n,欧拉-拉格朗日方程可以写成:

即:

定义Christoffel symbol:

定义广义重力:

最终得到欧拉-拉格朗日方程:

方程左侧三项分别为:

  1. 广义坐标的二阶导数:惯性项
  2. 广义坐标一阶导数的二次型:离心力项+哥氏力项
  3. 广义位置(0阶导数)重力项

方程可简写为:

推导平面2关节机器人的动力学模型

现在考虑下图中带有两个转动关节的平面机械臂。在这里插入图片描述

要使用刚刚得到的欧拉-拉格朗日方程,就要与关节位置和关节速度相关的三个量:

首先使用雅可比矩阵来计算动能,计算平移速度:

平移部分对应的动能为:

接下来考虑角速度项:

由于ω i 与每个关节坐标系的z轴对齐,旋转动能可以简单表示为 ,其中I i 是转动惯量,它的轴线穿过连杆i的质心且平行于z i  轴。因此,就广义坐标而言,整个系统的旋转动能为:

惯性矩阵:

计算得:

我们已经得到了惯性矩阵,接下来计算cijk:

接下来计算势能,机械臂的势能等于两个连杆势能之和。

之前的广义重力g k  可变为:

最后可以写出系统的动力学方程:

在这种情况下,原方程矩阵C ( q , q ˙ ) 由下式给出: