文档库 最新最全的文档下载
当前位置:文档库 › 自动控制实验报告——球杆系统 倒立摆 bupt概要

自动控制实验报告——球杆系统 倒立摆 bupt概要

自动控制实验报告——球杆系统 倒立摆 bupt概要
自动控制实验报告——球杆系统 倒立摆 bupt概要

球杆系统实验

实验一小球位置的数据采集处理

一、实验目的:

学会用Simulink仿真与硬件连接并获得小球位置。

二、实验任务:

1、在MatLab Simulink中通过添加功能模块完成球杆系统模型的建立;

2、正确获得小球位置数据;

三、实验原理:

小球的位置通过电位计的输出电压来检测,它和IPM100的AD转换通道AD5相连,AD5(16位)的范围为0-65535,对应的电压为0-5V,相应的小球位置为0-400mm。

MatLab Simulink环境下的数据采集处理工具箱提供了强大的功能。可以编写扩展名为mdl的图形文件,采集小球的位置信号,并进行数字滤波。

四、实验设备及仪器:

1、球杆系统;

2、计算机MATLAB平台;

五、实验步骤:

将MatLab主窗口的Current Directory文本框设置为球杆控制程序的系统文件夹;在MatLab主窗口点击进入Simulink Library Brower窗口,打开工具箱Googol Education Products\4. Ball & Beam\A. Data Collection and Filter Design,运行Data Collection and Filter Design程序,确认串行口COM Port为1后,双击Start Real Control模块,打开数据采集处理程序界面;

已有的模块不需再编辑设置,其中Noise Filter1模块是专门设计的滤波器,用来抑制扰动。请参考以下步骤完成剩余部分:

1、添加、设置模块:

添加User-Defined Functions组中的S-Function模块,双击图标,设置name为AD5;parameters为20.

添加Math Operations组中的Gain模块,双击图标,设置Gain为0.4/65535.0.

添加Sinks组中的Scope模块,双击图标,打开窗口,点击(Parameters),设置General 页中的Number of axes为2,Time Range为20000,点击OK退出,示波器屏成双;分别右击双屏,选Axes properties,设置Y-min为0,Y-max为0.4.

2、连接模块:

顺序连接AD5、Gain、Noise Filter1、Scope模块,完成后的程序界面如图所示:

图1.1.1 完成后的数据采集处理程序界面

点击运行程序,双击Scope模块,显示滤波前后的小球位置-时间图,拨动小球在

横杆上往返滚动,可得如下实验结果:

图1.1.2 小球位置的数据采集处理

六、实验总结

通过这个实验、我学会了球杆系统模型的建立以及小球位置的获取。由实验结果图

可以看出,滤波后的波形更清晰,实验效果更好。

实验二球杆系统的PID法控制

一、实验目的

学会用PID控制方法设计数字控制器。

二、实验要求

1、仿真部分

已知线性化球杆系统模型:

①假设P控制器KP=3,阶跃输入幅值=0.2m,编写MATLAB仿真程序,仿真闭环系统的阶跃响应。

②假设PD控制器KP = 6,KD = 6,阶跃输入幅值=0.2m,编写MATLAB仿真程序,仿真闭环系统的阶跃响应。

③假设PID控制器KP=10, KI=1, KD =10,阶跃输入幅值=0.2m,编写MATLAB仿真程序,仿真闭环系统的阶跃响应。

2、实验部分

①P控制实验。②PD控制实验。③PID控制实验。

三、实验设备

1、球杆系统;

2、计算机MATLAB平台;

四、实验原理

1、比例控制:是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差。在实验中添加P控制器后,系统并不能稳定。改变Kp 的值后,系统还是不稳定的,可以看出,对于一个惯性系统,在P控制器作用下,可以使系统保持一个等幅振荡。

2、积分控制:积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。

3、微分控制:微分项能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。

所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。

五、实验步骤

① P控制

仿真

=3,通过MATLAB命令仿真闭环系统的传递函数。在MATLAB环境下运假设比例增益K

P

行文件。阶跃信号的响应如图所示:

图1.2.1 P控制下的响应

可以看出,添加P控制器后,系统并不能稳定。改变Kp的值后,系统还是不稳定的,可以看出,对于一个惯性系统,在P控制器作用下,系统会保持一个等幅振荡。

实验

i.按下面步骤在MATLAB Simulink环境下运行演示程序。

图1.2.2 系统仿真图

ii. 将控制器设置为P控制器。

iii. 设置目标位置为200mm。

iv. 用手指将小球拨动到100mm的地方。

v. 松开小球,系统将对小球的位置进行平衡。

vi. 改变并观察其响应,实验结果如下,比较实验结果和仿真结果的区别。(建议参数

不要设置过大)

图1.2.3 实验结果图

分析:由实验结果可以看出,图像纵坐标的最大值大约为0.28m,而理论值应为0.4m,所以当只有P控制时系统存在稳态误差。

② PD控制

仿真

kp = 6; kd = 6时,仿真结果如图所示:

图1.2.4 PD控制下的响应

由仿真结果图可以看出,闭环系统是一个稳定的系统,但是超调和稳定时间都过大。

实验

i. 按下面步骤在MATLAB Simulink中运行演示程序。

ii. 切换控制器为PD控制器,并设置如下的参数。

iii. 设置目标位置为200mm。

iv. 移动小球的位置,使其大概在50mm的地方。

v. 松开小球,系统将试图稳定小球的位置。

vi. 改变KP和KD ,观察其响应。

图1.2.5 PD控制器实验结果图

分析:由实验结果看出,在PD控制器的作用下,系统可以很快的平衡,但是稳态误差比较大。

③ PID控制

仿真

在MATLAB 仿真程序中,设置控制参数: K

P =10, K

I

=1, K

D

=20,仿真结果如下:

图1.2.6 PID控制器下的仿真结果

可以看出,超调已经满足要求,但是调整时间还需要减少,为减少调整时间,我们可以稍增大KP。

实验

i.按照前面的实验步骤,参考前面的示例进行球杆系统的实验,选择PID控制器为: KP =10, KI =1, KD =10,实际的控制效果如图所示:

图1.2.7 PID控制实验结果1

ⅱ.改变控制器参数,设KP =15, KI =0.5, KD =10,结果如图所示:

图1.2.8 PID控制实验结果2

可以看出,明显的减少了系统的稳态误差,基本上满足了设计要求,对于这个特定的控制问题,不需要积分控制就可以稳定系统,但是,对于一个控制系统,往往会有很多的控制器设计方法,可以尝试不同的控制参数,直到得到满意的控制效果。

六、实验总结

通过这个实验,我了解了P、I、D控制对控制系统的影响,在实际应用中,应根据不同性能指标的要求,合理选择PID的参数,以达到满意的控制效果。

实验三球杆系统的根轨迹法控制

一、实验目的

学会用根轨迹法设计矫正器;

二、实验要求

1、用根轨迹法设计校正器;

2、获得校正后根轨迹图及阶跃响应图;

三、实验设备

1、球杆系统;

2、计算机MATLAB 平台;

四、实验原理

根据开环零、极点位置,分析系统的闭环特性,通过增加极点或零点(校正器)的方法,使根轨迹以及系统闭环响应发生改变。

五、实验步骤

仿真

编写代码绘制根轨迹图和仿真图:

图1.3.1 未校正系统的根轨迹图

可从MatLab命令窗口看到未校正系统的开环传递函数,有两个重极点,图中根轨迹从原点开始沿虚轴指向无穷远,仿真结果如图所示:

图1.3.2 未校正系统的闭环单位阶跃响应

下面采用超前校正,编写代码绘制校正后的根轨迹图和仿真图:

图1.3.3 超前校正后系统的根轨迹图

仿真结果如图所示:

图1.3.4 超前校正后系统的单位阶跃响应

用获得的实验参数运行….mdl文件仿真:点击进入Simulink Library Brower窗口,打开工具箱Googol Education Products\4. Ball & Beam\C. Root Locus Control,运行Root Locus Simu程序,打开仿真程序界面;选通并打开其中的零、极点-增益型模块,将其参数设置为前面运行M文件得到的数据,点击运行程序。若想看到仿真图形,须双击Scope1输出模块。

图1.3.5 超前校正后系统的单位阶跃响应

实验

为正常运行下面的程序,应将MatLab主窗口的Current Directory文本框设置为球杆控制程序的系统文件夹;

分别选取超调量(百分比)σ=5、σ=1,重复运行所编M程序,记下数据。

在前面仿真操作时打开的Simulink工具箱路径下,运行Root Locus Control程序,确认串行口COM Port为1后,双击Start Real Control模块,打开控制程序界面;

分别打开零、极点-增益型模块,将其参数设置为前面仿真时得到的数据。选通其中的模块点击运行程序。若小球往返滚动呈振荡态势,需要减小增益值以抑制超调量,耐心调整直到小球稳定。比较各组数据的实验结果。

将小球拨离平衡位置,观察其恢复原位的过程。

一般来说,提高增益有利于小球运动的快速性,但会加大超调量。

常数模块REFPOS1一般是选通的,是小球的参考位置,单位mm。

增益模块Real Position1用于调节小球稳定后的实际位置与参考位置的差异。

有时会出现相同情况下,小球位置不一,原因很多,可能是元器件参数漂移,或是机械

系统阻尼过大,可不必理会。若小球死在非平衡位置,将其拨离死区即可。

σ=5时,运行M程序得到以下结果:

图1.3.6 σ=5时系统的根轨迹图

图1.3.7 σ=5时系统的单位阶跃响应

图1.3.8 σ=5时系统的单位阶跃响应σ=1时,运行M程序得到以下结果:

图1.3.9 σ=1时系统的根轨迹图

图1.3.10 σ=1时系统的单位阶跃响应

六、实验记录

表1.3.1 不同超调下的系统零极点以及增益

实验四球杆系统的频率响应法控制

一、实验目的

学会用频率响应法设计校正器。

二、实验要求

1、用频率响应法设计校正器;

2、获得校正后的Bode图和阶跃响应图;

三、实验设备

1、球杆系统;

2、计算机MATLAB 平台;

四、实验原理

频率响应法的主要思想是根据开环传递函数的Bode图,给系统添加一个校正器,改变开环系统的Bode图,从而改变闭环系统的响应,使其达到期望的性能。

五、实验步骤

仿真

根据系统开环传递函数,编写相应代码绘制Bode图和仿真图:

仿真结果如图所示:

图1.4.2 未校正系统的闭环单位阶跃响应

为改善系统性能,必须增加相位裕量。添加超前校正器后的Bode图如下所示:

说明:在以上Bode图中,“Magnitude”图中从上到下的曲线分别是Wc=1, Wc=2, Wc=3;“Phase”图中从左到右的曲线分别是Wc=1, Wc=2, Wc=3。

仿真结果如图所示:

图1.4.4 超前校正后系统的单位阶跃响应

说明:从左到右的三条曲线分别为Wc=1, Wc=2, Wc=3。综合比较仿真结果,Wc=1对应的曲线虽快速性好,但超调量过大;Wc=2对应的曲线超调量好些,但快速性不足。可以设Wc为其它数值再行仿真,以对结果进行比较。

实验

为正常运行下面的程序,应将MatLab主窗口的Current Directory文本框设置为球杆控制程序的系统文件夹;

点击进入Simulink Library Brower窗口,打开工具箱Googol Education Products\4. Ball & Beam\D. Frequency Response Control,运行Frequency Response Control程序,确认串行口COM Port为1后,双击Start Real Control模块,打开控制程序界面;

分别打开传递函数型模块,将其参数设置为前面仿真时得到的数据。选通其中的模

相关文档
相关文档 最新文档