倒立摆实验报告.docx
《倒立摆实验报告.docx》由会员分享,可在线阅读,更多相关《倒立摆实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
倒立摆实验报告
专业实验报告
实验名称
倒立摆实验
实验时间
(1)
姓名
学号
一、实验内容
1、直线一级倒立摆建模
1.1受力分析
针对直线一级倒立摆,在实际的模型建立过程中,可忽略空气流动阻力和其它次要的摩擦阻力,则倒立摆系统抽象成小车和匀质刚性杆组成的系统,如图所示。
图1小车系统
各参数定义:
M:
小车质量
m:
摆杆质量
P:
小车摩擦系数
I:
摆杆转动轴心到杆质心的长度I:
摆杆惯量
F:
加在小车上的力
X:
小车位置
①:
摆杆与垂直向上方向的夹角0:
摆杆与垂直向下方向的夹角摆杆受力和力矩分析
图2摆杆系统
摆杆水平方向受力为:
摆杆竖直方向受力为:
由摆杆力矩平衡得方程:
HIcosVIsinI&
代入V、H,得到摆杆运动方程。
1.2传递函数模型
以小车加速度为输入、摆杆角度为输出,令口-儿进行拉普拉斯变换得到传递函数:
G(s)—
1.3倒立摆系统状态空间模型
以小车加速度为输入,
(mlI)smgl
倒立摆系统参数值:
M=1.096
%
小车质量,kg
m=0.109
%
摆杆质量,kg
0.1
%
小车摩擦系数
g=9.8
%
重力加速度,
l=0.25
%
摆杆转动轴心到杆质心的长度,m
I=0.0034
%
摆杆转动惯量,k曲
以小车加速度为输入、摆杆角度为输出时,倒立摆系统的传递函数模型为:
0.02725
(3)
G(S)0.0102125s20.26705
摆杆角度、小车位移为输出,选取状态变量:
(4)
x(x,&,&
0
1
0
3
4g
由倒立摆的参数计算出其状态空间模型表达式:
(9)
2、PID控制器设计与调节
PID整定说明:
(1)比例(P作用)增大,系统响应快,对提高稳态精度有益,但过大易引起过度的振荡,降低相对稳定性。
(2)微分(D作用)对改善动态性能和抑制超调有利,但过强,即校正装置的零点靠近原点或者使开环的截止频率增大,不仅不能改善动态性能,反而易引入噪声干扰。
(3)积分(I作用)主要是消除或减弱稳态误差,但会延长调整时间,参数调整不当会容易振荡。
正确选择这三种作用的方法简单地可归纳成:
单靠提高P作用不能满足动
态指标时,可考虑加入D作用。
加入D作用后应适当减小P作用,两者相互配合,在SISODesignTool上极容易观察到这个调整过程所产生的效果。
一般来讲,应先满足动态性能,在此基础上,如达不到稳态指标,才考虑加入I作用
3、状态空间极点配置
已知受控系统状态空间表达式如下
(10)
A&B
Cx
馈向量后系统特征多项式为:
由f(s)f*(s)求得矩阵K。
、实验装置、
倒立摆实验平台台式电脑电源及线缆
MATLAB软件
1、基于MATLAB的SISO平台的PID控制器设计与调节在MATLAB中,提供了单输入单输出系统仿真的图形工具
Tool,可方便的获得系统的根轨迹图和伯德图,以及添加零极点改善系统的性能。
1.1
SISODesign
1.2
1.3
PID控制器设计界面
在MATLAB命令窗口中输入“sisotool”即可打开设计界面,如下图。
图3SISOTOOL界面
在MATLAB命令窗口中输入被控对象的模型:
其M文件为:
clearall;
clc;
num=[0.02725];
den=[0.01021250
G=tf(num,den)
导入被控对象模型
在SISO界面中使用
-0.26705];
File7lmport命令导入被控对象模型。
如下图。
图4PID控制器参数设计界面
1.4
PID控制器设计
、实验过程
添加零点和极
使用SISO界面的使补偿器C为PID形式。
1K屏+KpS+K](1++/jS)
伽^Kp+Kf-+KpS=sk*1(13)
使用SISO界面的“Analysis选项框中ResponsetoStepCommanc的命令即
可查看被控对象阶跃响应曲线。
通过调整SISO界面添加的零点,同时观察单位阶跃输入时的闭环响应曲线,寻找合适的P、I、D参数。
设合适的补偿器下
的根轨迹和参数以及响应曲线如图5和图6:
图5根轨迹和波特图
图6单位阶跃响应曲线
通过MATLAB的SISOTOOL工具箱进行PID控制参数设计,获得了一组单位阶跃响应的较好且能控制住倒立摆的参数,其参数如图7:
即对应的PID参数为:
Kp=109.29
Ki=218.58
Kd=11.0164
1.5倒立摆PID实物控制
1.5.1打开直线一级倒立摆
界面进入过程如下:
图7PID控制器设计参数值
PID控制界面
MATLAB7Simulink工具箱—GoogolEducationProductsTInvertedPendulum—LinearInvertedPendulum—Linear1-StageIPExperiment—PIDExperiments—PIDControlDemo。
其界面如下:
图8直线一级倒立摆MATLAB实时控制界面
1.5.2参数设置
双击“PID”模块进入PID参数设置,把仿真得到的参数输入PID控制器,点击“0K”保存参数。
程序,检查电机是否上伺服,上电后缓慢提起倒立摆的摆杆到竖直向上的位置,在程序进入自动控制后松开,当小车运动到正负限位的位置时,用工具挡一下摆杆,使小车反向运动。
2状态空间极点配置
2.1状态空间极点配置仿真2.1.1求解状态反馈增益矩阵
已知被控对象状态空间方程为:
&
xx&
0
0
0
0
1
0
0
0
0
0
0
29.4
0
0
1
0
(14)
点击磴编译程序,完成后点击就使计算机和倒立摆建立连接。
点击►运行
x
(15)
1000&0
00100
&
-2-5j;
k,程序如下:
期望闭环极点为-8,-8,-2+5j,通过MTLAB求得状态反馈矩阵
A=[0100;0000;0001;0029.40];
B=[0;1;0;3];
H=[-8-8-2+5j-2-5j];
k=acker(A,B,H)
得出:
k=-63.1293-24.489883.176414.8299
所以k=[-63.1293-24.489883.176414.8299]
2.2状态空间极点配置实物控制
进入状态空间极点配置实物控制界面流程如下:
MATLAB7Simulink实时控制工具箱—GoogolEducationProductp
InvertedPendulum—LinearInvertedPendulum—Linear1-StageIPSwing-UpControl7Swing-UpControlDemo,其控制界面如下图。
图9极点配置实物控制界面
2.2.2倒立摆极点配置控制
双击“LQRController在界面中输入通过仿真测试的4个闭环极点对应的反馈增益:
-63.1293-24.489883.176414.8299
然后点击0K,点击因编译程序,给实验平台上电,完成后点击專使计算机和倒立摆建立连接,点击运行許程序,倒立摆将自动起摆并达到平衡。
四、实验结果及分析
1.PID控制器设计和实物控制
将PID参数输入,然后运行程序,得出实物控制效果曲线如下:
图10PID实物控制曲线
结果分析:
PID参数的设计很多时候靠经验,MATLAB软件的出现使得我们能够通过仿真进行参数设计,减少了设计时间和对经验的依赖。
本次试验中通过很多次调整PID控制器传递函数的零点从而改变PID的三个参数Kp、Ki、Kd,依据PID参数整定中三个参数对系统性能的影响:
增大Kp可以提高系统响应速度,但会造成使超调增加;Ki可以消除静态误差,但会降低系统响应速度;Kd可以提高系统响应速度并抑制超调,但过大会造成系统动态性能下降,引入噪声来调整参数使系统的性能更好。
最终仿真获得了较好的单位响应曲线,其超调较小且其响应速度较快。
在实物控制过程中,控制效果没有预期的好,与仿真的结果有着较大差距,
倒立摆振动很大。
并且几组仿真单位阶跃响应曲线效果都不错的参数有的几乎不能控制住。
我认为造成仿真与实物控制有较大差距的主要原因是系统模型不精确,由于采用的是指导书给的参数,实际中系统模型参数与理论有一定差距,故用理论模型去代替实际模型不能达到理论上的控制效果。
其次我发现将摆杆立起来初始位置很重要,离平衡位置越近越容易较快达到平衡,且如果摆杆初始位置离平衡位置较远就不能控制住,需要人为的去改变摆杆位置。
2.极点配置仿真和实物控制
14.8299]。
系统在期望极点为:
-8,-8,-2+5j,-2-5j下的反馈增益矩阵为K=[63.1293-24.489883.1764
在当前反馈增益矩阵下,倒立摆由启动到达到平衡位置后加一个干扰及用手去轻轻拨下摆杆,摆杆能迅速从新达到平衡,其动态曲线如下图所示:
图11极点配置实物控制曲线
结果分析:
由于采用MATLAB计算,很容易计算出了期望极点下的增益矩阵,大大减少了计算量。
通过实物控制,在控制过程加入较大干扰系统都能较快的重新达到平衡状态。
通过实验,个人觉得通过状态空间极点配置设计控制器较PID控制器具有更好的性能并在采用MATLAB计算的情况下很方便,不像PID控制器设计那样需要较多经验且不停的尝试改进。
五、总结
通过这次实验,温习了以前学过的经典控制理论和现代控制理论,加深了对于使用MATLAB进行控制器设计流程的印象。
同时,在实验室的过程中也学习了一些东西,对PID有了更深的理解,相信以后在设计PID控制器时能够更加娴熟。
在PID控制器设计过程中,遇到了很多的问题,在进行仿真时,得到的结果,在实物上运行时老是达不到想要的结果,后来在下午通过与同学们的交流和查看资料,最终得到的结论主要是控制模型不够准确,模型不准确可能是两方面的原因:
第一、由于我们采用的都是实验指导书给出的传递函数模型,然而实际中
个倒立摆各有不同,与理论上的数据有差异,因此控制模型与实际情况有着一定差距,所以实际控制效果不能达到理论控制效果;
第二、二是由于倒立摆是一个复杂的非线性系统,然而我们在系统建模过程是对系统进行了线性化处理,把它转换为一个线性系统来看待,所以设计的控制器在实际控制过程中不能达到理论的效果。
第三、SISOX具的使用时,会有很多的随机情况,在调节时,不精确会遇到很多的不好效果,加上平时并没有经常用,所以在实验过程中,出现一些状况也是正常的。
最后,通过此次实验,我明白了看似简单的事情也要用心去做,比如这次实验的内容其实都是很简单的,通过matlab软件进行仿真,得出相应的参数,再通过实物验证算法的有效性。
这两个实验都很简单,有时候就因为比较简单
而自己没有认真分析,就会很久都得不出满意的结果。
在以后的学习和生活中,都应该谨记把每件简单的事情做好也是件不简单的事。
实验指导教师评语:
教师签名:
考查成绩(5
学
0.
年
级计分)
分
5
月日
(此表在授位前请放入硕士学位申请书中相应位置)