主要内容

利用RLS自适应滤波自适应降噪

这个例子展示了如何使用一个RLS滤波器从嘈杂的信号中提取有用的信息。轴承信号的信息是一个正弦波,被加性高斯白噪声。

自适应噪声抵消系统假定两个麦克风的使用。主麦克风拿起了嘈杂的输入信号,而第二个麦克风接收轴承信号噪声不相关的信息,但与噪声被主麦克风。

注意:这个例子是相当于“rlsdemo”提供的Simulink仿真®模型。万博1manbetx

模型说明了自适应RLS滤波器的能力从一个嘈杂的信号中提取有用的信息。

priv_drawrlsdemo轴

轴承信号的信息是0.055的正弦波周期/样品。

信号=罪(2 *π* 0.055 * (0:1000-1)');signalSource = dsp.SignalSource(信号,“SamplesPerFrame”,100,“SignalEndAction”,循环重复的);情节(0:199、信号(1:200));网格;轴([0 200 2 2]);标题(的轴承信号的信息);

图包含一个坐标轴对象。坐标轴对象与标题信息轴承信号包含一个类型的对象。

噪音被第二个麦克风RLS自适应滤波器的输入。腐败的噪声的正弦波是一个低通滤波器过滤版本(相关)这噪音。的和过滤噪音和轴承信号的信息自适应滤波器的期望信号。

据nvar = 1.0;%噪声方差噪音= randn(1000 1) *据nvar;%白噪声noiseSource = dsp.SignalSource(噪音,“SamplesPerFrame”,100,“SignalEndAction”,循环重复的);情节(0:999、噪音);标题(噪音被第二个麦克风的);网格;轴([0 1000 4 4]);

图包含一个坐标轴对象。坐标轴对象与标题噪声被第二个麦克风包含一个类型的对象。

噪声损坏轴承信号的信息过滤版本的“噪声”。初始化过滤器运行噪音。

lp = dsp.FIRFilter (“分子”0.5),fir1(31日);%低通数字滤波器

设置和初始化RLS自适应滤波器参数和值:

M = 32;%过滤器订单δ= 0.1;%初始输入协方差估计P0 =(1 /δ)*眼(M M);%初始设置P矩阵rlsfilt = dsp.RLSFilter (M,“InitialInverseCovariance”、P0);

1000年运行RLS自适应滤波器迭代。自适应滤波器的收敛,过滤噪音应该完全减去从“信号+噪声”。的错误,“e”,应该只包含原始信号。

范围= timescope (“时间间隔”,1000,“YLimits”(2,2),“TimeSpanOverrunAction”,“滚动”);k = 1:10 n = noiseSource ();%的噪音s = signalSource ();d = lp (n) + s;[y, e] = rlsfilt (n、d);范围((s、e));结束释放(范围);

图显示了自适应滤波器的收敛响应数字滤波器的响应。

H = abs (freqz (rlsfilt.Coefficients, 64));H1 = abs (freqz (lp.Numerator, 64));wf = linspace (0, 1, 64);情节(wf H、wf、H1);包含(的归一化频率(\乘以π\ rad /样本));ylabel (“级”);传奇(自适应滤波器响应的,“响应滤波器需要”);网格;轴([0 1 0 2]);

图包含一个坐标轴对象。坐标轴对象包含归一化频率(空白乘以πr d / s m p l e), ylabel级包含2线类型的对象。这些对象代表自适应滤波器响应,响应滤波器需要。

引用

[1]。微积分”,自适应滤波器理论”,第3版,Prentice Hall,新泽西州,1996年。