四旋翼基本参数
四旋翼作为一种可以在空间中自由飞行的无人飞行器,具有6个自由度和4个螺旋桨。其中,4个螺旋桨提供动力,作为四旋翼的动力源;6个自由度分别为:3个位置坐标 x , y , z x,y,z x,y,z,3个角度坐标 θ \theta θ(俯仰), φ \varphi φ(滚转), ψ \psi ψ(偏航)。三种角表示如下:
基本假设
为了研究方便,作出以下假设:
- 四旋翼为刚体;
- 四旋翼几何中心处于其重心;
- 只有螺旋桨的拉力 T T T和重力 G G G作用于四旋翼,且拉力 T T T垂直于四旋翼的几何平面,重力 G G G指向地心;
- 四旋翼的转动惯量和质量不变;
- 呈对角线分布的两个螺旋桨转动方向相同;
- 忽略空气阻力。
转换矩阵
为研究四旋翼,需要建立坐标系。但随之而来的问题是,应该相对于什么建立坐标系。可以相对四旋翼本身建立坐标系,这种坐标系便于研究四旋翼的俯仰、滚转、偏航角,但显然无法得知四旋翼在具体空间中的位置坐标;亦可以相对地球建立坐标系,该坐标系便于得知四旋翼的位置信息,但其角度信息比较难以求解。
由此可见,在研究四旋翼过程中,势必需要经过两种坐标系的转化。由此得出转换矩阵
R
b
e
=
[
cos
θ
cos
ψ
cos
ψ
sin
θ
sin
φ
−
sin
ψ
cos
φ
cos
ψ
sin
θ
cos
φ
+
sin
ψ
sin
φ
cos
θ
sin
ψ
sin
ψ
sin
θ
sin
φ
+
cos
ψ
cos
φ
sin
ψ
sin
θ
cos
φ
−
cos
ψ
sin
φ
−
sin
θ
sin
φ
cos
θ
cos
φ
cos
θ
]
R
e
b
=
[
cos
θ
cos
ψ
cos
θ
sin
ψ
−
sin
θ
cos
ψ
sin
θ
sin
φ
−
sin
ψ
cos
φ
sin
ψ
sin
θ
sin
φ
+
cos
ψ
cos
φ
sin
φ
cos
θ
cos
ψ
sin
θ
cos
φ
+
sin
ψ
sin
φ
sin
ψ
sin
θ
cos
φ
−
cos
ψ
sin
φ
cos
φ
cos
θ
]
\begin{aligned} \mathbf{R}_b^e&= \begin{bmatrix} \cos{\theta} \cos{\psi} & \cos{\psi} \sin{\theta} \sin{\varphi}-\sin{\psi} \cos{\varphi} & \cos{\psi} \sin{\theta} \cos{\varphi}+\sin{\psi} \sin{\varphi}\\ \cos{\theta} \sin{\psi} & \sin{\psi} \sin{\theta} \sin{\varphi}+\cos {\psi} \cos{\varphi} & \sin{\psi} \sin{\theta} \cos{\varphi}-\cos{\psi} \sin{\varphi}\\ -\sin{\theta} & \sin{\varphi} \cos{\theta} & \cos{\varphi} \cos{\theta} \end{bmatrix} \\ \mathbf{R}_e^b&= \begin{bmatrix} \cos{\theta} \cos{\psi} & \cos{\theta} \sin{\psi} & -\sin{\theta}\\ \cos{\psi} \sin{\theta} \sin{\varphi} -\sin{\psi} \cos{\varphi} & \sin{\psi} \sin{\theta} \sin{\varphi}+\cos {\psi} \cos{\varphi} & \sin{\varphi} \cos{\theta}\\ \cos{\psi} \sin{\theta} \cos{\varphi} + \sin{\psi} \sin{\varphi} & \sin{\psi} \sin{\theta} \cos{\varphi} - \cos{\psi} \sin{\varphi} & \cos{\varphi} \cos{\theta} \end{bmatrix} \end{aligned}
RbeReb=⎣⎡cosθcosψcosθsinψ−sinθcosψsinθsinφ−sinψcosφsinψsinθsinφ+cosψcosφsinφcosθcosψsinθcosφ+sinψsinφsinψsinθcosφ−cosψsinφcosφcosθ⎦⎤=⎣⎡cosθcosψcosψsinθsinφ−sinψcosφcosψsinθcosφ+sinψsinφcosθsinψsinψsinθsinφ+cosψcosφsinψsinθcosφ−cosψsinφ−sinθsinφcosθcosφcosθ⎦⎤
其中上下标的含义解释如下:以
R
b
e
\mathbf{R}_b^e
Rbe为例,指从机体坐标系
b
b
b转为地心坐标系
e
e
e。若某个相对于机体的参数为
A
b
A^b
Ab,则它相对于地心的参数为
A
e
=
A
b
⋅
R
b
e
A^e = A^b \cdot \mathbf{R}_b^e
Ae=Ab⋅Rbe。
一般地,若设机体坐标系
b
b
b下角速度为
φ
˙
,
θ
˙
,
ψ
˙
\dot{\varphi}, \dot{\theta}, \dot{\psi}
φ˙,θ˙,ψ˙,地心坐标系
e
e
e下角速度为
p
,
q
,
r
p,q,r
p,q,r,则存在如下关系:
[
φ
˙
θ
˙
ψ
˙
]
=
[
1
tan
θ
sin
φ
tan
θ
cos
φ
0
cos
φ
−
sin
φ
0
sin
φ
cos
θ
cos
φ
cos
θ
]
[
p
q
r
]
(1)
\begin{bmatrix} \dot{\varphi} \\ \dot{\theta} \\ \dot{\psi} \end{bmatrix}= \begin{bmatrix} 1 & \tan{\theta} \sin{\varphi} & \tan{\theta} \cos{\varphi} \\ 0 & \cos{\varphi} & -\sin{\varphi} \\ 0 & \dfrac{\sin{\varphi} }{\cos{\theta}} & \dfrac{ \cos{\varphi} } {\cos{\theta}} \end{bmatrix} \begin{bmatrix} p\\ q\\ r \end{bmatrix} \tag{1}
⎣⎡φ˙θ˙ψ˙⎦⎤=⎣⎢⎡100tanθsinφcosφcosθsinφtanθcosφ−sinφcosθcosφ⎦⎥⎤⎣⎡pqr⎦⎤(1)
基本方程
设每个螺旋桨可产生的向上拉力为
F
i
b
F_i^b
Fib,则总拉力向量为
F
T
b
=
[
0
0
∑
i
=
1
4
F
i
b
]
\mathbf{F}_T^b= \begin{bmatrix} 0\\ 0\\ \sum\limits_{i=1}^4 F_i^b \end{bmatrix}
FTb=⎣⎢⎢⎡00i=1∑4Fib⎦⎥⎥⎤
其中下标
T
T
T表示拉力,
b
b
b表示相对于机体坐标系。
可以看出,拉力向量
F
T
b
\mathbf{F}_T^b
FTb只有在
z
z
z轴上才不为0。
同时,四旋翼还受到重力
G
e
=
[
0
0
−
m
g
]
\mathbf{G}^e= \begin{bmatrix} 0\\ 0\\ -mg \end{bmatrix}
Ge=⎣⎡00−mg⎦⎤
上标
e
e
e表示相对于地球坐标系。
将上述方程写在地球坐标系
e
e
e下,可以得到
∑
F
e
=
F
T
e
+
G
e
=
R
b
e
⋅
F
T
b
+
G
e
=
[
(
cos
ψ
sin
θ
cos
φ
+
sin
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
(
sin
ψ
sin
θ
cos
φ
−
cos
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
cos
φ
cos
θ
∑
i
=
1
4
F
i
b
−
m
g
]
\begin{aligned} \sum \mathbf{F^e} &= \mathbf{F}_T^e+\mathbf{G}^e\\ &= \mathbf{R}_b^e \cdot \mathbf{F}_T^b+\mathbf{G}^e \\ &= \begin{bmatrix} \left( \cos{\psi} \sin{\theta} \cos{\varphi}+\sin{\psi} \sin{\varphi} \right) \sum\limits_{i=1}^4 F_i^b \\ \left(\sin{\psi} \sin{\theta} \cos{\varphi}-\cos{\psi} \sin{\varphi}\right) \sum\limits_{i=1}^4 F_i^b \\ \cos{\varphi} \cos{\theta} \sum\limits _{i=1}^4 F_i^b -mg \end{bmatrix} \end{aligned}
∑Fe=FTe+Ge=Rbe⋅FTb+Ge=⎣⎢⎢⎢⎢⎢⎢⎡(cosψsinθcosφ+sinψsinφ)i=1∑4Fib(sinψsinθcosφ−cosψsinφ)i=1∑4Fibcosφcosθi=1∑4Fib−mg⎦⎥⎥⎥⎥⎥⎥⎤
在地球坐标系
e
e
e下,由欧拉方程有
∑
F
e
=
m
V
˙
e
\sum \mathbf{F}^e=m \dot{V}^e
∑Fe=mV˙e
即
[
(
cos
ψ
sin
θ
cos
φ
+
sin
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
(
sin
ψ
sin
θ
cos
φ
−
cos
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
cos
φ
cos
θ
∑
i
=
1
4
F
i
b
−
m
g
]
=
m
[
x
¨
y
¨
z
¨
]
(2)
\begin{bmatrix} (\cos{\psi} \sin{\theta} \cos{\varphi}+\sin{\psi} \sin{\varphi}) \sum\limits_{i=1}^4 F_i^b \\ (\sin{\psi} \sin{\theta} \cos{\varphi}-\cos{\psi} \sin{\varphi}) \sum\limits_{i=1}^4 F_i^b \\ \cos{\varphi} \cos{\theta} \sum\limits _{i=1}^4 F_i^b -mg \end{bmatrix}= m \begin{bmatrix} \ddot{x}\\ \ddot{y}\\ \ddot{z} \end{bmatrix} \tag{2}
⎣⎢⎢⎢⎢⎢⎢⎡(cosψsinθcosφ+sinψsinφ)i=1∑4Fib(sinψsinθcosφ−cosψsinφ)i=1∑4Fibcosφcosθi=1∑4Fib−mg⎦⎥⎥⎥⎥⎥⎥⎤=m⎣⎡x¨y¨z¨⎦⎤(2)
同时,由旋转体的欧拉方程也可以得到
J
⋅
ω
˙
b
+
ω
b
×
(
J
⋅
ω
b
)
=
[
J
x
0
0
0
J
y
0
0
0
J
z
]
[
p
˙
q
˙
r
˙
]
+
[
p
q
r
]
×
(
[
J
x
0
0
0
J
y
0
0
0
J
z
]
[
p
q
r
]
)
=
[
J
x
p
˙
+
(
J
z
−
J
y
)
q
r
J
y
q
˙
+
(
J
x
−
J
z
)
p
r
J
z
r
˙
+
(
J
y
−
J
x
)
p
q
]
\begin{aligned} \mathbf{J} \cdot \dot{\mathbf{\omega}}^b+\mathbf{\omega} ^b\times(\mathbf{J} \cdot \mathbf{\omega}^b) &= \begin{bmatrix} J_x & 0 & 0 \\ 0 & J_y & 0 \\ 0 & 0 & J_z \end{bmatrix} \begin{bmatrix} \dot{p} \\ \dot{q} \\ \dot{r} \end{bmatrix} + \begin{bmatrix} p \\ q \\ r \end{bmatrix} \times \left( \begin{bmatrix} J_x & 0 & 0 \\ 0 & J_y & 0 \\ 0 & 0 & J_z \end{bmatrix} \begin{bmatrix} p \\ q \\ r \end{bmatrix} \right) \\ &= \begin{bmatrix} J_x \dot{p} + \left( J_z-J_y \right) qr \\ J_y \dot{q} + \left( J_x-J_z \right) pr \\ J_z \dot{r} + \left( J_y-J_x \right) pq \end{bmatrix} \end{aligned}
J⋅ω˙b+ωb×(J⋅ωb)=⎣⎡Jx000Jy000Jz⎦⎤⎣⎡p˙q˙r˙⎦⎤+⎣⎡pqr⎦⎤×⎝⎛⎣⎡Jx000Jy000Jz⎦⎤⎣⎡pqr⎦⎤⎠⎞=⎣⎡Jxp˙+(Jz−Jy)qrJyq˙+(Jx−Jz)prJzr˙+(Jy−Jx)pq⎦⎤
同时该欧拉方程又可以表示为
∑
M
b
=
τ
=
[
M
T
x
M
T
y
M
T
z
]
=
[
l
(
F
2
−
F
4
)
l
(
F
1
−
F
3
)
M
D
1
−
M
D
2
+
M
D
3
−
M
D
4
]
\begin{aligned} \sum \mathbf{M}^b=\tau&= \begin{bmatrix} M_{Tx} \\ M_{Ty} \\ M_{Tz} \end{bmatrix} \\ &= \begin{bmatrix} l \left( F_2-F4 \right) \\ l \left( F_1-F_3 \right) \\ M_{D1}-M_{D2}+M_{D3}-M_{D4} \end{bmatrix} \end{aligned}
∑Mb=τ=⎣⎡MTxMTyMTz⎦⎤=⎣⎡l(F2−F4)l(F1−F3)MD1−MD2+MD3−MD4⎦⎤
其中
τ
\tau
τ为拉力的力矩,
M
D
i
M_{Di}
MDi为第
i
i
i个螺旋桨对
z
z
z轴的力矩。
于是可以有
[
l
(
F
2
−
F
4
)
l
(
F
1
−
F
3
)
M
D
1
−
M
D
2
+
M
D
3
−
M
D
4
]
=
[
J
x
p
˙
+
(
J
z
−
J
y
)
q
r
J
y
q
˙
+
(
J
x
−
J
z
)
p
r
J
z
r
˙
+
(
J
y
−
J
x
)
p
q
]
\begin{bmatrix} l \left( F_2-F_4 \right) \\ l \left( F_1-F_3 \right) \\ M_{D1}-M_{D2}+M_{D3}-M_{D4} \end{bmatrix} = \begin{bmatrix} J_x \dot{p} + \left( J_z-J_y \right) qr \\ J_y \dot{q} + \left( J_x-J_z \right) pr \\ J_z \dot{r} + \left( J_y-J_x \right) pq \end{bmatrix}
⎣⎡l(F2−F4)l(F1−F3)MD1−MD2+MD3−MD4⎦⎤=⎣⎡Jxp˙+(Jz−Jy)qrJyq˙+(Jx−Jz)prJzr˙+(Jy−Jx)pq⎦⎤
化简得
[
J
x
p
˙
J
y
q
˙
J
z
r
˙
]
=
[
l
(
F
2
−
F
4
)
−
(
J
z
−
J
y
)
q
r
l
(
F
1
−
F
3
)
−
(
J
x
−
J
z
)
p
r
M
D
1
−
M
D
2
+
M
D
3
−
M
D
4
−
(
J
y
−
J
x
)
p
q
]
(3)
\begin{bmatrix} J_x \dot{p} \\ J_y \dot{q} \\ J_z \dot{r} \end{bmatrix}= \begin{bmatrix} l \left( F_2-F_4 \right) - \left( J_z-J_y \right) qr \\ l \left( F_1-F_3 \right) - \left( J_x-J_z \right) pr \\ M_{D1}-M_{D2}+M_{D3}-M_{D4} - \left( J_y-J_x \right) pq \end{bmatrix}\tag{3}
⎣⎡Jxp˙Jyq˙Jzr˙⎦⎤=⎣⎡l(F2−F4)−(Jz−Jy)qrl(F1−F3)−(Jx−Jz)prMD1−MD2+MD3−MD4−(Jy−Jx)pq⎦⎤(3)
(
1
)
(
2
)
(
3
)
(1)(2)(3)
(1)(2)(3)分别为三个描述四旋翼运动学的方程。
线性化
假设四旋翼飞行状况十分平稳,因此三个角
φ
,
θ
,
ψ
\varphi, \theta, \psi
φ,θ,ψ的值都很小
(
≈
0
)
(\approx 0)
(≈0)。这样公式
(
1
)
(1)
(1)可以简化为
[
φ
˙
θ
˙
ψ
˙
]
=
[
1
tan
θ
sin
φ
tan
θ
cos
φ
0
cos
φ
−
sin
φ
0
sin
φ
cos
θ
cos
φ
cos
θ
]
[
p
q
r
]
≈
[
p
q
r
]
(4)
\begin{bmatrix} \dot{\varphi} \\ \dot{\theta} \\ \dot{\psi} \end{bmatrix}= \begin{bmatrix} 1 & \tan{\theta} \sin{\varphi} & \tan{\theta} \cos{\varphi} \\ 0 & \cos{\varphi} & -\sin{\varphi} \\ 0 & \dfrac{\sin{\varphi} }{\cos{\theta}} & \dfrac{ \cos{\varphi} } {\cos{\theta}} \end{bmatrix} \begin{bmatrix} p\\ q\\ r \end{bmatrix} \approx \begin{bmatrix} p \\ q \\ r \end{bmatrix} \tag{4}
⎣⎡φ˙θ˙ψ˙⎦⎤=⎣⎢⎡100tanθsinφcosφcosθsinφtanθcosφ−sinφcosθcosφ⎦⎥⎤⎣⎡pqr⎦⎤≈⎣⎡pqr⎦⎤(4)
则公式
(
2
)
(
3
)
(
4
)
(2)(3)(4)
(2)(3)(4)可以合并为
[
φ
¨
θ
¨
ψ
¨
x
¨
y
¨
z
¨
]
=
[
θ
˙
ψ
˙
J
y
−
J
z
J
x
+
l
J
x
(
F
2
−
F
4
)
φ
˙
ψ
˙
J
z
−
J
x
J
y
+
l
J
y
(
F
1
−
F
3
)
φ
˙
θ
˙
J
x
−
J
y
J
z
+
1
J
z
(
M
D
1
−
M
D
2
+
M
D
3
−
M
D
4
)
1
m
(
cos
ψ
sin
θ
cos
φ
+
sin
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
1
m
(
sin
ψ
sin
θ
cos
φ
−
cos
ψ
sin
φ
)
∑
i
=
1
4
F
i
b
1
m
cos
φ
cos
θ
∑
i
=
1
4
F
i
b
−
g
]
(5)
\begin{bmatrix} \ddot{\varphi} \\ \ddot{\theta} \\ \ddot{\psi} \\ \ddot{x} \\ \ddot{y} \\ \ddot{z} \end{bmatrix}= \begin{bmatrix} \dot{\theta} \dot{\psi} \dfrac{J_y-J_z}{J_x}+\dfrac{l}{J_x} \left( F_2-F_4 \right) \\ \dot{\varphi} \dot{\psi} \dfrac{J_z-J_x}{J_y}+\dfrac{l}{J_y} \left( F_1-F_3 \right) \\ \dot{\varphi} \dot{\theta} \dfrac{J_x-J_y}{J_z}+\dfrac{1}{J_z} \left( M_{D1}-M_{D2}+M_{D3}-M_{D4} \right) \\ \dfrac{1}{m} \left( \cos{\psi} \sin{\theta} \cos{\varphi} + \sin{\psi} \sin{\varphi} \right) \sum\limits _{i=1}^4 F_i^b \\ \dfrac{1}{m} \left( \sin{\psi} \sin{\theta} \cos{\varphi}-\cos{\psi} \sin{\varphi} \right) \sum\limits_{i=1}^4 F_i^b \\ \dfrac{1}{m} \cos{\varphi} \cos{\theta} \sum\limits_{i=1}^4 F_i^b -g \end{bmatrix} \tag{5}
⎣⎢⎢⎢⎢⎢⎢⎡φ¨θ¨ψ¨x¨y¨z¨⎦⎥⎥⎥⎥⎥⎥⎤=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡θ˙ψ˙JxJy−Jz+Jxl(F2−F4)φ˙ψ˙JyJz−Jx+Jyl(F1−F3)φ˙θ˙JzJx−Jy+Jz1(MD1−MD2+MD3−MD4)m1(cosψsinθcosφ+sinψsinφ)i=1∑4Fibm1(sinψsinθcosφ−cosψsinφ)i=1∑4Fibm1cosφcosθi=1∑4Fib−g⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤(5)
综合
经过上述推导,四旋翼的运动学方程已经悉数得出,可以合并表示在
(
5
)
(5)
(5)式中。
在下一节分享中,将详细推导如何把反步法运用到四旋翼无人机的建模当中。