Come calcolare il THD in MATLAB

April 25

Come calcolare il THD in MATLAB


distorsione armonica totale o THD, è una misura di quanta distorsione è presente in un segnale a causa di oscillazioni ad armoniche del segnale di ingresso. THD, e THD + N - una variante incluso il rumore, sono misure comuni al momento di valutare la qualità audio. MATLAB è un pacchetto di programmazione matematica che può essere utilizzato per calcolare THD con poche linee di codice.

istruzione

1 Importare i dati del segnale, o generare un segnale di prova a scopo dimostrativo.

t = 0: 1000;
Segnale = cos (2

pi 30 t) + 0.04 sin (2 pi 60 t) + 0,01 cos (pi 2 90 * t);

2 Creare uno spettro utilizzando la funzione dspdata.msspectrum ().

periodogram_obj = spectrum.periodogram;
mass_spec = dspdata.msspectrum (periodogram_obj, segnale, 'Fs', 1000, 'NFFT', la lunghezza (segnale));

3 Estrarre la grandezza dello spettro alle frequenze armoniche.

my_data = mass_spec.Data (31,61,91);

4 Calcolare il THD, la somma delle grandezze meno il segnale di ingresso diviso per il segnale di ingresso.

THD = sqrt (somma (my_data (2: fine))) / sqrt (my_data (1));

5 Moltiplicare per 100 per esprimere THD o THD + N, in percentuale.

THD_pct = 100 * THD;