机器人动力学
本主题详细介绍了刚体机器人动力学的不同元素、性质和方程。机器人动力学是作用在机器人上的力与机器人产生的运动之间的关系。在机器人系统工具箱™中,机械手动力学信息包含在一个rigidBodyTree
对象,该对象为运动学和动力学计算指定刚体、附着点和惯性参数。
请注意
若要使用动态对象函数,必须设置DataFormat
的属性rigidBodyTree
对象“行”
或“列”
.这些设置分别接受输入和返回输出作为行或列向量,用于相关的机器人计算,如机器人构型或关节扭矩。
动态属性
在处理机器人动力学时,请使用这些属性指定操作臂机器人的各个主体的信息rigidBody
对象:
质量
-刚体质量,单位为千克。CenterOfMass
-刚体的质心位置,指定为形式的矢量[x y z]
.这个矢量描述了刚体质心的位置,相对于身体的框架,单位是米。的centerOfMass
目标函数在计算机器人的质心时使用这些刚体属性值。惯性
-刚体的惯量,指定为形式的矢量[爱我爱我爱我]
.这个矢量相对于物体的框架,单位是千克平方米。惯性张量是一个正定矩阵的形式为:的前三个要素
惯性
矢量是转动惯量,它们是转动惯量张量的对角线元素。最后三个元素是惯性的乘积,它们是惯性张量的非对角线元素。
对于与整个机械手机器人模型相关的信息,请指定这些rigidBodyTree
对象属性:
重力
-机器人所经历的重力加速度,指定为[x y z]
以m/s为单位的向量2.默认情况下,没有重力加速度。DataFormat
-运动学和动力学函数的输入和输出数据格式,指定为“结构”
,“行”
,或“列”
.
动力学方程
机械手刚体动力学由以下方程控制:
也可写成:
地点:
-是基于当前机器人构型的关节空间质量矩阵。计算这个矩阵
massMatrix
对象的功能。是科里奥利项,乘以 计算速度积。计算速度积
velocityProduct
对象的功能。-是所有关节在指定重力下保持其位置所需的重力力矩和力
重力
.计算重力力矩使用gravityTorque
对象的功能。-为指定关节构型的几何雅可比矩阵。计算几何雅可比矩阵
geometricJacobian
对象的功能。-是施加在刚体上的外力的矩阵。来产生外力
externalForce
对象的功能。-是关节力矩和力直接作为矢量应用到每个关节。
-分别为关节构型、关节速度和关节加速度,作为单独的向量。对于转动关节,请指定弧度、弧度/秒和弧度/秒的值2,分别。对于移动关节,用米、米/秒和米/秒表示2.
要直接计算动态,请使用forwardDynamics
对象的功能。该函数计算上述输入的指定组合的关节加速度。
要实现某一组动作,请使用inverseDynamics
对象的功能。该函数计算实现指定配置所需的关节扭矩、速度、加速度和外力。
另请参阅
功能
forwardDynamics
|inverseDynamics
|externalForce
|geometricJacobian
|gravityTorque
|centerOfMass
|massMatrix
|velocityProduct