俗话说得好,一流程序员靠数学,二流靠算法,三流靠逻辑; 今天就和大家聊一聊嵌入式中的常用算法。
一阶低通滤波器
一阶低通滤波器是通过软件算法模拟硬件上的RC滤波器,用来抑制干扰信号,数学表达式为:
y(t) = k*x(t) + (1-k)*y(t-1) (1>k>0) 【1】
式中:y(t)是此次滤波器的输出,x(t)是此次滤波器的输入信号,y(t-1)是上一次滤波器的输出; k为数字滤波器的采样系数,实际取值 取决于滤波时间常数和采样周期;
若采样间隔△t足够小,则滤波器的截止频率为:
f = k/(2*pi*△t)
例如,采样频率为19.2KHz,K为0.06518,则截止频率为200Hz
时域仿真模型
接下来我们用matlab编写一个.m文件,加上一阶低通滤波器看下他的效果;
一阶低通滤波器
原始信号为50Hz,幅值为5; 采样频率为19.2KHz,K为0.06518;可以看到经过低通滤波器后已经将高频噪音信号滤除掉了,非常接近原始信号。 这里要注意, 低通滤波器的截止频率一定要高于原始信号,否则会导致原始信号失真。
滤波器效果比较
如上图,原始信号均为幅值为5的正弦信号,左图的频率为500Hz,右图的频率为2000Hz; 可以看到幅值和相位都被改变了; 所以在使用低通滤波器时候一定要注意了,不能让波形失真。
-
嵌入式
+关注
关注
5086文章
19141浏览量
305911 -
滤波器
+关注
关注
161文章
7836浏览量
178301 -
低通滤波器
+关注
关注
14文章
474浏览量
47444 -
仿真
+关注
关注
50文章
4094浏览量
133696 -
模型
+关注
关注
1文章
3255浏览量
48897
发布评论请先 登录
相关推荐
评论