设计一个数字带通滤波器
第五节数字高通带通和带阻滤波器的设计
(6)通过双线性变换法将Ha(s)转换成数字带通滤波器H(z)。
1 1 z 下面将(5)、(6)两步合成一步计算: s 2 1 z 1
2 s 2 0 5.48 4.5z 1 7.481z 2 p 1 s( u l ) s 2 1 z 0.868(1 z 2 ) 1 z 1
(3)模拟低通滤波器的技术指标计算如下:
1 0.163rad / s, p 3dB 6.155 1 s 0.604 rad / s, s 15dB 1.655 p
将Ωp和Ωs对3dB截止频率Ωc归一化,这里Ωc=Ωp,
s p 1, s 3.71 p
G( p) 1 p2 2 p 1
为去归一化,将p=s/Ωc代入上式得到:
2 c G( s) 2 2 s 2 c s c
(5) 将模拟低通转换成模拟高通。将上式中G(s)的变量换成1/s, 得到模拟高通Ha(s):
2 1 2 s H a ( s ) G( ) 2 2 c s c s 2c s 1
(6) 用双线性变换法将模拟高通H (s)转换成数字高通H(z):
实验7 窗函数法设计FIR数字滤波器
实验7窗函数法设计FIR数字滤波器一、实验目的掌握窗函数法设计F1R数字滤波器的原理和具体方法二、实验设备与环境计算机、Mat1ab软件环境三、实验基础理论1>基本原理窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器Hd(,3),然后用窗函数截取它的单位脉冲响应%(九),得到线性相位和因果的FIR滤波器,这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。
2、设计步骤(1)给定理想滤波器的频率响应Hd("3),在通带上具有单位增益和线性相位,在阻带上具有零响应。
一个带宽为g(3c<Tr)的低通滤波器由下式给定h(e j^=(eW∣ω∣≤ωc虱)一1Oωc<∣ω∣<π其中α为采样延迟,其作用是为了得到因果的系统。
(2)确定这个滤波器的单位脉冲响应为了得到一个h(n)长度为N的因果的线性相位FIR滤波器,我们令N-Ia=-2-(3)用窗函数截取hd(τι)得到所设计FIR数字滤波器h(n)h(n)=h d(n)w(n)3、窗函数的选择常用的窗函数有矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗等。
Mat1ab提供了一些函数用于产生窗函数,如下表所示:在设计过程中我们需要根据给定的滤波器技术指标,选择滤波器长度N 和窗函数3(n)°表7.2列出了常用的窗函数的一些特性,可供设计时参考。
其中幻是修正的零阶贝塞尔函数,参数B 控制最小阻带衰减,这种窗函数对于相同的N 可以提供不同的过渡带宽。
由于贝塞尔函数比较更杂,这种窗函数的设计方程很难推导,然而幸运的是,有一些经验设计方程可以直接使用。
已知给定的指标叫Msc,Rp 和4,滤波器长度N 和凯瑟窗参数B 可以按如下凯瑟窗设计方程给出过渡带宽:∆ω=ωst -ωp入一7.95 2.285∆ω_(0.1102(4-8.7) ,P=iθ.5842(4-21)04+0.07886(4-21), 四、实验内容1、设计一个数字低通FIR 滤波器,其技术指标如下ωp =0.2τr,RP=0.25dBωst =0.3τr,A s =50dB分别采用矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗设计该滤波器。
带通滤波器设计
LC椭圆函数带通滤波器设计要求带通滤波器,在15kHz~ZOkHz的频率范围内,衰减最大变化1dB,低于14.06kHz和高于23kHz频率范围,最小衰减为50dB,Rs=RL=10kΩ。
③运行Filter Solutions程序。
点击“阻带频率”输人框,在“通带波纹(dB)”内输人0.18,在“通带频率”内输人1,在“阻带频率”内输人1.456,选中“频率单位-弧度”逻辑框。
在“源阻抗”和“负载阻抗”内输人1。
④点击“确定阶数”控制钮打开第二个面板。
在“阻带衰减(dB)”内输人50,点击“设置最小阶数”按钮并点击“关闭”,主控制面板上形式出“6阶”,选中“偶次阶模式”逻辑框。
⑤点击“电路”按钮。
Filter s。
lutions提供了两个电路图。
选择“无源滤波器1”,如图1(a)所示。
⑥这个滤波器必须变换为中心频率ω0=1的归一化带通滤波器。
带通滤波器的Q 值为:把所有的电感量和电容值都乘以Qbp°然后用电感并联每一个电容、用电容串联每一个电感使其谐振频率为ω0=1,该网络被变换为带通滤波器。
使用的谐振元仵是原元件值的倒数,如图1(b)所示。
⑦按照图1的方式转换Ⅱ型支路。
变换后的滤波器见图1(c)。
在原理图下标出了以rad/s为单位的谐振频率。
⑧用中心频率fo=17.32kHz和阻抗10kΩ对滤波器进行去归一化以完成设计。
将所有的电感乘以Z/FSF,所有的电容除以z×FSF,其中z=104,FSF=2πfe=1.0882×105。
最终的滤波器见图1(d)。
图1(c)中的归一化谐振频率直接乘以几何中心频率fo=17.32kHz即可得到谐振频率。
频率响应见图1(e)。
滤波器的主要参数滤波器的主要参数(Definitions) 中心频率(Center Frequency):滤波器通带的中心频率f 0 ,一般取f 0 =(f 1 +f 2 )/2,f 1 、f 2 为带通或带阻滤波器左、右相对下降1dB或3dB边频点。
通信电子中的数字带通滤波器设计
通信电子中的数字带通滤波器设计数字带通滤波器是数字信号处理中的一种重要滤波器类型。
它在通信电子中被广泛应用,能够对信号进行频带选择,增强目标信号的信息,抑制噪声和干扰。
因此,数字带通滤波器的设计对于实现高性能通信系统至关重要。
一、数字信号处理基础在深入探讨数字带通滤波器之前,我们需要了解一些数字信号处理(DSP)的基础知识。
数字信号是利用离散时间采样的方式对模拟信号进行数字化处理的结果。
数字信号通常由采样率、量化位数和信号长度三部分组成。
数字信号处理可以分为两大类,即时域处理和频域处理。
时域处理直接操作时间信息,包括滤波、平移、卷积等。
频域处理则需要将时域信号变换成频域信号进行处理,最常用的变换方式是傅里叶变换和离散傅里叶变换。
二、数字带通滤波器原理数字带通滤波器是一种具有窄通带和高阻带的数字滤波器,能够选择指定频带内的信号而抑制其它频带的信号。
它的设计要求基于信号的选择性和阻带抑制能力,同时还要考虑设计所需的复杂度和稳定性等因素。
数字带通滤波器的常见设计方法包括有限冲激响应(FIR)和无限冲激响应(IIR)两种。
FIR滤波器具有线性相位和稳定性等优良特性,但是需要较长的滤波器阶数才能达到很高的通带选择性。
而IIR滤波器具有较高的通带选择性和更少的滤波器阶数,但是可能会因为零极点分布的不稳定性导致系统不稳定。
三、数字带通滤波器设计数字带通滤波器的设计目标是选择指定频带内的信号并增强其信息,同时抑制其它频带的信号。
设计过程中需要考虑滤波器阶数、通带带宽、阻带带宽、阻带衰减和通带波纹等重要因素。
设计FIR数字带通滤波器的常用方法包括窗函数法、最小二乘法和频率抽样法等。
其中,窗函数法是最为常用的一种设计方法,将离散时间傅里叶变换(DTFT)的理想频率响应与实际可实现的窗函数卷积,从而实现数字带通滤波器的设计。
IIR数字带通滤波器的设计常用的方法包括零极点法、双线性变换法和频率变换法等。
其中,零极点法和双线性变换法是最为常用的两种设计方法,零极点法通过选择合适的零极点分布实现数字带通滤波器的设计;而双线性变换法则将模拟滤波器的传输函数通过双线性变换转化为数字滤波器的传输函数。
设计巴特沃斯数字带通滤波器-参考模板
设计巴特沃斯数字带通滤波器,要求通带范围为:0.25TT rad< W <0. 45TT tad,通带最大衰减为3dB,阻带范围为0兰3 <0. 15TT rad 和0.55TT rad< w <irrad,阻带最小衰减为40dB。
利用双线性变换设计,写岀设计过程,并用MATLAB绘出幅频和相频特性曲线。
设计思路及计算:(1)确左技术指标,求得数字边缘频率:co Pp{ = 0.25/rmd , co Ppl = 0.45/rmd , a p = 3dBCpH = 0.15/rrad , co Px2 = 0.55兀rad 9 a s = 40〃B(2)将数字带通滤波器的技术指标转换为模拟带通滤波器技术指标:用双线性变换法,则Q = -tan-,可得T 22=tan 0.125/r = 0.4142rad / s=—tanT=tan 0.225^ = 0.8542=—tan=tan 0.075/r = 0.2401 md/sT 20 flPs2%=严守“an0.275"1.1708M"P$2(3)将带通滤波器的指标转换为模拟低通指标。
模拟低通归一化边界频率为:(。
丹2) —°Ppi°Pp2c =1, -------- =1.9748Cp$2 (°Pp2 - ©Ppi)(4)确左低通滤波器阶数NIg ko.orQ =10莎=0.01, N> —21g(1.9748) = 6768121g取N =7o⑸。
产仆7或。
广揣洽可得巴特沃兹模拟滤波器:(2A:+1*7) ,以=£,4再由双线性变换即可得到所求。
口⑺-几)A-1代码实现:» [N/Wn]=buttord([.25 .45JJ.15 .55),3,40)N =70 -0.0001Wn =0.2482 0.4525» [b z a]=butter(7J.2482 .4525])b =Columns 1 through 100.0001 0 0.00220 0.00360 -0.00070 -0.0036 0Columns 11 through 15-0.0022 0 0.0007 a =Columns 1 through 101.0000 -5.3094-34.7303 56.9401 -74.5112-71.1129 52.6364 -32.2233Columns 11 through 1516.1673 -6.4607 1.98270.0523» (h/w]=freqz(b/a,100);»subplot(211)»hl=20*logl0(abs(h)); »plot(w/pi,hl);»axis([0 1-50 10]);»subplot(212)»plot(w/pi,angle(h))16.291880.0108-0.4217则滤波器传递函数为:f 0.0001-0.0007z"2+0・0022Z7 -0・0036严、_________ (』・0036Z Y -0・0022zW +0.0007C -0・000"74) ____________ "fl-5・3094以 +16.2918z_ - 34.7303z'5 + 56.940 lz M-74.5112z s+ 80.0108z“-71.1129z'7"〔+52・6364z" -32・2233z_ + 16」673z-10一6.4607z'n +1.9827z"12-0.4217z" + 0.0523z"14丿幅频和相频曲线:由上图可知,已满足设计要求--精心整理,希望对您有所帮助。
数字带通滤波器
课程设计报告专业班级课程题目学号学生姓名指导教师年月一、设计题目:IIR 数字带通滤波器设计 二、设计目的1、巩固所学理论知识。
2、提高综合运用所学理论知识独立分析和解决问题的能力。
3、更好地将理论与实践相结合。
4、掌握信号分析与处理的基本方法与实现。
5、熟练使用MATLAB 语言进行编程实现。
三、设计要求采用适当方法基于MATLAB 设计一个IIR 带通滤波器,其中带通的中心频率为ωp0=0.5π,;通带截止频率ωp1=0.4π,ωp2=0.6π;通带最大衰减αp =3dB;阻带最小衰减αs =15dB;阻带截止频率ωs2=0.7π. 四、设计原理1.用脉冲相应不变法设计IIR 数字滤波器利用模拟滤波器来设计数字滤波器,也就是使数字滤波器能模仿模拟滤波器的特性,这种模仿可以从不同的角度出发。
脉冲响应不变法是从滤波器的脉冲响应出发,使数字滤波器的单位脉冲响应序列h (n )模仿模拟滤波器的冲激响应h a (t ),即将h a (t )进行等间隔采样,使h (n )正好等于h a (t )的采样值,满足 h (n )=h a (nT )式中,T 是采样周期。
如果令H a (s )是h a(t )的拉普拉斯变换,H (z )为h (n )的Z 变换,利用采样序列的Z 变换与模拟信号的拉普拉斯变换的关系得(1-1)则可看出,脉冲响应不变法将模拟滤波器的S 平面变换成数字滤波器的Z 平面,这个从s 到z 的变换z =e sT 是从S 平面变换到Z 平面的标准变换关系式。
⎪⎭⎫ ⎝⎛-=Ω-=∑∑∞-∞=∞-∞==k T j s X T jk s X Tz X k a s k a ez sTπ21)(1)(图1-1脉冲响应不变法的映射关系由(1-1)式,数字滤波器的频率响应和模拟滤波器的频率响应间的关系为(1-2)这就是说,数字滤波器的频率响应是模拟滤波器频率响应的周期延拓。
正如采样定理所讨论的,只有当模拟滤波器的频率响应是限带的,且带限于折叠频率以内时,即(1-3)才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应,而不产生混叠失真,即|ω|<π (1-4)但是,任何一个实际的模拟滤波器频率响应都不是严格限带的,变换后就会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真,如图7-4所示。
毕业设计LC带通滤波器的设计与仿真设计
毕业设计LC带通滤波器的设计与仿真设计引言:滤波器是电子电路中非常重要的一个部分,它可以对输入信号进行频率选择性的处理。
而LC带通滤波器是一种常见的滤波器,它能够选择特定的频带通过,达到滤波的目的。
本文将介绍LC带通滤波器的设计和仿真,并带有实际案例进行说明。
设计目标:设计一个LC带通滤波器,达到对输入信号的特定频率带进行增强或抑制的效果。
设计的滤波器需要满足以下要求:1.通带范围:10kHz-20kHz2.阻带范围:0-5kHz和25kHz-正无穷大3.通带衰减:小于3dB4.阻带衰减:大于40dB设计步骤:1.确定滤波器的类型和拓扑结构。
对于LC带通滤波器,常用的拓扑结构有L型和π型两种。
本文选择π型结构进行设计。
2.根据设计要求,计算滤波器的理论参数。
计算中需要考虑到通带范围、阻带要求和通带衰减等因素。
3.根据计算结果,选择合适的电感和电容值。
4.绘制原理图,并进行仿真。
使用专业的电子设计自动化(EDA)软件进行仿真,如SPICE仿真软件。
5.优化滤波器的性能。
根据仿真结果进行进一步调整,优化滤波器的通带范围和衰减性能。
仿真设计案例:选取一个实例进行LC带通滤波器的设计和仿真。
示例要求:通带范围:12kHz-18kHz阻带范围:0-10kHz和20kHz-正无穷大通带衰减:小于2dB阻带衰减:大于50dB设计步骤:1.选择π型结构,选取合适的电感和电容值。
2.计算得到电感值为L=100μH,电容值为C1=22nF和C2=47nF。
3.绘制原理图,并进行SPICE仿真。
4.仿真结果显示,滤波器在通带范围内的衰减小于2dB,在阻带范围内的衰减高于50dB。
5.进行微调和优化,根据需要调整电感和电容值,以获得更理想的滤波器性能。
结论:通过设计和仿真,成功地完成了LC带通滤波器的设计过程。
根据示例结果,可见所设计的滤波器在设计要求范围内达到了优良的滤波效果。
这个设计过程可以用于其他LC带通滤波器的设计,只需根据实际要求进行参数选择和优化。
stm32数字带通滤波例程
stm32数字带通滤波例程STM32是一款广泛使用的嵌入式微控制器系列,其具有强大的处理能力和丰富的外设接口,适用于各种应用领域。
数字带通滤波是一种常见的信号处理技术,可以用于滤除不需要的频率成分,保留感兴趣的频率范围内的信号。
本文将介绍如何在STM32上实现数字带通滤波的例程。
我们需要了解数字带通滤波的原理。
数字滤波器是一种将输入信号转换为输出信号的系统,可以根据不同的滤波特性对信号进行处理。
带通滤波器是一种能够通过某个频率范围内的信号,而抑制其他频率范围的信号的滤波器。
在数字领域中,常用的数字带通滤波器有巴特沃斯滤波器、切比雪夫滤波器等。
在STM32上实现数字带通滤波的例程,我们可以使用STM32提供的库函数和外设来实现。
首先,我们需要配置ADC(模数转换器)来获取输入信号。
ADC是一种将模拟信号转换为数字信号的外设,可以将输入信号转换为数字形式的数据。
在配置ADC时,我们需要设置采样频率和采样精度等参数,以满足实际应用的需求。
接下来,我们需要配置DAC(数模转换器)来输出滤波后的信号。
DAC是一种将数字信号转换为模拟信号的外设,可以将数字形式的数据转换为模拟信号输出。
在配置DAC时,我们需要设置输出的电压范围和输出的采样频率等参数,以满足实际应用的需求。
在配置好ADC和DAC之后,我们需要使用数字滤波算法对输入信号进行滤波处理。
常用的数字滤波算法有FIR滤波器和IIR滤波器等。
FIR滤波器是一种线性相位滤波器,其滤波特性可以由滤波器的系数来确定。
IIR滤波器是一种非线性相位滤波器,其滤波特性可以由滤波器的差分方程来确定。
根据实际应用的需求,我们可以选择合适的滤波算法来实现数字带通滤波。
在实现数字带通滤波的过程中,我们需要注意一些问题。
首先,滤波器的设计需要根据实际应用的需求来确定滤波器的参数,包括截止频率、带宽等。
其次,滤波器的性能会受到采样频率和采样精度等因素的影响,我们需要根据实际应用的需求来确定这些参数。
stm32数字带通滤波例程
stm32数字带通滤波例程一、概述STM32数字带通滤波原理STM32数字带通滤波例程是一种基于STM32微控制器的数字信号处理技术。
带通滤波器是一种允许特定频率范围内信号通过的滤波器,对于去除噪声、提取有用信号具有重要作用。
STM32数字带通滤波例程通过设计数字滤波器,实现对输入信号的滤波处理,从而满足各种应用场景的需求。
二、详述STM32数字带通滤波算法实现1.选择合适的数字滤波器类型:常见的数字滤波器类型有FIR(有限脉冲响应)滤波器和IIR(无限脉冲响应)滤波器。
FIR滤波器具有线性相位、频率响应平坦等特点,IIR滤波器则具有实现简单、低阶滤波器性能较好等优点。
在STM32数字带通滤波例程中,可根据需求选择合适的滤波器类型。
2.设计数字滤波器的参数:数字滤波器的参数包括截止频率、通带衰减、阻带衰减等。
设计时需要根据实际应用场景和性能要求,合理设置滤波器参数。
3.实现数字滤波器:利用STM32内部的数字信号处理(DSP)模块或软件算法实现数字滤波器。
STM32提供了丰富的内置滤波器库,方便开发者快速实现数字滤波器。
4.滤波器系数优化:为了提高滤波器性能,可以通过调整滤波器系数进行优化。
常用的优化方法有最小二乘法、最小化误差平方和等。
三、分析STM32数字带通滤波性能及优化方法1.滤波性能:STM32数字带通滤波例程的性能主要体现在滤波器的频率响应、相位响应和幅频响应等方面。
通过合理设计滤波器参数和优化算法,可以实现高性能的带通滤波器。
2.优化方法:针对STM32数字带通滤波例程的性能优化,可以采用以下方法:a.调整滤波器阶数:增加滤波器阶数可以提高滤波器的性能,但同时会增加计算复杂度和资源消耗。
b.优化滤波器系数:通过最小化误差平方和等方法,调整滤波器系数,以提高滤波器性能。
c.采用多级滤波器:将带通滤波器分为多级,逐级优化,以提高整体性能。
四、总结STM32数字带通滤波应用场景及优势1.应用场景:STM32数字带通滤波例程广泛应用于各种电子设备中,如通信、音频处理、图像处理等领域。
结合双线性变换法设计一个数字切比雪夫带通IIR滤波器。
课程设计任务书学生姓名:蒋立豪专业班级:通信1303指导教师:魏勤工作单位:信息工程学院题目:利用MATLAB仿真软件系统结合双线性变换法设计一个数字切比雪夫带通IIR滤波器。
初始条件:1 MATLAB编程的基础知识2《信号与系统》滤波器的相关知识3《数字信号处理》的相关知识要求完成的主要任务:(包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。
2、技术要求:1)设计一个数字滤波器,要求运用切比雪夫原理和双线性变换法2)具有带通的功能,能够滤除小频率的信号和大频率的信号3)能够让频带内的信号通过4) 确定设计方案,按功能模块的设计程序,写出总体程序,并阐述基本原理。
5) 查阅至少5篇参考文献。
按《武汉理工大学课程设计工作规范》要求撰写设计报告书。
全文用A4纸打印,图纸应符合绘图规范。
时间安排:序阶段内容所需时间号1 方案设计1天2 软件设计2天3 系统调试1天4 答辩1天合计5天指导教师签名:年月日系主任(或责任教师)签名:年月日摘要面对庞杂繁多的原始信号, 如何提取所需信号、抑制不需要的信号这就需要使用滤波器。
滤波器的作用主要是选择所需频带的信号内容而抑制不需要的其他频带的信号内容。
数字滤波器因其精度高、可靠性好、灵活性大等优点, 在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。
MATLAB是“矩证实验室”(MATrix LABoratoy)的缩写,它是一种以钜阵运算为基础的交互式程序语言,专门针对科学﹑工程计算机绘图的需求。
与其他计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高本次课程设计将完成一个数字切比雪夫带通IIR滤波器的设计,利用双线性变换和无限冲激响应IIR原理完成设计,并利用MATLAB进行仿真。
关键字:滤波器、数字信号处理、噪声、IIR、带通、MATLABAbstractFaced with a huge variety of original signal, how to extract the desired signal, suppress the signal does not need to use the filter. The function of the filter is to select the signal content of the desired frequency band and suppress the signal content of the other frequency band which is not needed. Digital filter because of the advantage of its high accuracy, good reliability and great flexibility, in speech signal processing, signal spectrum estimation, signal to noise, wireless communication in the digital frequency conversion and image processing etc. in actual engineering application is very widespread.Matlab is the abbreviation of "moment of laboratory medicine" (matrix LABoratoy) it is a kind of to huge operational matrices based interactive programming language, specifically for the needs of science and engineering computer graphics. Compared with other computer languages, it is characterized by its simplicity and intelligence, the way of thinking and writing habits, which makes the programming and debugging efficiency greatly improved.The curriculum design will be completed a digital Chebyshev bandpass IIR filter design, using bilinear transform and infinite impulse response IIR principle of the completion of design, and is simulated with MATLAB.Keywords: filter, digital signal processing, noise, IIR, band-pass, MATLAB。
Matlab课程设计利用MATLAB结合双线性变换法设计数字切比雪夫带通IIR滤波器代码
开始↓读入数字滤波器技术指标↓将指标转换成归一化模拟低通滤波器的指标↓设计归一化的模拟低通滤波器阶数N 和截止频率↓模拟域频率变换,将H(P变换成模拟带通滤波器H(s ↓用双线性变换法将H(s转换成数字带通滤波器H(z ↓输入信号后显示相关结果求相应的幅频响应与相频响应↓50100150-202tx 1(tx1的波形50100150-202tx 2(tx2的波形50100150-202t x (t输入信号x 的波形10203040-0.01-0.00500.0050.01ty滤波器输出y 的波形clc;clear all ;结束%数字滤波器的技术指标Rp = 1; % 通带最大衰减Rs = 40;% 阻带最小衰减OmegaS1_1=350; % 通带截止频率OmegaS1_2=550;% 通带截止频率OmegaP1_1=400; % 阻带截止频率OmegaP1_2=500;% 阻带截止频率Fp=2000; % 抽样频率Wp1=2*pi*OmegaP1_1/Fp; % 模数频率变换Wp2=2*pi*OmegaP1_2/Fp;Ws1=2*pi*OmegaS1_1/Fp;Ws2=2*pi*OmegaS1_2/Fp;OmegaP1=2*Fp*tan(Wp1/2; % 非线性变换OmegaP2=2*Fp*tan(Wp2/2; % 非线性变换OmegaS1=2*Fp*tan(Ws1/2; % 非线性变换OmegaS2=2*Fp*tan(Ws2/2; % 非线性变换OmegaP0=sqrt(OmegaP1*OmegaP2;% 等效中心频率Bw=OmegaP2-OmegaP1; % 带通滤波器的通带宽度Eta_P0=OmegaP0/Bw; % 归一化处理Eta_P1=OmegaP1/Bw; % 归一化处理Eta_P2=OmegaP2/Bw; % 归一化处理Eta_S1=OmegaS1/Bw; % 归一化处理Eta_S2=OmegaS2/Bw; % 归一化处理Lemta_P_EquivalentLowPass=Eta_P2/(Eta_P2^2-Eta_P0^2; % 转换成低通参数Lemta_S1_EquivalentLowPass=-Eta_S1/(Eta_S1^2-Eta_P0^2; % 转换成低通参数Lemta_S2_EquivalentLowPass=Eta_S2/(Eta_S2^2-Eta_P0^2; % 转换成低通参数Lemta_S_EquivalentLowPass=min(Lemta_S1_EquivalentLowPass,Lemta_S2_EquivalentLowPass; % 取最小值% E求滤波器阶数[N, Wn]=cheb2ord(Lemta_P_EquivalentLowPass, Lemta_S_EquivalentLowPass, Rp, Rs,'s';% 滤波器设计[num1,den1]=cheby2(N,Rs,Wn,'s';[num2,den2]=lp2bp(num1,den1,OmegaP0,Bw;[num,den]=bilinear(num2,den2,Fp;[Z,P,K]=cheb1ap(N,Rp;w=linspace(1,1000,100*2*pi;[M1,N1]=zp2tf(Z,P,K; %将零极点形式转换为传输函数形式[M,N]=lp2bp(M1,N1,OmegaP0,Bw; %对低通滤波器进行频率变换转换为带通滤波器% 计算增益响应w = 0:pi/255:pi;h = freqz(num,den,w;g = 20*log10(abs(h;%绘制切比雪夫带通滤波器幅频特性figure;plot(w/pi,g;gridaxis([0 1 -60 5];xlabel('\频率/\pi'; ylabel('增益/dB'; title('切比雪夫II型带通滤波器幅频响应'; %Plot the poles and zeros[z,p,k]=tf2zp(num,den;figure;zplane(z,p; %绘制传输函数零极点title('?传输函数的零极点'f1=450;f2=600;t=0:0.0001:1x1=sin(2*pi*f1*t;x2=sin(2*pi*f2*t;x=x1+x2;figure;subplot(2,2,1%绘制x1的波形plot(x1;grid on;axis([0,50*pi,-3,3];xlabel('t';ylabel('x1(t';title('x1的波形';subplot(2,2,2%绘制x2的波形plot(x2;grid on;axis([0,50*pi,-3,3];xlabel('t';ylabel('x2(t';title('x2的波形';subplot(2,2,3%绘制输入x的波形plot(x;grid on;axis([0,50*pi,-3,3];xlabel('t';ylabel('x(t';title('输入信号x的波形'%X=fft(x;y=filter(num,den,x;%数字滤波器输出subplot(2,2,4; plot(real(y;grid on;axis([0,15*pi,-0.01,0.01];xlabel('t';ylabel('y';title('滤波器输出y的波形';附录:PPpppp5. 用双线性变换法设计IIR数字带通滤波器例21-3采用双线性变换法设计一个切比雪夫Ⅰ型数字带通滤波器,要求:通带wp1=0.3p,wp2=0.7p,Rp=1 dB;阻带ws1=0.2p,ws2=0.8p,As=20 dB解程序如下:wp1=0.4*pi;wp2=0.5*pi;ws1=0.35*pi;ws2=0.55*pi;Rp=1;As=40;T=0.0005;Fs=1/T;Omgp1=(2/T*tan(wp1/2;Omgp2=(2/T*tan(wp2/2;Omgp=[Omgp1,Omgp2];Omgs1=(2/T*tan(ws1/2;Omgs2=(2/T*tan(ws2/2;Omgs=[Omgs1,Omgs2];bw=Omgp2-Omgp1;w0=sqrt(Omgp1*Omgp2;bw=Omgs2-Omgs1;w0=sqrt(Omgs1*Omgs2; %[ZK(]模拟滤波器阻带带宽和中心频率[n,Omgn]=cheb2ord(Omgp,Omgs,Rp,As,'s' %计算阶数n和截止频率[z0,p0,k0]=cheb2ap(n,As; %设计归一化的模拟原型滤波器[n,Omgn]=cheb1ord(Omgp,Omgs,Rp,As,'s'[z0,p0,k0]=cheb1ap(n,Rp;ba1=k0*real(poly(z0;aa1=real(poly(p0;[ba,aa]=lp2bp(ba1,aa1,w0,bw;[bd,ad]=bilinear(ba,aa,Fs[H,w]=freqz(bd,ad;dbH=20*log10((abs(H+eps/max(abs(H;subplot(2,2,1,plot(w/2/pi*Fs,abs(H,'k';ylabel('|H|';title('幅度响应';axis([0,Fs/2,0,1.1];set(gca,'XTickMode','manual','XTick',[0,fs,fp,Fs/2];set(gca,'YTickMode','manual','YTick',[0,Attn,ripple,1];grid subplot(2,2,2,plot(w/2/pi*Fs,angle(H/pi*180,'k';ylabel('\phi';title('相位响应';axis([0,Fs/2,-180,180];set(gca,'XTickMode','manual','XTick',[0,fs,fp,Fs/2];set(gca,'YTickMode','manual','YTick',[-180,0,180];grid subplot(2,2,3,plot(w/2/pi*Fs,dbH;title('幅度响应( dB';axis([0,Fs/2,-40,5];ylabel('dB';xlabel('频率(\pi';set(gca,'XTickMode','manual','XTick',[0,fs,fp,Fs/2];set(gca,'YTickMode','manual','YTick',[-50,-20,-1,0];gridsubplot(2,2,4,zplane(bd,ad;axis([-1.1,1.1,-1.1,1.1];title('零极图';程序运行结果如下:n = 3Omgn =1.0e+003 * 1.0191 3.9252bd =0.0736 0.0000 -0.2208 0.0000 0.2208 -0.0000 -0.0736ad =1.0000 0.0000 0.9761 0.0000 0.8568 0.0000 0.2919 采用双线性变换法设计一个切比雪夫Ⅱ型数字带通滤波器,其它条件不变,则需要修改下面几句程序:bw=Omgs2-Omgs1;w0=sqrt(Omgs1*Omgs2; %[ZK(]模拟滤波器阻带带宽和中心频率[n,Omgn]=cheb2ord(Omgp,Omgs,Rp,As,'s' %计算阶数n和截止频率[z0,p0,k0]=cheb2ap(n,As; %设计归一化的模拟原型滤波器采用阻带截止频率来计算W0和BW,是因为切比雪夫Ⅱ型模拟低通原型是以阻带衰减As为主要设计指标的。
matlab窗函数法设计带通滤波器
matlab窗函数法设计带通滤波器在MATLAB中,可以使用窗函数法设计数字滤波器。
窗函数方法是一种基于时域设计技术,通过在滤波器的脉冲响应上乘以一个窗函数,从而改变其频率特性。
这种方法不需要进行频域变换,因此在计算上具有一定的简便性。
下面将详细介绍如何使用MATLAB实现带通滤波器的设计。
带通滤波器的目标是在给定的频率范围内传递信号,并在其他频率上进行衰减。
通常,设计带通滤波器的步骤如下:1. 确定滤波器的通带频率范围和截止频率。
通带是需要通过的频率范围,而截止频率是指在此频率以上或以下信号进行衰减。
2. 根据通带和截止频率选择合适的滤波器类型。
常见的滤波器类型包括Butterworth滤波器、Chebyshev滤波器和椭圆滤波器等。
3. 根据滤波器类型和要求的频率响应,确定滤波器的阶数。
滤波器的阶数决定了滤波器的频率选择性能。
4. 选择一个合适的窗函数。
窗函数定义了滤波器的脉冲响应。
5. 使用MATLAB中的filter函数将得到的窗口脉冲响应应用于要进行滤波的信号。
下面假设我们要设计一个带通滤波器,通带频率范围为f1和f2,截止频率为f3和f4,并且设定了滤波器的阶数为N。
首先,我们需要选择合适的滤波器类型。
在MATLAB中,可以使用butter函数来设计Butterworth滤波器。
此函数的语法如下:[b, a] = butter(N, [f1, f2]/(Fs/2), 'bandpass')其中,N是滤波器的阶数,[f1, f2]是通带频率范围,Fs是采样频率。
然后,选择一个合适的窗函数,常用的窗函数包括矩形窗、汉宁窗、布莱克曼窗等。
可以使用MATLAB中的窗函数函数hamming生成汉宁窗。
例如,可以使用以下代码生成一个长度为N+1的汉宁窗:w = hamming(N+1)接下来,我们需要通过将窗函数应用于滤波器的点数响应来计算滤波器的系数。
可以使用MATLAB中的filter函数将窗口响应与滤波器的截止频率进行卷积。
IIR数字带通滤波器设计
目录前言 (2)工程概括 (3)1.1 IIR数字滤波器工作原理 (3)正文 (4)2.1 数字滤波器介绍 (4)2.2 数字滤波器的分类 (5)2.3 脉冲响应不变法 (5)2.4 双线性变换法 (7)2.5 滤波器的特性及使用函数 (8)3.1 设计步骤 (10)3.2 程序流程图 (11)3.3 MATLAB程序 (11)3.4 仿真结果 (14)3.5 总结 (16)致谢 (16)参考文献 (17)前言随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。
目前数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。
在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,Digital Filter)。
数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。
MATLAB是英文MA Trix LABoratory(矩阵实验室)的缩写。
它是美国的MathWorks公司推出的一套用于科学计算和图形处理可视化、高性能语言与软件环境。
它的信号处理工具箱包含了各种经典的和现代的数字信号处理技术,是一个非常优秀的算法研究与辅助设计的工具。
在设计数字滤波器时,通常采用MATLAB来进行辅助设计和仿真。
本次基课程设计将完成一个数字切比雪夫带通IIR滤波器的设计,利用双线性变换和无限冲激响应IIR原理完成设计,并利用MATLAB进行仿真。
工程概括1.1 IIR 数字滤波器工作原理数字滤波器是一个离散时间系统,输入x(n)是一个时间序列,输出y(n)也是一个时间序列。
如数字滤波器的系统函数为H(z),其脉冲响应为h(n),则在时间域内存在下列的关系。
)()()(n h n x n y ⊗=在z 域内,输入和输出存在下列关系:)()()(z X z H z Y =式中,X(z)、Y(z)分别为输入x(n)和输出y(n)的z 变换。
实验5 基于Matlab的数字滤波器设计
实验五 基于Matlab 的数字滤波器设计实验目的:加深对数字滤波器的常用指标和设计过程的理解。
实验原理:低通滤波器的常用指标如下所述,其典型规格如下:⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧≤≤≤≤+≤≤-πδδδw w e G w w e G s s jw p p jw p ,)(,1)(1 通带边缘频率:p ϖ阻带边缘频率:s ϖ 通带起伏:p δ 通带峰值起伏:))(1(log 2010dB p p δα--=阻带起伏: s δ 最小阻带衰减:))((log 2010dB s s δα-=数字滤波器有IIR 和FIR 两种类型,他们的特点和设计方法不同。
一、窗函数法设FIR 滤波器在Matlab 中产生窗函数十分简单:(1) 矩形窗调用格式:w=boxcar(n) ,根据长度n 产生一个矩形窗w 。
(2) 三角窗调用格式:w=triang(n) ,根据长度n 产生一个三角窗w 。
(3)汉宁窗调用格式:w=hanning(n) ,根据长度n 产生一个汉宁窗w 。
(4)汉明窗调用格式:w=hamming(n) ,根据长度n 产生一个汉明窗w 。
(5)布莱克曼窗调用格式:w=Blackman(n) ,根据长度n 产生一个布莱克曼窗w 。
基于窗函数的FIR 滤波器设计利用Matlab 提供的函数firl 来实现。
调用格式:firl(n,wn,’ftype ’,Window),n 为阶数,wn 是截止频率(如果输入是形如[w1 w2]的矢量时,本函数将设计带通滤波器,其通带为w1<w<w2)、ftype 是滤波器的类型(底通——省略该参数、高通——ftype=high 、带阻——ftype=stop )、Window 是窗函数。
1、设计一个长度为8的线性相位FIR 滤波器。
Window=boxcar(8); b=fir1(7,0.4,Window); freqz(b,1); Window=blackman(80;b=fir1(7,0.4,Window); freqz(b,1);2、设计线性相位带通滤波器,其长度N=15,上下边带截止频率分别为w1=0.3π,w2=0.5π Window=blackman(16); B=firl(15,[0.3 0.5],Window); Freqz(b,1);3、设计指标为,dB A dB R s a p p 50,3.0,25.0,2.0====πϖπϖ的底通滤波器。
MATLAB 用频率采样法设计一带通数字滤波器(程序)
以MATLAB 用频率采样法设计一带通数字滤波器。
低通带边缘:w1p=0.2*pi,低阻带边缘:w1s=0.35*pi,高通带边缘w2p=0.65*pi,高阻带边缘w2s=0.8*pi;设计过渡带中的频率样本值为T1=0.109021,T2=0.59417456cheb1% wp1=0.45*pi;wp2=0.65*pi;ws1=0.3*pi;ws2=0.75*pi;Rp=1;Rs=40% =============双线型变换法========================================= wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp1=tan(wp1/2); Wp2=tan(wp2/2);Ws1=tan(ws1/2); Ws2=tan(ws2/2);BW=Wp2-Wp1; W0=Wp1*Wp2; W00=sqrt(W0);WP=1; WS=WP*(W0^2-Ws1^2)/(Ws1*BW);[N,Wn]=cheb1ord(WP,WS,Rp,Rs,'s');[B,A]=cheby1(N,Rp,Wn,'s');[BT,AT]=lp2bp(B,A,W00,BW);[num,den]=bilinear(BT,AT,0.5);[h,omega]=freqz(num,den,64);subplot(2,2,1);stem(omega/pi,abs(h));xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,2);stem(omega/pi,20*log10(abs(h)));xlabel('\omega/\pi');ylabel('增益.dB');% =============直接法=================================wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp=[wp1/pi,wp2/pi]; Ws=[ws1/pi,ws2/pi];[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs);[B,A]=cheby1(N,Rp,Wn);[h,omega]=freqz(B,A,64);subplot(2,2,3);stem(omega/pi,abs(h));xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,4);stem(omega/pi,20*log10(abs(h)));xlabel('\omega/\pi');ylabel('增益.dB');%cheby2%% wp1=0.45*pi;wp2=0.65*pi;ws1=0.3*pi;ws2=0.75*pi;Rp=1;Rs=40% =============双线型变换法=========================================wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp1=tan(wp1/2); Wp2=tan(wp2/2);Ws1=tan(ws1/2); Ws2=tan(ws2/2);BW=Wp2-Wp1; W0=Wp1*Wp2; W00=sqrt(W0);WP=1; WS=WP*(W0^2-Ws1^2)/(Ws1*BW);[N,Wn]=cheb2ord(WP,WS,Rp,Rs,'s');[B,A]=cheby2(N,Rs,Wn,'s');[BT,AT]=lp2bp(B,A,W00,BW);[num,den]=bilinear(BT,AT,0.5);[h,omega]=freqz(num,den,64);subplot(2,2,1);stem(omega/pi,abs(h));xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,2);stem(omega/pi,20*log10(abs(h)));axis([0 1 -100 0]);xlabel('\omega/\pi');ylabel('增益.dB');% =============直接法=================================wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp=[wp1/pi,wp2/pi]; Ws=[ws1/pi,ws2/pi];[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs);[B,A]=cheby2(N,Rs,Wn);[h,omega]=freqz(B,A,64);subplot(2,2,3);stem(omega/pi,abs(h));xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,4);stem(omega/pi,20*log10(abs(h)));axis([0 1 -100 0]);xlabel('\omega/\pi');ylabel('增益.dB');%椭圆%% wp1=0.45*pi;wp2=0.65*pi;ws1=0.3*pi;ws2=0.75*pi;Rp=1;Rs=40% =============双线型变换法========================================= wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp1=tan(wp1/2); Wp2=tan(wp2/2);Ws1=tan(ws1/2); Ws2=tan(ws2/2);BW=Wp2-Wp1; W0=Wp1*Wp2; W00=sqrt(W0);WP=1; WS=WP*(W0^2-Ws1^2)/(Ws1*BW);[N,Wn]=ellipord(WP,WS,Rp,Rs,'s');[B,A]=ellip(N,Rp,Rs,Wn,'s');[BT,AT]=lp2bp(B,A,W00,BW);[num,den]=bilinear(BT,AT,0.5);[h,omega]=freqz(num,den,64);subplot(2,2,1);stem(omega/pi,abs(h));grid;xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,2);stem(omega/pi,20*log10(abs(h)));grid;xlabel('\omega/\pi');ylabel('增益.dB');% =============直接法================================= wp1=0.45*pi; wp2=0.65*pi;ws1=0.3*pi; ws2=0.75*pi;Rp=1; Rs=40;Wp=[wp1/pi,wp2/pi]; Ws=[ws1/pi,ws2/pi];[N,Wn]=ellipord(Wp,Ws,Rp,Rs);[B,A]=ellip(N,Rp,Rs,Wn);[h,omega]=freqz(B,A,64);subplot(2,2,3);stem(omega/pi,abs(h));grid;xlabel('\omega/\pi');ylabel('|H(z)|');subplot(2,2,4);stem(omega/pi,20*log10(abs(h)));grid;xlabel('\omega/\pi');ylabel('增益.dB');一个例程,只需要改一改参数就行了clear all;f=[0 0.19 0.2 0.3 0.31 0.59 0.6 0.8 0.81 1];% 给定频率轴分点;m=[0 0 1 1 0 0 1 1 0 0];% 给定在这些频率分点上理想的幅频响应N1=30;N2=90;% 取两种不同的滤波器长度;b1=fir2(N1,f,m);b2=fir2(N2,f,m);% 得到两个滤波器;subplot(311);stem(b1,'.');grid;subplot(312);stem(b2,'.');grid;M=128;[h1,w]=freqz(b1,1,M,1);[h2,w]=freqz(b2,1,M,1);subplot(313);plot(w,abs(h1),'b-',w,abs(h2),'g-');grid;其中,f是归依化以后的频率通过数字滤波器的采样频率算出来,根据通带和阻带算好f和m就行了看一看help,这个函数应该有窗函数的选择默认情况下是汉明窗设计一个模拟的butterworth低通滤波器,设阶数是N,OmegaC=50*pi*2;[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));这样一个最简单的低通滤波器就设计好了,b是传递函数的分子系数,a是分母,都是按s的降幂排列的。
第6章 习题解答
第六章 习题解答(部分)[1]数字滤波器经常以图P6-1描述的方式来处理限带模拟信号,在理想情况下,通过A/D 变换把模拟信号转变为序列)()(nT x n x a =,然后经数字滤波器滤波,再由D/A 变换将)(n y 变换成限带波形)(n y a ,即有∑∞-∞=-⎥⎦⎤⎢⎣⎡-=n a nT t nT t n y t y )(Tπ)(T πsin )()( 这样整个系统可等效成一个线性时不变模拟系统。
如果系统)(n h 的截止角频率是rad 8/π,ms T 01.0=,等效模拟滤波器的截止频率是多少? 设s T μ5=,截止频率又是多少?解:对采样数字系统,数字频率ω与模拟角频率Ω之间满足线性关系T Ω=ω。
因此,当ms T 01.0=时,T T cc 8πω==Ω,Hz T f c c 6251612==Ω=π当s T μ5=时, TT c c 8πω==Ω,Hz T f c c 125001612==Ω=π[2]已知模拟滤波器的系统函数为()22)(b a s bs H a ++=,试用冲激响应不变法将)(s H a 转换为)(z H 。
其中抽样周期为T ,式中a 、b 为常数,且)(s H a 因果稳定。
解:)(s H a 的极点为:jb a s +-=1,jb a s --=1将)(s H a 部分分式展开: )(21)(21)(jb a s j jb a s j s H a +---+---= 所以有1)(1)(121121)(-+------+-=z e j zej z H T jb a Tjb a通分并化简整理得:TT T ez bT e z bTe z z H ααα2211cos 21sin )(------+-= [3]设计一个模拟带通滤波器,要求其幅度特性为单调下降(无波纹),通带带宽s rad B /2002⨯=π,中心频率s rad /10020⨯=Ωπ,通带最大衰减dB p 2=δ,s rad s /80021⨯=Ωπ,s rad s /124022⨯=Ωπ,阻带最小衰减dB s 15=δ。
基于椭圆球面波函数的数字带通滤波器设计
基于椭圆球面波函数的数字带通滤波器设计数字信号处理中的数字滤波器在信号处理中扮演着至关重要的角色,其中数字带通滤波器是其中的一种。
数字带通滤波器可以帮助我们过滤掉不需要的高频信号,同时保留在我们希望保留的频率范围内的信号。
在这篇文章中,我们将讨论基于椭圆球面波函数的数字带通滤波器设计。
椭圆球面波函数是一种特殊的函数,它在数学和工程中都有广泛的应用。
在数字信号处理领域中,椭圆球面波函数被用于数字滤波器设计中,特别是在设计带通和陷波滤波器中。
这是因为椭圆球面波函数具有可控的、高阶的滤波特性,这使得它成为设计数字带通滤波器的一种有力工具。
在使用椭圆球面波函数设计数字带通滤波器时,我们需要确定一些设计参数,例如通带和阻带边缘频率、通带和阻带最大衰减以及滤波器的阶数等。
确定这些参数的方法是基于所需的应用和滤波器性能的具体要求而定的。
例如,在通信系统中,我们可能需要设计一个数字带通滤波器,以仅通过特定频率的信号,以及阻止频率范围外的其他信号。
因此,在这种情况下,我们需要根据特定的通信系统来确定所需的滤波器特性。
在确定设计参数之后,我们可以利用椭圆球面波函数来设计数字带通滤波器。
这可以通过一些计算和优化技术来实现。
例如,我们可以使用著名的Parks-McClellan算法来设计数字滤波器。
该算法可以根据所需的滤波特性,通过优化椭圆球面波函数来生成数字带通滤波器。
在数字带通滤波器被设计和实现之后,我们可以将其应用于所需的数字信号处理应用中。
例如,在音频处理中,我们可以应用数字带通滤波器来滤除噪声信号,以便我们更好地听到音频信号的细节和细微之处。
在图像处理中,数字带通滤波器可以提高图像的清晰度和质量,以便我们更好地识别和分析图像。
总之,基于椭圆球面波函数的数字带通滤波器是数字信号处理领域中的一个强大和有用的工具。
通过确定滤波器的设计参数,我们可以使用椭圆球面波函数来生成数字带通滤波器,并将其应用于不同的数字信号处理应用中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西安邮电大学
数字信号处理课内上机报告
专业班级: 学生姓名: 学号(班内序号):
年 月 日
——————————————————————————
装
订
线————————————————————————————————
报告份数:
题目:设计一个数字带通滤波器,通带范围为0.3pi rad到0.4pi,通带最大衰减为3db,阻带最小衰减为18db,0.2pi 以下和0.5pi以上范围为阻带。
采用切比雪夫型,利用双线性变换法设计之
源程序
%所设计的数字滤波器的指标
Ts = 0.1,Fs=1/Ts,Rp = 3,Rs = 18;
wp1=0.3*pi,wp2=0.4*pi;
ws1=0.2*pi,ws2=0.5*pi;
%频率的预畸变
Wp1=(2/T)*tan(wp1/2);
Wp2=(2/T)*tan(wp2/2);
Wp=[Wp1,Wp2]; %模拟滤波器的通带截止频率
Ws1=(2/T)*tan(ws1/2);
Ws2=(2/T)*tan(ws2/2);
Ws=[Ws1,Ws2]; %模拟滤波器的阻带截止频率
BW=Ws2-Ws1; %模拟滤波器的带宽
% BW=Wp2-Wp1;
Omegaw0=sqrt(Ws1*Ws2); %模拟滤波器的中心频率
% Omegaw0=sqrt(Wp1*Wp2);
%求模拟低通滤波器的阶数与边缘频率
[N,OmegaC]=cheb2ord(Wp,Ws,Rp,Rs,'s');
%[N,OmegaC]=cheb1ord(Wp,Ws,Rp,Rs,'s')
%求切比雪夫模拟低通滤波器的零、极点与增益
[z0,p0,k0]=cheb2ap(N,Rs);
%[z0,p0,k0]=cheb1ap(N,Rp);
%设计归一化的模拟原型带通滤波器
%求原型滤波器的分子系数
AnalogB=k0*real(poly(z0));
%求原型滤波器的分母系数
AnalogA=real(poly(p0));
%模拟低通到模拟带通的分子、分母系数的变换[BandB,BandA]=lp2bp(AnalogB,AnalogA,Omegaw0,BW);
%双线性变换:模拟带通与数字带通的分子分母系数的变换[DigitalB,DigitalA] = bilinear(BandB,BandA,Fs);
%变为二阶节级联结构
[sos,G] = tf2sos(DigitalB,DigitalA);
%求数字带通滤波器的幅频、相频特性、及其群延迟
%求数字带通滤波器的幅频特性
[Hz,Wz]=freqz(DigitalB,DigitalA,1024,'whole');
%将数字带通滤波器的幅频特性转化为分贝表示
dbHz=20*log10((abs(Hz)+eps)/max(abs(Hz)));
%求数字带通滤波器的相频特性
φ=angle(Hz)
%求数字带通滤波器的群延迟特性
grd = grpdelay(DigitalB,DigitalA,Wz);
%作图
subplot(2,3,1);plot(Wz/pi,abs(Hz));title('幅频响应');
xlabel(''),ylabel('幅度:|Hz|');axis([0,1,0,1.1]);
set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]);grid; subplot(2,3,4);plot(Wz/pi,dbHz);title('模值(dB)');
xlabel('频率(单位:\pi)');ylabel('分贝(dB)');axis([0,1,-40,5]);
set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]);
set(gca,'YTickmode','manual','YTick',[-50,-30,-2,0]);
set(gca,'YTickLabelMode','manual','YTickLabels',['50';'30';' 2';' 0']);grid; subplot(2,3,2);plot(Wz/pi,angle(Hz)/pi);title('相频响应');
xlabel('');ylabel('单位:\pi ');axis([0,1,-1,1]);
set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]);grid; subplot(2,3,5);title(零极点图');
ylabel('单位:\dB');xlabel('单位:\pi ');
zplane(DigitalB,DigitalA);axis([-1.1,1.1,-1.1,1.1]);
subplot(2,3,3); plot(Wz/pi,grd); title('群延迟')
xlabel('频率(单位:\pi)'); ylabel('样本'); axis([0,1,0,8])
set(gca,'XTickMode','manual','XTick',[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]); %画高刻度线
set(gca,'YTickmode','manual','YTick',[0:0.5:10]); grid
set(gcf,'color','w') % 置图形背景色为白色
幅频响应
幅度:|H z
|
模值(dB)
频率:(单位:π)
分贝(d B
)
相频响应
单位:π
Real Part
I m a g i n a r y P a r t
群延迟
频率(单位:pi )
样本
Chebyshev II 型IIR 数字带通滤波器
00.20.40.60.81
幅频响应
幅度:|H z |
模值(dB)
频率:(单位:π)
分贝(d B )
00.20.4
0.60.81
相频响应
单位:π
Real Part
I m a g i n a r y P a r t
群延迟
频率(单位:pi )
样本
Chebyshev I 型 IIR 带通滤波器
指导教师评语:
实 验 成 绩: 指导(辅导)教师 :
——————————————————————————
装
订
线————————————————————————————————。