实验四:IIR数字滤波器设计及软件实现
- 格式:doc
- 大小:268.00 KB
- 文档页数:14
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数字滤波器是一种基于IIR(Infinite Impulse Response)的滤波器,采用了反馈结构,具有无限长的脉冲响应。
与FIR(Finite Impulse Response)数字滤波器相比,IIR数字滤波器具有更高的灵活性和更小的计算复杂度。
IIR数字滤波器的设计可以通过以下步骤进行:
1.确定滤波器的类型:低通、高通、带通或带阻。
2.确定滤波器的阶数:滤波器的阶数决定了其频率响应的陡峭程度。
3.设计滤波器的传递函数:传递函数是滤波器的数学模型,可以通过多种方法进行设计,如巴特沃斯、切比雪夫等。
4.将传递函数转换为差分方程:差分方程是IIR数字滤波器的实现形式,可以通过对传递函数进行离散化得到。
5.实现差分方程:差分方程可以通过递归运算的方式实现,使用递归滤波器结构。
IIR数字滤波器的软件实现可以使用各种数学软件或程序语言进行。
常见的软件实现语言包括MATLAB、Python等。
这些语言提供了丰富的数字信号处理库和函数,可以方便地实现IIR数字滤波器。
在软件实现中,需要将差分方程转换为计算机程序,然后输入待滤波的数字信号,并输出滤波后的信号。
此外,还可以对滤波器的参数进行调整,以达到满足特定滤波要求的效果。
总结起来,实验四的内容是设计和实现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数字滤波器设计及软件实现实验目的(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 )。
3.滤波器参数及实验程序清单 (1)滤波器参数选取三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。
带宽(也可以由信号产生函数mstg 清单看出)分别为50Hz 、100Hz 、200Hz 。
所以,分离混合信号st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的指标参数选取如下:对载波频率为250Hz 的条幅信号,可以用低通滤波器分离,其指标为带截止频率Hz ,通带最大衰减dB ;阻带截止频率Hz ,阻带最小衰减dB 。
对载波频率为500Hz 的条幅信号,可以用带通滤波器分离,其指标为通带截止频率Hz ,Hz ,通带最大衰减dB ;阻带截止频率Hz ,Hz ,Hz ,阻带最小衰减dB 。
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 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。
实验一: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 数字滤波器设计 学号: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)实现模型转换。
数字信号处理实验报告实验四 IIR数字滤波器的设计学生姓名张志翔班级电子信息工程1203班学号***********指导教师2015.4.29实验四 IIR 数字滤波器的设计一、实验目的:1. 掌握双线性变换法及脉冲响应不变法设计IIR 数字滤波器的具体设计方法及其原理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通IIR 数字滤波器的MATLAB 编程。
2. 观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双线性变换法及脉冲响应不变法的特点。
3. 熟悉Butterworth 滤波器、切比雪夫滤波器和椭圆滤波器的频率特性。
二、实验原理:1. 脉冲响应不变法用数字滤波器的单位脉冲响应序列 模仿模拟滤波器的冲激响应 ,让 正好等于 的采样值,即 ,其中 为采样间隔,如果以 及 分别表示 的拉式变换及 的Z 变换,则)2(1)(m T j s H T z H m a e z sT ∑∞-∞==+=π2.双线性变换法S 平面与z 平面之间满足以下映射关系:);(,2121,11211ωωσj re z j s s T s T z z z T s =+=-+=+-⋅=-- s 平面的虚轴单值地映射于z 平面的单位圆上,s 平面的左半平面完全映射到z 平面的单位圆内。
双线性变换不存在混叠问题。
双线性变换是一种非线性变换,这种非线性引起的幅频特性畸变可通过预畸而得到校正。
三、实验内容及步骤:实验中有关变量的定义:fc 通带边界频率; fr阻带边界频率;δ通带波动;At 最小阻带衰减; fs采样频率; T采样周期(1) =0.3KHz, δ=0.8Db, =0.2KHz, At =20Db,T=1ms;设计一个切比雪夫高通滤波器,观察其通带损耗和阻带衰减是否满足要求。
MATLAB源程序:wp=2*1000*tan(2*pi*300/(2*1000));ws=2*1000*tan(2*pi*200/(2*1000));[N,wn]=cheb1ord(wp,ws,0.8,20,'s'); %给定通带(wp)和阻带(ws)边界角频率,通带波动波动0.8,阻带最小衰减20dB,求出最低阶数和通带滤波器的通带边界频率Wn[B,A]=cheby1(N,0.5,wn,'high','s');%给定通带(wp)和阻带(ws)边界角频率,通带波动[num,den]=bilinear(B,A,1000);[h,w]=freqz(num,den);f=w/(2*pi)*1000;plot(f,20*log10(abs(h)));axis([0,500,-80,10]);grid;xlabel('频率');ylabel('幅度/dB')程序结果num = 0.0304 -0.1218 0.1827 -0.1218 0.0304 den = 1 1.3834 1.4721 0.8012 0.2286系统函数:123412340.0304 -0.1218z 0.1827z-0.1218z0.0304z H(z)=1.0000+1.3834z+1.4721z+ 0.8012z+0.2286z--------++幅频响应图:分析:由图可知,切比雪夫滤波器幅频响应是通带波纹,阻带单调衰减的。
数字信号处理实验报告实验四 IIR数字滤波器的设计学生姓名张志翔班级电子信息工程1203班学号12401720522指导教师2015.4.29实验四 IIR 数字滤波器的设计一、实验目的:1. 掌握双线性变换法及脉冲响应不变法设计IIR 数字滤波器的具体设计方法及其原理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通IIR 数字滤波器的MATLAB 编程。
2. 观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双线性变换法及脉冲响应不变法的特点。
3. 熟悉Butterworth 滤波器、切比雪夫滤波器和椭圆滤波器的频率特性。
二、实验原理:1. 脉冲响应不变法用数字滤波器的单位脉冲响应序列 模仿模拟滤波器的冲激响应 ,让 正好等于 的采样值,即 ,其中 为采样间隔,如果以 及 分别表示 的拉式变换及 的Z 变换,则)2(1)(m T j s H T z H m a e z sT ∑∞-∞==+=π2.双线性变换法S 平面与z 平面之间满足以下映射关系:);(,2121,11211ωωσj re z j s s T s T z z z T s =+=-+=+-⋅=-- s 平面的虚轴单值地映射于z 平面的单位圆上,s 平面的左半平面完全映射到z 平面的单位圆内。
双线性变换不存在混叠问题。
双线性变换是一种非线性变换,这种非线性引起的幅频特性畸变可通过预畸而得到校正。
三、实验内容及步骤:实验中有关变量的定义:fc 通带边界频率; fr阻带边界频率;δ通带波动;At 最小阻带衰减; fs采样频率; T采样周期(1) =0.3KHz, δ=0.8Db, =0.2KHz, At =20Db,T=1ms;设计一个切比雪夫高通滤波器,观察其通带损耗和阻带衰减是否满足要求。
MATLAB源程序:wp=2*1000*tan(2*pi*300/(2*1000));ws=2*1000*tan(2*pi*200/(2*1000));[N,wn]=cheb1ord(wp,ws,0.8,20,'s'); %给定通带(wp)和阻带(ws)边界角频率,通带波动波动0.8,阻带最小衰减20dB,求出最低阶数和通带滤波器的通带边界频率Wn[B,A]=cheby1(N,0.5,wn,'high','s');%给定通带(wp)和阻带(ws)边界角频率,通带波动[num,den]=bilinear(B,A,1000);[h,w]=freqz(num,den);f=w/(2*pi)*1000;plot(f,20*log10(abs(h)));axis([0,500,-80,10]);grid;xlabel('频率');ylabel('幅度/dB')程序结果num = 0.0304 -0.1218 0.1827 -0.1218 0.0304 den = 1 1.3834 1.4721 0.8012 0.2286系统函数:1234 12340.0304 -0.1218z 0.1827z-0.1218z0.0304zH(z)=1.0000+1.3834z+1.4721z+ 0.8012z+0.2286z--------++幅频响应图:分析:由图可知,切比雪夫滤波器幅频响应是通带波纹,阻带单调衰减的。
实验四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.。
数字信号处理实验指导老师:班级:姓名:学号:目录一、实验容 (3)1.实验目的 (3)2.实验原理 (3)3.实验容及步骤 (3)4.信号产生函数清单 (5)5.实验程序框图 (6)6.思考题 (6)二、滤波器参数及实验程序清单 (7)三、实验程序运行结果 (9)四、思考题 (11)实验四: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)调用信号产生函数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个频率成分:和频0c f f +、差频0c f f -,这2个频率成分关于载波频率f c 对称。
所以,1路抑制载波单频调幅信号的频谱图是关于载波频率f c 对称的两根谱线。
容易看出,图1中三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。
有关调幅(AM )和抑制载波调幅(SCAM )的一般原理与概念,请参考通信原理教材。
(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 清单 function st=mstg N=800Fs=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).*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);subplot(3,1,1)plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a)s(t)的波形')subplot(3,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b)s(t)的频谱') axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度')5.实验程序框图实验程序框图如图2所示,供读者参考。
6.思考题(1)请阅读信号产生函数mstg,确定三路调幅信号的载波频率和调制信号频率。
(2)信号产生函数mstg中采样点数N=800,对st进行N点FFT可以得到6根理想谱线。
如果取N=1000,可否得到6根理想谱线?为什么?N=2000呢?请改变函数mstg中采样点数N的值,观察频谱图验证您的判断是否正确。
(3)修改信号产生函数mstg,给每路调服信号加入载波成分,产生调幅(AM)信号,重复本实验,观察AM信号与抑制载波调幅信号的时域波形及其频谱的差别。
提示:AM信号表示式:s(t)=[A d +A m cos(2πf 0t)]cos(2πf c t) A d ≥A m二、 滤波器参数及实验程序清单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 α=,按照图2 所示的程序框图编写的实验程序为exp1.m 。
2、实验程序清单% IIR 数字滤波器设计及软件实现 clear all;close allFs=10000;T=1/Fs; %采样频率 %调用mstg st=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[B,A]=ellip(N,rp,rs,wp); %调用ellipy1t=filter(B,A,st);% 低通滤波器设计与实现绘图部分figure(5);subplot(2,1,1);myplot(B,A); %调用绘图函数myplot绘制损耗函数曲线yt='y_1(t)';subplot(2,1,2);tplot(y1t,T,yt); %调用绘图函数tplot绘制滤波器输出波形%带通滤波器设计与实现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,wp]=ellipord(wp,ws,rp,rs); %调用ellipord[B,A]=ellip(N,rp,rs,wp); %调用ellipy2t=filter(B,A,st); %滤波器软件实现% 带通滤波器设计与实现绘图部分figure(3);subplot(2,1,1);myplot(B,A); %调用绘图函数myplotyt='y_2(t)';subplot(2,1,2);tplot(y2t,T,yt); %调用tplot%高通滤波器设计与实现fp=890;fs=600;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF指标[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord[B,A]=ellip(N,rp,rs,wp,'high'); %调用ellipy3t=filter(B,A,st); %滤波器软件实现% 高低通滤波器设计与实现绘图部分figure(4);subplot(2,1,1);myplot(B,A); %调用myplotyt='y_3(t)';subplot(2,1,2);tplot(y3t,T,yt); %调用tplotfunction 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('损耗函数曲线');function tplot(xn,T,yn)%时域序列连续曲线绘图函数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)])function st=mstgN=2000Fs=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).*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);subplot(3,1,1)plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a) s(t)的波形')subplot(3,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b) s(t)的频谱')axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');三、实验程序运行结果实验1程序exp1.m运行结果如图3所示。