LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

VC-Curves

Hi!

To calculate VC curves, the linearly weighted RMS value in the third octave bands, e.g. 1Hz to 80Hz, is required. The “SVT Fractional-octave Analysis.vi” can cover the frequency range, but cannot perform linear integration over a limited time (e.g. 125 ms or 1 s), continuously or repeatedly, in the third octave bands with an RMS value. Exponential, time-based evaluation is not permitted.
The linear integration available in the “SVT Fractional-octave Analysis.vi” runs from 0 to the present moment.


Does anyone have any ideas or experience with programming for calculating VC curves?

 

Thank you, BR ws.

0 Kudos
Message 1 of 10
(288 Views)

Hi Werner,

 

You're absolutely right, the “SVT Fractional-octave Analysis.vi” does support third-octave band analysis over the required frequency range (1 Hz to 80 Hz), but it performs cumulative RMS integration from time zero to the current moment.

For VC-curve evaluation, however, what's needed is linear RMS integration over fixed time windows (e.g., 125 ms or 1 s), repeated continuously. This type of time-limited, non-exponential integration is not supported directly by the standard VI.

 

I suggest building a custom LabVIEW VI that:

  • Uses the SVT Toolkit to apply third-octave band filters
    (Functions → Sound and Vibration → Octave → Third Octave SVT Third-octave Analysis VI - NI )
  • Segments the signal into fixed-length time windows
    (e.g., using a circular buffer to divide the incoming signal into 125 ms blocks for time-limited analysis)
  • Computes linear RMS values per band and per window
    (using RMS.vi or equivalent logic)

The VI should then display the RMS values per band in real time, and overlay the standard VC curves (VC-A to VC-G) as reference thresholds.

 

You can refer to this document for more details: Sound and Vibration Toolkit User Manual | PDF

 

If the Sound and Vibration Toolkit is not available, a  useful reference is this NI Community thread: Solved: Octave analysis (Algorithm) - NI Community

 

Best regards

0 Kudos
Message 2 of 10
(201 Views)

Hi!

 

If I segment the signal into fixed-length time windows, I would have to 'restart averaging' (set to TRUE). And then is would take about a litte bit more than a second till the filter is settled every cycle.
So it doesn't work .....

 

Best Regards

0 Kudos
Message 3 of 10
(179 Views)

Hi Werner,

 

Actually, "restart averaging" should be set to FALSE in this case. The filters need to run continuously to stay settled and restarting them every window would introduce transients and invalidate the RMS values, especially for short durations like 125 ms.

The segmentation into time windows should happen after filtering, using circular buffers, so that RMS can be computed linearly without affecting the filter state.

May I ask why you think it needs to be set to TRUE in your case?

 

Regards

0 Kudos
Message 4 of 10
(165 Views)

Hi

 

Something is not right in your specifications.

 

you cannot say anything about the level of a 1 Hz signal based on a 125 mS time signal segment.

 

You would need to integrate over 5 to 10 Sec for a reliable measurement.

 

Regards

 

0 Kudos
Message 5 of 10
(150 Views)

Hi,

 

I cannot follow your reasoning: if I always feed the VI with a time segment (e.g. 125 ms), I will receive a continuously linearly averaged value every 125 ms, not a new value for the last time segment.
Even if I set the time segment to, say, 10 ms, I will still receive a continuously linearly averaged value every 10 ms.
These values are not the desired ones, and further linear averaging (RMS value) is then double-averaged and incorrect.

For the VC curves, I always need the linear mean value (RMS) over the last 125 ms or 1 s, for example.

 

Perhaps I am misinterpreting your reasoning? Could you explain your reasoning to me somehow (a VI?) ?

 

Thank you.

 

Best regards 

0 Kudos
Message 6 of 10
(126 Views)

Hi, 
What I meant to suggest is a custom approach where the third-octave filters run continuously (outside the SVT VI), and the filtered signal is then segmented using circular buffers. The RMS would be computed directly on each buffer, giving you the true linear mean over the last 125 ms or 1 s, without cumulative effects.
As @softball rightly pointed out, this approach wouldn't work well for very low frequencies like 1 or 2 Hz, but it becomes meaningful for bands above at least 8 Hz.

Let me know if this works in your setup!

0 Kudos
Message 7 of 10
(121 Views)

Okay! So I need third-octave-filters starting with low frequencies outside the SVT. Where can I find a template?

 

BR

0 Kudos
Message 8 of 10
(106 Views)

Hi, 


you can build them using LV’s Butterworth Filter VI from the Signal Processing Palette 

Look this doc: Butterworth Filter VI - NI

 

Regards

0 Kudos
Message 9 of 10
(81 Views)

Hi,

 

Thank you. I got it. Now it's time to find the right low-cut- und high-cut frequnecies noticed in IEC 61260.

 

BR ws.

0 Kudos
Message 10 of 10
(40 Views)