Beruflich Dokumente
Kultur Dokumente
LABORATORIO N 3
USO DE LA TRANSFORMADA Z. CLCULO MANUAL Y CON MATLAB
Y (Z)=
0.792 z 2
( z1 ) (z 20.416 z +0.208)
Para hallar los polos y ceros de esta funcin transferencia seguimos los
siguientes pasos:
Escribimos el siguiente comando para
transferencia en el
dominio Z.
especificar
una
>> z=tf('z');
Escribimos en la variable Yz nuestra funcin transferencia.
>> Yz=.792*z^2/((z-1)*(z^2-0.416*z+.208))
Transfer function:
0.792 z^2
------------------------------------------z^3 - 1.416 z^2 + 0.624 z - 0.208
Sampling time: unspecified
Con este comando Extraemos los polos y ceros de la funcin
transferencia Z
>> [ceros,polos,K]=zpkdata(Yz,'v')
ceros =
0
0
polos =
1.0000
0.2080 + 0.4059i
funcin
0.2080 - 0.4059i
K=
0.7920
Aqu etiquetamos el numerador y el denominador de la funcin
transferencia para observar la grfica de los polos y ceros en el plano z
de esta forma sabemos si el sistema cumpla con la condicin de
estabilidad.
>> [num,den]=tfdata(Yz,'v')
num =
0
0.7920
den =
1.0000 -1.4160
0.6240 -0.2080
Los polos siendo dos de ellos imaginarios se observa en la grfica que estn
dentro del circulo de radio 1 por lo que su amplitud tambin ser menor a
1 ; tambin se observa un polo en el borde del circulo actuando de forma
oscilante.
CALCULO MANUAL:
Ser necesario comprobar manualmente si los polos se encuentran dentro
del crculo de radio 1 para saber si cumple con la condicin para aplicar el
teorema de valor inicial y final.
z 0.416 z+ 0.208=0
Z 2=
Y ( 0 )=lim Y ( z)
z
Y ( Z)=
; definiendo
0.792 z 2
=
( z1 )( z2 0.416 z+ 0.208)
0.792 z 2
( z1 ) ( z 20.416 z +0.208)
lim 0.792
)
(1 1z )(z 0.416+ 0.208
z
Y ( 0 )=lim
z
Y ( 0 )=
0.792
)
(1 1 )(0.416+ 0.208
0.792
=0
Y ( 0 )=0
TEOREMA DEL VALOR FINAL:
2
Definiendo:
Y ( Z)=
0.792 z
2
( z1 ) (z 0.416 z +0.208)
( z1 ) 0.792 z2
2
z 1 ( z1 ) ( z 0.416 z+ 0.208)
Y ( )=lim
[( z1)Y ( z)]=lim
z 1
(1)20.416 ( 1 )+ 0.208
0.792(1)2
Y ()=lim
=1
z1
Y ( )=1
3.
y ( k )=h (k )
>> Xz=[1 zeros(1,10)];
Se expresa en un vector todos los valores resultantes que nos da la
secuencia de ponderacin
h(k)
debido a la entrada.
>> Yz=filter(num,den,Xz);
Definimos los valores de k desde 0 hasta 10 como nos pide la pregunta
para la grfica
>> n=0:1:10;
Con este comando podemos observar la secuencia de ponderacin
grficamente.
>> stem(n,Yz);
>> xlabel('k');
GRAFICA RESULTANTE:
CALCULO MANUAL:
El mtodo ms sutil para hallar la transformada inversa es la DIVISION
DIRECTA, pero debido a que los coeficientes son decimales; los clculos para
hallar los 11 valores de secuencia de ponderacin resultara muy extenso
por lo que damos por resultado definitivo a los VALORES PROPORCIONADOS
POR LA GRFICA. Y si queremos los valores ejecutamos el comando FILTER:
>>Yz=filter(num,den,Xz)
Yz =
0.0141 0.0669 0.1626
0.9767 1.0743 1.1500
5.
0.2879
0.4305
0.5792
0.7245
0.8588
y ( k )
la
5 (
1 (
1 k ( )
y k1 ) +
y k 2 )=
u k , donde y (1 )=6 e y (2 )=25
6
6
5
()
()
()
1
= Z Y ( Z )+ 6
Z [ y (k 2) ] =Z Y ( Z )+ y (1 ) Z + y (2 ) Z
2
1
2
= Z Y ( Z )+ 6 Z +25 Z
[( ) ]
5
1
1
Z [ y ( k ) ]
Z [ y ( k 1 ) ] +
Z [ y ( k 2 ) ]=Z
6
6
5
()
()
Z
Z
Z(1 /5)
5
1
Y (Z ) [ Z1 Y ( Z ) +6 ] +
6
6
( 2Y ( Z ) +6 Z1+25 Z2)=
Y (Z)
5 1
1 1
6 25
Z
Y ( Z ) +6 + ( 2 Y ( Z )+ + 2 )=
6 Z
6 Z
Z Z
Z(1/5)
Y ( Z ) 1+
] ()
1
5
=
2
6Z 6Z
1 5Z
Y (Z ) Z2+
=
6 6
Y ( z ) z 3
1 25 1
+5
Z 6 Z2
1
Z
5
Z
Z
( 15 )
+5 Z 2Z
( )
25
6
31 2 1
1
11
7
1
z + z
= z 3 z 2 + z
30
3
30
6
6
5
11 3 7 2 1
z z+ z
6
6
5
Y (z)=
31
1
1
z 3 z 2 + z
30
3
30
Ahora para la transformada inversa de z debemos acudir a las fracciones
parciales un calculo manual es extenso para hallar los valores por lo tanto
utilizaremos el comando RESIDUE para que lo separe en fracciones parciales
que nos dar sus polos y los valores que convierte a la funcin Y(Z).
Etiquetamos el numerador y denominador de Y(Z)
>> num=[0 11/6 -7/6 1/5];
>> den=[1 -31/30 1/3 -1/30];
Y (z )=
3/2
z1 /2
Z 1 [Y ( z ) ] =Z1
y ( k )=
2
3
z
1
3
1
z 1/5
3 /2
z1/2
2
3
1
z
3
1
z1/5
3 1 k 2 1 k 1 k
+
; k 0
2 2
3 3
5
() ()()
GRAFICA
RESULTANTE
7.
Usar
el
mtodo de la divisin directa para obtener la transformada z
inversa. El sistema es estable?. Por qu?. Mostrar el diagrama
de polos y ceros en el plano z. Si el sistema es inestable,
implementar la modificacin necesaria para que deje de serlo.
1
X ( z )=
z (1z )
(1+ z 2 )2
X ( z )=
1 z 1
(
)
z z2
2
z +1
)
2
z
z
2
( 2+ 1)
z
z 21
X ( z )=
X ( z )=
z 3z
z 4+ 2 z 2 +1
z 31 z z 4 +2 z2 +1
z 32 zz1 z 13 z3 +5 z5 7 z 7
3 zz
3 z+6 z 1 +3 z3
5 z1 +3 z3
5 z110 z35 z5
3
7 z 5 z
La secuencia de ponderacin es :
x(k)= { 0 ; 1; 0 ;3 ; 0 ; 5 ;7 ; 0; 9;11 ; }
la secuencia de ponderacin indica que el valor sigue aumentando por lo
que nos queda decir que el SISTEMA ES INESTABLE.
>>den=[1 0 2 0 1];
>> Xz=[1 zeros(1,20)];
>> Yz=filter(num,den,Xz);
>> n=0:1:20;
>> stem(n,Yz);
>>
GRAFICA RESULTANTE
1
x (t)= (1eat )
a
Separamos por partes la expresin x(t):
1 eat
x ( t )=
a
a
Aplicando transformada de laplace a ambos miembros :
at
1 e
Z [ x ( t ) ]=Z [
]
a
a
Transformando a Laplace :
X ( z )=
1
1
1
a ( 1z ) a ( 1eak z1 )
1eak z11+ z1
X ( z )=
a ( 1z1 ) ( 1eak z 1 )
Factorizamos
ak
1e
z1( 1eak )
1
X ( z )=
a ( 1z1 ) ( + z2 eak )
x ( k + 2 )=x ( k +1 )+ x ( k ) (0)
Z [ x (k +2) ] =z X ( z )z x ( 0 ) zx ( 1 ) (1)
Z [ x (k +1) ] =ZX ( z )Zx ( 0 ) (2)
Z [ x (k ) ] =X ( z ) (3)
z 2 X ( z )z=zX ( z ) + X ( z ) (4)
z
(5)
z z 1
2
>>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 usando comando filter
>>num=[0 1 0];
>>den=[1 -1 -1];
>>n=0:1:N;
>>x=[1 zeros(1,N)];
>>y=filter(num,den,x);
6) Resuelva la siguiente ecuacin en diferencias tanto de manera
analtica como en matlab. La funcin de entrada u[k]=1 para k=0,
1, 2
x ( k + 2 )x ( k +1 )+ 0.25 x ( k ) =u ( k +2 ) (0)
Donde:
x ( 0 )=0
x (1)=2
x (k )
Z [ x (k )] =X ( z ) (1)
x ( k + 2 ) , x ( k + 1 ) y de
Z [ x (k +2) ] =z 2 X ( z )z 2 x ( 0 ) zx ( 1 ) (3)
2
z
2
(
)
(
)
(
)
Z [ u(k + 2) ] =z U z z u 0 zu 1 =
z 2z (4 )
1
1 z
2
z X ( z )z 2 zzX ( z )+ z +0.25 X ( z )=
X (z )
z
Despejamos:
z2
2
z z
1
1z
1
2
( z1 )
X ( z)
z2
z2
= 3
=
z
z 2 z2 +1.25 z0.25
La funcin:
X (z )
z
X (z)
=
z
b1
b2
b3
+
+
1
1
1 (z1)
z ( z ) z
2
2
2
( )
( )
1 2 X (z ) 1
b 1= ( z ) .
=
2
z
2
{ [
]}
d
1 2 X ( z)
b 2=
( z ) .
=3
dz
2
z
b 3= ( z1 ) .
X ( z )=
1 1
z
2
(1 12 z )( 1 12 z )
1
3
4
+
1
1
1 z1 1z
2
x ( k )=
k 3
+4
2k 2 k
Utilizando el matlab:
X (z )
=4
z
El comando filter efecta una funcin similar. Defina vectores a=[a0, a1,
an] y b=[b0, b1,..bm], que representan los coeficientes de la ecuacin
en diferencias.
Si X es un vector que representa la seal de entrada, entonces el
comando y=filter(b,a,x) da por resultado un vector y que representa la
salida del sistema para condiciones iniciales cero.
Las condiciones iniciales utilizadas por filter no son los valores pasados
de las salidas, pues filter emplea una forma modificada de la
ecuacin
en diferencias para determinar la salida. Las condiciones
iniciales se obtienen del conocimiento de valores pasados empleando el
comando zi= filtic (b,a,yi)donde yi es un vector que contiene las
condiciones iniciales en el orden [y(-1), y(-2),..y(-N). Ilustramos el uso
x=
Columns 1 through 15
Columns 16 through 30
Columns 31 through 45
Columns 46 through 50
>> n=0:100;
>> x=cos(0.1*pi*n);
>> zi=filtic(b,a,[0]);
>> y=filter(b,a,x,zi);
>> stem(1:101,y);
CONCLUSIONES:
1. Se obtuvo la secuencia de ponderacin con una seal que tiende hacer
estable
2. Los comandos FILTIC, STEM,FILTER han demostrado de ayuda para hallar
la secuencia de ponderacin y tener la representacin grafica de la
misma.
3. Para obtener las antitransformadas se tuvo que emplear mtodos
matemticos como las fracciones parciales y la Division Directa por la
cual las herramientas de Matlab nos ayudan a resolverlos.