主要内容

一种有噪声的正弦波信号的滤波帧金宝app

这个例子展示了如何在Simulink中对噪声信号进行低通滤波金宝app®并用频谱分析仪将原始信号和过滤后的信号可视化。对于MATLAB®本例的版本,参见噪声正弦波信号滤波帧的MATLAB实现

开放模式

创建一个新的空白模型并打开库浏览器:

  1. 关于MATLAB首页选项卡上,单击金宝app,并选择基本的过滤器模型模板。

  2. 点击创建模型创建一个基本的过滤器模型,打开设置,适合与DSP系统工具箱™使用。要访问库浏览器,请在模拟选项卡上,单击库浏览器在模型工具条上。

基本滤波器模型模板包含两个正弦波块,一个高斯噪声块,一个低通FIR滤波器块和一个频谱分析仪块。两个正弦波块和高斯噪声块馈入加法器。加法器块的输出是有噪声的正弦信号。这个噪声信号被馈送到低通滤波器块。低通滤波器块的输出是经过滤波的信号。将噪声信号和滤波后的信号送入频谱分析仪,频谱分析仪显示这两个信号的频谱。

使用模板设置和内容的新模型出现在Simulink Editor中。金宝app在保存模型之前,模型只在内存中。

检查模型

输入信号

输入信号由三个源块组成。输入信号由两个正弦波和高斯白噪声组成,均值为0,方差为0.05。正弦波的频率是1千赫和15千赫。采样频率为44.1 kHz。对话框显示了1khz正弦波的块参数。

第一个正弦波块的块对话框。方块对话框的设置如下。主界面:振幅设置为1,频率设置为1000hz,相位偏移设置为0弧度,采样模式设置为离散,输出复杂度设置为实数,计算方法设置为Trignometric fcn,采样时间设置为1/44100,每帧采样个数设置为256,重新启用时的复位状态设置为时间零点重新启动。

低通滤波器

低通滤波器使用低通滤波器块。本例采用广义Remez FIR滤波器设计算法。该滤波器的通带频率为8000hz,阻带频率为10000hz,通带纹波为0.1 dB,阻带衰减为80db。

低通过滤器块的块对话框。方块对话框的设置如下。主界面:“滤波器类型”设置为FIR,选中“设计最小阶滤波器”复选框,“通带边频”设置为8000hz,“阻带边频”设置为10000hz,“最大通带纹波”设置为0.1 dB,“最小阻带衰减”设置为80db,“从输入继承采样率”复选框未选中,“输入采样率”设置为44100hz,“模拟使用”设置为“解释执行”。

低通过滤器块使用基于帧的处理来一次处理一帧数据。每一帧数据包含来自独立通道的连续样本。基于帧的处理对于许多信号处理应用是有利的,因为您可以一次处理多个样本。通过将数据缓冲到帧中并处理数据的多采样帧,您可以提高信号处理算法的计算时间。

比较原始信号和滤波信号

使用一个频谱分析仪比较原始信号和滤波信号的功率谱。频谱单位为dBm。

要运行模拟,请在模型中单击运行.停止模拟,在频谱分析仪块,点击停止.或者,您可以执行以下代码来运行200帧数据的模拟。

set_param(模型,“StopTime”'256/44100 * 200') sim(模型);

频谱分析仪的输出显示两个信号。黄色的原始信号未衰减,峰值在1千赫和15千赫。蓝色部分的滤波信号在10khz后衰减。

源信号中超过10khz的频率被衰减。产生的信号保持在1khz的峰值,因为它落在低通滤波器的通带中。