刚体动力学建模的目的是找到将系统输出(位置和方向)转换为输入(力和扭矩向量)的微分方程。Newton–Euler 方程给出受外力矢量
F
b
∈
R
3
F^{b} \in \mathbb{R}^3
Fb∈R3 和扭矩矢量
Γ
b
∈
R
3
\Gamma^{b} \in \mathbb{R}^3
Γb∈R3 的影响的质量为
m
∈
R
m \in \mathbb{R}
m∈R 的刚体和惯性矩阵
J
∈
R
3
×
3
J \in \mathbb{R}^{3 \times 3}
J∈R3×3 的运动方程,即
{
m
V
˙
+
Ω
×
m
V
=
F
b
,
J
Ω
˙
+
Ω
×
J
Ω
=
Γ
b
.
(1)
\begin{cases} m \dot{V} + \Omega \times m V & = F^{b}, \\ J \dot{\Omega} + \Omega \times J \Omega & = \Gamma^{b}. \end{cases} \tag{1}
{mV˙+Ω×mVJΩ˙+Ω×JΩ=Fb,=Γb.(1) 其中,
V
=
(
u
,
v
,
w
)
V = (u, v, w)
V=(u,v,w) 和
Ω
=
(
p
,
q
,
r
)
\Omega = (p, q, r)
Ω=(p,q,r) 分别是物体固定参考系中的线速度和角速度;
F
F
F 包含了重力、主推力等。该方程建立的坐标系为 body frame。
不失一般性地,使用欧拉角参数化,从 body frame 到惯性系的旋转矩阵为
R
=
R
ψ
R
θ
R
ϕ
=
[
cos
θ
cos
ψ
sin
ϕ
sin
θ
cos
ψ
−
cos
ϕ
sin
ψ
cos
ϕ
sin
θ
cos
ψ
+
sin
ϕ
sin
ψ
cos
θ
sin
ψ
sin
ϕ
sin
θ
sin
ψ
+
cos
ϕ
cos
ψ
cos
ϕ
sin
θ
sin
ψ
−
sin
ϕ
cos
ψ
−
sin
θ
sin
ϕ
cos
θ
cos
ϕ
cos
θ
]
,
\begin{aligned} R & = R_{\psi} R_{\theta} R_{\phi} \\ & = \begin{bmatrix} \cos \theta \cos \psi & \sin \phi \sin \theta \cos \psi - \cos \phi \sin \psi & \cos \phi \sin \theta \cos\psi + \sin \phi \sin \psi \\ \cos \theta \sin \psi & \sin \phi \sin \theta \sin \psi + \cos \phi \cos \psi & \cos \phi \sin \theta \sin \psi - \sin \phi \cos \psi \\ -\sin \theta & \sin \phi \cos \theta & \cos \phi \cos \theta \end{bmatrix}, \end{aligned}
R=RψRθRϕ=⎣⎡cosθcosψcosθsinψ−sinθsinϕsinθcosψ−cosϕsinψsinϕsinθsinψ+cosϕcosψsinϕcosθcosϕsinθcosψ+sinϕsinψcosϕsinθsinψ−sinϕcosψcosϕcosθ⎦⎤, 其中,
η
=
(
ϕ
,
θ
,
ψ
)
\eta = (\phi, \theta, \psi)
η=(ϕ,θ,ψ) 代表三个欧拉角的矢量。进而,可将重力与其他作用力分离,且平移动力学可表示为
ξ
˙
=
v
,
m
v
˙
=
R
F
b
−
m
g
e
3
i
.
\begin{aligned} \dot{\xi} & = v, \\ m \dot{v} & = R F^{b} - m g e_{3}^{i}. \end{aligned}
ξ˙mv˙=v,=RFb−mge3i. 此处,
ξ
\xi
ξ 和
v
v
v 表示位置与速度。
在相关文献中,除去基于欧拉角表示旋转动力学外,基于四元数也是一种常用方法。
首先建立角速度
Ω
\Omega
Ω 与欧拉角
η
\eta
η 的映射关系,即
η
˙
=
Φ
(
η
)
Ω
,
(2)
\dot{\eta} = \Phi(\eta) \Omega, \tag{2}
η˙=Φ(η)Ω,(2) 其中欧拉矩阵
Φ
(
η
)
=
[
1
sin
ϕ
tan
θ
cos
ϕ
tan
θ
0
cos
ϕ
−
sin
θ
0
sin
ϕ
sec
θ
cos
ϕ
sec
θ
]
.
\Phi(\eta) = \begin{bmatrix} 1 & \sin \phi \tan \theta & \cos \phi \tan \theta \\ 0 & \cos \phi & - \sin \theta \\ 0 & \sin \phi \sec \theta & \cos \phi \sec \theta \end{bmatrix}.
Φ(η)=⎣⎡100sinϕtanθcosϕsinϕsecθcosϕtanθ−sinθcosϕsecθ⎦⎤. 对 (2) 中的时间进行微分,结合 (1) 可得
η
¨
=
Φ
˙
Ω
=
Φ
˙
Ψ
η
˙
−
Φ
J
−
1
s
k
(
Ω
)
J
Ω
+
Φ
J
−
1
Γ
b
,
(3)
\ddot{\eta} = \dot{\Phi} \Omega = \dot{\Phi} \Psi \dot{\eta} - \Phi J^{-1} {\rm sk}(\Omega) J \Omega + \Phi J^{-1} \Gamma^{b}, \tag{3}
η¨=Φ˙Ω=Φ˙Ψη˙−ΦJ−1sk(Ω)JΩ+ΦJ−1Γb,(3) 此处的算子
s
k
:
R
3
→
R
3
×
3
{\rm sk} : \mathbb{R}^{3} \to \mathbb{R}^{3 \times 3}
sk:R3→R3×3,且 $
s
k
(
x
)
{\rm sk}(x)
sk(x) 是一个与向量积相关的斜对称矩阵,即
s
k
(
x
)
y
≜
x
×
y
.
{\rm sk}(x) y \triangleq x \times y.
sk(x)y≜x×y.
在 (3) 两侧同乘以
M
(
η
)
=
Ψ
(
η
)
T
J
Ψ
(
η
)
M(\eta) = \Psi(\eta)^{\rm T} J \Psi(\eta)
M(η)=Ψ(η)TJΨ(η),可得
M
(
η
)
η
¨
+
C
(
η
,
η
˙
)
η
˙
=
Ψ
(
η
)
Γ
b
,
M(\eta) \ddot{\eta} + C(\eta, \dot{\eta}) \dot{\eta} = \Psi(\eta) \Gamma^{b},
M(η)η¨+C(η,η˙)η˙=Ψ(η)Γb, 其中 Coriolis 项
C
(
η
,
η
˙
)
=
−
Ψ
(
η
)
T
J
Ψ
(
η
˙
)
+
Ψ
(
η
)
T
s
k
(
Ψ
(
η
)
η
˙
)
J
Ψ
(
η
)
C(\eta, \dot{\eta}) = - \Psi(\eta)^{\rm T} J \Psi(\dot{\eta}) + \Psi(\eta)^{\rm T} {\rm sk}(\Psi(\eta)\dot{\eta})J \Psi(\eta)
C(η,η˙)=−Ψ(η)TJΨ(η˙)+Ψ(η)Tsk(Ψ(η)η˙)JΨ(η).
因此,用于飞行控制设计的 RUAV 非线性模型为
{
m
ξ
¨
=
R
F
b
−
m
g
e
3
i
,
M
(
η
)
η
¨
+
C
(
η
,
η
˙
)
η
˙
=
Ψ
(
η
)
T
Γ
b
.
(4)
\begin{cases} m \ddot{\xi} = R F^{b} - m g e_{3}^{i}, \\ M(\eta) \ddot{\eta} + C(\eta, \dot{\eta}) \dot{\eta} = \Psi(\eta)^{\rm T} \Gamma^{b}. \end{cases} \tag{4}
{mξ¨=RFb−mge3i,M(η)η¨+C(η,η˙)η˙=Ψ(η)TΓb.(4)
空气动力学力与力矩 (Aerodynamics Forces and Torques)
具体而言,本部分给出 (4) 中的
F
b
F^{b}
Fb 和
Γ
b
\Gamma^{b}
Γb.
大多数垂直起降飞行器都是欠驱动机械系统,具有六个自由度和四个主控制输入。事实上,许多小型旋翼机无人机的特点是有三个主要控制力矩
τ
=
(
τ
ϕ
,
τ
θ
,
τ
ψ
)
T
\tau = (\tau_{\phi}, \tau_{\theta}, \tau_{\psi})^{\rm T}
τ=(τϕ,τθ,τψ)T 和一个主控制力
F
b
=
(
0
,
0
,
u
)
T
F{b} = (0, 0, u)^{\rm T}
Fb=(0,0,u)T。假设忽略由控制输入耦合和其他小的力和力矩(如气动效应、转子动力学、陀螺效应等)。
假设螺旋桨推力和扭矩与转子角速度
ω
\omega
ω 的平方成正比,产生力和控制力矩的代数模型可以写成
[
u
τ
ϕ
τ
θ
τ
ψ
]
=
[
ρ
ρ
ρ
ρ
0
−
l
ρ
0
−
l
ρ
−
l
ρ
0
l
ρ
0
κ
−
κ
κ
−
κ
]
[
ω
1
2
ω
2
2
ω
3
2
ω
4
2
]
\begin{bmatrix} u \\ \tau_{\phi} \\ \tau_{\theta} \\ \tau_{\psi} \end{bmatrix} = \begin{bmatrix} \rho & \rho & \rho & \rho \\ 0 & - l \rho & 0 & - l \rho \\ -l \rho & 0 & l \rho & 0 \\ \kappa & - \kappa & \kappa & - \kappa \end{bmatrix} \begin{bmatrix} \omega_{1}^{2} \\ \omega_{2}^{2} \\ \omega_{3}^{2} \\ \omega_{4}^{2} \end{bmatrix}
⎣⎢⎢⎡uτϕτθτψ⎦⎥⎥⎤=⎣⎢⎢⎡ρ0−lρκρ−lρ0−κρ0lρκρ−lρ0−κ⎦⎥⎥⎤⎣⎢⎢⎡ω12ω22ω32ω42⎦⎥⎥⎤ 进而 (4) 可以写为
{
m
ξ
¨
=
u
R
e
3
i
−
m
g
e
3
i
,
M
(
η
)
η
¨
+
C
(
η
,
η
˙
)
η
˙
=
Ψ
(
η
)
T
τ
.
(5)
\begin{cases} m \ddot{\xi} = u R e_{3}^{i} - m g e_{3}^{i}, \\ M(\eta) \ddot{\eta} + C(\eta, \dot{\eta}) \dot{\eta} = \Psi(\eta)^{\rm T} \tau. \end{cases} \tag{5}
{mξ¨=uRe3i−mge3i,M(η)η¨+C(η,η˙)η˙=Ψ(η)Tτ.(5)
非线性分层飞行控制器的设计与稳定性
目标是设计一个在实践和理论上都表现良好的 3D 飞行控制器。事实上,控制系统需要易于实施和调整,同时保证良好的飞行性能。此外,分析闭环系统的稳定性也很重要。为了实现这一目标,利用旋翼机无人机模型的结构特性,将旋翼机模型分为两个相互连接的子系统。具有快速动力学的内环执行姿态跟踪并产生所需扭矩。具有慢动力学的外环用于产生推力和参考角,以遵循指令的平动轨迹,并证明了完全连通系统的渐近稳定性。
通过变量替换
τ
=
J
Ψ
(
η
)
τ
~
+
Ψ
−
1
C
(
η
,
η
˙
)
η
˙
,
\tau = J \Psi(\eta) \tilde{\tau} + \Psi^{- 1} C(\eta, \dot{\eta}) \dot{\eta},
τ=JΨ(η)τ~+Ψ−1C(η,η˙)η˙, 结合
R
R
R 的表达式可将 (5) 转化为
{
x
¨
=
1
m
u
(
cos
ϕ
sin
θ
cos
ψ
+
sin
ϕ
sin
ψ
)
,
y
¨
=
1
m
u
(
cos
ϕ
sin
θ
sin
ψ
−
sin
ϕ
cos
ψ
)
,
z
¨
=
1
m
u
cos
ϕ
cos
θ
−
g
,
ϕ
¨
=
τ
~
ϕ
,
θ
¨
=
τ
~
θ
,
ψ
¨
=
τ
~
ψ
.
(6)
\begin{cases} \ddot{x} = \frac{1}{m} u \left(\cos \phi \sin \theta \cos \psi + \sin \phi \sin \psi\right), \\ \ddot{y} = \frac{1}{m} u \left(\cos \phi \sin \theta \sin \psi - \sin \phi \cos \psi\right), \\ \ddot{z} = \frac{1}{m} u \cos \phi \cos \theta - g, \\ \ddot{\phi} = \tilde{\tau}_{\phi}, \\ \ddot{\theta} = \tilde{\tau}_{\theta}, \\ \ddot{\psi} = \tilde{\tau}_{\psi}. \end{cases} \tag{6}
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎧x¨=m1u(cosϕsinθcosψ+sinϕsinψ),y¨=m1u(cosϕsinθsinψ−sinϕcosψ),z¨=m1ucosϕcosθ−g,ϕ¨=τ~ϕ,θ¨=τ~θ,ψ¨=τ~ψ.(6) 基于上式,将系统转换为两个级联子系统。
首先定义一个虚拟控制向量
μ
∈
R
3
\mu \in \mathbb{R}^{3}
μ∈R3:
μ
=
f
(
u
,
ϕ
d
,
θ
d
,
ψ
s
)
=
1
m
u
R
(
ϕ
d
,
θ
d
,
ψ
s
)
e
3
i
−
g
e
3
i
.
\mu = f(u, \phi_{d}, \theta_{d}, \psi_{s}) = \frac{1}{m} u R(\phi_{d}, \theta_{d}, \psi_{s}) e_{3}^{i} - g e_{3}^{i}.
μ=f(u,ϕd,θd,ψs)=m1uR(ϕd,θd,ψs)e3i−ge3i. 此处,
f
:
R
3
→
R
3
f: \mathbb{R}^{3} \to \mathbb{R}^{3}
f:R3→R3 是一个连续可逆函数。进一步地,控制向量的分量给定为
{
μ
x
=
1
m
u
(
cos
ϕ
d
sin
θ
d
cos
ψ
d
+
sin
ϕ
d
sin
ψ
d
)
,
μ
y
=
1
m
u
(
cos
ϕ
d
sin
θ
d
sin
ψ
d
−
sin
ϕ
d
cos
ψ
d
)
,
μ
z
=
1
m
u
cos
ϕ
d
cos
θ
d
−
g
.
\begin{cases} \mu_{x} = \frac{1}{m} u \left(\cos \phi_{d} \sin \theta_{d} \cos \psi_{d} + \sin \phi_{d} \sin \psi_{d}\right), \\ \mu_{y} = \frac{1}{m} u \left(\cos \phi_{d} \sin \theta_{d} \sin \psi_{d} - \sin \phi_{d} \cos \psi_{d}\right), \\ \mu_{z} = \frac{1}{m} u \cos \phi_{d} \cos \theta_{d} - g. \end{cases}
⎩⎪⎨⎪⎧μx=m1u(cosϕdsinθdcosψd+sinϕdsinψd),μy=m1u(cosϕdsinθdsinψd−sinϕdcosψd),μz=m1ucosϕdcosθd−g. 该分量用于跟踪某些参考轨迹。
上述控制输入可由外环控制器计算得出
(
u
,
ϕ
d
,
θ
d
)
=
f
−
1
(
μ
x
,
μ
y
,
μ
z
)
(u, \phi_{d}, \theta_{d}) = f^{- 1} (\mu_{x}, \mu_{y}, \mu_{z})
(u,ϕd,θd)=f−1(μx,μy,μz),即
{
u
=
m
μ
x
2
+
μ
y
2
+
(
μ
z
+
g
)
2
,
ϕ
d
=
sin
−
1
(
m
μ
x
sin
ψ
d
−
μ
y
cos
ψ
d
u
)
,
θ
d
=
tan
−
1
(
μ
x
cos
ψ
d
+
μ
y
sin
ψ
d
μ
z
+
g
)
.
\begin{cases} u = m \sqrt{\mu_{x}^{2} + \mu_{y}^{2} + (\mu_{z} + g)^{2}}, \\ \phi_{d} = \sin^{-1}\left(m \frac{\mu_{x} \sin \psi_{d} - \mu_{y} \cos \psi_{d}}{u}\right), \\ \theta_{d} = \tan^{-1}\left(\frac{\mu_{x} \cos \psi_{d} + \mu_{y} \sin \psi_{d}}{\mu_{z} + g}\right). \end{cases}
⎩⎪⎪⎪⎨⎪⎪⎪⎧u=mμx2+μy2+(μz+g)2,ϕd=sin−1(muμxsinψd−μycosψd),θd=tan−1(μz+gμxcosψd+μysinψd).
由于所需角度 $(\phi_{d}, \theta_{d},
ψ
d
)
\psi_{d})
ψd) 是定向子系统的输出,因此不能立即分配或提供。因此,它们被视为内环控制器的参考轨迹。因此,定义跟踪误差向量
e
=
(
e
η
,
e
η
˙
)
T
∈
R
6
e = (e_{\eta}, e_{\dot{\eta}})^{\rm T} \in \mathbb{R}^{6}
e=(eη,eη˙)T∈R6,其中
e
η
=
η
−
η
d
,
e
η
˙
=
η
˙
−
η
˙
d
e_{\eta} = \eta - \eta_{d}, e_{\dot{\eta}} = \dot{\eta} - \dot{\eta}_{d}
eη=η−ηd,eη˙=η˙−η˙d。基于误差系统,(6) 可以写为
{
x
¨
=
1
m
u
[
(
cos
ϕ
d
sin
θ
d
cos
ψ
d
+
sin
ϕ
d
sin
ψ
d
)
+
h
x
(
ϕ
d
,
θ
d
,
ψ
d
,
e
ϕ
,
e
θ
,
e
ψ
)
]
=
μ
x
+
1
m
u
h
x
(
⋅
)
,
y
¨
=
1
m
u
[
(
cos
ϕ
d
sin
θ
d
sin
ψ
d
−
sin
ϕ
d
cos
ψ
d
)
+
h
y
(
ϕ
d
,
θ
d
,
ψ
d
,
e
ϕ
,
e
θ
,
e
ψ
)
]
=
μ
y
+
1
m
u
h
y
(
⋅
)
,
z
¨
=
1
m
u
[
cos
ϕ
cos
θ
+
h
z
(
ϕ
d
,
θ
d
,
e
ϕ
,
e
θ
)
]
−
g
=
μ
z
+
+
1
m
u
h
z
(
⋅
)
.
\begin{cases} \ddot{x} = \frac{1}{m} u \left[\left(\cos \phi_{d} \sin \theta_{d} \cos \psi_{d} + \sin \phi_{d} \sin \psi_{d}\right) + h_{x}(\phi_{d}, \theta_{d}, \psi_{d}, e_{\phi}, e_{\theta}, e_{\psi})\right] = \mu_{x} + \frac{1}{m} u h_{x}(\cdot), \\ \ddot{y} = \frac{1}{m} u \left[\left(\cos \phi_{d} \sin \theta_{d} \sin \psi_{d} - \sin \phi_{d} \cos \psi_{d}\right) + h_{y}(\phi_{d}, \theta_{d}, \psi_{d}, e_{\phi}, e_{\theta}, e_{\psi})\right] = \mu_{y} + \frac{1}{m} u h_{y}(\cdot), \\ \ddot{z} = \frac{1}{m} u \left[\cos \phi \cos \theta + h_{z}(\phi_{d}, \theta_{d}, e_{\phi}, e_{\theta})\right] - g = \mu_{z} + + \frac{1}{m} u h_{z}(\cdot). \end{cases}
⎩⎪⎨⎪⎧x¨=m1u[(cosϕdsinθdcosψd+sinϕdsinψd)+hx(ϕd,θd,ψd,eϕ,eθ,eψ)]=μx+m1uhx(⋅),y¨=m1u[(cosϕdsinθdsinψd−sinϕdcosψd)+hy(ϕd,θd,ψd,eϕ,eθ,eψ)]=μy+m1uhy(⋅),z¨=m1u[cosϕcosθ+hz(ϕd,θd,eϕ,eθ)]−g=μz++m1uhz(⋅).
通过定义位置-速度跟踪误差
χ
=
(
ξ
−
ξ
d
,
ν
−
ν
d
)
T
∈
R
6
\chi = (\xi - \xi_{d}, \nu - \nu_{d})^{\rm T} \in \mathbb{R}^{6}
χ=(ξ−ξd,ν−νd)T∈R6,结合上式与 (6) 可写作矩阵形式。