基于Matlab的一级倒立摆模型的仿真.doc

上传人:聆听****声音 文档编号:8975702 上传时间:2023-05-16 格式:DOC 页数:8 大小:299.51KB
下载 相关 举报
基于Matlab的一级倒立摆模型的仿真.doc_第1页
第1页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第2页
第2页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第3页
第3页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第4页
第4页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第5页
第5页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第6页
第6页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第7页
第7页 / 共8页
基于Matlab的一级倒立摆模型的仿真.doc_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于Matlab的一级倒立摆模型的仿真.doc

《基于Matlab的一级倒立摆模型的仿真.doc》由会员分享,可在线阅读,更多相关《基于Matlab的一级倒立摆模型的仿真.doc(8页珍藏版)》请在冰点文库上搜索。

基于Matlab的一级倒立摆模型的仿真.doc

深圳大学考试答题纸

(以论文、报告等形式考核专用)

二○○九~二○○一零学年度第2学期

课程编号

课程名称

计算机控制系统

主讲教师

李东

评分

学号

姓名

专业年级

2007级光电工程学院测控技术与仪器

教师评语:

题目:

一级倒立摆模型的仿真

一、倒立摆模型的研究意义

倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。

对倒立摆系统的研究能有效的反映控制中的许多典型问题:

如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。

通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。

故其研究意义广泛。

二、倒立摆模型的数学建模

质量为m的小球固结于长度为L的细杆(可忽略杆的质量)上,细杆又和质量为M的小车铰接相连。

由经验知:

通过控制施加在小车上的力F(包括大小和方向)能够使细杆处于θ=0的稳定倒立状态。

在忽略其他零件的质量以及各种摩擦和阻尼的条件下,推导小车倒立摆系统的数学模型

分析过程如下:

如图所示,设细杆摆沿顺时针方向转动为正方向,水平向右方向为水平方向上的正方向。

当细杆摆顺时针往右运动时水平方向施加的力应该为水平向右。

现对小车和细杆摆分别进行隔离受力分析:

(1)对小车有:

F-F’sinθ=Mx’’(a)

(2)对小球有:

水平方向上运动为x+lsinθ

故水平方向受力为F’sinθ=m(x+lsinθ)’’

=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

即F’cosθ=mg-mlθ’’sinθ-mlcosθ(θ’)^2(c)

由(b)、(c)两式得

cosθx’’=gsinθ-lθ’’<2>

故可得以下运动方程组:

F=(M+m)x’’+mlcosθθ’’-mlsinθ(θ’)^2

cosθx’’=gsinθ-lθ’’

以上方程组为非线性方程组,故需做如下线性化处理:

当θ很小时,由cosθ、sinθ的幂级数展开式可知,忽略高次项后,

可得cosθ≈1,sinθ≈θ,θ’’≈0

故线性化后运动方程组简化为

F=(M+m)x’’+mlθ’’

x’’=gθ-lθ’’

下面进行系统状态空间方程的求解:

以摆角θ、角速度θ’、小车位移x、加速度x’为系统状态变量,Y为输出,F为输入

即X==Y==

由线性化后运动方程组得

x1’=θ’=x2x2’==x1-F

X3’=x’=x4x4’=x’’=-x1+F

故空间状态方程如下:

X’==+F

Y==+0F

用MATLAB将状态方程转化成传递函数,取M=2kgm=0.1kgl=0.5m代入得

>>A=[0100;20.58000;0001;-0.49000]

>>B=[0;-1;0;0.5]

>>C=[1000;0010]

>>D=[0;0]

>>[num,den]=ss2tf(A,B,C,D,1);

>>[num,den]=ss2tf(A,B,C,D,1)

num=

 

0-0.0000-1.000000

0-0.00000.5000-0.0000-9.8000

den= 

1.00000-20.580000

 

由上可以得出角度对力F的传递函数:

位移X对外力F的传递函数:

三、用MATLAB的Simulink仿真系统进行建模

1、没校正之前的θ-F控制系统

由于未加进控制环节,故系统输出发散

2、加进控制环节,实现时域的稳定控制

给系统加入PID控制,设置系统稳定值为0,给系统一个初始干扰冲击信号

采用试凑法不断调整PID参数,使系统达到所需的控制效果

当系统Kp=-100,Ti=Td=0时输出如下:

不断地调整参数,最后得到稳定的响应Kp=-1000,Ti=1,Td=-40时

可见调整好参数后,系统基本达到稳定,净差基本为0,超调较小,响应时间较小。

再微调后,得到最终的响应曲线响应时间较小,Tp=0.2s

3、时域达到稳定后,进行离散化分析

离散模型系统控制框图如下

当Kp=-100,Ti=0,Td=0时输出:

发散,需加大Kp、增加Ti、Td控制

Kp=-100,Ti=-2,Td=-1000时输出:

仍需要调节PID,由图可知超调仍大,响应时间稍长,故微增加Kp、Ti、Td

反复试凑PID参数后,得到较好的响应曲线如下(Kp=-110,Ti=-4,Td=-1500时)

可见调整好参数后,系统基本达到稳定,净差基本为0,超调较小,响应时间较小。

再微调后,得到最终的响应曲线响应时间较小,Tp=0.5s。

至此,离散域的控制顺利实现

4、位移—角度控制系统框图(此部分为加分部分,可不做)

由于时间关系,此环节未能顺利完成,深感遗憾!

四、实验总结与分析

1、本实验,从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制,最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己的一套实验方法:

倒立摆数学模型推导部分:

首先用牛顿—欧拉方法建立数学模型,接着用动态系统空间状态方程法导出状态方程系数矩阵,然后用MATLAB对数学模型进行从状态空间到传递函数的变换(包括传递函数的拉氏变换与Z变换),得到系统的传递函数模型。

接着根据数学建模得出的传递函数进行系统模型的搭建,在Simulink软件上进行系统仿真,采用最为广泛的PID控制算法,先用连续系统的设计方法设计出模拟控制器,然后在满足一定条件下,对其进行离散化处理,(采用加零阶保持器的Z变换法)形成数字控制器。

接着进行PID参数整定,利用试凑法,根据PID控制器各组成环节对系统性能的影响,从一组初始PID参数开始反复试凑,直至获得,满意的控制效果。

此实验中,系统的控制非常稳定,性能较好。

2、由实验中可知,倒立摆系统是一个非线性的较复杂的不稳定系统,故要满足稳定性要求,就得对系统进行线性化近似和稳定控制。

本实验中,在做了线性化和加进控制调整后,系统达到了良好的稳定状态。

当然,这只是一个理想模型,在实际应用中情况会更加复杂,稳定性也更难获得。

不过,通过实验,我们至少掌握了简单控制的基本方法,并得到了预期的实验效果。

3、通过本实验,掌握了倒立摆仿真的整个过程,熟悉了MATLAB的仿真软件Simulink的使用,也对系统控制有了较好的理解。

作为本次实验的组长,自己更是从中掌握了合作实验开展中的一般步骤,对小组进行分工,掌握实验的主体线路。

此次实验中,自始至终发挥了组长的作用,从建模到最后的仿真调试,都秉着认真负责的态度完成了倒立摆仿真研究。

4、此外,通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并激发了良好的关于系统控制方面的学习兴趣,在此基础上,相信对以后的进一步研究将会有较大帮助。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2