Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

thd

Distorsión armónica total

Descripción

ejemplo

r = thd(x) devuelve la distorsión armónica total (THD) en dBc de la señal sinusoidal de valor real.x La distorsión armónica total se determina a partir de la frecuencia fundamental y los primeros cinco armónicos utilizando un periodograma modificado de la misma longitud que la señal de entrada. El periodo modificado utiliza una ventana Kaiser con 38.β

ejemplo

r = thd(x,fs,n) especifica la frecuencia de muestreo, y el número de armónicos (incluidos los fundamentales) que se utilizarán en el cálculo de THD.fs

r = thd(pxx,f,'psd') especifica la entrada como una estimación de densidad espectral de potencia unilateral (PSD). es un vector de frecuencias correspondiente a las estimaciones de PSD en .pxxfpxx

ejemplo

r = thd(pxx,f,n,'psd') especifica el número de armónicos (incluidos los fundamentales) que se utilizarán en el cálculo de THD.

ejemplo

r = thd(sxx,f,rbw,'power') especifica la entrada como un espectro de potencia unilateral. es el ancho de banda de resolución sobre el que se integra cada estimación de potencia.rbw

r = thd(sxx,f,rbw,n,'power') especifica el número de armónicos (incluidos los fundamentales) que se utilizarán en el cálculo de THD.

ejemplo

r = thd(___,'aliased') informa armónicos de lo fundamental que se alias en la gama Nyquist. Utilice esta opción cuando la señal de entrada esté submuestreada. Si no especifica esta opción, o si la establece en , entonces la función ignora los armónicos de la frecuencia fundamental que se encuentran más allá del rango Nyquist.'omitaliases'

ejemplo

[r,harmpow,harmfreq] = thd(___) devuelve las potencias (en dB) y las frecuencias de los armónicos, incluyendo las fundamentales.

ejemplo

thd(___) sin argumentos de salida traza el espectro de la señal y anota los armónicos en la ventana de figura actual. Utiliza diferentes colores para dibujar el componente fundamental, los armónicos, y el nivel de CC y el ruido. El THD aparece encima de la gráfica. Los fundamentales y armónicos están etiquetados. El término DC se excluye de la medición y no está etiquetado.

Ejemplos

contraer todo

Este ejemplo muestra explícitamente cómo calcular la distorsión armónica total en dBc para una señal que consiste en los armónicos fundamentales y dos. El cálculo explícito se comprueba con el resultado devuelto por .thd

Cree una señal muestreada a 1 kHz. La señal consiste en un fundamental de 100 Hz con amplitud 2 y dos armónicos a 200 y 300 Hz con amplitudes 0.01 y 0.005. Obtenga la distorsión armónica total explícitamente y utilizando .thd

t = 0:0.001:1-0.001; x = 2*cos(2*pi*100*t)+0.01*cos(2*pi*200*t)+0.005*cos(2*pi*300*t); tharmdist = 10*log10((0.01^2+0.005^2)/2^2)
tharmdist = -45.0515 
r = thd(x)
r = -45.0515 

Cree una señal muestreada a 1 kHz. La señal consiste en un fundamental de 100 Hz con amplitud 2 y tres armónicos a 200, 300 y 400 Hz con amplitudes 0.01, 0.005 y 0.0025.

Establezca el número de armónicos en 3. Esto incluye lo fundamental. En consecuencia, la potencia a 100, 200 y 300 Hz se utiliza en el cálculo thD.

t = 0:0.001:1-0.001; x = 2*cos(2*pi*100*t)+0.01*cos(2*pi*200*t)+ ...     0.005*cos(2*pi*300*t)+0.0025*sin(2*pi*400*t); r = thd(x,1000,3)
r = -45.0515 

Especificar el número de armónicos igual a 3 ignora la potencia a 400 Hz en el cálculo THD.

Cree una señal muestreada a 1 kHz. La señal consiste en un fundamental de 100 Hz con amplitud 2 y tres armónicos a 200, 300 y 400 Hz con amplitudes 0.01, 0.005 y 0.0025.

Obtenga la estimación de la señal en el periodograma y utilice la estimación PSD como entrada a thd. Establezca el número de armónicos en 3. Esto incluye lo fundamental. En consecuencia, la potencia a 100, 200 y 300 Hz se utiliza en el cálculo thD.

t = 0:0.001:1-0.001; fs = 1000; x = 2*cos(2*pi*100*t)+0.01*cos(2*pi*200*t)+ ...     0.005*cos(2*pi*300*t)+0.0025*sin(2*pi*400*t); [pxx,f] = periodogram(x,rectwin(length(x)),length(x),fs); r = thd(pxx,f,3,'psd')
r = -45.0515 

Determine el THD introduciendo el espectro de potencia obtenido con una ventana Hamming y el ancho de banda de resolución de la ventana.

Cree una señal muestreada a 10 kHz. La señal consiste en un fundamental de 100 Hz con amplitud 2 y tres armónicos impares a 300, 500 y 700 Hz con amplitudes 0.01, 0.005 y 0.0025. Especifique el número de armónicos en 7. Determinar el THD.

fs = 10000; t = 0:1/fs:1-1/fs; x = 2*cos(2*pi*100*t)+0.01*cos(2*pi*300*t)+ ...     0.005*cos(2*pi*500*t)+0.0025*sin(2*pi*700*t); [sxx,f] = periodogram(x,hamming(length(x)),length(x),fs,'power'); rbw = enbw(hamming(length(x)),fs); r = thd(sxx,f,rbw,7,'power')
r = -44.8396 

Genere una señal que se asemeje a la salida de un amplificador débilmente no lineal con un tono de 2,1 kHz como entrada. La señal se muestrea durante 1 segundo a 10 kHz. Calcular y trazar el espectro de potencia de la señal. Utilice una ventana Kaiser con 38 s para el cálculo.β

Fs = 10000; f = 2100;  t = 0:1/Fs:1;  x = tanh(sin(2*pi*f*t)+0.1) + 0.001*randn(1,length(t));  periodogram(x,kaiser(length(x),38),[],Fs,'power')

Los armónicos sobresalen del ruido a frecuencias de 4,2 kHz, 6,3 kHz, 8,4 kHz, 10,5 kHz, 12,6 kHz y 14,7 kHz. Todas las frecuencias excepto la primera son mayores que la frecuencia Nyquist. Los armónicos se alias respectivamente en 3,7 kHz, 1,6 kHz, 0,5 kHz, 2,6 kHz y 4,7 kHz.

Calcular la distorsión armónica total de la señal. De forma predeterminada, trata los armónicos con alias como parte del ruido.thd

thd(x,Fs,7);

Repita el cálculo, pero ahora trate los armónicos con alias como parte de la señal.

thd(x,Fs,7,'aliased');

Cree una señal muestreada a 10 kHz. La señal consiste en un fundamental de 100 Hz con amplitud 2 y tres armónicos impares a 300, 500 y 700 Hz con amplitudes 0.01, 0.005 y 0.0025. Especifique el número de armónicos en 7. Determinar el THD, la potencia en los armónicos, y las frecuencias correspondientes.

fs = 10000; t = 0:1/fs:1-1/fs; x = 2*cos(2*pi*100*t)+0.01*cos(2*pi*300*t)+ ...     0.005*cos(2*pi*500*t)+0.0025*sin(2*pi*700*t); [r,harmpow,harmfreq] = thd(x,10000,7); [harmfreq harmpow]
ans = 7×2

  100.0000    3.0103
  201.0000 -321.0983
  300.0000  -43.0103
  399.0000 -281.9259
  500.0000  -49.0309
  599.0000 -282.1066
  700.0000  -55.0515

Los poderes de los armónicos parejos están en el orden de

<math display="block">
<mrow>
<mo>-</mo>
<mn>3</mn>
<mn>0</mn>
<mn>0</mn>
</mrow>
</math>
dB, que corresponde a una amplitud de
<math display="block">
<mrow>
<mn>1</mn>
<msup>
<mrow>
<mn>0</mn>
</mrow>
<mrow>
<mo>-</mo>
<mn>1</mn>
<mn>5</mn>
</mrow>
</msup>
</mrow>
</math>
.

Generar un sinusoides de frecuencia de 2,5 kHz muestreado a 50 kHz. Agregue el ruido blanco gaussiano con la desviación estándar 0.00005 a la señal. Pase el resultado a través de un amplificador débilmente no lineal. Trazar el THD.

fs = 5e4; f0 = 2.5e3; N = 1024; t = (0:N-1)/fs;  ct = cos(2*pi*f0*t); cd = ct + 0.00005*randn(size(ct));  amp = [1e-5 5e-6 -1e-3 6e-5 1 25e-3]; sgn = polyval(amp,cd); thd(sgn,fs);

La gráfica muestra el espectro utilizado para calcular la relación y la región tratada como ruido. El nivel de CC se excluye del cálculo. Los fundamentales y armónicos están etiquetados.

Argumentos de entrada

contraer todo

Señal de entrada sinusoidal de valor real, especificada como vector de fila o columna.

Ejemplo: cos(pi/4*(0:159))+cos(pi/2*(0:159))

Tipos de datos: single | double

Frecuencia de muestreo, especificada como escalar positiva. La frecuencia de muestreo es el número de muestras por unidad de tiempo. Si la unidad de tiempo es segundos, entonces la frecuencia de muestreo tiene unidades de Hz.

Número de armónicos, especificado como un entero positivo.

Estimación de PSD unilateral, especificada como un vector de columna no negativo de valor real.

La densidad espectral de potencia debe expresarse en unidades lineales, no en decibelios. Se utiliza para convertir valores de decibelios en valores de potencia.db2pow

Ejemplo: especifica la estimación de la DSP de periodograma de un sinusoides de dos canales ruidoso muestreado a 2 oS y las frecuencias a las que se calcula.[pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2))

Tipos de datos: single | double

Frecuencias cíclicas correspondientes a la estimación de PSD unilateral, , especificada como un vector de fila o columna.pxx El primer elemento de debe ser 0.f

Tipos de datos: double | single

Espectro de potencia, especificado como un vector de fila o columna no negativo de valor real.

El espectro de potencia debe expresarse en unidades lineales, no en decibelios. Se utiliza para convertir valores de decibelios en valores de potencia.db2pow

Ejemplo: especifica la estimación del espectro de potencia del periodograma de un sinusoides de dos canales incrustado en el ruido gaussiano blanco y las frecuencias normalizadas a las que se calcula.[sxx,w] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2),'power')

Ancho de banda de resolución, especificado como escalar positivo. El ancho de banda de resolución es el producto de la resolución de frecuencia de la transformación discreta de Fourier y el ancho de banda de ruido equivalente de la ventana.

Argumentos de salida

contraer todo

Distorsión armónica total en dBc, devuelta como un escalar de valor real.

Potencia de los armónicos, devuelto como un escalar o vector de valor real expresado en dB. Si es un escalar o un vector depende del número de armónicos que especifique como argumento de entrada.harmpown

Frecuencias de los armónicos, devueltas como un escalar o vector no negativo. Si es un escalar o un vector depende del número de armónicos que especifique como argumento de entrada.harmfreqn

Más acerca de

contraer todo

Funciones de medición de distorsión

Las funciones , , , y medir la respuesta de un sistema débilmente no lineal estimulado por un sinusoides.thdsfdrsinadsnr

Cuando se le da entrada de dominio de tiempo, realiza un periodograma utilizando una ventana Kaiser con una gran atenuación del lóbulo lateral.thd Para encontrar la frecuencia fundamental, el algoritmo busca en el periodograma el componente espectral distinto de cero más grande. A continuación, calcula el momento central de todas las ubicaciones adyacentes que disminuyen monotónicamente lejos del máximo. Para ser detectable, el fundamental debe estar al menos en la segunda bandeja de frecuencia. Los armónicos más altos están en múltiplos enteros de la frecuencia fundamental. Si un armónico se encuentra dentro de la región decreciente monotonicamente en el vecindario de otro, su poder se considera que pertenece al armónico más grande. Este armónico más grande puede o no ser el fundamental.

falla si el fundamental no es el componente espectral más alto de la señal.thd

Asegúrese de que los componentes de frecuencia estén lo suficientemente separados como para acomodar el ancho del lóbulo lateral de la ventana Kaiser. Si esto no es factible, puede utilizar la marca y calcular un periodograma con una ventana diferente.'power'

Introducido en R2013b