简述滤波器设计规格对象函数fdesign的使用方法 2

电子说

1.3w人已加入

描述

三、fdesign函数的输入与输出参数

3.1 fdesign函数的输入

fdesign函数的输入参数主要包括如下四方面内容:

  • response:期望的滤波器响应方法,比如低通、高通、带通滤波器等;
  • spec:滤波器规格参数,比如通带频率、阻带频率、通带波纹以及阻带衰减等;
  • Fs:采样频率;
  • magunits:滤波器幅值参数的单位。

(1)响应方法response

除了第二部分的低通滤波器对象fdesign.lowpassfdesignresponse还具有很多如下表所示的其他滤波器对象。每一个response具有一个Sepcification属性,通过它我们可以定义特定的滤波器对象。

fdesign响应方法 描述
arbgrpdelay fdesign.arbgrpdelay用于构造一个全通任意组延迟滤波器对象
arbmag fdesign.arbmag用于构造一个具有任意幅值响应的IIR滤波器对象
arbmagnphase fdesign.arbmagnphase用于构造一个具有任意幅值、相位脉冲响应的IIR滤波器对象
bandpass fdesign.bandpass构造一个带通滤波器对象
bandstop fdesign.bandstop构造一个带阻滤波器对象
ciccomp fdesign.ciccomp构造一个补偿CIC抽样器或内插器响应曲线的滤波器对象
comb fdesign.comb构造一个带有陷波或峰值梳妆滤波器对象
decimator fdesign.decimator构造一个抽样滤波器对象
differentiator fdesign.differentiator构造一个FIR差分滤波器对象
fracdelay fdesign.fracdelay构造一个分数延迟滤波器对象
halfband fdesign.halfband构造一个半滤波器对象
highpass fdesign.highpass构造一个高通滤波器对象
hilbert fdesign.hilbert构造一个FIR希尔伯特变换器对象
interpolator fdesign.interpolator构造一个插值器对象
isinchp fdesign.isinchp构造一个反向sinc高通滤波器对象
isinclp fdesign.isinclp构造一个反向sinc低通滤波器对象
lowpass fdesign.lowpass构造一个低通滤波器对象
notch fdesign.notch构造一个陷波滤波器对象
nyquist fdesign.nyquist构造一个Nyquist滤波器对象
peak fdesign.peak构造一个峰值滤波器对象
polysrc fdesign.polysrc构造一个多项式采样率转换器滤波器对象
rsrc fdesign.rsrc构造一个有理因子采样率转换器对象

(2)滤波器设计规格spec

specfdesign的滤波器设计规格参数,它是一个字符串向量。以第二部分设计的低通滤波器fdesign.lowpass为例,其规格表达式为'Fp, Fst, Ap, Ast',其具体含义如下所示:

  • Fp:通带频率(passband frequency);
  • Fst:阻带频率(stopband frequency);
  • Ap:通带波纹(passband ripple);
  • Ast:阻带衰减(stopband attenuation)。

如果不设置上面的四个参数,则使用默认的参数值。基于上面的滤波器规格参数spec,可以使用design函数设计滤波器,代码如下所示:

% 使用默认规格参数的滤波器规格对象d
d = fdesign.lowpass  % 滤波器规格包括`Fp, Fst
, Ap, Ast`
% 使用design函数设计滤波器
FIReq = design(d, 'equiripple', 'SystemObject', true);
length(FIReq.Numerator)

滤波器规格对象d的规格参数如下图所示:

matlab

(3)采样频率Fs

滤波器规格参数中的采样频率带通常为,需要注意的是采样率参数必须作为最后一个输入参数,并且如果指定了采样率,则左右的频率参数均以为单位。

(4)滤波器幅值参数的单位magunits

滤波器幅值参数的单位magunits可用的单位包括如下三种:

  • dB:分贝(decibels);
  • linear:线性单位;
  • squared:power单位。

当没有设置magunits参数时,fdesign则假设所有幅度都以dB为单位。

3.2 fdesign函数的输出

fdesign返回一个滤波器设计规格对象designSpecs,每一个滤波器设计规格对象都包含如下表所示的内容:

属性名 默认值 描述
Response 取决于选定的响应类型 定义了设计何种类型的滤波器,比如带通滤波器、插值器等,该属性为只读值
Specification 取决于选定的规格类型 定义了用于所需滤波器性能的滤波器特性,比如截止频率Fc或滤波器阶数N
Description 取决于选定滤波器类型 包含用于定义对象的筛选器规范的描述,以及从对象创建筛选器时使用的筛选器规范,它是一个只读值。
NormalizedFrequency 逻辑true 确定滤波器计算使用的是从到的归一化频率,还是从到到的频带,即采样频率。其接受不带单引号的truefalse。音频加权滤波器不支持标准化频率。

除了上面的属性之外,根据滤波器设计规范对象是单速率滤波器还是多速率滤波器,还包括如下额外属性:

多速率滤波器额外属性 描述
DecimationFactor 用于指定减少采样率的量(正整数)
InterpolationFactor 用于指定增加采样率的量(正整数)
PolyphaseLength 多相长度是组成抽取器或内插器或速率变化因子滤波器的每个多相子滤波器的长度。总过滤器长度是pl和速率变化因子的乘积。pl必须是偶数。
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分