当前位置:文档之家› 基于matlab的倒立摆仿真设计

基于matlab的倒立摆仿真设计


Pulse GenePrautlosre Generator
-1 s2+-2-10 .58 Trsa2n+s-f2e0r .F5c8n Transfer Fcn
Scope Scope
给系统加入 PID 控制,设置系统稳定值为 0,给系统一个初始干扰冲击信号 采用试凑法不断调整 PID 参数,使系统达到所需的控制效果 当系统 Kp=-100,Ti=Td=0 时输出如下:
3、通过本实验,掌握了倒立摆仿真的整个过程,熟悉了 MATLAB 的仿真软件 Simulink 的使用,也对系统控制有了较好的理解。作为本次实验的组长,自己更 是从中掌握了合作实验开展中的一般步骤,对小组进行分工,掌握实验的主体线 路。此次实验中,自始至终发挥了组长的作用,从建模到最后的仿真调试,都秉 着认真负责的态度完成了倒立摆仿真研究。
0
0
(s) F (s)
s2
1 20.58
X (s) 0.5s2 9.8 位移 X 对外力 F 的传递函数: F(s) s4 20.58s2
三、用 MATLAB 的 Simulink 仿真系统进行建模
1、没校正之前的θ-F 控制系统
1 Constant
Pulse Generator
-s2 s4+-20 .58 s2 Transfer Fcn
2、由实验中可知,倒立摆系统是一个非线性的较复杂的不稳定系统,故要满足 稳定性要求,就得对系统进行线性化近似和稳定控制。本实验中,在做了线性化 和加进控制调整后,系统达到了良好的稳定状态。当然,这只是一个理想模型, 在实际应用中情况会更加复杂,稳定性也更难获得。不过,通过实验,我们至少 掌握了简单控制的基本方法,并得到了预期的实验效果。
>>D=[0;0]
>> [num,den]=ss2tf(A,B,C,D,1);
>> [num,den]=ss2tf(A,B,C,D,1)
num =
0 -0.0000 -1.0000
0
0
0 -0.0000 0.5000 -0.0000 -9.8000
den =
1.0000
0 -20.5800
由上可以得出角度 对力 F 的传递函数:
二、 倒立摆模型的数学建模
质量为 m 的小球固结于长度为 L 的细杆(可忽略杆的质量)上,细杆又和质量 为 M 的小车铰接相连。由经验知:通过控制施加在小车上的力 F(包括大小和 方向)能够使细杆处于θ=0 的稳定倒立状态。在忽略其他零件的质量以及各种 摩擦和阻尼的条件下,推导小车倒立摆系统的数学模型
分析过程如下:
如图所示,设细杆摆沿顺时针方向转动为正方向,水平向右方向为水平方向上的 正方向。当细杆摆顺时针往右运动时水平方向施加的力应该为水平向右。 现对小车和细杆摆分别进行隔离受力分析:
(1)对小车有: F-F’sinθ=Mx’’
(2)对小球有: 水平方向上运动为 x+lsinθ
故水平方向受力为 F’sinθ= m(x+lsinθ)’’
(a)
=m(x’+lcosθθ’)’
= mx’’+mlcosθθ’’-mlsinθ(θ’)^2
(b)
由(a)、(b)两式得 F= (M+m)x’’ +mlcosθθ’’-mlsinθ(θ’)^2
<1>
小球垂直方向上位移为 lcosθ
故受力为
F’cosθ -mg=m(lcosθ)’’
=-mlθ’’sinθ-mlcosθ(θ’)^2
Scope
由于未加进控制环节,故系统输出发散
2、加进控制环节,实现时域的稳定控制
0 0 Constant Constant
-K -K Gain Gain
1 1 Gain 1 Gain 1
-40 -40 Gain 3 Gain 3
1 1s Integrsator Integrator
du /dt du /dt Derivative Derivative
不断地调整参数,最后得到稳定的响应 Kp=-1000,Ti=1,Td=-40 时
可见调整好参数后,系统基本达到稳定,净差基本为 0,超调较小,响应时间较小。再微调 后,得到最终的响应曲线响应时间较小,Tp=0.2s
3、时域达到稳定后,进行离散化分析
离散模型系统控制框图如下
0 Constant
-K -
后,得到最终的响应曲线响应时间较小,Tp=0.5s。 至此,离散域的控制顺利实现
四、实验总结与分析
1、本实验,从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制, 最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己 的一套实验方法:倒立摆数学模型推导部分:首先用牛顿—欧拉方法建立数学模 型,接着用动态系统空间状态方程法导出状态方程系数矩阵,然后用 MATLAB 对数学模型进行从状态空间到传递函数的变换(包括传递函数的拉氏变换与 Z 变换),得到系统的传递函数模型。接着根据数学建模得出的传递函数进行系统 模型的搭建,在 Simulink 软件上进行系统仿真,采用最为广泛的 PID 控制算法, 先用连续系统的设计方法设计出模拟控制器,然后在满足一定条件下,对其进行 离散化处理,(采用加零阶保持器的 Z 变换法)形成数字控制器。接着进行 PID 参 数整定,利用试凑法,根据 PID 控制器各组成环节对系统性能的影响,从一组初 始 PID 参数开始反复试凑,直至获得,满意的控制效果。此实验中,系统的控 制非常稳定,性能较好。
以摆角 θ、角速度 θ’、小车位移 x、加速度 x’为系统状态变量,Y 为输出,F 为 输入
x1 即 X= x2 = '
x3 x x4 x'
Y=
x
=
x1 x3
由线性化后运动方程组得
x1’=θ’=x2
x2’= '' = M mg x1- 1 F
Ml
Ml
X3’ =x’=x4
x4’=x’’=- mg x1+ 1 F MM
即 F’cosθ=mg-mlθ’’sinθ-mlcosθ(θ’)^2 由(b)、(c)两式得
cosθx’’ =gsinθ- lθ’’
(c) <2>
故可得以下运动方程组: F= (M+m)x’’ +mlcosθθ’’-mlsinθ(θ’)^2
cosθx’’ =gsinθ- lθ’’
sin
3
, cos
故空间状态方程如下:
0
1
0
0
0
X’=
x1' x 2' x3' x 4'
=
M mg
Ml
0
mg M
0 0 0
0 0 0
x1
0
1
0
x2 x3 x4
+
1
Ml
0
F
1
M
x1
Y=
x1 1 x3
=
1 0
0 0
0 1
0 0
x2 x3
+ 0F
Constant
x4
-s2 s4+-20 .58 s2 Transfer Fcn
Scope
用 MATLAB 将状态方程转化成传Pul递se 函数,取 M=2kg m=0.1kg l=0.5m 代入得 Generator
>>A=[0 1 0 0;20.58 0 0 0;0 0 0 1;-0.49 0 0 0]
>>B=[0;-1;0;0.5]
>>C=[1 0 0 0;0 0 1 0]
2 1
以上方程组为非线性方程组,故需做如下线性化处理:
3!
2!
当 θ 很小时,由 cosθ、sinθ 的幂级数展开式可知,忽略高次项后,
可得 cosθ≈1,sinθ≈θ,θ’’≈0
故线性化后运动方程组简化为
F= (M+m)x’’ +mlθ’’
x’’ =gθ- lθ’’
下面进行系统状态空间方程的求解:
Gain
1
-2
1-z-1
Gain 1 Discrete Filter
ቤተ መጻሕፍቲ ባይዱ
1-z-1 -K -
1
Gain 3 Discrete FIR Filter
Zero -Order Hold
-1 s2+-20 .58 Transfer Fcn
Pulse Generator
Scope
当 Kp=-100,Ti=0,Td=0 时输出 :发散,需加大 Kp、增加 Ti 、Td 控制
4、此外,通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并 激发了良好的关于系统控制方面的学习兴趣,在此基础上,相信对以后的进一步 研究将会有较大帮助。
五、参考文献
[1]黄坚.自动控制原理及其应用[M].北京:高等教育出版社,2004.1 [2]孙德宝.自动控制原理[M].北京:化学工业出版社,2002.7 [3]胡寿松.自动控制原理(第四版)[M].北京:科学出版社,2001.2 [4]周伯敏.自动控制理论[M].北京:机械工业出版社,1999.1 [5]夏德钤,翁贻芳.自动控制理论[M].北京:机械工业出版社,2004.1 [6]刘时鹏.MATLAB 环境下直线单级倒立摆系统实时控制实验的研究与设计[R]. 重庆大学自动化学院,2004.6
基于 matlab 的倒立摆的仿真与设计
姓名:贾永伟 专业:测控技术与仪器
学号:1123105950
年级:2011 级
摘要:倒立摆系统是一个典型的快速、多变量、非线性、不稳定系统,对倒
立摆的控制研究无论在理论上和方法上都有深远的意义。 本论文以实验室原有的直线一级倒立摆实验装置为平台,重点研究其 PID 控制 方法,设计出相应的 PID 控制器,并将控制过程在 MATLAB 上加以仿真。
相关主题