Find Geiger counter CPM

I am trying to find the counts per minute of a geiger counter signal using Simulink.
I managed to get the signal in a digital/binary form shown below:
I want to figure out how many pulses there are in a given timefram (1-3 seconds)

Respuestas (1)

madhan ravi
madhan ravi el 14 de Dic. de 2023
Editada: madhan ravi el 14 de Dic. de 2023

0 votos

Let A be your Interval test signal in timeseries format. Then
Pulses_1_3secs = nnz(out.A.Data((out.A.Time >= 1) & (out.A.Time <= 3))

4 comentarios

Robert
Robert el 14 de Dic. de 2023
I wanted the time average to be rolling, like from 0-2 seconds is ? pulses, 2-4 seconds is ? pulses, etc. I would assume that I would just use a for loop and counter, right.
Image Analyst
Image Analyst el 14 de Dic. de 2023
There are other ways, but yeah, that would work. In each 2 second period, are there the same number of samples (not counts but sample times or elements of your detection vector)? If so, you could use reshape:
data2d = reshape(data1D, numSamplesIn2Sec, []);
countsIn2Secs = sum(data2d, 1);
Robert
Robert el 15 de Dic. de 2023
By the way, I am using Simulink, so the method that you proposed may not work.
madhan ravi
madhan ravi el 15 de Dic. de 2023
The block under sum block in the second pic is *Unit Delay* block.
The first PWM block *Run at fixed interval* is ticked as model runs at fixed sample time.

Iniciar sesión para comentar.

Categorías

Más información sobre Simulink en Centro de ayuda y File Exchange.

Productos

Versión

R2023b

Preguntada:

el 14 de Dic. de 2023

Comentada:

el 15 de Dic. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by