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.

impinvar

Método de invarianza de impulsos para la conversión de filtros de analógico a digital

Sintaxis

[bz,az] = impinvar(b,a,fs)
[bz,az] = impinvar(b,a,fs,tol)

Descripción

[bz,az] = impinvar(b,a,fs) crea un filtro digital con coeficientes de numerador y denominador y, respectivamente, cuya respuesta de impulso es igual a la respuesta de impulso del filtro analógico con coeficientes y, escalado por.bzazba1/fs Si se deja fuera el argumento, o se especifica como el vector vacío, toma el valor predeterminado de 1 Hz.fsfs[]

[bz,az] = impinvar(b,a,fs,tol) utiliza la tolerancia especificada para determinar si se repiten los polos.tol Una mayor tolerancia aumenta la probabilidad de que interpreta los polos ubicados estrechamente como multiplicidades (repetidas).impinvar El valor predeterminado es 0,001, o 0,1% de la magnitud de un polo. La precisión de los valores de polo todavía se limita a la precisión que puede obtenerse por la función.roots

Ejemplos

contraer todo

Convierta un filtro de paso bajo de Butterworth analógico de sexto orden en un filtro digital utilizando invarianza de impulsos. Especifique una velocidad de muestreo de 10 Hz y una frecuencia de corte de 2 Hz. Visualice la respuesta de frecuencia del filtro.

f = 2; fs = 10;  [b,a] = butter(6,2*pi*f,'s'); [bz,az] = impinvar(b,a,fs);  freqz(bz,az,1024,fs)

Convierta un filtro elíptico analógico de cuarto orden en un filtro digital utilizando invarianza de impulsos. Especifique una frecuencia de muestreo

<math display="block">
<mrow>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
<mn>0</mn>
</mrow>
</math>
Hz, una frecuencia de borde de banda de paso de 2,5 Hz, una ondulación de banda de paso de 1 dB, y una atenuación de banda de parada de 60 dB. Visualice la respuesta de impulso del filtro digital.

fs = 10;  [b,a] = ellip(3,1,60,2*pi*2.5,'s'); [bz,az] = impinvar(b,a,fs);  impz(bz,az,[],fs)

Derive la respuesta de impulso del filtro analógico encontrando los residuos,

<math display="block">
<mrow>
<msub>
<mrow>
<mi>r</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
, y postes,
<math display="block">
<mrow>
<msub>
<mrow>
<mi>p</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
, de la función de transferencia e invirtiendo la transformada de Laplace de forma explícita utilizando

<math display="block">
<mrow>
<mi>H</mi>
<mo stretchy="false">(</mo>
<mi>s</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<munder>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</munder>
<mrow>
<mfrac>
<mrow>
<mrow>
<mstyle displaystyle="true" scriptlevel="0">
<mrow>
<msub>
<mrow>
<mi>r</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</mstyle>
</mrow>
</mrow>
<mrow>
<mrow>
<mstyle displaystyle="true" scriptlevel="0">
<mrow>
<mi>s</mi>
<mo>-</mo>
<msub>
<mrow>
<mi>p</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</mstyle>
</mrow>
</mrow>
</mfrac>
</mrow>
<mo></mo>
<mi>h</mi>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<munder>
<mrow>
<mo></mo>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</munder>
<msub>
<mrow>
<mi>r</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
<msup>
<mrow>
<mi>e</mi>
</mrow>
<mrow>
<msub>
<mrow>
<mi>p</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
<mi>t</mi>
</mrow>
</msup>
<mo>.</mo>
</mrow>
</math>

Superponer la respuesta de impulso del filtro analógico. La invarianza del impulso introduce una ganancia de

<math display="block">
<mrow>
<mn>1</mn>
<mo>/</mo>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
</mrow>
</math>
al filtro digital. Multiplique la respuesta del impulso analógico por esta ganancia para permitir la comparación significativa.

[r,p] = residue(b,a); t = linspace(0,4,1000); h = real(r.'*exp(p.*t)/fs);  hold on plot(t,h) hold off

Algoritmos

realiza el método invariable de impulso de conversión de la función de transferencia de analógico a digital discutido como referencia:impinvar[1]

  1. Encuentra la expansión parcial de la fracción del sistema representada por y.ba

  2. Reemplaza los polos por los polos.pexp(p/fs)

  3. Encuentra los coeficientes de la función de transferencia del sistema a partir de los residuos del paso 1 y los polos del paso 2.

Referencias

[1] Parks, Thomas W., and C. Sidney Burrus. Digital Filter Design. New York: John Wiley & Sons, 1987.

[2] Antoniou, Andreas. Digital Filters. New York: McGraw-Hill, Inc., 1993.

Consulte también

| | | |

Introducido antes de R2006a