华南理工大学
摘 要
倒立摆系统是一个典型的快速、多变量、非线性、不稳定系统,对倒立摆的控制
研究无论在理论上和方法上都有深远的意义。
本文主要主要研究内容是介绍倒立摆系统,对单级倒立摆模型进行建模,并分析
其稳定性,对于倒立摆系统,由于其本身是自不稳定的系统,实验建模存在一定的困
难。但是经过小心的假设忽略掉一些次要的因素后,倒立摆系统就是一个典型的运动
的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。下面我
们采用其中的牛顿-欧拉方法建立直线型一级倒立摆系统的数学模型。
关键词:一级倒立摆,数学建模,MATLAB 仿真
微分方程的推导
在忽略了空气阻力,各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质
杆组成的系统,如下图1所示
图 1 一级倒立摆系统
我们不妨做以下假设:
M小车质量、m摆杆质量、b小车摩擦系数、l摆杆转动轴心到杆质心的长度、I 摆
杆惯、F加在小车上的力、x 小车位置、φ摆杆与垂直向上方向的夹角、θ摆杆与垂直
向下方向的夹角(考虑到摆杆初始位置为竖直向下)。
图2.3是系统中小车和摆杆的受力分析图。
其中, N 和 P 为小车与摆杆相互作用力的水平和垂直方向的分量。注意:在实
华南理工大学
际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图所
示,图示方向为矢量正方向:
图二 小车隔离受力图
图三 摆杆隔离受力图
分析小车水平方向所受的合力,可以得到以下方程:
NxbFxM
由摆杆水平方向的受力进行分析可以得到下面等式:
dmN
k
2
12
l
sin
即 :
xmN
ml
cos
sin
ml
2
把这个等式代入上式中,就得到系统的第一个运动方程:
mxbxMm
cos
sin
ml
2
F
(1)
(2)
(3)
(4)
为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以
得到下面方程:
dm
dt
mg
P
2
2
l
cos
即:
P
mg
ml
cos
sin
ml
2
力矩平衡方程如下:
Pl
sin
Nl
cos
I
(5)
(6)
方程中力矩的方向,由于
sin,
号。合并这两个方程,约去P和N,得到第二个运动方程:
cos
cos
,
sin
,故等式前面有负
华南理工大学
I
ml
2
mgl
sin
xml
cos
(7)
设
( φ 是 摆 杆 与 垂 直 向 上 方 向 之 间 的 夹 角 ), 假 设 φ 与 1( 单
位 是 弧 度 ) 相 比 很 小 , 即 φ 《 1 , 则 可 以 进 行 近 似 处
0
。用 u 代 表 被 控 对 象 的 输 入 力 F ,线
cos
理 :
sin,1
2
d
,
dt
性化后两个运动方程如下:
2
I
mgl
xb
xmM
ml
xml
u
ml
传递函数
对方程组上面进行拉普拉斯变换,得到
2
I
ssXmM
ml
ss
2
2
bX
mgl
ss
s
ssmlX
ssml
2
sU
(8)
2
(9)
(10)
注意:推导传递函数时假设初始条件为 0。
由于输出为角度φ,求解方程组(3.8)的第一个方程,可以得到:
)(
sX
I
ml
ml
2
g
2
s
s
把上式代入方程组(3.8)的第二个方程,得到:
ImM
Ib
ml
ml
ml
ml
ss
g
2
s
g
s
2
2
2
ss
ssml
2
sU
整理后得到传递函数:
s
sU
4
s
Ib
2
ml
q
3
s
2
s
ml
q
mM
q
其中:
q
IMm
ml
2
ml
2
(11)
(12)
mgl
2
s
bmgl
q
s
华南理工大学
状态空间结构方程
系统状态空间方程为
x
y
AX
CX
Bu
Dn
(13)
方程组(13)对 ,x 解代数方程,得到解如下:
x
x
I
x
mMI
2
bml
Mml
x
2
2
2
glm
mMI
Mml
2
I
mMI
ml
2
Mml
u
2
mMI
mlb
Mml
2
x
mMmgl
(
(
mMI
)
)
Mml
2
ml
(
)
mMI
u
Mml
2
(14)
整理后得到系统状态空间方程:
x
x
0
0
0
0
1
I ml b
2
I M m Mml
I M m Mml
0
mlb
0
2
m gl
2
I M m Mml
2
0
mgl M m
I M m Mml
0
0
1
0
x
x
2
0
2
I ml
I M m Mml
0
ml
I M m Mml
2
2
u
2
2
y
x
0001
0000
x
x
0
0
u
由公式(8)的第一个方程为:
I
ml
2
mgl
xml
对于质量均匀分布的摆杆有:
1 ml
3
I
2
于是可以得到:
1
3
2
ml
ml
2
mgl
xml
(15)
(16)
(17)
(18)
(19)
华南理工大学
3
g
4
l
3
4
l
x
化简得到:
设
X
,
,
,
,
xx
u
x
x
x
,则有:
10
0
00
0
00
0
3
g
00
4
l
0
0
1
0
0
1
0
3
4
l
u
0
0
u
x
x
x
x
y
x
0001
0100
(20)
(21)
实际的系统模型如下:
M 小车质量 1.096 Kg
m 摆杆质量 0.109 Kg
b 小车摩擦系数 0 .1N/m/sec
l 摆杆转动轴心到杆质心的长度 0.2 5m
I 摆杆惯量 0.0034 kg*m*m
T 采样频率 0.005秒
注意:在进行实际系统的MATLAB仿真时,我们将采样频率改为实际系统的采样频
率。我们的在实际操作中自行检查系统参数是否与实际系统相符,否则的改用实际参
数进行实验。
实际系统模型
把上述参数代入,可以得到系统的实际模型
摆杆角度和小车位移的传递函数:
s
sX
.0
.0
0102125
0275
s
2
s
2
.0
26705
摆杆角度和小车加速度之间的传递函数为:
s
sV
.0
0102125
02725
2
.0
s
.0
26705
摆杆角度和小车所受外界作用力的传递函数:
(22)
(23)
华南理工大学
s
sU
3
s
.0
0883167
.2
35655
2
.27
s
s
9169
s
.2
30942
(24)
以外界作用力作为输入的系统状态方程:
x
x
0
0
0
0
y
x
0001
0100
1
0
.0
0883167
.0
629317
0
225655
.0
0
8285
0
0
u
.27
x
x
以小车加速度作为输入的系统状态方程:
10
00
00
00
x
x
y
x
0001
0100
0
0
1
0
x
x
0
.0
883167
0
35655
.2
u
(25)
0
0
0
0
0
1
04.29
x
x
0
1
0
3
u
x
x
0
0
u
(26)
需要说明的是,在本文所有提供的控制器设计和程序中,采用的都是以小车的加
速度作为系统的输入,如果需要采用力矩控制的方法,可以参考以上把外界作用力作
为输入的各式。
采用 MATLAB 语句形式进行仿真
仿真程序如图4所示
华南理工大学
可得仿真曲线和结果如图5和6所示
图 4 系统数学模型仿真程序
图 5 系统数学模型仿真曲线
华南理工大学
图 6 系统仿真系数