필터 지우기
필터 지우기

How to filter out peaks in a signal in Simulink?

조회 수: 13 (최근 30일)
Darshan Reddy
Darshan Reddy 2018년 8월 23일
댓글: Darshan Reddy 2018년 8월 28일
I want to filter out peaks in signals in Simulink without causing a delay in a signal. I have tried median filters but I need a large sliding window value (20+) to filter out peaks, doing so will introduce a large delay in the output signal which is undesirable. Is there another way to effectively filter out peaks without causing a significant delay in the output ?
Here is an example image of how a signal looks like.The peaks here are at 15s-16s mark.
Any help would be greatly appreciated. Thanks in advance!

채택된 답변

Naman Chaturvedi
Naman Chaturvedi 2018년 8월 27일
Hello Darshan,
You cannot filter the signal without some delay. You can choose the low pass filter appropriate for your purpose with some delay. It is not possible to perform a zero-phase filter in real-time because a zero-phase filter requires filter coefficients that are symmetric around zero. That means that the filter is non-causal, or that current output depends on future input. This of course is not possible in the real-time case (simulink) and can be faked as in the case of filtfilt in MATLAB during post-processing.
You can even post process the signal by Compensate for the Delay Introduced by an FIR Filter or passing the signal again through a conjugate of the filter used in the simulink in the first place.
  댓글 수: 1
Darshan Reddy
Darshan Reddy 2018년 8월 28일
Hi Naman,
I can imagin it being difficult to do it in simulink since it is in real-time and in my case, the signals also needs to be filtered in real-time. So, I can't make use of any post processing methods too.
Anyway, thanks for the info.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Filter Design and Analysis에 대해 자세히 알아보기

제품


릴리스

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by