0% encontró este documento útil (0 votos)
62 vistas31 páginas

3-Presentacion TZ Inversa

Este documento trata sobre la transformada Z inversa. Explica que a partir de la transformada Z inversa sólo se obtiene la secuencia de tiempo en los instantes de muestreo, pero no la señal continua original entre muestras. Luego, describe diferentes métodos para calcular la transformada Z inversa, como la división directa, el enfoque de Matlab usando filtros, resolviendo la ecuación en diferencias, y la descomposición en fracciones simples.

Cargado por

MARIANO
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
62 vistas31 páginas

3-Presentacion TZ Inversa

Este documento trata sobre la transformada Z inversa. Explica que a partir de la transformada Z inversa sólo se obtiene la secuencia de tiempo en los instantes de muestreo, pero no la señal continua original entre muestras. Luego, describe diferentes métodos para calcular la transformada Z inversa, como la división directa, el enfoque de Matlab usando filtros, resolviendo la ecuación en diferencias, y la descomposición en fracciones simples.

Cargado por

MARIANO
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Electrónica Industrial

Transformada Z inversa
Transformada Z inversa
Se debe observar que a partir de la transformada inversa sólo se
obtiene la secuencia de tiempo en los instantes de muestreo. Por lo
tanto, la transformada z inversa de X(z) da como resultado una
única x(kT), pero no una única x(t), ya que no dice nada de los
valores de x(t) en los instantes de tiempo no muestreados. Esto
significa que puede haber distintas funciones de tiempo xi(t) con
la misma x(kT) .
Dos funciones en tiempo continuo diferentes
que tienen los mismos valores en
t=0,T,2T,3T,4T,…

x1(k) = 0
x2(k) = sin(k π)
Transformada Z inversa
Permite volver a la representación en el dominio temporal.
{xk }  Z 1{ X ( z )}

La recuperación de la señal continua original a partir de las


muestras no es posible con total exactitud.
Si el periodo de muestreo ha sido elegido adecuadamente, la
incertidumbre es menor.

Existen diferentes métodos para calcular la transformada z inversa.


Un método obvio es referirse a una tabla de transformadas z, pero
es laborioso (si se utiliza una tabla de transformadas z no muy
extensa, es necesario expresar una transformada z complicada
como una suma de transformadas z más sencillas).
Métodos
– División directa ó larga:

Cuando F(z) es un cociente de polinomios reales en z, puede


realizarse una “división larga”. Los coeficientes de dicha división
son los valores de la secuencia temporal {fk}. Se expresa la función
X(z) en potencias de z-1, se ordenan numerador y denominador de
menor a mayor potencia y se divide.
z 1 z z 2
F ( z)    2  2
( z  1) ( z  0.1) z  1.1z  0.1 z

1
Se debe reescribir la
z función como un
F ( z) 
1  1.1z 1  0.1z 2 cociente de polinomios
en potencias crecientes
de z-1.
z 1 1  1.1z 1  0.1z 2
Este método se
 z 1  1.1z 2  0.1z 3 1z 1
puede llevar a cabo
 1.1z 2  0.1z 3 mediante cálculos
manuales si solo se
1.1z 2  0.1z 3 1  1.1z 1  0.1z 2 desean los
 1.1z 2  1.21z 3  0.11 z 4 1.1z 2 primeros términos.
 1.11 z 3  0.11 z 4

1.11 z 3  0.11 z 4 1  1.1z 1  0.1z 2


 1.11 z 3  1.221z 4  0.111 z 5 1.11 z 3
 1.111 z 4  0.111 z 5

F(z) = 1z-1 +1.1z-2 +1.11z-3 + 1.111z-4 +…


f(kT) = (0, 1, 1.1, 1.11, 1.111, …)
Ejemplo

1
F ( z) 
1  az 1

F(z) = 1+az-1 +a2z-2 +a3z-3 +…


f(kT) = (1, a, a2, a3, …)
Ejemplo
Encuentre x(k) para k= 0,
1, 2 , 3, 4 cuando X(z) esta
dado por:

X(z) se escribe como un


cociente de potencias
crecientes de z-1.

F(z) = 0+10z-1 +17z-2 +18.4z-3 +18.68z-4 +… f(kT) = (0, 10, 17, 18.4, 18.68, …)
Métodos
– Método computacional: enfoque de Matlab

En este método, la transformada z inversa se obtiene utilizando la


función delta de Kronecker δ0(k T) , donde

1 k  0
 0  kT    
0 k  0

Suponiendo que x(k) , la entrada al sistema G(z) es la entrada


Delta de Kronecker, la transformada z de la entrada delta de
Kronecker es X(z) = 1.

Los polinomios de G(z) se deben escribir en potencias


decrecientes de z.
Ejemplo
x = [1 zeros(1,40)]; % para k = 40 muestras
num = [0 5 10]; % coeficientes del numerador
den = [1 -1 0.16]; % coeficientes del denominador
y = filter(num, den, x) % obtención de las 40 muestras
k = 0:40;
plot(k, y,'ro',k, y,'-') 5 z  10
F ( z)  2
xlabel('k') z  z  0.16 ejercicio2.m
ylabel('y(k)')

Los 40 resultados obtenidos de x(0) hasta x(40) son:


0 5.0000 15.0000 14.2000 11.8000 9.5280 7.6400
6.1155 4.8931 3.9146 3.1317 2.5054 2.0043 1.6035
1.2828 1.0262 0.8210 0.6568 0.5254 0.4203 0.3363
0.2690 0.2152 0.1722 0.1377 0.1102 0.0882 0.0705
0.0564 0.0451 0.0361 0.0289 0.0231 0.0185 0.0148
0.0118 0.0095 0.0076 0.0061 0.0048 0.0039
Ejemplo

Y=filter(num,den,x) es un filtro digital que filtra los datos del


vector x (delta de kronecker) con el filtro descripto por los
vectores num y den creando el dato filtrado Y. Equivale a realizar
la convolución entre ambos obteniendo la respuesta Y.
Ejemplo
0.4673z 1  0.3393z 2 z 2
F ( z)  1 2
 2
1  1.5327 z  0.6607 z z
ejercicio3.m
0.4673z  0.3393
F ( z) 
z 2  1.5327 z  0.6607

num=[0 0.4673 -0.3393]; %numerador


den=[1 -1.5327 0.6607]; %denominador
dk=[1 zeros(1,50)]; %delta para 51 valores
x=filter(num,den,dk) % entrega la secuencia de 51 valores
k=0:50; % un vector de 0 hasta 50 en pasos de 1
figure(1); plot(k,x); % plotea el gráfico en pantalla
figure(2); stem(k,x);
Métodos
– Método computacional: enfoque de la ecuación en
diferencias
G(z) = X(z) = ( .4673 z − .3393 )
U(z) (z2 − 1.5327 z + .6607)
Dicha ecuación se puede escribir como
(z2 − 1.5327 z + .6607 ) X(z) = (.4673 z − .3393 ) U(z )
Esta ecuación se puede convertir en una ecuación en diferencias
como sigue:

x(k + 2) − 1.5327 x(k + 1) + .6607 x(k) = .4673 u(k + 1) − .3393 u(k)

Donde u(0) = 1 y u(k) = 0 para k ≠ 0, x(k) = 0 para k < 0. [u(k) es la


entrada Delta de Kronecker]. Encontrar la transformada z inversa se
convierte ahora en el problema de resolver la ecuación en diferencias
para u(k) .
Para hallar x(0) sustituimos k=-2 en la ecuación de diferencias

x(0) − 1.5327 x(-1) + .6607 x(-2) = .4673 u(-1) − .3393 u(-2)


0 0 0 0
x(0) =0

Para hallar x(1) sustituimos k=-1 en la ecuación de diferencias

x(1) − 1.5327 x(0) + .6607 x(-1) = .4673 u(0) − .3393 u(-1)


0 0 1 0
x(1) =0.4673

La ecuación se puede resolver fácilmente a mano o mediante


algún lenguaje de programación (lazo recursivo).
Ejemplo
Ejemplo
Ejemplo
Existen varias formas para implementar la ecuación de diferencias de un
controlador usando un computador digital; en todo caso, la ecuación se
implementa usando memorias para almacenar los valores anteriores de las
muestras de entrada y salida y usando convertidores analógico a digital para
tomar las muestras e(k) a intervalos regulares dados por el periodo T; y
convertidores de digital a analógico para la salida m(k).

Existen varios problemas en la implementación de la ecuación de


diferencias, se enumeran algunos de ellos a continuación:

• El ruido de cuantización debido a la cuantización de las muestras


• El ruido de redondeo debido al ancho de la palabra limitado en las
operaciones de cálculo (error de redondeo)
• Se requiere una potencia de cálculo lo suficientemente grande como para
que el tiempo requerido para el cálculo desde la toma de la muestra e(k)
hasta la salida de m(k) sea menor al periodo T.
Ejemplo
Para evitar problemas con el ruido de cuantización se debe de usar una
resolución del convertidor A/D lo suficientemente grande.

Para reducir los problemas con el redondeo se debe de realizar los cálculos
intermedios con una precisión mayor a la del resultado esperado. Esto es
por ejemplo, trabajar con doce bits y al final redondear a ocho bits el
resultado.

Finalmente, para lograr realizar los cálculos en el tiempo establecido se


debe de escoger un tiempo de muestreo adecuado a la dinámica del sistema
y lo suficientemente grande como para acomodar todos los cálculos
necesarios entre dos muestras consecutivas. Para lograr además que la
salida m(k) esté lista en el tiempo establecido.
Ejemplo
Inicio: Bucle:
m(k-1) = 0; in(e(k)); leo el dato por A/D
m(k-2) = 0; m(k) = - k1* m(k-1) - k2* m(k-2) +
e(k-1) = 0; kc*e(k-1) + k3*e(k-2);
e(k-2) = 0; out(m(k)); escribo el dato por D/A
k1 = a+b; m(k-2) = m(k-1);
k2 = a*b; m(k-1) = m(k);
k3 = c*kc; e(k-2) = e(k-1);
time = T; e(k-1) = e(k);
EnableTimer(time); end;
EnableInterruptTimer(proc);
Métodos
– Descomposición en fracciones simples

Dado que las expresiones de las transformadas Z elementales poseen


siempre una z en el numerador, se realiza la descomposición de
F(z)/z.

Cada fracción resultante se multiplica por z y se reemplaza por su


equivalente temporal.

La idea es que todos los términos de la expansión se puedan


reconocer fácilmente en la tabla de pares de transformadas z.

Es idéntico al que se utiliza en la transformada de Laplace.


Considérese una q( z ) b0 z m  b1 z m1  ..........  bm 1 z  bm
F (z )  
función p ( z ) a0 z n  a1 z n 1  ...........  an 1 z  an

Factorizando el b0 z m  b1 z m 1  ..........  bm 1 z  bm q( z )
F ( z)   n
denominador ( z  p1 )( z  p2 )..........( z  pn )  ( z  pi )
i 1

Cuando todos los polos en la ecuación son diferentes y hay por lo


menos un cero en el origen (bm=0) consiste en dividir ambos
miembros por z y luego expandir en fracciones parciales.
El coeficiente ai se puede determinar multiplicando ambos
miembros por (z-pi) y haciendo z=pi, esto hará que todos los
términos del segundo miembro sean cero excepto el término ai.
Valido para polos simples

X(z) = ( a1 ) + ( a2 ) + … + ( an ) ai = (z – pi) . X(z)


z (z – p1) (z – p2) (z – pn) z z=pi
Si F(z) involucra un polo múltiple, por ejemplo un polo doble
en z=p1 y no tiene más polos entonces:

X(z) = ( c1 ) + ( c2 )
z (z – p1)² (z – p1)

Valido para polos múltiples

c1 = (z – p1)² . X(z)
z z=pi
c2 = d (z – p1)² . X(z)
dz z z=pi
Ejemplo
Tomando como periodo de muestreo T=10, obtener la transformada
inversa de:
1 Multiplicando ambos
F ( z) 
( z  1)( z  0.1) miembros por z

F ( z) 1 a b c
   
z z ( z  1)( z  0.1) z z  1 z  0.1
 1 
a  z    10
 z ( z  1)( z  0.1)  z  0

 1  1
b  ( z  1)  
 z  1 0.9
 z ( z  1)( z  0. 1) 

 1  1
c  ( z  0.1)   
 z ( z  1)( z  0.1)  z  0.1 0.09
constante escalón
1 z 10 z exponencial
F ( z )  10  
0.9 z  1 0.9 z  0.1

Los dos primeros términos tienen antitransformadas inmediatas.


Para el tercero resulta:
ln 0.1
e aT  e a10  0.1  a   0.23
 10

La secuencia resultante es
1 10 0.23kT
f (kT )  10 (kT )  us (kT )  e
0.9 0.9

O simplemente, prescindiendo de T
1 10
f ( k )  10 (k )  us ( k )  0.1k
0.9 0.9
Ejemplo
Multiplicando ambos
Obtener la transformada inversa de: miembros por z3

Los residuos
Ejemplo
Multiplicamos ambos lados por z

La transformada z inversa por tabla:

Por lo tanto, la secuencia en tiempo


discreto
Ejemplo
Obtener la transformada inversa de:
Dividiendo ambos miembros por z

Los residuos
Ejemplo
Multiplicamos ambos lados por z

La transformada z inversa por tabla:

Por lo tanto, la secuencia en tiempo


discreto
Métodos
– Descomposición en fracciones simples: método matlab

La solución por el método de expansión en fracciones parciales


cuando la función tiene polos simples es fácil pero aumenta el
grado de complejidad cuando no lo es. num y den son
En el Matlab existe la siguiente orden: polinomios en
potencias
[r, p, k] = residuez(num,den) crecientes de z-1.

Encuentra los valores del vector r (residuos), del vector p (polos)


y del término independiente k según la siguiente expresión:
r y p son vectores columnas. k contiene los términos directos en
un vector fila.

El número de polos es n=length(den)-1.

Si lenght(den) >lenght(num) devuelve un vector k vacio.

Si invocamos la orden:

[num,den] = residuez(r, p, k)

Convierte la expansión a la forma original num/den.


Ejemplo
Obtener la transformada Z Inversa de:

5 z 3 + 26 z 2 + 44 z + 29
X(z) = ------------------------------------ num = [5 26 44 29];
z 3 + 6 z 2 + 11 z + 6 den = [1 6 11 6];
[r, p, k] = residuez(num,den)

% Los resultados son:


Pasar a potencias crecientes de z-1 : r = [0.6667 2.5 -3], p = [-3 -2 -1],
k = 4.83
5 z 0 + 26 z -1 + 44 z-2 + 29 z-3
X(z) = ------------------------------------
z 0 + 6 z -1 + 11 z-2 + 6 z-3
Por tanto, las fracciones parciales quedan :

0.6667 2.5 3
F ( z)  1
 1
 1
 4.83
1  3z 1 2z 1 z

x(k) = 0.6667(-3) k +2.5(-2)k -3(-1)k + 4.83δk

donde δk es el delta kronecker (delta de Dirac en control


continuo) cuya transformada Z es igual a 1.

xz=r(1)/(1-p(1)*z^-1)+r(2)/(1-p(2)*z^-1)+r(3)/(1-p(3)*z^-1)+k
pretty(xz)
xz1=iztrans(xz)
ejercicio4.m
pretty(xz1)

También podría gustarte