前言
本文是关于二阶倒立摆模型如何在平衡点处得到其的线性化模型的说明,介绍的比较详细,但是大部分内容参考于前人所写的论文,这些参考文献,我将列在本文的最后,但是我所建立的模型不同于论文中的模型,基本上计算过程我也是手算了一遍,在这里写出来,也是为了给想要计算一遍的人一个参考。如果大家迫切需要得到结论,大家可以直接照抄论文内的模型,论文内的模型更具有普适性。我这个模型是个特例。
仿真物理模型的建立
为了达到更加逼真以及生动的演示效果,我将采用simulink中的simscape模块对二阶直线倒立摆进行建模。关于如何使用simscape对二阶倒立摆建模我将在另外一篇文章中进行讲解。直接给出建立的模型。如下
物理意义描述为
物理含义 | 符号 |
---|---|
滑轨质量 | M |
滑轨位置 | x |
摆杆1质量 | m1 |
摆杆1角度 | θ1 |
摆杆1半杆长 | l1 |
摆杆2质量 | m2 |
摆杆2角度 | θ2 |
摆杆2半杆长 | l2 |
真正完整的真实的倒立摆模型在两个摆杆之间的应当还会有一个转轴,但是我这里是使用simulink仿真,并不是为了现实的控制,所以直接忽略了,但是在后续会给出完整模型的参数
二阶倒立摆的数学模型
使用拉格朗日方程建模
使用拉格朗日方程对二阶倒立摆进行数学模型的建模。拉格朗日方程为
d
d
t
∂
L
∂
q
˙
i
−
∂
L
∂
q
i
=
f
i
(
i
=
1
,
2
,
3...
)
(1)
\frac{d}{dt}\frac{\partial{L}}{\partial{\dot{q}_i}}-\frac{\partial{L}}{\partial{q}_i}=f_i(i=1,2,3...) \tag{1}
dtd∂q˙i∂L−∂qi∂L=fi(i=1,2,3...)(1)
其中qi为系统的广义坐标,fi为系统第i个广义坐标上的系统外力,L为系统的拉格朗日量,在二阶倒立摆中,描述系统的广义坐标即为(x,θ1,θ2);而显然在θ1和θ2上系统的外力为零;而拉格朗日量表述为:
L
(
q
1
,
q
2
,
.
.
.
,
q
˙
1
,
q
˙
2
,
.
.
.
,
t
)
=
T
(
q
1
,
q
2
,
.
.
.
,
q
˙
1
,
q
˙
2
,
.
.
.
,
t
)
−
V
(
q
1
,
q
2
,
.
.
.
,
t
)
(2)
L(q_1,q_2,...,\dot{q}_1,\dot{q}_2,...,t)=T(q_1,q_2,...,\dot{q}_1,\dot{q}_2,...,t)-V(q_1,q_2,...,t) \tag{2}
L(q1,q2,...,q˙1,q˙2,...,t)=T(q1,q2,...,q˙1,q˙2,...,t)−V(q1,q2,...,t)(2)
其中T与V分别为系统的动能与势能
数学模型的建立
在二阶倒立摆中,系统动能表述为:
T
=
T
0
+
T
1
+
T
2
(3)
T=T_0+T_1+T_2 \tag{3}
T=T0+T1+T2(3)
其中T0、T1、T2分别为小车、摆杆1、摆杆2的动能,下面我们再计算T0、T1、T2
T
0
=
1
2
M
x
˙
2
(4)
T_0=\frac{1}{2}M\dot{x}^2\tag{4}
T0=21Mx˙2(4)
T
1
=
1
6
m
1
l
1
2
θ
˙
1
2
+
1
2
m
1
[
(
d
d
t
(
x
−
l
1
s
i
n
θ
1
)
)
2
+
(
d
d
t
l
1
c
o
s
θ
1
˙
)
2
]
(5)
T_1=\frac{1}{6}m_1l_1^2\dot{\theta}_1^2+\frac{1}{2}m_1\left[{(\frac{d}{dt}\left(x-l_1sin\theta_1\right))}^2+\left(\frac{d}{dt}l_1cos\dot{\theta_1}\right)^2\right]\tag{5}
T1=61m1l12θ˙12+21m1[(dtd(x−l1sinθ1))2+(dtdl1cosθ1˙)2](5)
T
2
=
1
6
m
2
l
2
2
θ
˙
2
2
⏟
转
动
动
能
+
1
2
m
2
[
(
d
d
t
(
x
−
2
l
1
s
i
n
θ
1
−
l
2
s
i
n
θ
2
)
)
2
⏟
x
方
向
位
置
的
导
数
,
即
x
方
向
的
速
度
+
(
d
d
t
(
2
l
1
c
o
s
θ
1
+
l
2
c
o
s
θ
2
)
)
2
⏟
y
方
向
位
置
的
导
数
,
即
y
方
向
的
速
度
]
(6)
T_2=\underbrace{\frac{1}{6}m_2l_2^2\dot{\theta}_2^2}_{转动动能}+\frac{1}{2}m_2\left[\underbrace{\left(\frac{d}{dt}\left(x-2l_1sin\theta_1-l_2sin\theta_2\right)\right)^2}_{x方向位置的导数,即x方向的速度}+\underbrace{\left(\frac{d}{dt}\left(2l_1cos\theta_1+l_2cos\theta_2\right)\right)^2}_{y方向位置的导数,即y方向的速度}\right]\tag{6}
T2=转动动能
61m2l22θ˙22+21m2⎣⎢⎢⎡x方向位置的导数,即x方向的速度
(dtd(x−2l1sinθ1−l2sinθ2))2+y方向位置的导数,即y方向的速度
(dtd(2l1cosθ1+l2cosθ2))2⎦⎥⎥⎤(6)
这里简单的解释以下,T1、T2如何求的。即为转动动能和平动动能,平动动能里再细分为x和y方向的动能,上面这个公式渲染的不是很好,看来csdn对latex的支持也不太好
而系统势能描述为
V
=
V
0
+
V
1
+
V
2
(7)
V=V_0+V_1+V_2\tag{7}
V=V0+V1+V2(7)
同样为小车、摆杆1、摆杆2的势能之和
V
0
=
0
(8)
V_0=0\tag{8}
V0=0(8)
V
1
=
m
1
g
l
1
c
o
s
θ
1
(9)
V_1=m_1gl_1cos\theta_1\tag{9}
V1=m1gl1cosθ1(9)
V
2
=
m
2
g
(
2
l
1
c
o
s
θ
1
+
l
2
c
o
s
θ
2
)
(10)
V_2=m_2g\left(2l_1cos\theta_1+l_2cos\theta_2\right)\tag{10}
V2=m2g(2l1cosθ1+l2cosθ2)(10)
简单整合一下
T
=
1
2
(
M
+
m
1
+
m
2
)
x
˙
2
+
(
2
3
m
1
+
2
m
2
)
l
1
2
θ
˙
1
2
+
2
3
m
2
l
2
2
θ
˙
2
2
−
(
m
1
+
2
m
2
)
l
1
x
˙
θ
˙
1
c
o
s
θ
1
−
m
2
l
2
x
˙
θ
˙
2
c
o
s
θ
2
+
2
m
2
l
1
l
2
θ
˙
1
θ
˙
2
c
o
s
(
θ
1
−
θ
2
)
(11)
\begin{aligned} T=&\frac{1}{2}\left(M+m_1+m_2\right){\dot{x}}^2+\left(\frac{2}{3}m_1+2m_2\right)l_1^2{\dot{\theta}}_1^2 \\ &+\frac{2}{3}m_2l_2^2{\dot{\theta}}_2^2-\left(m_1+2m_2\right)l_1\dot{x}{\dot{\theta}}_1cos{\theta}_1\\ &-m_2l_2\dot{x}{\dot{\theta}}_2cos{\theta}_2+2m_2l_1l_2\dot{\theta}_1\dot{\theta}_2cos(\theta_1-\theta_2) \end{aligned} \tag{11}
T=21(M+m1+m2)x˙2+(32m1+2m2)l12θ˙12+32m2l22θ˙22−(m1+2m2)l1x˙θ˙1cosθ1−m2l2x˙θ˙2cosθ2+2m2l1l2θ˙1θ˙2cos(θ1−θ2)(11)
V
=
m
1
g
l
1
c
o
s
θ
1
+
m
2
g
(
2
l
1
c
o
s
θ
1
+
l
2
c
o
s
θ
2
)
(12)
V=m_1gl_1cos{\theta}_1+m_2g(2l_1cos\theta_1+l_2cos\theta_2) \tag{12}
V=m1gl1cosθ1+m2g(2l1cosθ1+l2cosθ2)(12)
这里简单的说明一下,大家如果在建模的时候所选取的角度的正负不一样的话,这里有一些符号会又变化,本公式是以摆杆在铅垂线的左侧时的角度为正的。
前面已经提到,拉格朗日算子为
L
=
T
−
V
(13)
L=T-V\tag{13}
L=T−V(13)
而在该二阶摆系统中,在广义坐标θ1和θ2上系统的外力为零,故根据拉格朗日方程即可确定下式
{
d
d
t
∂
V
∂
θ
˙
1
−
∂
L
∂
θ
1
=
0
d
d
t
∂
V
∂
θ
˙
2
−
∂
L
∂
θ
2
=
0
(14)
\begin{cases} \frac{d}{dt}\frac{\partial{V}}{\partial{\dot{\theta}_1}}-\frac{\partial{L}}{\partial{\theta}_1}=0 \\ \frac{d}{dt}\frac{\partial{V}}{\partial{\dot{\theta}_2}}-\frac{\partial{L}}{\partial{\theta}_2}=0 \end{cases}\tag{14}
{dtd∂θ˙1∂V−∂θ1∂L=0dtd∂θ˙2∂V−∂θ2∂L=0(14)
将式(13)带入(14)并化简后即可得到
{
(
4
3
m
1
+
4
m
2
)
l
1
θ
¨
1
+
(
m
1
+
2
m
2
)
x
¨
c
o
s
θ
1
+
2
m
2
l
2
c
o
s
(
θ
1
−
θ
2
)
θ
¨
2
+
2
m
2
l
2
θ
˙
2
2
s
i
n
(
θ
2
−
θ
1
)
+
(
m
1
+
2
m
2
)
g
s
i
n
θ
1
=
0
4
3
l
2
θ
¨
2
−
x
¨
c
o
s
θ
2
+
2
l
1
x
¨
c
o
s
(
θ
1
−
θ
2
)
+
2
l
1
θ
˙
1
2
s
i
n
(
θ
1
−
θ
2
)
−
g
s
i
n
θ
2
=
0
(15)
\begin{aligned} \begin{cases} &(\frac{4}{3}m_1+4m_2)l_1{\ddot{\theta}}_1+(m_1+2m_2)\ddot{x}cos\theta_1+2m_2l_2cos(\theta_1-\theta_2){\ddot{\theta}}_2\\ &+2m_2l_2{\dot{\theta}}_2^2sin(\theta_2-\theta_1)+(m_1+2m_2)gsin\theta_1=0\\ &\frac{4}{3}l_2{\ddot{\theta}}_2-\ddot{x}cos\theta_2+2l_1\ddot{x}cos\left(\theta_1-\theta_2\right)+2l_1{\dot{\theta}}_1^2sin\left(\theta_1-\theta_2\right)-gsin\theta_2=0 \end{cases} \end{aligned}\tag{15}
⎩⎪⎨⎪⎧(34m1+4m2)l1θ¨1+(m1+2m2)x¨cosθ1+2m2l2cos(θ1−θ2)θ¨2+2m2l2θ˙22sin(θ2−θ1)+(m1+2m2)gsinθ1=034l2θ¨2−x¨cosθ2+2l1x¨cos(θ1−θ2)+2l1θ˙12sin(θ1−θ2)−gsinθ2=0(15)
为了进一步的化简,作以下设定:
{
θ
¨
1
=
f
1
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
˙
1
,
θ
˙
2
)
=
0
θ
¨
2
=
f
2
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
˙
1
,
θ
˙
2
)
=
0
(16)
\begin{cases} \ddot{\theta}_1=f_1(x,\theta_1,\theta_2,\dot{x},\dot{\theta}_1,\dot{\theta}_2)=0\\ \ddot{\theta}_2= f_2(x,\theta_1,\theta_2,\dot{x},\dot{\theta}_1,\dot{\theta}_2)=0 \end{cases}\tag{16}
{θ¨1=f1(x,θ1,θ2,x˙,θ˙1,θ˙2)=0θ¨2=f2(x,θ1,θ2,x˙,θ˙1,θ˙2)=0(16)
之后对各个状态变量,进行一阶展开即可得到公式(17)
{
θ
¨
1
=
k
11
x
+
k
12
θ
1
+
k
13
θ
2
+
k
14
x
˙
+
k
15
θ
˙
1
+
k
16
θ
˙
2
+
k
17
x
¨
θ
¨
2
=
k
21
x
+
k
22
θ
1
+
k
23
θ
2
+
k
24
x
˙
+
k
25
θ
˙
1
+
k
26
θ
˙
2
+
k
27
x
¨
(17)
\begin{cases} \ddot{\theta}_1=k_{11}x+k_{12}\theta_1+k_{13}\theta_2+k_{14}\dot{x}+k_{15}\dot{\theta}_1+k_{16}\dot{\theta}_2+k_{17}\ddot{x}\\ \ddot{\theta}_2=k_{21}x+k_{22}\theta_1+k_{23}\theta_2+k_{24}\dot{x}+k_{25}\dot{\theta}_1+k_{26}\dot{\theta}_2+k_{27}\ddot{x} \end{cases}\tag{17}
{θ¨1=k11x+k12θ1+k13θ2+k14x˙+k15θ˙1+k16θ˙2+k17x¨θ¨2=k21x+k22θ1+k23θ2+k24x˙+k25θ˙1+k26θ˙2+k27x¨(17)
其中
k
11
=
∂
f
1
∂
x
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
21
=
∂
f
2
∂
x
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
12
=
∂
f
1
∂
θ
1
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
3
m
1
+
6
m
2
4
m
1
+
3
m
2
k
22
=
∂
f
2
∂
θ
1
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
−
9
(
m
1
+
2
m
2
)
2
(
4
m
1
+
3
m
2
)
g
l
2
k
13
=
∂
f
1
∂
θ
2
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
−
9
m
2
8
m
1
+
6
m
2
g
l
1
k
23
=
∂
f
2
∂
θ
2
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
3
(
m
1
+
3
m
2
)
2
(
2
m
1
+
3
m
2
)
g
l
2
k
14
=
∂
f
1
∂
x
˙
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
24
=
∂
f
2
∂
x
˙
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
15
=
∂
f
1
∂
θ
˙
1
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
25
=
∂
f
2
∂
θ
˙
1
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
16
=
∂
f
1
∂
θ
˙
2
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
26
=
∂
f
2
∂
θ
˙
2
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
0
k
17
=
∂
f
1
∂
x
¨
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
3
(
m
1
+
m
2
)
4
(
2
m
1
+
3
m
2
)
k
27
=
∂
f
2
∂
x
¨
∣
(
x
,
θ
1
,
θ
2
,
x
˙
,
θ
1
,
θ
2
,
x
¨
)
=
0
=
3
m
1
2
l
2
(
4
m
1
+
3
m
2
)
\begin{aligned} &k_{11} =\frac{\partial{f_1}}{\partial{x}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0 &k_{21} =\frac{\partial{f_2}}{\partial{x}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0\\ &k_{12} =\frac{\partial{f_1}}{\partial{\theta_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3m_1+6m_2}{4m_1+3m_2} &k_{22} =\frac{\partial{f_2}}{\partial{\theta_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{-9(m_1+2m_2)}{2(4m_1+3m_2)}\frac{g}{l2}\\ &k_{13} =\frac{\partial{f_1}}{\partial{\theta_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{-9m_2}{8m_1+6m_2}\frac{g}{l1} &k_{23} =\frac{\partial{f_2}}{\partial{\theta_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(m_1+3m_2)}{2(2m_1+3m_2)}\frac{g}{l2}\\ &k_{14}=\frac{\partial{f_1}}{\partial{\dot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0 &k_{24}=\frac{\partial{f_2}}{\partial{\dot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0\\ &k_{15}=\frac{\partial{f_1}}{\partial{\dot{\theta}_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0 &k_{25}=\frac{\partial{f_2}}{\partial{\dot{\theta}_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0\\ &k_{16}=\frac{\partial{f_1}}{\partial{\dot{\theta}_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0 &k_{26}=\frac{\partial{f_2}}{\partial{\dot{\theta}_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=0\\ &k_{17}=\frac{\partial{f_1}}{\partial{\ddot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(m_1+m_2)}{4(2m_1+3m_2)} &k_{27}=\frac{\partial{f_2}}{\partial{\ddot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3m_1}{2l_2(4m_1+3m_2)}\\ \end{aligned}
k11=∂x∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k12=∂θ1∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=4m1+3m23m1+6m2k13=∂θ2∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=8m1+6m2−9m2l1gk14=∂x˙∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k15=∂θ˙1∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k16=∂θ˙2∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k17=∂x¨∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=4(2m1+3m2)3(m1+m2)k21=∂x∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k22=∂θ1∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(4m1+3m2)−9(m1+2m2)l2gk23=∂θ2∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(2m1+3m2)3(m1+3m2)l2gk24=∂x˙∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k25=∂θ˙1∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k26=∂θ˙2∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=0k27=∂x¨∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2l2(4m1+3m2)3m1
关于这里的线性化方法,大家最好不要用手算,可以去了解以下用matlab的泰勒级数展开来计算,或者对应求偏导,对应函数为 taylar和partial
同时我这里的倒立摆的参数给的是不完整的参数,完整的参数如下,其中m3为转轴重量
k 12 = ∂ f 1 ∂ θ 1 ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = 3 ( m 1 + 2 m 2 + 2 m 3 ) g ( 4 m 1 + 3 m 2 + 12 m 3 ) l 1 k 22 = ∂ f 2 ∂ θ 1 ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = − 9 ( m 1 + 2 m 2 + 2 m 3 ) g 2 ( 4 m 1 + 3 m 2 + 12 m 3 ) l 2 k 13 = ∂ f 1 ∂ θ 2 ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = − 9 m 2 g 2 ( 4 m 1 + 3 m 2 + 12 m 3 ) l 1 k 23 = ∂ f 2 ∂ θ 2 ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = 3 ( m 1 + 3 m 2 + 3 m 3 ) g ( 4 m 1 + 3 m 2 + 12 m 3 ) l 2 k 17 = ∂ f 1 ∂ x ¨ ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = 3 ( 2 m 1 + m 2 + 4 m 3 ) 2 ( 4 m 1 + 3 m 2 + 12 m 3 ) l 1 k 27 = ∂ f 2 ∂ x ¨ ∣ ( x , θ 1 , θ 2 , x ˙ , θ 1 , θ 2 , x ¨ ) = 0 = 3 ( m 1 − m 3 l 2 ) 2 ( 4 m 1 + 3 m 2 + 12 m 3 ) l 2 \begin{aligned} &k_{12} =\frac{\partial{f_1}}{\partial{\theta_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(m_1+2m_2+2m_3)g}{(4m_1+3m_2+12m_3)l_1} &k_{22} =\frac{\partial{f_2}}{\partial{\theta_1}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{-9(m_1+2m_2+2m_3)g}{2(4m_1+3m_2+12m_3)l_2}\\ &k_{13} =\frac{\partial{f_1}}{\partial{\theta_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{-9m_2g}{2(4m_1+3m_2+12m_3)l_1} &k_{23} =\frac{\partial{f_2}}{\partial{\theta_2}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(m_1+3m_2+3m_3)g}{(4m_1+3m_2+12m_3)l_2}\\ &k_{17}=\frac{\partial{f_1}}{\partial{\ddot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(2m_1+m_2+4m_3)}{2(4m_1+3m_2+12m_3)l_1} &k_{27}=\frac{\partial{f_2}}{\partial{\ddot{x}}}\bigg|_{\left(x,\theta_1,\theta_2,\dot{x},\theta_1,\theta_2,\ddot{x}\right)=0}=\frac{3(m_1-m_3l_2)}{2(4m_1+3m_2+12m_3)l_2}\\ \end{aligned} k12=∂θ1∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=(4m1+3m2+12m3)l13(m1+2m2+2m3)gk13=∂θ2∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(4m1+3m2+12m3)l1−9m2gk17=∂x¨∂f1∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(4m1+3m2+12m3)l13(2m1+m2+4m3)k22=∂θ1∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(4m1+3m2+12m3)l2−9(m1+2m2+2m3)gk23=∂θ2∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=(4m1+3m2+12m3)l23(m1+3m2+3m3)gk27=∂x¨∂f2∣∣∣∣(x,θ1,θ2,x˙,θ1,θ2,x¨)=0=2(4m1+3m2+12m3)l23(m1−m3l2)
将x、θ1、θ2、x、dθ1、dθ2作为系统的状态变量,ddx为控制输入(控制小车的力作为控制输入),则系统的状态空间表达式可写为
{
X
˙
=
A
X
+
B
u
Y
=
C
X
+
D
u
(18)
\begin{cases} \dot{X}=AX+Bu\\ Y=CX+Du \end{cases}\tag{18}
{X˙=AX+BuY=CX+Du(18)
其中
X
=
[
x
θ
1
θ
2
x
˙
θ
˙
1
θ
˙
2
]
,
Y
=
[
x
θ
1
θ
2
]
,
A
=
[
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
k
12
k
13
0
0
0
0
k
22
k
23
0
0
0
]
X= \begin{bmatrix} x\\ \theta_1\\ \theta_2\\ \dot{x}\\ \dot{\theta}_1\\ \dot{\theta}_2 \end{bmatrix} ,Y= \begin{bmatrix} x\\ \theta_1\\ \theta_2\\ \end{bmatrix} ,A= \begin{bmatrix} 0&0&0&1&0&0\\ 0&0&0&0&1&0\\ 0&0&0&0&0&1\\ 0&0&0&0&0&0\\ 0&k_{12}&k_{13}&0&0&0\\ 0&k_{22}&k_{23}&0&0&0\\ \end{bmatrix}
X=⎣⎢⎢⎢⎢⎢⎢⎡xθ1θ2x˙θ˙1θ˙2⎦⎥⎥⎥⎥⎥⎥⎤,Y=⎣⎡xθ1θ2⎦⎤,A=⎣⎢⎢⎢⎢⎢⎢⎡0000000000k12k220000k13k23100000010000001000⎦⎥⎥⎥⎥⎥⎥⎤
B
=
[
0
0
0
1
k
17
k
27
]
,
C
=
[
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
]
,
D
=
[
0
0
0
]
B= \begin{bmatrix} 0\\ 0\\ 0\\ 1\\ k_{17}\\ k_{27} \end{bmatrix} ,C= \begin{bmatrix} 1&0&0&0&0&0\\ 0&1&0&0&0&0\\ 0&0&1&0&0&0\\ \end{bmatrix} ,D= \begin{bmatrix} 0\\ 0\\ 0 \end{bmatrix}
B=⎣⎢⎢⎢⎢⎢⎢⎡0001k17k27⎦⎥⎥⎥⎥⎥⎥⎤,C=⎣⎡100010001000000000⎦⎤,D=⎣⎡000⎦⎤
此即系统在平衡点处的线性化模型
线性化模型的第二种方法
由于在平衡点附近运动时,摆动角度很小,所以可以近似认为
s
i
n
θ
=
θ
c
o
s
θ
=
1
sin\theta=\theta\\ cos\theta=1
sinθ=θcosθ=1
在这种近似条件下,带入之前的拉格朗日方程中,也可以求出对应的线性化模型
详细的求解方式,大家可以参照文献[1]
总结
使用泰勒展开的方式求得线性化模型相比于近似的方法更偏理想化
参考文献
[1] 张立迎. 直线二级倒立摆稳定控制研究[D].山东大学,2009.
[2] 史晓霞,张振东,李俊芳,杨屹.二级倒立摆系统数学模型的建立及意义[J].河北工业大学学报,2001(05):48-51.
[3] 姜辉. 二级倒立摆控制方法研究[D].哈尔滨工程大学,2010.
如果觉得这篇文章对你有帮助,可以在下方为我点个赞,你的支持就是我写作的动力哦
如如果觉得非常好,也可以点击打赏赏博主一点点小钱钱哦
下一篇讲解如何使用simscape对二阶倒立摆对系统进行建模