设计一个过滤器Fdesign -流程概述
工艺流程图和滤波器设计方法
请注意
探索过程流程图
过程流程图如下图所示列出步骤,展示了滤波器设计过程的顺序。
第一个四个步骤滤波器设计过程与滤波器规范的对象,而最后两个步骤涉及滤波器实现对象。这些对象都是在下面详细讨论。步骤5 -滤波器的设计,从过滤规范对象是过渡的步骤来实现对象。分析和验证步骤是完全可选的。它提供了滤波器设计方法,以确保过滤器符合设计标准。根据验证的结果,你可以循环回步骤3和步骤4,选择不同的算法,或者定制。你也希望回到步骤3或4后滤波器设计的输入数据滤波器(步骤7),并找到你想进一步调整过滤器或改变它。
图表显示了每个步骤的帮助命令。输入线在MATLAB的帮助®命令提示符接收指令,进一步为特定步骤文档链接。并不是所有的步骤必须显式地执行。例如,您可以直接从步骤1到步骤5中,和临时三个步骤是为你做的软件。
以下是上面所示的每个步骤的细节。
选择一个响应
如果你输入:
帮助fdesign /响应
你必须选择一个响应启动过滤器。在这个示例中,创建一个带通滤波器的规范对象通过输入如下:
d = fdesign.bandpass
选择一个规范
一个规范是一个数组给定滤波器的设计参数。规范是规范对象的一个属性。
请注意
规范不一样的规范对象。规范对象包含一个规范作为它的一个属性。
当您选择一个过滤器的回应,有许多不同的规格可供使用。每一个包含一个不同的设计参数组合。创建一个过滤器规格对象后,您可以查询可用规范的反应。规范标有星号要求DSP系统工具箱™。
d = fdesign.bandpass;%步骤1 -选择响应集(d,“规范”)
ans = 16×1单元阵列的Fst1、Fp1 Fp2, Fst2, Ast1,美联社,Ast2 ' ' N F3dB1 F3dB2 ' ' N, F3dB1, F3dB2,美联社的N, F3dB1 F3dB2, Ast的N F3dB1 F3dB2, Ast1,美联社,Ast2 ' ' N F3dB1 F3dB2, BWp ' ' N F3dB1 F3dB2, BWst ' ' N, Fc1, Fc2的N, Fc1, Fc2, Ast1,美联社,Ast2 ' ' N, Fp1, Fp2,美联社的N Fp1 Fp2, Ast1,美联社,Ast2”“Fp2, N Fst1 Fp1 Fst2”“Fp2, N Fst1 Fp1 Fst2, C ' ' N Fst1 Fp1 Fp2, Fst2,美联社的N, Fst1 Fst2, Ast的“Fp2, Nb, Na, Fst1, Fp1 Fst2”
d = fdesign.arbmag;集(d,“规范”)
ans = 7×1单元阵列的N, F, F, R的‘Nb, Na, F,“' N, B, F, ' ' N, B, F, A, C ' ' B, F, A, R的Nb, Na, B, F,“
的集
命令可以用来选择一个可用的规格如下:
d = fdesign.lowpass;%步骤1:可用规范的列表集(d,“规范”)
ans = 18×1单元阵列的Fp,置,美联社,Ast的N, F3dB ' Nb, Na, F3dB ' ' N, F3dB,美联社的N, F3dB,美联社,Ast的N F3dB Ast的浮置板轨道的N F3dB ' N, Fc ' ' N, Fc,美联社,Ast的N, Fp,美联社的N, Fp,美联社,Ast的N, Fp, F3dB ' N, Fp,置' ' N, Fp,置,美联社的浮置板轨道,N, Fp, Ast的N,置,美联社,Ast的浮置板轨道,N, Ast的Nb, Na, Fp,置
%第二步:设置所需的规范集(d,“规范”,“N,俱乐部”)
fdesign
返回默认的响应你选择规范选择一个响应,并提供了规范中包含的所有设计参数的默认值。
选择一种算法
算法的可用性取决于所选择的滤波器响应,设计参数和DSP系统的可用性工具。换句话说,同样的低通滤波器,改变规范条目也改变可用的算法。在接下来的例子中,一个低通滤波器和一个规范的“N,俱乐部”
,只有一个算法,可用窗口
。
%第二步:设置所需的规范集(d,“规范”,“N,俱乐部”)% 3步:得到可用的算法designmethods (d,“Systemobject”,真正的)
支持系统对象类fdesign的设计方法。万博1manbetx低通滤波器(N, Fc):窗口
“Fp,置,美联社,Ast”
,许多算法都是可用的。集(d,“规范”,“Fp,置,美联社,Ast”)designmethods (d,“Systemobject”,真正的)
支持系统对象类fdesign的设计方法。万博1manbetx低通滤波器(Fp,置,美联社,Ast):黄油cheby1 cheby2 ellip equiripple ifir kaiserwin多级
设计
函数。filt =设计(d,“黄油”,“Systemobject”,真正的)
filt = dsp。BiquadFilter属性:结构:“直接形成II”SOSMatrixSource:“财产”SOSMatrix:[13×6双]ScaleValues:[14×1双]InitialConditions: 0 OptimizeUnityScaleValues:正确显示所有属性
filt
是滤波器实现对象。这一概念将在下一步中进一步讨论。
如果不显式地执行这个步骤,设计
自动选择最优算法的选择响应和规范。
自定义算法
自定义选项对于任何给定的算法不仅依赖于算法本身,选择选择一种算法,而且在规范中选择选择一个规范。探索所有可用的选项,在MATLAB命令提示符输入以下:
帮助(d,“算法名称”)
d
是过滤规范对象,然后呢算法名称
在单引号算法的名称,如“黄油”
或“cheby1”
。
这些定制的应用程序选项而发生设计滤波器,因为这些选项是滤波器实现对象的属性,不规范的对象。
如果不显式地执行这一步骤,选择最优的算法结构。
设计滤波器
要创建一个过滤器,可以使用设计
命令:
%设计滤波器没有指定的算法filt =设计(d,“Systemobject”,真正的);
filt
过滤器对象和吗d
是规范对象。这段代码创建了一个过滤器没有指定的算法。如果不指定这个算法,软件选择最好的一个。
应用中选择的算法选择一种算法,使用相同的设计
命令,但指定的算法如下:
filt =设计(d,“黄油”,“Systemobject”,真正的)
filt
新的过滤器对象,d
是规范对象。
获得帮助和看到所有可用的选项,类型:
帮助fdesign /设计
设计
命令本身,但也属于方法或算法的选择。如果你定制算法,应用这些选项在这一步。在接下来的例子中,你设计一个带通滤波器,然后修改滤波器结构:filt =设计(d,“黄油”,“filterstructure”,“df2sos”,“Systemobject”,真正的)
filt = dsp。BiquadFilter属性:结构:“直接形成II”SOSMatrixSource:“财产”SOSMatrix:[13×6双]ScaleValues:[14×1双]InitialConditions: 0 OptimizeUnityScaleValues:正确显示所有属性
滤波器设计步骤,就像选择一个响应的第一个任务,必须显式地执行。只有当创建一个过滤器对象设计
被称为。
设计分析
滤波器设计后,您可能希望分析来确定滤波器满足设计标准。过滤分析分为以下主要部分:
的离散滤波器的分析方法,在MATLAB中输入以下命令提示符:
dsp。< sysobjName > .helpFilterAnalysis
取代< sysobjName >
系统对象™的名称。另外,您可以看到以下分析方法的列表滤波器的分析类别。
分析你的过滤器,您必须显式地执行这一步骤。
意识到输入数据或应用过滤器
过滤器设计和优化后,可以用它来过滤实际输入数据。
y = filt (x)
请注意
y = filt (x)
只运行在R2016b或更高版本。如果您使用的是较早的版本中,替换y = filt (x)
与y =步骤(filt x)
。
请注意
如果你有仿真软件万博1manbetx®,你可以选择出口这个过滤器模型块使用万博1manbetxrealizemdl
命令。在这个命令得到帮助,类型:
帮助realizemdl