[足式机器人]Part4 南科大高等机器人控制课 Ch05 Instantaneous Velocity of Moving Frames
本文仅供学习使用
本文参考:
B站:CLEAR_LAB
笔者带更新-运动学
课程主讲教师:
Prof. Wei Zhang
南科大高等机器人控制课 Ch05 Instantaneous Velocity of Moving Frames
Given Frame trajectory
[
T
]
(
t
)
=
(
[
Q
]
(
t
)
,
R
?
p
(
t
)
)
\left[ T \right] \left( t \right) =\left( \left[ Q \right] \left( t \right) ,\vec{R}_p\left( t \right) \right)
[T](t)=([Q](t),Rp?(t)) wrt
{
O
}
\left\{ O \right\}
{O}
Question : What is the velocity (twist/spatial velocity) of frame at time
t
t
t
[
T
]
(
t
)
∈
R
4
×
4
\left[ T \right] \left( t \right) \in \mathbb{R} ^{4\times 4}
[T](t)∈R4×4 :
4
×
4
4\times 4
4×4 matrix
S
E
(
3
)
SE\left( 3 \right)
SE(3)
log
?
(
[
T
]
(
t
)
)
→
S
θ
\log \left( \left[ T \right] \left( t \right) \right) \rightarrow \mathcal{S} \theta
log([T](t))→Sθ : is
S
\mathcal{S}
S (unit) the velocity of
[
T
]
(
t
)
\left[ T \right] \left( t \right)
[T](t)? —— no
R
?
p
(
t
)
\vec{R}_p\left( t \right)
Rp?(t) : position vector ;
R
?
˙
p
(
t
)
\dot{\vec{R}}_p\left( t \right)
R˙p?(t) velocity vector;
S
θ
?
[
T
]
(
t
)
\mathcal{S} \theta \leftrightarrow \left[ T \right] \left( t \right)
Sθ?[T](t) : position coordination (what velocity?——
[
T
˙
]
(
t
)
\left[ \dot{T} \right] \left( t \right)
[T˙](t)?)
[
T
˙
]
(
t
)
∈
R
4
×
4
?
S
E
(
3
)
\left[ \dot{T} \right] \left( t \right) \in \mathbb{R} ^{4\times 4}\notin SE\left( 3 \right)
[T˙](t)∈R4×4∈/SE(3)
1.Instantanenous Velocity of Rotating Frames
{ A } \left\{ A \right\} {A} frame is rotating with orientation [ Q A ] ( t ) \left[ Q_A \right] \left( t \right) [QA?](t) and velocity ω ? A ( t ) \vec{\omega}_A\left( t \right) ωA?(t) at time t t t (Note: everything is wrt { O } \left\{ O \right\} {O} frame)
Let ω ^ θ = log ? ( [ Q A ] ( t ) ) \hat{\omega}\theta =\log \left( \left[ Q_A \right] \left( t \right) \right) ω^θ=log([QA?](t)) can be obtained from the reference frame (say { O } \left\{ O \right\} {O} frame) by rotating about ω ^ \hat{\omega} ω^ by θ \theta θ degree
- ω ^ θ \hat{\omega}\theta ω^θ only describes the current orientation of { A } \left\{ A \right\} {A} relative to { O } \left\{ O \right\} {O} , it does not contain info about how the frame is rotating at time t t t
What is the relation between ω ? A ( t ) \vec{\omega}_A\left( t \right) ωA?(t) and [ Q A ] ( t ) \left[ Q_A \right] \left( t \right) [QA?](t)
d d t [ Q A ] ( t ) = ω ? ~ A ( t ) [ Q A ] ( t ) ? ω ? ~ A ( t ) = [ Q ˙ A ] ( t ) [ Q A ] ? 1 ( t ) 1 \frac{\mathrm{d}}{\mathrm{d}t}\left[ Q_A \right] \left( t \right) =\tilde{\vec{\omega}}_A\left( t \right) \left[ Q_A \right] \left( t \right) \Rightarrow \tilde{\vec{\omega}}_A\left( t \right) =\left[ \dot{Q}_A \right] \left( t \right) \left[ Q_A \right] ^{-1}\left( t \right) 1 dtd?[QA?](t)=ω~A?(t)[QA?](t)?ω~A?(t)=[Q˙?A?](t)[QA?]?1(t)1
What is ω ? A A \vec{\omega}_{\mathrm{A}}^{A} ωAA??
ω ? A A = [ Q O A ] ω ? A O \vec{\omega}_{\mathrm{A}}^{A}=\left[ Q_{\mathrm{O}}^{A} \right] \vec{\omega}_{\mathrm{A}}^{O} ωAA?=[QOA?]ωAO?
velocity of A A A relative to { O } \left\{ O \right\} {O} , expressed in { A } \left\{ A \right\} {A}
ω ? ~ A A = [ Q O A ] ω ? A O ~ = [ Q O A ] ω ? ~ A O [ Q O A ] T = [ Q O A ] [ Q ˙ A O ] [ Q A O ] ? 1 [ Q O A ] T = [ Q O A ] [ Q ˙ A O ] = [ Q A O ] ? 1 [ Q ˙ A O ] \tilde{\vec{\omega}}_{\mathrm{A}}^{A}=\widetilde{\left[ Q_{\mathrm{O}}^{A} \right] \vec{\omega}_{\mathrm{A}}^{O}}=\left[ Q_{\mathrm{O}}^{A} \right] \tilde{\vec{\omega}}_{\mathrm{A}}^{O}\left[ Q_{\mathrm{O}}^{A} \right] ^{\mathrm{T}}=\left[ Q_{\mathrm{O}}^{A} \right] \left[ \dot{Q}_{\mathrm{A}}^{O} \right] \left[ Q_{\mathrm{A}}^{O} \right] ^{-1}\left[ Q_{\mathrm{O}}^{A} \right] ^{\mathrm{T}}=\left[ Q_{\mathrm{O}}^{A} \right] \left[ \dot{Q}_{\mathrm{A}}^{O} \right] =\left[ Q_{\mathrm{A}}^{O} \right] ^{-1}\left[ \dot{Q}_{\mathrm{A}}^{O} \right] ω~AA?=[QOA?]ωAO? ?=[QOA?]ω~AO?[QOA?]T=[QOA?][Q˙?AO?][QAO?]?1[QOA?]T=[QOA?][Q˙?AO?]=[QAO?]?1[Q˙?AO?]
2.Instantanenous Velocity of Moving Frames
{ A } \left\{ A \right\} {A} moving frame with configuration [ T A ] ( t ) \left[ T_A \right] \left( t \right) [TA?](t) at t ime t t t undergoes a rigid body motion with velocity V A ( t ) = ( ω ? , v ? ) \mathcal{V} _A\left( t \right) =\left( \vec{\omega},\vec{v} \right) VA?(t)=(ω,v) (Note: everything is wrt { O } \left\{ O \right\} {O} frame)
The exponential coordinate S ^ ( t ) θ ( t ) = log ? ( [ T A ] ( t ) ) \hat{\mathcal{S}}\left( t \right) \theta \left( t \right) =\log \left( \left[ T_A \right] \left( t \right) \right) S^(t)θ(t)=log([TA?](t)) only indicates the current configuration of { A } \left\{ A \right\} {A} , and does not tell us about how the frame is moving at time t t t
What is the relation between
V
A
(
t
)
\mathcal{V} _A\left( t \right)
VA?(t) and
[
T
A
]
(
t
)
\left[ T_A \right] \left( t \right)
[TA?](t) ?
d
d
t
[
T
A
]
(
t
)
=
[
V
A
]
(
t
)
[
T
A
]
(
t
)
?
[
V
A
]
(
t
)
=
[
T
˙
A
]
(
t
)
[
T
A
]
?
1
(
t
)
\frac{\mathrm{d}}{\mathrm{d}t}\left[ T_A \right] \left( t \right) =\left[ \mathcal{V} _A \right] \left( t \right) \left[ T_A \right] \left( t \right) \Rightarrow \left[ \mathcal{V} _A \right] \left( t \right) =\left[ \dot{T}_A \right] \left( t \right) \left[ T_A \right] ^{-1}\left( t \right)
dtd?[TA?](t)=[VA?](t)[TA?](t)?[VA?](t)=[T˙A?](t)[TA?]?1(t)
3.Review/Summary of Rigid Body Velocity & Operation
-
spatial velocity / twist V = [ ω ? v ? O ] \mathcal{V} =\left[ \begin{array}{c} \vec{\omega}\\ \vec{v}_{\mathrm{O}}\\ \end{array} \right] V=[ωvO??] , v ? O \vec{v}_{\mathrm{O}} vO? reference point O O O may/may not move with the body
ω ? \vec{\omega} ω : angular velocity
v ? O \vec{v}_{\mathrm{O}} vO? : velocity of the body-fixed partical currently coincides with O O O
Given V = [ ω ? v ? O ] \mathcal{V} =\left[ \begin{array}{c} \vec{\omega}\\ \vec{v}_{\mathrm{O}}\\ \end{array} \right] V=[ωvO??] , any body fixed point P P P , its velocity is v ? P = v ? O + ω ? × R ? O P \vec{v}_{\mathrm{P}}=\vec{v}_{\mathrm{O}}+\vec{\omega}\times \vec{R}_{\mathrm{OP}} vP?=vO?+ω×ROP? -
Twist in frames : Given frame { B } \left\{ B \right\} {B} , { O } \left\{ O \right\} {O} with relation
V O = [ ω ? O v ? O O ] , V B = [ ω ? B v ? O B ] \mathcal{V} ^O=\left[ \begin{array}{c} \vec{\omega}^O\\ \vec{v}_{\mathrm{O}}^{O}\\ \end{array} \right] ,\mathcal{V} ^B=\left[ \begin{array}{c} \vec{\omega}^B\\ \vec{v}_{\mathrm{O}}^{B}\\ \end{array} \right] VO=[ωOvOO??],VB=[ωBvOB??] —— V \mathcal{V} V is a twist of some rigid body
V O = [ X B O ] V B \mathcal{V} ^O=\left[ X_{\mathrm{B}}^{O} \right] \mathcal{V} ^B VO=[XBO?]VB —— change of coordinate for twist [ X B O ] ∈ R 6 × 6 \left[ X_{\mathrm{B}}^{O} \right] \in \mathbb{R} ^{6\times 6} [XBO?]∈R6×6
[ X B O ] ∈ R 6 × 6 [ X B O ] = [ [ Q B O ] 0 R ? ~ B O [ Q B O ] [ Q B O ] ] \left[ X_{\mathrm{B}}^{O} \right] \in \mathbb{R} ^{6\times 6}\left[ X_{\mathrm{B}}^{O} \right] =\left[ \begin{matrix} \left[ Q_{\mathrm{B}}^{O} \right]& 0\\ \tilde{\vec{R}}_{\mathrm{B}}^{O}\left[ Q_{\mathrm{B}}^{O} \right]& \left[ Q_{\mathrm{B}}^{O} \right]\\ \end{matrix} \right] [XBO?]∈R6×6[XBO?]=[[QBO?]R~BO?[QBO?]?0[QBO?]?]
For given [ T ] = ( [ Q ] , R ? ) ? [ X ] = [ A d T ] = [ [ Q ] 0 R ? ~ [ Q ] [ Q ] ] \left[ T \right] =\left( \left[ Q \right] ,\vec{R} \right) \Rightarrow \left[ X \right] =\left[ Ad_T \right] =\left[ \begin{matrix} \left[ Q \right]& 0\\ \tilde{\vec{R}}\left[ Q \right]& \left[ Q \right]\\ \end{matrix} \right] [T]=([Q],R)?[X]=[AdT?]=[[Q]R~[Q]?0[Q]?] -
screw axis : S = ( s ^ , R ? q , h ) ? [ ω ? v ? ] = [ s ^ h s ^ ? s ^ × R ? q ] \mathcal{S} =\left( \hat{s},\vec{R}_{\mathrm{q}},h \right) \leftrightarrow \left[ \begin{array}{c} \vec{\omega}\\ \vec{v}\\ \end{array} \right] =\left[ \begin{array}{c} \hat{s}\\ h\hat{s}-\hat{s}\times \vec{R}_{\mathrm{q}}\\ \end{array} \right] S=(s^,Rq?,h)?[ωv?]=[s^hs^?s^×Rq??]
Al rigid body motion can be "thought of " screw motion rotation & linear motion along the axis
we typically write V = S θ ˙ \mathcal{V} =\mathcal{S} \dot{\theta} V=Sθ˙ ( S \mathcal{S} S - ‘unit’ normalized twist) -
rotation operation / Exp coordinate (wrt { O } \left\{ O \right\} {O})
OED for rotation : R ? ˙ p = ω ? × R ? p = ω ? ~ R ? p ? R ? p ( t ) = e ω ? ~ t R ? p ( 0 ) , s o ( 3 ) = { ω ? ~ : ω ? ∈ R 3 } \dot{\vec{R}}_{\mathrm{p}}=\vec{\omega}\times \vec{R}_{\mathrm{p}}=\tilde{\vec{\omega}}\vec{R}_{\mathrm{p}}\Rightarrow \vec{R}_{\mathrm{p}}\left( t \right) =e^{\tilde{\vec{\omega}}t}\vec{R}_{\mathrm{p}}\left( 0 \right) ,so\left( 3 \right) =\left\{ \tilde{\vec{\omega}}:\vec{\omega}\in \mathbb{R} ^3 \right\} R˙p?=ω×Rp?=ω~Rp??Rp?(t)=eω~tRp?(0),so(3)={ω~:ω∈R3}
if ω ? = ω ^ \vec{\omega}=\hat{\omega} ω=ω^ , unit vector , t = θ t=\theta t=θ, ω ^ θ ? [ Q ] = e ω ? ~ θ ∈ S O ( 3 ) \hat{\omega}\theta \leftrightarrow \left[ Q \right] =e^{\tilde{\vec{\omega}}\theta}\in SO\left( 3 \right) ω^θ?[Q]=eω~θ∈SO(3), ω ^ θ \hat{\omega}\theta ω^θ os calld exponention cooedinate of [ Q ] \left[ Q \right] [Q] denoted log ? ( [ Q ] ) \log \left( \left[ Q \right] \right) log([Q])
R ? p ′ = e ω ? ~ θ R ? p \vec{R}_{\mathrm{p}^{\prime}}=e^{\tilde{\vec{\omega}}\theta}\vec{R}_{\mathrm{p}} Rp′?=eω~θRp?
Given a frame { A } \left\{ A \right\} {A}, [ Q A ] = [ x ^ A , y ^ A , z ^ A ] \left[ Q_A \right] =\left[ \hat{x}_A,\hat{y}_A,\hat{z}_A \right] [QA?]=[x^A?,y^?A?,z^A?] then
[ Q ] [ Q A ] = e ω ? ~ θ [ Q A ] \left[ Q \right] \left[ Q_A \right] =e^{\tilde{\vec{\omega}}\theta}\left[ Q_A \right] [Q][QA?]=eω~θ[QA?] : [ Q ] \left[ Q \right] [Q] action operation , means rotate [ Q A ] \left[ Q_A \right] [QA?] about ω ^ \hat{\omega} ω^ by θ \theta θ degree
Experssion of rotation operator [ Q ] \left[ Q \right] [Q] in { O } \left\{ O \right\} {O} and { B } \left\{ B \right\} {B} : [ Q ] \left[ Q \right] [Q] in { O } \left\{ O \right\} {O} ; [ Q B O ] ? 1 [ Q ] [ Q B O ] \left[ Q_{\mathrm{B}}^{O} \right] ^{-1}\left[ Q \right] \left[ Q_{\mathrm{B}}^{O} \right] [QBO?]?1[Q][QBO?] same rotation operator in { B } \left\{ B \right\} {B} -
Rigid body transformation and exp coordinate(wrt { O } \left\{ O \right\} {O})
ODE : R ? ˙ p = v ? + ω ? × R ? p ? [ R ? ˙ p 0 ] = [ ω ? ~ v ? 0 0 ] ∣ 4 × 4 [ R ? p 1 ] ? [ R ? ˙ p 0 ] = e [ V ] t [ R ? p 1 ] \dot{\vec{R}}_{\mathrm{p}}=\vec{v}+\vec{\omega}\times \vec{R}_{\mathrm{p}}\Rightarrow \left[ \begin{array}{c} \dot{\vec{R}}_{\mathrm{p}}\\ 0\\ \end{array} \right] =\left. \left[ \begin{matrix} \tilde{\vec{\omega}}& \vec{v}\\ 0& 0\\ \end{matrix} \right] \right|_{4\times 4}\left[ \begin{array}{c} \vec{R}_{\mathrm{p}}\\ 1\\ \end{array} \right] \Rightarrow \left[ \begin{array}{c} \dot{\vec{R}}_{\mathrm{p}}\\ 0\\ \end{array} \right] =e^{\left[ \mathcal{V} \right] t}\left[ \begin{array}{c} \vec{R}_{\mathrm{p}}\\ 1\\ \end{array} \right] R˙p?=v+ω×Rp??[R˙p?0?]=[ω~0?v0?] ?4×4?[Rp?1?]?[R˙p?0?]=e[V]t[Rp?1?] e [ V ] t e^{\left[ \mathcal{V} \right] t} e[V]t - matrix representation of V \mathcal{V} V, s e ( 3 ) = { [ V ] , V ∈ R 6 } se\left( 3 \right) =\left\{ \left[ \mathcal{V} \right] ,\mathcal{V} \in \mathbb{R} ^6 \right\} se(3)={[V],V∈R6}
S ^ θ \hat{\mathcal{S}}\theta S^θ is the exp coordinate of [ T ] \left[ T \right] [T]
[ R ? p ′ 1 ] = [ T ] [ R ? p 1 ] \left[ \begin{array}{c} \vec{R}_{\mathrm{p}^{\prime}}\\ 1\\ \end{array} \right] =\left[ T \right] \left[ \begin{array}{c} \vec{R}_{\mathrm{p}}\\ 1\\ \end{array} \right] [Rp′?1?]=[T][Rp?1?]
[ T ] [ T A ] \left[ T \right] \left[ T_A \right] [T][TA?] : rotate frame { A } \left\{ A \right\} {A} about screw axis S ^ \hat{\mathcal{S}} S^ by θ \theta θ degree -
rigid operation of screw axis
-
S ′ = [ A d T ] S \mathcal{S} ^{\prime}=\left[ Ad_T \right] \mathcal{S} S′=[AdT?]S means rotate about axis S \mathcal{S} S along S ^ \hat{\mathcal{S}} S^ by θ \theta θ degree
-
expression of [ T ] \left[ T \right] [T] in { B } \left\{ B \right\} {B}: [ T B ] ? 1 [ T ] [ T B ] \left[ T_{\mathrm{B}} \right] ^{-1}\left[ T \right] \left[ T_{\mathrm{B}} \right] [TB?]?1[T][TB?]
-
velocity of moving frame [ T ] ( t ) \left[ T \right] \left( t \right) [T](t) : [ V ] = [ T ˙ ] [ T ] ? 1 \left[ \mathcal{V} \right] =\left[ \dot{T} \right] \left[ T \right] ^{-1} [V]=[T˙][T]?1
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!