MATLAB Answers

0

how to retain the pulses of a specific duration and delete the rest ?

Asked by pavan sunder on 2 Nov 2016
Latest activity Answered by Kushagr Gupta on 7 Nov 2016
i have a vetor which has pulses of different durations. I want to capture the pulses with a specific duration and delete the rest. Also the captured pulses should be displayed in the same time interval as in the original vector .kindly help me with a matlab code.

  0 Comments

Sign in to comment.

1 Answer

Answer by Kushagr Gupta on 7 Nov 2016

I understand that you wish to detect pulse widths along with their time-stamps and threshold the signal based on width.
The function 'pulsewidth' can be very useful in this regard as it outputs the widths and time information as well. Documentation for the same can be found at :
Once the widths and start-time of each pulse is known it can be used to capture wanted pulses. Following code snippet shows how 'pulsewidth' can be used:
>>A = rand(100,1);
>>B = A > 0.5; % creating a random signal of 1's and 0's
>>[wid, P_start, P_end, midL] = pulsewidth(double(B));
>>PulseInd=P_start+0.5 % index where a pulse begins
Thus "PulseInd" contains the index where a pulse begins and "wid" contains the width of that particular pulse. Using this information the signal can be thresholded and desired result obtained.

  0 Comments

Sign in to comment.