数字信号处理实验报告——基于MATLAB的数字滤波器设计

合集下载

基于MATLAB的数字带通滤波器课程设计报告.doc

基于MATLAB的数字带通滤波器课程设计报告.doc

基于MATLAB的数字带通滤波器课程设计报告1西安文理学院机械电子工程系课程设计报告专业班级08级电子信息工程1班题目基于MATLAB的数字带通滤波器学号学生姓名指导教师2011 年12 月西安文理学院机械电子工程系课程设计任务书学生姓名_______专业班级________ 学号______指导教师______ 职称副教授教研室电子信息工程课程数字信号处理题目基于MATLAB 的数字带通滤波器设计任务与要求设计任务:要求设计一个IIR 带通滤波器,其中通带的中心频率为πω5.0=po ,通带的截止频率πω4.01=p ,πω6.02=p ,通带最大衰减dB p 3=α;阻带最小衰减dB s 15=α,阻带截止频率πω3.01=s ,πω7.02=s 。

设计要求:1. 根据设计任务要求给出实现方案及实现过程。

2. 给出所实现的滤波器幅频特性及相频特性曲线并加以分析。

3. 论文要求思路清晰,结构合理,语言流畅,书写格式符合要求。

开始日期2011.12.19 完成日期2011.12.302011年12月18 日一、设计任务设计一数字带通滤波器,用IIR 来实现,其主要技术指标:通带边缘频率:wp 1=0.4π,wp2=0.6π通带最大衰减:Ap=3dB阻带边缘频率:ws 1=0.3π,ws2=0.7π阻带最小衰减:As=15dB设计总体要求:用MATLAB 语言编程进行设计,给出IIR 数字滤波器的参数,给出幅度和相位响应曲线,对IIR 实现形式和特点等方面进行讨论。

二、设计方法IIR 数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR 滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。

比较常用的原型滤波器有巴特沃什滤波器(Butterworth )、切比雪夫滤波器(Chebyshev )、椭圆滤波器(Ellipse )和贝塞尔滤波器(Bessel )等。

他们有各自的特点,巴特沃什滤波器具有单调下降的幅频特性;切比雪夫滤波器的幅频特性在通带和阻带里有波动,可以提高选择性;贝塞尔滤波器通带内有较好的线性相位特性;椭圆滤波器的选择性最好。

基于MATLAB工具箱的数字滤波器设计

基于MATLAB工具箱的数字滤波器设计

基于MATLAB信号处理工具箱的数字滤波器设计摘要:传统数字滤波器工作起来,需要计算量很大,对于设计要求来说,又比较复杂,需要调整滤波特性,有很大的难度,并且影响它本身的应用以及功能。

本文中,主要介绍了利用MATLAB信号处理工具箱的功能,设计常规数字滤波器,设计过程中使用一些常用的专用软件。

对于,使用MATLAB语言程序设计以及信号处理工具箱的FDATool工具,各种界面的详细步骤都有详细的介绍。

对于MATLAB设计滤波器,为了减轻庞大的工作量,也为了简便直观,我们对比设计要求,以及滤波器特性的参数,这样才能更有利于,优化滤波器本身。

在本文中,主要解读了仿真软件Simulink对设计出来的滤波器仿真,设计过程中利用工具MATLAB。

我们验证结果的准确性,是通过软件仿真实验,从而达到对滤波器的设计。

关键词:MATLAB;模拟滤波器;数字滤波器目录1 引言 (1)2 模拟滤波器的设计 (1)2.1 几种常用的模拟滤波器 (2)2.2 巴特沃斯低通滤波器设计 (3)3 数字滤波器的设计 (5)4 结束语 (10)参考文献 (10)1引言基于对正弦基波,以及整词谐波的分析,可以得知系统电压,电流信号中,成分比较复杂,因此,在电力系统中,最关键的部件还是滤波器。

MATLAB和Mathematica、Maple共同称为三大数学软件。

MATLAB在数学类科技应用软件中,在数值计算方面地位不可代替。

MATLAB可以进行矩阵运算,绘制函数和数据,实现算法,创建用户界面,连接其他编程语言的程序等功能,它的应用方面主要在于,工程计算;控制设计;信号处理与通讯;图像处理信号检测;金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与工程中常用的形式十分相似,故用MATLAB来解算问题要比其他语言完成事情简捷,因此可以直接使用,我们可以把自己的程序导入进MATLAB函数库中,方便以后的使用。

因此我们设计滤波时,根据指标,直接使用CAD程序,就可以得到高通、带通和带阻滤波器系统函数。

Matlab数字信号处理实验报告

Matlab数字信号处理实验报告

Matlab数字信号处理实验报告本次实验使用MATLAB进行数字信号处理操作,目的是熟悉MATLAB中数字信号处理的相关工具箱,并进一步理解数字信号处理的基本概念和算法。

一、实验内容1.信号的生成与显示2.时域分析和频域分析3.滤波器设计4.数字滤波器性能分析二、实验步骤在MATLAB中,使用sawtooth函数生成一个锯齿波信号,并使用plot函数进行时域波形的显示。

代码如下:f = 1000;fs = 40000;t = 0:1/fs:0.01;y = sawtooth(2*pi*f*t);plot(t,y);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave');时域分析包括波形的观察和参数分析,如幅值、均值、方差等。

频域分析则是对信号进行傅里叶变换,得到其频谱图,包括频率分布和强度分布。

%时域分析amp = max(y)-min(y);mean_y = mean(y);var_y = var(y);设计一个低通滤波器,将高于1kHz的频率成分滤掉。

对滤波后的信号进行时域分析和频域分析,比较滤波前后信号的特征参数和频谱特征,并绘制原始信号、滤波后信号及其频谱图。

subplot(2,2,1);plot(t,y);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave');subplot(2,2,2);plot(t,y_filt);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave After Filter');subplot(2,2,3:4);plot(f2,fft_y_filt,'r',f,fft_y,'g');xlabel('Frequency (Hz)');ylabel('Amplitude');title('Sawtooth Wave Spectrum Comparison');legend('After Filter','Before Filter');三、实验结果与分析通过生成并显示一段锯齿波信号,并对其进行时域和频域分析,可以得到该信号的关键信息,如幅值、均值、方差和频率分布特性。

实验报告基于MATLAB的数字滤波器设计

实验报告基于MATLAB的数字滤波器设计

实验7\8基于MATLAB勺数字滤波器设计实验目的:加深对数字滤波器的常用指标和设计过程的理解。

实验原理:低通滤波器的常用指标:1 一6P 兰G(e^) ≤ 1 + 6P , for 国≤ ωPG(J") ≤ 6s, for 国s ≤ ⑷≤ ∏通带边缘频率:'P ,阻带边缘频率:'s,通带起伏:J P,通带峰值起伏:C(P= —20 IOg io (^-OP )【d B 】阻带起伏.冠SPaSSband StOPbandTran Siti onband Fig 7.1 TyPiCaI magn itude SPeCifiCati On for a digital LPF:S = -20 log ιo(r)[dB 】O数字滤波器有IIR和FlR两种类型,它们的特点和设计方法不同。

在MATLAB^,可以用[b , a]=butter ( N,Wr)等函数辅助设计IIR数字滤波器,也可以用b=fir1(N,Wn, 'type ')等函数辅助设计FIR数字滤波器。

实验内容:利用MATLAB编程设计一个数字带通滤波器,指标要求如下:通带边缘频率:∙∙P1=0.45^,∙∙ P2=0∙65 二,通带峰值起伏:[dB】O阻带边缘频率:'s10.3…,'s2 0.75…,最小阻带衰减:-S 4°[dB] O分别用IIR和FlR两种数字滤波器类型进行设计。

实验要求:给出IIR数字滤波器参数和FIR数字滤波器的冲激响应,绘出它们的幅度和相位频响曲线,讨论它们各自的实现形式和特点。

实验内容:IRR代码:wp=[0.45*pi,0.65*pi];ws=[0.3*pi,0.75*pi];Ap=1;A S=40;[N,Wc]=buttord(wp∕pi,ws∕pi,Ap,As);[b,a]=butter(N,Wc)%[b,a] = butter( n, Wn,'ftype')最小阻带衰减:I -W llrreqz(b-a=SUbP-Of(211=FnagHabS(H)-P-Of(WHLmag)-x ωb e 一(->5(W))y ωb e一(-≡M 一 HamW)口≡e (--R 一 HamW)一) grid On-SUbPOf(212=PhaSeHang-e(H=P -OfWPLPhaSe=x ωb e 一(->5(W))y ωb e -(- W⅛) ≡e (-一R盘a ≡m sB )≡-x ⅛x -幅度IHaOMI≡相拉SS 5 CUS S S 0⅛口 g >酉tt 2 =R ⅛⅛⅛J ≡B ⅛O S F NJ £Q 4S S U7 CJCD S >⅛⅛≡F-RV VWPl HO∙4*prWP2H0∙6*prV V WSl H 0∙3*prws2 H0∙7*prVV =Γl w i d f h Hmin((wprwsu(ws2lwp2))>> tr_width =0.3142>> M = ceil(6.2*pi/tr_width) + 1>> M = 63>> n=[0:1:M-1];>> wc1 = (ws1+wp1)/2; wc2 = (wp2+ws2)/2; >> wc=[wc1/pi,wc2/pi];>> window= hanning(M);>> [h1,w]=freqz(window,1);>> figure(1);>> subplot(2,1,1)>> stem(window);>> axis([0 60 0 1.2]);>> grid;>> xlabel('n');>> title('Hanning 窗函数');>> subplot(2,1,2)>> plot(w/pi,20*log(abs(h1)/abs(h1(1)))); >> axis([0 1 -350 0]);>> grid;>> xlabel('w/\pi');>> ylabel('幅度(dB)');>> title('Hanning 窗函数的频谱');>> hn = fir1(M-1,wc, hanning (M));>> [h2,w]=freqz(hn,1,512);>> figure(2);>> subplot(2,1,1)>> stem(n,hn);>> axis([0 60 -0.25 0.25]);>> grid;>> xlabel('n');>> ylabel('h(n)');>> title('Hanning 窗函数的单位脉冲响应'); >> subplot(2,1,2)>> plot(w/pi,20*log(abs(h2)/abs(h2(1)))); >> grid;>> xlabel('w/\pi');>> ylabel(' 幅度(dB)');>> figure(3);>> phase=angle(h1);>> plot(phase);>> axis([1 pi -1 0]);>> xlabel('w/\pi');>> ylabel(' 线性相位');>> title('Hanning 窗函数相位特性曲线')回FiIe Edit VieW InSert TOOlS DeSktOP WindOW HeIP◎ A 聾紳⑥毘謠▼层□ Ξ∣ ■ 0M FigUre 1 Hanning 窗函数OC S I I * iHanning®函数的频谱-100-200 -300 00.1 0.2 0.3 0.40.5 0.6 0.7 08 0.9 1w/x(8P)置Q FigUre 2 口 回 耳iHanni叩窗函数相位特性曲线O I I I I I I I。

基于matlab的fir数字滤波器的设计

基于matlab的fir数字滤波器的设计

一、引言数字滤波器是数字信号处理中至关重要的组成部分,它能够对数字信号进行滤波处理,去除噪音和干扰,提取信号中的有效信息。

其中,fir数字滤波器作为一种常见的数字滤波器类型,具有稳定性强、相位响应线性等特点,在数字信号处理领域得到了广泛的应用。

本文将基于matlab软件,探讨fir数字滤波器的设计原理、方法和实现过程,以期能够全面、系统地了解fir数字滤波器的设计流程。

二、fir数字滤波器的基本原理fir数字滤波器是一种有限长冲激响应(finite impulse response, FIR)的数字滤波器,其基本原理是利用线性相位特性的滤波器来实现对数字信号的筛选和处理。

fir数字滤波器的表达式为:$$y(n) = \sum_{k=0}^{M}h(k)x(n-k)$$其中,y(n)为输出信号,x(n)为输入信号,h(k)为滤波器的系数,M为滤波器的长度。

fir数字滤波器的频率响应特性由其系数h(k)决定,通过设计合适的系数,可以实现对不同频率成分的滤波效果。

三、fir数字滤波器的设计方法fir数字滤波器的设计方法主要包括窗函数法、频率抽样法、最小最大法等。

在matlab中,可以通过信号处理工具箱提供的fir1函数和firls函数等来实现fir数字滤波器的设计。

下面将分别介绍这两种设计方法的基本原理及实现步骤。

1. 窗函数法窗函数法是fir数字滤波器设计中最为常见的方法之一,其基本原理是通过对理想滤波器的频率响应进行窗函数加权来满足设计要求。

在matlab中,可以使用fir1函数实现fir数字滤波器的设计,其调用格式为:h = fir1(N, Wn, type)其中,N为滤波器的阶数,Wn为滤波器的截止频率,type为窗函数的类型。

通过调用fir1函数,可以灵活地设计出满足特定要求的fir数字滤波器。

2. 频率抽样法频率抽样法是fir数字滤波器设计中的另一种重要方法,其基本原理是在频域上对理想滤波器的频率响应进行抽样,并拟合出一个最优的滤波器。

数字信号处理Matlab实验三-IIR数字滤波器的设计

数字信号处理Matlab实验三-IIR数字滤波器的设计

数字信号处理 Matlab 实验三-IIR 数字滤波器的设计1. 概述数字滤波器是数字信号处理领域中的重要内容。

按照系统的特点,数字滤波器可以分为 FIR 数字滤波器和 IIR 数字滤波器。

其中,IIR 数字滤波器具有更强的适应性和更高的性能,因此受到广泛关注。

本文档将详细介绍 Matlab 实验中的 IIR 数字滤波器的设计过程。

2. IIR 数字滤波器的基本概念IIR 数字滤波器是一种反馈型滤波器,它的输出信号取决于当前的输入信号和前一时刻的输出信号。

在 IIR 数字滤波器中,反馈路径与前向路径都包含有延时器和系数。

IIR 数字滤波器的具体实现形式有直接型、级联型、积分型等。

IIR 数字滤波器的主要特征是具有无限脉冲响应。

这一特性意味着输入信号可以产生无限长的输出响应,并且IIR 数字滤波器具有更加平滑的频率响应和更高的滤波器阶数。

3. IIR 数字滤波器设计的步骤Matlab 的 Signal Processing Toolbox 中提供了多种方法进行 IIR 数字滤波器设计。

在本文档中,我们将介绍基于极点和零点设计的方法。

IIR 滤波器设计主要分为以下几个步骤:3.1 确定滤波器类型和性能规格设计 IIR 数字滤波器时,需要先确定滤波器的类型和性能规格。

比如,需要确定滤波器的通带和阻带边界频率、通带和阻带幅度响应、滤波器阶数等参数。

3.2 根据性能规格确定滤波器的传递函数根据滤波器的类型、性能规格、滤波器的传递函数和滤波器结构之间的关系,通过理论计算得到滤波器的传递函数。

3.3 将滤波器传递函数化简为数字滤波器结构将传递函数简化为数字滤波器的结构,选择适当的滤波器结构和方案。

3.4 计算数字滤波器的系数选择一种计算数字滤波器系数的方法,如双线性变换、频率抽取等。

3.5 检验滤波器设计的性能进行模拟仿真和实验检验,根据预设的性能规格检验滤波器设计的合理性。

4. Matlab 实现 IIR 数字滤波器的设计在 Matlab 中,可以使用 Signal Processing Toolbox 中的 iirfilter 函数实现 IIR 数字滤波器的设计。

基于MATLAB的IIR数字滤波器设计与仿真

基于MATLAB的IIR数字滤波器设计与仿真

基于MATLAB的IIR数字滤波器设计与仿真一、概述在现代数字信号处理领域中,数字滤波器扮演着至关重要的角色。

其通过对输入信号的特定频率成分进行增强或抑制,实现对信号的有效处理。

无限脉冲响应(IIR)数字滤波器因其设计灵活、实现简单且性能优良等特点,得到了广泛的应用。

本文旨在基于MATLAB平台,对IIR数字滤波器的设计与仿真进行深入研究,以期为相关领域的研究与应用提供有益的参考。

IIR数字滤波器具有无限长的单位脉冲响应,这使得其在处理信号时能够展现出优秀的性能。

与有限脉冲响应(FIR)滤波器相比,IIR滤波器在实现相同性能时所需的阶数更低,从而减少了计算复杂度和存储空间。

在需要对信号进行高效处理的场合,IIR滤波器具有显著的优势。

MATLAB作为一款功能强大的数学软件,提供了丰富的函数和工具箱,使得数字滤波器的设计与仿真变得简单而高效。

通过MATLAB,我们可以方便地实现IIR滤波器的设计、分析和优化,从而满足不同应用场景的需求。

本文将首先介绍IIR数字滤波器的基本原理和特性,然后详细阐述基于MATLAB的IIR数字滤波器的设计方法和步骤。

接着,我们将通过仿真实验验证所设计滤波器的性能,并对其结果进行分析和讨论。

本文将总结IIR数字滤波器设计与仿真的关键技术和注意事项,为相关领域的研究人员和工程师提供有益的参考和启示。

1. IIR数字滤波器概述IIR(Infinite Impulse Response)数字滤波器是数字信号处理中常用的一类滤波器,它基于差分方程实现信号的滤波处理。

与FIR (Finite Impulse Response)滤波器不同,IIR滤波器具有无限长的单位脉冲响应,这意味着其输出不仅与当前和过去的输入信号有关,还与过去的输出信号有关。

这种特性使得IIR滤波器在实现相同的滤波效果时,通常具有更低的计算复杂度,从而提高了处理效率。

IIR滤波器的设计灵活多样,可以根据不同的需求实现低通、高通、带通和带阻等多种滤波功能。

基于MATLAB的数字信号处理实验

基于MATLAB的数字信号处理实验

实验四 IIR数字滤波器设计一、实验目的1.熟悉用双线性变换法设计IIR数字滤波器的原理与巩固FFT做频谱分析和IIR滤波器的相关理论知识,特别是对数字滤波器的常用指标和设计过程的理解;2.掌握巴特沃斯模拟滤波器的设计原理。

3.掌握双线性变换法和脉冲响应不变法设计IIR数字滤波器的原理及方法。

4.对于给定的IIR数字滤波器的类型和技术指标,能利用双线性变换法设计IIR数字滤波器。

5.对于给定的IIR数字滤波器的类型和技术指标,能利用脉冲响应不变法设计IIR数字滤波器。

二、实验原理从理论上讲,任何的线性时不变(LTI)离散时间系统都可以看做一个数字滤波器,此设计数字滤波器实际就是设计离散时间系统。

高频加性噪声与语音信号频谱不重叠,并且由于语音信号对相位不敏感,所以不需要线性相位滤波器,用IIR滤波器实现即可。

三、实验内容1、已知低通数字滤波器的技术指标为通带边沿频率:0.4*pi,Ap=0.5dB阻带边沿频率:0.6*pi,AP=50Db(1)采用脉冲响应不变法设计巴特沃斯、切比雪夫1型滤波器,T=1.画出幅度响应和数字滤波器的脉冲响应h(n)。

(2)采用双线性变换法设计巴特沃斯、切比雪夫1型滤波器,T=1.画出幅度响应和数字滤波器的脉冲响应h(n)。

2、x(t)→→→→ y(t)中,满足下列要求:a、采样速率为100kHzb、阻带边沿频率为1.5kHz,衰减为40dBc、通带边沿频率为2kHz,衰减为30dBd、单调的通带和阻带画出该数字高通滤波器的幅度响应和脉冲响应。

3、设计一个带阻滤波器,要求带通上下截止频率为0.8*pi,0.2*pi,通带内衰减不大于1dB阻带起始频率为0.7*pi,0.4*pi,阻带内衰减不大于30dB。

(1)巴特沃斯带阻滤波器;(2) 切比雪夫1型滤波器;(3) 切比雪夫2型滤波器,画出该数字高通滤波器的幅度响应和脉冲响应。

四、实验图形记录1-1、脉冲响应不变法设计低通数字滤波器00.5100.511.5幅度响应00.51-4-2024相位响应102030405060-0.200.20.40.6脉冲响应0.5100.20.40.60.81幅度响应00.51-4-2024相位响应0.51-80-60-40-200幅度响应dB204060-0.200.20.40.6脉冲响应1-2、双线性变换法设计低通滤波器00.10.20.30.40.50.60.70.80.910.511.5幅度响应0.51-80-60-40-200幅度响应dB204060-0.100.10.20.3脉冲响应01020304050607080901003、高通滤波器设计00.10.20.30.40.50.60.70.80.910.511.5幅度响应0.51-80-60-40-200幅度响应dB0204060-0.50.51脉冲响应0100200300400500600700800900100010020030040050060070080090010004、带阻滤波器设计00.10.20.30.40.50.60.70.80.910.511.5幅度响应0.51-80-60-40-200幅度响应dB0204060-0.50.51脉冲响应01020304050607080901000102030405060708090100图4-1 巴特沃斯带阻滤波器0.10.20.30.40.50.60.70.80.9100.20.40.60.8100.51-80-60-40-200幅度响应dB0204060-0.020.020.04脉冲响应010203040506070809010001020304050607080901000.10.20.30.40.50.60.70.80.9100.20.40.60.8100.51-80-60-40-200幅度响应dB204060-0.200.20.40.6脉冲响应图4-2 切比雪夫1型带阻滤波器01020304050607080901000102030405060708090100图4-3 切比雪夫2型带阻滤波器四、实验小结通过本次实验我学会了用双线性变换法和脉冲响应不变法设计IIR数字滤波器的原理与方法;脉冲响应不变法的优点是频率变换关系是线性的,即ω=ΩT,如果没有频率混叠现象,用这种方法设计的数字滤波器会很好的重现原模拟滤波器的频响特性,但是这种方法是有限阶的模拟滤波器不可能是完全理想带限的,所以脉冲响应不变法会产生不同程度的频率混叠失真,所以只适合低通和带通滤波器的设计而不适合高通和带阻滤波器的设计;双线性变换法能够解决数字滤波器在ω=pi附近形成的频谱混叠,将整个模拟频率轴压缩到±π/T之间再转换到Z 平面上,因此它适合低通、带通、高通和带阻滤波器设计,首先用正切变换实现频率压缩,即Ω=2*tan(Ω1*T/2)/T,当Ω1从-π/T经0变化到π/T时,Ω则由-∞经0变化到+∞,实现了S平面上整个虚轴完全压缩到S1平面上虚轴的±π/T之间的转换,令S=jΩ,S1=jΩ1,得到Z=(2/T+S)/(2/T-S),即为双线性变换法的原理。

数字信号处理实验报告——基于MATLAB的数字滤波器设计

数字信号处理实验报告——基于MATLAB的数字滤波器设计

实验6 基于MATLAB 的数字滤波器设计实验目的:加深对数字滤波器的常用指标和设计过程的理解。

实验原理:低通滤波器的常用指标:PP j P for e G ωωδδω≤+≤≤-,1)(1πωωδω≤≤≤S S j for eG ,)(通带边缘频率:Pω,阻带边缘频率:Sω ,通带起伏:P δ,通带峰值起伏:])[1(log2010dB p pδα--=,阻带起伏:sδ,最小阻带衰减:])[(log 2010dB s S δα-=。

数字滤波器有IIR 和FIR 两种类型,它们的特点和设计方法不同。

在MATLAB 中,可以用[b ,a]=butter (N,Wn )等函数辅助设计IIR 数字滤波器, 也可以用b=fir1(N,Wn,’ftype’) 等函数辅助设计FIR 数字滤波器。

实验内容: 利用MATLAB 编程设计一个数字带通滤波器,指标要求如下:通带边缘频率:10.4P ωπ=,20.6P ωπ=,通带峰值起伏:][1dB p≤α。

阻带边缘频率:πω3.01=S ,20.7S ωπ=,最小阻带衰减:][40dB S ≥α。

分别用IIR 和FIR 两种数字滤波器类型进行设计。

实验要求:给出IIR 数字滤波器参数和FIR 数字滤波器的冲激响应,绘出它们的幅度和相位频响曲线,讨论它们各自的实现形式和特点。

实验步骤:①Butterworth 滤波器的设计(IIR )>>wp=[0.4*pi,0.6*pi]; >>wr=[0.3*pi,0.7*pi]; >>Ap=1; >>Ar=40;Sω-Pω-P SωPassband StopbandTransition bandFig 7.1 Typical magnitudespecification for a digital LPF>>[N,Wn]=buttord(wp/pi,wr/pi,Ap,Ar)N =7Wn =0.3854 0.6146>> [b,a]=butter(N,Wn,'bandpass')b =Columns 1 through 120.0002 0 -0.0014 0 0.0042 0 -0.0071 0 0.0071 0 -0.0042 0Columns 13 through 150.0014 0 -0.0002a =Columns 1 through 121.0000 0.0000 3.7738 0.0000 6.5614 0.0000 6.6518 0.0000 4.2030 0.0000 1.6437 0.0000Columns 13 through 150.3666 0.0000 0.0359>> [H,w]=freqz(b,a);>>mag=abs(H);>>plot(w/pi,mag);>>xlabel('角频率(\Omega)');>>ylabel('幅度|Ha(j\Omega)|');>> title('数字butterworth带通滤波器幅度响应|Ha(j\Omega)|');>>phase=angle(H);>>plot(w/pi,phase);>>xlabel('角频率(\Omega)');>>ylabel('相位');>> title('数字butterworth带通滤波器相位响应曲线');>>②FIR滤波器的设计:>> wp1 = 0.4*pi; wp2 = 0.6*pi;>> ws1 = 0.3*pi; ws2 = 0.7*pi;>>tr_width = min((wp1-ws1),(ws2-wp2)) tr_width =0.3142>> M = ceil(6.2*pi/tr_width) + 1M =63>> n=[0:1:M-1];>> wc1 = (ws1+wp1)/2; wc2 = (wp2+ws2)/2; >>wc=[wc1/pi,wc2/pi];>>window= hanning(M);>> [h1,w]=freqz(window,1);>>figure(1);>>subplot(2,1,1)>>stem(window);>>axis([0 60 0 1.2]);>>grid;>>xlabel('n');>> title('Hanning窗函数');>>subplot(2,1,2)>>plot(w/pi,20*log(abs(h1)/abs(h1(1)))); >>axis([0 1 -350 0]);>>grid;>>xlabel('w/\pi');>>ylabel('幅度(dB)');>> title('Hanning窗函数的频谱');>>hn = fir1(M-1,wc, hanning (M));>> [h2,w]=freqz(hn,1,512);>>figure(2);>>subplot(2,1,1)>>stem(n,hn);>>axis([0 60 -0.25 0.25]);>>grid;>>xlabel('n');>>ylabel('h(n)');>> title('Hanning窗函数的单位脉冲响应'); >>subplot(2,1,2)>>plot(w/pi,20*log(abs(h2)/abs(h2(1)))); >>grid;>>xlabel('w/\pi');>>ylabel('幅度(dB)');>>figure(3);>>phase=angle(h1);>>plot(phase);>>axis([1 pi -1 0]);>>xlabel('w/\pi');>>ylabel('线性相位');>> title('Hanning窗函数相位特性曲线'); >>实现形式及特点分析:1.在本例中,相同的技术指标下,IIR滤波器实现的阶数为N=7,而FIR滤波器的阶数N=63。

matlab实验报告 IIR数字滤波器设计

matlab实验报告 IIR数字滤波器设计

实验报告姓名:李鹏博 实验名称: IIR 数字滤波器设计 学号:2011300704 课程名称: 数字信号处理 班级:03041102 实验室名称: 航海西楼303 组号: 1 实验日期: 2014.06.20一、实验目的、要求掌握IIR 数字滤波器设计的冲激响应不变法和双线性变换法。

掌握IIR 数字滤波器的计算机编程实现方法,即软件实现。

二、实验原理为了从模拟滤波器设计IIR 数字滤波器,必须先设计一个满足技术指标的模拟滤波器,然后将其数字化,即从s 平面映射到z 平面,得到所需的数字滤波器。

虽然IIR 数字滤波器的设计本质上并不取决于连续时间滤波器的设计,但是因为在许多应用中,数字滤波器就是用来模仿模拟滤波器功能的,所以由模拟滤波器转化为数字滤波器是很自然的。

因此,由模拟滤波器设计数字滤波器的方法准确、简便,是目前最普遍采用的方法。

三、实验环境PC 机,Windows XP ,office 2003,Matlab 软件。

四、实验过程、数据记录、分析及结论实验过程1.编程设计滤波器,用冲激响应不变法设计IIR 数字滤波器。

2.编程设计滤波器,用双线性变换法设计IIR 数字滤波器。

3.求脉冲响应、频率响应以及零极点。

4.编程滤波,求滤波器输出,完成对不同频率的多个正弦信号的滤波。

实验步骤根据所给定的技术指标进行指标转换。

112c c f πΩ=,222c c f πΩ=,112s s f πΩ=,222s s f πΩ=,21p c c B Ω==Ω-Ω,221222s s s s s B Ω-ΩΩΩ=Ω,3,18p s αα=-=-。

根据指标设计Butterworth 模拟低通滤波器。

调用函数[n,wn]=buttord(wp,ws,rp,rs,’s ’)确定阶次。

调用函数[zl,pl,kl]=buttap(n),求低通原型的模型。

调用函数[bl,al]=zp2tf(zl,pl,kl)实现模型转换。

基于MATLAB的数字滤波器的设计

基于MATLAB的数字滤波器的设计

基于MATLAB 的数字滤波器的设计1 引言数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散线性非时变系统,其输入是一组(由模拟信号取样和量化的)数字量,其输出是经过变换或说处理的另一组数字量。

数字滤波器具有稳定性高、精度高、灵活性大等突出优点。

这里所说的数字滤波器是指理想带通,低通等的频率选择数字滤波器。

数字滤波器设计的一个重要步骤是确定一个可实现的传输函数H(z),这个确定传输函数H(z)的过程称为数字滤波器设计。

数字滤波器的一般设计过程为:(1)按照实际需要,确定滤波器的性能要求(通常在频域内给定数字滤波的性能要求)。

(2)寻找一满足预定性能要求的离散时间线性系统。

(3)用有限精度的运算实现所设计的系统。

(4)通过模拟,验证所设计的系统是否符合给定性能要求。

2 数字滤波器的设计滤波器分为两种,分别为模拟滤波器和数字滤波器。

数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化的过程中,使信号按预定的形式变化。

数字滤波器有多种分类,从数字滤波器功能上分可分为低通、高通、带阻、带通滤波器,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应滤波器(IIR )和有限长冲激响应滤波器(FIR )。

数字滤波器指标:一般来说,滤波器的幅频特性是分段常数的,以低通为例,在通带内逼近于1,阻带内逼近与0,实际设计的滤波器并非是锐截止的通带和阻带两个范围,两者之间总有一个过渡带。

在设计滤波器时事先给定幅频特性允许误差,在通带范围内幅度响应以误差逼近于1,在阻带内幅1σ度响应以误差逼近于0。

2σ (1)πσσ≤≤≤≤≤≤-w w e H w w e H r jwc jw ,2|)(|,1|)(|11式中wc 和wr 分别为通带边界频率和阻带边界频率,wr-wc 为过渡带。

在具体的技术指标中往往用通带波动来表示,用最小阻带衰减At 来表示,其具体的对应公式这里就不详述了。

基于matlab的数字滤波器设计与仿真

基于matlab的数字滤波器设计与仿真

滤波器仿真实验报告题目:基于Matlab的数字滤波器设计与仿真姓名:学号:指导教师:基于Matlab 的数字滤波器设计与仿真数字信号处理在通信、语音、图像,自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。

在数字信号处理中,滤波器占有非常重要的地位。

数字滤波器在语音和图像处理、HDTV 、模式识别、频谱分析等方面得到广泛应用。

所谓滤波器,是指对输入信号进行滤波的软件或硬件。

所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的硬件或软件。

由于数字滤波信号形式与实现滤波方法与模拟滤波方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及可以避免模拟滤波器所无法克服的电压漂移和噪声问题。

数字滤波器的设计,其实质是数学逼近理论的应用,通过计算使物理可实现的实际滤波器频率特性逼近理想的或给定的频率特性,以达到去除干扰提取有用信号的目的。

1 实验与仿真原理1.1 数字滤波器的工作原理在数字滤波中,我们主要讨论离散时间序列。

如图1所示。

设输入序列为()n x ,离散或数字滤波器对单位抽样序列()n δ的响应为()n h 。

因()n δ在时域离散信号和系统中所起的作用相当于单位冲激函数在时域连续信号和系统中所起的作用。

图1 数字滤波器原理数字滤波器的序列()n y将是这两个序列的离散卷积,即()()()∑∞∞=-=kk n x k h n y同样,两个序列卷积的z 变换等于个自z 变换的乘积,即()()()z X z H z Y =用T j e z ω=代入上式,其中T 为抽样周期,则得到()()()T j T j T j e X e H e Y ωωω=式中()Tj e Xω和()T j e Y ω分别为数字滤波器输入序列和输出序列的频谱,而()Tj e H ω为单位抽样序列响应()n h 的频谱。

基于matlab_数字滤波器的设计

基于matlab_数字滤波器的设计

引言:与模拟滤波器相对应,在离散系统中广泛应用数字滤波器。

它的作用是利用离散时间系统的特性对输入信号波形或频率进行加工处理。

或者说,把输入信号变成一定的输出信号,从而达到改变信号频谱的目的。

数字滤波器一般可以用两种方法来实现:一种方法是用数字硬件装配成一台专门的设备,这种设备称为数字信号处理机;另一种方法就是直接利用通用计算机,将所需要的运算编成程序让通用计算机来完成,即利用计算机软件来实现。

模拟滤波器在测试系统或专用仪器仪表中是一种常用的变换装置。

例如:带通滤波器用作频谱分析仪中的选频装置;低通滤波器用作数字信号分析系统中的抗频混滤波;高通滤波器被用于声发射检测仪中剔除低频干扰噪声;带阻滤波器用作电涡流测振仪中的陷波器,等等。

MATLAB是由美国Mathworks公司推出的用于数值计算和图形处理的科学计算系统环境。

MATLAB是英文MATrix LABoratory(矩形实验室)的缩写。

在MATLAB环境下,用户可以集成地进行程序设计,数值计算,图形绘制,输入输出,文件管理等各项操作。

除此之外,MATLAB还具有很强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。

目前,Mathworks公司推出了18种工具箱。

用户可以根据自己的工作任务,开发自己的工具箱。

2滤波器简介2.1滤波器的概念滤波器是一种用来消除干扰杂讯的器件,将输入或输出经过过滤而得到纯净的交流电。

您可以通过基本的滤波器积木块----二阶通用滤波器传递函数,推导出最通用的滤波器类型:低通、带通、高通、帯阻和椭圆型滤波器。

传递函数的参数——f0、d、hHP、hBP和hLP,可用来构造所有类型的滤波器。

转降频率f0为s项开始占支配作用时的频率。

设计者将低于此值的频率看作是低频,而将高于此值的频率看作是高频,并将在此值附近的频率看作是带内频率。

阻尼d用于测量滤波器如何从低频率转变至高频率,它是滤波器趋向振荡的一个指标。

Matlab信号处理实验报告

Matlab信号处理实验报告

数字信号处理课程设计摘要:本文基于 Matlab 设计了巴特沃斯数字低通滤波器、切比雪夫1型高通数字滤波器并用其来对音频信号进行低通滤波、高通滤波处理,仿真结果表明设计的滤波器均对音频信号进行了有效处理。

随后又利用Matlab对信号进行了分析,从而验证了奈奎斯特采样定理。

一、课程设计目的综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导得出相应结论,并利用 MATLAB 作为编程工具进行计算机实现,从而复习巩固了课堂所学的理论知识,提高了对所学知识的综合应用能力,并从实践上初步实现了对数字信号的处理。

二、课程设计内容2.1滤波器的设计用windows自带的录音机录取语音“DSP”在文件“DSP.wav”内,时间大约1秒钟;画出语音信号的时域波形,并进行频谱分析;按照以下性能指标分别设计数字滤波器,并画出频率响应;滤波器可分别采用巴特沃斯型,切比雪夫1型滤波器。

a.低通滤波器:fc =1000Hz,fb=1200Hz,As=20dB,Ap=1dB;b.高通滤波器:fc =4800Hz,fb=5000Hz,As=20dB,Ap=1dB;(1)用上述设计的滤波器对语音信号进行滤波,并比较滤波前后语音信号的波形和频谱及声音的变化。

(2)对学有能力的同学,可设计该声音处理系统的用户界面,在该界面上可选择滤波器的类型,输入滤波器的参数,显示滤波器的频率响应,选择信号等。

2.2信号分析(1)x(t)=e|t|1000-,求其傅里叶变换x a(jΩ)。

画出模拟信号及傅里叶变换的a曲线图。

(2)以x()说明采样频率特性的影响,分别采用f=5000Hz,f=1000Hz。

绘出X(e W)曲线。

三、设计思想和系统功能分析3.1滤波器的设计3.1.1基础知识f 是模拟频率,单位HZ;Ω是模拟角频率,单位rad/s。

模拟角频率Ω和模拟频率f 存在Ω=2πf的关系。

对模拟信号采样(采样频率 f s )得到一个数字频率ω,它是模拟角频率Ω对采样频率 fs 归一化得到的,即ω = Ω/f s (rad)=2πf/fs=2πfT,对π归一化数字频率w=Ω/(π*fs)。

基于matlab的IIR数字滤波器课程设计报告

基于matlab的IIR数字滤波器课程设计报告

.数字信号处理课程设计报告专业:通信工程院系:信息工程学院一、课题名称基于matlab的IIR滤波器设计二、课题意义数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。

它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。

数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行在0与l两个电平状态)、灵活性强等优点。

三、数字滤波器原理在数字滤波中,我们主要讨论离散时间序列。

如图1所示。

设输入序列为()n x ,离散或数字滤波器对单位抽样序列()n δ的响应为()n h 。

因()n δ在时域离散信号和系统中所起的作用相当于单位冲激函数在时域连续信号和系统中所起的作用。

图1 数字滤波器原理数字滤波器的序列()n y 将是这两个序列的离散卷积,即()()()∑∞∞=-=k k n x k h n y (1)同样,两个序列卷积的z 变换等于个自z 变换的乘积,即()()()z X z H z Y = (2)用T j e z ω=代入上式,其中T 为抽样周期,则得到()()()T j T j T j e X e H e Y ωωω= (3)式中()T j e X ω和 ()T j e Y ω 分别为数字滤波器输入序列和输出序列的频谱,而()T j e H ω为单位抽样序列响应()n h 的频谱。

由此可见,输入序列的频谱()T j e X ω经过滤波后,变为()()T j T j e X e H ωω ,按照()T j e X ω的特点和我们处理信号的目的,选取适当的()T j e H ω使的滤波后的()()T j T j e X e H ωω符合我们的要求。

数字信号处理实验报告 (基于MATLAB)

数字信号处理实验报告 (基于MATLAB)

课程名称:数字信号处理实验实验地点:综合楼C407专业班级:2014级生物医学工程姓名:leifeng学号:指导老师:第一次实验第一章 离散时间信号的时域分析Q1.1运行程序P1.1,以产生单位样本序列u[n]并显示它clf; n=-10:20;u=[zeros(1,10) 1 zeros(1,20)]; stem(n,u);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([-10 20 0 1.2]);时间序号振幅单位样本序列Q1.2 命令clf ,axis ,title ,xlabel 和ylabel 的作用是什么clf :清除图形窗口内容; axis:规定横纵坐标的范围;title :使图像面板上方显示相应的题目名称; xlable :定义横坐标的名字; ylable :定义纵坐标的名字。

Q1.3修改程序P1.1以产生带有延时11个样本的延迟单位样本序列ud[n],运行修改的程序并且显示产生的序列。

clf; n=0:30;u=[zeros(1,11) 1 zeros(1,19)]; stem(n,u);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([0 30 0 1.2]);时间序号振幅单位样本序列Q1.5 修改程序P1.1,以产生带有超前7个样本的延时单位阶跃序列sd[n]。

运行修改后的程序并显示产生的序列。

clf; n=-10:20;sd=[zeros(1,3) 1 ones(1,27) ]; stem(n,sd);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([-10 20 0 1.2]);时间序号振幅单位样本序列Q1.6运行程序P1.2,以产生复数值的指数序列。

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

实验6 基于MATLAB 的数字滤波器设计
实验目的:加深对数字滤波器的常用指标和设计过程的理解。

实验原理:低通滤波器的常用指标:
P
P j P for e G ωωδδω
≤+≤≤-,1)(1
π
ωωδω
≤≤≤S S j for e
G ,)(
通带边缘频率:
P
ω,阻带边缘频率:S
ω ,
通带起伏:P δ,通带峰值起伏:
]
)[1(log
2010
dB p p
δα
--=,阻带起伏:s
δ,
最小阻带衰减:
]
)[(log 2010dB s S δα-=。

数字滤波器有IIR 和FIR 两种类型,它们的特点和设计方法不同。

在MATLAB 中,可以用[b ,a]=butter (N,Wn )等函数辅助设计IIR 数字滤波器, 也可以用b=fir1(N,Wn,’ftype’) 等函数辅助设计FIR 数字滤波器。

实验内容: 利用MATLAB 编程设计一个数字带通滤波器,指标要求如下:
通带边缘频率:10.4P ωπ
=,20.6P ωπ
=,通带峰值起伏:
]
[1dB p
≤α。

阻带边缘频率:
π
ω3.01=S ,
20.7S ωπ
=,最小阻带衰减:
]
[40dB S ≥α。

分别用IIR 和FIR 两种数字滤波器类型进行设计。

实验要求:给出IIR 数字滤波器参数和FIR 数字滤波器的冲激响应,绘出它们
的幅度和相位频响曲线,讨论它们各自的实现形式和特点。

实验步骤:
①Butterworth 滤波器的设计(IIR )
>>wp=[0.4*pi,0.6*pi]; >>wr=[0.3*pi,0.7*pi]; >>Ap=1; >>Ar=40;
S
ω-P
ω-P S
ωPassband Stopband
Transition band
Fig 7.1 Typical magnitude
specification for a digital LPF
>>[N,Wn]=buttord(wp/pi,wr/pi,Ap,Ar)
N =
7
Wn =
0.3854 0.6146
>> [b,a]=butter(N,Wn,'bandpass')
b =
Columns 1 through 12
0.0002 0 -0.0014 0 0.0042 0 -0.0071 0 0.0071 0 -0.0042 0
Columns 13 through 15
0.0014 0 -0.0002
a =
Columns 1 through 12
1.0000 0.0000 3.7738 0.0000 6.5614 0.0000 6.6518 0.0000 4.2030 0.0000 1.6437 0.0000
Columns 13 through 15
0.3666 0.0000 0.0359
>> [H,w]=freqz(b,a);
>>mag=abs(H);
>>plot(w/pi,mag);
>>xlabel('角频率(\Omega)');
>>ylabel('幅度|Ha(j\Omega)|');
>> title('数字butterworth带通滤波器幅度响应|Ha(j\Omega)|');
>>phase=angle(H);
>>plot(w/pi,phase);
>>xlabel('角频率(\Omega)');
>>ylabel('相位');
>> title('数字butterworth带通滤波器相位响应曲线');
>>
②FIR滤波器的设计:
>> wp1 = 0.4*pi; wp2 = 0.6*pi;
>> ws1 = 0.3*pi; ws2 = 0.7*pi;
>>tr_width = min((wp1-ws1),(ws2-wp2)) tr_width =
0.3142
>> M = ceil(6.2*pi/tr_width) + 1
M =
63
>> n=[0:1:M-1];
>> wc1 = (ws1+wp1)/2; wc2 = (wp2+ws2)/2; >>wc=[wc1/pi,wc2/pi];
>>window= hanning(M);
>> [h1,w]=freqz(window,1);
>>figure(1);
>>subplot(2,1,1)
>>stem(window);
>>axis([0 60 0 1.2]);
>>grid;
>>xlabel('n');
>> title('Hanning窗函数');
>>subplot(2,1,2)
>>plot(w/pi,20*log(abs(h1)/abs(h1(1)))); >>axis([0 1 -350 0]);
>>grid;
>>xlabel('w/\pi');
>>ylabel('幅度(dB)');
>> title('Hanning窗函数的频谱');
>>hn = fir1(M-1,wc, hanning (M));
>> [h2,w]=freqz(hn,1,512);
>>figure(2);
>>subplot(2,1,1)
>>stem(n,hn);
>>axis([0 60 -0.25 0.25]);
>>grid;
>>xlabel('n');
>>ylabel('h(n)');
>> title('Hanning窗函数的单位脉冲响应'); >>subplot(2,1,2)
>>plot(w/pi,20*log(abs(h2)/abs(h2(1)))); >>grid;
>>xlabel('w/\pi');
>>ylabel('幅度(dB)');
>>figure(3);
>>phase=angle(h1);
>>plot(phase);
>>axis([1 pi -1 0]);
>>xlabel('w/\pi');
>>ylabel('线性相位');
>> title('Hanning窗函数相位特性曲线'); >>
实现形式及特点分析:
1.在本例中,相同的技术指标下,IIR滤波器实现的阶数为N=7,
而FIR滤波器的阶数N=63。

因此,相同的技术指标,用IIR滤波器实现的阶数远远小于用FIR滤波器的阶数。

这是由于IIR 滤波器存在着输出对输入的反馈。

2.从实验中绘制的相位特性曲线可以看出,FIR滤波器可以得到
严格的线性相位,而IIR滤波器做不到这一点。

IIR滤波器的选择性愈好,其相位的非线性愈严重。

因而,如果IIR滤波器要得到线性相位,又要满足滤波的技术要求,必须加全通网络进行相位校正,这同样会大大增加滤波器的阶数。

因此,从相位特性考虑,FIR滤波器又优于IIR滤波器。

相关文档
最新文档