- 9
- 0
- 约4.79千字
- 约 11页
- 2017-04-11 发布于四川
- 举报
2用MATLAB进行控制系统时域分析
实验三 用MATLAB进行控制系统的时域分析
[实验目的]
1.研究线性系统在典型输入信号作用下的暂态响应;
2.熟悉线性系统的暂态性能指标;
3.研究二阶系统重要参数阻尼比ξ对系统动态性能的影响;
4.熟悉在MATLAB下判断系统稳定性的方法;
5.熟悉在MATLAB下求取稳态误差的方法。
[实验指导]
MATLAB中有两类用于求解系统时域响应的方法。
其一是利用 MATLAB 中的控制系统工具箱(Control System Toolbox)提供的函数(命令);
其二是Simulink仿真,它主要用于对复杂系统进行建模和仿真。
一、用MATLAB函数(命令)进行暂态响应分析
1 求取线性连续系统的单位阶跃响应的函数——step
基本格式为:
step(sys)
step(num,den)
step(A,B,C,D)
step(sys,t)
step(sys1,sys2,…,t)
y=step(sys,t)
[y,t]=step(sys)
[y,t,x]=step(sys)
其中模型对象的类型如下sys = tf(num,den) 多项式模型 sys = zpk(z,p,k) 零点极点模型 sys = ss(a,b,c,d) 状态空间模型
,时间向量t的范围自动设定。
给定时间向量t,如t=0:0.01:2。
返回响应变量y,时间向量t,以及状态变量x2 求取线性连续系统的单位脉冲响应的函数——impulse
基本格式为:
impulse(sys)
impulse(num,den)
impulse (sys,tf)
impulse (sys,t)
impulse (sys1,sys2,…,t)
y=impulse(sys,t)
[y,t]=impulse(sys)
[y,t,x]=impulse (sys)
3 求取线性连续系统的单位斜坡响应
MATLAB没有直接求系统斜坡响应的功能函数。在求取控制系统的斜坡响应时,通常用阶跃响应函数step()求取传递函数为 G (s)/s的系统的阶跃响应,则其结果就是原系统G (s)的斜坡响应。原因是,单位阶跃信号的拉氏变换为1/s ,而单位斜坡信号的拉氏变换为1/s2 。
4.求取线性连续系统对任意输入的响应的函数——lsim
其格式为
y=lsim(sys,u,t)
其中,t为仿真时间,u为控制系统的任意输入信号。
5.暂态响应性能指标
在阶跃响应曲线窗口,使用右键弹出浮动菜单,选择其中的Characteristics子菜单,有4个子项:
①Peak Response 峰值响应,点击将出现标峰值记点,单击此标记点可获得峰值幅值,超调量和峰值时间。
②Settling Time 调节时间,点击将出现调节时间标记点,单击此标记点即可获得调节时间。
③Rise Time 上升时间,点击将出现上升时间标记点,单击此标记点即可获得上升时间。
④Steady State 稳定状态,若系统稳定,点击将在稳态值处出现标记点,单击此标记点即可获得稳态值;若系统不稳定,标记点不会出现。
对于不同的系统响应类型,Characteristics菜单的内容并不相同。虽然不同响应曲线的特性参数不相同,但是均可以使用类似的方法从系统响应曲线中获得相应的信息。
6、其它
①hold on 命令:可以允许在已经画曲线的图形窗口上再画新曲线;hold off命令取消该功能。
②figure(i)命令:打开第i个图形窗口,把曲线绘在该图形窗口。
③grid on命令:使图上出现网格。
④subplot(m,n,p)命令;把一个画面分成m×n个图形区域, p代表当前的区域号,可在每个区域中分别画一个图。
⑤也可以通过主界面菜单file/new/figure打开1个新图形窗口,系统自动为其编号。
7.举例
例1:系统传递函数为,求其阶跃响应、脉冲响应、斜坡响应、
①分3个图形窗口分别显示的程序:
n=[20,33];d=[1,2,10];sys=tf(n,d);step(sys);figure(2);impulse(sys);
n1=[20,33];d1=[1,2,10,0];sys1=tf(n1,d1);figure(3);step(sys1)
运行结果:
③在1个窗口中的3个子图形窗口显示的程序:
figure(1);n=[20,33];d=[1,2,10];sys=tf(n,d);subplot(2,2,1);impulse(sys);
subplot(2,2,2);n1=[20,33];d1=[1,2,10,0];sys1=tf(n1,d1);step(sys1);
subplot(2,2,3);step(sys)
原创力文档

文档评论(0)