信号与系统 课程实验报告
实验四 实验名称
信号的时域分析 及Matlab 实现 系 别 教师姓名
实验地点 5309 实验日期 2011-06-20
学生姓名
学号 一、实验内容
1.预习实验原理。
2.对实验内容编写程序(M 文件),上机运行。
3.记录并整理实验数据。
二、实验目的
1.掌握用Matlab 分析系统时间响应的方法。
2.掌握用Matlab 分析连续、离散系统的冲激响应的方法。
3.理解系统零、极点分布与系统稳定性关系。
三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况)
计算机一台(安装MATLAB6.5版本或以上版本)
四、实验试做记录(含程序、数据记录及分析)
1.设)
2)(1()(p s p s s s H --= 设①p1=-2,p2=-30; ②p1=-2,p2=3
(1)针对极点参数①②,画出系统零、极点分布图,判断该系统稳定性。
程序:
clear
num=[1];
den=[1,32,60];
[r,poles,k]=residue(num,den);
p=roots(den);
z=roots(num);
subplot(2,2,1);plot(real(p),imag(p),'*');hold on;
plot(real(z),imag(z),'o');grid on
T=0:0.1:10;
y1=impulse(num,den,T);
subplot(2,2,2);plot(T,y1);grid;title('脉冲响应')
结果:
位于s左半平面,稳定
(2)针对极点参数①②,绘出系统的脉冲响应曲线,并观察t→∞时,脉冲响应变化趋势。
程序:
clear
num=[1];
den=[1,-1,-6];
[r,poles,k]=residue(num,den);
p=roots(den);
z=roots(num);
subplot(2,2,1);plot(real(p),imag(p),'*');hold on;
plot(real(z),imag(z),'o');grid on
T=0:0.1:10;
y1=impulse(num,den,T);
subplot(2,2,2);plot(T,y1);grid;title('脉冲响应')
结果:
由系统零、极点分布图可知,该系统有一极点位于s右半平面,故系统是不稳定的。
(3)针对极点参数①,绘出系统的频响曲线。
(必做)
程序:
w=linspace(0,5,200);
b=[1 0];
a=[1 32 60];
H=freqs(b,a,w);
subplot(2,1,1);
plot(w,abs(H));
set(gca,'xtick',[0 1 2 3 4 5]);
set(gca,'ytick',[0 0.4 0.707 1]);
xlabel('\omega');
ylabel('|H|(j\omega)|');
subplot(2,1,2);
plot(w,angle(H));
set(gca,'xtick',[0 1 2 3 4 5]);
xlabel('\omega');
ylabel('\phi(\omega)');
结果:
2.利用filter命令求下面系统的冲激响应:
y(n)-0.7y(n-1)-0.6y(n-2)+y(n-3)=x(n)+0.5x(n-1)。
(必做)程序:
A=[1,-0.7,-0.6,1];
B=[1,0.5];
n=[-20:100];
X=[n==0];
y=filter(B,A,X);
stem(n,y);
title('冲击响应');
grid
结果:
五、实验总结
通过本次实验,我学习了如何用Matlab软件产生基本信号(连续/离散的正弦、方波、锯齿波、Sinc函数)的方法,并且懂得了如何应用Matlab软件实现信号的加、减、乘运算,可以通过应用Matlab软件实现信号的时移、反折、尺度变换。