武汉工程大学数字信号处理实验二时域离散系统及系统响应
- 格式:doc
- 大小:74.00 KB
- 文档页数:9
实验报告2012年04月26 日课程名称:数字信号处理实验名称:系统及系统响应班级:学号:姓名:实验二系统及系统响应一、实验目的(1)观察离散系统的频率响应;(2)熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;(3)利用序列的FT对连续信号、离散信号及系统响应进行频域分析;(4)利用卷积方法观察分析系统的时域特性。
二、实验内容(1)给定一因果系统H(z)= ,求出并绘制H(z)的幅频响应与相频响应;(2)对信号x a(t)=Au(n) 0n50 其中A=444.128,a=50,=50,实现下列实验内容:a、取采样频率fs=10KHZ,观察所得采样x a(n)的幅频特性|X()|和图中的|Xa(j)|在折叠频率附近有无明显差别。
b、改变采样频率fs=1KHZ,观察|X()|的变化,并作记录:进一步降低采样频率,fs=300HZ,观察频谱混叠是否明显存在,说明原因,并记录这时的|X()|曲线。
(3)给定系统的单位抽样响应为h1(n)=R10(n)a、利用线性卷积求信号x1(n)=(n),通过该系统的响应y1(n)。
比较所求响应y1(n)和h1(n)之间有无差别,绘图说明,并用所学理论解释所得结果。
b、利用线性卷积求信号x2(n)=R10(n),通过该系统的响应y2(n),并判断y2(n)图形及其非0值序列长度是否与理论结果一致,改变x2(n)的长度,取N=5,重复该试验。
注意参数变化的影响,说明变化前后的差异,并解释所得结果。
(4)求x(n)=11(n+2)+7(n+1)-(n-1)+4(n-2)+2(n-3)通过系统h(n)=2(n+1)+3(n)-5(n-2)+2(n-3)+(n-4)的响应y(n)。
三、实验程序及解析(1)1、程序clear; close all;b=[1,sqrt(2),1];a=[1,-0.67,0.9];[h,w]=freqz(b,a);am=20*log10(abs(h));% am=20*log10(abs(h))为幅频响应取dBsubplot(2,1,1);%将窗口划分为2*1的小窗口并选择第一个显示plot(w,abs(h));xlabel('w');ylabel('幅频响应');title('系统响应')ph=angle(h);subplot(2,1,2); %选择第二个窗口显示plot(w,ph);xlabel('w');ylabel('相频响应');2、系统响应结果图1 因果系统的H(z)的系统响应3、结果分析分析z域系统的特性主要是由系统的零点和极点的分布得出结论的。
实验一信号、系统及系统响应一、实验目的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定的理解。
2、熟悉时域离散系统的时域特性。
3、利用卷积方法观察分析系统的时域特性。
4、掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。
二、实验原理采样的的过程既是连续信号离散化的过程。
采用单位冲击串进行采样,为使采样信号能不失真的还原为采样前的信号,根据奈奎斯特采样率,采样频率应该大于信号最高频率的2倍。
因为时域的采样既是对时域的离散化处理,时域离散频域会进行周期延拓,为了防止频域频谱混叠,必须满足奈奎斯特采样定律。
线性卷积的过程为:反褶,移位,相乘,相加。
设一个N1点的序列与一个N2的序列进行卷积则得到N1+N2-1点的序列。
时域卷积,对应频域的相乘。
序列的傅里叶变换即DTFT 。
具有的性质有: 线性,移位性,对偶性,等等。
三、实验内容及步骤1)分析采样序列的特性。
产生采样序列()a x n ,A 444.128=,a =,0Ω=。
a 、 取采样频率s f 1kHz =,即T 1ms =。
观察所采样()a x n 的幅频特性()j X e ω和)(t x a 的幅频特性()X j Ω在折叠频率处有无明显差别。
应当注意,实验中所得频谱是用序列的傅立叶变换公式求得的,所以在频率量度上存在关系:T ω=Ω。
b 、改变采样频率,s f 300Hz =,观察()j X eω的变化并做记录。
c 、 进一步降低采样频率,s f 200Hz =,观察频谱混叠是否明显存在,说明原因,并记录()j X e ω的幅频曲线。
上图是采用不同采样频率时所得到的序列及其对应的傅里叶变换,从图中可以看到,当采样频率比较低时,频谱会发生混叠,且频率越低,混叠现象越明显。
增大采样频率可以有效地防止混叠。
2) 离散信号、系统和系统响应分析。
a 、观察信号()b x n 和系统h ()b n 的时域和频域持性;利用线形卷积求信号()b x n 通过系统h ()b n 的响应y(n),比较所求响应y(n)和h ()b n 的时域及频域特性,注意它们之间有无差异,绘图说明,并用所学结论解释所得结果。
实验二 时域采样及离散时间系统一、实验目的1.理解时域采样的概念及方法。
2.掌握计算线性时不变系统的冲激响应的方法。
3.掌握离散时间信号的z 变换和z 反变换分析4.了解用用矩阵-向量乘法求序列的离散时间傅里叶变换(DTFT)5.了解有限长序列的离散傅里叶变换(DFT )二、实验原理(一)信号采样采样就是利用周期性采样脉冲序列p T (t),从连续信号x a (t)中抽取一系列的离散值,得到采样信号即离散时间信号。
(二)线性时不变离散时间系统的冲激响应离散系统对单位脉冲序列()n δ的响应称为冲激响应,用h(n)表示。
线性时不变离散系统对输入信号x(n)的响应y(n)可用h(n)来表示:∑∞-∞=-=k k n x k h n y )()()(。
(三)z 变换和逆z 变换序列()n x 的z 变换定义为:()()∑∞-∞=-=n n z n x z X ,其中,z 是复变量。
相应地,单边z 变换定义为:()()∑∞=-=0n n zn x z XMATLAB 提供了计算离散时间信号单边z 变换的函数ztrans 和z 反变换函数iztrans : Z=ztrans(x),x=iztrans(z)。
上式中的x 和Z 分别为时域表达式和z 域表达式的符号表示,可通过sym 函数来定义。
(四)序列的离散时间傅里叶变换(DTFT)1.序列x(n)的离散时间傅里叶变换定义为:()()j j n n X e x n e ωω∞-=-∞=∑)(ωj e X 是变量ω的连续函数。
)(ωj e X 并可写为实部和虚部相加的形式:)()()(ωωωj im j re j e jX e X e X +=)(ωj e X 也可以表示为:)(|)(|)(ωθωωj j j e e X e X =。
其中,)}(arg{)(ωωθj e X =。
|)(|ωj e X 称为幅度函数,)(ωθ称为相位函数,又分别称为幅度谱和相位谱,都是ω的实函数。
本科学生验证性实验报告学号104090459 静学院物电学院专业、班级10电子实验课程名称数字信号处理实验教师及职称卫平教授开课学期2013 至2013 学年下学期填报时间2013 年 5 月23 日师大学教务处编印(1).为了省时间以及编译的方便性,程序应该在Blank M-File 中输入,而不应该在Command Window 中直接运行;(2).在使用MA TLAB 时应注意中英输入法的切换,在中文输入法输入程序时得到的程序是错误的;(3). MATLAB 中两个信号相乘表示为x.*u,中间有个‘.’,同样两个信号相除也是如此,也就是在实验中要注意乘和点乘的区别。
二.实验容1.实验现象与结果1..已知某LTI 系统的差分方程为: (1)初始状态 ,输入计算系统的完全响应。
(2)当以下三个信号分别通过系统时,分别计算离散系统的零状态响应:(3)该系统具有什么特性?(1)a=[1,-1.143,0.412];b=[0.0675,0.1349,0.0675];N=100;x=ones(1,N);zi=filtic(b,a,[1,2]);y=filter(b,a,x,zi)stem(y);(2)a=[1,-1.143,0.412];b=[0.0675,0.1349,0.0675];N=100;k=1:N;x1=cos(pi/10*k);y1=filter(b,a,x1)stem(y1);]2[0675.0]1[1349.0][0675.0]2[412.0]1[143.1][-+-+=-+--k x k x k x k y k y k y 2]2[,1]1[=-=-y y ][][k u k x =][)107cos(][];[)5cos(][];[)10cos(][321k u k k x k u k k x k u k k x πππ===x2=cos(pi/5*k);y2=filter(b,a,x2) stem(y2);x3=cos(7*pi/10*k); y3=filter(b,a,x3)stem(y3);4.已知某离散系统的输入输出序列。
实验二时域离散系统及系统响应一、实验目的1、掌握求解离散时间系统冲激响应和阶跃响应的方法;2、进一步理解卷积定理,掌握应用线性卷积求解离散时间系统响应的基本方法;3、掌握离散系统的响应特点。
二、实验内容1、请分别用impz 和dstep函数求解下面离散时间系统的冲激响应和阶跃响应。
(1)系统的差分方程为:)ynnxy-=(n-+y+n)2.0866((648.0()1.0)a=[1,-0.8,0.64];b=[0.866,0,0];n=20;hn=impz(b,a,n); %冲激响应gn=dstep(b,a,n); %阶跃响应subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线title('系统的单位冲激响应');ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线title('系统的单位阶跃响应');ylabel('g(n)');xlabel('n');axis([0,n,1.1*min(gn),1.1*max(gn)]);2468101214161820-0.4-0.200.20.40.60.8系统的单位冲激响应h (n )n246810121416182011.21.41.6系统的单位阶跃响应g (n )n(2)系统的系统函数为:21115.01)(---+--=z z z z Ha=[1,-1,1]; b=[1,-0.5,0]; n=20;hn=impz(b,a,n); %冲激响应 gn=dstep(b,a,n); %阶跃响应subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线 title('系统的单位冲激响应');ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线 title('系统的单位阶跃响应');ylabel('g(n)');xlabel('n');axis([0,n,1.1*min(gn),1.1*max(gn)]);2468101214161820-1-0.500.51系统的单位冲激响应h (n )n2468101214161820-0.500.511.5系统的单位阶跃响应g (n )n2、运行例题2.3,理解卷积过程和程序中每一句的意义。
实验一测试系统的时域响应【实验目的】1.了解MATLAB软件的基本特点和功能,熟悉其界面、菜单和工具条,熟悉MATLAB程序设计结构及M文件的编制;2.掌握线性系统模型的计算机表示方法;3.掌握求线性定常连续系统时域输出响应的方法,求得系统的时域响应曲线;4. 了解Simulink 的使用。
【实验指导】一、模型的建立:在线性系统理论中,一般常用的数学模型形式有:(1)传递函数模型;(2)状态空间模型;(3)零极点增益模型这些模型之间都有着内在的联系,可以相互进行转换.1、传递函数模型若已知系统的传递函数为:对线性定常系统,式中s的系数均为常数,且an不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示.num=[cm,c,m-1,…,c1,c0]den=[an,an-1,…,a1,a0]注意:它们都是按s的降幂进行排列的.则传递函数模型建立函数为:sys=tf(num,den).2、零极点增益模型(略)3、状态空间模型(略)二、模型的转换在一些场合下需要用到某种模型,而在另外一些场合下可能需要另外的模型,这就需要进行模型的转换.三、模型的连接1、并联:parallel[num,den]=parallel(num1,den1,num2,den2)%将并联连接的传递函数进行相加.2、串联:series[num,den]=series(num1,den1,num2,den2)%将串联连接的传递函数进行相乘.3、反馈:feedback[num,den]=feedback(num1,den1,num2,den2,sign)%可以得到类似的连接,只是子系统和闭环系统均以传递函数的形式表示.当sign=1时采用正反馈;当sign= -1时采用负反馈;sign缺省时,默认为负反馈.4、闭环:cloop(单位反馈)[numc,denc]=cloop(num,den,sign)%表示由传递函数表示的开环系统构成闭环系统,sign意义与上述相同.四、线性连续系统的时域响应1 求取线性连续系统的阶跃响应函数为(step) 基本格式为:step(sys) step(num,den)【实验内容】1. 典型一阶系统的传递函数为 11)(+=s s G τ;τ为时间常数,试绘出当τ=0.5、1、 2、4、6、8、时该系统的单位阶跃响应曲线。
实验2离散系统的时域分析实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。
实验原理:离散系统][n x ][n y Discrete-timesystme其输入、输出关系可用以下差分方程描述:∑∑==-=-Mk k Nk kk n x p k n y d][][输入信号分解为冲激信号,∑∞-∞=-=m m n m x n x ][][][δ。
记系统单位冲激响应][][n h n →δ,则系统响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y ][][][][][当N k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M]),称系统为FIR 系统;反之,称系统为IIR 系统。
在MATLAB 中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。
实验内容和要求:1、以下程序中分别使用conv 和filter 函数计算h 和x 的卷积y 和y1,运行程序,并分析y 和y1是否有差别,为什么要使用x[n]补零后的x1来产生y1;具体分析当h[n]有i 个值,x[n]有j 个值,使用filter 完成卷积功能,需要如何补零? % Program P2_7 clf;h = [3 2 1 -2 1 0 -4 0 3]; % impulse response x = [1 -2 3 -4 3 2 1];% input sequencey = conv(h,x); n = 0:14; subplot(2,1,1); stem(n,y);xlabel('Time index n'); ylabel('Amplitude'); title('Output Obtained by Convolution'); grid; x1 = [x zeros(1,8)]; y1 = filter(h,1,x1); subplot(2,1,2); stem(n,y1);xlabel('Time index n'); ylabel('Amplitude'); title('Output Generated by Filtering'); grid; 程序运行结果:2468101214-20-1001020Time index nA m p l i t u d e Output Obtained by Convolution2468101214-20-1001020Time index nA m p l i t u d eOutput Generated by Filtering由图可看出,y 与y1并无差别。
实验2 离散系统的时域分析实验2 离散系统的时域分析一、实验目的:加深对离散系统的差分方程、单位抽样响应和卷积分析方法的理解。
二、实验原理: 离散系统其输入、输出关系可用以下差分方程描述:∑∑==-=-Mm mNk nm n x bk n y a)()(输入信号分解为冲激信号,∑∞-∞=-=m m n m x n x )()()(δ系统单位抽样序列h (n ),则系统响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y )()()()()(当00≠a N k a k ,...2,1,0==时,h(n)是有限长度的(n :[0,M]),称系统为FIR 系统;反之,称系统为IIR 系统。
在MATLAB 中,可以用函数y=filter(b,a,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,利用函数h=impz(b,a,n)计算画出脉冲响应。
(在实验报告中对这三种函数的使用方法及参数含义做出说明,这一部分手写)三 、实验容1.编制程序求解下列两个系统的单位抽样响应,并绘出其图形。
(1))1()()2(125.0)1(75.0)(--=-+-+n x n x n y n y n y程序:N=21; b=[1 -1];a=[1 0.75 0.125]; x=[1 zeros(1,N-1)]; n=0:1:N-1; y=filter(b,a,x);stem(n,y); xlabel('n'); ylabel('y(n)');图像:(2))]4()3()2()1([25.0)(-+-+-+-=n x n x n x n x n y程序: N=21;b=[0 0.25 0.25 0.25 0.25]; a=[1];x=[1 zeros(1,N-1)]; n=0:1:N-1; y=filter(b,a,x); stem(n,y); xlabel('n'); ylabel('y(n)'); 图像:2.给定因果稳定线性时不变系统的差分方程()()NMk m k m a y n k b x n m ==-=-∑∑ []1;1,1,0.9k k b a ==-对下列输入序列()x n ,求输出序列()y n 。
实验报告2012年04月26 日课程名称:数字信号处理实验名称:系统及系统响应班级:学号:姓名:实验二系统及系统响应一、实验目的(1)观察离散系统的频率响应;(2)熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;(3)利用序列的FT对连续信号、离散信号及系统响应进行频域分析;(4)利用卷积方法观察分析系统的时域特性。
二、实验内容(1)给定一因果系统H(z)= ,求出并绘制H(z)的幅频响应与相频响应;(2)对信号x a(t)=Au(n) 0n50 其中A=444.128,a=50,=50,实现下列实验内容:a、取采样频率fs=10KHZ,观察所得采样x a(n)的幅频特性|X()|和图中的|Xa(j)|在折叠频率附近有无明显差别。
b、改变采样频率fs=1KHZ,观察|X()|的变化,并作记录:进一步降低采样频率,fs=300HZ,观察频谱混叠是否明显存在,说明原因,并记录这时的|X()|曲线。
(3)给定系统的单位抽样响应为h1(n)=R10(n)a、利用线性卷积求信号x1(n)=(n),通过该系统的响应y1(n)。
比较所求响应y1(n)和h1(n)之间有无差别,绘图说明,并用所学理论解释所得结果。
b、利用线性卷积求信号x2(n)=R10(n),通过该系统的响应y2(n),并判断y2(n)图形及其非0值序列长度是否与理论结果一致,改变x2(n)的长度,取N=5,重复该试验。
注意参数变化的影响,说明变化前后的差异,并解释所得结果。
(4)求x(n)=11(n+2)+7(n+1)-(n-1)+4(n-2)+2(n-3)通过系统h(n)=2(n+1)+3(n)-5(n-2)+2(n-3)+(n-4)的响应y(n)。
三、实验程序及解析(1)1、程序clear; close all;b=[1,sqrt(2),1];a=[1,-0.67,0.9];[h,w]=freqz(b,a);am=20*log10(abs(h));% am=20*log10(abs(h))为幅频响应取dBsubplot(2,1,1);%将窗口划分为2*1的小窗口并选择第一个显示plot(w,abs(h));xlabel('w');ylabel('幅频响应');title('系统响应')ph=angle(h);subplot(2,1,2); %选择第二个窗口显示plot(w,ph);xlabel('w');ylabel('相频响应');2、系统响应结果图1 因果系统的H(z)的系统响应3、结果分析分析z域系统的特性主要是由系统的零点和极点的分布得出结论的。
实验二时域离散系统及系统响应一、实验目的1、掌握求解离散时间系统冲激响应和阶跃响应的方法;2、进一步理解卷积定理,掌握应用线性卷积求解离散时间系统响应的基本方法;3、掌握离散系统的响应特点。
二、实验内容1、请分别用impz 和dstep函数求解下面离散时间系统的冲激响应和阶跃响应。
(1)系统的差分方程为:)ynnny-=(n-+y+x)2.0866)((8.064()1.0a=[1,-0.8,0.64];b=[0.866,0,0];n=20;hn=impz(b,a,n); %冲激响应gn=dstep(b,a,n); %阶跃响应subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线title('系统的单位冲激响应');ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线title('系统的单位阶跃响应'); ylabel('g(n)');xlabel('n');axis([0,n,1.1*min(gn),1.1*max(gn)]);2468101214161820-0.4-0.200.20.40.60.8系统的单位冲激响应h (n )n246810121416182011.21.41.6系统的单位阶跃响应g (n )n(2)系统的系统函数为:21115.01)(---+--=zz z z H a=[1,-1,1]; b=[1,-0.5,0]; n=20;hn=impz(b,a,n); %冲激响应 gn=dstep(b,a,n); %阶跃响应subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线 title('系统的单位冲激响应'); ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线 title('系统的单位阶跃响应'); ylabel('g(n)');xlabel('n');axis([0,n,1.1*min(gn),1.1*max(gn)]);2468101214161820-1-0.500.51系统的单位冲激响应h (n )n2468101214161820-0.500.511.5系统的单位阶跃响应g (n )n2、运行例题2.3,理解卷积过程和程序中每一句的意义。
clf;nf1=0:20; %f1µÄʱ¼äÏòÁ¿f1=0.8.^nf1;lf1=length(f1);nf2=0:10; % f2µÄʱ¼äÏòÁ¿lf2=length(nf2); %È¡f2µÄʱ¼äÏòÁ¿µÄ³¤¶Èf2=ones(1,lf2);lmax=max(lf2,lf1);if lf2>lf1 nf2=0;nf1=lf2-lf1;elseif lf2<lf1 nf1=0;nf2=lf1-lf2;else nf2=0;lf1=0;endlt=lmax; u=[zeros(1,lt),f2,zeros(1,nf2),zeros(1,lt)];t1=(-lt+1:2*lt);f1=[zeros(1,2*lt),f1,zeros(1,nf1)];hf1=fliplr(f1);N=length(hf1);y=zeros(1,3*lt);for k=0:2*ltp=[zeros(1,k),hf1(1:N-k)];y1=u.*pyk=sum(y1);y(k+lt+1)=yk;subplot(4,1,1);stem(t1,u);subplot(4,1,2);stem(t1,p);subplot(4,1,3);stem(t1,y1);subplot(4,1,4);stem(k,yk);axis([-20,50,0,5]);hold onpause(1); %Í£¶Ù1ÃëÖÓend-20-100102030405053、利用第1题求得的系统冲激响应求解系统在激励)3unx下的响应。
(-=n()a=[1,-0.8,0.64];b=[0.866,0,0];yi=[0 0];xi=0;xic=filtic(b,a,yi,xi);n=20;hn=impz(b,a,n); %³å¼¤ÏìÓ¦subplot(2,1,1),stem(hn,'filled'); %ÏÔʾ³å¼¤ÏìÓ¦ÇúÏßtitle('ϵͳµÄµ¥Î»³å¼¤ÏìÓ¦');ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2)f=[0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ];Y1=conv(hn,f);stem(Y1,'filled');axis([0,20,-1,2]);2468101214161820-0.4-0.200.20.40.60.8系统的单位冲激响应h (n )n02468101214161820-112a=[1,-1,1]; b=[1,-0.5,0]; n=20;hn=impz(b,a,n); %³å¼¤ÏìÓ¦subplot(2,1,1),stem(hn,'filled'); %ÏÔʾ³å¼¤ÏìÓ¦ÇúÏß title('ϵͳµÄµ¥Î»³å¼¤ÏìÓ¦'); ylabel('h(n)');xlabel('n');axis([0,n,1.1*min(hn),1.1*max(hn)]);subplot(2,1,2)f=[0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ]; Y1=conv(hn,f);stem(Y1,'filled'); axis([0,20,-1,2]);2468101214161820-1-0.500.51系统的单位冲激响应h (n )n02468101214161820-112思考题1、利用impz 和dstep 函数时,m b 和k a 系数在编写程序时要注意什么? 答:m b 和k a 要注意看清序列的个数,如b=[1,-0.5,0];不要将最后一个0忘了。
MATLAB 中提供的conv 卷积函数在使用中应满足什么条件?若条件不能满足,应如何处理?答:MATLAB 中提供的conv 卷积函数在使用中应满足函数中的序列个数有限。