数字信号处理实验九

合集下载

数字信号处理实验九

数字信号处理实验九
三、实验内容
1.对周期方波信号进行滤波。
(1)生成一个基频为10Hz的周期方波信号x(t)。
(2)设计一数字滤波器,滤去该周期信号中40Hz以外的频率成分,观察滤波前后信号时域波形及频谱。
(3)若该信号x(t)淹没在噪声中(随机噪声用randn((1,N)生成),试用filter函数滤去噪声。
滤波前的时域波形
ylabel('幅度')
HC1=filter(b,a,HC);
figure
plot(f,abs(HC1));
title('滤除噪声之后')
xlabel('频率f')
ylabel('幅度')
2.若原始落信号由5Hz、15Hz、30Hz三个幅度相等的正弦信号构成。分别设计一个FIR和IIR数字滤波器滤除5Hz和30Hz频率成分。
X=fft(x0);
figure
plot(abs(X));
title('原始信号频谱');
[N,Wn] = buttord([0.11,0.15],[0.05,0.4],1,40)
[b,a] = butter(N,Wn);
x1=filter(b,a,x);
figure
plot(x1);axis([0,200,-0.5,0.5])
[p,q] = butter(M,Rp,Wn,'stop');
figure
freqz(p,q,256,1000)
z=filter(p,q,y);
figure
stem(z)
figure
plot(f,abs(fftshift(fft(z,512))));
低通滤波器频谱

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

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

数字信号处理实验报告(⾃⼰的实验报告)数字信号处理实验报告西南交通⼤学信息科学与技术学院姓名:伍先春学号: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);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.通过观察对实际⼼电图的滤波作⽤,获得数字滤波器的感性知识。

最新数字信号处理实验报告

最新数字信号处理实验报告

最新数字信号处理实验报告一、实验目的本次实验旨在加深对数字信号处理(DSP)理论的理解,并通过实践操作掌握数字信号处理的基本方法和技术。

通过实验,学习如何使用相关软件工具进行信号的采集、分析、处理和重构,提高解决实际问题的能力。

二、实验内容1. 信号采集与分析- 使用数字示波器采集模拟信号,并将其转换为数字信号。

- 利用傅里叶变换(FFT)分析信号的频谱特性。

- 观察并记录信号的时域和频域特性。

2. 滤波器设计与实现- 设计低通、高通、带通和带阻滤波器。

- 通过编程实现上述滤波器,并测试其性能。

- 分析滤波器对信号的影响,并调整参数以优化性能。

3. 信号重构实验- 应用所学滤波器对采集的信号进行去噪处理。

- 使用逆傅里叶变换(IFFT)重构经过滤波处理的信号。

- 比较重构信号与原始信号的差异,评估处理效果。

三、实验设备与材料- 计算机及DSP相关软件(如MATLAB、LabVIEW等)- 数字示波器- 模拟信号发生器- 数据采集卡四、实验步骤1. 信号采集- 连接并设置好数字示波器和模拟信号发生器。

- 生成一系列不同频率和幅度的模拟信号。

- 通过数据采集卡将模拟信号转换为数字信号。

2. 滤波器设计- 在DSP软件中设计所需的滤波器,并编写相应的程序代码。

- 调整滤波器参数,如截止频率、增益等,以达到预期的滤波效果。

3. 信号处理与重构- 应用设计的滤波器对采集的数字信号进行处理。

- 利用IFFT对处理后的信号进行重构。

- 通过对比原始信号和重构信号,评估滤波器的性能。

五、实验结果与分析- 展示信号在时域和频域的分析结果。

- 描述滤波器设计参数及其对信号处理的影响。

- 分析重构信号的质量,包括信噪比、失真度等指标。

六、实验结论- 总结实验中所学习到的数字信号处理的基本概念和方法。

- 讨论实验中遇到的问题及其解决方案。

- 提出对实验方法和过程的改进建议。

七、参考文献- 列出实验过程中参考的书籍、文章和其他资源。

数字信号处理实验指导书(需印刷)

数字信号处理实验指导书(需印刷)

实验一 常见离散信号的MATLAB 产生和图形显示1、实验目的:(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。

(2)加深对常用离散时间信号的理解。

(3)掌握简单的绘图命令。

(4)掌握线性卷积的计算机编程方法。

2、实验原理:(1)单位抽样序列⎩⎨⎧=01)(n δ0≠=n n如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n k n(2)单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n(3)矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N n(4)正弦序列)sin()(ϕ+=wn A n x(5)复正弦序列jwnen x =)((6)指数序列na n x =)((7)线性时不变系统的响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y )()()()()(3、实验内容及步骤:(1)复习常用离散时间信号的有关内容。

(2)编制程序产生上述6种序列(长度可输入确定,对(4) (5) (6)中的参数可自行选择),并绘出其图形。

(3)已知系统的单位脉冲响应),(9.0)(n u n h n=输入信号)()(10n R n x =,试用卷积法求解系统的输出)(n y ,并绘出n n x ~)(、n n h ~)(及n n y ~)(图形。

4、实验用MATLAB 函数介绍(1)数字信号处理中常用到的绘图指令(只给出函数名,具体调用格式参看help)figure(); plot(); stem(); axis(); grid on; title(); xlabel(); ylabel(); text(); hold on; subplot()(2)离散时间信号产生可能涉及的函数zeros(); ones(); exp(); sin(); cos(); abs(); angle(); real(); imag(); (3)卷积计算可能涉及的函数conv(); length()注:实验过程中也可以使用自己编制的自定义函数,如impseq()、stepseq()等。

数字信号处理实验报告

数字信号处理实验报告

长春理工大学电工电子实验教学中心学生实验报告2014 —— 2015 学年第一学期实验课程数字信号处理实验实验地点东1教学楼414实验室学院电子信息工程学院专业通信工程学号120421101姓名杨杰2、 同实验任务一一样,做出信号的时域波形,及fft 变换后的频谱图。

图二 任务二程序框图3、 这里要求引入100KHz 的正弦干扰信号,由于由1中已得到fs 为22050Hz ,根据奈奎斯特频率采样定理,采样频率必须大于等于原信号最高频率的2倍,所以必须将原信号的采样频率提高到200KHz 以上才能引入100KHz 的噪声,所以这里考虑用一阶线型插值interp1将原信号的采样频率提高到220500Hz ,这样就可以引入100KHz 噪声。

做出提高采样频率后的信号的时域波形和频谱图,确认信号并没有发生变化。

接着生成100KHz 的正弦信号,根据2中做出的信号的时域波形的幅度,这里取噪声的幅值为0.5。

将提高采样频率后的信号与噪声叠加。

对加噪后的信号做出时域波形和频谱图,观察波形的变化。

4、 这里要求设计数字滤波器,根据对加噪前的频谱以及加噪后的频谱的观察,可以采用低通滤波器,这里用巴特沃斯低通滤波器即可满足要求,所以考虑设计相对较为简单的巴特沃斯低通滤波器进行滤波。

滤波前首先要确定设计指标,观察频谱这里暂取。

然后开始设计巴特沃斯低通滤波器,这里我把设计的程序打包成一个函数方便调用,函数的框图如图三(巴特沃斯低通滤波器开始读入signal ,fs 截取音频信号为1s 做音频信号时域波形 对signal 做fft 做音频信号频谱 提高信号的采样频率 生成100KHz 噪声 将信号与噪声叠加对加噪后的信号做时域波形和频谱图根据原信号频谱图确定低通滤波器设计指标巴特沃斯低通滤波器设计 计算出滤波器系统函数分子分母系数 做滤波系统幅频特性曲线 对加噪后信号滤波 原信号及滤波后信号的时域及频谱比较结束图三巴特沃斯低通滤波器函数,,k = 1,Nk = 1,Nk = 1,NRSS=RS/FSk = 1,N开始NY结束Mod(N,2) = 1输出BZ,AZYk = length(B)+1,N+1NLength(B)< N+1参量输入函数)所示。

数字信号处理实验报告

数字信号处理实验报告

一、实验目的1. 理解数字信号处理的基本概念和原理。

2. 掌握离散时间信号的基本运算和变换方法。

3. 熟悉数字滤波器的设计和实现。

4. 培养实验操作能力和数据分析能力。

二、实验原理数字信号处理(Digital Signal Processing,DSP)是利用计算机对信号进行采样、量化、处理和分析的一种技术。

本实验主要涉及以下内容:1. 离散时间信号:离散时间信号是指时间上离散的信号,通常用序列表示。

2. 离散时间系统的时域分析:分析离散时间系统的时域特性,如稳定性、因果性、线性等。

3. 离散时间信号的变换:包括离散时间傅里叶变换(DTFT)、离散傅里叶变换(DFT)和快速傅里叶变换(FFT)等。

4. 数字滤波器:设计、实现和分析数字滤波器,如低通、高通、带通、带阻滤波器等。

三、实验内容1. 离散时间信号的时域运算(1)实验目的:掌握离散时间信号的时域运算方法。

(2)实验步骤:a. 使用MATLAB生成两个离散时间信号;b. 进行时域运算,如加、减、乘、除等;c. 绘制运算结果的时域波形图。

2. 离散时间信号的变换(1)实验目的:掌握离散时间信号的变换方法。

(2)实验步骤:a. 使用MATLAB生成一个离散时间信号;b. 进行DTFT、DFT和FFT变换;c. 绘制变换结果的频域波形图。

3. 数字滤波器的设计和实现(1)实验目的:掌握数字滤波器的设计和实现方法。

(2)实验步骤:a. 设计一个低通滤波器,如巴特沃斯滤波器、切比雪夫滤波器等;b. 使用MATLAB实现滤波器;c. 使用MATLAB对滤波器进行时域和频域分析。

4. 数字滤波器的应用(1)实验目的:掌握数字滤波器的应用。

(2)实验步骤:a. 采集一段语音信号;b. 使用数字滤波器对语音信号进行降噪处理;c. 比较降噪前后的语音信号,分析滤波器的效果。

四、实验结果与分析1. 离散时间信号的时域运算实验结果显示,通过MATLAB可以方便地进行离散时间信号的时域运算,并绘制出运算结果的时域波形图。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告实验报告
实验题目:数字信号处理实验
实验日期:XXXX年XX月XX日
实验目的:
1. 了解数字信号处理的基本概念和原理;
2. 掌握数字信号的采样、量化和编码方法;
3. 学习数字信号处理的基本算法和应用。

实验内容:
1. 采样与重建
1.1 采样定理的验证
1.2 重建信号的实现
2. 量化与编码
2.1 量化方法的比较
2.2 编码方法的选择与实现
3. 数字滤波器设计与实现
3.1 FIR滤波器设计方法
3.2 IIR滤波器设计方法
实验步骤:
1. 使用示波器对输入的模拟信号进行采样,记录采样频率和采样点数。

2. 使用恢复信号方法,将采样得到的数字信号重建为模拟信号,并进行对比分析。

3. 对重建的信号进行量化处理,比较不同量化方法的效果,选择合适的方法进行编码。

4. 设计并实现数字滤波器,比较FIR和IIR滤波器的性能和实
现复杂度。

实验结果与分析:
1. 采样与重建实验结果表明,在满足采样定理的条件下,采样频率越高,重建信号的质量越高。

2. 量化与编码实验结果表明,在相同位数下,线性量化方法优于非线性量化方法,而编码方法可以根据信号特性选择,例如
差分编码适用于连续变化的信号。

3. 数字滤波器实验结果表明,FIR滤波器相对于IIR滤波器在时域和频域上更易于设计和理解,但实现复杂度较高。

实验结论:
数字信号处理是对模拟信号进行采样、量化和编码等处理,具有较高的灵活性和可靠性。

在实际应用中,应根据需要选择合适的采样频率、量化位数和编码方式,并根据信号特性选择合适的滤波器设计方法。

数字信号处理实验报告完整版[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中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告实验⼀信号、系统及系统响应⼀、实验⽬的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;2、熟悉时域离散系统的时域特性;3、利⽤卷积⽅法观察分析系统的时域特性;4、掌握序列傅⽴叶变换的计算机实现⽅法,利⽤序列的傅⽴叶变换对连续信号、离散信号及系统响应进⾏频域分析。

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

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

对⼀个连续信号进⾏理想采样的过程可⽤下式表⽰:,其中为的理想采样,p(t)为周期脉冲,即的傅⽴叶变换为上式表明为的周期延拓。

其延拓周期为采样⾓频率()。

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

在实验时可以⽤序列的傅⽴叶变换来计算。

公式如下:离散信号和系统在时域均可⽤序列来表⽰。

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

对长度为N的有限长序列x(n),有:其中,,k=0,1,……M-1时域离散线性⾮移变系统的输⼊/输出关系为上述卷积运算也可在频域实现三、实验内容及步骤1、认真复习采样理论,离散信号与系统,线性卷积,序列的傅⽴叶变换及性质等有关内容,阅读本实验原理与⽅法。

2、编制实验⽤主程序及相应⼦程序。

①信号产⽣⼦程序,⽤于产⽣实验中要⽤到的下列信号序列:xa(t)=Ae-at sin(Ω0t)u(t)进⾏采样,可得到采样序列xa(n)=xa(nT)=Ae-anT sin(Ω0nT)u(n), 0≤n<50其中A为幅度因⼦,a为衰减因⼦,Ω0是模拟⾓频率,T为采样间隔。

这些参数都要在实验过程中由键盘输⼊,产⽣不同的xa(t)和xa(n)。

b. 单位脉冲序列:xb(n)=δ(n)c. 矩形序列:xc(n)=RN(n), N=10②系统单位脉冲响应序列产⽣⼦程序。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告实验一:混叠现象的时域与频域表现实验原理:当采样频率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的信号?编程验证你的想法。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告
数字信号处理是指利用数字技术对模拟信号进行采样、量化、编码等处理后,再通过数字信号处理器进行数字化处理的技术。

在数字信号处理实验中,我们通过对数字信号进行滤波、变换、解调等处理,来实现信号的处理和分析。

在实验中,我们首先进行了数字信号采集和处理的基础实验,采集了包括正弦信号、方波信号、三角波信号等在内的多种信号,并进行了采样、量化、编码等处理。

通过这些处理,我们可以将模拟信号转换为数字信号,并对其进行后续处理。

接着,我们进行了数字信号滤波的实验。

滤波是指通过滤波器对数字信号进行处理,去除其中的噪声、干扰信号等不需要的部分,使其更加纯净、准确。

在实验中,我们使用了低通滤波器、高通滤波器、带通滤波器等多种滤波器进行数字信号滤波处理,得到了更加干净、准确的信号。

除了滤波,我们还进行了数字信号变换的实验。

数字信号变换是指将数字信号转换为另一种表示形式的技术,可以将信号从时域转换到频域,或者从离散域转换到连续域。

在实验中,我们使用了傅里叶变换、离散傅里叶变换等多种变换方式,对数字信号进行了变换处理,得到了信号的频谱信息和其他相关参数。

我们进行了数字信号解调的实验。

数字信号解调是指将数字信号转换为模拟信号的技术,可以将数字信号还原为原始信号,并进行后续处理。

在实验中,我们使用了频率解调、相干解调等多种解调方式,将数字信号转换为模拟信号,并对其进行了分析和处理。

总的来说,数字信号处理实验是一项非常重要的实验,可以帮助我们更好地理解数字信号处理的原理和方法,为我们今后从事相关领域的研究和工作打下坚实的基础。

数字信号处理实验报告11-12-10

数字信号处理实验报告11-12-10

《数字信号处理》实验报告专业学号姓名实验一 利用FFT 实现快速卷积一、实验目的1.加深理解FFT 在实现数字滤波(或快速卷积)中的重要作用,更好的利用FFT 进行数字信号处理。

2.掌握循环卷积和线性卷积两者之间的关系。

二、实验原理用FFT 来快速计算有限长度序列的线性卷积。

这种方法就是先将输入信号x(n)通过FFT 变换为它的频谱采样值()x k ,然后再和FIR 滤波器的频响采样值H(k)相乘,H(k)可事先存放在存储器中,最后再将乘积H(k)X(k)通过快速傅里叶变换(简称IFFT )还原为时域序列,即得到输出y(n)。

现以FFT 求有限长序列的卷积及求有限长度序列与较长序列间的卷积为例来讨论FFT 的快速卷积方法。

序列x(n)和h(n)的长差不多。

设x(n)的长为N 1,h(n)的长为N 2,要求∑-=-=⊗=1)()()()()(N m m n x m h n y n x n y用FFT 完成这一卷积的具体步骤如下:①为使两有限长序列的线性卷积可用其循环卷积代替而不发生混叠,必须选择循环卷积长度121-+≥N N N ,若采用基2-FFT 完成卷积运算,要求m N 2=(m 为整数)。

②用补零方法使x(n)和h(n)变成列长为N 的序列。

1122()01()01()01()01x n n N x n N n N h n n N h n N n N ≤≤-⎧=⎨≤≤-⎩≤≤-⎧=⎨≤≤-⎩③用FFT 计算x(n)和h(n)的N 点离散傅里叶变换。

④完成X(k)和H(k)乘积,)()()(k H k x k Y = ⑤用FFT 计算 ()Y k 的离散傅里叶反变换得*10*10)(1)(1)(⎭⎬⎫⎩⎨⎧⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=∑∑-=--=N k nk N nk N N k W k Y N W k Y N n y三、主要实验仪器及材料微型计算机、Matlab6.5教学版。

四、实验内容1.数字滤波器的脉冲响应为()22()1/2(),8nN h n R n N ==。

数字信号处理实验报告_完整版

数字信号处理实验报告_完整版

实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。

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

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

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

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 ωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑ 由上式可以得到:IDFTDTFTX (ejω)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 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告数字信号处理实验报告一、实验目的本实验旨在通过数字信号处理的方法,对给定的信号进行滤波、频域分析和采样率转换等操作,深入理解数字信号处理的基本原理和技术。

二、实验原理数字信号处理(DSP)是一种利用计算机、数字电路或其他数字设备对信号进行各种处理的技术。

其主要内容包括采样、量化、滤波、变换分析、重建等。

其中,滤波器是数字信号处理中最重要的元件之一,它可以用来提取信号的特征,抑制噪声,增强信号的清晰度。

频域分析是指将时域信号转化为频域信号,从而更好地理解信号的频率特性。

采样率转换则是在不同采样率之间对信号进行转换,以满足不同应用的需求。

三、实验步骤1.信号采集:首先,我们使用实验室的信号采集设备对给定的信号进行采集。

采集的信号包括噪声信号、含有正弦波和方波的混合信号等。

2.数据量化:采集到的信号需要进行量化处理,即将连续的模拟信号转化为离散的数字信号。

这一步通常通过ADC(模数转换器)实现。

3.滤波处理:将量化后的数字信号输入到数字滤波器中。

我们使用不同的滤波器,如低通、高通、带通等,对信号进行滤波处理,以观察不同滤波器对信号的影响。

4.频域分析:将经过滤波处理的信号进行FFT(快速傅里叶变换)处理,将时域信号转化为频域信号,从而可以对其频率特性进行分析。

5.采样率转换:在进行上述处理后,我们还需要对信号进行采样率转换。

我们使用了不同的采样率对信号进行转换,并观察采样率对信号处理结果的影响。

四、实验结果及分析1.滤波处理:经过不同类型滤波器处理后,我们发现低通滤波器可以有效抑制噪声,高通滤波器可以突出高频信号的特征,带通滤波器则可以提取特定频率范围的信号。

这表明不同类型的滤波器在处理不同类型的信号时具有不同的效果。

2.频域分析:通过FFT处理,我们将时域信号转化为频域信号。

在频域分析中,我们可以更清楚地看到信号的频率特性。

例如,对于噪声信号,我们可以看到其频率分布较为均匀;对于含有正弦波和方波的混合信号,我们可以看到其包含了不同频率的分量。

数字信号处理实验报告MATLAB

数字信号处理实验报告MATLAB

数字信号处理实验报告姓名:班级:09电信一班学号:2)]得下图二,图二图一3.将如下文件另存为:sigadd.m文件function [y,n] = sigadd(x1,n1,x2,n2)% 实现y(n) = x1(n)+x2(n)% -----------------------------% [y,n] = sigadd(x1,n1,x2,n2)% y = 在包含n1 和n2 的n点上求序列和,% x1 = 在n1上的第一序列% x2 = 在n2上的第二序列(n2可与n1不等)n = min(min(n1),min(n2)):max(max(n1),max(n2)); % y(n)的长度y1 = zeros(1,length(n)); y2 = y1; % 初始化y1(find((n>=min(n1))&(n<=max(n1))==1))=x1; % 具有y的长度的x1y2(find((n>=min(n2))&(n<=max(n2))==1))=x2; % 具有y的长度的x2y = y1+y2;在命令窗口输入:x1=[1,0.5,0.3,0.4];n1=-1:2;x2=[0.2,0.3,0.4,0.5,0.8,1];n2=-2:3; [y,n] = sigadd(x1,n1,x2,n2)得:y =n=-1:10;x=sin(0.4*pi*n);y=fliplr(x);n1=-fliplr(n);subplot(2,1,1),stem(n,x) subplot(2,1,2),stem(n1,y在命令窗口键入:n=-1:10; x=sin(0.4*pi*n);n (samples)实验结果:1.(1)在命令窗口输入:tic; [am,pha]=dft1(x)N=length(x);w=exp(-j*2*pi/N);for k=1:Nsum=0;for n=1:Nsum=sum+x(n)*w^((k-1)*(n-1));endam(k)=abs(sum);pha(k)=angle(sum);end;toc得到如下结果:am =Columns 1 through 11120.0000 41.0066 20.9050 14.3996 11.3137 9.6215 8.6591 8.1567 8.0000 8.1567 8.6591Columns 12 through 169.6215 11.3137 14.3996 20.9050 41.0066pha =Columns 1 through 110 1.7671 1.9635 2.1598 2.3562 2.5525 2.7489 2.9452 3.1416 -2.9452 -2.7489Columns 12 through 16-2.5525 -2.3562 -2.1598 -1.9635 -1.7671Elapsed time is 0.047000 seconds.(2)在命令窗口输入:tic;[am,pha]=dft2(x)N=length(x);n=[0:N-1];k=[0:N-1];w=exp(-j*2*pi/N);nk=n’*k;wnk=w.^(nk); Xk=x*wnk; am= abs(Xk); pha=angle(Xk); toc得到下图:figure(1)00.10.20.30.40.50.60.70.80.91signal x(n), 0 <= n <= 99(2)在命令窗口键入:n3=[0:1:99];y3=[x(1:1:10) zeros(1,90)]; %添90个零。

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

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

数字信号处理课程实验报告课题名称: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型滤波器。

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

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

实验一、离散时间系统及离散卷积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)了解MA TLAB 程序设计语言的基本特点,熟悉MA TLAB软件运行环境。

(2)熟悉MA TLAB中产生信号和绘制信号的基本命令,学会用MA TLAB在时域中产生一些基本的离散时间信号,并对这些信号进行一些基本的运算。

(3)通过MA TLAB仿真一些简单的离散时间系统,并研究它们的时域特性。

(4)通过MA TLAB进行卷积运算,利用卷积方法观察分析系统的时域特性。

2. 实验报告要求●简述实验原理及目的。

●结合实验中所得给定典型序列幅频特性曲线,与理论结果比较,并分析说明误差产生的原因以及用FFT作谱分析时有关参数的选择方法。

●记录调试运行情况及所遇问题的解决方法。

3.实验内容:思考题:9.2.1 运行程序P9.2.1,哪个参数控制该序列的增长或衰减:哪个参数控制该序列的振幅?若需产生实指数序列,应对程序作何修改?9.2.2运行程序P9.2.1,该序列的频率是多少?怎样改变它?哪个参数控制该序列的相位?哪个参数可以控制该序列的振幅?该序列的周期是多少?9.2.3 运行程序P9.2.3,对加权输入得到的y(n)与在相同权系数下输出y1(n)和y2(n)相加得到的yt(n)进行比较,这两个序列是否相等?该系统是线性系统吗?9.2.4 假定另一个系统为y(n)=x(n)x(n-1)修改程序,计算这个系统的输出序列y1(n),y2(n)和y(n)。

比较有y(n)和yt(n)。

这两个序列是否相等?该系统是线性系统吗?(提高部分)9.2.5运行程序P9.2.4,并比较输出序列y(n)和yd(n-10)。

这两个序列之间有什么关系?该系统是时不变系统吗?9.2.6 考虑另一个系统:修改程序,以仿真上面的系统并确定该系统是否为时不变系统。

(选做)n = 0:40; D = 10;a = 3.0;b = -2;x = a*cos(2*pi*0.1*n) + b*cos(2*pi*0.4*n);[x1,n1]=sigmult(n,n,x,n)[x2,n2]=sigshift(x,n,1)[y,ny1]= sigadd(x1,n1,x2,n2)[y1,ny11]= sigshift(y,ny1,D)[sx,sn]= sigshift(x,n,D)[sx1,sn1]=sigmult(n,n, sx,sn)[sx2,sn2]=sigshift(sx,sn,1)[y2,ny2]= sigadd(sx1,sn1,sx2,sn2)D= sigadd(y1,ny11,y2,ny22)六、实验心得体会:实验时间批阅老师实验成绩实验二 FFT 实现数字滤波实验类别:提高性实验 1.实验目的(1) 通过这一实验,加深理解FFT 在实现数字滤波(或快速卷积)中的重要作用,更好的利用FFT 进行数字信号处理。

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

实验报告课程名称:数字信号处理实验九:信号滤波班级:通信1403学生姓名:强亚倩学号:1141210319指导教师:范杰清华北电力大学(北京)一、实验目的综合应用信号频谱分析和数字滤波器设计的知识,实现信号的滤波。

加深理解信号时域和频域分析的物理概念,理解设计指标的工程概念,认识不同类型滤波器的特性和适用范围。

二、实验原理首先对待滤波的信号进行频谱分析,观察信号频率分布的规律,从而确定数字滤波器的类型(FIR滤波器、IIR滤波器、自适应滤波器、小波滤波器等)。

在加性噪声的情况下,若信号的频谱与噪声的频谱基本不重叠,可以采用频率选择滤波器(FIR滤波器、IIR滤波器)。

若信号的频谱与噪声的频谱重叠较多,可以采用自适应滤波、小波滤波等。

若为乘性噪声,可以根据同态滤波的原理对信号进行预处理,然后再按照加性噪声的情况处理。

在确定了数字滤波器类型后,还需要根据信号时域特性、频域特性、或时频特性确定滤波器的设计参数,设计出相应的数字滤波器。

最后,利用该数字滤波器对信号进行滤波,在时域和频域观察信号滤波的主观及客观效果。

若主观及客观效果满足要求,说明分析过程和滤波方法正确有效,若不满足要求,需要重新分析和设计。

三、实验内容1.对周期方波信号进行滤波。

(1)生成一个基频为10Hz的周期方波信号x(t)。

(2)设计一数字滤波器,滤去该周期信号中40Hz以外的频率成分,观察滤波前后信号时域波形及频谱。

(3)若该信号x(t)淹没在噪声中(随机噪声用randn((1,N)生成),试用filter函数滤去噪声。

滤波前的时域波形Fs=1000;T=1/10;t=0:1/Fs:1;x=square(2*pi*10*t);figureplot(t,x)title('矩形波')xlabel('时间(秒)')ylabel('函数值(福特)')axis([0,0.2,-1.5,1.5])滤波前的频谱N=T*Fs;t1=0:1/Fs:1/Fs*(N-1)x1=square(2*pi*10*t1);f=(-N/2)*Fs/N:Fs/N:((N/2-1))*Fs/N;fx=fftshift(fft(x,N))/N;figureplot(f,abs(fx));title('方波信号的频谱')xlabel('频率')ylabel('函数值fx')滤波后的时域波形[n,Wn]=buttord(40/500,50/500,3,15);[b,a]=butter(n,Wn);y=filter(b,a,x);figureplot(t,y)title('矩形波通过低通滤波器后的时域波形') xlabel('时间(秒)')ylabel('函数值(福特)')axis([0,0.2,-1.5,1.5])滤波后的频谱N=512;f=(-N/2)*Fs/N:Fs/N:(N/2-1)*Fs/N; fy=fftshift(fft(y,N))/N;figureplot(f,abs(fy))title('滤波后信号的频谱')xlabel('频率')ylabel('函数值fx')figurefreqz(b,a);title('低通滤波器的频率特性')滤除噪声noise=randn(1,100);HC=x1+noise;f=(-N/2)*Fs/N:Fs/N:(N/2-1)*Fs/N; HC=fftshift(fft(HC,N))/N;figureplot(f,abs(HC));title('滤除噪声之前')xlabel('频率f')ylabel('幅度')HC1=filter(b,a,HC);figureplot(f,abs(HC1));title('滤除噪声之后')xlabel('频率f')ylabel('幅度')2.若原始落信号由5Hz、15Hz、30Hz三个幅度相等的正弦信号构成。

分别设计一个FIR和IIR数字滤波器滤除5Hz和30Hz频率成分。

(1)绘制原始信号时域波形和幅度频谱。

(2)分别设计FIR和IIR数字滤波器,滤绘制其幅频特性。

(3)利用设计的滤波器对信号进行滤波,绘制输出信号的时域波形和幅度频谱。

时域波形(1)k=0:255;x=cos(2*pi*5*k*0.01)+cos(2*pi*15*k*0.01)+cos(2*pi*30*k*0.01); figurestem(x)X=fft(x);figureplot(abs(X))FIR滤波器k=0:255;x=cos(2*pi*5*k*0.01)+cos(2*pi*15*k*0.01)+cos(2*pi*30*k*0.01); X=fft(x);plot(abs(X));title('原始信号频谱');Rs=0.01;f=[0.05,0.11,0.15,0.4];a=[0,1,0];dev=Rs*ones(1,length(a));[M,Wc,beta,ftype]=kaiserord(f,a,dev);h=fir1(M,Wc,ftype,kaiser(M+1,beta));omega=linspace(0,pi,256)mag=freqz(h,[1],omega);figureplot(omega/pi,20*log10(abs(mag)));title('fir带通滤波器');Y=X.*mag;figureplot(abs(Y));title('滤波后频谱');%IIRk=0:255;t=0:.001:2.55;x0=cos(2*pi*5*k*0.01)+cos(2*pi*15*k*0.01)+cos(2*pi*30*k*0.01); x=cos(2*pi*5*t)+cos(2*pi*15*t)+cos(2*pi*30*t);figureplot(x);axis([0,1000,-3,3])title('原始信号时域波形');X=fft(x0);figureplot(abs(X));title('原始信号频谱');[N,Wn] = buttord([0.11,0.15],[0.05,0.4],1,40)[b,a] = butter(N,Wn);x1=filter(b,a,x);figureplot(x1);axis([0,200,-0.5,0.5])title('滤波后时域波形'); figurefreqz(b,a,256,1000)m=freqz(b,a,256,1000); title('iir带通滤波器'); %axis([0,500,-80,0]); grid ony=X.*m';figureplot(abs(y));title('滤波后频谱');3、用所设计的滤波器对实际心电图信号采样序列(在本实验的实验步骤中给出)进行仿真滤波处理,并分别打印出滤波前后的心电图信号波形图,观察总结滤波作用与效果。

人体心电图信号在测量过程中往往受到工业高频于扰,所以必须经过低通滤波处理后,才能作为判断心脏功能的有用信息。

下面给出一实际心电图信号采样序列样本x(n) ,其中存在高频干扰。

提示:心电信号通常均分布在200Hz范围内。

在实验中,以x(n)作为输入序列,滤除其中的干扰成分。

{x(n)}={-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60, 84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0, 0,-2,-2,-2,-2,0}思考题直接运行程序,结果输出滤波器幅频特性曲线图,把有噪声的心电图采集信号波形图和经过三级二阶滤波器滤波后的心电图信号波形图进行对比,总结滤波效果。

x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,...0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,... 4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];figurestem(x);title('原心电图的时域序列')Fs=1000; %采样频率T=1/10; %采样长度N=T*Fs; %采样点数f=(-N/2)*Fs/N:Fs/N:((N/2-1))*Fs/N;fx=fftshift(fft(x,N))/N;figureplot(f,abs(fx));title('原心电图的频谱')xlabel('频率')ylabel('函数值fx')[N,Wc]=buttord(150/500,250/500,3,60); [b,a]=butter(N,Wc);figurefreqz(b,a,256,1000)for i=1:3y=filter(b,a,x);endfigureplot(f,abs(fftshift(fft(y,512))));Wp =[45 55]/500; Ws =[45-5 55+5]/500; Rp = 3; Rs = 40;[M,Wn] = buttord(Wp,Ws,Rp,Rs) [p,q] = butter(M,Rp,Wn,'stop');figurefreqz(p,q,256,1000)z=filter(p,q,y);figurestem(z)figureplot(f,abs(fftshift(fft(z,512))));低通滤波器频谱通过低通滤波器的心电图频谱带阻滤波器频谱最终结果四、思考题1.利用频率选择滤波器(FIR滤波器、IIR滤波器)进行信号去噪的基本思想及主要步骤是什么?答:主要思想:利用频率选择滤波器的传输选择特性,对输入信号进行加工和变换,改变输入序列的频谱或信号波形,使需要的频率分量通过,抑制无用的信号分量。

主要步骤:(1)根据输入信号的频谱特性及设计目标要求确定需要使用的滤波器类型:包括低通、高通、带通等;(2)由需要的相位特性及幅度特性确定滤波器的设计方法:包括fir(巴特沃斯、切比雪夫)、iir(巴特沃斯、切比雪夫);(3)根据目标设计要求确定滤波器参数,需要的参数根据滤波器的设计方法确定,主要参数包括:滤波器的阶次,频率要求、幅度响应要求;(4)利用设计好的滤波器对实际信号进行处理,检验是否满足设计要求,调整并优化。

相关文档
最新文档