How to implement first order low pass filter in Matlab?
36 次查看(过去 30 天)
显示 更早的评论
Hi everyone,
I have a data variable(Y) which contains some high frequency noise. I want to implement a first order low pass filter to remove the noise. Instead of using a transfer function, I'm trying to implement it in time domain with the help of following equation
Ynew = Y*(K/T)*exp(-t/T)
which is same as multiplying with first order low pass filter transfer function(G(s)=K/(TS+1)). The problem is my data won't start at t=0 seconds, instead it starts at t=4.2 seconds. I'm little confused, whether do I need to use simulation time t=0 seconds or the time at which it is measured t=4.2 seconds
Thanks!!!
0 个评论
采纳的回答
Jesús Zambrano
2019-7-30
编辑:Jesús Zambrano
2019-7-30
Hi Raja,
Since your input has a delay, then the input can be expressed as, say u(t)=f(t-a), where a is the time delay you mention.
Then, the input in Laplace domain is given by U(S)=exp(-aS)F(s). Then, your output is simply Y(S)=U(S)G(S). Then, you can use Laplace table so to describe the output in time domain. See that G(S) is not changing due to any delay in your input signal. Then, start your simulation at t=0, and if you want to describe the expression mathematically, follow what I wrote in the previous lines. I hope I understood your question correctly. Otherwise, please let me know.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Statistics and Linear Algebra 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!