Data AcQuisition And Real-Time AnalysisScope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
Contact us about
Frequency Counter - Spectral Event Counting (SpecTot)
This is a special event counter mode for use when events can not be distiguished by a simple level threshold, as required by the Total mode. When SpecTot is active, an event is counted only when the spectral content between the solid and dotted Spectrum cursors exceeds the absolute value of Trigger Level.
In Delta cursor mode this requires at least one of the included spectral lines to exceed Trigger Level; in Sigma mode the RMS value of the total included energy must exceed this threshold, even if no individual line does.
Unlike ordinary Total mode, SpecTot only considers signal samples that are used to create the spectrum; samples between updates are ignored. If Trigger is active, a normal Slope and Level threshold function (with Hysteresis, if desired) is used to trigger the update; SpecTot then uses the Level value as its spectral threshold. Trigger Holdoff works as usual in this case.
Because SpecTot uses all the samples of the trace to obtain the spectrum that is used to determine the presence of an event, it generally can't resolve multiple events that fall within that sample set. (Total mode, by comparison, can count hundreds of individual events per trace.)
Also unlike other Frequency Counter functions, including normal Total, SpecTot can work with Trigger off. In this case the most recent 1024 samples of data are used on each trace update, and SpecTot compares their spectrum to Trigger Level, even though no conventional trigger action takes place.
If the Trace Update Interval is set to 10 msec (default on systems later than Win9x), then at a 48 kHz sample rate only 480 samples elapse between updates. To get the needed 1024 samples, 544 are used from the prior trace. In this case all input samples are considered and none are skipped.
Likewise at 20 msec only 960 samples elapse between updates, but at 30 msec there are 1440 samples, so 416 are ignored between updates. Hence, you should keep the update interval to a minimum when using SpecTot.
Trigger Holdoff should typically be used with untriggered SpecTot. It provides the same "dead time" between counted events as it does with normal triggering, but here the time of an event is considered to be the start of the trace in which the designated spectrum region exceeds threshold. When a SpecTot event is found, subequent traces will not be scanned by SpecTot until the Holdoff time is elapsed.
Holdoff is particularly important with untriggered SpecTot since some samples are considered twice when the updates happen faster than the next 1024 samples can be obtained. If an event consists of a long tone burst, for example, it could appear in two adjacent datasets (and thus be double-counted) even though it may be shorter than a single 1024-sample individual set. Setting Holdoff longer than the event length solves this problem.
But there is also a problem with untriggered SpecTot and short events: If the event straddles two adjacent datasets, the energy will be divided between them and may not be enough to reach the trigger threshold in either one. Hence, it is best not to use untriggered SpecTot for events that are much shorter than 1024 samples. If you need to do this, be sure to test thoroughly to make sure you are not missing counts.
How do you decide whether to use triggered or untriggered SpecTot? In general, the reason to use SpecTot in the first place is that you can't find a trigger setting that will reliably accept wanted events and reject unwanted ones in the normal Total mode, so you might think that triggered SpecTot is unlikely to be useful. However, it is actually preferable to use this in many cases.
For example, suppose the signal being analyzed consists of animal calls, and you want to count only certain types of calls... perhaps only danger warning calls, but not social contact calls. Or maybe there are multiple species present and you want to count calls from only one. If you can set the trigger controls to reliably distinguish calls (of any type) from background noises, then you may be able to use SpecTot to further select only the subset you want.
The trick is that the best value of Trigger Level for the spectral test may not be the best value for triggering on calls in general. If you can't find a good compromise, you will need to use untriggered SpecTot.
That will also be the case if there is a high level of continuous background noise, with only spectrum differences to distinguish a wanted event.
Likewise, if there could be multiple calls arriving at the same time from different individuals, a trigger on an unwanted call could block out a wanted call that arrives during the Trigger Holdoff interval of the first call.
FcountMode=SpectTot or FcountMode=4 sets the Frequency Counter to SpecTot mode. See Macro Notes under Frequency Counter - Hertz Measurement for the complete list of mode names and numbers.
Freq is an internal variable that holds the current Frequency Counter readout value, dependent on the chosen mode (Hz, RPM, msec, Total, or SpecTot). You can assign it to a variable such as F via F=Freq, or you can display it via Msg=Freq, or use it directly in an expression.
Note that the Total variable does not return valid values in SpecTot mode, only in Hz, RPM, or msec modes.
Questions? Comments? Contact us!We respond to ALL inquiries, typically within 24 hrs.
Over 35 Years of Innovative Instrumentation
© Copyright 2007 - 2023 by Interstellar Research
All rights reserved