2015年西南交通大学数字信号处理实验2
- 格式:doc
- 大小:612.50 KB
- 文档页数:9
西安交通大学《信号与系统B》课程教学大纲(说明:信通系应该学的是《信号与系统A》,但是找不到A的大纲。
只找到了西交大电子、计算机等专业的《信号与系统B》的大纲,因为用的教材是一样的,大家就凑活着用吧)英文名称:Signals and Systems B课程编号:INFT3014学时:68 (讲课60 ,实验8 );学分:4.0 开课时间:秋季学期适用对象:电子科学与技术、计算机科学与技术专业、光信息科学与技术专业先修课程:数学分析(工程类)或高等数学、电路使用教材及参考书:1. 阎鸿森、王新凤、田惠生编《信号与线性系统》,西安交通大学出版社,1999 年8 月第一版2. [ 美] A.V. 奥本海姆等著,刘树棠译,《信号与系统》(第二版),西安交通大学出版社,1998 年一.课程性质、目的和任务“信号与系统”是电气与电子信息类各专业本科生继“电路”或“电路分析基础”课程之后必修的重要主干课程。
该课程主要研究确知信号的特性,线性时不变系统的特性,信号通过线性时不变系统的基本分析方法,信号与系统分析方法在某些重要工程领域的应用,以及数字信号处理的基础知识。
通过本课程的学习,使学生掌握信号分析、线性系统分析及数字信号处理的基本理论与分析方法,并对这些理论与方法在工程中的某些应用有初步了解。
为适应信息科学与技术的飞速发展及在相关专业领域的深入学习打下坚实的基础。
同时,通过习题和实验,学生应在分析问题与解决问题的能力及实践技能方面有所提高。
该课程是学习《现代通信原理》、《自动控制理论》等后续课程所必备的基础。
二.教学基本要求通过本课程的学习,在掌握连续时间信号与系统和离散时间信号与系统分析以及数字信号处理的基本理论和方法方面应达到以下基本要求:1. 掌握信号与系统的基本概念,信号与系统的描述方法,基本信号的特性,系统的一般性质,系统的互联,增量线性系统的等效方法。
2. 掌握信号分解的基本思想及信号在时域、频域和变换域进行分解的基本理论及描述方法。
数字信号处理第二次实验报告学院:信息工程学院班级:2012级电子信息工程*班姓名:学号:20125507**指导老师:实验四:IIR数字滤波器设计及软件实现一、实验目的1、熟悉双线性变换设计IIR滤波器的原理与方法2、掌握IIR滤波器的MATLAB实现方法二、实验原理简述IIR数字滤波器间接法基本设计过程:1、将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;2、设计过渡模拟滤波器;3、将过渡模拟滤波器系统函数转换成数字滤波器的系统函数三、程序与图形1、%-----------------信号产生函数mstg---------------function st=mstg %功能函数的写法%产生信号序列向量st,并显示st的时域波形和频谱%st=mstg 返回三路调幅信号相加形成的混合信号,长度N=1600N=1600 %N为信号st的长度。
Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz,Tp为采样时间t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hz,fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hzfc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hzfm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hzfc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hz,fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hzxt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号st=xt1+xt2+xt3; %三路调幅信号相加fxt=fft(st,N); %计算信号st的频谱%-------绘制st的时域波形和幅频特性曲线-----subplot(2,1,1)plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a) s(t)的波形')subplot(2,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b) s(t)的频谱') axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度')-10123t/ss (t )(b) s(t)的频谱f/Hz幅度2、%-------实验4-2--------- clear all;close allFs=10000;T=1/Fs; %采样频率%调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号st st=mstg;fp=280;fs=450; %下面wp,ws,为fp,fs 的归一化值范围为0-1wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A);y1t=filter(B,A,st); %滤波器软件实现 figure(2);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y1t)-1)*T; plot(t,y1t);%axis([0,1,-80,0])-10123t/ss (t )(b) s(t)的频谱f/Hz幅度-80-60-40-20000.020.040.060.080.10.120.140.16-1-0.500.511.53、%-------实验4-3---------fpl=440;fpu=560;fsl=275;fsu=900;wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60;[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y2t=filter(B,A,st);figure(3);subplot(2,1,1);plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y2t)-1)*T; plot(t,y2t);00.20.40.60.81-80-60-40-20000.020.040.060.080.10.120.140.16-2-10124、%-------实验4-4--------- fp=900;fs=550;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs);%调用ellipord 算椭圆DF 阶数N 通带截止频率 [B,A]=ellip(N,rp,rs,wp,'high'); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y3t=filter(B,A,st);figure(4);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y3t)-1)*T; plot(t,y3t);-80-60-40-20000.020.040.060.080.10.120.140.16-2-1012四、实验结果分析由图可见,三个分离滤波器指标参数选取正确,损耗函数曲线达到所给指标。
数字信号处理实验指导书电子信息工程学院2015年4月目录实验一离散信号产生和基本运算 (3)实验二基于MATLAB的离散系统时域分析 (7)实验三基于ICETEK-F2812-A 教学系统软件的离散系统时域分析 (9)实验四基于MATLAB 的FFT 算法的应用 (14)实验五基于ICETEK-F2812-A 的FFT 算法分析 .................................. 错误!未定义书签。
实验六基于ICETEK-F2812-A 的数字滤波器设计 ................................. 错误!未定义书签。
实验七基于ICETEK-F2812-A的交通灯综合控制................................... 错误!未定义书签。
实验八基于BWDSP100的步进电机控制................................................. 错误!未定义书签。
实验一离散信号产生和基本运算一、实验目的1.掌握MATLAB最基本的矩阵运算语句。
2.掌握对常用离散信号的理解与运算实现。
二、实验原理1.向量的生成(1)利用冒号“:”运算生成向量,其语句格式有两种:A=m:nB=m:p:n第一种格式用于生成不长为1的均匀等分向量,m和n分别代表向量的起始值和终止值,n>m 。
第二种格式用于生成步长为p的均匀等分的向量。
(2)利用函数linspace()生成向量,linspace()的调用格式为:A=linspace(m,n)B=linspace(m,n,s)第一种格式生成从起始值m开始到终止值n之间的线性等分的100元素的行向量。
第二种格式生成从起始值m开始到终止值n之间的s个线性等分点的行向量。
2.矩阵的算术运算(1)加法和减法对于同维矩阵指令的A+BA-B对于矩阵和标量(一个数)的加减运算,指令为:A+3A-9(2)乘法和除法运算A*B 是数学中的矩阵乘法,遵循矩阵乘法规则A.*B 是同维矩阵对应位置元素做乘法B=inv(A)是求矩阵的逆A/B 是数学中的矩阵除法,遵循矩阵除法规则A./B 是同维矩阵对应位置元素相除另A’表示矩阵的转置运算3.数组函数下面列举一些基本函数,他们的用法和格式都相同。
西南交⼤数字图像处理第⼆次试验数字图像处理第⼆次实验注意提交实验报告的⽂件名格式(姓名+学号+实验报告⼆.doc)实验三灰度变换增强⼀、实验⽬的1.熟悉matlab图像处理⼯具箱及直⽅图函数的使⽤;2.了解灰度变换增强的Matlab实现⽅法3.掌握直⽅图灰度变换⽅法4.理解和掌握直⽅图原理和⽅法;⼆、实验内容1. 线段上像素灰度分布读⼊灰度图像'peppers_gray.bmp',采⽤交互式操作,⽤improfile绘制⼀条线段的灰度值。
imshow(rgb2gray(imread('peppers.bmp')))Improfile读⼊RGB图像‘flowers.tif’,显⽰所选线段上红、绿、蓝颜⾊分量的分布imshow('flowers.tif')Improfile2. 直⽅图变换A)直⽅图显⽰在matlab环境中,程序⾸先读取图像'cameraman.tif',然后调⽤直⽅图函数,设置相关参数,再输出处理后的图像。
I=imread('cameraman.tif'); %读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直⽅图title('原始图像直⽅图') %在原图直⽅图上加标题读⼊图像‘rice.png’,在⼀个窗⼝中显⽰灰度级n=64,128和256的图像直⽅图。
I=imread('rice.png');imshow(I)I=imread('rice.png');subplot(1,3,1),imhist(I,64)title('n=64')subplot(1,3,2),imhist(I,128)title('n=128')subplot(1,3,3),imhist(I,256)title('n=256')B)直⽅图灰度调节利⽤函数imadjust调解图像灰度范围,观察变换后的图像及其直⽅图的变化。
实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。
2.应用DFT 分析信号的频谱。
3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。
二、实验设备与环境 计算机、MATLAB 软件环境 三、实验基础理论1.DFT 与DTFT 的关系有限长序列 的离散时间傅里叶变换 在频率区间 的N 个等间隔分布的点 上的N 个取样值可以由下式表示:212/0()|()()01N jkn j Nk N k X e x n eX k k N πωωπ--====≤≤-∑由上式可知,序列 的N 点DFT ,实际上就是 序列的DTFT 在N 个等间隔频率点 上样本 。
2.利用DFT 求DTFT方法1:由恢复出的方法如下:由图2.1所示流程可知:101()()()N j j nkn j nN n n k X e x n eX k W e N ωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑ 由上式可以得到:IDFTDTFT( )12()()()Nj k kX e X k Nωπφω==-∑ 其中为内插函数12sin(/2)()sin(/2)N j N x eN ωωφω--= 方法2:实际在MATLAB 计算中,上述插值运算不见得是最好的办法。
由于DFT 是DTFT 的取样值,其相邻两个频率样本点的间距为2π/N ,所以如果我们增加数据的长度N ,使得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样就可以利用DFT 计算DTFT 。
如果没有更多的数据,可以通过补零来增加数据长度。
3.利用DFT 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。
对于连续时间非周期信号,按采样间隔T 进行采样,阶段长度M ,那么:1()()()M j tj nT a a a n X j x t edt T x nT e ∞--Ω-Ω=-∞Ω==∑⎰对进行N 点频域采样,得到2120()|()()M jkn Na a M kn NTX j T x nT eTX k ππ--Ω==Ω==∑因此,可以将利用DFT 分析连续非周期信号频谱的步骤归纳如下: (1)确定时域采样间隔T ,得到离散序列(2)确定截取长度M ,得到M 点离散序列,这里为窗函数。
数字信号处理实验报告实验一:信号、系统及系统响应一、实验目的:(1) 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。
(2) 熟悉时域离散系统的时域特性。
(3) 利用卷积方法观察分析系统的时域特性。
(4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。
二、实验原理与方法:(1) 时域采样。
(2) LTI系统的输入输出关系。
三、实验内容、步骤(1) 认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理与方法。
(2) 编制实验用主程序及相应子程序。
①信号产生子程序,用于产生实验中要用到的下列信号序列:a. xa(t)=A*e^-at *sin(Ω0t)u(t)A=444.128;a=50*sqrt(2)*pi;b. 单位脉冲序列:xb(n)=δ(n)c. 矩形序列:xc(n)=RN(n), N=10②系统单位脉冲响应序列产生子程序。
本实验要用到两种FIR系统。
a. ha(n)=R10(n);b. hb(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)③有限长序列线性卷积子程序用于完成两个给定长度的序列的卷积。
可以直接调用MATLAB语言中的卷积函数conv。
conv用于两个有限长度序列的卷积,它假定两个序列都从n=0 开始。
调用格式如下:y=conv (x, h)四、实验内容调通并运行实验程序,完成下述实验内容:①分析采样序列的特性。
a. 取采样频率fs=1 kHz, 即T=1 ms。
b. 改变采样频率,fs=300 Hz,观察|X(ejω)|的变化,并做记录(打印曲线);进一步降低采样频率,fs=200 Hz,观察频谱混叠是否明显存在,说明原因,并记录(打印)这时的|X(ejω)|曲线。
②时域离散信号、系统和系统响应分析。
a. 观察信号xb(n)和系统hb(n)的时域和频域特性;利用线性卷积求信号xb(n)通过系统hb(n)的响应y(n),比较所求响应y(n)和hb(n)的时域及频域特性,注意它们之间有无差别,绘图说明,并用所学理论解释所得结果。
数字信号处理MATLAB上机实验第三章3-23已知序列x(n)={1,2,3, 3,2,1}1)求出x(n)的傅里叶变换X(ejω),画出幅频特性和相频特性曲线(提示:用1024点FFT近似X(ejω));2)计算x(n)的N(N≥6)点离散傅里叶变换X(k),画出幅频特性和相频特性曲线;3) 将X(ejω)和X(k)的幅频特性和相频特性曲线分别画在同一幅图中, 验证X(k)是X(ej ω)的等间隔采样, 采样间隔为2π/N;4)计算X(k)的N点IDFT,验证DFT和IDFT的惟一性。
实验分析(1)题用1024点DFT近似x(n)的傅里叶变换.(2)题用36点DFT。
(4)题求傅里叶反变换验证IDFT的惟一性.实验代码及截图1到3问xn=[1 2 3 3 2 1];Xen=fft(xn,1024);n1=0:length(Xen)—1;amp = abs(Xen);phi = angle(Xen);Xkn=fft(xn,36);n2=0:length(Xkn)-1;amp2 = abs(Xkn);phi2 = angle(Xkn);subplot(221);plot(n1,amp)title(’Xejw幅频特性');xlabel('n');ylabel('Amp') subplot(222);plot(n1,phi)title('Xejw相频特性');xlabel(’n’);ylabel('Phi')subplot(223);stem(n2,amp2,'。
’)title('Xk幅频特性’);xlabel('n');ylabel('Amp')subplot(224);stem(n2,phi2,’.’)title(’Xk相频特性');xlabel('n’);ylabel(’Phi')截图如下第4问xn=[1 2 3 3 2 1];Xkn2=fft(xn,6);x6n=ifft(Xkn2);n2=0:length(x6n)-1;subplot(2,1,2);stem(n2,x6n,'。
《数字信号处理》第三版,高西全、丁玉美,实验程序清单:实验0实验内容:1、实验用Matlab工具箱函数简介熟悉以下函数的功能、格式(1)abs (2)angle (3)conv (4)filter(5)freqz (6)impz (7)fft (8)ifft(9)plot (10)stem (11)subplot (12)figure2、常用序列的产生及其频谱分析(1)单位脉冲序列及其频谱n=0:50; %定义序列的长度是50x=[1,zeros(1,50)]; %注意:MATLAB中数组下标从1开始%x(1)=1;close all;subplot(3,1,1);stem(x);title('单位冲击信号序列');k=-25:25;X=x*(exp(-j*pi/25)).^(n'*k);magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title('单位冲击信号的幅度谱'); angX=angle(X); %绘制x(n)的相位谱subplot(3,1,3);stem(angX) ; title ('单位冲击信号的相位谱')(2)矩形序列及其频谱n=1:50x=sign(sign(10-n)+1);close all;subplot(3,1,1);stem(x);title(‘矩形序列’);k=-25:25;X=x*(exp(-j*pi/25)).^(n’*k);magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title(‘矩形序列的幅度谱’);angX=angle(X); %绘制x(n)的相位谱sub plot(3,1,3);stem(angX) ; title (‘矩形序列的相位谱’)(3)特定冲击串及其频谱%h2(n)= δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)n=1:50; %定义序列的长度是50x=zeros(1,50); %注意:MATLAB中数组下标从1开始x(1)=1;x(2)=2.5;x(3)=2.5;x(4)=1;close all;subplot(3,1,1);stem(x);title(‘特定冲击串’);k=-25:25;X=x*(exp(-j*pi/12.5)).^(n’*k);magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title(‘特定冲击串的幅度谱’);angX=angle(X); %绘制x(n)的相位谱subplot(3,1,3);stem(angX) ; title (‘特定冲击串的相位谱’)(4)采样信号序列及其频谱%x(n)=Ae-anT sin(w0nT)u(nT) (0<=n<=50);%A=444.128;a=50*sqrt(2.0)*pi; fs=1kHz(T=0.001);w0=50*sqrt(2.0)*pi n=0:50; %定义序列的长度是50A=444.128; %设置信号有关的参数a=50*sqrt(2.0)*pi;T=0.001; %采样率,fs=1kHzw0=50*sqrt(2.0)*pi;x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定义的π,信号乘可采用“.*”close all %清除已经绘制的x(n)图形subplot(3,1,1);stem(x); %绘制x(n)的图形title(‘理想采样信号序列’);k=-25:25;W=(pi/12.5)*k;X=x*(exp(-j*pi/12.5)).^(n’*k);magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’);angX=angle(X); %绘制x(n)的相位谱subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’)单位冲击信号的相位谱矩形序列的相位谱特定冲击串特定冲击串的幅度谱特定冲击串的相位谱理想采样信号序列理想采样信号序列的相位谱实验一 系统响应及系统稳定性%====内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性==== close all;clear allA=[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,128); %产生信号x2(n)=u(n)hn=impz(B,A,58); %求系统单位脉冲响应h(n)subplot(3,1,1);stem(hn);title('(a) 系统单位脉冲响应h(n)');y1n=filter(B,A,x1n); %求系统对x1(n)的响应y1(n)subplot(3,1,2);stem(y1n);title('(b) 系统对R8(n)的响应y1(n)');y2n=filter(B,A,x2n); %求系统对x2(n)的响应y2(n)subplot(3,1,3);%y='y2(n)';stem(y2n);title('(c) 系统对u(n)的响应y2(n)');box on%===内容2:调用conv函数计算卷积=====x1n=[1 1 1 1 1 1 1 1 ]; %产生信号x1(n)=R8(n)h1n=[ones(1,10) zeros(1,10)];h2n=[1 2.5 2.5 1 zeros(1,10)];y21n=conv(h1n,x1n);y22n=conv(h2n,x1n);figure(2)subplot(2,2,1);stem(h1n); %调用函数stem绘图title('(d) 系统单位脉冲响应h1(n)');box onsubplot(2,2,2);stem(y21n);title('(e) h1(n)与R8(n)的卷积y21(n)');box onsubplot(2,2,3);stem(h2n);title('(f) 系统单位脉冲响应h2(n)');subplot(2,2,4);stem(y22n);title('(g) h2(n)与R8(n)的卷积y22(n)');%====内容3:谐振器分析=======un=ones(1,256); %产生信号u(n)n=0:255;xsin=sin(0.014*n)+sin(0.4*n); %产生正弦信号A=[1,-1.8237,0.9801];B=[1/100.49,0,-1/100.49]; %系统差分方程系数向量B和A y31n=filter(B,A,un); %谐振器对u(n)的响应y31(n)y32n=filter(B,A,xsin); %谐振器对u(n)的响应y31(n)figure(3)subplot(2,1,1);stem(y31n);title('(h) 谐振器对u(n)的响应y31(n)'); subplot(2,1,2);stem(y32n);title('(i) 谐振器对正弦信号的响应y32(n)');(a) 系统单位脉冲响应h(n)(b) 系统对R8(n)的响应y1(n)(f) 系统单位脉冲响应h2(n)(g) h2(n)与R8(n)的卷积y22(n)(h) 谐振器对u(n)的响应y31(n)(i) 谐振器对正弦信号的响应y32(n)实验二时域采样与频域采样1时域采样理论的验证程序清单% 时域采样理论验证程序exp2a.mTp=64/1000; %观察时间Tp=64微秒%产生M长采样序列x(n)% Fs=1000;T=1/Fs;Fs=1000;T=1/Fs;M=Tp*Fs;n=0:M-1;A=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5;xnt=A*exp(-alph*n*T).*sin(omega*n*T);Xk= fft(xnt,M); %M点FFT[xnt)]yn='xa(nT)';subplot(3,2,1);stem(xnt);title('(a) Fs=1000Hz');k=0:M-1;fk=k/Tp;subplot(3,2,2);plot(fk,abs(Xk));title('(b) FT[xa(nT)],Fs=1000Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))])%================================% Fs=300Hz和Fs=200Hz的程序与上面Fs=1000Hz完全相同。
信号与系统实验报告班级: 通信工程5班指导老师:周?多姓名:学号:西南交通大学信息科学与技术学院二〇一五年五月十五日实验一:连续时间信号的频域分析实验目的:1、掌握连续时间周期信号的傅里叶级数的物理意义和分析方法;2、观察截短傅里叶级数产生的Gibbs现象,了解其特点及产生的原因;3、掌握连续时间傅里叶变换的分析方法及其物理意义;4、掌握各种典型的连续时间非周期信号的频谱特征以及傅里叶变换的主要性质;5、学习掌握利用MATLAB语言编写计算CTFS、CTFT的程序,并能利用这些程序对一些典型信号进行频谱分析,验证CTFT的若干重要性质。
实验要求:掌握并深刻理傅里叶变换的物理意义,掌握信号的傅里叶变换的计算方法,掌握利用MATLAB编程完成相关的傅里叶变换的计算。
实验原理:1.傅里叶级数:2.吉布斯现象:实验内容:1.参照例2-1程序,上机验证周期方波信号的傅里叶级数ck,并画出幅度谱|ck|。
1.1 程序代码(1)准备:定义单位阶跃函数和delta函数% filename u.mfunction y = u(t)y = (t>=0);% filename delta.mfunction y = delta(t)dt = 0.001;y = (u(t)-u(t-dt))/dt;将u.m和delta.m分别保存到work文件夹中,或者保存在自己建立的文件夹中并将此文件夹设为工作路径(file->set path...)(2)验证方波信号的傅里叶级数ck并画频谱图:clear, close allT = 2; dt = 0.00001; t = -2:dt:2;x1 = u(t) - u(t-1-dt); x = 0;w0 = 2*pi/T; N = 5; L = 2*N+1;for k = -N: N; % Fourier series coefficients akak(N+1+k) = (1/T)*x1*exp(-j*k*w0*t')*dt;endamp = abs(ak); k=-N:N;subplot(2,1,1); stem(k,amp); title('amplitude-freq');phi = angle(ak); % Evaluate the phase of aksubplot(2,1,2); stem(k,phi); title('phase-freq');1.2 幅度谱|ck|,相位谱图像:2.参照例2-2程序,上机验证有限项复指数信号合成周期方波信号时的Gibbs现象。
数字信号处理实验报告完整版[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中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。
数字信号处理MATLAB上机实验第三章3-23已知序列x(n)={1, 2, 3, 3, 2, 1}1)求出x(n)的傅里叶变换X(ejω),画出幅频特性和相频特性曲线(提示:用1024点FFT近似X(ejω));2)计算x(n)的N(N≥6)点离散傅里叶变换X(k),画出幅频特性和相频特性曲线;3)将X(ejω)和X(k)的幅频特性和相频特性曲线分别画在同一幅图中,验证X(k)是X(ejω)的等间隔采样,采样间隔为2π/N;4)计算X(k)的N点IDFT,验证DFT和IDFT的惟一性。
实验分析(1)题用1024点DFT近似x(n)的傅里叶变换。
(2)题用36点DFT。
(4)题求傅里叶反变换验证IDFT的惟一性。
实验代码及截图1到3问xn=[1 2 3 3 2 1];Xen=fft(xn,1024);n1=0:length(Xen)-1;amp = abs(Xen);phi = angle(Xen);Xkn=fft(xn,36);n2=0:length(Xkn)-1;amp2 = abs(Xkn);phi2 = angle(Xkn);subplot(221);plot(n1,amp)title('Xejw幅频特性');xlabel('n');ylabel('Amp') subplot(222);plot(n1,phi)title('Xejw相频特性');xlabel('n');ylabel('Phi') subplot(223);stem(n2,amp2,'.')title('Xk幅频特性');xlabel('n');ylabel('Amp') subplot(224);stem(n2,phi2,'.')title('Xk相频特性');xlabel('n');ylabel('Phi')截图如下第4问xn=[1 2 3 3 2 1];Xkn2=fft(xn,6);x6n=ifft(Xkn2);n2=0:length(x6n)-1;subplot(2,1,2);stem(n2,x6n,'.');title('X6k傅里叶逆变换');xlabel('n');ylabel('x6n'); Xkn1=fft(xn,16);x16n=ifft(Xkn1);n1=0:length(x16n)-1;subplot(2,1,1);stem(n1,x16n,'.');title('X16k傅里叶逆变换');xlabel('n');ylabel('x16n') 截图为3-25已知序列h(n)=R6(n), x(n)=nR8(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.通过观察对实际心电图的滤波作用,获得数字滤波器的感性知识。
数字信号处理II实验报告实验题目:维纳滤波器的计算机实现姓名:学号:班级:专业:一、实验目的1.利用计算机编程实现加性噪声信号的维纳滤波。
2.将计算机模拟实验结果与理论分析结果相比较,分析影响维纳滤波效果的各种因素,从而加深对维纳滤波的理解。
3.利用维纳一步纯预测方法实现对信号生成模型的参数估计。
二、实验原理维纳滤波是一种从噪声背景中提取信号的最佳线性滤波方法,假定一个随机信号x(n)具有以下形式:(n)s(n)v(n)x =+ 1-1其中,s(n)为有用信号,v(n)为噪声干扰,将其输入一个单位脉冲响应为h(n)的线性系统,其输出为(n)(m)x(n m)y h ∞-∞=-∑ 1-2 我们希望x(n)通过这个系统后得到的y(n)尽可能接近于s(n),因此,称y(n)为信号s(n)的估值。
按照最小均方误差准则,h(n)应满足下面的正则方程:(k)(m)(k m)xs xx h φφ∞-∞=-∑ 1-3 这就是著名的维纳-霍夫方程,其中是 (m)xx φ是x(n)的自相关函数,()xs m φ是 x(n)和s(n)是的互相关函数。
在要求 h(n)满足因果性的条件下,求解维纳-霍夫方程是一个典型的难题。
虽然目前有几种求解 h(n)的解析方法,但它们在计算机上实现起来非常困难。
因此,本实验中,利用近似方法,即最佳 FIR 维纳滤波方法,在计算机上实现随机信号的维纳滤波。
设 h(n)为一因果序列,其长度为 N ,则(n)(m)x(n m)y h ∞-∞=-∑ 1-4 同样利用最小均方误差准则,h(n)满足下面方程:xx xs R h r = 1-5 其中 [](0),h(1),,h(N 1)T h h =-(0)(1)(N 1)(0)xx xx xx xx xx N R φφφφ-+⎛⎫⎪= ⎪ ⎪-⎝⎭[](0)(N 1)T xs xs xs r φφ=- 当xx R 为满秩矩阵时,1xx xs h R r -= 1-6 由此可见,利用有限长的 h(n)实现维纳滤波器,只要已知xx R 和xs r ,就可以按上式解得满足因果性的 h 。
数字信号处理MATLAB上机实验第一章14(2)已知差分方程为y(n)=1/5(x(n)+x(n-1)+x(n-2)+x(n-3)+x(n-4)),输入信号如下图所示,试求出y(n).实验目的:学习MATLAB的简单使用,学习如何使用MA TLAB绘制信号的波形图。
实验任务:学会调用filter、filtic函数求解差分方程,掌握差分方程的解法以及波形图的绘制方法。
实验思路:实验代码:ys=1;xn=[ones(1,12),[2,1,1,0.5,1,1,1,1.5],ones(1,12)];B=[0.2,0.2,0.2,0.2,0.2];A=1;xi=filtic(B,A,ys);yn=filter(B,A,xn,xi);n=0:length(yn)-1;subplot(1,1,1);stem(n,yn,'.')title('(第14题)');xlabel('n');ylabel('y(n)')运行结果:实验总结:掌握了序列差分方程的求解方法,感受到了MATLAB的强大之处。
了解了使用MATLAB解决数字信号问题的基本形式。
16(1)已知差分方程y(n)=0.6y(n-1)-0.08y(n-2)+x(n),求出系统的单位脉冲响应和单位阶跃响应。
实验目的:掌握用MA TLAB求解差分方程以及MA TLAB对函数的表示。
实验任务:用MATLAB表示冲击函数和阶跃函数,并求出题设差分方程对应的两种响应的波形。
实验思路:实验代码:单位脉冲响应:ys=1;xn=[1,zeros(1,30)];B=1;A=[1,-0.6,0.08];xi=filtic(B,A,ys);yn=filter(B,A,xn,xi);n=0:length(yn)-1;subplot(1,1,1);stem(n,yn,'.')title('(16-1)');xlabel('n');ylabel('h(n)')单位阶跃响应:ys=1;xn=[ones(1,30)];B=1;A=[1,-0.6,0.08];xi=filtic(B,A,ys);yn=filter(B,A,xn,xi);n=0:length(yn)-1;subplot(1,1,1);stem(n,yn,'.')title('(16-2)');xlabel('n');ylabel('u(n)')运行结果:单位脉冲响应单位阶跃响应实验总结:掌握了冲激函数和阶跃函数的波形求解方法,对MA TLAB的使用更加熟练。
实验二离散时间系统的时域分析实验室名称:计算机基础实验室(信息学院2202)实验时间:2015 年9 月24 日姓名:王凤琼学号:20131060114 专业:电子信息工程指导教师:柏正尧02468101214-20-101020振幅时间序号n用卷积得到的输出02468101214-20-101020振幅时间序号n 由滤波生成的输出七、实验思考题及解答Q2.1对M=2,运行上述程序,生成输入x[n]=s1[n]+s2[n]的输出信号。
输入x[n] 的哪个分量被该离散时间系统抑制?答:由图一可以看出,输出信号只保留了输入信号x[n]的s1[n]部分,即低频正弦部分,输入x[n]的s2[n]高频分量被抑制,可知该离散时间系统为低通滤波系统。
Q2.2若线性时不变系统由y[n]=0.5(x[n]+x[n-1])变成y[n]=0.5(x[n]-x[n-1]), 对输入x[n]=s1[n]+s2[n]的影响是什么?答:线性时不变系统由y[n]=0.5(x[n]+x[n-1])变成y[n]=0.5(x[n]-x[n-1]) 可以修改程序中的num=ones(1,M)为num=[1,-ones(1,M-1)]。
看程序运行结果,可以看出输出信号保留了输入信号x[n]的高频部分,低频部分被抑制了。
该系统将由低通滤波器变为高通滤波器。
它会让 s2 信号的高频成分通过, 而把 s1 信号 的低频成分滤除。
Q2.7运行程序P2.3,对由加权输入得到的y[n]与在相同权系数下输出y1[n]和 y2[n]相加得到的yt[n]进行比较,这两个序列是否相等?该系统是线性系统吗?答:根据线性系统的定义,若x1[n]y1[n],x2[n]y2[n],得出 a*x1[n]+b*x2[n]a*y1[n]+b*y2[n],故该系统是线性系统。
由图得到,两个序列是相等的,满足y[n]=yt[n],所以该系统是线性的。
Q2.12运行程序p2.4,并比较输出序列y[n]和yd[n-10],这两个序列之间有什么关系?该。
实验三 离散时间信号的频域分析实验室名称:信息学院2204 实验时间:2015年10月15日姓 名:蒋逸恒 学号:20131120038 专业:通信工程 指导教师:陶大鹏成绩教师签名:一、实验目的1、 对前面试验中用到的信号和系统在频域中进行分析,进一步研究它们的性质。
2、 学习离散时间序列的离散时间傅立叶变换(DTFT 、离散傅立叶变换(DFT 和z 变换。
二、实验内容Q3.1在程序P3.1中,计算离散时间傅里叶变换的原始序列是什么?Matlab 命令pause的作用是什么?Q3.2运行程序P3.1,求离散时间傅里叶变换得的实部、虚部以及幅度和香相位谱。
离散时间傅里叶变换是 w 的周期函数吗?若是,周期是多少?描述这四个图形表示的 对称性。
Q3.2修改程序P3.1,在范围0W w Wn 内计算如下序列的离散时间傅里叶变换:0.7 0.5e jw 0.3e j2w e j3w1 0.3e jw 0.5e j2w 0.7e j3w并重做习题P3.2,讨论你的结果。
你能解释相位谱中的跳变吗? 可以移除变化。
试求跳变被移除后的相位谱。
Q3.6通过加入合适的注释语句和程序语句,修改程序 两个轴加标记。
哪个参数控制时移量?Q3.10通过加入合适的注释语句和程序语句,修改程序 两个轴加标记。
哪个参数控制频移量?Q3.14通过加入合适的注释语句和程序语句,修改程序 两个轴加标记。
Q3.15运行修改后的程序并讨论你的结果。
Q3.17通过加入合适的注释语句和程序语句,修改程序 两个轴加标记。
Q3.20通过加入合适的注释语句和程序语句,修改程序 两个轴加标记。
试解释程序怎样进行时间反转运算。
Q3.23编写一个MATLAB?序,计算并画出长度为为值,其中L > N,然后计算并画出L 点离散傅里叶逆变换X[k]。
对不同长度N 和不同的 离散傅里叶变换长度L ,运行程序。
讨论你的结果。
U(e jw )MATLAE 命P3.2,对程序生成的图形中的 P3.3,对程序生成的图形中的 P3.4,对程序生成的图形中的P3.5,对程序生成的图形中的 P3.6,对程序生成的图形中的 N 的L 点离散傅里叶变换X[k]的Q3.26在函数circshift 中,命令rem 的作用是什么? Q3.27解释函数circshift 怎样实现圆周移位运算。
数字信号处理MATLAB上机实验第三章3-23已知序列x(n)={1, 2, 3, 3, 2, 1}1)求出x(n)的傅里叶变换X(ejω),画出幅频特性和相频特性曲线(提示:用1024点FFT近似X(ejω));2)计算x(n)的N(N≥6)点离散傅里叶变换X(k),画出幅频特性和相频特性曲线;3)将X(ejω)和X(k)的幅频特性和相频特性曲线分别画在同一幅图中,验证X(k)是X(ejω)的等间隔采样,采样间隔为2π/N;4)计算X(k)的N点IDFT,验证DFT和IDFT的惟一性。
实验分析(1)题用1024点DFT近似x(n)的傅里叶变换。
(2)题用36点DFT。
(4)题求傅里叶反变换验证IDFT的惟一性。
实验代码及截图1到3问xn=[1 2 3 3 2 1];Xen=fft(xn,1024);n1=0:length(Xen)-1;amp = abs(Xen);phi = angle(Xen);Xkn=fft(xn,36);n2=0:length(Xkn)-1;amp2 = abs(Xkn);phi2 = angle(Xkn);subplot(221);plot(n1,amp)title('Xejw幅频特性');xlabel('n');ylabel('Amp')subplot(222);plot(n1,phi)title('Xejw相频特性');xlabel('n');ylabel('Phi')subplot(223);stem(n2,amp2,'.')title('Xk幅频特性');xlabel('n');ylabel('Amp')subplot(224);stem(n2,phi2,'.')title('Xk相频特性');xlabel('n');ylabel('Phi')截图如下第4问xn=[1 2 3 3 2 1];Xkn2=fft(xn,6);x6n=ifft(Xkn2);n2=0:length(x6n)-1;subplot(2,1,2);stem(n2,x6n,'.');title('X6k傅里叶逆变换');xlabel('n');ylabel('x6n'); Xkn1=fft(xn,16);x16n=ifft(Xkn1);n1=0:length(x16n)-1;subplot(2,1,1);stem(n1,x16n,'.');title('X16k傅里叶逆变换');xlabel('n');ylabel('x16n') 截图为3-25已知序列h(n)=R6(n), x(n)=nR8(n)。
1)计算yc(n)=h(n) 8 x(n);2)计算yc(n)=h(n) 16 x(n)和y(n)=h(n)*x(n);3)画出h(n)、 x(n)、 yc(n)和y(n)的波形图,观察总结循环卷积与线性卷积的关系。
实验分析循环卷积为线性卷积的周期延拓序列的主值序列;当循环卷积区间长度大于等于线性卷积序列长度时,二者相等。
实验代码及截图hn=[1 1 1 1 1 1];xn=[0 1 2 3 4 5 6 7];%用DFT计算8点循环卷积yc8n:H8k=fft(hn,8); %计算h(n)的8点DFTX8k=fft(xn,8); %计算x(n)的8点DFTYc8k=H8k.*X8k;yc8n=ifft(Yc8k,8);%用DFT计算16点循环卷积yc16n:H16k=fft(hn,16); %计算h(n)的16点DFTX16k=fft(xn,16); %计算x(n)的16点DFTYc16k=H16k.*X16k;yc16n=ifft(Yc16k,16);%时域计算线性卷积yn:yn=conv(hn,xn);%以下为绘图部分n=0:7;subplot(3,1,1);stem(n,yc8n,'.'); axis([0,17,0,30])title('(a)8点循环卷积 ');xlabel('n');ylabel('yc(n)')n=0:15;subplot(3,1,2);stem(n,yc16n,'.'); axis([0,17,0,30])title('(b)16点循环卷积 ');xlabel('n');ylabel('yc(n)')n=0:length(yn)-1;subplot(3,1,3);stem(n,yn,'.'); axis([0,17,0,30])title('(c)线性卷积');xlabel('n');ylabel('y(n)')实验结论:当N的值选取得当时,循环卷积的结果和线性卷积的结果相同。
3-27选择合适的变换区间长度N,用DFT对下列信号进行谱分析,画出幅频特性和相频特性曲线。
1) x1(n)=2 cos(0.2πn)2) x2(n)=sin(0.45πn)sin(0.55πn)3) x3(n)=2-|n|R21(n+10)实验分析对x1(n),其周期为10,所以取N1=10;因为x2(n)=sin(0.45πn) sin(0.55πn)=0.5[cos(0.1πn)-cos(πn)],其周期为20,所以取N2=20; x3(n)不是因果序列,所以先构造其周期延拓序列(延拓周期为N3),再对其主值序列进行N3点DFT。
x1(n)和x2(n)是周期序列,所以截取1个周期,用DFT进行谱分析,得出精确的离散谱。
x3(n)是非因果、非周期序列,通过试验选取合适的DFT变换区间长度N3进行谱分析。
实验源程序及结果第(1)问n1=0:9;N1=10;x1n=2*cos(0.2*pi*n1);X1k=fft(x1n,N1);%以下为绘图部分%-------------------绘制x1(n)的频谱特性图--------------------------------k=0:N1-1;wk=2*k/N1;subplot(2,1,1);stem(wk,abs(X1k),'.');title('(a) x1(n)的幅频特性图');xlabel('ω/π');ylabel('幅度');grid on;box onsubplot(2,1,2);stem(wk,angle(X1k),'.');grid on;box online([0,2],[0,0])title('(b) x1(n)的相频特性图');xlabel('ω/π');ylabel('相位');结果截图第2问n2=0:50;N2=20;x2n=2*sin(0.45*pi*n2).*sin(0.55*pi*n2);X2k=fft(x2n,N2); %计算序列x2(n)的N2点DFT%-------------------绘制x2(n)的频谱特性图---------------------------------k=0:N2-1;wk=2*k/N2;subplot(2,1,1);stem(wk,abs(X2k),'.');grid on;box ontitle('(a) x2(n)的幅频特性图');xlabel('ω/π');ylabel('幅度')subplot(2,1,2);stem(wk,angle(X2k),'.');grid on;box online([0,2],[0,0])title('(b) x2(n)的相频特性图');xlabel('ω/π');ylabel('相位');截图为第3问n3=-10:10;N3a=32;N3b=64;x3n=0.5.^abs(n3);x3anp=zeros(1,N3a); %构造x3(n)的周期延拓序列,周期为N3afor m=1:10,x3anp(m)=x3n(m+10);x3anp(N3a+1-m)=x3n(11-m);endx3bnp=zeros(1,N3b); %构造x3(n)的周期延拓序列,周期为N3bfor m=1:10,x3bnp(m)=x3n(m+10);x3bnp(N3b+1-m)=x3n(11-m);endX3ak=fft(x3anp,N3a);X3bk=fft(x3bnp,N3b);%-----------绘制32点周期延拓序列和32点DFT[x3(n)]的频谱特性图----------------- n=0:N3a-1;subplot(3,2,1);stem(n,x3anp,'.');box ontitle('(a) x3(n)的32点周期延拓序列');k=0:N3a-1;wk=2*k/N3a;subplot(3,2,3);plot(wk,abs(X3ak));title('(b) DFT[x3(n)]_3_2的幅频特性图');xlabel('ω/π');ylabel('幅度') subplot(3,2,5);plot(wk,angle(X3ak));line([0,2],[0,0])title('(c) DFT[x3(n)]_3_2的相位');xlabel('ω/π');ylabel('相位');%-------------绘制64点周期延拓序列和64点DFT[x3(n)]的频谱特性图--------------- n=0:N3b-1;subplot(3,2,2);stem(n,x3bnp,'.');box ontitle('(d) x3(n)的64点周期延拓序列');k=0:N3b-1;wk=2*k/N3b;subplot(3,2,4);plot(wk,abs(X3bk));title('(e) DFT[x3(n)]_6_4的幅频特性图');xlabel('ω/π');ylabel('幅度') subplot(3,2,6);plot(wk,angle(X3bk));line([0,2],[0,0])title('(f) DFT[x3(n)]_3_2的相位');xlabel('ω/π');ylabel('相位');第四章4.6按照下面的IDFT算法编写MATLAB语言IFFT程序,其中FFT部分不用写出清单,可电泳fft函数。