自动控制综合实验讲义课件_第1页
自动控制综合实验讲义课件_第2页
自动控制综合实验讲义课件_第3页
自动控制综合实验讲义课件_第4页
自动控制综合实验讲义课件_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自动控制理论综合实验合肥工业大学电气与自动化实验中心

实验注意事项一:实验前要做好预习,明确实验目的、内容,拟订好实验线路,选定好参数,掌握实验步骤,并将这些内容写入预习报告中。二:实验准备工作就绪后,应经指导老师检查无误方可实验。三:应遵守实验室规则。四:实验结束后,应把仪表、仪器、导线等收拾整齐。实验内容一、线性系统及非线性系统的matlab仿真二、非线性系统的物理模拟分析实验三、球杆系统的控制器设计、matlab仿真及实时控制四、倒立摆的控制器设计、matlab仿真及实时控制非线性系统的matlab仿真在matlab菜单选择:File/newmodel新建一个模板打开Simulink找:Ramp(斜坡)Relay(继电)Saturation(饱和)Deadzone(死区)Sinewave(正弦)Backlash(间隙)线性系统及非线性系统的matlab仿真Ramp(斜坡)的设置Relay(继电)的设置线性系统及非线性系统的matlab仿真Saturation(饱和)Deadzone(死区)线性系统及非线性系统的matlab仿真Sinewave(正弦)Backlash(间隙)线性系统及非线性系统的matlab仿真继电型非线性系统向平面分析线性系统及非线性系统的matlab仿真Step设置relay设置线性系统及非线性系统的matlab仿真带速度负反馈的继电型非线性系统向平面分析线性系统及非线性系统的matlab仿真饱和非线性系统线性系统及非线性系统的matlab仿真Saturation(饱和)设置球杆系统球杆系统球杆系统数字控制原理图球杆系统仿真试验:实验一球杆系统数学模型的建立实验五根轨迹法设计球杆系统控制器实验六频率响应法设计球杆系统控制器实时控制实验七球杆系统在matlab下的实时控制球杆系统仿真实验:可以使用matlab中的m文件,也可以使用simulink搭建相应的系统进行仿真,实验指导书上程序仅供参考。实时控制实验:使用已经搭建好的matlab控制平台进行实时控制。 在matlab的currentdirectory下拉菜单中找“googoltech”,然后再找“ballbeam.mdl”,双击出现如下界面:球杆系统球杆系统注意事项:1、上图中只需要改变虚线框中的数据,即改变你设计的控制器参数和小球目标位置参数,其他的电机参数等不能改变。2、小球目标位置不要设置在杆的两端。3、在系统运行时不要用手或其他工具拉齿轮或球杆。4、建模时的一些参数:m——小球质量(28g)R——小球半径(14.5mm)J=0.4mR2L=400mmd=45mmg=-9.8m/s2倒立摆 倒立摆装置被公认为自动控制理论中的典型试验设备。 因为其控制方法在军工、航天、机器人领域和一般工业过程中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等均涉及到倒置问题,对倒立摆系统的研究在理论上和方法论上均有着深远得意义。倒立摆直线一级倒立摆一级倒立摆计算机控制系统的结构简图 光电码盘1将小车的位移、速度信号反馈给伺服驱动器和运动控制卡,摆杆的角度、角速度信号则由光电码盘2反馈给运动控制卡和伺服驱动器。计算机从运动控制卡中读取实时数据,确定控制决策(小车向那个方向移动、移动的速度、加速度等),并由运动控制卡来实现该控制决策,产生相应的控制量,使电机转动,带动小车运动,保持摆杆的平衡。直线一级倒立摆直线一级倒立摆一级倒立摆结构图直线一级倒立摆工作原理 倒立摆的工作原理可简述为:用一种强有力的控制方法使小车以一定的规律来回跑动,从而使全部摆杆在垂直平面内稳定下来。这样的系统也就是倒立摆控制系统。通过上图可以看出,若小车不动,摆杆会由于重力倒下来;若在水平方向上给小车一个力,则摆杆受到一个力矩,这个力矩使摆杆朝与小车运动方向相反的方向运行,通过规律性的改变小车的受力方向使得摆杆在竖直方向上左右摆动,从而就实现摆杆在竖直方向上的动态平衡。直线一级倒立摆仿真实验: 实验一一级倒立摆建模及性能分析 实验二一级倒立摆的超前校正控制仿真实验 实验三一级倒立摆的PID控制仿真实验选作:实验四一级倒立摆的极点配置控制仿真实验实时控制: 实验五一级倒立摆的PID实时控制实验选作:实验六一级倒立摆的极点配置实时控制实验PID控制基本原理及分析 经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型。PID控制器因其结构简单,容易调节,且不需要对系统建立精确的模型,在控制上应用较广。首先,对于倒立摆系统输出量为摆杆的角度,它的平衡位置为垂直向上的情况。系统控制结构框图如下:直线一级倒立摆闭环系统图图中KD(s)是控制器传递函数,G(s)是被控对象传递函数。PID控制基本原理及分析考虑到输入r(s)=0,结构图可以很容易的变换成:直线一级倒立摆闭环系统简化图

PID控制基本原理及分析该系统的输出为:其中num——被控对象传递函数的分子项den——被控对象传递函数的分母项numPID——PID控制器传递函数的分子项denPID——PID控制器传递函数的分母项通过分析上式就可以得到系统的各项性能。由此可以得到摆杆角度和小车加速度的传递函数:PID控制器的传递函数为:

需仔细调节PID控制器的参数,以得到满意的控制效果。PID控制基本原理及分析MATLAB版实验软件下的实验步骤:1)打开直线一级倒立摆PID控制界面如图所示:(进入MATLABSimulink实时控制工具箱“GoogolEducationProducts”打开“InvertedPendulum\LinearInvertedPendulum\Linear1-StageIPExperiment\PIDExperiments”中的“PIDControlDemo”)直线一级倒立摆直线一级倒立摆MATLAB实时控制界面2)双击“PID”模块进入PID参数设置,如下图所示:

把仿真得到的参数输入PID控制器,点击“OK”保存参数。3)点击编译程序,完成后点击使计算机和倒立摆建立连接。4)缓慢提起倒立摆的摆杆到竖直向上的位置,点击运行程序,检查电机是否上伺服,如果没有上伺服,请关闭电源检查。在程序进入自动控制后松开摆杆,当小车运动到正负限位的位置时,用工具挡一下摆杆,使小车反向运动。修改PID控制参数,观察控制结果的变化。通过不断修改PID参数,最终得到一个满足要求的系统。请将计算步骤、仿真和实验结果完整记录并按照要求完成实验报告。MATLAB版实验软件下的实验步骤直线一级倒立摆实验注意事项操作时人员应该与设备保持安全距离。如果发生异常,马上关闭电控箱电源。上、断电次序必须按:先开弱电(微机)进入WINDOWS环境,后开强电(电控箱);先关强电,后关弱电。系统运行时禁止将手或身体其他部位伸入小车运行轨道之间。实验注意事项注意倒立摆系统可能会因高速撞击两端致螺丝松动,请与实验管理人员联系,将螺丝上紧后再运行系统。开始运行前,倒立摆必须置于初始状态,小车要位于中间位置。传递函数形式

系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示。 num=[b1,b2,…,bm,bm+1] den=[1,a1,…,an-1,an] 注意:它们都是按s的降幂进行排列的。举例:传递函数描述1)》num=[12,24,0,20];den=[24622];2)借助多项式乘法函数conv来处理:》num=4*conv([1,2],conv([1,6,6],[1,6,6]));》den=conv([1,0],conv([1,1],conv([1,1],conv([1,1],[1,3,2,5]))));零极点增益形式

零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。

在MATLAB中零极点增益模型用[Z,P,K]矢量组表示。即:Z=[z1,z2,…,zm]P=[p1,p2,...,pn]K=[k]状态方程形式系统状态空间用(A,B,C,D)矩阵组表示举例:系统为一个两输入两输出系统》A=[16910;31268;47911;5121314];》B=[46;24;22;10];》C=[0021;8022];》D=zeros(2,2);模型的转换与连接模型转换的函数包括:ss2tf:状态空间模型转换为传递函数模型ss2zp:状态空间模型转换为零极点增益模型tf2ss:传递函数模型转换为状态空间模型tf2zp:传递函数模型转换为零极点增益模型zp2ss:零极点增益模型转换为状态空间模型zp2tf:零极点增益模型转换为传递函数模型模型的转换系统的零极点增益模型:》z=[-3];p=[-1,-2,-5];k=6;》[num,den]=zp2tf(z,p,k)》num=00618den=181710》[a,b,c,d]=zp2ss(z,p,k)》a=-1.000000b=12.0000-7.0000-3.1623103.162300c=001.8974d=0注意:零极点的输入可以写出行向量,也可以写出列向量。

利用LTI对象进行模型转换首先利用LTI对象数据形式建立系统模型G=tf(num,den)G=zpk(z,p,k)G=ss(A,B,C,D)再利用以下的函数语句实现不同模型的转换G1=tf(G)G2=zpk(G)G3=ss(G)利用以下的函数语句获取模型参数[num,den]=tfdata(G,’v’)[z,p,k]=zpkdata(G,’v’)[A,B,C,D]=ssdata(G,’v’)反馈:feedbacksys=feedback(sys1,sys2) 将两个系统按反馈方式连接,一般而言,系统1为对象,系统2为反馈控制器。sys=feedback(sys1,sys2,sign) 系统1的所有输出连接到系统2的输入,系统2的所有输出连接到系统1的输入,sign用来指示系统2输出到系统1输入的连接符号,sign缺省时,默认为负,即sign=-1。总系统的输入/输出数等同于系统1。绘图命令plot是最基本的二维图形命令,它是以MATLAB的内部函数形式出现的。格式:plot(y),plot(x,y),plot(x1,y1,x2,y2,…)说明: (1)plot(y):当y为向量时,则以y的元素为纵坐标,以相应元素下标为横坐标,绘制连线图。 (2)plot(x,y):当y和x为同维向量,则以x为横坐标、y为纵坐标绘制连线图。 (3)plot(x1,y1,x2,y2,…):每对x、y必须符合plot(x,y)中的要求,不同对之间没有影响,命令将对每一对x,y绘制曲线。figure%建立一个新的图形窗口,并指定为当前窗口用于图形输出Subplot%把多个图形绘在一个图形窗口中。subplot(m,n,I) %把图形窗口分成m×n个小图形区域,并指定第i个区域为图形的绘制区域。图形区域的编排采用行优先。删格控制:控制图形窗口的栅格是否被显示。

gridon

%显示栅格 gridoff %隐藏栅格追加控制:控制绘图方式,即在当前窗口绘图时是否清除原窗口上来的图形 holdon

%绘图时不清除绘图窗口中原有的图形 holdoff %绘图时清除绘图窗口中原有的所有图形pzmap:绘制线性系统的零极点图rlocus:求系统根轨迹。rlocfind:计算给定一组根的根轨迹增益。sgr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论