Difference between revisions of "THD Sweep Measurement"

From OROS Wiki
Jump to navigation Jump to search
Β 
(48 intermediate revisions by the same user not shown)
Line 1: Line 1:
=== πŸ’  THD Sweep Measurement Utility - User Guide ==
== THD SWEEP MEASUREMENT - USER GUIDE ==
''Master the art of measuring Total Harmonic Distortion with style''


Welcome to the '''Total Harmonic Distortion (THD) Sweep Utility''' documentation. This tool is a high-performance bridge between '''OROS NVGate''' and real-time THD analysis, specifically optimized for sine sweep measurements.
[[File:sweep.png|400px]]


=== πŸš€ Overview ===


The utility automates the tracking of a moving sine peak (sweep) to compute distortion THD in real-time.
__TOC__


==== πŸ’Ž Key Features ====
{| style="width:100%; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 30px; border-radius: 10px; margin: 20px 0; text-align: center;"
* '''Real-Time Tracking''': Follows the sweep peak across the frequency spectrum.
|-
* '''High-Precision THD''': Calculates THD using the fundamental + 9 harmonics.
| style="font-size: 2.5em; font-weight: bold;" | 🎡 THD SWEEP MEASUREMENT
* '''Live Data Feedback''': Pushes results (%, dB, and Frequency) back into NVGate.
|-
* '''Integrated Diagnostics''': One-click verification of the entire measurement chain.
| style="font-size: 1.2em; opacity: 0.95;" | Professional Acoustic Testing Made Simple
|}


=== πŸ› οΈ NVGate Pre-Requisites ===
---


Before running the software, ensure your NVGate project is set up as follows:
== Install ==


# '''Windows Setup''':
Download THD measurement :
#* '''Reference Window''' (Window2): FFT trace of the source signal (Generator output).
#* '''Response Window''' (Window1): FFT trace of the tested device (Microphone/Sensor).
# '''Marker Setup''':
#* Add a '''Max Marker''' in the Reference Window.
#* Add a '''Harmonic Marker''' in the Response Window.
# '''DC Inputs''':
#* Enable '''Simulated DC Inputs 1, 2, and 3''' in the Frontend configuration.


=== βš™οΈ Configuration Reference (The "Brain" of the App) ===
[https://partnerzone.digigram.com/s/RgiG5JFxNpjG5C6 THD sweep measurement] April 2026


The configuration panel maps the utility's logic to your specific NVGate project. '''Applying these settings correctly is critical for the tracking to work.'''
=== Install model===


{| class="wikitable"
Put the model folder : "THD computation" on model database of NVgate.
(By default : C:\OROS\NVGate data\Workbook Library\User\ )
Β 
=== Requirement ===
Β 
NVGate V17 or upper.
Β 
Option : DC simulated on NVGate front end.
Β 
== ⚑ QUICK START - 30 SECONDS ==
Β 
{| style="width: 100%; border-collapse: collapse; margin: 20px 0;"
|-
| style="background: #f0f4ff; padding: 20px; border-left: 5px solid #667eea; font-weight: bold; width: 10%;" | STEP
| style="background: #f0f4ff; padding: 20px; border-left: 5px solid #667eea; font-weight: bold; width: 90%;" | ACTION
|-
| style="padding: 15px; background: #fafbff;" | 1️⃣ Launch
| style="padding: 15px; background: #fafbff;" | Launch NVgate in connected mode and load the THD computation model Double-click <code>THD_Sweep_Measurement.exe</code>
|-
| style="padding: 15px; background: white;" | 2️⃣ Connect
| style="padding: 15px; background: white;" | Put the sweep sine signal on channel 4️⃣ ; put the response on channel 1️⃣
|-
| style="padding: 15px; background: #fafbff;" | 3️⃣ Start
| style="padding: 15px; background: #fafbff;" | Start the THD_Sweep_Measurement.exe and Click green <code>β–Ά START</code> button
|-
| style="padding: 15px; background: white;" | 4️⃣ Monitor
| style="padding: 15px; background: white;" | Watch 4 metrics update live , THD and frequency will also be injected on NVGate channels DC simulated.
|-
| style="padding: 15px; background: #fafbff;" | 5️⃣ Stop
| style="padding: 15px; background: #fafbff;" | Click red <code>β–  STOP</code> button
|}
Β 
<div style="background: #e8f5e9; border-left: 5px solid #4caf50; padding: 20px; margin: 20px 0; border-radius: 5px;">
βœ… '''That's it!''' Your first THD measurement is complete. You're now a certified acoustic engineer. (Not really, but it feels good.)
</div>
Β 
---
Β 
Β 
Β 
=== πŸ“Š Four Metric Cards ===
Β 
The heart of the interface. These four numbers tell the whole story:
Β 
{| style="width: 100%; margin: 20px 0; border-collapse: collapse;"
|-
| style="background: linear-gradient(135deg, #667eea, #764ba2); color: white; padding: 25px; text-align: center; font-weight: bold; width: 25%; border: none;" | πŸ“ˆ<br/>THD (dB)
| style="background: linear-gradient(135deg, #667eea, #764ba2); color: white; padding: 25px; text-align: center; font-weight: bold; width: 25%; border: none;" | πŸ“Š<br/>THD (%)
| style="background: linear-gradient(135deg, #667eea, #764ba2); color: white; padding: 25px; text-align: center; font-weight: bold; width: 25%; border: none;" | πŸ“‘<br/>Frequency
| style="background: linear-gradient(135deg, #667eea, #764ba2); color: white; padding: 25px; text-align: center; font-weight: bold; width: 25%; border: none;" | ⚑<br/>Fundamental
|-
| style="background: #f5f5f5; padding: 20px; text-align: center; border: 1px solid #ddd;" | Harmonic distortion (log scale)
| style="background: #f5f5f5; padding: 20px; text-align: center; border: 1px solid #ddd;" | Harmonic distortion (%)
| style="background: #f5f5f5; padding: 20px; text-align: center; border: 1px solid #ddd;" | Current sweep point
| style="background: #f5f5f5; padding: 20px; text-align: center; border: 1px solid #ddd;" | Signal strength
|-
| style="background: white; padding: 20px; text-align: center; border: 1px solid #ddd; font-family: monospace; font-weight: bold; color: #667eea;" | +5.42 dB
| style="background: white; padding: 20px; text-align: center; border: 1px solid #ddd; font-family: monospace; font-weight: bold; color: #667eea;" | 58.294 %
| style="background: white; padding: 20px; text-align: center; border: 1px solid #ddd; font-family: monospace; font-weight: bold; color: #667eea;" | 1234.56 Hz
| style="background: white; padding: 20px; text-align: center; border: 1px solid #ddd; font-family: monospace; font-weight: bold; color: #667eea;" | 5.0e-01 V
|}
Β 
== 🎯 UNDERSTANDING YOUR RESULTS ==
Β 
=== THD (%) - The Easy Number ===
Β 
<div style="background: linear-gradient(135deg, #c8e6c9, #a5d6a7); padding: 25px; border-radius: 10px; margin: 20px 0; color: #1b5e20;">
Β 
'''What is it?''' Percentage of unwanted harmonics in your signal.
Β 
Think of it this way:
* THD 5% = 95% pure signal, 5% noise
* THD 20% = 80% pure signal, 20% noise
Β 
'''The Quality Scale:'''
Β 
{| style="width: 100%; background: white; border-collapse: collapse; margin-top: 15px;"
|-
| style="padding: 12px; background: #fff3e0; border: 1px solid #ffe0b2; font-weight: bold;" | 🌟 1% - 5%
| style="padding: 12px; background: #fff3e0; border: 1px solid #ffe0b2;" | Excellent - Professional grade equipment
|-
| style="padding: 12px; background: #e8f5e9; border: 1px solid #c8e6c9; font-weight: bold;" | βœ… 5% - 15%
| style="padding: 12px; background: #e8f5e9; border: 1px solid #c8e6c9;" | Good - Solid speaker performance
|-
| style="padding: 12px; background: #fff9c4; border: 1px solid #fff59d; font-weight: bold;" | ⚠️ 15% - 30%
| style="padding: 12px; background: #fff9c4; border: 1px solid #fff59d;" | Acceptable - Consumer level equipment
|-
| style="padding: 12px; background: #ffebee; border: 1px solid #ffcdd2; font-weight: bold;" | ❌ > 30%
| style="padding: 12px; background: #ffebee; border: 1px solid #ffcdd2;" | Poor - Time for an upgrade πŸ› οΈ
|}
Β 
</div>
Β 
=== THD (dB) - The Technical Number ===
Β 
<div style="background: linear-gradient(135deg, #bbdefb, #90caf9); padding: 25px; border-radius: 10px; margin: 20px 0; color: #0d47a1;">
Β 
Same measurement as THD (%) but in decibels (logarithmic scale).
Β 
'''Quick Conversion Chart:'''
Β 
{| style="width: 100%; background: white; border-collapse: collapse; margin-top: 15px;"
|-
| style="padding: 12px; background: #f5f5f5; border: 1px solid #e0e0e0; font-weight: bold; text-align: center;" | THD %
| style="padding: 12px; background: #f5f5f5; border: 1px solid #e0e0e0; font-weight: bold; text-align: center;" | THD dB
| style="padding: 12px; background: #f5f5f5; border: 1px solid #e0e0e0; font-weight: bold; text-align: center;" | Quality
|-
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | 1%
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center; font-family: monospace;" | -40 dB
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | 🌟 Perfect
|-
|-
! Field !! Technical Role !! Detailed Function
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | 3%
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center; font-family: monospace;" | -30 dB
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | βœ… Great
|-
|-
| '''Window Ch4 (Sweep)''' || '''Reference Source''' || The utility looks in this window to find the peak frequency of the sweep. It uses the Max Marker to "identify" where the generator is at any given millisecond.
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | 10%
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center; font-family: monospace;" | -20 dB
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | βœ… Good
|-
|-
| '''Window Ch1 (Resp)''' || '''Analysis Target''' || This is where the actual THD measurement happens. The tool reads the signal amplitude from this window to calculate distortion relative to the reference frequency.
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | 30%
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center; font-family: monospace;" | -10 dB
| style="padding: 12px; border: 1px solid #e0e0e0; text-align: center;" | ⚠️ Poor
|}
Β 
</div>
Β 
---
Β 
== βš™οΈ CONFIGURATION ==
Β 
=== When Do I Need to Change This? ===
Β 
<div style="background: #e3f2fd; border-left: 5px solid #2196f3; padding: 20px; margin: 20px 0; border-radius: 5px;">
Β 
'''Honest answer: Almost never.'''
Β 
The default settings work for 95% of users. Only change if your NVGate project has:
* Different window names
* Different marker numbers
* Different DC input addresses
Β 
If you're not sure β†’ Don't change anything. It works.
Β 
</div>
Β 
The NVgate Model generate a sweep sine on the output, feel free to modify the settings if you need. We recommand to not put a sweep speed more than 0.05dec/s (or less) in logarithme for accurate results
Β 
=== How to Access Configuration ===
Β 
Click on '''β–Ά Configuration''' (section expands)
Β 
=== Important Settings ===
Β 
{| style="width: 100%; border-collapse: collapse; margin: 15px 0;"
|-
|-
| '''Max Marker #''' || '''Frequency Tracker''' || This marker is the "eyes" of the application. It constantly reports the X-axis (frequency) position of the strongest signal in the Sweep window.
| style="background: #667eea; color: white; padding: 12px; font-weight: bold; width: 30%;" | Setting
| style="background: #667eea; color: white; padding: 12px; font-weight: bold; width: 25%;" | Default
| style="background: #667eea; color: white; padding: 12px; font-weight: bold; width: 45%;" | When to Change
|-
|-
| '''Harmonic Marker #''' || '''Harmonic Sampler''' || The utility '''physically repositions''' this marker to the frequency found by the Max Marker. Once moved, it reads the Fundamental (H1) and all Harmonics (H2-H10) to compute the THD.
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd;" | Window (sweep)
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd; font-family: monospace;" | Window2
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd;" | Your sweep FFT has different name
|-
|-
| '''Nb Harmonics''' || '''Calculation Depth''' || Defines how many harmonics are summed. Default is 9, meaning the tool analyzes up to the 10th order (Fundamental + 9 harmonics).
| style="padding: 12px; border: 1px solid #ddd;" | Window (response)
| style="padding: 12px; border: 1px solid #ddd; font-family: monospace;" | Window1
| style="padding: 12px; border: 1px solid #ddd;" | Your response FFT has different name
|-
|-
| '''DC1 IDN (THD %)''' || '''Linear Output Bridge''' || The '''Instrument Description Name (IDN)''' is the internal address in NVGate. This setting pushes the calculated THD percentage directly into the first Simulated DC input.
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd;" | Number of harmonics
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd; font-family: monospace;" | 9
| style="padding: 12px; background: #f5f5f5; border: 1px solid #ddd;" |
|}
Β 
=== How to Apply Changes ===
Β 
# Modify field value
# Click '''Apply Configuration'''
# Log displays "Configuration applied" βœ“
# Done!
Β 
---
Β 
== ❓ FREQUENTLY ASKED QUESTIONS ==
Β 
Β 
=== Q: I Have only one channels. Can i take the max marker on windows 1 ?===
Β 
'''A:''' Yes, on this configuration, put windows 1 for window (sweep) and select the good number for the marker.
Β 
=== Q: Is THD 5% good? ===
Β 
'''A:''' For a speaker? Excellent! You can be proud of that equipment. πŸŽ‰
Β 
=== Q: Why does THD change with frequency? ===
Β 
'''A:''' Because speakers aren't perfect at all frequencies. Some frequencies cause more distortion than others. That's physics being weird.
Β 
=== Q: Can I use this on any speaker? ===
Β 
'''A:''' Yes! Desktop speakers, studio monitors, subwoofers, car speakers - if it's connected to NVGate, we can measure it.
Β 
=== Q: How many times should I measure? ===
Β 
'''A:''' Once for curiosity. Three times for reliability. Ten times if you're publishing a paper.
Β 
=== Q: Can I export the results? ===
Β 
'''A:''' Yes! Copy text from the log console and paste into Excel, Word, or wherever you need it.
Β 
=== Q: What if my project has different settings? ===
Β 
'''A:''' Use the Configuration panel to adjust. It's literally made for this.
Β 
=== Q: Does this work over WiFi? ===
Β 
'''A:''' No. It only works locally (same computer or local network). WiFi would add too much latency.
Β 
---
Β 
===disclaimer===
Β 
1) This program is delivered free of charge for NVGate V12. Support is not automatically provided on this tool.
Β 
2) For any other requests, please contact your local distributor or the [mailto:customer.care@oros.com OROS Customer Care department.]
Β 
---
Β 
{| style="width: 100%; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 30px; border-radius: 10px; margin: 30px 0; text-align: center;"
|-
|-
| '''DC2 IDN (THD dB)''' || '''Logarithmic Bridge''' || Similar to DC1, but pushes the THD value converted to decibels (dB), allowing you to log or display dB values directly inside NVGate.
| style="font-size: 1.5em; font-weight: bold;" | You're Ready!
|-
|-
| '''DC3 IDN (Freq)''' || '''Frequency Bridge''' || Pushes the current tracked frequency (in Hz) to a DC input. This allows NVGate to plot THD versus Frequency in a Cross-Plot or Waterfall.
| style="font-size: 1.1em; margin-top: 10px; opacity: 0.95;" | Go measure some THD and make your speakers proud 🎡
|}
|}


''πŸ’‘ '''Pro Tip''': If you change these values, click '''"Apply Configuration"''' to update the logic immediately. If a window name is wrong, the Diagnostic will immediately turn RED.''
== Technical appendix THD Formulas ==
Β 
=== THD Percentage (DC1) ===


=== πŸ•ΉοΈ Operational Workflow ===
'''Formula:'''


==== 1️⃣ Connectivity Test ====
<code>THD(%) = (√(H2Β² + H3Β² + ... + H9Β²) / H1) Γ— 100</code>
Click the '''πŸ” DIAGNOSTIC''' button first.
* It checks if NVGate is open.
* It verifies that the markers exist in the right windows.
* It tests writing to the DC inputs and reads them back to ensure accuracy.
* '''Result''': If the log turns '''GREEN''', you are ready to measure!


==== 2️⃣ Measuring ====
Where:
Click '''β–Ά START'''. Β 
* H1 = Fundamental amplitude (1st harmonic)
* The utility sends a ''Run'' command to NVGate.
* H2, H3, ..., H9 = Harmonic amplitudes (2nd to 9th)
* It stabilizes for 2 seconds (allowing the FFT to populate).
* √ = Square root
* It begins the loop: '''Track Peak β†’ Move Harmonics β†’ Calculate THD β†’ Write to DC'''.


==== 3️⃣ Monitoring ====
'''Example:'''
* '''Purple Card''': Live THD in dB (Standard for audio).
* H1 (fundamental) = 1.0 V
* '''Yellow Card''': Live THD in % (Linear scale).
* H2 = 0.02 V
* '''Teal/Blue Cards''': Current tracked Frequency and Fundamental amplitude.
* H3 = 0.01 V
* H4 = 0.01 V
* (all others = 0)


=== πŸ“Š Technical Specifications ===
Calculation:
* Harmonics RMS = √(0.02² + 0.01² + 0.01²) = √0.0006 = 0.0245 V
* THD% = (0.0245 / 1.0) Γ— 100 = '''2.45%'''


==== Data Mapping ====
---
The utility automatically configures NVGate Simulated DC inputs with the following:


* '''DC 1 (THD %)''': Magnitude set to ''Percentage'' (0.0 to 100.0).
=== THD in Decibels (DC2) ===
* '''DC 2 (THD dB)''': Magnitude set to ''Ratio'' (-200.0 to 0.0 dB).
* '''DC 3 (Frequency)''': Magnitude set to ''Frequency'' (0.0 to 40,000.0 Hz).


==== THD Formula ====
'''Formula:'''
The tool uses the standard RMS summation:
<pre>
THD = sqrt(H2Β² + H3Β² + ... + H10Β²) / H1
</pre>
''Where H1 is the Fundamental and H2-H10 are the Harmonics.''


=== ❓ Troubleshooting ===
<code>THD(dB) = 20 Γ— log₁₀(√(H2Β² + H3Β² + ... + H9Β²) / H1)</code>


* '''Log is RED?''': Check if the Window names in NVGate match exactly (case sensitive) with the names in the Configuration panel.
Or from THD%:
* '''"Access Denied" Error''': Ensure no other instance of the software is running in the background.
Β 
* '''Values not updating?''': Ensure NVGate is in '''RUN''' mode and the traces are active.
<code>THD(dB) = 20 Γ— log₁₀(THD% / 100)</code>
Β 
Where:
* log₁₀ = Base-10 logarithm
* All H values same as above
Β 
Β 
'''Example from above:'''
* Ratio = 0.0245 / 1.0 = 0.0245
* log₁₀(0.0245) = -1.611
* THD(dB) = 20 Γ— (-1.611) = '''βˆ’32.2 dB'''
Β 
Or: THD(dB) = 20 Γ— log₁₀(2.45 / 100) = 20 Γ— (βˆ’1.611) = '''βˆ’32.2 dB'''


---
---
''Generated by OROS Gemini CLI - 2026''


* '''Maximum Asynchronous Mode''': There is no artificial delay between measurement cycles.
=== Quick Conversion Table ===
* '''Latency''': A total cycle time (Frequency Read -> Calculation -> DC Write) of < 150ms is recommended.
Β 
* '''Recommended Sweep Speed''': '''4 octaves/min'''. This ensures a good balance between measurement speed and tracking accuracy.
{| class="wikitable"
* '''FFT Windowing''': Use a '''Hanning''' window for the best frequency resolution during a sweep sine.
|-
! THD Percentage !! THD in dB !! Quality Rating
|-
| 0.5% || βˆ’46 dB || Excellent (pro audio)
|-
| 1% || βˆ’40 dB || Very Good
|-
| 3% || βˆ’30 dB || Good
|-
| 5% || βˆ’26 dB || Acceptable
|-
| 10% || βˆ’20 dB || Fair
|-
| 30% || βˆ’10 dB || Poor
|-
| 100% || 0 dB || Unusable
|}
Β 
Β 
---


=== πŸ’» Development and Compilation ===
=== Three DC Outputs ===


==== Project Structure ====
{| class="wikitable"
{| class="wikitable"
! File !! Role
|-
|-
| thd_gui.py || Graphical user interface (Tkinter)
! Output Channel !! Measurement !! Formula !! Typical Range
|-
| DC1 || THD % || (Harmonics RMS / H1) Γ— 100 || 0 to 100%
|-
|-
| thd_sweep_measurement.py || Core calculation and NVGate communication
| DC2 || THD dB || 20 Γ— log₁₀(ratio) || βˆ’200 to 0 dB
|-
|-
| Toolkit NVdrive/ || pynvdrive library to control NVGate
| DC3 || Frequency || Sweep frequency at current point || 0 to 40 kHz
|}
|}


==== Recompiling the Executable ====
---
<syntaxhighlight lang="bash">
Β 
pyinstaller --onefile --windowed --name "THD_Sweep_Measurement" --add-data "Toolkit NVdrive;Toolkit NVdrive" thd_gui.py
=== Coherence Between DC1 and DC2 ===
</syntaxhighlight>
Β 
The two THD channels always maintain mathematical coherence. Given DC1 value (THD%), you can always calculate DC2:
Β 
<code>DC2(dB) = 20 Γ— log₁₀(DC1(%) / 100)</code>
Β 
'''Example:'''
* If DC1 displays 5.5%
* Then DC2 = 20 Γ— log₁₀(0.055) = 20 Γ— (βˆ’1.26) = '''βˆ’25.2 dB'''
Β 
This relationship is guaranteed by the software mathematics.
Β 
---
Β 
=== Why Two Formats (% and dB)? ===
Β 
'''THD %:'''
* Easier to understand for non-technical users
* Direct representation: "5% distortion"
* Useful for product specifications
Β 
'''THD dB:'''
* Logarithmic scale: easier to see small differences
* Standard in audio/RF engineering
* Used in all standards and specifications
* Better for comparing measurements at different levels


=== ❓ Troubleshooting ===
Both represent the same information, just in different scales.


* '''"Error 4 bytes"''': Network buffer error handled automatically by a 20ms pause. Check local network load if it persists.
---
* '''THD at 0% or --''': Ensure the signal is present in Window1 and the Max marker in Window2 detects a valid frequency (> 0 Hz).
* '''NVGate not connected''': Verify that NVGate is running and the "NVDrive" option is enabled in settings.

Latest revision as of 16:36, 15 April 2026

THD SWEEP MEASUREMENT - USER GUIDE

Master the art of measuring Total Harmonic Distortion with style

Sweep.png


🎡 THD SWEEP MEASUREMENT
Professional Acoustic Testing Made Simple

---

Install

Download THD measurement :

THD sweep measurement April 2026

Install model

Put the model folder : "THD computation" on model database of NVgate. (By default : C:\OROS\NVGate data\Workbook Library\User\ )

Requirement

NVGate V17 or upper.

Option : DC simulated on NVGate front end.

⚑ QUICK START - 30 SECONDS

STEP ACTION
1️⃣ Launch Launch NVgate in connected mode and load the THD computation model Double-click THD_Sweep_Measurement.exe
2️⃣ Connect Put the sweep sine signal on channel 4️⃣ ; put the response on channel 1️⃣
3️⃣ Start Start the THD_Sweep_Measurement.exe and Click green β–Ά START button
4️⃣ Monitor Watch 4 metrics update live , THD and frequency will also be injected on NVGate channels DC simulated.
5️⃣ Stop Click red β–  STOP button

βœ… That's it! Your first THD measurement is complete. You're now a certified acoustic engineer. (Not really, but it feels good.)

---


πŸ“Š Four Metric Cards

The heart of the interface. These four numbers tell the whole story:

πŸ“ˆ
THD (dB)
πŸ“Š
THD (%)
πŸ“‘
Frequency
⚑
Fundamental
Harmonic distortion (log scale) Harmonic distortion (%) Current sweep point Signal strength
+5.42 dB 58.294 % 1234.56 Hz 5.0e-01 V

🎯 UNDERSTANDING YOUR RESULTS

THD (%) - The Easy Number

What is it? Percentage of unwanted harmonics in your signal.

Think of it this way:

  • THD 5% = 95% pure signal, 5% noise
  • THD 20% = 80% pure signal, 20% noise

The Quality Scale:

🌟 1% - 5% Excellent - Professional grade equipment
βœ… 5% - 15% Good - Solid speaker performance
⚠️ 15% - 30% Acceptable - Consumer level equipment
❌ > 30% Poor - Time for an upgrade πŸ› οΈ

THD (dB) - The Technical Number

Same measurement as THD (%) but in decibels (logarithmic scale).

Quick Conversion Chart:

THD % THD dB Quality
1% -40 dB 🌟 Perfect
3% -30 dB βœ… Great
10% -20 dB βœ… Good
30% -10 dB ⚠️ Poor

---

βš™οΈ CONFIGURATION

When Do I Need to Change This?

Honest answer: Almost never.

The default settings work for 95% of users. Only change if your NVGate project has:

  • Different window names
  • Different marker numbers
  • Different DC input addresses

If you're not sure β†’ Don't change anything. It works.

The NVgate Model generate a sweep sine on the output, feel free to modify the settings if you need. We recommand to not put a sweep speed more than 0.05dec/s (or less) in logarithme for accurate results

How to Access Configuration

Click on β–Ά Configuration (section expands)

Important Settings

Setting Default When to Change
Window (sweep) Window2 Your sweep FFT has different name
Window (response) Window1 Your response FFT has different name
Number of harmonics 9

How to Apply Changes

  1. Modify field value
  2. Click Apply Configuration
  3. Log displays "Configuration applied" βœ“
  4. Done!

---

❓ FREQUENTLY ASKED QUESTIONS

Q: I Have only one channels. Can i take the max marker on windows 1 ?

A: Yes, on this configuration, put windows 1 for window (sweep) and select the good number for the marker.

Q: Is THD 5% good?

A: For a speaker? Excellent! You can be proud of that equipment. πŸŽ‰

Q: Why does THD change with frequency?

A: Because speakers aren't perfect at all frequencies. Some frequencies cause more distortion than others. That's physics being weird.

Q: Can I use this on any speaker?

A: Yes! Desktop speakers, studio monitors, subwoofers, car speakers - if it's connected to NVGate, we can measure it.

Q: How many times should I measure?

A: Once for curiosity. Three times for reliability. Ten times if you're publishing a paper.

Q: Can I export the results?

A: Yes! Copy text from the log console and paste into Excel, Word, or wherever you need it.

Q: What if my project has different settings?

A: Use the Configuration panel to adjust. It's literally made for this.

Q: Does this work over WiFi?

A: No. It only works locally (same computer or local network). WiFi would add too much latency.

---

disclaimer

1) This program is delivered free of charge for NVGate V12. Support is not automatically provided on this tool.

2) For any other requests, please contact your local distributor or the OROS Customer Care department.

---

You're Ready!
Go measure some THD and make your speakers proud 🎡

Technical appendix THD Formulas

THD Percentage (DC1)

Formula:

THD(%) = (√(H2Β² + H3Β² + ... + H9Β²) / H1) Γ— 100

Where:

  • H1 = Fundamental amplitude (1st harmonic)
  • H2, H3, ..., H9 = Harmonic amplitudes (2nd to 9th)
  • √ = Square root

Example:

  • H1 (fundamental) = 1.0 V
  • H2 = 0.02 V
  • H3 = 0.01 V
  • H4 = 0.01 V
  • (all others = 0)

Calculation:

  • Harmonics RMS = √(0.02Β² + 0.01Β² + 0.01Β²) = √0.0006 = 0.0245 V
  • THD% = (0.0245 / 1.0) Γ— 100 = 2.45%

---

THD in Decibels (DC2)

Formula:

THD(dB) = 20 Γ— log₁₀(√(H2Β² + H3Β² + ... + H9Β²) / H1)

Or from THD%:

THD(dB) = 20 Γ— log₁₀(THD% / 100)

Where:

  • log₁₀ = Base-10 logarithm
  • All H values same as above


Example from above:

  • Ratio = 0.0245 / 1.0 = 0.0245
  • log₁₀(0.0245) = -1.611
  • THD(dB) = 20 Γ— (-1.611) = βˆ’32.2 dB

Or: THD(dB) = 20 Γ— log₁₀(2.45 / 100) = 20 Γ— (βˆ’1.611) = βˆ’32.2 dB

---

Quick Conversion Table

THD Percentage THD in dB Quality Rating
0.5% βˆ’46 dB Excellent (pro audio)
1% βˆ’40 dB Very Good
3% βˆ’30 dB Good
5% βˆ’26 dB Acceptable
10% βˆ’20 dB Fair
30% βˆ’10 dB Poor
100% 0 dB Unusable


---

Three DC Outputs

Output Channel Measurement Formula Typical Range
DC1 THD % (Harmonics RMS / H1) Γ— 100 0 to 100%
DC2 THD dB 20 Γ— log₁₀(ratio) βˆ’200 to 0 dB
DC3 Frequency Sweep frequency at current point 0 to 40 kHz

---

Coherence Between DC1 and DC2

The two THD channels always maintain mathematical coherence. Given DC1 value (THD%), you can always calculate DC2:

DC2(dB) = 20 Γ— log₁₀(DC1(%) / 100)

Example:

  • If DC1 displays 5.5%
  • Then DC2 = 20 Γ— log₁₀(0.055) = 20 Γ— (βˆ’1.26) = βˆ’25.2 dB

This relationship is guaranteed by the software mathematics.

---

Why Two Formats (% and dB)?

THD %:

  • Easier to understand for non-technical users
  • Direct representation: "5% distortion"
  • Useful for product specifications

THD dB:

  • Logarithmic scale: easier to see small differences
  • Standard in audio/RF engineering
  • Used in all standards and specifications
  • Better for comparing measurements at different levels

Both represent the same information, just in different scales.

---