I'm trying to calculate the THD of a 8" speaker driver from the FFT of the current waveform in the driver under some test conditions. I understand the basic concept of adding up the power level of the harmonics in relation to the fundamental to get THD. I've been playing around with the method described on this page. My confusion is that in the FFT data from the oscilloscope the fundamental is not that close to 0dB at low levels or high levels. At a low levels of ~6W the fundamental is -10dB. At high a levels of ~180W the fundamental is +5dB. Should I be normalizing the FFT data so the fundamental is at 0dB before computing THD or not?
For example, in the ~180W test case normalizing the data so the fundamental is at 0dB gives me a THD of 20.05%. Leaving the data alone gives me a THD of 36.5%.
Normalizing shouldn't change the results. It's just a scaling factor that would be cancelled out.
Convert the dB values to power then THD = (Sum of power of harmonics / power of fundamental). Much easier than going to voltage like your link says to do for some reason...
Power = 10^(dB/10)
Yeah, it looks like the spreadsheet off that link assumes the fundamental is 0dB which is why the data is changing instead of using the fundamental. I'm going to change it later to use power and consider the fundamental.
Yes, I realize that. I was curious to compare the two. See how much THD is from the motor vs. the rest of the driver.
That depends on the signal level. That from the motor is relatively constant, that from the cone is proportional to excursion; most THD at normal listening levels is cone sourced. Once you hit xmax that from the motor becomes significant again, as both the motor and cone are clipping the fundamental, causing THD to skyrocket.