IIR数字滤波器设计及软件实现

合集下载

实验三IIR数字滤波器实施方案及软件实现

实验三IIR数字滤波器实施方案及软件实现

实验三IIR数字滤波器设计及软件实现1.实验目地(1)熟悉用双线性变换法设计IIR数字滤波器地原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数.b5E2R。

(3)掌握IIR数字滤波器地MATLAB实现方法.(3)通过观察滤波器输入输出信号地时域波形及其频谱,建立数字滤波地概念.2.实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛地是双线性变换法.基本设计过程是:①先将给定地数字滤波器地指标转换成过渡模拟滤波器地指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器地系统函数.MATLAB信号处理工具箱中地各种IIR数字滤波器设计函数都是采用双线性变换法.第六章介绍地滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器.本实验要求读者调用如上函数直接设计IIR数字滤波器.p1Ean。

本实验地数字滤波器地MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定地输入信号x(n)进行滤波,得到滤波后地输出信号y(n).DXDiT。

3. 实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成地复合信号st,该函数还会自动绘图显示st地时域波形和幅频特性曲线,如图10.4.1所示.由图可见,三路信号时域混叠无法在时域分离.但频域是分离地,所以可以通过滤波地方法在频域分离,这就是本实验地目地.RTCrp。

图10.4.1 三路调幅信号st 地时域波形和幅频特性曲线(2)要求将st 中三路调幅信号分离,通过观察st 地幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号地三个滤波器(低通滤波器、带通滤波器、高通滤波器)地通带截止频率和阻带截止频率.要求滤波器地通带最大衰减为0.1dB,阻带最小衰减为60dB.5PCzV 。

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告一、实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

二、实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

三、实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图10.4.1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图10.4.1 三路调幅信号st的时域波形和幅频特性曲线(2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

IIR数字滤波器的设计及软件实现

IIR数字滤波器的设计及软件实现

IIR数字滤波器的设计及软件实现IIR数字滤波器(Infinite Impulse Response Digital Filter)是一种常用于信号处理的数字滤波器。

与FIR(Finite Impulse Response)滤波器不同,IIR滤波器的输出取决于过去的输入样本和输出样本。

1.确定滤波器的类型:根据实际应用需求选择低通滤波器、高通滤波器、带通滤波器或带阻滤波器。

2.确定滤波器的阶数:阶数决定了滤波器的频率响应特性的陡峭程度。

一般来说,阶数越高,滤波器的频率响应特性越陡峭。

阶数的选择需要权衡计算复杂度和滤波器性能。

3.设计滤波器的传递函数:传递函数是描述滤波器输入和输出之间关系的数学表达式。

传递函数可以通过频率响应要求来确定。

4.选择滤波器设计方法:针对不同的频率响应要求,可以选择不同的滤波器设计方法,如巴特沃斯方法、切比雪夫方法、椭圆方法等。

5.设计滤波器的参数:根据滤波器的传递函数和设计方法,计算滤波器的系数。

这些系数可以用于实现滤波器。

软件实现的步骤如下:1. 选择合适的软件平台:根据实际需求,选择适合的软件平台,如MATLAB、Python等。

2. 导入相关的滤波器设计库:选择合适的滤波器设计库,如MATLAB的Signal Processing Toolbox、Python的scipy.signal等。

3.使用滤波器设计函数:根据选择的滤波器设计方法,使用相应的函数进行滤波器设计。

这些函数可以根据输入的参数计算出滤波器的系数。

4.实现滤波器:使用得到的滤波器系数,将其用于滤波器的实现。

可以使用滤波器函数对信号进行滤波操作。

5.评估滤波器性能:根据实际应用需求,对滤波器的性能进行评估。

可以通过比较滤波器的输出和期望的输出,或者通过分析滤波器的频率响应特性来评估滤波器的性能。

需要注意的是,IIR数字滤波器的设计和实现过程可能相对复杂,需要一定的信号处理和数学基础。

在实际应用中,可以借助已有的滤波器设计库和工具来简化设计和实现过程。

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告一、实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

二、实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

三、实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图10.4.1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图10.4.1 三路调幅信号st的时域波形和幅频特性曲线(2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

IIR数字滤波器设计及软件实现

IIR数字滤波器设计及软件实现

实验二 IIR 数字滤波器设计及软件实现1. 实验目的(1)熟悉用双线性变换法设计IIR 数字滤波器的原理与方法;(2)学会调用MATLAB 信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool )设计各种IIR 数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR 数字滤波器的MATLAB 实现方法。

(4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

2.实验原理设计IIR 数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标; ②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB 信号处理工具箱中的各种IIR 数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter 、cheby1 、cheby2 和ellip 可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR 数字滤波器。

本实验的数字滤波器的MATLAB 实现是指调用MATLAB 信号处理工具箱函数filter 对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n )。

3. 滤波器参数及实验程序清单 (1)滤波器参数选取三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。

带宽(也可以由信号产生函数mstg 清单看出)分别为50Hz 、100Hz 、200Hz 。

所以,分离混合信号st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的指标参数选取如下:对载波频率为250Hz 的条幅信号,可以用低通滤波器分离,其指标为带截止频率275=p f Hz ,通带最大衰减1.0=p αdB ;阻带截止频率450=s f Hz ,阻带最小衰减60=s αdB 。

实验四IIR数字滤波器设计及软件实现

实验四IIR数字滤波器设计及软件实现

实验四IIR数字滤波器设计及软件实现实验四涉及IIR数字滤波器设计及软件实现。

IIR数字滤波器是一种基于IIR(Infinite Impulse Response)的滤波器,采用了反馈结构,具有无限长的脉冲响应。

与FIR(Finite Impulse Response)数字滤波器相比,IIR数字滤波器具有更高的灵活性和更小的计算复杂度。

IIR数字滤波器的设计可以通过以下步骤进行:
1.确定滤波器的类型:低通、高通、带通或带阻。

2.确定滤波器的阶数:滤波器的阶数决定了其频率响应的陡峭程度。

3.设计滤波器的传递函数:传递函数是滤波器的数学模型,可以通过多种方法进行设计,如巴特沃斯、切比雪夫等。

4.将传递函数转换为差分方程:差分方程是IIR数字滤波器的实现形式,可以通过对传递函数进行离散化得到。

5.实现差分方程:差分方程可以通过递归运算的方式实现,使用递归滤波器结构。

IIR数字滤波器的软件实现可以使用各种数学软件或程序语言进行。

常见的软件实现语言包括MATLAB、Python等。

这些语言提供了丰富的数字信号处理库和函数,可以方便地实现IIR数字滤波器。

在软件实现中,需要将差分方程转换为计算机程序,然后输入待滤波的数字信号,并输出滤波后的信号。

此外,还可以对滤波器的参数进行调整,以达到满足特定滤波要求的效果。

总结起来,实验四的内容是设计和实现IIR数字滤波器,通过软件工具进行滤波效果的验证。

这是数字信号处理领域中常见的实验任务,可以帮助学生掌握IIR数字滤波器的设计和实现方法。

IIR数字滤波器设计及软件实现

IIR数字滤波器设计及软件实现

实验一:IIR数字滤波器设计及软件实现一、实验指导1.实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

2.实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

3. 实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图1 三路调幅信号st的时域波形和幅频特性曲线(2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。

IIR数字滤波器的设计及软件实现

IIR数字滤波器的设计及软件实现

IIR数字滤波器的安排及硬件真止之阳早格格创做一.真验手段(1)认识用单线性变更法安排IIR数字滤波器的本理与要领;(2)教会用MATLAB旗号处理工具箱中的滤波器安排函数(或者滤波器安排分解工具FDAtool)安排百般滤波器,教会根据滤波需要决定滤波器指标参数;(3)掌握IIR数字滤波器的MATLAB真止要领;(4)通过瞅察滤波器输进、输出旗号的时域波形及其频谱,建坐数字滤波的观念.二.真验本理安排IIR数字滤波器普遍采与间交法(脉冲赞同稳定法战单线性稳定法),应用最广大的是单线性变更法.基础的安排历程是:将给定的数字滤波器指标变更成模拟滤波器的指标;波及模拟滤波器;将模拟滤波器的系统函数变更成数字滤波器的系统函数.MATLAB旗号处理工具箱中的百般IIR数字滤波器安排函数皆是采与单线性变更法.本真验的数字滤波器的MATLAB 真验是调用MATLAB旗号处理工具箱的函数filter对付给定的输进旗号x(n)举止滤波,得到滤波后的输出旗号y(n). 三.真验真质及步调1.旗号处爆收函数mstg 爆收由三路压造载波调幅旗号相加形成的复合旗号st ,该函数还会自动回图隐现st 的时域波形战幅频个性直线,由后图可睹,三路旗号时域混叠无法正在时域分散.但是频域是分散的,所以可通过滤波的要领正在频域分散.2.将st 中三路调幅旗号分散,通过瞅察st 的幅频个性直线,分别决定不妨分散st 中三路压造载波单频调幅旗号的三个滤波器(矮通滤波器、戴通滤波器、下通滤波器)的通戴停止频次战阻戴停止频次.且滤波器的通戴最大衰减为0.1dB ,阻戴最小衰减为60bB.提示:压造载波单频调幅旗号的数教表示式为()()()()()()[]t t t t t s f f f f f fc c c 0002cos 2cos 212cos 2cos )(++-==ππππ 其中,()t f c 2cos π称为载波,f c 为载波频次,()t f 02cos π称为单频调造旗号,f 0为调造正弦波旗号频次,且谦脚f c >f 0.由上式可睹,所谓压造载波单频调幅旗号,便是2个正弦旗号相乘,它有2个频次身分:战频f c +f 0战好频f c -f 0,那2个频次身分闭于载波频次f c 对付称.所以,1路压造载波单频调幅旗号的频谱图是闭于载波频次f c 对付称的2根谱线,其中不载频身分,故与名为压造载波单频调幅旗号.图中三路调幅旗号的载波频次分别为250Hz 、500Hz 、1000Hz.3. 编程调用MATLAB 滤波器波及函数ellipord 战ellip 分别安排那三个椭圆滤波器,并画图隐现其耗费函数直线;4. 调用滤波器真验函数filter ,用三个滤波器分别对付旗号爆收函数mstg 爆收的旗号st 举止滤波,分散出st 中的三路分歧载波频次的调幅旗号y1(n)、y2(n)、y3(n). 滤波器参数的采用:● 对付于载波频次为250Hz 的条幅旗号,不妨采用矮通滤波器分散,其指标为:通戴停止频次Hz f p 280=,通戴最大衰减B P d 1.0=∂; 阻戴停止频次Hz fs 450=,阻戴最小衰减dB 60s =∂; ● 对付于载波频次为500Hz 的条幅旗号,不妨采用戴通滤波器分散,其指标为:通戴停止频次Hz f pl 440=,Hz f pu 560=,通戴最大衰减dB 1.0p =∂;阻戴停止频次Hz f sl 275=,Hz f su 900=,阻戴最小衰减dB 60s =α; ● 对付于载波频次为1000Hz 的条幅旗号,不妨采用下通滤波器分散,其指标为:通戴停止频次Hz f p 890=,通戴最大衰减B P d 1.0=∂;阻戴停止频次Hzf s 550=,阻戴最小衰减dB 60s =∂;证明:(1)为了使滤波器阶数尽大概矮,每个滤波器的鸿沟频次采用准则是尽大概使滤波器过度戴宽尽大概宽;(2)与旗号爆收函数mstg相共采与频次Fs=10kHz;(3)为了滤波器阶数最矮,采用椭圆滤波器.四.五.1、问:第两路调幅旗号的调造频次fm2=50Hz;第三路调幅旗号的载波频次fc3=250Hz;第三路调幅旗号的调造频次fm3=25Hz;2、旗号爆收函数mstg中采样面数N=1600,对付st举止N 面FFT便不妨得到6根理念谱线.如果与N=1800,可可得到6根理念谱线?为什么?N=2000呢?请改变采样面数N的值,瞅察频谱图考证推断是可精确?问:果为旗号st是周期序列,谱分解时央供瞅察时间为整数倍周期.分解可知,st 的每个频次身分皆是25Hz 的整数倍.采样频次Fs=10kHz=25×400Hz ,即正在25Hz 的正弦波的1个周期中采样400面.所以,当N 为400的整数倍时一定为st 的整数个周期.果此,采样面数N=1600战N=2000时,对付st 举止N 面FFT 不妨得到6根理念谱线.如果与N=1800,不是400的整数倍,不克不迭得到6根理念谱线.(1)N=1600时:(2)N=1800时:(3)N=2000S 时:3、建改旗号爆收函数mstg ,给每路调幅旗号加进载波身分,爆收调幅(AM )旗号,沉复本真验,瞅察AM 旗号与压造载波调幅旗号的时域波形及其频谱的不共.AM 旗号表示式:()()[]()t t t s f f A A c m d ππ2cos 2cos 0+=A A m d ≥ 与值:10d =A ,5m =A ,停止睹(附录Ⅰ)六.真验停止(步调附录Ⅱ)本旗号输出:矮通输出:戴通输出:下通输出:附录(Ⅰ):本旗号输出:矮通输出:戴通输出:下通输出:附录(Ⅱ):%主函数%IIR数字滤波器安排及硬件真止clear all;%调用旗号爆收函数mstg爆收又三路压造载波调幅旗号相加形成的复合旗号syms st;syms t;st=mstg; %矮通滤波器安排与真止Fs=10000;T=1/Fs;n=800;Tp=n*T;k=0:n-1;f=k/Tp;fp=280;fs=450;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF指标;(矮通滤波器的通阻戴鸿沟频次)[N,wp0]=ellipord(wp,ws,rp,rs);%调用ellipod估计椭圆DF阶数N战通戴停止频次wp[B,A]=ellip(N,rp,rs,wp0);%调用ellip估计椭圆戴通DF 系统函数系数背量B战Ay1t=filter(B,A,st);%滤波器的硬件真止%底下为画图部分figure(2);subplot(3,1,1);myplot(B,A);yt='y_1(t)';subplot(3,1,2);tplot(y1t,T,yt);subplot(3,1,3);stem(f,abs(fyt)/max(abs(fyt)),'.'); grid;title('(c) s(t)的频谱');axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');%戴通滤波器的真止与安排fpl=440;fpu=560;fsl=275;fsu=900; wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60;[N,wp0]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N,rp,rs,wp0);y2t=filter(B,A,st);figure(3);subplot(3,1,1);myplot(B,A);yt='y_1(t)';subplot(3,1,2);tplot(y1t,T,yt);subplot(3,1,3);stem(f,abs(fyt)/max(abs(fyt)),'.'); grid;title('(c) s(t)的频谱');axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');%下通滤波器的真止与安排fp=890;fs=600;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60;[N,wp0]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N,rp,rs,wp0,'high'); y3t=filter(B,A,st);fyt=fft(y3t,n);figure(4);subplot(3,1,1);myplot(B,A);yt='y_1(t)';subplot(3,1,2);tplot(y1t,T,yt);subplot(3,1,3);stem(f,abs(fyt)/max(abs(fyt)),'.');grid;title('(c) s(t)的频谱');axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');clc;clear%子步调%爆收旗号步调function st=mstgN=800FS=10000;T=1/FS;TP=N*T;t=0:T:(N-1)*T;K=0:N-1;f=K/TP;fc1=FS/10;%第一路调幅旗号的载波频次fc1=1000HZ fm1=fc1/10;%第一路调幅旗号的调造旗号频次为fm1=100hz.fc2=FS/20;%第两路调幅旗号的载波频次fc2=500HZ fm2=fc2/10;%第两路调幅旗号的调造旗号频次为fm2=50hz.fc3=FS/40;%第三路调幅旗号的载波频次fc3=250HZ fm3=fc3/10;%第三路调幅旗号的调造旗号频次为fm3=25hz.xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t);xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t);xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t);st=xt1+xt2+xt3;fxt=fft(st,N);%估计旗号st的频谱.%画图subplot(2,1,1)plot(t,st);grid on;xlabel('t/s');ylabel('s(t)');axis([0,TP/8,min(st),max(st)]);title('(a)s(t)的波形')subplot(2,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid on;title('(b) s(t)的频谱')axis([0,FS/5,0,1.2]);xlabel('f/HZ');ylabel('幅度');%耗费输出波形function myplot(B,A)[H,W]=freqz(B,A,1000);m=abs(H);plot(W/pi,20*log10(m/max(m))); grid on;xlabel('\omega/\pi');ylabel('幅度(dB)');axis([0,1,-80,5]);title('(a) s(t)耗费函数直线');%滤波器输出波形function tplot(xn,T,yn)n=0:length(xn)-1;t=n*T;plot(t,xn);grid on;xlabel('t/s');ylabel('y(n)');axis([0,t(end),min(xn),1.2*max(xn)]) title('(b) s(t)的波形');。

数字信号处理实验报告四IIR数字滤波器设计及软件实现

数字信号处理实验报告四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等,选择合适的滤波器类型进行设计。

IIR数字滤波器的设计及软件实现

IIR数字滤波器的设计及软件实现

IIR数字滤波器的设计及软件实现什么是IIR数字滤波器?IIR数字滤波器是一种数字信号处理滤波器,它基于递归的思想,可以对原始信号进行滤波处理。

与FIR数字滤波器相比,IIR数字滤波器具有更高的效率和更灵活的设计。

它的设计基于对滤波器的传递函数进行分析和优化,可以通过不同的传递函数来实现不同的滤波目标。

IIR数字滤波器的设计方法要设计一个IIR数字滤波器,可以采用以下步骤:步骤1:确定滤波器的类型根据滤波的目的和要求,确定滤波器的类型。

常见的滤波器类型有低通滤波器、高通滤波器、带通滤波器和带阻滤波器。

步骤2:计算滤波器的阶数滤波器的阶数是指滤波器中的二阶段数。

阶数越高,滤波器的性能越好,但也意味着计算量和实现难度会增加。

根据滤波的要求和性能要求,计算滤波器的阶数。

步骤3:选择滤波器的截止频率滤波器的截止频率是指滤波器在截止频率附近的频率响应。

对于低通滤波器和高通滤波器,截止频率通常是一个常数。

对于带通滤波器和带阻滤波器,截止频率需要确定两个频率。

步骤4:计算滤波器的传递函数根据滤波器类型、阶数和截止频率,可以通过传递函数的计算得到滤波器的传递函数。

步骤5:采用正则化处理在计算得到传递函数后,需要进行正则化处理。

正则化处理可以消除传递函数中的不稳定性,并确保滤波器的稳定性和可变性。

步骤6:实现反馈环和前馈环根据传递函数,可以实现反馈环和前馈环。

反馈环和前馈环的选择会影响滤波器的性能。

IIR数字滤波器的软件实现要实现IIR数字滤波器,可以使用MATLAB或Python等数学软件。

这里以Python为例进行说明。

步骤1:导入必要的库import numpy as np #用于处理数组和矩阵import scipy.signal as signal #用于信号处理import matplotlib.pyplot as plt #用于绘图步骤2:指定滤波器的类型、截止频率和阶数type ='lowpass'#低通滤波器fc =2000#截止频率order =4#阶数步骤3:计算滤波器的系数b, a = signal.butter(order, fc, type)步骤4:生成信号并进行滤波t = np.linspace(0, 1, 500, endpoint=False)x = np.sin(2* np.pi *5* t) + np.sin(2* np.pi *10* t) + np.sin(2* np.pi *20* t)y = signal.filtfilt(b, a, x)步骤5:绘制原始信号和滤波后的信号plt.plot(t, x, label='original signal')plt.plot(t, y, label='filtered signal')plt.legend(loc='best')plt.show()IIR数字滤波器是数字信号处理中一种重要的滤波器。

实验四IIR数字滤波器设计及软件实现

实验四IIR数字滤波器设计及软件实现

实验四IIR数字滤波器设计及软件实现IIR数字滤波器是一种重要的信号处理工具,常用于音频处理、图像处理、通信系统等领域。

本实验旨在通过软件实现IIR数字滤波器的设计和使用。

实验目标:1.了解IIR数字滤波器的基本原理和结构。

2. 学会使用Matlab等软件工具进行IIR数字滤波器设计和模拟。

实验步骤:1.确定滤波器的要求:包括滤波器的类型(低通、高通、带通、带阻)、通带和阻带的频率范围、通带和阻带的衰减要求等。

2.根据滤波器的要求选择适合的设计方法:常见的设计方法包括脉冲响应、巴特沃斯、切比雪夫、椭圆等。

3. 使用Matlab等软件工具进行滤波器设计:根据选择的设计方法,使用相应的函数或工具箱进行滤波器的设计。

4.评估滤波器性能:通过频率响应曲线、幅频特性、相频特性等评估滤波器的性能,比如阻带衰减、通带波动等。

5.应用滤波器:将设计好的滤波器应用到实际信号中,观察滤波效果。

6.优化滤波器性能(可选):根据实际应用需求,对滤波器的设计进行调整和优化。

实验注意事项:1.在进行滤波器设计时,要根据实际应用需求选择合适的滤波器类型和设计方法。

2.在评估滤波器性能时,要对设计结果进行全面的分析,包括滤波器的频率响应、幅频特性、相频特性等。

3.在实际应用过程中,可以根据实际需求对设计结果进行优化和调整,以达到更好的滤波效果。

参考资料:1.陈志骏等编著,《信号与系统实验指导书》。

2. Proakis, J. G., & Manolakis, D. G. (1996). Digital signal processing: principles, algorithms, and applications. Pearson Education India.。

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告一、实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

二、实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

三、实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图10.4.1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图10.4.1三路调幅信号st的时域波形和幅频特性曲线(2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB。

实验三IIR数字滤波器设计及软件实现

实验三IIR数字滤波器设计及软件实现

实验三IIR数字滤波器设计及软件实现IIR数字滤波器是一种常见的数字滤波器类型,它可以实现对信号的频率响应进行调整和改变,常用于信号处理和通信系统中。

本实验将介绍IIR数字滤波器的设计方法和软件实现。

设计一个IIR数字滤波器的一般步骤如下:1.确定滤波器的类型:低通滤波器、高通滤波器、带通滤波器或带阻滤波器。

2.确定滤波器的阶数:阶数决定了滤波器的复杂程度和性能。

3.确定滤波器的截止频率:截止频率决定了滤波器对信号的频率响应的影响。

4.根据滤波器类型和截止频率的要求,选择适当的滤波器设计方法:脉冲响应不变法、双线性变换法等。

5.根据滤波器设计方法,计算出滤波器的系数:系数决定了滤波器的频率响应和性能。

6.实现滤波器的差分方程:将滤波器的系数代入差分方程中,得到滤波器的离散时间域表示。

7. 使用合适的软件工具进行滤波器的软件实现和仿真:可以使用MATLAB、Python等编程语言进行滤波器设计和实现。

在软件实现过程中,通常可以通过以下步骤来实现IIR数字滤波器:1.定义滤波器的参数和输入信号:定义滤波器的类型、阶数、截止频率等参数,并读取输入信号。

2.计算滤波器的系数:根据设计方法和参数,计算滤波器的系数。

3.实现滤波器的差分方程:根据滤波器的差分方程,使用循环结构来实现滤波器的运算。

4.输入信号进入滤波器:将输入信号输入滤波器,进行滤波处理。

5.输出滤波后的信号:获取滤波器的输出结果,并进行处理和显示。

需要注意的是,IIR数字滤波器的设计和实现需要对信号处理和数字滤波器的基本原理有一定的了解,并且需要根据实际需求选择合适的设计方法和参数。

参考资料:2. Zhu, Y., & Buck, J. (2024). VLSI signal processing. John Wiley & Sons.。

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告

实验四IIR数字滤波器设计及软件实现实验报告
摘要
本报告介绍了有关IIR数字滤波器设计的实验,以及使用MATLAB进
行的软件实施验证实验。

实验结果表明,IIR滤波器的设计和实施过程中,模糊C不做任何处理,也能实现意料之外的良好滤波效果。

1.介绍
本文介绍了实验四的IIR数字滤波器设计与软件实现实验。

在完成本
实验之前,学生完成了实验一,实验二和实验三,分别设计了低通滤波器、带通滤波器和高通滤波器。

在本实验中,学生将总结前三个实验的知识,
设计和实施一个二阶高通滤波器,以及一个四阶带阻滤波器。

2.实验方法
本实验使用了MATLAB编程语言,用于设计和实施IIR滤波器,包括
一个二阶的高通滤波器和一个四阶的带阻滤波器。

首先,选择预定义的滤
波器系统函数,并调整其参数,以实现特定的滤波器性能。

然后,针对调
整好的滤波器,编写MATLAB代码,实施设计的滤波器。

3.实验结果
(1)二阶高通滤波器
二阶高通滤波器的设计参数如下:
参数,值
-----------------,----------
截止频率,0.25Hz
最小插入损耗,0dB 最大衰减率,40dB。

实验五IIR数字滤波器设计及软件实现

实验五IIR数字滤波器设计及软件实现

实验五IIR数字滤波器设计及软件实现IIR数字滤波器是一种基于递归方程的滤波器,在频域中表现为有限的非零频率响应。

与FIR数字滤波器相比,IIR数字滤波器具有更高的滤波效率和更窄的滤波器幅频响应。

设计IIR数字滤波器的一种常见方法是使用模拟滤波器设计技术,然后将其转换为数字域。

以下是一种基本的IIR数字滤波器设计流程:1.确定滤波器的规范:确定滤波器的带宽、截止频率、滤波器阶数等规范。

2.使用模拟滤波器设计方法设计滤波器:可以使用模拟滤波器设计方法,如巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等来设计模拟滤波器。

选择适当的滤波器类型和滤波器参数,以满足滤波器规范。

3.将模拟滤波器转换为数字滤波器:使用数字滤波器设计方法,如双线性变换、频率采样等方法将模拟滤波器转换为数字滤波器。

这些方法可以将模拟滤波器的差分方程转换为数字滤波器的差分方程。

4.优化数字滤波器性能:可以使用优化方法,如最小均方误差、最小最大误差等方法,来优化数字滤波器的性能。

5.实现数字滤波器:将优化后的数字滤波器的差分方程实现为计算机程序,可以使用软件工具、编程语言等来实现数字滤波器。

根据设计的滤波器规范,可以选择不同的设计方法和工具来实现IIR 数字滤波器。

常用的设计工具包括MATLAB、Python中的SciPy等。

这些工具提供各种滤波器设计函数和优化工具,可以方便地进行IIR数字滤波器的设计和实现。

需要注意的是,在实际应用中,IIR数字滤波器的设计还需要考虑滤波器的稳定性、量化效应等因素。

此外,数字滤波器的实现还需要考虑计算复杂度和实时性等问题。

因此,在设计和实现IIR数字滤波器时,需要结合具体的应用需求进行综合考虑。

IIR数字滤波器设计及软件实现

IIR数字滤波器设计及软件实现

IIR数字滤波器设计及软件实现学号:姓名:实验时间:月日实验地点:指导老师:一.实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法.(4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

二.实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器.本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

实验程序框图:三。

实验内容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图1所示.由图可见,三路信号时域混叠无法在时域分离.但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

主要程序:信号发生函数mstg清单:function st=mstgN=800;Fs=10000;T=1/Fs;Tp=N*T;t=0:T:(N—1)*T;k=0:N—1;f=k/Tp;fc1=Fs/10;fm1=fc1/10;fc2=Fs/20;fm2=fc2/10;fc3=Fs/40;fm3=fc3/10;xt1=cos(2*pi*fm1*t)。

数字信号处理实验一 IIR数字滤波器设计及软件实现

数字信号处理实验一 IIR数字滤波器设计及软件实现

实验一 IIR数字滤波器设计及软件实现一、实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

二、实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求同学调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

三、实验内容及步骤(1)调用信号产生函数mstg,产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图1-1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图1-1 三路调幅信号st 的时域波形和幅频特性曲线(2)要求将st 中三路调幅信号分离,通过观察st 的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。

IIR数字滤波器设计及软件实现-实验报告

IIR数字滤波器设计及软件实现-实验报告

IIR数字滤波器设计及软件实现-实验报告实验目的:1.掌握数字滤波器设计的基本原理和方法;2.学习数字滤波器的软件实现;3.熟悉数字滤波器的特性和性能评价指标。

实验设备:1.计算机;2.MATLAB软件。

实验步骤:1. 设计无限冲激响应(Infinite Impulse Response,IIR)数字滤波器的传递函数。

2.使用MATLAB软件将传递函数转换为差分方程。

3.编写MATLAB代码实现差分方程的数字滤波器。

4.给定待滤波的数字信号,将信号传入数字滤波器进行滤波处理。

5.分析滤波后的信号的频率响应和时域响应,并进行性能评价。

实验结果:在MATLAB中,设计了一个二阶Butterworth低通滤波器的传递函数:H(z)=(0.2929/(z^2-0.5858z+0.2929))将传递函数转换为差分方程:y(n)=0.2929*x(n)+0.5858*x(n-1)+0.2929*x(n-2)-0.5858*y(n-1)-0.2929*y(n-2)使用MATLAB代码实现了差分方程的数字滤波器:```MATLABfunction y = IIR_filter(x)persistent x1 x2 y1 y2;if isempty(x1)x1=0;x2=0;y1=0;y2=0;endy=0.2929*x+0.5858*x1+0.2929*x2-0.5858*y1-0.2929*y2;x2=x1;x1=x;y2=y1;y1=y;end```将待滤波的数字信号传入该数字滤波器进行处理:```MATLAB% Generate test signalfs = 1000; % Sampling ratet = 0:1/fs:1; % Time vectorx = sin(2*pi*50*t) + sin(2*pi*120*t) + sin(2*pi*200*t); % Apply IIR filtery = IIR_filter(x);% Plot resultsfigure;subplot(2,1,1);plot(t, x);title('Original Signal');xlabel('Time');ylabel('Amplitude');subplot(2,1,2);plot(t, y);title('Filtered Signal');xlabel('Time');ylabel('Amplitude');```分析滤波后的信号的频率响应和时域响应,并进行性能评价。

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

实验一:IIR数字滤波器设计及软件实现一、实验指导1.实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3)掌握IIR数字滤波器的MATLAB实现方法。

(3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

2.实验原理设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。

本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

3. 实验容及步骤(1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图1所示。

由图可见,三路信号时域混叠无法在时域分离。

但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。

图1 三路调幅信号st的时域波形和幅频特性曲线(2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。

要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。

提示:抑制载波单频调幅信号的数学表示式为0001()cos(2)cos(2)[cos(2())cos(2())]2c c c s t f t f t f f t f f t ππππ==-++ 其中,cos(2)c f t π称为载波,f c 为载波频率,0cos(2)f t π称为单频调制信号,f 0为调制正弦波信号频率,且满足0c f f >。

由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分:和频0c f f +和差频0c f f -,这2个频率成分关于载波频率f c 对称。

所以,1路抑制载波单频调幅信号的频谱图是关于载波频率f c 对称的2根谱线,其中没有载频成分,故取名为抑制载波单频调幅信号。

容易看出,图1中三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。

如果调制信号m(t)具有带限连续频谱,无直流成分,则()()cos(2)c s t m t f t π=就是一般的抑制载波调幅信号。

其频谱图是关于载波频率f c 对称的2个边带(上下边带),在专业课通信原理中称为双边带抑制载波 (DSB-SC) 调幅信号,简称双边带 (DSB) 信号。

如果调制信号m(t)有直流成分,则()()cos(2)c s t m t f t π=就是一般的双边带调幅信号。

其频谱图是关于载波频率f c 对称的2个边带(上下边带),并包含载频成分。

(3)编程序调用MATLAB 滤波器设计函数ellipord 和ellip 分别设计这三个椭圆滤波器,并绘图显示其幅频响应特性曲线。

(4)调用滤波器实现函数filter ,用三个滤波器分别对信号产生函数mstg 产生的信号st 进行滤波,分离出st 中的三路不同载波频率的调幅信号y 1(n)、y 2(n)和y 3(n), 并绘图显示y1(n)、y2(n)和y3(n)的时域波形,观察分离效果。

4.信号产生函数mstg 清单(见教材)5.实验程序框图如图2所示,供读者参考。

图2 程序框图6.思考题(1)请阅读信号产生函数mstg ,确定三路调幅信号的载波频率和调制信号频率。

(2)信号产生函数mstg 中采样点数N=800,对st 进行N 点FFT 可以得到6根理想谱线。

如果取N=1000,可否得到6根理想谱线?为什么?N=2000呢?请改变函数mstg 中采样点数N 的值,观察频谱图验证您的判断是否正确。

二、 滤波器参数及实验程序清单1、滤波器参数选取观察图1可知,三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。

带宽(也可以由信号产生函数mstg 清单看出)分别为50Hz 、100Hz 、200Hz 。

所以,分离混合信号st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的指标参数选取如下:对载波频率为250Hz 的条幅信号,可以用低通滤波器分离,其指标为:通带截止频率280p f =Hz ,通带最大衰减0.1dB p α=;阻带截止频率450s f =Hz ,阻带最小衰减60dB s α=,对载波频率为500Hz 的条幅信号,可以用带通滤波器分离,其指标为:通带截止频率440pl f =Hz ,560pu f =Hz ,通带最大衰减0.1dB p α=; 阻带截止频率275sl f =Hz ,900su f =Hz ,Hz ,阻带最小衰减60dB s α=, 对载波频率为1000Hz 的条幅信号,可以用高通滤波器分离,其指标为:通带截止频率890p f =Hz ,通带最大衰减0.1dB p α=;阻带截止频率550s f =Hz ,阻带最小衰减60dB s α=,说明:(1)为了使滤波器阶数尽可能低,每个滤波器的边界频率选择原则是尽量使滤波器过渡带宽尽可能宽。

(2)与信号产生函数mstg 相同,采样频率Fs=10kHz 。

(3)为了滤波器阶数最低,选用椭圆滤波器。

(之后,再依次实现巴特沃斯、切比雪夫1、切比雪夫2数字滤波器)按照图2 所示的程序框图编写的实验程序为exp1.m 。

2、实验程序清单%实验1程序exp1.m% IIR 数字滤波器设计及软件实现clear all;close allFs=10000;T=1/Fs; %采样频率%调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号stst=mstg;%低通滤波器设计与实现=========================================fp=280;fs=450;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和Ay1t=filter(B,A,st); %滤波器软件实现% 低通滤波器设计与实现绘图部分figure(2);subplot(2,1,1);myplot(B,A); %调用绘图函数myplot 绘制损耗函数曲线yt='y_1(t)';subplot(2,1,2);tplot(y1t,T,yt); %调用绘图函数tplot 绘制滤波器输出波形%带通滤波器设计与实现(自己添加)====================================================% 带通滤波器设计与实现绘图部分(自己添加)%高通滤波器设计与实现(自己添加)================================================% 高低通滤波器设计与实现绘图部分(自己添加)function myplot(B,A)%时域离散系统损耗函数绘图%B 为系统函数分子多项式系数向量%A 为系统函数分母多项式系数向量[H,W]=freqz(B,A,1000);m=abs(H);plot(W/pi,20*log10(m/max(m)));grid on;xlabel('\omega/\pi');ylabel('幅度(dB)')axis([0,1,-80,5]);title('损耗函数曲线');function tplot(xn,T,yn)%时域序列连续曲线绘图函数% xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串)% T为采样间隔n=0:length(xn)-1;t=n*T;plot(t,xn);xlabel('t/s');ylabel(yn);axis([0,t(end),min(xn),1.2*max(xn)])三、实验程序运行结果实验1程序exp1.m运行结果如图3所示。

由图可见,三个分离滤波器指标参数选取正确,损耗函数曲线达到所给指标。

分离出的三路信号y1(n),y2(n)和y3(n)的波形是抑制载波的单频调幅波。

(a) 低通滤波器损耗函数及其分离出的调幅信号y1(t)(b) 带通滤波器损耗函数及其分离出的调幅信号y2(t)(c)高通滤波器损耗函数及其分离出的调幅信号y3(t)图3. 实验1程序exp1.m运行结果四、简要回答思考题思考题(2)因为信号st是周期序列,谱分析时要求观察时间为整数倍周期。

所以,本题的一般解答方法是,先确定信号st的周期,在判断所给采样点数N对应的观察时间Tp=NT是否为st的整数个周期。

但信号产生函数mstg产生的信号st共有6个频率成分,求其周期比较麻烦,故采用下面的方法解答。

分析发现,st的每个频率成分都是25Hz的整数倍。

采样频率Fs=10kHz=25×400Hz,即在25Hz的正弦波的1个周期中采样400点。

所以,当N为400的整数倍时一定为st的整数个周期。

因此,采样点数N=800和N=2000时,对st进行N点FFT可以得到6根理想谱线。

如果取N=1000,不是400的整数倍,不能得到6根理想谱线。

相关文档
最新文档