赞
踩
机器人动力学在机器人设计、控制以及碰撞检测中是不可或缺的。常见的动力学建模方法有拉格朗日方程、牛顿欧拉方程以及虚功原理。
拉格朗日方程以系统的能量为基础建立动力学模型,可以避免内部刚体之间出现的作用力,简化了建模过程,但其物理意义不明确,而且对于复杂系统,拉格朗日函数的微分运算将变得十分繁琐。
连杆的动能 = 移动动能 + 转动动能
K
=
1
2
m
v
c
T
v
c
+
1
2
ω
T
I
c
ω
c
K=\frac{1}{2}m\boldsymbol{v}_{c}^{T}\boldsymbol{v}_{c}+\frac{1}{2}\boldsymbol{\omega}^{T}\boldsymbol{I}_{c}\boldsymbol{\omega}_{c}
K=21mvcTvc+21ωTIcωc
连杆的势能 = 重力势能 + 零势能点
P
=
−
m
g
T
p
c
+
m
g
T
h
c
P=-m\boldsymbol{g}^{T}\boldsymbol{p}_{c}+m\boldsymbol{g}^{T}\boldsymbol{h}_{c}
P=−mgTpc+mgThc
L ( θ , θ ˙ ) = K ( θ , θ ˙ ) − P ( θ ) L(\boldsymbol{\theta},\boldsymbol{\dot\theta})=K(\boldsymbol{\theta},\boldsymbol{\dot\theta})-P(\boldsymbol{\theta}) L(θ,θ˙)=K(θ,θ˙)−P(θ)
d d t ∂ L ∂ θ ˙ − ∂ L ∂ θ = τ \frac{d}{dt}\frac{\partial{L}}{\partial{\boldsymbol{\dot{\theta}}}}-\frac{\partial{L}}{\partial{\boldsymbol{\theta}}}=\boldsymbol{\tau} dtd∂θ˙∂L−∂θ∂L=τ
牛顿方程描述了刚体平移所受的外力与刚体质心处质量和质心处加速度之间的关系;欧拉方程描述了刚体旋转所受的外力矩与角速度、角加速度和惯性张量之间的关系;因此,可以使用牛顿-欧拉方程建立刚体动力学方程。
r
A
=
r
A
B
+
A
R
B
⋅
B
r
B
\boldsymbol{r}_{A}=\boldsymbol{r}_{AB}+^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{r}_{B}
rA=rAB+ARB⋅BrB
等式两边同时对时间
t
t
t求导可得:
v
A
=
v
A
B
+
A
R
˙
B
⋅
B
r
B
+
A
R
B
⋅
B
v
B
\boldsymbol{v}_{A}=\boldsymbol{v}_{AB}+^{A}\dot{ \boldsymbol{R}}_{B} \cdot ^{B}\boldsymbol{r}_{B}+^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{v}_{B}
vA=vAB+AR˙B⋅BrB+ARB⋅BvB
根据导数和微分的定义可知:
A
R
˙
B
=
S
(
ω
)
A
R
B
=
[
0
−
ω
z
−
ω
y
ω
z
0
−
ω
x
−
ω
y
ω
x
0
]
^{A}\boldsymbol{\dot R}_{B}=\boldsymbol{S(\omega)}^{A}\boldsymbol{ R}_{B}=
由于坐标系
B
B
B和点
P
P
P位于同一个连杆,因此
B
r
B
^{B}\boldsymbol{r}_{B}
BrB为定值,所以
B
v
B
=
0
^{B}\boldsymbol{v}_{B}=0
BvB=0
综上可知:
v
A
=
v
A
B
+
S
(
ω
)
⋅
A
R
B
⋅
B
r
B
\boldsymbol{v}_{A}=\boldsymbol{v}_{AB}+\boldsymbol{S(\omega)} \cdot ^{A}\boldsymbol{ R}_{B} \cdot ^{B}\boldsymbol{r}_{B}
vA=vAB+S(ω)⋅ARB⋅BrB
即:
v
A
=
v
A
B
+
ω
×
(
A
R
B
⋅
B
r
B
)
\boldsymbol{v}_{A}=\boldsymbol{v}_{AB}+\boldsymbol{\omega} \times (^{A}\boldsymbol{ R}_{B} \cdot ^{B}\boldsymbol{r}_{B})
vA=vAB+ω×(ARB⋅BrB)
对上式求导可得:
a
A
=
a
A
B
+
β
×
(
A
R
B
⋅
B
r
B
)
+
ω
×
ω
×
(
A
R
B
⋅
B
r
B
)
+
a
B
\boldsymbol{a}_{A}=\boldsymbol{a}_{AB}+\boldsymbol{\beta} \times (^{A}\boldsymbol{ R}_{B} \cdot ^{B}\boldsymbol{r}_{B})+\boldsymbol{\omega} \times \boldsymbol{\omega} \times (^{A}\boldsymbol{ R}_{B} \cdot ^{B}\boldsymbol{r}_{B})+\boldsymbol{a}_{B}
aA=aAB+β×(ARB⋅BrB)+ω×ω×(ARB⋅BrB)+aB
A ω c = A ω B + A R B ⋅ B ω c ^{A}\boldsymbol{\omega}_{c}=^{A}\boldsymbol{\omega}_{B}+^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{\omega}_{c} Aωc=AωB+ARB⋅Bωc
等式两边同时对时间
t
t
t求导得:
A
β
c
=
A
β
B
+
A
R
˙
B
⋅
B
ω
c
+
A
R
B
⋅
B
β
c
^{A}\boldsymbol{\beta}_{c}=^{A}\boldsymbol{\beta}_{B}+^{A}\dot{\boldsymbol{R}}_{B} \cdot ^{B}\boldsymbol{\omega}_{c}+^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{\beta}_{c}
Aβc=AβB+AR˙B⋅Bωc+ARB⋅Bβc
即:
A
β
c
=
A
β
B
+
A
ω
B
×
(
A
R
B
⋅
B
ω
c
)
+
A
R
B
⋅
B
β
c
^{A}\boldsymbol{\beta}_{c}=^{A}\boldsymbol{\beta}_{B}+^{A}\boldsymbol{\omega}_{B} \times (^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{\omega}_{c})+^{A}\boldsymbol{R}_{B} \cdot ^{B}\boldsymbol{\beta}_{c}
Aβc=AβB+AωB×(ARB⋅Bωc)+ARB⋅Bβc
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。