If: No signal Then: number = "0"

2 views (last 30 days)
Iljar Dickhof
Iljar Dickhof on 24 Apr 2018
Commented: Jan on 1 May 2018
Is it possible for no signal to be equal to the number zero. As can be seen in the graph, with no signal I get a constant value from the previous time step, until it receives a signal again. These constantes run horizontally in the graph. Is it possible to equate these horizontal lines to zero?
  3 Comments
Ameer Hamza
Ameer Hamza on 24 Apr 2018

How can you decide which output is correct and what is no signal. You mentioned that

"with no signal I get a constant value"

so does this means if you get two constant values like (..., 1, 1, ...) consecutively, the second value is corresponding to no signal. If not? then after how much consecutive constant values, you will be sure that this is no signal.

Image Analyst
Image Analyst on 30 Apr 2018
Do you need to do this on a "live" signal constantly coming in? Or do you want to do this on a signal that has already been captured and put into a variable (possibly after being read in from a file)?

Sign in to comment.

Answers (1)

Jan
Jan on 24 Apr 2018
[B, N] = RunLength(Signal);
B(N > 2) = 0;
Signal = RunLength(B, N);
Now all elements which occur 3 or more times are set to 0.
  5 Comments
Iljar Dickhof
Iljar Dickhof on 30 Apr 2018
Hello,
I installed the C compiler and downloaded the code. All errors are now gone (which I am quite happy with). The graph can be seen in the attached appendix. Thank you for this result.
My code now looks like this:
*>> time = simout4.Time;
>> y = simout4.Data;
>> [B, N] = RunLength (y);
>> B (N> 2) = 0;
>> y = RunLength (B, N);
>> plot (time, y, 'r')
Simout4 is the signal coming from my simulink model.
Now my next question is as follows:
I work in Simulink and wondered if this signal could then be loaded into Simulink again. Then I can use it again in my model.
Jan
Jan on 1 May 2018
I do not work with Simulink, so I cannot give a reliable answer. But this is a new question. Please open a new thread, because it allows for keeping the overview, if you post one question per thread only.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!