当前位置:首页 > 实验一 离散时间信号与系统响应 - 图文
实验题目: 实验一 离散时间信号与系统响应 一、实验目的
1.观察离散系统的频率响应和单位脉冲响应并学会其应用。 2.掌握用MATLAB实现线性卷积的方法及差分方程的求解方法。 3.了解数字信号采样率转换过程中的频谱特征。
4.通过观察采样信号的混叠现象,进一步理解奈奎斯特采样频率的意义。
班 级 学号 姓 名 同组人 实验日期 室温 大气压 成 绩
二、实验仪器
计算机一台 MATLAB7.0软件
三、实验原理
在数字信号处理中,离散时间信号通常用序列{x(n)}表示。离散时间系统在数学上定义为将输入序列x(n)映射成输出序列y(n)的唯一性变换或运算,亦即将一个序列变换成另一个序列的系统。
(n)y(n)记为y(n)=T[x(n)],通常将上式表示成图?x??算子T[?]表示变换,对T[?]?T[?]????所示的框图。
加上种种约束条件,就可以定义出各类离散时间系统。
1.频率响应:在工程上进行时域分析和轨迹分析用频率响应法,它是分析和设计系统的一中有效经典的方法。线性时不变系统输入输出关系y(n)=x(n)*h(n)。H(ejw)是频率响应,离散时间系统的线性卷积,由理论学习我们可知,对于线性时不变离散系统,任意的输入信号
?x(n)??k???x(k)?(n?k)?...?x(n?1)?(n?1)?x(0)?(n)?x(1)?(n?1)?...x(n)可以用δ(n)及其位移的线性组合来表示,即,
当输入δ(n)时,系统的输出y(n)=h(n)。
2.卷积:y=conv(h,x),计算向量h和x的卷积,结果放在y中。由系统的线性移不变性质可以得
?到系统对x(n)的响应y(n)为y(n)??k???称为离散系统的线性卷积,简记为y(n)=x(n)*h(n),x(k)h(n?k),
也就是说,通过系统的冲激响应,可以将输入信号与系统的冲激响应进行卷积运算,可求得系统的响应。MATLAB提供了进行卷积预运算的conv子函数。求解两个序列的卷积,很重要的问题在于卷积结果的时宽区间如何确定。在MATLAB中,卷积的子函数conv默认两个信号的时间序列从n=0开始,y对应的时间序号也从n=0开始。模拟系统通常用微分方程描述,而离散系统则是用差分方程来描述。对于离散系统来说,输入序列x(n)和输出序列y(n)将满足下列N阶常系数差分方
1
程?biy(n?i)?i?0N?aix(n?i),一般来说,这类系统不必是因果的。应用此差分方程式描述系统时,
i?0M如果没有附加的制约条件看,则它不能唯一地确定一个系统的输入和输出关系。可以利用MATLAB求差分方程的解,此时调用函数filter,y=filter(a,b,x),参数x为输入向量(序列),a,b分别为上式中的差分方程系数ai、bi构成的向量,y为输出结果。
3.单位脉冲响应:系统对单位脉冲输入的响应。也称作记忆函数。脉冲响应确定一个线性系统的特性,包含有与频率域中的传输函数相同的信息,而传输函数是脉冲响应的傅立叶变换。线性系统的输出由系统的输入与它的脉冲响应的卷积给出。单位脉冲响应是指一个无穷大的瞬时冲激,并且由于其在时间轴上的积分为1,而t又趋向于零,所以单位脉冲响应的大小应该是无穷大,但是要知道的是,无穷大量也有大小比较,所以单位脉冲响应可以用一个系数对之进行量度。
四、实验内容
1、给定一因果系统,求出并绘制H(z)的幅频响应与相频响应。
(1)实验程序: a=[1 sqrt(2) 1]; b=[1 -0.67 0.9]; w=0:2*pi/100:2*pi; h=freqz(a,b,w); subplot(3,1,1); plot(w/pi,abs(h)); grid on;
title('系统函数H(z)的幅度谱'); xlabel('w/\\pi'); ylabel('幅度');
subplot(3,1,2);plot(w/pi,angle(h)); grid on;
title('系统函数H(z)的相位谱'); xlabel('w/\\pi'); ylabel('相位/rad'); subplot(3,1,3); zplane(a,b); xlabel('Re[z]'); ylabel('jIm[z]');
title('系统函数H(z)的零极点分布图'); grid on;
2、计算系列{8 -2 -1 2 3}和序列{2 3 -1 -3}的离散卷积,并作图表示卷积结果。 a=[8 -2 -1 2 3]; b=[2 3 -1 -3]; c=conv(a,b);
2
H(z)?(1?2z?z)/(1?0.67z?0.92z)?1?2?1?2
m=length(c)-1; n=0:1:m;
stem(n,c);grid on; xlabel('n'); ylabel('幅度');
title(' 离散卷积的结果');
3、求以下差分方程所描述系统的单位脉冲响应h(n),0≤n<50 y(n)+0.1y(n-1)-0.06y(n-2)=x(n)-2x(n-1).
a=[1 0.1 -0.06]; b=[1 -2];
x=zeros(1,49); n=[0:49]; x(1)=1;
h=filter(b,a,x); stem(h);grid on;
title('Impulse Response'); xlabel('n'); ylabel('h(n)');
4、一信号是三个正弦信号的和,正弦信号的频率为50Hz、500Hz、1000Hz,该信号以800Hz采样。用适当数量的样本画出该信号,并讨论信号的混叠状况。 clear all; n=0:99;
x=sin(0.0625*2*pi*n) +sin(0.625*2*pi*n) +sin(1.25*2*pi*n); y=x(1:100); subplot(2,1,1); stem(n,y);grid on; title('抽样后的图像'); xlabel('n');
3
ylabel('幅值'); [h,w]=freqz(x); subplot(2,1,2);
plot(w(1:314),abs(h(1:314))); grid on;
title('幅频响应图像'); xlabel('ω'); ylabel('幅度');
五、实验总结
因为上学期已经学过了matlab软件,但有些matlab语言有些生疏了。通过查阅matlab书本的相关知识,使我对这次实验有了更进一步的了解。通过实验我掌握了用MATLAB实验线性卷积的方法,即调用子函数conv,c=conv(a,b),及差分方程的求解方法,即调用函数filter,y=filter(a,b,x),参数x为输入向量(序列),a,b分别为上式中的差分方程系数ai、bi构成的向量,y为输出结果。观察到了离散系统的频率响应。另外通过实验我还了解了数字信号采样率转换过程中的频谱特征。
4
共分享92篇相关文档