1、机械工程控制基础实验指导书姓名: 班级: 概述:MATLAB是Math Works公司的软件产品,是一个高级的数值分析、处理和计算的软件,其强大的矩阵运算能力和完美的图形可视化功能,使得它成为国际控制界应用最广泛的首选计算机工具。MATLAB具有良好的的可扩展性,其函数大多数为ASCII文件,可以直接进行编辑、修改;其工具箱可以任意增加,任何人可以生成自己的MATLAB工具箱。因此,很多研究成果被直接做成MATLAB工具箱发表。SIMULINK是基于模型化图形的动态系统仿真软件,是MATLAB的一个工具箱,它使系统分析进入一个崭新的阶段,它不需要过多地了解数值问题,而是侧重于系统的建模、分析和
2、设计。其良好的人机界面及周到的帮助功能使得它广为科技界和工程界采用。因此,本试验将尽可能把MATLAB和SIMULINK工具应用于控制系统的分析和计算中。试验一:用MATLAB进行传递函数的描述1、试验目的: (1)对MATLAB进行初步的了解;(2)掌握应用MATLAB建立传递函数的常用方法(3)了解应用MATLAB对高阶函数进行部分分式的展开。2、试验学时:3学时3、试验方法:(1)传递函数的分子分母多项式模型传递函数表示为 MATLAB中可直接用分子、分母多项式系数表示,即num=bm, bm-1,b0den=am, am-1,a0G=tf(num,den);当分子或分母表现为多项式乘积
3、形式时,可利用conv函数来获取分子或分母的系数数组。掌握conv函数的使用方法。(2)传递函数的零极点增益模型传递函数为 其中:K为系统增益,zi为零点,pj为极点在MATLAB中零极点增益模型用z,p,K矢量组表示。即:z=z1,z2,zmp=p1,p2,.,pnK=k传递函数表示为 G=zpk(z,p,k);(3)分子分母多项式模型向零极点增益模型转换已知一传递函数,函数tf2zp()可以用来求传递函数的零极点和增益。z,p,k = tf2zp(num,den)(4)部分分式的展开控制系统分析时,常对系统函数进行分解,使其表现为一些基本控制单元的和的形式。MATLAB有一个命令用于求B(
4、S)/A(S)的部分分式展开式。设S的有理分式为 F(S)=B(S)/A(S)=num/den=(b0Sn+b1Sn-1+bn)/(Sn+a1Sn-1+an)式中ai和bi的某些值可能是零。 命令 r,p,k=residue(num,den)MATLAB将按下式给出F(S)部分分式展开式中的留数、极点和余项。有:r(1)、r(2)r(n)是函数的留数,返回给向量r;p(1)、p(2)、p(n)是函数的极点,返回给向量p;K(s)是函数的余项,返回给k。4、试验内容(1)用MATLAB表示传递函数为的系统。程序及结果:(2)已知系统传递函数为 ,将其表示为为零极点增益形式。程序及结果:(3)试求
5、下列函数的部分分式的展开式,写出程序语句和部分分式的结果程序及结果:试验二:时域特性的计算机辅助分析1、试验目的: (1)对MATLAB进行进一步的了解;(2)掌握应用MATLAB求解高阶系统的各种时域响应的求法;(3)掌握系统零极点的求法,从而判断系统的稳定性。2、试验学时:3学时3、试验方法: (1)impluse(num,den),得到传递函数G(S)=num(S)/den(s)表示的脉冲响应曲线; (2)impluse(num,den,t),得到传递函数G(S)=num(S)/den(s)表示的脉冲响应曲线,并可指定时间t; (3)step(num,den),得到以得到传递函数G(S)
6、=num(S)/den(s)表示的脉冲响应曲线;(4)step(num,den,t),得到以得到传递函数G(S)=num(S)/den(s)表示的脉冲响应曲线, 并可指定时间t;(5)lsim(num,den,u,t)计算连续系统的任意输入响应, 得到以得到传递函数G(S)=num(S)/den(s)表示的u输入的响应曲线, 并可指定时间t;(6)root(den),得到多项式den的根;(7)pzmap(num,den),得到传递函数G(S)=num(S)/den(s)表示的系统的零极点图,“”表示极点,“O”表示零点。当使用p,z= pzmap(num,den)时,只得到零极点,不绘制图形
7、。4、试验内容 (1)已知某高阶系统的传递函数为求该系统的单位脉冲响应、单位阶跃响应和单位速度响应和单位加速度响应。获得单位脉冲响应程序语句及图形:获得单位阶跃响应程序语句及图形:获得单位速度响应程序语句及图形:获得单位加速度响应程序语句及图形:(2)已知某高阶系统的传递函数为试求该系统的极点并判断系统的稳定性。程序及结果:(3)已知某高阶系统的传递函数为试求该系统的零极点并判断系统的稳定性,绘制系统的零极点图。程序及结果:试验三:频域特性的计算机辅助分析1、试验目的: (1)对MATLAB进行加深了解;(2)掌握应用MATLAB求解系统的Nyquist图;(3)掌握应用MATLAB求解系统的
8、Bode图;2、试验学时:3学时3、试验方法:(1)nyquist(num,den,w),绘制Nyquist 图。num和den分别表示传递函数的分子和分母中中包含以S的降幂排列的多项式系数。命令Nyquist(num,den,w)可以按指定的频率点W,绘制系统的Nyquist图。(2)bode(num,den,w),绘制Bode图。num和den分别表示传递函数的分子和分母中中包含以S的降幂排列的多项式系数。命令bode (num,den,w)可以按指定的频率点W,绘制系统的bode图。4、试验内容(1)考虑下列系统开环传递函数试利用MATLAB画出Nyquist图程序及结果:(2)系统开环传递函数为试绘制系统的Bode图。程序及结果: