Este documento presenta un análisis de señales usando la transformada z. Explica cómo encontrar polos y ceros usando MATLAB, y cómo trazar polos y ceros. También muestra cómo hallar la respuesta al impulso y aplicar la transformada inversa z. Por último, explica cómo usar MATLAB para graficar la respuesta en frecuencia de un sistema.
Emprendedores 1 - Plan de negocios Buffet’s - UNTECS
Lab 07 - Analisis de señales - UNTECS
1. UNIVERSIDAD NACIONAL
TECNOLOGICA DEL CONO SUR DE LIMA
INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES
INFORME 07
ANÁLISIS DE SEÑALES
TRANSFORMADA Z
Alumno: Código:
Marvin Thomas Concha Sandoval 2009200023
2012 – II
2. LABORATORIO
Objetivo: Crear y trabajar con sistemas digitales dentro del MATLAB y en su
presentación de resultados.
POLOS (P) Y CEROS (Z):
Sea la función de transferencia en el dominio de z:
Que acomodando es:
En MATLAB podemos hallar los polos:
>> den = [1 -0.25 -0.375];
>> roots(den)
ans=
ans =
0.7500
-0.5000
Al factorizar en fracciones parciales:
3. Trazamos polos y ceros:
>> z = [0]
z=
0
>> p=[0.75; -0.5]
p=
0.7500
-0.5000
>> figure, zplane(z,p)
Gráfica
4. Aplicando la transformada inversa:
Ahora encontraremos la respuesta al impulso o transformada Z inversa de polinomio
basado en el método de expansión de la serie mediante la función “impz”:
Coeficientes numerador y denominador de vectores fila:
>> num = [0 1 0]
num =
0 1 0
>> den = [1 -0.25 -0.375]
den =
1.0000 -0.2500 -0.3750
>> h = impz(num,den,10)
h=
0
1.0000
0.2500
0.4375
0.2031
0.2148
0.1299
0.1130
0.0770
0.0616
5. Nosotros también podemos usar MATLAB para hallar las fracciones parciales en base
a los coeficientes (residuos), los polos y términos directos.
Donde, al expresarlo en fracciones parciales:
Así que podemos armas estas fracciones parciales, con R: residuo, p = polo:
>> num = [0 1]
num =
0 1
>> den = [1 -0.25 -0.375]
den =
1.0000 -0.2500 -0.3750
>> [R,P,K] = residuez(num,den)
R=
0.8000
-0.8000
6. P=
0.7500
-0.5000
K=
[]
En base a esto, podemos armas las fracciones parciales:
Ya en este paso, es fácil aplicar la transformada inversa y hallar x(n).
Por último, vamos a trazar la respuesta en frecuencia de un polinomio en particular
usando “freqz”.
>> num = [0 1 0]
num =
0 1 0
>> den = [1 -0.25 -0.375]
den =
1.0000 -0.2500 -0.3750
>> figure, freqz(num, den, 512)
7. Obteniendo las gráficas:
Hay que observar que hemos elegido como número a 512, como el número de puntos
a utilizar en la trama que va de 0 a pi. La función a usar es:
>> freqz(num,den,N)
También podemos optar por:
>> [H,f] = freqz(num, den, N, Fs)
>> plot(f, abs(H))
8. Donde ‘Fs’ es la frecuencia e muestreo. Se calculan valores entre 0 y Fs=n. Los datos
de respuesta frente a frecuencia se almacenan en H.
>> num = [0 1 0]
num =
0 1 0
>> den = [1 -0.25 -0.375]
den =
1.0000 -0.2500 -0.3750
>> [H,f] = freqz(num,den,512,8000)
H=
2.6667
2.6654 - 0.0600i
2.6616 - 0.1198i
2.6553 - 0.1793i
2.6466 - 0.2383i
…
…
3.9531
3.9609
3.9688
3.9766
3.9844
3.9922
>> plot(f,abs(H))
10. HOMEWORK
1. Encontrar el parcial z-transformada inversa de la H(z) a través de la
expansión de fracción parcial de Matlab.
ROC: |z| > ½
2. Dibujar la trama de Polo-cero de X(z)
3. Dibujar la trama magnitud y fase de X(ejw)
Solución.
1. Usamos la expansión de fracción parcial de MATLAB para nuestra expresión:
>> num = [4 -7/4 1/4]
>> den = [1 -3/4 1/8]
>> [R,P,K] = residuez(num,den)
R=
3
-1
P=
0.5000
0.2500
K=
2
11. Con R, P, K podemos armar las fracciones parciales.
Recordemos que:
Que también es:
Luego, tenemos:
( )
. .
Ahora podemos hallar la transformada inversa:
( ) ( . ) ( . ) ( ) ( )
12. 2. Ahora trazamos la trama Polo-Cero de X(z):
Usaremos el siguiente algoritmo de MATLAB:
>> num = [4 -7/4 1/4]
>> den = [1 -3/4 1/8]
>> figure, zplane(num,den)
Gráfica de polos-ceros
13. 3. Por último dibujamos la trama de magnitud y fase de X(z) o X(e^(jw))
Usamos el ‘freqz(num,den,N)’:
>> num = [4 -7/4 1/4]
>> den = [1 -3/4 1/8]
>> figure, freqz(num, den, 512)
Fin de Laboratorio