自动控制实验报告——球杆系统倒立摆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、微分控制:微分项能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。