机器人动力学(Basic Newton-Euler Mechanics)

文章目录

  • 前言
  • 重要坐标系
  • 刚体运动
    • 预备知识
    • 移动
    • 旋转
      • 惯性矩(通常平面刚片且是均质的,则也称为转动惯量)
  • 列写动力学方程

前言

为什么要考虑运动学?因为运动学的速度是一个理想化的一个量,让它为0,立马就能为0,然鹅现实中它不可能瞬间就变成0,他还需要制动。另外就是加速度的限制:使得车能在车轮不打滑或者车不会翻过来的情况下在一定时间内达到最大速度。
动力学 隐式表达:
g i ( q ¨ , q ˙ , q ) = 0 \displaystyle g_i({\ddot q},{\dot q},q) = 0 gi(q¨,q˙,q)=0
动力学 显示表达:
q ¨ = f ( q ˙ , q , u ) \displaystyle {\ddot q}= f({\dot q},q,u) q¨=f(q˙,q,u)
由于高阶导数计算比较困难,这里引入相空间来对其进行简化,类似于非线性规划中的相平面。

重要坐标系

  1. Inertial frame:固定的全局坐标系
  2. Translating frame:固定在运动体上的坐标系,原点在质心,但轴平行于Inertial frame
  3. Body frame:固定在运动体上的坐标系,质点在质心,轴随着质点运动会改变方向

刚体运动

预备知识

角动量:L=r X p(p为O点的动量,r是质点相对O点的位矢)
力矩:N=F X r(F为O点的力,r是质点相对O点的位矢),还等于dL/dt(L为角动量,角动量定理)

A ⊆ R 3 A\subseteq {\mathbb{R}}^3 AR3代表一个刚体. σ ( r ) {\sigma}(r) σ(r) 代表在 r ∈ A r \in A rA的一点的刚体密度, m {m} m A A A的总质量:
m = ∫ A σ ( r ) d r \displaystyle m = \int_A{\sigma}(r) dr m=Aσ(r)dr

d r = d r 1 d r 2 d r 3 dr = dr_1dr_2dr_3 dr=dr1dr2dr3 代表一个柱状的体积, p ∈ R 3 {p}\in {\mathbb{R}}^3 pR3 表示 A A A的质心, p = ( p 1 , p 2 , p 3 ) {p}= ({p}_1,{p}_2,{p}_3) p=(p1,p2,p3)

机器人动力学(Basic Newton-Euler Mechanics)_第1张图片
由于刚体的内部力相互抵消,外部边界的力的集合可以合成一个力F和力矩N作用在质点p:
机器人动力学(Basic Newton-Euler Mechanics)_第2张图片

移动

刚体不旋转值只移动:动量
在这里插入图片描述
由牛二定理:

在这里插入图片描述
可以得到六个状态转移方程:
在这里插入图片描述
在这里插入图片描述

旋转

旋转可以同移动进行解耦,所以现在只在 translating frame中考虑纯粹的旋转运动。E为角动量,则力矩为:
参考角动量定理
在这里插入图片描述
机器人动力学(Basic Newton-Euler Mechanics)_第3张图片
参考上面图13.11,旋转角速度:v是单位向量,表示旋转方向, θ \theta θ表示旋转角度
在这里插入图片描述
将此角速度转化成,yaw-pitch-roll形式表示的旋转角速度:
机器人动力学(Basic Newton-Euler Mechanics)_第4张图片

惯性矩(通常平面刚片且是均质的,则也称为转动惯量)

机器人动力学(Basic Newton-Euler Mechanics)_第5张图片
E是整个刚体的角动量
机器人动力学(Basic Newton-Euler Mechanics)_第6张图片
经过以下一系列操作,主要是点乘和叉乘之间的转换:
机器人动力学(Basic Newton-Euler Mechanics)_第7张图片
惯性矩阵3 X 3对称矩阵:
在这里插入图片描述
则刚体的角动量:
在这里插入图片描述
刚体所受到的力矩:
在这里插入图片描述
注意上面求得的惯性矩阵是在translating frame中考虑的,它会随着旋转q的变化而变化:
机器人动力学(Basic Newton-Euler Mechanics)_第8张图片
这里我们将惯性矩阵定义在body frame中,表示成I,则I与I(q)的关系(其中R是body frame到 translational frame的旋转矩阵。):
在这里插入图片描述
则刚体所受到的力矩简化为:
在这里插入图片描述
如果选择的body frame等于惯性主轴,那么惯性矩阵就简化为:
在这里插入图片描述

列写动力学方程

这里假设选择的body frame等于惯性主轴,求得角加速度方程:
机器人动力学(Basic Newton-Euler Mechanics)_第9张图片
结合移动那一节的三个方程,以及角速度和四元数(表示旋转角度)的关系,我们就得到了12个动力学方程:

机器人动力学(Basic Newton-Euler Mechanics)_第10张图片

你可能感兴趣的:(ROS机器人)