title: Transformación bilineal
text: # Transformación bilineal
  
  La transformada bilineal (también conocida con el nombre de Método de Tustin) es usada habitualmente en el campo del procesamiento digital de señales y en la Teoría de control de señales discretas. Esta herramienta matemática suele usarse para transformar la representación en tiempo continuo de las señales en tiempo discreto y viceversa.
  
  La transformada bilineal es un caso especial de la transformación conforme (también conocida como Transformación de Möbius). Suele usarse para convertir una función de transferencia $H_{a}(s)\$ de un filtro lineal e invariante en el tiempo, que se encuentra definido en el dominio de tiempo continuo (LTI), en una función de transferencia $H_{d}(z)\$ perteneciente a un filtro lineal e invariante en el tiempo que se encuentre definido en el dominio de tiempo discreto. Si bien generalmente estos filtros son filtros digitales, también hay filtros analógicos construidos con capacitores que operan en tiempo discreto.
  
  Este método describe una forma de posicionar números complejos $j\omega \$, con $\mathrm {Re} [s]=0\$ y pertenecientes al plano S, en la circunferencia trigonométrica con $|z|=1\$ pertenecientes al plano z.
  
  La transformada preserva la estabilidad y posición de cada uno de los puntos correspondientes a la respuesta en frecuencia del filtro en el dominio del tiempo continuo, $H_{a}(j\omega _{a})\$, al correspondiente punto en la respuesta en frecuencia que representará el filtro discreto $H_{d}(e^{j\omega _{d}T})\$ aunque produciéndose una diferencia de frecuencia como se muestra en la sección de Warp: alteración de la respuesta en frecuencia. Por lo tanto cada punto que aparezca en la respuesta en frecuencia del filtro analógico le corresponderá otro punto de idéntica ganancia y desplazamiento de fase en la respuesta en frecuencia del filtro digital, aunque quizás como comentamos, puede que esto ocurra a frecuencias diferentes. Este hecho será casi imperceptible en frecuencias bajas, sin embargo, si se hará evidente en frecuencias próximas a la frecuencia de Nyquist.
  
  Otras transformaciones bilineales diferentes a la que se describe en este artículo se usan, por ejemplo, para aproximar la resolución no lineal de la respuesta en frecuencia del sistema auditivo humano.
  
  ## Aproximación de tiempo discreto
  
  La transformada Z es equivalente a la transformada de Laplace sobre una función discreta. Esta equivalencia se hace evidente con la siguiente sustitución de variables:
  
  $z=e^{sT}$
  
  Las aplicaciones de ambas transformadas requieren que la función transferencia en el dominio espectral sea un cociente de polinomios, y esta sustitución exponencial no respeta este requerimiento. La transformación bilineal es una aproximación de esta sustitución bajo la forma requerida de cociente de polinomios:
  
      ${\begin{aligned}z&=e^{sT}\\&={\frac {e^{sT/2}}{e^{-sT/2}}}\\&\approx {\frac {1+sT/2}{1-sT/2}}\end{aligned}}$
  
  Donde $T\$ es el período de muestreo (inverso a la Frecuencia de muestreo) del filtro discreto. z y s queda relacionados matemáticamente mediante un cociente de polinomios. Sin embargo la aplicación más habitual consiste en convertir un diseño analógico en uno digital, lo que requiere sustituir s por una función de z. Esto equivale a aproximar $s=(1/T)\ln(z)\ \$. La aproximación bilineal consiste en adoptar el primer orden de la aproximación del logaritmo mediante serie de argumento de tangente hiperbólica:
  
      ${\begin{aligned}s&={\frac {1}{T}}\ln(z)\\&={\frac {2}{T}}\left[{\frac {z-1}{z+1}}+{\frac {1}{3}}\left({\frac {z-1}{z+1}}\right)^{3}+{\frac {1}{5}}\left({\frac {z-1}{z+1}}\right)^{5}+{\frac {1}{7}}\left({\frac {z-1}{z+1}}\right)^{7}+\cdots \right]\\&\approx {\frac {2}{T}}{\frac {z-1}{z+1}}\\&={\frac {2}{T}}{\frac {1-z^{-1}}{1+z^{-1}}}\end{aligned}}$
  
  En definitiva, la transformación bilineal consiste en sustituir esta aproximación de s en la función de transferencia del filtro en tiempo continuo, $H_{a}(s)$
  
      $s\leftarrow {\frac {2}{T}}{\frac {z-1}{z+1}}.$
  
  Es decir:
  
      $H_{d}(z)=H_{a}(s){\bigg |}_{s={\frac {2}{T}}{\frac {z-1}{z+1}}}=H_{a}\left({\frac {2}{T}}{\frac {z-1}{z+1}}\right).\$
  
  Esta sustitución se adopta universalmente como el método para convertir una función transferencia del dominio de Laplace al dominio Z.
  
  ## No modifica las propiedades de estabilidad y fase mínima
  
  Un filtro causal perteneciente al dominio continuo del tiempo es estable si los polos de su función de transferencia caen en lado izquierdo del plano complejo s. Un filtro discreto en el tiempo es estable si los polos de su función de transferencia caen dentro de la circunferencia trigonométrica del plano complejo Z. La transformada bilineal posiciona los puntos que se encuentran en la parte izquierda del plano complejo S al interior de la circunferencia trigonométrica del plano Z. Por lo tanto los filtros diseñados en el dominio continuo del tiempo que son estables, al ser convertidos al dominio discreto guardan su característica de estabilidad.
  
  Además los filtros en tiempo continuo que son de "mínima fase", si los ceros de su función de transferencia caen en el lado izquierdo del plano complejo S entonces cuando se convierta a discreto la función de transferencia va a conservar su característica de "función de mínima fase".
  
  Esto nos asegura que los cambios producidos desde el plano S al plano Z y viceversa no afectan a estas propiedades de los sistemas.
  
  ## Ejemplo de sustitución bilineal
  
  Como ejemplo tomemos un filtro pasa baja RC. Este filtro posee una función de transferencia definida en el dominio continuo del tiempo.
  
      ${\begin{aligned}H_{a}(s)&={\frac {1/sC}{R+1/sC}}\\&={\frac {1}{1+RCs}}.\end{aligned}}$
  
  Si nosotros quisiésemos implementar dicho filtro, únicamente tendríamos que aplicar la transformación bilineal que acabamos de aprender, sustituyendo la $s$ de la fórmula por la expresión vista antes.
  
      $H_{d}(z)\$ $=H_{a}\left({\frac {2}{T}}{\frac {z-1}{z+1}}\right)\$ $={\frac {1}{1+RC\left({\frac {2}{T}}{\frac {z-1}{z+1}}\right)}}\$ $={\frac {1+z}{(1-2RC/T)+(1+2RC/T)z}}.\$ $={\frac {1+z^{-1}}{(1+2RC/T)+(1-2RC/T)z^{-1}}}.\$
  
  De esta expresión nos serán útiles los coeficientes del polinomio del denominador y los del numerador. Ambos se usarán para implementar finalmente el filtro digital.
  
  ## Warp: alteración de la respuesta en frecuencia
  
  Siendo una aproximación, la función transferencia resultante de la sustitución bilineal no se comporta exactamente como la original. La diferencia más relevante consiste en un desplazamiento o deformación de la respuesta en frecuencia, efecto conocido como warp. Esta deformación es más pronunciada cuanto más cercana a la frecuencia de Nyquist. Esta deformación se puede compensar completamente mediante la técnica de diseño pre-warp, que consiste en alterar apropiadamente la ubicación de los polos en el dominio de Laplace antes de la sustitución bilineal.
  
  ### Warp
  
  Para hallar la respuesta en frecuencia de un filtro en el dominio del tiempo continuo, la función de transferencia $H_{a}(s)\$ es evaluada como $s=j\omega \$ la cual se encuentra sobre el eje $j\omega \$. Por otro lado, para hallar la función de transferencia de un filtro discreto $H_{d}(z)\$ se evalúa como $z=e^{j\omega T}\$ la cual se encuentra sobre la circunferencia trigonométrica unitaria en el plano Z, $|z|=1\$.
  
  Ahora lo que queremos es conocer ante una entrada de una frecuencia al filtro discreto construido a partir de la transformación bilineal, $\omega _{a}\$, cual será la frecuencia $\omega \$ designada.
  
      $H_{d}(z)=H_{a}\left({\frac {2}{T}}{\frac {z-1}{z+1}}\right)\$
      $H_{d}(e^{j\omega T})\$ $=H_{a}\left({\frac {2}{T}}{\frac {e^{j\omega T}-1}{e^{j\omega T}+1}}\right)\$ $=H_{a}\left({\frac {2}{T}}\cdot {\frac {e^{j\omega T/2}\left(e^{j\omega T/2}-e^{-j\omega T/2}\right)}{e^{j\omega T/2}\left(e^{j\omega T/2}+e^{-j\omega T/2}\right)}}\right)\$ $=H_{a}\left({\frac {2}{T}}\cdot {\frac {\left(e^{j\omega T/2}-e^{-j\omega T/2}\right)}{\left(e^{j\omega T/2}+e^{-j\omega T/2}\right)}}\right)\$ $=H_{a}\left(j{\frac {2}{T}}\cdot {\frac {\left(e^{j\omega T/2}-e^{-j\omega T/2}\right)/(2j)}{\left(e^{j\omega T/2}+e^{-j\omega T/2}\right)/2}}\right)\$ $=H_{a}\left(j{\frac {2}{T}}\cdot {\frac {\sin(\omega T/2)}{\cos(\omega T/2)}}\right)\$ $=H_{a}\left(j{\frac {2}{T}}\cdot \tan \left(\omega {\frac {T}{2}}\right)\right)\$ $=H_{a}\left(j\omega _{a}\right).\$
  
  Esta demostración muestra que todos los puntos que se encuentran dentro de la circunferencia trigonométrica en el plano Z,$z=e^{j\omega T}\$, son "mapeados" con otros puntos $j\omega \$ en el dominio continuo en el plano S, $s=j\omega _{a}\$. Esto significa que las frecuencias transformadas de tiempo discreto a tiempo a continuo son íntegramente "mapeadas" por la transformación bilineal.
  
      $\omega _{a}={\frac {2}{T}}\tan \left(\omega {\frac {T}{2}}\right)$
  
  y en cuanto al mapeado inverso
  
      $\omega ={\frac {2}{T}}\arctan \left(\omega _{a}{\frac {T}{2}}\right).$
  
  El filtro en tiempo discreto se comporta en frecuencia $\omega \$de la misma forma que el filtro en tiempo continuo se comporta en frecuencia $(2/T)\tan(\omega T/2)\$. Toda ganancia y fase retardada que en el filtro de tiempo discreto tiene una frecuencia $\omega \$también posee la misma ganancia y fase retardada en el filtro de tiempo continuo en la misma frecuencia $(2/T)\tan(\omega T/2)\$. Esto significa que todo lo que es visible en la respuesta de frecuencia del filtro de tiempo continuo lo es también en el filtro de tiempo discreto, pero a una frecuencia diferente. En frecuencias bajas (es decir, cuando $\omega \ll 2/T$ o $\omega _{a}\ll 2/T$), $\omega \approx \omega _{a}\$.
  
  También se puede ver como el rango entero continuo de frecuencias
  
      $-\infty <\omega _{a}<+\infty \$
  
  es mapeado en el intervalo de frecuencias fundamentales
  
      $-{\frac {\pi }{T}}<\omega <+{\frac {\pi }{T}}.\$
  
  El filtro de frecuencia en tiempo continuo $\omega _{a}=0\$ se corresponde con el filtro discreto en tiempo continuo $\omega =0\$ y el filtro de tiempo continuo en frecuencia $\omega _{a}=\pm \infty \$ se corresponde con el filtro en tiempo discreto en frecuencia $\omega =\pm \pi /T.\$
  
  También se puede ver que hay una relación no lineal entre $\omega _{a}\$ y $\omega .\$. Este efecto de la transformada bilineal se llama warp, o alteración en frecuencia.
  
  ### Pre-warp
  
  Los filtros en tiempo continuo pueden ser diseñados para compensar esta alteración de frecuencia poniendo $\omega _{a}={\frac {2}{T}}\tan \left(\omega {\frac {T}{2}}\right)\$ para cada frecuencia específica que el diseñador quiera controlar.
  
  La principal ventaja de la sustitución bilineal es la ausencia de la distorsión aliasing en la respuesta en frecuencia, como se observa con otra técnica de diseño como la invariante al impulso. Es necesario sin embargo, compensar esta alteración en la frecuencia usando la técnica de "pre-warping" una vez se conozca la especificación de frecuencias del sistema a diseñar. Esta especificación "pre-warped" podría ser usada en la transformación bilineal para obtener el sistema deseado de tiempo discreto.
  
  