图7
利用simulink进行仿真,得到的阶跃响应曲线如图7所示。
同样,为了对比范围不同时系统的阶跃响应,采用Simulink 中的To Workspace模块,将仿真的结果保存在工作空间的数组里。绘制阶跃响应曲线的代码如下:
plot(tout1,out1); hold on; grid on; gtext('0.2’); plot(tout2,out2); gtext('0.5’); plot(tout3,out3); gtext('1.0’); plot(tout4,out4); gtext('2.0’);
运行程序,结果如图8:
图8
图中曲线上标注的0.2、0.5、1.0、2.0表示死区范围,不难看出,随着死区范围的增加,系统开始响应阶跃输入信号的时刻也逐渐推迟。这是因为死区环节会将死区内的输入“忽略”,使得系统的响应变慢。
25
步骤4 尝试在系统中同时加入死区单元和饱和单元,系统框图如图9所示。
图9
利用simulinh进行仿真,得到的阶跃响应曲线如图10所示:
图10
步骤5 在系统中引入滞环非线性环节。结果如下:
26
实验8 MATLAB/Simulink在离散控制系统中的应用
一、实验目的
1、掌握
2、了解采样周期对离散系统稳定性的影响。 二、实验设备
电脑一台;MATLAB仿真软件一个 三、实验内容
1、建立题目中要求的数学模型,MATLAB代码如下。
clc; clear; Ts = 1; num = [1,1]; den = [1,0,0];
sys_continue = tf(num,den)
sys_discrete = c2d(sys_continue,Ts,'zoh') sys_k = 1;
sys_open = sys_k * sys_discrete 运行结果如下 Transfer function: 1.5 z - 0.5 ------------- z^2 - 2 z + 1
27
Sampling time: 1
2、绘制系统的根轨迹。 代码如下
figure(1); rlocus(sys_discrete);
运行结果如图1所示。
图1
从图中可以读到交点出的开环增益为K=0;也就是说,使闭环系统稳定的K的范围是0 sys_k = 2; figure(2); margin(sys_k * sys_discrete); figure(3); [dnum,dden] = tfdata(sys_k * sys_discrete,'v') dnyquist(dnum, dden, Ts) grid on; 28 系统幅频特性曲线 Nyquist曲线 从图中可以看出,K=2时,系统处于临界稳定状态,Nyquist曲线恰好穿过(-1,0)点。可以确,系统稳定时,K的取值范围是(0,2)。 3、分析系统的阶跃响应。 给K 赋予不同的值,代码如下。 sys_k = 1; figure(4); sys_close = feedback(sys_k * sys_discrete,1); [dnumc,ddenc] = tfdata(sys_close,'v'); dstep(dnumc,ddenc,25); sys_k = 2; figure(5); 29 百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库MATLABSimulink与控制系统仿真实验报告(6)在线全文阅读。
相关推荐: