# 滤波器设计工具快速入门
滤波器设计工具应用程序使您能够设计和分析数字滤波器。
要打开滤波器设计工具,请在 App 选项卡中,单击 Filter Designer 按钮
。
将打开滤波器设计工具并显示滤波器设计工具面板。
注意
打开滤波器设计工具时,设计滤波器按钮并未启用。必须对默认滤波器设计进行更改以启用设计滤波器按钮,且每次更改滤波器设计时,均需如此。对单选按钮项或下拉菜单项(如响应类型或设计方法下的控件)进行更改会立即启用设计滤波器按钮。对文本框中设定(如 Fs、Fpass 和 Fstop)进行更改也会立即启用设计滤波器按钮。
# 选择响应类型
滤波器设计工具支持以下响应类型:
- 低通
- 半带低通
- 奈奎斯特
- 高通
- 半带高通
- 带通
- 带阻
- 微分器
- 多频带
- Hilbert 变换器
- 任意幅值
- 峰值
- 陷波
提示
并非所有滤波器设计方法对所有响应类型均适用。如果您已选择了响应类型,则可用的滤波器设计方法可能会受到限制。对于所选响应类型不可用的滤波器设计方法将从对应设计方法区域中移除。
# 选择滤波器设计方法
您可以对所选响应类型使用默认的滤波器设计方法,也可以从列出的可用 FIR 和 IIR 方法中选择一种滤波器设计方法。IIR 滤波器设计方法类型下有 Butterworth、Chebyshev I 型、Chebyshev II 型、椭圆、最平坦、最小 P-范数等设计方法,FIR 滤波器设计方法类型下有窗、等波纹、最小二乘、约束最小二乘、最平坦等设计方法。
要选择 Remez 算法来计算 FIR 滤波器系数,请选择 FIR 单选按钮,并从方法列表中选择等波纹。
# 设置滤波器设计设定
# 查看滤波器设定
您可以设置的滤波器设计设定因响应类型和设计方法而异。当您在滤波器设计工具菜单栏,进入分析 > 滤波器设定或单击工具栏按钮
时,显示区域会显示当前滤波器设定。
# 滤波器阶数
在设计等波纹滤波器时,有两个互斥的选项来确定滤波器的阶数:
指定阶:您可以在文本框中输入滤波器阶数;
最小阶:滤波器设计方法决定最小阶滤波器。
提示
滤波器的阶数设定选项取决于您选择的滤波器设计方法。某些滤波器方法可能不会同时提供这两个选项。
# 选项
可用选项取决于所选滤波器设计方法。只有 FIR 等波纹和 FIR 窗设计方法有可设置的选项。
对于 FIR 等波纹,选项为密度因子。详细信息,请参见 firpm。对于 FIR 窗,选项为缩放通带和窗选项,对于以下窗,选项有可设置的参数:
| 窗 | 参数 |
|---|---|
| Chebyshev (chebwin) | 旁瓣衰减 |
| Gaussian (gausswin) | Alpha |
| Kaiser (kaiser) | Beta |
| Taylor (taylorwin) | Nbar 和旁瓣电平 |
| Tukey (tukeywin) | Alpha |
# 带通滤波器频率设定
对于带通滤波器,您可以设置
- 频率单位
- Hz
- kHz
- MHz
- 归一化 (0 到 1)
- Fs (采样率)
- 通带频率
- 阻带频率
可以用两个频率指定通带,第一个频率决定通带的下边缘,第二个频率决定通带的上边缘。
同样,您可以用两个频率指定阻带,第一个频率确定第一个阻带的上边缘,第二个频率确定第二个阻带的下边缘。
# 带通滤波器幅值设定
对于带通滤波器,您可以指定以下幅值响应特征:
- 幅值单位
- dB
- 线性
- 幅值平方
- 通带波纹
- 阻带衰减
特别地,等波纹指定阶设计方法需设定每个频带的权重系数、约束最小二乘设计方法需设定滤波器幅值的上限和下限。
# 计算滤波器系数
在完成滤波器设定后,单击设计滤波器按钮计算滤波器系数。
提示
在计算滤波器设计的系数后,设计滤波器按钮将被禁用。在对滤波器设定进行任何更改后,此按钮将再次启用。
# 分析滤波器
您可以在显示区域或单独的窗口中查看以下滤波器响应特征。
- 幅值响应
- 相位响应
- 幅值响应和相位响应
- 群延迟响应
- 相位延迟响应
- 冲激响应
- 阶跃响应
- 零极点图
其中,幅值响应、相位响应、群延迟响应、相位延迟响应的计算点数采用默认值 8192。
您还可以在此区域显示滤波器系数。
此外,当显示区域正在展示滤波器响应时,可在滤波器设计工具菜单栏,进入查看 > 滤波器可视化工具,启动滤波器可视化工具来进一步进行滤波器分析。
# 量化滤波器
滤波器设计工具提供了量化滤波器功能。可以通过单击侧边工具栏按钮
来进入“量化参数选择面板”,可使用此面板来量化和分析双精度浮点滤波器。
双精度浮点:双精度浮点算法设计生成的双精度浮点滤波器;
单精度浮点:双精度浮点滤波器进行单精度浮点量化后的单精度浮点滤波器;
定点:通过配置面板定点量化参数对双精度浮点滤波器进行定点量化。
其中,对滤波器进行单精度浮点量化和定点量化后,滤波器响应展示界面会同时展示量化前后滤波器响应对比效果。
提示
在对滤波器进行单精度浮点量化和定点量化后,再通过滤波器设计工具启动滤波器可视化工具时,滤波器可视化工具对量化滤波器进行响应分析。
# 多速率滤波器设计
通过启动云化版滤波器设计工具并切换到多速率过滤器设计模式,可以通过图形用户界面设计抽取器,插值器和小数倍率速采样器等多速率滤波器,包括 CIC 滤波器以及使用当前滤器系数(如果它们表示 FIR 滤波器)的能力。此外,在设计或修改多速率滤波器之后,可以使用滤波器设计工具中的量化功能将多速率滤波器转换为定点形式。特别地,CIC 滤波器总是定点滤波器。
打开滤波器设计工具后,单击侧边栏上的创建多速率滤波器,将看到滤波器设计器切换到显示多速率滤波器设计选项的设计模式。下图显示的是默认的多速率设计配置,它设计了一个插值因子为 2 的插值器。本设计在滤波器设计工具中使用了当前的 FIR 滤波器。当滤波器设计工具中的当前滤波器不是 FIR 滤波器时,多速率滤波器设计面板将使用当前 FIR 滤波器选项置灰,并选择使用默认 Nyquist FIR 滤波器选项作为默认设置。
切换显示多速率滤波器设计选项的设计模式后,从类型下拉框中选择要设计的多速率滤波器类型。根据指定多速率滤波器类型,其他选项将更改以提供指定滤波器所需的参数设置控件。注意设计面板的各个部分。左侧是多速率滤波器类型选择区域,可以选择多速率滤波器的类型并设置滤波器性能规格。中间部分是设计方法选择区域,提供了指定多速率滤波器类型的可选设计方法。当在中心部分选择级联积分器梳(CIC)作为设计方法时,最右侧部分提供了控制滤波器配置选项。抽取器和插值器支持使用级联积分器梳状(CIC)选项来设计多速率滤波器。
滤波器设计工具支持以下多速率滤波器类型及其对应的设计方法。
- 插值器
- 使用当前 FIR 滤波器
- 使用默认 Nyquist FIR 滤波器
- 级联积分梳状(CIC)
- 抽取器
- 使用当前 FIR 滤波器
- 使用默认 Nyquist FIR 滤波器
- 级联积分梳状(CIC)
- 小数倍采样率转换器
- 使用当前 FIR 滤波器
- 使用默认 Nyquist FIR 滤波器
注意
多速率滤波器设计功能仅在 Online 版滤波器设计工具支持,单机版滤波器设计工具暂不支持。
# 滤波器结构转换
在单机版滤波器设计工具中,提供了滤波器结构转换选项。对于 IIR 滤波器,可通过菜单栏 > 编辑 > 转换为二阶节或转换为单节按钮来实现滤波器模型单节以及二阶节形式之间的转换,其中,二阶节形式 IIR 滤波器支持通过菜单栏 > 编辑 > 转换结构 > 直接 I 型,二阶节或直接 II 型,二阶节按钮进行结构转换,单节形式 IIR 滤波器支持通过菜单栏 > 编辑 > 转换结构 > 直接 I 型或直接 II 型按钮进行结构转换。对于 FIR 滤波器,仅存在单节形式,无结构转换选项。
# 导出滤波器
# 将系数导出到工作区
您可以将滤波器滤波器系数导出。要将滤波器保存到 Syslab 工作区,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 导出,弹出导出对话框;
从导出到菜单中选择工作区;
从导出为菜单中选择系数以保存滤波器系数;
导出系数时,请在变量名称部分的分子(对于 FIR 滤波器)或分子和分母(对于 IIR 滤波器)或 SOS 矩阵和定标值(对于二阶节形式的 IIR 滤波器)文本框中指定变量名称。如果您的工作区中有同名变量,并且您要覆盖它们,请选中覆盖变量复选框;
单击导出按钮。
# 将系数导出到 MAT 文件
要将滤波器系数作为变量保存在 MAT 文件中,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 导出, 弹出导出对话框;
从导出到菜单中选择 MAT-File;
从导出为菜单中选择系数以保存滤波器系数;
导出系数时,请在变量名称部分的分子(对于 FIR 滤波器)或分子和分母(对于 IIR 滤波器)或 SOS 矩阵和定标值(对于二阶节形式的 IIR 滤波器)文本框中指定变量名称;
单击导出按钮,此时会出现导出为 MAT 文件对话框;
选择或输入文件名,然后单击保存按钮。
# 将系数导出到文本文件
要将滤波器系数作为变量保存在文本文件中,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 导出,弹出导出对话框;
从导出到菜单中选择文本文件;
单击导出按钮,此时会出现导出为 FCF 文本文件对话框;
选择或输入文件名,然后单击保存按钮。
# 导出为 Sysplorer 模型
如果您安装了 Sysplorer 产品,您可以在单机版滤波器设计工具中导出当前滤波器所对应的 Sysplorer 模型,并使用 Sysplorer 打开该模型。对于 FIR 滤波器以及单节形式的 IIR 滤波器,可以直接生成对应的 Sysplorer 模型,对于二阶节形式的 IIR 滤波器,可将其转化为传递函数形式后再进行对应 Sysplorer 模型的导出。
要将滤波器模型导出为 Sysplorer 模型,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 导出为 Sysplorer 模型。若未通过 Syslab 启动 Sysplorer,则提示需通过 Syslab 启动 Sysplorer;
若已通过 Syslab 启动 Sysplorer,此时会出现导出为 Sysplorer 模型对话框;
选择或输入文件名,然后单击保存按钮,将生成指定的 mo 文件模板,写入滤波器系数,并通过 Sysplorer 打开已生成模型。
# 保存会话 & 加载会话
如果您想保存此次设计的页面状态以及最近一次设计过的滤波器系数,可以使用保存会话功能;相应地,使用加载会话功能可以将之前保存过的文件重新加载到当前页面。
要将会话页面导出为 sfd 为文件存至本地,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 保存会话。若您想保存当前设计参数所对应的滤波器系数,请在保存前务必单击设计滤波器应用当前参数,未应用则保存的是最近一次设计成功的滤波器系数;
保存时会自动校验当前界面所有输入的合法性,均为合法输入后会弹出选择保存路径对话框,保存当前会话为 sfd 文件;
选择或输入文件名,然后单击保存按钮。将生成对应的 sfd 文件,可以通过加载会话功能导入该文件到当前页面。
要加载本地的 sfd 为文件到当前页面,请执行以下操作:
在滤波器设计工具菜单栏,进入文件 > 加载会话,弹出加载滤波器设计会话对话框;
选择或输入要加载的 sfd 文件名,加载后若校验 sfd 文件已被篡改,会弹窗警告;
加载成功后,底部状态栏显示成功加载滤波器设计会话,否则显示加载滤波器设计会话错误。