Main Content

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 invariancia de impulsos para la conversión de filtros analógicos a digitales

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 numeradores y denominadores 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 deja fuera el argumento o especifica como 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 tolerancia más grande aumenta la probabilidad que interpreta los polos estrechamente ubicados 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 del polo todavía se limita a la precisión que la función puede obtener.roots

Ejemplos

contraer todo

Convierta un filtro de paso bajo Butterworth analógico de sexto orden en un filtro digital utilizando invariancia de impulsos. Especifique una frecuencia 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 tercer orden en un filtro digital mediante invariancia 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)

Derivar la respuesta de impulso del filtro analógico mediante la búsqueda de los residuos,

<math display="block">
<mrow>
<msub>
<mrow>
<mi>r</mi>
</mrow>
<mrow>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</math>
, y los polos,
<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 invertir la transformación de Laplace explícitamente 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 invariancia de 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 de impulso analógico por esta ganancia para permitir una 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 de impulso-invariante de conversión de la función de transferencia analógica a digital discutido en referencia:impinvar[1]

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

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

  3. Encuentra los coeficientes de 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