数字信号处理实验报告

合集下载

数字信号处理实验报告 3

数字信号处理实验报告 3

数字信号处理实验报告姓名:班级:通信学号:实验名称:频域抽样定理验证实验类型:验证试验指导教师:实习日期:2013.频域采样定理验证实验一. 实验目的:1. 加深对离散序列频域抽样定理的理解2.了解由频谱通过IFFT 计算连续时间信号的方法3.掌握用MATLAB 语言进行频域抽样与恢复时程序的编写方法 4、用MATLAB 语言将X(k)恢复为X(z)及X(e jw )。

二. 实验原理:1、1、频域采样定理: 如果序列x(n)的长度为M ,频域抽样点数为N ,则只有当频域采样点数N ≥M 时,才有x N (n)=IDFT[X(k)]=x(n),即可由频域采样X(k)无失真的恢复原序列 x(n)。

2、用X(k)表示X(z)的内插公式:∑-=-----=10111)(1)(N k kNNzWz k X Nz X内插函数: zWzkNNN z 1k111)(-----=ϕ频域内插公式:∑-=-=10)2()()(N K j k Nk X e X πωϕω频域内插函数:e N j N N )21()2sin()2sin(1)(--=ωωωωϕ三. 实验任务与步骤:实验一:长度为26的三角形序列x(n)如图(b)所示,编写MATLAB 程序验证频域抽样定理。

实验二:已知一个时间序列的频谱为X(e jw )=2+4e -jw +6e -j2w +4e -j3w +2e -j4w分别取频域抽样点数N为3、5和10,用IPPT计算并求出其时间序列x(n),用图形显示各时间序列。

由此讨论原时域信号不失真地由频域抽样恢复的条件。

实验三:由X32(k)恢复X(z)和X(e jw)。

四.实验结论与分析:实验一:源程序:M=26;N=32;n=0:M; %产生M长三角波序列x(n)xa=0:floor(M/2);xb= ceil(M/2)-1:-1:0; xn=[xa,xb];Xk=fft(xn,512); %1024点FFT[x(n)], 用于近似序列x(n)的TFX32k=fft(xn,32); %32点FFT[x(n)]x32n=ifft(X32k); %32点IFFT[X32(k)]得到x32(n)X16k=X32k(1:2:N); %隔点抽取X32k得到X16(K)x16n=ifft(X16k,N/2); %16点IFFT[X16(k)]得到x16(n)subplot(3,2,2);stem(n,xn,'.');box ontitle('(b) 三角波序列x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20])k=0:511;wk=2*k/512;subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]');xlabel('\omega/\pi');ylabel('|X(e^j^\omega)|');axis([0,1,0,200])k=0:N/2-1;subplot(3,2,3);stem(k,abs(X16k),'.');box ontitle('(c) 16点频域');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200])n1=0:N/2-1;subplot(3,2,4);stem(n1,x16n,'.');box ontitle('(d) 16点IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20])k=0:N-1;subplot(3,2,5);stem(k,abs(X32k),'.');box ontitle('(e) 32点频域采样');xlabel('k');ylabel('|X_3_2(k)|');axis([0,16,0,200])n1=0:N-1;subplot(3,2,6);stem(n1,x32n,'.');box ontitle('(f) 32点IDFT[X_3_2(k)]');xlabel('n');ylabel('x_3_2(n)');axis([0,32,0,20])结果如下所示:实验一分析:序列x(n)的长度M=26,由图中可以看出,当采样点数N=16<M时,x16(n)确实等于原三角序列x(n)以16为周期的周期延拓序列的主值序列。

数字信号处理实验报告

数字信号处理实验报告

实验一 信号、系统及系统响应一、实验目的1、熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对时域采样定理的理解。

2、熟悉离散信号和系统的时域特性。

3、熟悉线性卷积的计算编程方法:利用卷积的方法,观察、分析系统响应的时域特性。

4、掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号、系统及其系统响应进行频域分析。

二、 实验原理1.理想采样序列:对信号x a (t)=A e −αt sin(Ω0t )u(t)进行理想采样,可以得到一个理想的采样信号序列x a (t)=A e −αt sin(Ω0nT ),0≤n ≤50,其中A 为幅度因子,α是衰减因子,Ω0是频率,T 是采样周期。

2.对一个连续时间信号x a (t)进行理想采样可以表示为该信号与一个周期冲激脉冲的乘积,即x ̂a (t)= x a (t)M(t),其中x ̂a (t)是连续信号x a (t)的理想采样;M(t)是周期冲激M(t)=∑δ+∞−∞(t-nT)=1T ∑e jm Ωs t +∞−∞,其中T 为采样周期,Ωs =2π/T 是采样角频率。

信号理想采样的傅里叶变换为X ̂a (j Ω)=1T ∑X a +∞−∞[j(Ω−k Ωs )],由此式可知:信号理想采样后的频谱是原信号频谱的周期延拓,其延拓周期为Ωs =2π/T 。

根据时域采样定理,如果原信号是带限信号,且采样频率高于原信号最高频率分量的2倍,则采样以后不会发生频率混叠现象。

三、简明步骤产生理想采样信号序列x a (n),使A=444.128,α=50√2π,Ω0=50√2π。

(1) 首先选用采样频率为1000HZ ,T=1/1000,观察所得理想采样信号的幅频特性,在折叠频率以内和给定的理想幅频特性无明显差异,并做记录;(2) 改变采样频率为300HZ ,T=1/300,观察所得到的频谱特性曲线的变化,并做记录;(3) 进一步减小采样频率为200HZ ,T=1/200,观察频谱混淆现象是否明显存在,说明原因,并记录这时候的幅频特性曲线。

数字信号处理实验六报告

数字信号处理实验六报告

实验六 频域抽样定理和音频信号的处理实验报告 (一)频域抽样定理给定信号1, 013()27, 14260, n n x n n n +≤≤⎧⎪=-≤≤⎨⎪⎩其它 1.利用DTFT 计算信号的频谱()j X e ω,一个周期内角频率离散为M=1024点,画出频谱图,标明坐标轴。

n=0:100; %设定n 及其取值范围for n1=0:13 %对于n 处于不同的取值范围将n 代入不同的表达式xn(n1+1)=n1+1;endfor n2=14:26xn(n2+1)=27-n2;endfor n3=27:100xn(n3+1)=0;endM=1024; %设定抽样离散点的个数k=0:M-1; %设定k 的取值范围w=2*pi*k/M; %定义数字角频率[X,w] = dtft2( xn,n, M ) %调用dtft2子程序求频谱plot(w,abs(X)); %画出幅度值的连续图像xlabel('w/rad');ylabel('|X(exp(jw))|');title(' M=1024时的信号频谱图像'); %标明图像的横纵坐标和图像标题function [X,w] = dtft2(xn, n, M ) %定义x(n)的DTFT 函数w=0:2*pi/M:2*pi-2*pi/M; %将数字角频率w 离散化L=length(n); %设定L 为序列n 的长度 for (k=1:M) %外层循环,w 循环M 次sum=0; %每确定一个w 值,将sum 赋初值为零for (m=1:L) %内层循环,对n 求和,循环次数为n 的长度sum=sum+xn(m)*exp(-j*w(k)*n(m)); %求和X(k)=sum; %把每一次各x(n)的和的总值赋给X ,然后开始对下一个w 的求和过程end %内层循环结束end%外层循环结束M=1024时的信号频谱图像如图1-1所示:图1-1 M=1024时的信号频谱图像2.分别对信号的频谱()jX eω在区间π[0,2]上等间隔抽样16点和32点,得到32()X k和16()X k。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告实验一:频谱分析与采样定理一、实验目的1.观察模拟信号经理想采样后的频谱变化关系。

2.验证采样定理,观察欠采样时产生的频谱混叠现象3.加深对DFT算法原理和基本性质的理解4.熟悉FFT算法原理和FFT的应用二、实验原理根据采样定理,对给定信号确定采样频率,观察信号的频谱三、实验内容和步骤实验内容(1)在给定信号为:1.x(t)=cos(100*π*at)2.x(t)=exp(-at)3.x(t)=exp(-at)cos(100*π*at)其中a为实验者的学号,用DFT分析上述各信号的频谱结构,选取不同的采样频率和截取长度,试分析频谱发生的变化。

实验内容(2)设x(n)=cos(0.48*π*n)+ cos(0.52*π*n),对其进行以下频谱分析:10点DFT,64点DFT,及在10点序列后补零至64点的DFT 试分析这三种频谱的特点。

四、实验步骤1.复习采样理论、DFT的定义、性质和用DFT作谱分析的有关内容。

2.复习FFT算法原理和基本思想。

3.确定实验给定信号的采样频率,编制对采样后信号进行频谱分析的程序五、实验程序和结果实验1内容(1)N=L/T+1;t=0:T:L;a=48;D1=2*pi/(N*T); % 求出频率分辨率k1=floor((-(N-1)/2):((N-1)/2)); % 求对称于零频率的FFT位置向量%%%%%%%%%%%%%%%%%%%%%%%%%figure(1),x1=cos(100*pi*a*t);y1=T*fftshift(fft(x1));%虽然原来是周期信号,但做了截断后,仍可当作非周期信号。

subplot(2,1,1),plot(t,x1);title('正弦信号');subplot(2,1,2),plot(k1*D1,abs(y1));title('正弦信号频谱'); %%%%%%%%%%%%%%%%%%%%% figure(2), x2=exp(-a*t);y2=T*fftshift(fft(x2));%有限长(长度为N)离散时间信号x1的dft 再乘T 来近似模拟信号的频谱,长度为Nsubplot(2,1,1),plot(t,x2);title('指数信号');subplot(2,1,2),plot(k1*D1,abs(y2));title('指数信号频谱'); %%%%%%%%%%%%%%%%%%%%% figure(3), x3=x1.*x2;y3=T*fftshift(fft(x3))subplot(2,1,1),plot(t,x3);title('两信号相乘');subplot(2,1,2),plot(k1*D1,abs(y3));title('两信号相乘频谱');0.020.040.060.080.10.120.140.16-1-0.500.51正弦信号-4000-3000-2000-10000100020003000400000.020.040.06正弦信号频谱00.020.040.060.080.10.120.140.160.51-4000-3000-2000-10000100020003000400000.010.020.03指数信号频谱0.020.040.060.080.10.120.140.16-1-0.500.51两信号相乘-4000-3000-2000-10000100020003000400000.0050.010.015两信号相乘频谱T=0.0005 L=0.150.020.040.060.080.10.120.140.16-1-0.500.51-8000-6000-4000-2000200040006000800000.020.040.060.08正弦信号频谱00.020.040.060.080.10.120.140.160.51指数信号-8000-6000-4000-20000200040006000800000.010.020.03指数信号频谱0.020.040.060.080.10.120.140.16-1-0.500.51-8000-6000-4000-20000200040006000800000.0050.010.015两信号相乘频谱T=0.002 L=0.150.020.040.060.080.10.120.140.16-1-0.500.51正弦信号-2000-1500-1000-50050010001500200000.020.040.060.08正弦信号频谱00.020.040.060.080.10.120.140.160.51-2000-1500-1000-500050010001500200000.010.020.03指数信号频谱0.020.040.060.080.10.120.140.16-1-0.500.51两信号相乘-2000-1500-1000-500050010001500200000.0050.010.015两信号相乘频谱T=0.001 L=0.180.020.040.060.080.10.120.140.160.18-1-0.500.51-4000-3000-2000-1000100020003000400000.020.040.060.08正弦信号频谱00.020.040.060.080.10.120.140.160.180.51指数信号-4000-3000-2000-10000100020003000400000.010.020.03指数信号频谱0.020.040.060.080.10.120.140.160.18-1-0.500.51-4000-3000-2000-10000100020003000400000.0050.010.015两信号相乘频谱T=0.001 L=0.120.020.040.060.080.10.12-1-0.500.51正弦信号-4000-3000-2000-10000100020003000400000.020.040.06正弦信号频谱00.020.040.060.080.10.120.51-4000-3000-2000-10000100020003000400000.010.020.03指数信号频谱0.020.040.060.080.10.12-1-0.500.51两信号相乘-4000-3000-2000-10000100020003000400000.0050.010.015两信号相乘频谱实验1内容(2)>> N=10;n=1:NT=1x1=cos(0.48*pi*n*T)+cos(0.52*pi*n*T)X1=fft(x1,10)k=1:N;w=2*pi*k/10subplot(3,2,1);stem(n,x1);axis([0,10,-3,3]);title('信号x(n)');subplot(3,2,2);stem(w/pi,abs(X1));axis([0,1,0,10]);title('DFTx(n)');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% N2=100;n2=1:N2T=1x1=cos(0.48*pi*[1:10]*T)+cos(0.52*pi*[1:10]*T)x2=[x1,zeros(1,90)]X2=fft(x2,N2)k2=1:N2;w2=2*pi*k2/100subplot(3,2,3);stem(x2);axis([0,100,-3,3]);title('信号x(n)补零');subplot(3,2,4);plot(w2/pi,abs(X2));axis([0,1,0,10]);title('DFTx(n)');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% N3=100;n3=1:N3T=1x3=cos(0.48*pi*n3*T)+cos(0.52*pi*n3*T)X3=fft(x3,100)k3=1:N3;w3=2*pi*k3/100subplot(3,2,5);stem(n3,x3);axis([0,100,-3,3]);title('信号x(n)');subplot(3,2,6);stem(w3/pi,abs(X3));axis([0,1,0,10]);title('DFTx(n)');n =1 2 3 4 5 6 7 8 9 10 T =1510-202信号x(n)0.510510DFTx(n)50100信号x(n)补零0.510510DFTx(n)50100信号x(n)DFTx(n)实验二 卷积定理一、实验目的通过本实验,验证卷积定理,掌握利用DFT 和FFT 计算线性卷积的方法。

数字信号处理实验报告_五个实验

数字信号处理实验报告_五个实验

实验一 信号、系统及系统响应一、 实验目的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;2、熟悉时域离散系统的时域特性;3、利用卷积方法观察分析系统的时域特性;4、掌握序列傅立叶变换的计算机实现方法,利用序列的傅立叶变换对连续信号、离散信号及系统响应进行频域分析。

二、 实验原理及方法采样是连续信号数字处理的第一个关键环节。

对采样过程的研究不仅可以了解采样前后信号时域和频域特性发生变化以及信号信息不丢失的条件,而且可以加深对傅立叶变换、Z 变换和序列傅立叶变换之间关系式的理解。

对一个连续信号)(t x a 进行理想采样的过程可用下式表示:)()()(^t p t t x x aa其中)(^t x a 为)(t x a 的理想采样,p(t)为周期脉冲,即∑∞-∞=-=m nT t t p )()(δ)(^t x a的傅立叶变换为)]([1)(^s m a m j X T j a X Ω-Ω=Ω∑∞-∞= 上式表明^)(Ωj Xa为)(Ωj Xa的周期延拓。

其延拓周期为采样角频率(T /2π=Ω)。

只有满足采样定理时,才不会发生频率混叠失真。

在实验时可以用序列的傅立叶变换来计算^)(Ωj X a 。

公式如下:Tw jwae X j X Ω==Ω|)()(^离散信号和系统在时域均可用序列来表示。

为了在实验中观察分析各种序列的频域特性,通常对)(jw e X 在[0,2π]上进行M 点采样来观察分析。

对长度为N 的有限长序列x(n),有:n jw N n jw k ke m x eX--=∑=)()(1其中,k Mk πω2=,k=0,1,……M-1 时域离散线性非移变系统的输入/输出关系为∑∞-∞=-==m m n h m x n h n x n y )()()(*)()(上述卷积运算也可在频域实现)()()(ωωωj j j e H e X eY =三、 实验程序s=yesinput(Please Select The Step Of Experiment:\n 一.(1时域采样序列分析 s=str2num(s); close all;Xb=impseq(0,0,1); Ha=stepseq(1,1,10);Hb=impseq(0,0,3)+2.5*impseq(1,0,3)+2.2*impseq(2,0,3)+impseq(3,0,3); i=0;while(s);%时域采样序列分析 if(s==1)k=0;while(1)if(k==0)A=yesinput('please input the Amplitude:\n',...444.128,[100,1000]); a=yesinput('please input the Attenuation Coefficient:\n',...222.144,[100,600]);w=yesinput('please input the Angle Frequence(rad/s):\n',...222.144,[100,600]);endk=k+1;fs=yesinput('please input the sample frequence:\n',...1000,[100,1200]);Xa=FF(A,a,w,fs);i=i+1;string+['fs=',num2str(fs)];figure(i)DFT(Xa,50,string);1=yesinput1=str2num(1);end%系统和响应分析else if(s==2)kk=str2num(kk);while(kk)if(kk==1)m=conv(Xb,Hb);N=5;i=i+1;figure(i)string=('hb(n)');Hs=DFT(Hb,4,string);i=i+1;figure(i)string('xb(n)');DFT(Xb,2,string);string=('y(n)=xb(n)*hb(n)');else if (kk==2)m=conv(Ha,Ha);N=19;string=('y(n)=ha(n)*(ha(n)');else if (kk==3)Xc=stepseq(1,1,5);m=conv(Xc,Ha);string=('y(n)=xc(n)*ha(n)');endendendi=i+1;figure(i)DFT(m,N,string);kk=yesinputkk=str2num(kk);end卷积定理的验证else if(s==3)A=1;a=0.5;w=2,0734;fs=1;Xal=FF(A,a,w,fs);i=i+1;figure(i)string=('The xal(n)(A=1,a=0.4,T=1)'); [Xa,w]DFT(Xal,50,string);i=i+1;figure(i)string =('hb(n)');Hs=DFT(Hb,4,string);Ys=Xs.*Hs;y=conv(Xal,Hb);N=53;i=i+1;figure(i)string=('y(n)=xa(n)*hb(n)');[yy,w]=DFT(y,N,string);i=i+1;figure(i)subplot(2,2,1)plot(w/pi,abs(yy));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title(FT[x(n)*h(n)]');subplot(2,2,3)plot(w/pi,abs(Ys));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title('FT[xs(n)].FT[h(n)]'); end end end子函数:离散傅立叶变换及X(n),FT[x(n)]的绘图函数 function[c,l]=DFT(x,N,str) n=0:N-1; k=-200:200; w=(pi/100)*k; l=w; c=x*Xc=stepseq(1,1,5); 子函数:产生信号function c=FF(A,a,w,fs) n=o:50-1;c=A*exp((-a)*n/fs).*sin(w*n/fs).*stepseq(0,0,49); 子函数:产生脉冲信号function [x,n]=impseq(n0,n1,n2) n=[n1:n2];x=[(n-n0)==0];子函数:产生矩形框信号function [x,n]=stepseq(n0,n1,n2) n=[n1:n2];x=[(n-n0>=0)];四、 实验内容及步骤1、认真复习采样理论,离散信号与系统,线性卷积,序列的傅立叶变换及性质等有关内容,阅读本实验原理与方法。

数字信号处理实验报告 (实验四)

数字信号处理实验报告 (实验四)

实验四 离散时间信号的DTFT一、实验目的1. 运用MA TLAB 计算离散时间系统的频率响应。

2. 运用MA TLAB 验证离散时间傅立叶变换的性质。

二、实验原理(一)、计算离散时间系统的DTFT已知一个离散时间系统∑∑==-=-Nk k N k k k n x b k n y a 00)()(,可以用MATLAB 函数frequz 非常方便地在给定的L 个离散频率点l ωω=处进行计算。

由于)(ωj e H 是ω的连续函数,需要尽可能大地选取L 的值(因为严格说,在MA TLAB 中不使用symbolic 工具箱是不能分析模拟信号的,但是当采样时间间隔充分小的时候,可产生平滑的图形),以使得命令plot 产生的图形和真实离散时间傅立叶变换的图形尽可能一致。

在MA TLAB 中,freqz 计算出序列{M b b b ,,,10 }和{N a a a ,,,10 }的L 点离散傅立叶变换,然后对其离散傅立叶变换值相除得到L l eH l j ,,2,1),( =ω。

为了更加方便快速地运算,应将L 的值选为2的幂,如256或者512。

例3.1 运用MA TLAB 画出以下系统的频率响应。

y(n)-0.6y(n-1)=2x(n)+x(n-1)程序: clf;w=-4*pi:8*pi/511:4*pi;num=[2 1];den=[1 -0.6];h=freqz(num,den,w);subplot(2,1,1)plot(w/pi,real(h));gridtitle(‘H(e^{j\omega}的实部’))xlabel(‘\omega/ \pi ’);ylabel(‘振幅’);subplot(2,1,1)plot(w/pi,imag(h));gridtitle(‘H(e^{j\omega}的虚部’))xlabel(‘\omega/ \pi ’);ylabel(‘振幅’);(二)、离散时间傅立叶变换DTFT 的性质。

数字信号处理_快速傅里叶变换FFT实验报告

数字信号处理_快速傅里叶变换FFT实验报告

数字信号处理_快速傅里叶变换FFT实验报告快速傅里叶变换(FFT)实验报告1. 引言数字信号处理是一门研究如何对数字信号进行处理、分析和提取信息的学科。

傅里叶变换是数字信号处理中常用的一种方法,可以将信号从时域转换到频域。

而快速傅里叶变换(FFT)是一种高效的计算傅里叶变换的算法,广泛应用于信号处理、图象处理、通信等领域。

2. 实验目的本实验旨在通过编写程序实现快速傅里叶变换算法,并对不同信号进行频谱分析。

3. 实验原理快速傅里叶变换是一种基于分治策略的算法,通过将一个N点离散傅里叶变换(DFT)分解为多个较小规模的DFT,从而实现高效的计算。

具体步骤如下: - 如果N=1,直接计算DFT;- 如果N>1,将输入序列分为偶数和奇数两部份,分别计算两部份的DFT;- 将两部份的DFT合并为整体的DFT。

4. 实验步骤此处以C语言为例,给出实验的具体步骤:(1) 定义输入信号数组和输出频谱数组;(2) 实现快速傅里叶变换算法的函数,输入参数为输入信号数组和输出频谱数组;(3) 在主函数中调用快速傅里叶变换函数,得到输出频谱数组;(4) 对输出频谱数组进行可视化处理,如绘制频谱图。

5. 实验结果与分析为了验证快速傅里叶变换算法的正确性和有效性,我们设计了以下实验:(1) 生成一个正弦信号,频率为100Hz,采样频率为1000Hz,时长为1秒;(2) 对生成的正弦信号进行快速傅里叶变换,并绘制频谱图;(3) 生成一个方波信号,频率为200Hz,采样频率为1000Hz,时长为1秒;(4) 对生成的方波信号进行快速傅里叶变换,并绘制频谱图。

实验结果显示,对于正弦信号,频谱图中存在一个峰值,位于100Hz处,且幅度较大;对于方波信号,频谱图中存在多个峰值,分别位于200Hz的奇数倍处,且幅度较小。

这与我们的预期相符,说明快速傅里叶变换算法能够正确地提取信号的频谱信息。

6. 实验总结通过本次实验,我们成功实现了快速傅里叶变换算法,并对不同信号进行了频谱分析。

数字信号处理实验报告完整版[5篇模版]

数字信号处理实验报告完整版[5篇模版]

数字信号处理实验报告完整版[5篇模版]第一篇:数字信号处理实验报告完整版实验 1利用 T DFT 分析信号频谱一、实验目的1.加深对 DFT 原理的理解。

2.应用 DFT 分析信号的频谱。

3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。

二、实验设备与环境计算机、MATLAB 软件环境三、实验基础理论T 1.DFT 与与 T DTFT 的关系有限长序列的离散时间傅里叶变换在频率区间的N 个等间隔分布的点上的 N 个取样值可以由下式表示:212 /0()|()()0 1Nj knjNk NkX e x n e X k k Nπωωπ--====≤≤-∑由上式可知,序列的 N 点 DFT ,实际上就是序列的 DTFT 在 N 个等间隔频率点上样本。

2.利用 T DFT 求求 DTFT方法 1 1:由恢复出的方法如下:由图 2.1 所示流程可知:101()()()Nj j n kn j nNn n kX e x n e X k W eNωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑由上式可以得到:IDFT DTFT第二篇:数字信号处理实验报告JIANGSUUNIVERSITY OF TECHNOLOGY数字信号处理实验报告学院名称:电气信息工程学院专业:班级:姓名:学号:指导老师:张维玺(教授)2013年12月20日实验一离散时间信号的产生一、实验目的数字信号处理系统中的信号都是以离散时间形态存在的,所以对离散时间信号的研究是数字信号的基本所在。

而要研究离散时间信号,首先需要产生出各种离散时间信号。

使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大绘图功能,便于用户直观地处理输出结果。

通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,实现信号的卷积运算,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告实验一:混叠现象的时域与频域表现实验原理:当采样频率Fs不满足采样定理,会在0.5Fs附近引起频谱混叠,造成频谱分析误差。

实验过程:考虑频率分别为3Hz,7Hz,13Hz 的三个余弦信号,即:g1(t)=cos(6πt), g2(t)=cos(14πt), g3(t)=cos(26πt),当采样频率为10Hz 时,即采样间隔为0.1秒,则产生的序列分别为:g1[n]=cos(0.6πn), g2[n]=cos(1.4πn), g3[n]=cos(2.6πn)对g2[n],g3[n] 稍加变换可得:g2[n]=cos(1.4πn)=cos((2π-0.6π)n)= cos(0.6πn)g3[n]=cos(2.6πn)= cos((2π+0.6π)n)=cos(0.6πn)利用Matlab进行编程:n=1:300;t=(n-1)*1/300;g1=cos(6*pi*t);g2=cos(14*pi*t);g3=cos(26*pi*t);plot(t,g1,t,g2,t,g3);k=1:100;s=k*0.1;q1=cos(6*pi*s);q2=cos(14*pi*s);q3=cos(26*pi*s);hold on; plot(s(1:10),q1(1:10),'bd');figuresubplot(2,2,1);plot(k/10,abs(fft(q1)))subplot(2,2,2);plot(k/10,abs(fft(q2)))subplot(2,2,3);plot(k/10,abs(fft(q3)))通过Matlab软件的图像如图所示:如果将采样频率改为30Hz,则三信号采样后不会发生频率混叠,可运行以下的程序,观察序列的频谱。

程序编程改动如下:k=1:300;q=cos(6*pi*k/30);q1=cos(14*pi*k/30);q2=cos(26*pi*k/30);subplot(2,2,1);plot(k/10,abs(fft(q)))subplot(2,2,2);plot(k/10,abs(fft(q1)))subplot(2,2,3);plot(k/10,abs(fft(q2)))得图像:问题讨论:保证采样后的信号不发生混叠的条件是什么?若信号的最高频率为17Hz,采样频率为30Hz,问是否会发生频率混叠?混叠成频率为多少Hz的信号?编程验证你的想法。

数字信号处理期末综合实验报告

数字信号处理期末综合实验报告

数字信号处理综合实验报告实验题目:基于Matlab的语音信号去噪及仿真专业名称:学号:姓名:日期:报告内容:一、实验原理1、去噪的原理1.1 采样定理在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中,最高频率fmax的2倍时,即:fs.max>=2fmax,则采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍;采样定理又称奈奎斯特定理。

1924年奈奎斯特(Nyquist>就推导出在理想低通信道的最高大码元传输速率的公式: 理想低通信道的最高大码元传输速率=2W*log2 N (其中W是理想低通信道的带宽,N是电平强度>为什么把采样频率设为8kHz?在数字通信中,根据采样定理, 最小采样频率为语音信号最高频率的2倍b5E2RGbCAP频带为F的连续信号f(t>可用一系列离散的采样值f(t1>,f(t1±Δt>,f(t1±2Δt>,...来表示,只要这些采样点的时间间隔Δt≤1/2F,便可根据各采样值完全恢复原来的信号f(t>。

这是时域采样定理的一种表述方式。

p1EanqFDPw时域采样定理的另一种表述方式是:当时间信号函数f(t>的最高频率分量为fM时,f(t>的值可由一系列采样间隔小于或等于1/2fM的采样值来确定,即采样点的重复频率f≥2fM。

图为模拟信号和采样样本的示意图。

DXDiTa9E3d时域采样定理是采样误差理论、随机变量采样理论和多变量采样理论的基础。

对于时间上受限制的连续信号f(t><即当│t│>T 时,f(t>=0,这里T=T2-T1是信号的持续时间),若其频谱为F<ω),则可在频域上用一系列离散的采样值 RTCrpUDGiT<1-1)5PCzVD7HxA采样值来表示,只要这些采样点的频率间隔<1-2)jLBHrnAILg。

史上最全数字信号处理实验报告完美版

史上最全数字信号处理实验报告完美版

实验一、零极点分布对系统频率响应的影响Y(n)=x(n)+ay(n-1)1、调用MATLAB函数freqz计算并绘制的幅频特性和相频特性其中:1 代表a=0.7;2代表a=0.8;3代表a=0.9a=0.7时的零极点图A=0.8时的零极点图a=0.9时的零极点图观察零极点的分布与相应曲线易知:小结:系统极点z=a,零点z=0,当B点从w=0逆时针旋转时,在w=0点,由于极点向量长度最短,形成波峰,并且当a越大,极点越接近单位圆,峰值愈高愈尖锐;在w=pi点形成波谷;z=0处零点不影响幅频响应2、先求出系统传函的封闭表达式,通过直接计算法得出的幅频特性和相频特性曲线。

其中:1代表a=0.7;2代表a=0.8;3代表a=0.9附录程序如下:(对程序进行部分注释)>> a=0.7;w=0:0.01:2*pi;%设定w的范围由0到2π,间隔为0.01y=1./(1-a*exp(-j*w)); %生成函数subplot(211);plot(w/2/pi,10*log(abs(y)),'g');%生成图像其中通过调用abs函数计算幅值hold on;xlabel('Frequency(Hz)');%定义横坐标名称ylabel('magnitude(dB)');%定义纵坐标名称title('a=0.8,直接计算h(ejw)');grid on;%定义图片标题subplot(212);plot(w/2/pi,unwrap(angle(y)),'g');grid on;%生成图像其中通过调用angle计算相角,‘g’为规定线条颜色hold on;>> a=0.8;w=0:0.01:2*pi;y=1./(1-a*exp(-j*w));subplot(211);plot(w/2/pi,10*log(abs(y)),'r');hold on;xlabel('Frequency(Hz)');ylabel('magnitude(dB)');title('a=0.8,直接计算h(ejw)');grid on;subplot(212);plot(w/2/pi,unwrap(angle(y)),'r');grid on;hold on;>> a=0.9;w=0:0.01:2*pi;y=1./(1-a*exp(-j*w));subplot(211);plot(w/2/pi,10*log(abs(y)),'b');hold on;xlabel('Frequency(Hz)');ylabel('magnitude(dB)');title('a=0.9,直接计算h(ejw)');grid on;subplot(212);plot(w/2/pi,unwrap(angle(y)),'b');grid on;hold on;2、y(n)=x(n)=ax(n-1)通过调用freqz函数绘图,其中:1代表a=0.7,;2代表a=0.8;3代表a=0.9附录程序如下:(因为程序同实验一相同不再进行注释)a=0.7;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.7');hold on;a=0.8;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.8');hold on;a=0.9;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.9');以下为a为不同数值时的零极点图a=0.7A=0.8A=0.9小结:系统极点z=0,零点z=a,当B点从w=0逆时针旋转时,在w=0点,由于零点向量长度最长,形成波峰:在w=pi点形成波谷;z=a处极点不影响相频响应。

数字信号处理实验三报告 数字信号处理上机实验报告.doc

数字信号处理实验三报告 数字信号处理上机实验报告.doc

数字信号处理实验三报告数字信号处理上机实验报告实验一系统响应及系统稳定性一、实验目的(1)掌握求系统响应的方法。

(2)掌握时域离散系统的时域特性。

(3)分析、观察及检验系统的稳定性。

二、实验内容(1)给定一个低通滤波器的差分方程为y(n)=0.05x(n)+0.05x(n-1)+0.9y(n-1)输入信号x1(n)=R8(n)x2(n)=u(n)(a) 分别求出系统对x1(n)=R8(n) 和x2(n)=u(n)的响应序列,并画出其波形。

(b) 求出系统的单位冲响应,画出其波形。

实验程序:A=[1,-0.9];B=[0.05,0.05]; %%系统差分方程系数向量 B 和 Ax1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号 x1(n)=R8(n)x2n=ones(1,8); %产生信号 x2(n)=u(n)y1n=filter(B,A,x1n); %求系统对 x1(n)的响应 y1(n)n=0:length(y1n)-1;subplot(2,2,1);stem(n,y1n,".");title("(a) 系统对 R_8(n)的响应y_1(n)");xlabel("n");ylabel("y_1(n)");y2n=filter(B,A,x2n); %求系统对 x2(n)的响应 y2(n) n=0:length(y2n)-1;subplot(2,2,2);stem(n,y2n,".");title("(b) 系统对 u(n)的响应y_2(n)");xlabel("n");ylabel("y_2(n)");hn=impz(B,A,58); %求系统单位脉冲响应 h(n)n=0:length(hn)-1;subplot(2,2,3);y=hn;stem(n,hn,".");title("(c) 系统单位脉冲响应h(n)");xlabel("n");ylabel("h(n)");运行结果图:(2)给定系统的单位脉冲响应为h1(n)=R10(n)h2(n)= δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)用线性卷积法分别求系统h1(n)和h2(n)对x1(n)=R8(n)的输出响应,波形。

数字信号处理实验报告(自己的实验报告)

数字信号处理实验报告(自己的实验报告)

数字信号处理实验报告西南交通大学信息科学与技术学院姓名:伍先春学号:20092487班级:自动化1班指导老师:张翠芳实验一序列的傅立叶变换实验目的进一步加深理解DFS,DFT 算法的原理;研究补零问题;快速傅立叶变换(FFT )的应用。

实验步骤1. 复习DFS 和DFT 的定义,性质和应用;2. 熟悉MATLAB 语言的命令窗口、编程窗口和图形窗口的使用;利用提供的程序例子编写实验用程序;按实验内容上机实验,并进行实验结果分析;写出完整的实验报告,并将程序附在后面。

实验内容1. 周期方波序列的频谱试画出下面四种情况下的的幅度频谱,并分析补零后,对信号频谱的影响。

2. 有限长序列x(n)的DFT(1) 取x(n)(n=0:10)时,画出x(n)的频谱X(k) 的幅度;(2) 将(1)中的x(n)以补零的方式,使x(n)加长到(n:0~100)时,画出x(n)的频谱X(k) 的幅度;(3) 取x(n)(n:0~100)时,画出x(n)的频谱X(k) 的幅度。

利用FFT进行谱分析 已知:模拟信号以t=0.01n(n=0:N-1)进行采样,求N 点DFT 的幅值谱。

请分别画出N=45; N=50;N=55;N=60时的幅值曲线。

数字信号处理实验一1.(1) L=5;N=20;60,7)4(;60,5)3(;40,5)2(;20,5)1()](~[)(~,2,1,01)1(,01,1)(~=========±±=⎩⎨⎧-+≤≤+-+≤≤=N L N L N L N L n x DFS k X m N m n L mN L mN n mN n x )52.0cos()48.0cos()(n n n x ππ+=)8cos(5)4sin(2)(t t t x ππ+=n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(1)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=20');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(2)L=5;N=40;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(2)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=40');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(3)L=5;N=60;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(3)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=60');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(4)L=7;N=60;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(4)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=7,N=60');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');2. (1)M=10;N=10;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(1)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=10');axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');(2)M=10;N=100;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(2)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=10');axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');(3)M=100;N=100;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(3)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=100');axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');3.figure(1)subplot(2,2,1)N=45;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);plot(q,abs(y))stem(q,abs(y))title('FFT N=45')%subplot(2,2,2)N=50;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);plot(q,abs(y))title('FFT N=50')%subplot(2,2,3)N=55;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);plot(q,abs(y))title('FFT N=55')%subplot(2,2,4)N=16;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);plot(q,abs(y))title('FFT N=16')function[Xk]=dfs(xn,N)n=[0:1:N-1];k=[0:1:N-1];WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;实验二 用双线性变换法设计IIR 数字滤波器 一、 实验目的1. 熟悉用双线性变换法设计IIR 数字滤波器的原理与方法; 2. 掌握数字滤波器的计算机仿真方法;3.通过观察对实际心电图的滤波作用,获得数字滤波器的感性知识。

数字信号处理实验报告

数字信号处理实验报告

实验一 基于LMS 算法的自适应滤波器设计一、自适应算法的概括包括最小均方算法LMS 、最小高阶均方算法LMP 、最小平方算法OLS 、递推最小算法RLS 。

自适应算法主要根据滤波器输入的统计特性进行处理,存在开环算法和闭环算法;开环算法的控制输出仅取决于滤波器的输入和其他输入数据;闭环的控制输出则是滤波器输出及其他输入信号的函数。

闭环控制利用输出反馈,不但能在滤波器输入信号变化时保持最佳输出,而且在某种程度上补偿滤波元件参数的变化和误差以及运算误差。

二、自适应滤波器的结构自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成。

如图1.1所示为自适应滤波器的一般结构。

输入信号)(n x 通过参数可调数字滤波器后产生输出信号(或响应))(n y ,将其与参考信号(或期望响应))(n d 进行比较,形成误差信号)(n e ,)(n e 通过某种自适应算法对滤波器参数进行调整,最终使)(n e 得均方值最小。

所以,自适应滤波器实际上是一种能够自动调整本身参数的特殊的Wiener 模型。

)(n d 自适应滤波器算法滤波器结构)(n x )(n e )(n y +-图1.1 自适应滤波器的一般结构上面的自适应滤波器设计不需要知道关于输入信号和噪声的统计特性,能够在工作过程中估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳的滤波效果。

一旦输入信号统计特性发生变化,其又能跟踪这种变化,自动调整参数,从而使滤波器性能达到最佳效果。

三、滤波器采用的结构采用FIR 横向滤波器(由于IIR 滤波器存在稳定性问题)作为自适应滤波器结构,如图1.2所示。

)(n x )(0n w )(1n w )(2n w )(1n w N -1-Z 1-Z ....1-Z )1(+-N n x ∑)(n y图1.2 FIR 横向滤波器结构图中所示自适应滤波器的输入矢量:T N n x n x n x n X )]1(),...,1(),([)(+--= , 权重系数矢量:T N n w n w n w n W )](),...,(),([)(110-=,即自适应滤波器的冲击响应。

数字信号处理课程实验报告

数字信号处理课程实验报告

数字信号处理课程实验报告课题名称:IIR滤波器相位校正实验一、实验内容与分析1、实验目的和内容1)利用MATLAB设计一个IIR滤波器;2)结合课本关于全通滤波器特性知识(课本p128),在IIR滤波器后级联一个全通相位滤波器进行相位校正,使此滤波器最终实现线性相位特性;3)分别使用相位校正前后两滤波器实现对某一信号的处理;4)画出IIR滤波器、全通滤波器、相位校正后滤波器的幅度频率特性曲线、相位频率特性曲线,信号时域波形、信号的幅度频率特性曲线、相位频率特性曲线;5)详述实验设计原理,分析相位校正前后两类滤波器对信号处理后的区别。

2、实验的分析1)、IIR滤波器的设计通过对实验内容的理解,我们首先需要设计一个IIR滤波器,对课本第六章的学习我们知道IIR数字滤波器有两种设计方法:间接设计法和直接设计法。

间接设计法中有巴特沃斯滤波器,切比雪夫I型、II型滤波器,椭圆滤波器和贝塞尔滤波器五种。

我们选择设计切比雪夫II型低通滤波器,其中的技术指标为:通带边界频率fp=1000Hz,阻带边界频率fs=2000 Hz,阻带最小衰减As=40 dB,通带最大衰减Ap=1 dB。

2)全通滤波器的设计全通滤波器的幅度特性是在整个频带上均等于常数,或者等于1.信号通过全通滤波器后,其输出的幅度特性保持不变,仅相位发生变化。

由于IIR滤波器后需要级联一个全通相位滤波器,使整个系统实现线性相位特性,为了求解全通滤波器的参数,我们先假设整个系统具有线性相位特性,再根据已经设计好了的切比雪夫II 型滤波器的系统参数,求解全通滤波器的参数。

二、实验的过程1、切比雪夫II型滤波器的设计过程在确定了滤波器的参数之后,我们运用cheb2ord函数计算模拟低通滤波器的最小阶数;然后用cheby2计算滤波器传输函数的系数。

然后运用脉冲响应不变法将模拟低通滤波器转换成数字滤波器。

这样我们就设计出了满足给定参数的切比雪夫II型滤波器。

数字信号处理实验报告

数字信号处理实验报告

《数字信号处理》实验报告实验一:Z 变换及离散时间系统分析给定系统)8.0/(2.0)(2+-=z z H ,编程并绘出系统的单位阶跃响应y(n),频率响应)e (jw H 。

给出实验报告。

实验代码clear;x=ones(100); t=1:100;b=[0 0 -0.2 ]; a=[1 0 0.8]; y=filter(b,a,x); (t,x,'r.',t,y,'k-'); grid on ;ylabel('x(n) and y(n)') xlabel('n')单位阶跃响应单位抽样:b=[0 0 -0.2 ]; a=[1 0 0.8];[h,t]=impz(b,a,70);stem(t,h, '.')幅頻,相频b=[0 0 -0.2 ];a=[1 0 0.8];[H,w]=freqz(b,a,256,1);Hr=abs(H);Hphase=angle(H);Hphase=unwrap(Hphase); subplot(211)plot(w,Hr);grid on;ylabel(' 幅频.')subplot(212)plot(w,Hphase);grid on; ylabel(' 相频')零极点图:b=[0 0 -0.2 ];a=[1 0 0.8];subplot(221);zplane(b,a);实验二:快速傅里叶变换设x(n)由三个实正弦组成,频率分别是8Hz,9Hz,10Hz,抽样频率为60 Hz,时域取256点,作FFT变换,观察波形,给出实验报告。

实验代码:clear all;N=256;f1=8;f2=9;f3=10;fs=60;w=2*pi/fs;x=sin(w*f1*(0:N-1))+sin(w*f2*(0:N-1))+sin(w*f3*(0:N-1)); subplot(3,1,1);plot(x(1:N/4));f=-0.5:1/N:0.5-1/N;X=fft(x);=ifft(X);(3,1,2);plot(f,fftshift(abs(X)));subplot(3,1,3);plot(real(y(1:N/4)));实验三:无限冲击响应数字滤波器设计设计一个数字带通滤波器,参数自定。

数字信号处理实验报告(全)

数字信号处理实验报告(全)

实验一、离散时间系统及离散卷积1、单位脉冲响应源程序:function pr1() %定义函数pr1a=[1,-1,0.9]; %定义差分方程y(n)-y(n-1)+0.9y(n-2)=x(n) b=1;x=impseq(0,-20,120); %调用impseq函数n=[-40:140]; %定义n从-20 到120h=filter(b,a,x); %调用函数给纵座标赋值figure(1) %绘图figure 1 (冲激响应) stem(n,h); %在图中绘出冲激title('冲激响应'); %定义标题为:'冲激响应'xlabel('n'); %绘图横座标为nylabel('h(n)'); %绘图纵座标为h(n)figure(2) %绘图figure 2[z,p,g]=tf2zp(b,a); %绘出零极点图zplane(z,p)function [x,n]=impseq(n0,n1,n2) %声明impseq函数n=[n1:n2];x=[(n-n0)==0];结果:Figure 1:Figure 2:2、离散系统的幅频、相频的分析源程序:function pr2()b=[0.0181,0.0543,0.0543,0.0181];a=[1.000,-1.76,1.1829,-0.2781];m=0:length(b)-1; %m从0 到3l=0:length(a)-1; %l从0 到3K=5000;k=1:K;w=pi*k/K; %角频率wH=(b*exp(-j*m'*w))./(a*exp(-j*l'*w));%对系统函数的定义magH=abs(H); %magH为幅度angH=angle(H); %angH为相位figure(1)subplot(2,1,1); %在同一窗口的上半部分绘图plot(w/pi,magH); %绘制w(pi)-magH的图形grid;axis([0,1,0,1]); %限制横纵座标从0到1xlabel('w(pi)'); %x座标为 w(pi)ylabel('|H|'); %y座标为 angle(H)title('幅度,相位响应'); %图的标题为:'幅度,相位响应' subplot(2,1,2); %在同一窗口的下半部分绘图plot(w/pi,angH); %绘制w(pi)-angH的图形grid; %为座标添加名称xlabel('w(pi)'); %x座标为 w(pi)ylabel('angle(H)'); %y座标为 angle(H)结果:3、卷积计算源程序:function pr3()n=-5:50; %声明n从-5到50u1=stepseq(0,-5,50); %调用stepseq函数声用明u1=u(n)u2=stepseq(10,-5,50); %调用stepseq函数声用明u2=u(n-10) %输入x(n)和冲激响应h(n)x=u1-u2; %x(n)=u(n)-u(n-10)h=((0.9).^n).*u1; %h(n)=0.9^n*u(n)figure(1)subplot(3,1,1); %绘制第一个子图stem(n,x); %绘制图中的冲激axis([-5,50,0,2]); %限定横纵座标的范围title('输入序列'); %规定标题为:'输入序列'xlabel('n'); %横轴为nylabel('x(n)'); %纵轴为x(n)subplot(3,1,2); %绘制第二个子图stem(n,h); %绘制图中的冲激axis([-5,50,0,2]); %限定横纵座标的范围title('冲激响应序列'); %规定标题为:'冲激响应序列'xlabel('n'); %横轴为nylabel('h(n)'); %纵轴为h(n)%输出响应[y,ny]=conv_m(x,n,h,n); %调用conv_m函数subplot(3,1,3); %绘制第三个子图stem(ny,y);axis([-5,50,0,8]);title('输出响应'); %规定标题为:'输出响应'xlabel('n');ylabel('y(n)'); %纵轴为y(n)%stepseq.m子程序%实现当n>=n0时x(n)的值为1function [x,n]=stepseq(n0,n1,n2)n=n1:n2;x=[(n-n0)>=0];%con_m的子程序%实现卷积的计算function [y,ny]=conv_m(x,nx,h,nh)nyb=nx(1)+nh(1);nye=nx(length(x))+nh(length(h));ny=[nyb:nye];y=conv(x,h);结果:实验二、离散傅立叶变换与快速傅立叶变换1、离散傅立叶变换(DFT)源程序:function pr4()F=50;N=64;T=0.000625;n=1:N;x=cos(2*pi*F*n*T); %x(n)=cos(pi*n/16)subplot(2,1,1); %绘制第一个子图x(n)stem(n,x); %绘制冲激title('x(n)'); %标题为x(n)xlabel('n'); %横座标为nX=dft(x,N); %调用dft函数计算x(n)的傅里叶变换magX=abs(X); %取变换的幅值subplot(2,1,2); %绘制第二个子图DFT|X|stem(n,X);title('DFT|X|');xlabel('f(pi)'); %横座标为f(pi)%dft的子程序%实现离散傅里叶变换function [Xk]=dft(xn,N)n=0:N-1;k=0:N-1;WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;结果:F=50,N=64,T=0.000625时的波形F=50,N=32,T=0.000625时的波形:2、快速傅立叶变换(FFT)源程序:%function pr5()F=50;N=64;T=0.000625;n=1:N;x=cos(2*pi*F*n*T); %x(n)=cos(pi*n/16) subplot(2,1,1);plot(n,x);title('x(n)');xlabel('n'); %在第一个子窗中绘图x(n)X=fft(x);magX=abs(X);subplot(2,1,2);plot(n,X);title('DTFT|X|');xlabel('f(pi)'); %在第二个子图中绘图x(n)的快速傅%里叶变换结果:3、卷积的快速算法源程序:function pr6()n=0:14;x=1.^n;h=(4/5).^n;x(15:32)=0;h(15:32)=0;%到此 x(n)=1, n=0~14; x(n)=0,n=15~32% h(n)=(4/5)^n, n=0~14; h(n)=0,n=15~32subplot(3,1,1);stem(x);title('x(n)');axis([1,32,0,1.5]); %在第一个子窗绘图x(n)横轴从1到32,纵轴从0到1.5 subplot(3,1,2);stem(h);title('h(n)');axis([1,32,0,1.5]); %在第二个子窗绘图h(n)横轴从1到32,纵轴从0到1.5 X=fft(x); %X(n)为x(n)的快速傅里叶变换H=fft(h); %H(n)为h(n)的快速傅里叶变换Y=X.*H; %Y(n)=X(n)*H(n)%Y=conv(x,h);y=ifft(Y); %y(n)为Y(n)的傅里叶反变换subplot(3,1,3) %在第三个子窗绘图y(n)横轴从1到32,纵轴从0到6 stem(abs(y));title('y(n=x(n)*h(n))');axis([1,32,0,6]);结果:实验三、IIR数字滤波器设计源程序:function pr7()wp=0.2*pi;ws=0.3*pi;Rp=1;As=25;T=1;Fs=1/T;OmegaP=(2/T)*tan(wp/2); %OmegaP(w)=2*tan(0.1*pi) OmegaS=(2/T)*tan(ws/2); %OmegaS(w)=2*tan(0.15*pi)ep=sqrt(10^(Rp/10)-1);Ripple=sqrt(1/(1+ep.^2));Attn=1/10^(As/20);N=ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(OmegaP/OmegaS) ));OmegaC=OmegaP/((10.^(Rp/10)-1).^(1/(2*N)));[cs,ds]=u_buttap(N,OmegaC);[b,a]=bilinear(cs,ds,Fs);[mag,db,pha,w]=freqz_m(b,a);subplot(3,1,1); %在第一个子窗绘制幅度响应的图形plot(w/pi,mag);title('幅度响应');xlabel('w(pi)');ylabel('H');axis([0,1,0,1.1]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[0,Attn,Ripple,1]);grid;subplot(3,1,2); %在第二个子窗以分贝为单位绘制幅度响应的图形plot(w/pi,db);title('幅度响应(dB)');xlabel('w(pi)');ylabel('H');axis([0,1,-40,5]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[-50,-15,-1,0]);grid;subplot(3,1,3); %在第三个子窗绘制相位响应的图形plot(w/pi,pha);title('相位响应');xlabel('w(pi)');ylabel('pi unit');%axis([0,1,0,1.1]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[-1,0,1]);grid;function [b,a]=u_buttap(N,OmegaC)[z,p,k]=buttap(N);p=p*OmegaC;k=k*OmegaC.^N;B=real(poly(z));b0=k;b=k*B;a=real(poly(p));function [mag,db,pha,w]=freqz_m(b,a)[H,w]=freqz(b,a,1000,'whole');H=(H(1:501))';w=(w(1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);结果:实验四、FIR数字滤波器的设计源程序:function pr8()wp=0.2*pi;ws=0.35*pi;tr_width=ws-wp;M=ceil(6.6*pi/tr_width)+1;n=0:M-1;wc=(ws+wp)/2;alpha=(M-1)/2;m=n-alpha+eps;hd=sin(wc*m)./(pi*m);w_ham=(hamming(M))';h=hd.*w_ham;[mag,db,pha,w]=freqz_m(h,[1]);delta_w=2*pi/1000;Rp=-(min(db(1:wp/delta_w+1)));As=-round(max(db(ws/delta_w+1:501)));subplot(2,2,1);stem(n,hd);title('理想冲激响应');axis([0,M-1,-0.1,0.3]);ylabel('hd(n)');subplot(2,2,2);stem(n,h);title('实际冲激响应');axis([0,M-1,-0.1,0.3]);ylabel('h(n)');subplot(2,2,3);plot(w/pi,pha);title('滤波器相位响应');axis([0,1,-pi,pi]);ylabel('pha');set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]); set(gca,'YTickmode','manual','YTick',[-pi,0,pi]); grid;subplot(2,2,4);plot(w/pi,db);title('滤波器幅度响应');axis([0,1,-100,10]);ylabel('H(db)');set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]); set(gca,'YTickmode','manual','YTick',[-50,-15,0]);function [mag,db,pha,w]=freqz_m(b,a)[H,w]=freqz(b,a,1000,'whole');H=(H(1:501))';w=(w(1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);结果:。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南京信息工程大学数字信号处理实验报告学院:电子与信息工程学院班级:11通信1班学号:20111334020姓名:杨丹指导教师:乔杰2013/12/6目录实验一Matlab基本知识和信号处理工具箱 (3)实验二离散信号的产生及分析 (5)实验三离散傅立叶变换及分析 (8)实验四IIR数字滤波器的分析与设计 (12)实验五FIR数字滤波器的分析与设计 (14)实验一 Matlab 基本知识和信号处理工具箱一、实验目的1、 了解Matlab 的基本操作2、 了解Matlab 工具箱的函数3、 正确使用Matlab 进行试验仿真二、实验内容(一)画出振荡曲线 和它的包络程序如下:t=0:pi/20:4*pi;yy=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r');hold onplot(t,yy,':b',t,-yy,':b');grid onshg实验结果:(二)sawtooth 产生锯齿波或三角波在Matlab 命令窗口中输入以下命令,也可以用脚本文件来实现。

程序如下:t=-10:0.1:10;x=sawtooth(t);)3sin(3/t e y t -=3/t e yy -=plot(t,x)grid onShg实验结果:三、实验小结在本次实验中,了解了Matlab的基本操作,基本了解了信号处理工具箱的使用方法,能够进行简单的波形绘制。

对波形代码参量有了基本的识别能力。

实验二 离散信号的产生及分析一、实验目的利用函数、脚本文件或在主命令窗口中编写离散信号命令二、实验内容(一)生成离散信号 并画出复序列x(n)的实部,虚部,幅值和相位图。

程序如下:figure(1);clfn=-15:24;alpha=-0.3+j*0.5;x=exp(alpha.*n);subplot(221);stem(n,real(x));title('real part');xlabel('n');subplot(222);stem(n,imag(x));title('imaginary part');xlabel('n');subplot(223);stem(n,abs(x));title('magnitude part');xlabel('n');subplot(224);stem(n,angle(x)*180/pi);title('phase part');xlabel('n');实验结果:(二)请给出离散系统的单位抽样响应和单位阶跃响应2415,)()5.03.0(<≤-=+-n e n x n j )2(2)()2(7.0)1(3.0)(-+=-+--n x n x n y n y n y程序如下:a=[1,-0.3,0.7];b=[1,0,2];x=impseq(0,-20,120);n=[-20:120];h=filter(b,a,x);subplot(211);stem(n,h);subplot(212);axis([-20,120,-1.1,1.1]);title('冲激响应');xlabel('n');ylabel('h(n)');x=stepseq(0,-20,120);s=filter(b,a,x);subplot(212);stem(n,s)axis([-20,120,-0.5,3]);title('阶跃响应');xlabel('n');ylabel('s(n)');其中,impseq为单位冲激序列的生成函数,程序如下:function [x,n]=impseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];stepseq为单位阶跃序列的生成函数,程序如下:function [x,n]=stepseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)>=0];实验结果:(三)请给出序列 的频谱 要求数字频率范围为程序如下:n=-5:14;x=(-0.5).^n;k=-300:300;w=(pi/100)*k;Xw=x*exp(-j*pi/100*n'*k);magXw=abs(Xw);angXw=angle(Xw);subplot(211)plot(w,magXw);gridxlabel('frequency in units of pi');ylabel('|X|');subplot(212)plot(w,angXw);gridxlabel('frequency in units of pi');ylabel('angle/pi')实验结果:三、实验小结学习了离散信号的产生与分析,包括对其相位谱幅度谱的理解与分析。

对Matlab 的编程有了一定的了解。

能够进行简单的编程。

145,)5.0()(≤≤-=n n x n )(jw e X ππ33≤≤-w实验三 离散傅立叶变换及分析一、实验目的1、 正确使用Matlab 进行仿真实验2、 能够正确理解与分析序列的离散傅里叶变换二、实验内容(一)程序如下:n=0:1:99;x=cos(0.23*pi*n)+cos(0.34*pi*n);figure(1);n1=0:1:19;y1=x(1:20);subplot(211);stem(n1,y1);title('长度为20的信号');xlabel('n');axis([0,10,-2.5,2.5]);Y1=fft(y1); magY1=abs(Y1(1:6));k1=0:1:5;w1=2*pi/10*k1;subplot(212);stem(w1,magY1);title('samples of DTFT magnitude'); xlabel('freuency in pi');axis([0,pi,0,15]);figure(2)n3=[0:1:99];y3=[x(1:10),zeros(1,90)];subplot(211);stem(n3,y3);title('补零后的信号');xlabel('n');axis([0,100,-2.5,2.5]);Y3=fft(y3); magY3=abs(Y3(1:51));k3=0:50;w3=2*pi/100*k3;subplot(212);plot(w3,magY3);title('DTDT Magnitude');xlabel('frequency in pi');axis([0,pi,0,10]);figure(3)subplot(211);stem(n,x);title('长度为100的信号x(n)');xlabel('n');axis([0,99,-2.5,2.5]);函数实现请用示例中的所有的离散傅里叶变换求取求以补零的方式加长到中的将的求时取DFT );k (X ),100n 0)(n (x )3();k (X ,100n 0)n (x )1()2(;)k (X DFT )n (x ,)02n 0)(n (x )1()n 43.0(cos )n 32.0(cos )n (x ≤≤≤≤≤≤+=ππX=fft(x);magX=abs(X(1:51));k=0:50;w=2*pi/100*k;subplot(212);plot(w,magX);title('幅频响应'); xlabel('frequency in pi');axis([0,pi,0,60]);实验结果:(二) 请利用DFT 函数实现并与直接线性卷积的结果比较,看是否一致。

程序如下:n_x=0:6;xn=exp(-2*n_x);hn=[-1,2,1,3];n_h=0:3;xn_z=[xn,zeros(1,5)];hn_z=[hn,zeros(1,8)];Xk=fft(xn_z);Hk=fft(hn_z);Yk=Xk.*Hk;yn=ifft(Yk);n_y=0:11;yn_c=conv(xn,hn);figure(1);subplot(3,2,1)stem(n_x,xn);grid on;title('x(n)');xlabel('n');subplot(3,2,2)stem(n_h,hn);grid on;title('h(n)');xlabel('n');subplot(3,1,2);{}3,1,2,1)(,60,)(2-=≤≤=-n h n e n x n )(*)()(n h n x n y =stem(n_y,yn);grid on;title('利用DFT计算得到的y(n)');xlabel('n');subplot(313)n_y=0:9;stem(n_y,yn_c);grid on;title('直接作线性卷积得到的y(n)');xlabel('n');实验结果:三、实验小结学习了离散傅里叶变换的程序编写,了解了怎样求频率响应,掌握了计算物理分辨率和计算分辨率的方法,学会了用DFT方式进行卷积与直接线性卷积的的方法。

实验四 IIR数字滤波器的分析与设计一、实验目的正确使用Matlab进行IIR数字滤波器的仿真、分析与设计二、实验内容(一)设数据采样率为900Hz,现在要设计一9阶的高通Butterworth型数字滤波器,截止频率为300Hz。

程序如下:[b,a]=butter(9,300/450,’high’);freqz(b,a,128,900)实验结果:(二)设计5阶的带阻切比雪夫II型数字滤波器,阻带为100Hz<w<200Hz,阻带比通带低20dB,系统采样频率为1000Hz。

程序如下:Wn=[100 200]/500;[b,a]=cheby2(5,20,Wn,’stop’);freqz(b,a,512,1000);实验结果:(三)设计一低通切比雪夫I型数字滤波器,通带范围0-100Hz,通带波纹3dB,阻带衰减-30dB,系统采样率为1000Hz。

程序如下:Wp=100/500;Ws=200/500;[n,Wn]=cheb1ord(Wp,Ws,3,30);[b,a]=cheby1(n,3,Wn);freqz(b,a,512,1000);实验结果:实验五 FIR数字滤波器的分析与设计一、实验目的1、了解FTR数字滤波器的分析与设计2、正确使用Matlab进行仿真二、实验内容(一)设计一低通切比雪夫I型数字滤波器,通带范围0-100Hz,通带波纹3dB,阻带衰减 -30dB,系统采样率为1000Hz程序如下:taper=chebwin(35,30);b=fir1(34,0.1,taper);freqz(b,1,512);实验结果:(二)两个频率为0.2pi和0.4pi的正弦信号叠加在一起,请用fir2函数设计一FIR 滤波器将频率为0.2pi的正弦信号提取出来。

相关文档
最新文档