数字信号处理实验报告 (实验四)
线性卷积与圆周卷积的计算
数字信号处理实验报告
实验名称:线性卷积与圆周卷积的计算(实验四)
专业班 级: 学生姓名: 学 号: 指导教师:
二○一 年 月 日
1
一、 实验原理 1.线性卷积
当系统输入序列为 x(n),系统的单位冲激响应为 h(n),输出序列为 y(n),则线性时不变系统 y(n) = x(n)*h(n). 2.圆周卷积
圆周移位代替线性移位的好处: 时域圆周卷积在频域上相当于两序列的 DFT 的相乘,而计算 DFT 可 以采用它的快速算法——快速傅立叶变换(FFT),因此圆周卷积和线 性卷积相比,计算速度可以大大加快。
7
调试中所遇到的问题: 图形输出与算得的不符,经过结果逆推回去,发现计算圆周卷积的一 个矩阵没有转置。 圆周卷积与线性卷积的关系: 根据实验结果,可以发现,当 N>=L+P-1 时,圆周卷积等于线性卷积; 而当 N<L+P-1 时,圆周卷积等于两个序列的线性卷积加上时间的混 叠。
6
线性卷积的运算步骤: 求 x1(n)与 x2(n) 的线性卷积:对 x1(m)或 x2(m)先进行镜像移 位 x1(-m),对移位后的序列再进行从左至右的依次平移 x(n-m),当 n=0,1,2.…N-1 时,分别将 x(n-m)与 x2(m)相乘,并在 m=0,1,2.… N-1 的区间求和,便得到 y(n)。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
圆周卷积通用程序
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function yc = circonv(x1,x2,N) % 定义函数 if length(x1)>N
数字信号处理实验四
实验报告课程名称:数字信号处理实验四:离散系统分析班级:通信1403学生姓名:强亚倩学号:1141210319指导教师:范杰清页脚内容1页脚内容2华北电力大学(北京)一、实验目的深刻理解离散时间系统的系统函数在分析离散系统的时域特性、频域特性以及稳定性中的重要作用及意义,熟练掌握利用MATLAB 分析离散系统的时域响应、频响特性和零极点的方法。
掌握利用DTFT 和DFT 确定系统特性的原理和方法。
二、实验原理MATLAB 提供了许多可用于分析线性时不变连续系统的函数,主要包含有系统函数、系统时域响应、系统频域响应等分析函数。
1. 离散系统的时域响应在调用MATLAB 函数时,需要利用描述该离散系统的系数函数。
对差分方程进行Z 变换即可得系统函数:在MATLAB 中可使用向量a 和向量b 分别保存分母多项式和分子多项式的系数:这些系数均从z 0按z 的降幂排列。
2.离散系统的系统函数零极点分析离散LTI 系统的系统函数H (z )可以表示为零极点形式:))...()(())...()((1)()()(2121)1(111)1(1110N M N N N N M M M M p z p z p z z z z z z z k z a z a z a z b z b z b b z X z Y z H ------=++++++++==---------- )()(1)()()()1(111)1(1110z a z b z a z a z a z b z b z b b z X z Y z H N N N N M M M M =++++++++==---------- ],,,,1[11N N a a a a -= ],,,,[110M M b b b b b -=页脚内容3使用MATLAB 提供的roots 函数计算离散系统的零极点;使用zplane 函数绘制离散系统的零极点分布图。
注意:在利用这些函数时,要求H (z )的分子多项式和分母多项式的系数的个数相等,若不等则需要补零。
哈尔滨工程大学数字信号处理实验四
t/T x (n )k X (k)t/T x (n)k X (k )一、 实验原理DFT 的快速算法FFT 利用了WN^(nk)的三个固有特性:(1)对称性,(WN^(nk))*=WN^(-nk),(2)周期性,WN^(nk)=WN^(n+N)k=WN^n(k+K),(3)可约性WN^(nk)=WmN^(nmk)和WN(nk)=WN/m^(nk/m)。
FFT 算法基本上可以分为两大类,即按时间抽选法和按频率抽选法。
MATLAB 中提供了进行快速傅里叶变换的fft 函数,X=fft(x),基2时间抽取FFT 算法,x 是表示离散信号的向量;X 是系数向量; X=fft(x ,N),补零或截断的N 点DFT ,当x 的长度小于N 时,对x 补零使其长度为N ,当x 的长度大于N 时,对x 截断使其长度为N 。
Ifft 函数计算IDFT ,其调用格式与fft 函数相同,参考help 文件。
例3.1程序及图形文件 >> k=8;>> n1=[0:19];>> xa1=sin(2*pi*n1/k); >> subplot(221) >> stem(n1,xa1)>> xlabel('t/T');ylabel('x(n)'); >> xk1=fft(xa1);>> xk1=abs(xk1);>> subplot(222)>> stem(n1,xk1)>> xlabel('k');ylabel('X(k)'); >> n2=[0:1:15]; >> xa2=sin(2*pi*n2/k); >> subplot(223) >> stem(n2,xa2)>> xlabel('t/T');ylabel('x(n)');>> xk2=fft(xa2);>> xk2=abs(xk2);>> subplot(224)>> stem(n2,xk2)>> xlabel('k');ylabel('X(k)');上两个图为N=20是的截取信号和DFT 结果,由于截取了两个半周期,频谱出现泄漏;下面的两个图为N=16时的截取信号和DFT 结果,由于截取了两个整周期,得到单一谱线的频谱。
数字信号处理EXPIV型教学实验系统实验四常规实验exp4_常规
第四章常规实验指导实验一常用指令实验一、实验目的1、了解DSP开发系统的组成和结构;2、熟悉DSP开发系统的连接;3、熟悉CCS的开发界面;4、熟悉C54X系列的寻址系统;5、熟悉常用C54X系列指令的用法。
二、实验设备计算机,CCS 2.0版软件,DSP仿真器,实验箱。
三、实验步骤与内容1、系统连接进行DSP实验之前,先必须连接好仿真器、实验箱及计算机,连接方法如下所示:2、上电复位在硬件安装完成后,确认安装正确、各实验部件及电源连接正常后,接通仿真器电源,启动计算机,此时,仿真器上的“红色小灯”应点亮,否则DSP开发系统有问题。
3、运行CCS程序待计算机启动成功后,实验箱后面220V输入电源开关置“ON”,实验箱上电,启动CCS,此时仿真器上的“绿色小灯”应点亮,并且CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG接口或CCS相关设置存在问题,掉电,检查仿真器的连接、JTAG 接口连接,或检查CCS相关设置是否正确。
注:如在此出现问题,可能是系统没有正常复位或连接错误,应重新检查系统硬件并复位;也可能是软件安装或设置有问题,应尝试调整软件系统设置,具体仿真器和仿真软件CCS的应用方法参见第三章。
●成功运行程序后,首先应熟悉CCS的用户界面●学会CCS环境下程序编写、调试、编译、装载,学习如何使用观察窗口等。
4、修改样例程序,尝试DSP其他的指令。
注:实验系统连接及CCS相关设置是以后所有实验的基础,在以下实验中这部分内容将不再复述。
5、填写实验报告。
6、样例程序实验操作说明仿真口选择开关K9拨到右侧,即仿真器选择连接右边的CPU:CPU2;启动CCS 2.0,在Project Open菜单打开exp01_cpu2目录下面的工程文件“exp01.pjt”注意:实验程序所在的目录不能包含中文,目录不能过深,如果想重新编译程序,去掉所有文件的只读属性。
用下拉菜单中Project/Open,打开“exp01.pjt”,双击“Source”,可查看源程序在File Load Program菜单下加载exp01_cpu2\debug目录下的exp01.out文件:加载完毕,单击“Run”运行程序;实验结果:可见指示灯D1定频率闪烁;单击“Halt”暂停程序运行,则指示灯停止闪烁,如再单击“Run”,则指示灯D1又开始闪烁;注:指示灯D1在CPLD单元的右上方关闭所有窗口,本实验完毕。
实验四 有限长序列的线性卷积、圆周卷积及分段卷积(数字信号处理)
电子信息与自动化学院《数字信号处理》实验报告学号: 姓名:实验名称: 实验四 有限长序列的线性卷积、圆周卷积及分段卷积一、 实验目的(1) 在理论学习的基础上,通过本实验,加深对线性卷积、圆周卷积、分段卷积的理解;(2) 掌握计算线性卷积、圆周卷积、分段卷积的方法;(3) 体会有限长序列卷积运算的关系;二、 实验原理1、有限长序列卷积有两种形式:线性卷积和圆周卷积然而现实中要解决的实际问题是要计算两个有限长序列的线性卷积,如信号通过线性系统,系统的输出 y(n)是输入信号 x(n)与系统抽样响应 h(n)的线性卷积:y(n)=x(n)*h(n)。
设n x 1和n x 2是两个长度分别为 M 和 N 的有限长序列,则其线性卷积为)(*)()(211n x n x n y =。
)(1n y 是一个长度为 L1=N+M-1 点的有限长序列.将n x 1和n x 2均补零成 L 点的有限长序列,其中 L ≥max(M,N),则其 L 点的圆周卷积为)(]))(()([)()()(1021212n R m n x m x n x n x n y L L m L ∑-=-=⊗=,现在讨论)(1n y 和)(2n y 的关系。
显然]∑∑∑∑∑∑∑∑∞-∞=∞-∞=∞∞=-=-=∞-∞=-=-=+=+=+-=+-=-=-=r r L r M m L M m L r L M m L L L m L rL n y n R rL n x n xn R rL m n x n R rL m n x m x n R m n x m x n R m n x m x n y )([)()](*)([)()()()()()(]))(()([)(]))(()([)(121102102112110212由此可见,L 点的圆周卷积)(2n y 是线性卷积)(2n y 以 L 为周期,进行周期延拓后在区间 0 到 L-1 范围内所取的主值序列。
数字信号处理实验4 离散时间系统的频域分析
实验4 离散时间系统的频域分析一、实验目的(1)了解离散系统的零极点与系统因果性和稳定性的关系; (2)加深对离散系统的频率响应特性基本概念的理解; (3)熟悉MATLAB 中进行离散系统零极点分析的常用子函数; (4)掌握离散系统幅频响应和相频响应的求解方法。
二、知识点提示本章节的主要知识点是频率响应的概念、系统零极点对系统特性的影响;重点是频率响应的求解方法;难点是MATLAB 相关子函数的使用。
三、实验原理1.离散时间系统的零极点及零极点分布图设离散时间系统系统函数为NMz N a z a a z M b z b b z A z B z H ----++++++++==)1()2()1()1()2()1()()()(11 (4-1) MATLAB 提供了专门用于绘制离散时间系统零极点图的zplane 函数: ①zplane 函数 格式一:zplane(z, p)功能:绘制出列向量z 中的零点(以符号"○" 表示)和列向量p 中的极点(以符号"×"表示),同时画出参考单位圆,并在多阶零点和极点的右上角标出其阶数。
如果z 和p 为矩阵,则zplane 以不同的颜色分别绘出z 和p 各列中的零点和极点。
格式二:zplane(B, A)功能:绘制出系统函数H(z)的零极点图。
其中B 和A 为系统函数)(z H (4-1)式的分子和分母多项式系数向量。
zplane(B, A) 输入的是传递函数模型,函数首先调用root 函数以求出它们的零极点。
②roots 函数。
用于求多项式的根,调用格式:roots(C),其中C 为多项式的系数向量,降幂排列。
2.离散系统的频率特性MATLAB 提供了专门用于求离散系统频响特性的freqz 函数,调用格式如下: ①H = freqz(B,A,W)功能:计算由向量W (rad )指定的数字频率点上(通常指[0,π]范围的频率)离散系统)(z H 的频率响应)e (j ωH ,结果存于H 向量中。
数字信号处理实验四
实验一:DFS 、DFT 与FFT一、实验内容2、已知某周期序列的主值序列为x(n)=[0,1,2,3,2,1,0],编程显示2个周期的序列波形。
要求:① 用傅里叶级数求信号的幅度谱和相位谱,并画出图形 ② 求傅里叶级数逆变换的图形,并与原序列进行比较。
N=7;xn=[0,1,2,3,2,1,0]; xn=[xn,xn]; n=0:2*N-1; k=0:2*N-1;Xk=xn*exp(-j*2*pi/N).^(n'*k); x=(Xk*exp(j*2*pi/N).^(n'*k))/N; subplot(2,2,1);stem(n,xn);title('x(n)');axis([-1,2*N,1.1*min(xn),1.1*max(xn)]); subplot(2,2,2);stem(n,abs(x));title('IDFS|X(k)|');axis([-1,2*N,1.1*min(x),1.1*max(x)]); subplot(2,2,3),stem(k,abs(Xk));title('|X(k)|');axis([-1,2*N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]); subplot(2,2,4),stem(k,angle(Xk));title('arg|X(k)|');axis([-1,2*N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]);课程名称 数字信号 实验成绩 指导教师 王丽霞实 验 报 告院系 信息工程学院 班级 11专升本通信工程 学号 1103100068 姓名 周海霞日期 2011年10月17日12351051015|X (k)|510-2-1012arg|X (k)|3、已知有限长序列x(n)=[1,0.5,0,0.5,1,1,0.5,0],要求: ① 求该序列的DFT 、IDFT 的图形;xn=[1,0.5,0,0.5,1,1,0.5,0]; N=length(xn); n=0:N-1; k=0:N-1;Xk=xn*exp(-1i*2*pi/N).^(n'*k); x=(Xk*exp(1i*2*pi/N).^(n'*k))/N; subplot(2,2,1);stem(n,xn);title('x(n)');axis([-1,N,1.1*min(xn),1.1*max(xn)]); subplot(2,2,2);stem(n,abs(x));title('IDFT|X(k)|');axis([-1,N,1.1*min(x),1.1*max(x)]); subplot(2,2,3),stem(k,abs(Xk));title('|X(k)|');axis([-1,N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]); subplot(2,2,4),stem(k,angle(Xk));title('arg|X(k)|');axis([-1,N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]);0.510.5124681234|X (k)|2468-2-1012arg|X (k)|② 用FFT 算法求该序列的DFT 、IDFT 的图形;xn=[1,0.5,0,0.5,1,1,0.5,0]; N=length(xn);subplot(2,2,1);stem(n,xn); title('x(n)'); k=0:N-1; Xk=fft(xn,N);subplot(2,1,2);stem(k,abs(Xk)); title('Xk=DFT(xn)'); xn1=ifft(Xk,N);subplot(2,2,2);stem(n,xn1);title('x(n)=IDFT(Xk)');x(n)1234567X k=DFT(xn)x(n)=IDFT(X k)③ 假定采用频率Fs=20Hz ,序列长度N 分别取8、32和64,用FFT 计算其幅度谱和相位谱。
实验四回声估计和回声消除
实验报告实验课程:数字信号处理实验开课时间:2023—2023学年秋季学期实验名称:回声估计和回声消除实验时间:2023年11月声日星期三学院:物理与电子信息学院年级:⅛≡班级:182学号:姓名:一一、实验预习实验方法步骤: (1)打开MAT1AB 软件 (2)根据题目要求编写程序 (3)运行程序 (4)分析实验结果 (5)关闭计算机 注意事项: (1)在使用MAT1AB 时应注意中英输入法的切换,在中文输入法输入程序时得到的程序是错误的; (2)MAT1AB 中两个信号相乘表示为X.*u,中间有个∖,,同样两个信号相除也是如此; (3)使用MAT1AB 编写程序时,应新建一个IT1文件,而不是直接在Comandante 窗口下编写程序; 在使用MAT1AB 编程时,应该养成良好的编写习惯。
注意事项: (4)对于实验电脑要爱惜,遵守实验的规则。
(5)程序运行前要检查程序是否正确。
在使用mat1ab 编程时,应该养成良好的编写习惯,新建一个f1ies 编写。
一些快捷键的使用,能提高编程效率。
He1p 能查询到不懂使用的函数使用方法,比如这个用到的fft 和fftshift 等函数。
在MAT1AB 信号处理工具箱中,提供了随机信号要功率谱估计的各段函数。
(1)periodogram 函数可以实现周期图法的功率谱估计,起吊用格式为IPxx,F]=PERIODOGRAM(x,WINDOW,NFFT,Fs)其中:X 为进行功率谱估计的输入有限长序列; WINDOW 用于制定采用的窗函数,默认值为矩形窗(boxcar),窗函数的长度等于输入序列X 的长度; NFFT 为DFT 的点数,一般取大于输入序列X 的长度,默认值为256;FS 是绘制功率谱曲线的抽样频率,默认值为1;Pxx 为功率谱估计值;F 为Pxx 值所对应的频率点。
(2)We1Ch-Bar1ett 平均周期图法可以利用PSD 函数实现,其调用格式为[Pxx,F]=PSD(x,NFFT,Fs,WINDOW,NOVER1AP)其中:参数X,NFFT,FS 用法同PeriOdograIn 函数:WINDOW 用于指定采用的窗函数,默认值为harming 窗;NoVER1AP 指定分段重叠的样函数。
数字信号处理实验报告四IIR数字滤波器设计及软件实现
数字信号处理实验报告四IIR数字滤波器设计及软件实现实验目的:本实验的目的是了解IIR数字滤波器的设计原理和实现方法,通过MATLAB软件进行数字滤波器设计和信号处理实验。
一、实验原理IIR数字滤波器是一种使用有限数量的输入样本和前一次输出值的滤波器。
它通常由差分方程和差分方程的系数表示。
IIR滤波器的特点是递归结构,故其频率响应是无限长的,也就是说它的频率响应在整个频率范围内都是存在的,而不像FIR滤波器那样只有在截止频率处才有响应。
根据设计要求选择合适的滤波器类型和滤波器结构,然后通过对滤波器的模型进行参数化,设计出满足滤波要求的IIR滤波器。
常见的IIR滤波器设计方法有模拟滤波器设计方法和数字滤波器设计方法。
在本实验中,我们主要使用数字滤波器设计方法,即离散时间滤波器设计方法。
二、实验内容(一)设计IIR数字滤波器的步骤:1.确定滤波器类型:根据滤波要求选择合适的滤波器类型,如低通滤波器、高通滤波器、带通滤波器、带阻滤波器等。
2.确定滤波器的阶数:根据滤波要求确定滤波器的阶数。
阶数越高,滤波器的频率响应越陡峭,但计算复杂度也越高。
3. 设计滤波器原型:根据滤波要求,设计滤波器的原型。
可以选择Butterworth滤波器、Chebyshev滤波器、Elliptic滤波器等作为原型。
4.选择滤波器结构:根据计算机实现条件和算法复杂度,选择合适的滤波器结构。
常见的滤波器结构有直接形式I、直接形式II、级联形式等。
5.参数化滤波器模型:根据原型滤波器的差分方程,选择合适的参数化方法。
常见的参数化方法有差分方程法、极点/零点法、增益法等。
6.根据参数化的滤波器模型,计算出所有的滤波器系数。
(二)用MATLAB软件实现IIR数字滤波器设计:1.打开MATLAB软件,并创建新的脚本文件。
2. 在脚本文件中,使用MATLAB提供的滤波器设计函数,如butter、cheby1、ellip等,选择合适的滤波器类型进行设计。
数字信号处理实验报告四
云南大学信息学院一、实验目的1. 学习离散时间傅里叶变换的算法。
2. 学习离散时间信号频域特性。
3. 离散时间信号MATLAB函数的学习。
二、实验内容1. 计算并画出离散时间傅里叶变换。
2. 求离散时间傅里叶变换的实部、虚部、以及幅度和相位谱。
回答相关问题。
3. 解释一些相关MATLAB函数的功能。
三、主要算法与程序Q3.1 P3.1w=-4*pi:8*pi/511:4*pi;num=[2 1];den=[1 -0.6];h=freqz(num,den,w);subplot(2,2,1);plot(w/pi,real(h));gridtitle('H(e^{j/omega})的实部');xlabel('\omega/\pi');ylabel('振幅');subplot(2,2,2);plot(w/pi,imag(h));gridtitle('H(e^{j/omega})的虚部');xlabel('\omega/\pi');ylabel('振幅');Q3.6 P3.2w=-pi:2*pi/255:pi;wo=0.4*pi;D=10;num=[1 2 3 4 5 6 7 8 9];h1=freqz(num,1,w);h2=freqz([zeros(1,D) num],1,w);subplot(2,2,1);plot(w/pi,abs(h1));gridtitle('原序列的幅度谱');xlabel('\omega/\pi'); %加入注释语句,对x 轴的注释 ylabel('振幅'); %加入注释语句,对y 轴的注释 subplot(2,2,2);plot(w/pi,abs(h2));gridtitle('时移后序列的幅度谱'); xlabel('\omega/\pi'); ylabel('振幅');subplot(2,2,3);plot(w/pi,unwrap(angle(h1)));grid title('原序列的相位谱'); xlabel('\omega/\pi');四、实验结果与分析Q3.1 Q3.1 在程序P3.1中,计算离散时间傅里叶变换的原始序列,MATLAB 命令pause的作用是什么?答:原始序列为:H(jw)=(2+e^(jw))/(1-0.6e^(-jw)) ; pause 的作用是暂停,画图时会用到,敲任意键继续。
dsp实验报告
dsp实验报告DSP实验报告一、引言数字信号处理(Digital Signal Processing,DSP)是一种对数字信号进行处理和分析的技术。
它在许多领域中被广泛应用,如通信、音频处理、图像处理等。
本实验旨在通过实际操作,探索和理解DSP的基本原理和应用。
二、实验目的1. 理解数字信号处理的基本概念和原理;2. 掌握DSP实验平台的使用方法;3. 进行一系列DSP实验,加深对DSP技术的理解。
三、实验器材和软件1. DSP开发板;2. 电脑;3. DSP开发软件。
四、实验内容1. 实验一:信号采集与重构在此实验中,我们将通过DSP开发板采集模拟信号,并将其转换为数字信号进行处理。
首先,我们需要连接信号源和开发板,然后设置采样频率和采样时间。
接下来,我们将对采集到的信号进行重构,还原出原始模拟信号,并进行观察和分析。
2. 实验二:滤波器设计与实现滤波器是DSP中常用的模块,用于去除或增强信号中的特定频率成分。
在此实验中,我们将学习滤波器的设计和实现方法。
首先,我们将选择合适的滤波器类型和参数,然后使用DSP开发软件进行滤波器设计。
最后,我们将将设计好的滤波器加载到DSP开发板上,并进行实时滤波处理。
3. 实验三:频谱分析与频域处理频谱分析是DSP中常用的方法,用于分析信号的频率成分和能量分布。
在此实验中,我们将学习频谱分析的基本原理和方法,并进行实际操作。
我们将采集一个包含多个频率成分的信号,并使用FFT算法进行频谱分析。
然后,我们将对频谱进行处理,如频率选择、频率域滤波等,并观察处理后的效果。
4. 实验四:音频处理与效果实现音频处理是DSP中的重要应用之一。
在此实验中,我们将学习音频信号的处理方法,并实现一些常见的音频效果。
例如,均衡器、混响、合唱等。
我们将使用DSP开发软件进行算法设计,并将设计好的算法加载到DSP开发板上进行实时处理。
五、实验结果与分析通过以上实验,我们成功完成了信号采集与重构、滤波器设计与实现、频谱分析与频域处理以及音频处理与效果实现等一系列实验。
数字信号处理实验报告完整版[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中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。
数字信号处理MATLAB实验
出该信号,并讨论信号的混叠情况。
(3) 令
,其中 f/fs=1/16,即每个周期有 16 个
点。试利用 MATLAB 编程实现:
○1 作 M=4 倍的抽取,使每个周期变成 4 点。
○2 作 L=3 倍的插值,使每个周期变成 48 点。
(4)输入信号 x(n)为归一化频率分别为 f1=0.04,f2=0.3 的正 弦信号相加而成,N=50,插因子为 5,抽取因子为 3,给出 按有理因子 5/3 做采样率变换的输入输出波形。
(8) 用 FFT 分别计算 xa (n)( p 8, q 2) 和 xb(n) (a=0.1,f=0.0625)的自 相关函数。
三、思考题
(1)实验中的信号序列 xc(n)和 xd(n),在单位圆上的 z 变换频谱
和 一些,为什么?
会相同吗?如果不同,说明哪一个低频分量更多
(2)对一个有限长序列进行 DFT 等价于将该序列周期延拓后进行
0≤n≤15
c)x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π) 0≤n≤15 d)将c)中的x(n)扩展为以16为周期的函数x16(n)=x(n+16),绘出四个周 期。 e)将c)中的x(n)扩展为以10为周期的函数x10(n)=x(n+10),绘出四个周 期。 (3)x(n)=[1,-1,3,5],产生并绘出下列序列的样本。
(6)产生一 512 点的随机序列 xe(n),并用 xc(n)和 xe(n)做线性卷积, 观察卷积前后 xe(n)频谱的变化。要求将 xe(n)分成 8 段,分别采用重 叠相加法和重叠保留法。
(7) 用 FFT 分别计算 xa (n)( p 8, q 2) 和 xb(n) (a=0.1,f=0.0625)的 16 点循环相关和线性相关,问一共有多少种结果,他们之间有何异同点。
数字信号处理实验报告
实验一:离散时间信号的表示与运算一:实验内容、原理描述及实验结果 1. 离散时间信号的表示离散时间信号定义为一时间函数,它只在某些离散的瞬时给出函数值,而在其他处无定义。
因此,它是时间上不连续按一定先后次序排列的一组数的集合,故称为时间序列,简称序列,通常表示为{x (n )} -∞<n<+∞ (1) 单位采样序列例1.1 用matlab 编写生成单位脉冲序列函数的程序,n ∈(-5,5)。
程序代码如下:n0=0;n1=-5;n2=5;n=[n1:n2];nc=length(n);x=zeros(1,nc);for i=1:ncif n(i)==n0 x(i)=1; endendstem(n,x)xlabel('n');ylabel('x(n)');title('delta sequence'); grid或者:n0=0;n1=-5;n2=5;n=[n1:n2];x=[(n-n0)==0];stem(n,x);xlabel('n');ylabel('x(n)');title('delta sequence');grid 图形如下:nx (n )(2)单位阶跃序列例1.2 用matlab 编写生成单位阶跃序列函数的程序,n ∈(-5,5)。
程序代码如下:n0=0;n1=-5;n2=5;n=[n1:n2];x=[(n-n0)>=0];stem(n,x)xlabel('n');ylabel('x(n)');title('step sequence');grid图形如下:nx (n )(3)单位斜坡序列例1.3 用matlab 编写生成单位斜坡序列函数的程序,n ∈(0,5)。
程序代码如下:n1=0;n2=5;n=[n1:1:n2];x=n;stem(n,x)xlabel('n');ylabel('x(n)');title('ramp sequence');grid图形如下:nx (n )(4)正余弦序列例1.4 用matlab 编写正弦序列x(n)=5sin(0.1πn+π/3)函数的程序。
信号处理实验四离散傅里叶变换
信号处理实验四离散傅里叶变换哈尔滨工程大学实验报告实验名称:实验四:离散傅里叶变换班级:电子信息工程4班学号:姓名:实验时间: 2016年10月19日成绩:________________________________指导教师:栾晓明实验室名称: 数字信号处理实验室哈尔滨工程大学实验室与资产管理处 制实验四 离散傅里叶变换一、 实验原理1. 由DFT 定义式:10()[()]()NN knn X k DFT x n x n W -===∑ k=0,1 , … , N -1,将其写成矩阵方程表示为NX W x =利用MATLAB 的矩阵运算功能,可编写出计算DFT 的函数文件。
function [Xk] = dft(xn,N) %计算离散傅里叶变换%Xk = 在0<=k<=N-1间的DFT 系数数组 %xn = N 点有限长序列 % N = DFT 的长度 n = [0:1:N-1]; %n 的行向量 k = [0:1:N-1]; %k 的行向量WN = exp(-j*2*pi/N);%Wn 因子 nk = n'*k;%产生一个含bk 值的N 乘N 维矩阵 WNnk = WN.^nk; %DFT 矩阵 Xk = xn*WNnk; %DFT 系数的行向量由IDFT 定义式:11()[()]()N nkk x n IDFT X k X k W N--===∑ ,n= 0, 1, 2, … ,N -1,利用MATLAB 的矩阵运算功能,可编写出计算傅里叶反变换的函数文件。
function [xn] = idft(Xk,N) %计算离散傅里叶反变换 %----------------- %xn = 在0<=n<=N-1 %Xk = N 点有限长序列 % N = IDFT 的长度 k = [0:1:N-1]; %k 的行向量 n = [0:1:N-1]; %n 的行向量WN = exp(-j*2*pi/N); %Wn 因子 nk = n'*k;%产生一个含bk 值的N 乘N 维矩阵 WNnk = WN.^nk; %DFT 矩阵 xn = Xk*WNnk;%傅里叶反变换计算序列值 DFT 的快速算法FFT 利用了W nkN的三个固有特性:(1)对称性,(W )W nk nkN N*-=,(2)周期性,()()W W W nk n N k n k N N N N++==,(3)可约性,W nk nmkN mNW =和//W nk nk m N N mW =。
数字信号处理实验报告(四)——王恩瑶
数字信号处理实验报告实验四 BW模拟滤波器设计班级 ___电子091_______姓名 ___王恩瑶________学号 ___0904020118_____成绩 __________________2011年 12 月23日实验四 BW模拟滤波器设计一、实验目的深刻理解离散时间系统的系统函数在分析离散系统的时域特性、频率特性以及稳定性中的重要作用及意义,熟练掌握利用MATLAB分析离散系统的时域响应、频率响应和零极点的方法。
掌握利用DTFT和DFT确定系统特性的原理和方法。
二、实验内容1、通过help函数,查询并给出如下函数的使用说明(包括调用形式,函数功能,输入参数,输出参数)buttord ; buttap;zp2tf; lp2bp; lp2bs;lp2hp;lp2lp;butter1)Buttord功能:Butterworth滤波器阶的选择格式:[N,Wn]=buttord(Wp,Ws,Rp,Rs)[N,Wn]=buttord(Wp,Ws,Rp,Rs,’s’)N代表滤波器阶数,Wn代表滤波器的截止频率2)Buttap功能:设计模拟低通原型滤波器G(p)格式:[z,p,k]=Buttap(N)说明:z:零点 p:极点 k:增益系数3)[NUM,DEN]=ZP2TF(Z,P,K)功能:实现参数转换H(s)=NUM(s)/DEN(s)4)Lp2lp lp2hp lp2bp lp2bs功能:将模拟低通原型滤波器G(p)分别转换为实际的低通、高通、带通及带阻滤波器。
格式:[B,A]=lp2lp(b,a,Wo)或[B,A]=lp2hlp(b,a,Wo)[B,A]=lp2bp(b,a,Wo,BW)或[B,A]=lp2bs(b,a,Wo,BW)说明:输入参数的b对应3中的NUM,a对应3中的DENB,A:模拟滤波器的系数,B对应分子,A对应分母2、分别用下面两种方法设计一个满足下列指标的模拟BW型带阻滤波器,Ap≤1dB,As≥10dB,wp1=6rad/s,wp2=13rad/s,ws1=9rad/s,ws2=11rad/s,求出该AF的系统函数,绘出其频谱特性要求用两种方法分别实现方法一:经典法方法二:直接采用butter设计带阻filter经典法:clear,clc;wp=[6 13];ws=[9 11];Ap=1;As=10;B=ws(2)-ws(1);w0=sqrt(ws(1)*ws(2));wp1=((ws(2)-ws(1))*wp(1)/(-wp(1)^2+ws(1)*ws(2))); wp2=((ws(2)-ws(1))*wp(1)/(-wp(2)^2+ws(1)*ws(2))); wp0=max(abs(wp1),abs(wp2)); [N,wc]=buttord(wp0,1,Ap,As,'s');fprintf('Order of the filter=%.0f\n',N); [z,p,k]=buttap(N) ; [num,den] = zp2tf(z,p,k); [numt,dent] = lp2lp(num,den,wc); [numt,dent] = lp2bs(numt,dent,w0,B); w=[wp ws];H=freqs(numt,dent,w);fprintf('Ap1= %.4f\n',-20*log10(abs(H(1)))); fprintf('Ap2= %.4f\n',-20*log10(abs(H(2)))); fprintf('As1= %.4f\n',-20*log10(abs(H(3)))); fprintf('As2= %.4f\n',-20*log10(abs(H(4)))); w=linspace(1,20); H=freqs(numt,dent,w); gain=20*log10(abs(H)); plot(w/(2*pi),gain);xlabel('Frequence(Hz)');ylabel('Magnidute(dB)');title('Analog Bandstop filter with Butterworth');dent:1 4.89897948556636 210.000000000000 484.998969071069 9801.00000000000numt=1.00000000000000 -7.25658435750547e-15 198.000000000000 -4.69663180959271e-13 9801.00000000002Frequence(Hz)M a g n i d u t e (d B )Analog Bandstop filter with Butterworth直接法:1)由式B=ws2-ws1和w0^2=ws1ws2__ __wp1=[(ws2-ws1)wp1/(-wp1^2+ws1ws2)和 wp2=[(ws2-ws1)wp2/(-wp2^2+ws1ws2)求得低通到带阻变换中的参数B=2,w0=9.9499以及原型低通滤波器的通带截频wp_bar=0.3714 ws=1 2)由[N,wc]=buttord(wp_bar,1,Ap,As,‘s ’);[num,den]=butter(N,wc,‘s ’);得原型低通滤波器Hl(s)3)由[numt,dent]=lp2bs(num,den,w0,B);得带阻滤波器HBS (s ) 程序:wp_bar=0.3714;ws=1;Ap=1;As=10;[N,wc]=buttord(wp_bar,ws,Ap,As,'s'); [num,den]=butter(N,wc,'s'); B=2;w0=9.9499;[numt,dent]=lp2bs(num,den,w0,B); omega=linspace(6,14,500);h=20*log10(abs(freqs(numt,dent,omega))); plot(omega,h);xlabel('Frequency in Hz'); ylabel('Gain in dB') numt=1 -6.20367372614369e-15 198.001020020000 -5.05138750381447e-13 9801.10098224008 dent=1 4.89897948556637 210.001020020000 485.001467599599 9801.10098224015图为:Frequency in HzG a i n i n d B。
硕士信号处理实验报告(3篇)
第1篇一、实验背景随着信息技术的飞速发展,数字信号处理(DSP)技术已成为通信、图像处理、语音识别等领域的重要工具。
本实验旨在通过一系列实验,加深对数字信号处理基本原理和方法的理解,提高实际应用能力。
二、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握常用信号处理算法的MATLAB实现。
3. 培养分析和解决实际问题的能力。
三、实验内容本实验共分为五个部分,具体如下:1. 离散时间信号的基本操作(1)实验目的:熟悉离散时间信号的基本操作,如加法、减法、乘法、除法、延时、翻转等。
(2)实验步骤:- 使用MATLAB生成两个离散时间信号。
- 对信号进行基本操作,如加法、减法、乘法、除法、延时、翻转等。
- 观察并分析操作结果。
2. 离散时间系统的时域分析(1)实验目的:掌握离散时间系统的时域分析方法,如单位脉冲响应、零状态响应、零输入响应等。
(2)实验步骤:- 使用MATLAB设计一个离散时间系统。
- 计算系统的单位脉冲响应、零状态响应和零输入响应。
- 分析系统特性。
(1)实验目的:掌握离散时间信号的频域分析方法,如快速傅里叶变换(FFT)、离散傅里叶变换(DFT)等。
(2)实验步骤:- 使用MATLAB生成一个离散时间信号。
- 对信号进行FFT和DFT变换。
- 分析信号频谱。
4. 数字滤波器的设计与实现(1)实验目的:掌握数字滤波器的设计与实现方法,如巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等。
(2)实验步骤:- 使用MATLAB设计一个低通滤波器。
- 使用窗函数法实现滤波器。
- 对滤波器进行性能分析。
5. 信号处理在实际应用中的案例分析(1)实验目的:了解信号处理在实际应用中的案例分析,如语音信号处理、图像处理等。
(2)实验步骤:- 选择一个信号处理应用案例。
- 分析案例中使用的信号处理方法。
- 总结案例中的经验和教训。
四、实验结果与分析1. 离散时间信号的基本操作实验结果表明,离散时间信号的基本操作简单易懂,通过MATLAB可以实现各种操作,方便快捷。
数字信号处理实验报告
《数字信号处理》实验报告实验一: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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四 离散时间信号的DTFT
一、实验目的
1. 运用MA TLAB 计算离散时间系统的频率响应。
2. 运用MA TLAB 验证离散时间傅立叶变换的性质。
二、实验原理
(一)、计算离散时间系统的DTFT
已知一个离散时间系统∑∑==-=
-N
k k N k k k n x b k n y a 00)()(,可以用MA
TLAB 函数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 e
H 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));grid
title(‘H(e^{j\omega}的实部’))
xlabel(‘\omega/ \pi ’);
ylabel(‘振幅’);
subplot(2,1,1)
plot(w/pi,imag(h));grid
title(‘H(e^{j\omega}的虚部’))
xlabel(‘\omega/ \pi ’);
ylabel(‘振幅’);
(二)、离散时间傅立叶变换DTFT 的性质。
1.时移与频移
设 )]([)(n x FT e
X j =ω, 那么
)()]([00ωωj n j e X e n n x FT -=- (2.2.6) )()]([)(00ωωω-=j n j e X n x e FT (2.2.7)
2.时域卷积定理
如果 )()()(n h n x n y *=, 那么
)()()(ωωω
j j j e H e X e Y ⋅=
三、实验内容与步骤
1. 已知因果线性时不变离散时间系统
y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2)
运用MATLAB 画出该系统的频率响应。
clf;
w=-4*pi:8*pi/511:4*pi;
num=[2.2403 2.4908 2.2403];den=[1 -0.4 0.75];
h=freqz(num,den,w);
subplot(2,1,1)
plot(w/pi,real(h));
grid
title('H(e^{j\omega}的实部)');
xlabel('\omega/ \pi');
ylabel('振幅');
subplot(2,1,2)
plot(w/pi,imag(h));
grid
title('H(e^{j\omega}的虚部)');
xlabel('\omega/ \pi');
ylabel('振幅');
运行结果:
2.运行下面程序并显示它,验证离散时间傅立叶变换DTFT的时移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10;
num=[1 2 3 4 5 6 7 8 9];
h1=freqz(num,1,w);
h2=freqz([zeros(1,D) num],1,w);
subplot(2,2,1)
plot(w/pi,abs(h1));grid
title(‘原序列的幅度谱’)
subplot(2,2,2)
plot(w/pi,abs(h2));grid
title(‘时移后序列的幅度谱’)
subplot(2,2,3)
plot(w/pi,angle (h1));grid
title(‘原序列的相位谱’)
subplot(2,2,4)
plot(w/pi, angle (h2));grid
title(‘时移后序列的相位谱’)
运行结果:
3.运行下面程序并显示它,验证离散时间傅立叶变换DTFT的频移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10;
num1=[1 3 5 7 9 11 13 15 17];L=length(num1);
h1=freqz(num1,1,w);n=0:L-1;
num2=exp(wo*i*n).*num1;
h2=freqz(num2,1,w);
subplot(2,2,1)
plot(w/pi,abs(h1));grid
title(‘原序列的幅度谱’)
subplot(2,2,2)
plot(w/pi,abs(h2));grid
title(‘频移后序列的幅度谱’)
subplot(2,2,3)
plot(w/pi,angle (h1));grid
title(‘原序列的相位谱’)
subplot(2,2,4)
plot(w/pi, angle (h2));grid
title(‘频移后序列的相位谱’)
运行结果:
4.运行下面程序并显示它,验证离散时间傅立叶变换时域卷积性质。
clf;
w=-pi:2*pi/255: pi;
x1=[1 3 5 7 9 11 13 15 17];
x2=[1 -2 3 -2 1];
y=conv(x1,x2);
h1=freqz(x1,1,w);
h2=freqz(x2,1,w);
hp=hi.*h2;
h3=freqz(y,1,w);
subplot(2,2,1)
plot(w/pi,abs (hp));grid
title(‘幅度谱的乘积’)
subplot(2,2,2)
plot(w/pi,abs (h3));grid
title(‘卷积后序列的幅度谱’)
subplot(2,2,3)
plot(w/pi,angle (hp));grid
title(‘相位谱的和’)
subplot(2,2,4)
plot(w/pi,angle (h3));grid
title(‘卷积后序列的相位谱’)
运行结果:
四、实验仪器设备
计算机,MATLAB软件
五、实验注意事项
课前预先阅读并理解实验程序;
六、思考题
1.讨论实验程序1中的离散时间系统的频率响应是离散的还是连续的,是否是周期的?周期为多少?
答:是连续的,同时也是周期的。
周期为2pi。
2.讨论实验程序2中h1和h2的关系是什么?哪个参数控制时移量?
答:h2的幅度与h1相同,相位变化频率是h1的2倍。
说明时移对幅度无影响,影响相频。
程序2中参数D控制时移量。
3. 讨论实验程序3中h1和h2的关系是什么?哪个参数控制频移量?
答:h2的相位变化与h1相同,幅度不同,h2幅度出现延迟,延迟月一个样本。
说明频移对相位无影响,影响幅度。
4. 讨论实验程序4中y与x1和x2的关系是什么?h1和h2与x1和x2的关系是什么?h1和hp相等吗?
答:Y是x1与x2的卷积。
h1和h2分别是x1和x2的频率响应。
h1和hp相等. +。