您可以使用数字滤波器设计块来设计和实现一个数字滤波器。您设计的滤波器可以过滤单通道或多通道信号。数字滤波器设计块非常适合在浮点系统(如个人计算机或DSP芯片)上模拟滤波器的数值行为。您可以使用金宝app®编码器™product从过滤器块生成C代码。
在过滤器设计器应用程序中执行所有过滤器设计和分析,双击数字过滤器设计块时将打开该应用程序。滤波器设计器提供广泛的滤波器设计参数和分析工具,如极零和脉冲响应图。
一旦您使用过滤器设计器设计了过滤器,该块将使用您指定的过滤器结构自动实现过滤器。然后您可以使用该块来过滤模型中的信号。您还可以通过在模拟期间更改过滤器规格参数来微调过滤器。当传递相同的输入时,数字滤波器设计块的输出在数字上与等效滤波器系统对象™的输出匹配。
数字滤波器设计块允许您保存您设计的滤波器,导出滤波器(到MATLAB中)®工作空间,mat文件等),并导入在其他地方设计的过滤器。
要了解如何保存筛选器设计,请参见保存和打开过滤器设计会话.要了解如何导入和导出筛选器设计,请参见导入和导出量化滤波器.
请注意
您可以使用数字滤波器设计块来设计和实现滤波器。要实现预先设计的滤波器,请使用离散FIR滤波器或双方滤波器块。这两种方法以相同的方式实现过滤器设计,并且在模拟和代码生成过程中具有相同的行为。
看到数字滤波器设计块参考页以获取更多信息。有关在数字滤波器设计块和滤波器实现向导之间进行选择的信息,请参见选择一个过滤器设计块.
本节解释数字滤波器设计和滤波器实现向导模块之间的异同。
数字滤波器设计块和滤波器实现向导在以下方面相似:
过滤器设计和分析选项-这两个模块都使用过滤器设计器应用程序进行过滤器设计和分析。
输出值——如果两个块的输出都是双精度浮点数、单精度浮点数或定点,则当传递相同输入时,两个块的输出值在数值上与等效系统对象的输出值匹配。
数字滤波器设计块和滤波器实现向导处理以下事情不同:
金宝app支持的滤波器结构——这两个模块都支持许多相同的基本滤波器结构,但是滤波器实现向导比数字滤波器设计模块支持更多的结构。这是因为该块可以使用Sum、Gain和Delay块实现过滤器。看到过滤器实现向导而且数字滤波器设计阻塞引用页,以获得它们支持的所有结构的列表。金宝app
数据类型支持——过滤金宝app器实现向导块支持所有过滤器结构的单精度和双精度浮点计算,支持某些过滤器结构的定点计算。数字滤波器设计块只支持单精度和双精度浮点计算。金宝app
块与向导——数字过滤器设计块是过滤器本身,但过滤器实现向导块只允许您创建新的过滤器并将它们放在现有模型中。因此,Filter Realization Wizard不是一个处理模型中数据的块,而是一个生成过滤器块(或子系统)的向导,然后您可以使用它来处理模型中的数据。
以下是仅适用于数字滤波器设计块或滤波器实现向导的特定情况。
数字滤波器设计
用于模拟单精度和双精度浮点滤波器。
用于生成高度优化ANSI®C为嵌入式系统实现浮点过滤器的代码。
过滤器实现向导
用于在DSP芯片、现场可编程门阵列(FPGA)或特定应用集成电路(ASIC)中模拟定点滤波器的数值行为。
用于模拟具有数字滤波器设计块不支持的结构的单精度和双精度浮点滤波器。金宝app
用于可视化过滤器结构,因为该块可以从Sum、Gain和Delay块构建过滤器。
用于快速生成多个过滤块。
您可以使用数字滤波器设计块来设计和实现数字FIR或IIR滤波器。在本主题中,您使用它来创建一个FIR低通滤波器:
打开Sim金宝appulink并创建一个新的模型文件。
从DSP系统工具箱™滤波库,然后从滤波器实现库,点击并拖动数字滤波器设计块到您的模型。
双击数字滤波器设计块。
过滤器设计器应用程序打开。
2 .按如下参数配置,单击好吧:
响应类型=低通滤波器
设计方法=冷杉
,Equiripple
过滤器订单=最低订购量
单位=标准化(0到1)
wpass=0.2
wstop=0.5
点击设计滤波器在应用程序的底部设计过滤器。
“数字滤波器设计”块现在表示具有指定参数的滤波器。
从编辑菜单中,选择转换结构.
的转换结构对话框。
选择直接形式FIR转置并点击好吧.
重命名你的区块数字滤波器设计-低通
.
数字滤波器设计块现在表示具有直接形式FIR转置结构的低通滤波器。滤波器通过所有奈奎斯特频率(采样频率的一半)的20%以内的频率,并停止大于或等于奈奎斯特频率的50%的频率wpass而且wstop参数。在下一个主题中,在Simulink中创建一个高通滤波器金宝app,则使用数字滤波器设计块来创建高通过滤器。有关实现预先设计的筛选器的详细信息,请参见数字滤波器实现.
在本主题中,您将使用数字滤波器设计块创建高通滤波器:
如果您创建的模型在Simulink中创建一个低通过滤器金宝app在您的桌面上没有打开,您可以通过键入打开等效的模型吗
ex_filter_ex4
在MATLAB命令提示符。
从DSP系统工具箱滤波库,然后从滤波器实现库,点击并拖动第二个数字滤波器设计块到您的模型。
双击数字滤波器设计块。
过滤器设计器应用程序打开。
参数设置如下:
响应类型=高通滤波
设计方法=冷杉
,Equiripple
过滤器订单=最低订购量
单位=标准化(0到1)
wstop=0.2
wpass=0.5
单击设计滤波器按钮在应用程序底部设计过滤器。
“数字滤波器设计”块现在表示具有指定参数的滤波器。
在编辑菜单中,选择转换结构.
的转换结构对话框。
选择直接形式FIR转置并点击好吧.
重命名你的区块数字滤波器设计-高通
.
块现在实现了一个直接形式FIR转置结构的高通滤波器。滤波器通过大于或等于奈奎斯特频率(采样频率的一半)的50%的所有频率,并停止小于或等于奈奎斯特频率的20%的频率wpass而且wstop参数。此高通滤波器与中描述的低通滤波器相反在Simulink中创建一个低通过滤器金宝app.高通滤波器通过低通滤波器停止的频率,并停止低通滤波器通过的频率。在下一个主题中,在Simulink中滤波高频噪声金宝app你可以用这些数字滤波器设计块来创建一个能够从信号中去除高频噪声的模型。有关实现预先设计的筛选器的详细信息,请参见数字滤波器实现.
在前面的主题中,您使用数字滤波器设计块创建FIR低通和高通滤波器。在本主题中,您将使用这些块来构建从信号中去除高频噪声的模型。在这个模型中,您使用高通滤波器,它是由均匀随机信号激发的,以产生高频噪声。将这个噪声添加到正弦波后,使用低通滤波器过滤掉高频噪声:
如果您创建的模型在Simulink中创建一个高通滤波器金宝app在您的桌面上没有打开,您可以通过键入打开等效的模型吗
ex_filter_ex5
在MATLAB命令提示符。
单击并拖动以下块到您的模型中。
设置这些块的参数,如下表所示。将表中未列出的参数保留为默认设置。
其他块的参数设置
块 | 参数设置 |
---|---|
添加 |
|
随机源 |
|
正弦波 |
|
时间范围 |
|
按下图所示连接砌块。为了完成这项任务,您可能需要调整一些块的大小。
在建模选项卡上,单击模型设置.的配置参数对话框。
在解算器窗格中,按如下参数配置,然后单击好吧:
开始时间=0
停止时间=5
类型=固定步
解算器=离散(无连续状态)
在模拟选项卡上,选择运行.
模型模拟开始,瞄准镜显示三个输入信号。
模拟完成后,选择视图>传说从时间范围菜单。图例出现在时间范围窗口中。你可以点击并拖动它在瞄准镜显示器上的任何地方。要更改通道名称,双击图例内部,并将默认通道名称替换为以下内容:
添加=噪声正弦波
数字滤波器设计-低通=滤波噪声正弦波
正弦波=原始正弦波
在下一步中,您将设置每个通道的颜色、样式和标记。
在“时间范围”窗口中,选择视图>风格,并设置如下:
信号 | 行 | 标记 | 颜色 |
---|---|---|---|
噪声正弦波 | - | 没有一个 | 黑色的 |
滤波噪声正弦波 | - | 钻石 | 红色的 |
原始正弦波 | 没有一个 | * | 蓝色的 |
的时间范围现在应该显示如下所示:
你可以看到低通滤波器滤掉了有噪声的正弦波中的高频噪声。
您现在已经使用数字滤波器设计模块构建了一个从信号中去除高频噪声的模型。有关这些块的详细信息,请参见数字滤波器设计块引用页。有关能够设计和实现过滤器的另一个块的信息,请参见过滤器实现向导.要了解如何保存筛选器设计,请参见保存和打开过滤器设计会话.要了解如何导入和导出筛选器设计,请参见导入和导出量化滤波器.