Guía 1: Ejercicios sobre transformada Alumno: Guillermo M. Tabeni Couvert Profesor: Ing. Carlos A. Espinoa J.T.P.: Ing. Daniel R. Graff Cátedra de Ingeniería Industrial Universidad Tecnológica Nacional, F.R.A. 2 de julio de 2007 Objetivo: Realiar distintos ejercicios numéricos de mano y con el uso de Matlab. Ejercicio 1 Para la función Y (), determinar los polos y ceros y ubicarlos dentro del plano. Los teoremas del valor inicial y final son aplicables en dicha función. Por qué? Hallar sus valores. Y () = 0, 792 2 ( 1)( 2 0, 416 + 0, 208) Para hallar los polos y ceros de Y (), introducimos los comandos: =tf( ); Y=.792*^2/((-1)*(^2-0.416*+.208)) ceros,polos,k]=pkdata(y, v ) Vemos que hay un cero doble en el origen, un polo real en 1 y un par de polos complejos conjugados: ceros = 0 0 polos = 1.0000 0.2080 + 0.4059i 0.2080-0.4059i K = 0.7920 Ahora, graficamos el plano con los ceros y polos obtenidos: num,den]=tfdata(y, v ); plane(num,den) grid Por el teorema del valor inicial: Por el teorema del valor final: y(t = 0) = lím Y () = lím y(t ) = lím1 1 1 Y ()] = lím 1 1 0, 792 2 3 1, 416 2 + 0, 624 0, 208 0, 792/ = lím 1 1, 416/ + 0, 624/ 2 0, 208/ 3 = 0 0, 792 2 ( 1)( 2 0, 416 + 0, 208) 0, 792 = lím 1 2 0, 416 + 0, 208 = 1 Estos teoremas son aplicables porque, por definición, existen los límites calculados. Alumno: Guillermo Tabeni, UTN, FRA, 2007 1/11
Ejercicio 2 Obtenga la transformada de la siguiente función donde a es una constante. Grafique y compare en Matlab la función en tiempo continuo y la función en tiempo discreto. x(t) = 1 a (1 e at ) Distribuyendo, tenemos x(t) = 1 a e at a Luego, por la transformada del escalón y la propiedad lineal de la transformada, X() = 1 a(1 1 ) 1 a(1 e ak 1 ) = 1 e ak 1 1 + 1 a(1 1 )(1 e ak 1 ) = 1 1 (1 e ak ] ) a 1 1 (1 + e ak ) + 2 e ak (1) En el Matlab comparamos la respuesta del sistema continuo (en rojo) con la del sistema discreto (aul): num=0 1-exp(-1) 0]; den=1-1-exp(-1) exp(-1)]; t=0:0.2:10; xt=(1-exp(-t)); plot(t,xt, r ) hold; imp(num,den) Alumno: Guillermo Tabeni, UTN, FRA, 2007 2/11
Ejercicio 3 Para la función G() = Y ()/X(), hallar la transformada inversa mediante el método Matlab (comando filter) hasta k = 10. Graficar la secuencia (comando stem). Y () = 0, 01409 3 + 0, 028 2 + 0, 01409 X() = 3 2, 7624 2 + 2, 5811 0, 8187 Con el siguiente programa graficamos los 10 primeros elementos de la secuencia de Y ()/X(). num=0.01409 0.028 0.01409 0]; den=1-2.7624 2.5811-0.8187]; X=1 eros(1,10)]; Y=filter(num,den,X); n=0:1:10; stem(n,y); xlabel( k ); Alumno: Guillermo Tabeni, UTN, FRA, 2007 3/11
Ejercicio 4 Para la ecuación en diferencias encontrar la serie en forma recursiva realiando un programa en Matlab. Luego, hallar la transformada Z mediante cálculo de mano y luego, mediante el método de Matlab (comando filter), encontrar la transformada inversa Z hasta k = 30. Verificar ambos gráficos y hallar conclusiones. x(k + 2) = x(k + 1) + x(k), donde x(0) = 0 y x(1) = 1 Las transformadas de x(k + 2), x(k + 1) y x(k) están dadas, respectivamente, por Zx(k + 2)] = 2 X() 2 x(0) x(1) Zx(k + 1)] = X() x(0) Zx(k)] = X() Al tomar las transformadas de ambos miembros de la ecuación en diferencias dada, se obtiene 2 X() = X() + X() donde se han reemplaado las condiciones iniciales dadas. Finalmente, despejando y simplificando, X() = 2 1 (2) que es la transformada buscada. Ahora utilio el siguiente programa para comparar el método manual con el método de Matlab. %Metodo manual x(1)=0; x(2)=1; N=30; for k=1:n-1 x(k+2)=x(k+1)+x(k) end n=0:n; subplot(2,1,2); stem(n,x, r ); title( Metodo manual ); %Metodo Matlab num=0 1 0]; den=1-1 -1]; n=0:1:n; x=1 eros(1,n)]; y=filter(num,den,x); subplot(2,1,1); stem(n,y, b ); title( Metodo Matlab ); Alumno: Guillermo Tabeni, UTN, FRA, 2007 4/11
Ejercicio 5 Encontrar la expresión en forma cerrada de yn] usando el método de la transformada Z. Donde un] representa la función escalón. yn] (5/6)yn 1] + (1/6)yn 2] = (1/5) n un], donde y 1] = 6 e y 2] = 25 Las transformadas de secuencias desplaadas son: Además, la transformada de a n un] es, Zy(n 1)] = Y () 1 + y( 1) Zy(n 2)] = Y () 2 + y( 1) 1 + y( 2) Za n u(n)] = 1 1 (/a) 1 Al tomar las transformadas de ambos miembros de la ecuación en diferencias dada, se obtiene Y () 5 Y () 1 + 6 ] + 1 Y () 2 + 6 1 + 25 ] 1 = 6 6 1 1 5 Y () 2 5 6 + 1 ] 5 2 + + 256 6 2 = 3 1 5 Y () 3 31 30 2 + 1 3 1 ] = 11 30 6 3 7 6 2 + 1 5 Despejando Y ()/, para luego aplicar el método de inversión por fracciones parciales: Y () = 11 6 2 7 6 + 1 5 3 31 30 2 + 1 3 1 30 Factoriando el denominador, la función expandida tendrá la forma: Y () = a 1 1 2 + a 2 1 3 + a 3 1 5 Alumno: Guillermo Tabeni, UTN, FRA, 2007 5/11
donde los coeficientes son: a 1 = a 2 = a 3 = ( 1 2 ) Y () ] ( 1 3 ) Y () ] ( 1 5 ) Y () ] = 1 2 = 1 3 = 1 5 = 3 2 = 2 3 = 1 La descomposición en fracciones parciales podría haberse realiado con Matlab, de la siguiente manera: num=0 11/6-7/6 1/5]; den=1-31/30 1/3-1/30]; R,P,K]=residue(num,den) R = 1.5000-0.6667 1.0000 P = 0.5000 0.3333 0.2000 K = ] Reemplaando y multiplicando ambos miembros por : Y () = La transformada inversa, resulta: 3/2 1 1 2/3 2 1 1 1 + 1 3 1 1 1 5 1 y(n) = 3 2 n+1 2 3 n+1 + 1 5 n (3) que es la forma cerrada pedida. Con el siguiente programa podemos comparar las secuencias obtenidas con la ecuación de diferencias dada al comieno del problema y la forma cerrada obtenida: %Metodo itarativo - Ecuacion de diferencias y(1)=25; y(2)=6; N=30; u=0 0 ones(1,n+1)]; for n=1:n+1 y(n+2)=(1/5)^(n-1)*u(n+2)+(5/6)*y(n+1)-(1/6)*y(n) end n=-2:n; subplot(2,1,1); stem(n,y); title( Metodo itarativo - Ecuacion de diferencias ); %Metodo iterativo - Expresion en forma cerrada for n=1:n+1 y(n)=3/(2^(n-2))-2/(3^(n-2))+1/(5^(n-3)) end n=-2:n; subplot(2,1,2); stem(n,y, r ); title( Metodo iterativo - Expresion en forma cerrada ); Alumno: Guillermo Tabeni, UTN, FRA, 2007 6/11
Ejercicio 6 Resuelva la siguiente ecuación en diferencias tanto de manera analítica como por computadora con Matlab. La función de entrada uk] = 1 para k = 0, 1, 2,.... x(k + 2) x(k + 1) + 0, 25x(k) = u(k + 2), donde x(0) = 1 y x(1) = 2 Las transformadas de x(k), x(k + 1) y x(k + 2) están dadas, respectivamente, por Además, la transformada de uk + 2] es Zx(k)] = X() Zx(k + 1)] = X() x(0) Zx(k + 2)] = 2 X() 2 x(0) x(1) Zu(k + 2)] = 2 U() 2 u(0) u(1) = 2 1 1 2 ya que u(0) = u(1) = 1. Al tomar las transformadas de ambos miembros de la ecuación en diferencias dada, se obtiene 2 X() 2 2 X() + + 0, 25X() = 2 1 1 2 Despejando X()/, para luego aplicar el método de inversión por fracciones parciales: X() La función expandida tendrá la forma: donde los coeficientes son: = 2 3 2 2 + 1, 25 0, 25 = 2 ( 1)( 1 2 )2 a 1 = a 2 = a 3 = X() = a 1 ( 1 2 )2 + a 2 1 2 + a 3 1 ( 1 2 )2 X() ] = 1 = 2 1 2 { d ( 1 d 2 )2 X() ]} = 1 2 ( 1) X() ] = 4 =1 = 3 Alumno: Guillermo Tabeni, UTN, FRA, 2007 7/11
Reemplaando y multiplicando ambos miembros por : 1 2 1 X() = (1 1 2 1 ) 3 2 1 1 + 4 2 1 1 1 La transformada inversa, resulta: x(k) = k 2 k 3 2 k + 4 (4) Con el siguiente programa podemos comparar las secuencias obtenidas con la ecuación de diferencias dada al comieno del problema y la forma cerrada obtenida: %Metodo itarativo - Ecuacion de diferencias x(1)=1; x(2)=2; N=30; u=ones(1,n+3)]; for k=1:n-1 x(k+2)=u(k+2)+x(k+1)-0.25*x(k); end k=0:n; subplot(2,1,1); stem(k,x); title( Metodo itarativo - Ecuacion de diferencias ); %Metodo iterativo - Expresion en forma cerrada for k=1:n+1 x(k)=-(k-1)/(2^(k-1))-3/(2^(k-1))+4 end k=0:n; subplot(2,1,2); stem(k,x, r ); title( Metodo iterativo - Expresion en forma cerrada ); Ejercicio 7 Usar el método de la división directa para obtener la transformada inversa. Decidir si el sistema es estable o no. Por qué? Mostrar el diagrama de polos y ceros en el plano. Si el sistema es inestable, implementar la modificación necesaria para que deje de serlo. Alumno: Guillermo Tabeni, UTN, FRA, 2007 8/11
X() = 1 (1 2 ) (1 + 2 ) 2 Primero, expreso X() en polinomios de 1 : Luego, efectuando la división: X() = 1 3 1 + 2x 2 + 4 + 1 3 /1 + 2 2 + 4 1 2 3 5 1 3 3 + 5 5 7 7 + 9 9 3 3 5 +3 3 +6 5 +3 7 +5 5 +3 7 5 5 10 7 5 9 7 7 5 9...... Comparando directamente X() = 0 x(k) k, tenemos x(0) = 0 x(1) = 1 x(2) = 0 x(3) = 3 x(4) = 0 x(5) = 5 x(6) = 0 x(7) = 7 x(8) = 0 x(9) = 9. Como vemos, la secuencia x(n) es alternadamente creciente; por lo tanto, el sistema es inestable. Graficamos los polos y ceros de X() mediante la siguiente secuencia de comandos: num=0 1 0-1 0]; den=1 0 2 0 1]; plane(num,den); Alumno: Guillermo Tabeni, UTN, FRA, 2007 9/11
Confirmamos con el diagrama de polos y ceros que el sistema es inestable, ya que posee polos múltiples sobre el círculo unitario (es condición suficiente, pág. 183 del libro de Ogata). Ejercicio 8 Encuentre la transformada inversa Z utiliando el método de expansión en fracciones parciales y con el Matlab (comando residue). X() = 1 (0, 5 1 ) (1 0, 5 1 )(1 0, 8 1 ) Multiplicamos numerador y denominador por 2 y luego, divido ambos miembros por para expresar X()/ en potencias de : X() 0, 5( 2) = ( 0, 5)( 0, 8) La función expandida tendrá la forma: donde los coeficientes son: X() = a 1 0, 5 + a 2 0, 8 + a 3 a 1 = a 2 = a 3 = ( 0, 5) Y () ] = 5 =0,5 ( 0, 8) Y () ] = 2, 5 =0,8 () Y () ] = 2, 5 =0 Reemplaando y multiplicando ambos miembros por : X() = 5 1 0, 5 1 2, 5 2, 5 1 0, 8 1 La descomposición en fracciones parciales podría haberse realiado con Matlab, de la siguiente manera: num=0.5-1]; % En potencias asc. de ^{-1} o desc de den=1-1.3.4]; R,P,K]=residue(num,den) R = -2.5000 5.000 P = 0.8000 0.5000 K = -2.5 Por simple inspección de la tabla, la transformada inversa resulta: x(k) = 5 (0, 5) k 2,5 (0, 8) k 2, 5 δ(k) (5) que es el resultado de la ecuación en diferencias en forma cerrada. Para verificar el resultado, puedo compararlo con el método de Matlab. N=30; delta=1 eros(1,n)] %Metodo iterativo - Expresion en forma cerrada for k=1:n+1 x(k)=5*(0.5)^(k-1)-2.5*(0.8)^(k-1)-2.5*delta(k); Alumno: Guillermo Tabeni, UTN, FRA, 2007 10/11
end k=0:n; subplot(2,1,1); stem(k,x); title( Metodo iterativo - Expresion en forma cerrada ); %Metodo Matlab num=0.5-1]; den=1-1.3.4]; n=0:1:n; x=1 eros(1,n)]; y=filter(num,den,x); subplot(2,1,2); stem(n,y, r ); title( Metodo Matlab ); Alumno: Guillermo Tabeni, UTN, FRA, 2007 11/11