LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
UNIVERSIDAD NACIONAL NACIONAL MAYOR DE SAN MARCOS UNIVERSIDAD DEL PERÚ, DECANA DE AMÉRICA
FACULTAD DE INGENIERÍA ELÉCTRICA, ELECTRÓNICA Y TELECOMUNICACIONES APELLIDOS Y NOMBRES
Nº DE MATRÍCULA
Ccoyori Mendoza Mario
16190114
CURSO
TEMA
LAB. PROCESAMIENTO DE SEÑALES DIGITALES
TRANSFORMADA Z
INFORME
FECHA
FINAL
NOTA
REALIZACIÓN
ENTREGA
13/06/19
20/06/19
NÚMERO 5
GRUPO
PROFESOR
GRUPO HORARIO: VIERNES DE 8-10PM G15
OPORTO
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
EXPERIENCIA N°5
TRANSFORMADA Z I.
OBJETIVOS
a) Analizar y comprobar las diversas propiedades y utilidad de la transformada Z. II.
EQUIPOS Y MATERIALES Computador con Matlab
III. MARCO TEORICO/INFORME TEORICO/INFOR ME PREVIO Presentar los conceptos fundamentales del tema. VI. PROCEDIMIENTO 01. Las secuencias discretas, expresadas mediante transformada Z, son polinomios que pueden pued en tener ceros y polos. Dados ciertos polos y ceros, esto s se pueden graficar en el plano complejo. Código en Matlab %asignar un vector para zeros z=[j;-j]; %asignar un vector para polos p=[-1; .5+.5j; .5-.5j]; figure(1); zplane(z,p); title('Pole/Zero title('Pole/Zero Plot para plo complejo/ Zero/ plot zero ejemplo' )
Grafica
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
02. Defina los polos y ceros de una secuencia y grafíquela en el plano complejo. Identifique en la gráfica cada uno de los polos y ceros definidos. Código en Matlab %asignar un vector para zeros z=[1+j;1-j]; %asignar un vector para polos p=[-2; .4+.4j; .4-.4j]; figure(2); zplane(z,p); title('Pole/Zero title('Pole/Zero Plot para plo complejo/ Zero/ plot zero ejemplo' )
Grafica
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
03. Operaciones con números complejos Código en Matlab %Operaciones básicas con números complejos. z1=3+j*4; z2=4+j*5; z=3+j*4; zm=abs(z) %dar la magnitud de z zp=angle(z) %Dar la fase de z en radianes z3=z1+z2 %Adicion z4=z1-z2 %Diferencia z5=z1*z2 %Multplicacion z6=z1/z2 %Division
04. Formas de definir números complejos Los números complejos se pueden definir de diversas formas en Matlab. Código en Matlab clc clear z1=3+i*4 z2=complex(1,2) z3=2*exp(i*pi/6) z4=2*cos(pi/6)+i*2*sin(pi/6) z5=1.7321+1.0000i 05. Defina un número complejo (a + jb) y genere código para expresarlos en sus otras formas de definición. definición.
Código en Matlab z1=3+5j; angulo=angle(z1) magnitud=abs(z1) parte_real=real(z1) %parte real parte_imaginaria= imag(z1) %parte imaginaria z2=cos(angulo)+j*sin(angulo) % forma trigonométrica
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
06. Funciones para números complejos. complejos.
Código en Matlab clc abs(4+j*3) angle(4+j*3) z=5*exp(i*0.6435) angle(4-j*3)*180/pi angle(-4-j*3)*180/pi+360 conj(z) real(z) imag(z) 07. Defina un número complejo para números complejo mediante exponenci al compleja y determine expresión cartesiana, su magnitud, su fase y su conjugado.
Código en Matlab
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES 08. Conversión entre cartesiano cartesiano y polar.
Código en Matlab clc clear %conversion cartesiana [ang, rho]= cart2pol(3,4) ang*180/pi theta=0.5 rho=2 %conversion a polar [x,y]=pol2cart(theta,rho)
09. Realice dos ejemplos de conversión entre cartesiano y polar.
10. Graficar números complejos. Analice los siguientes códigos.
%un numero complejo z=randn(1)+j*randn(1) figure(100) plot(z,'o' plot(z, 'o') ) %varios complejos x=-2:0.25:2; z1=x.^exp(-x.^2); z2=2*x.^exp(-x.^2); real_z1=real(z1); imag_z1=imag(z1); real_z2=real(z2); imag_z2=imag(z2); figure(101) plot(real_z1,imag_z1, 'g*' 'g*' ,real_z2,imag_z2, ,real_z2,imag_z2, 'bo' 'bo') )
UNMSM – F F I E E
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
Análisis: El primer código nos grafica un numero complejo aleatorio
Análisis: El segundo código nos plotea varios números complejos
UNMSM – F F I E E
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
11. Defina varios números complejos mediante mediante una sola variable y grafique sus partes real e imaginaria.
Código en Matlab z=randn(1)+j*randn(1) hold on figure(11) plot(z,'o' plot(z, 'o') ) title('Plano title('Plano Complejo') Complejo' ) xlabel('eje xlabel( 'eje real') real' ) ylabel('eje ylabel( 'eje imaginario') imaginario' )
12. Transformada Z de una expresión simbólica
syms n f=sin(n); ztrans(f) syms n1 f1= 1+2*(n1)+3*(n1^2)+4*(n1^3); ztrans(f1) 13. Polos y ceros de una función función de transferencia. transfer encia.
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
Código en Matlab clc z=tf('z' z=tf('z'); ); Yz=.792*z^2/((z-1)*(z^2-0.416*z+.208)) [ceros,polos,K]= zpkdata(Yz, 'v' 'v') ) [num,den] = tfdata(Yz, 'v' 'v'); ); figure(13) zplane(num,den) zgrid
14. Explique la utilidad de las siguientes funciones funciones de Matlab, incluya sus parámetros. tf. : utilidad: Utilice tf para crear modelos de función de transferencia de v alor real o complejo, o para convertir modelos de sistema dinámicos a forma de transferencia de función. Ejemplo:
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
tfdata utilidad: Acceso a los datos de la función de transferencia. transferencia. Ejemplo:
zpkdata utilidad: filtro digital 1-D Ejemplo:
UNMSM – F F I E E
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
zplane utilidad:
Gráfico de cero polos para sistemas de tiempo discreto Ejemplo:
UNMSM – F F I E E
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
Zgrid utilidad: Mostrar u ocultar ejes líneas de cuadrícula Ejemplo:
15. Transformada Z inversa. inversa.
syms z f1 = 2*z/(z-2)^2 iztrans(f1) syms n z iztrans(1/z, z, n) iztrans((z^3 + 3*z^2 + 6*z + 5)/z^5, z, n) iztrans(-10*z/(10/9*z-1)+10*z/(z-1) )
16. Analice y explique los siguientes códigos, códigos, línea a línea.
clc %limpia p4=[-1 -6 -8];%crea -8]; %crea una matriz G4s=zpk([],p4,20) %Especifique modelos de ganancia de polo cero o convierta el modelo LTI %a la forma de ganancia de polo y cero n1=2; d1=[1 2];%limites 2]; %limites G1s = tf(n1,d1)%crea tf(n1,d1) %crea un funcion de transferencia
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
T=0.1; Glz=tf(2,[1 2], T) %crea un funcion de transferencia G2z=zpk([-1 -1],[0 -3],10,0.5) %crea un funcion de transferencia s=tf('s' s=tf('s') ) GIs=2/(s+2)%crea GIs=2/(s+2) %crea un funcion de transferencia G2s=9*s/(s^3+1.5*s+9) %crea un funcion de transferencia z=tf('z' z=tf('z') ) GIs=2/(z+2)%crea GIs=2/(z+2) %crea un funcion de transferencia G2s=9*z/(z^3+1.5*z+9) %crea un funcion de transferencia syms n;%uso simbolico de n f = 1 + 2*(n) + 3*(x^2) + 4*(x^3); %creacion de la funcion ztrans(f) simplify(-10*z/(10/9*z-1)+10*z/(z-1)) [R,P,K] = residue([1 0 0],[1 -1.9 0.9]) %funcion con entradas de dos matrices %salidas R P Y K
17. Mapa de polos y ceros. Explique el código siguiente, línea a línea.
Código en Matlab clc%%limpia clc%%limpia command H = tf([2 5 1],[1 2 3]); %%crea una funcion de transferencia sgrid%crea sgrid%crea lineas figure(170)%creacion figure(170) %creacion de una ventana pzmap(H)%grafica pzmap(H) %grafica de los polos y ceros en el plano s grid on on%poner %poner la grafica con cuadriculas A=2+3i;%crea A=2+3i; %crea un numero complejo figure(171)%crea figure(171) %crea una ventana 171 para el grafico siguiente plot(A);%grafica plot(A); %grafica compass(A);%función compass(A); %función brújula toma sus entradas en formato cartesiano. polar(angle(A), abs(A)); %función polar crea gráficos polares a partir de los datos de ángulo y magnitud. figure(172)%crea figure(172) %crea una ventana para otra grafica plot(A, '*r' '*r'); );%grafica %grafica compass(A, 'b' 'b'); );%función %función brújula toma sus entradas en formato cartesiano. polar(angle(A), abs(A), '*r' '*r'); );%función %función polar crea gráficos polares a partir de los datos de ángulo y magnitud.
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E
LAB. PRO PROCESAMIE CESAMIE NTO DE SE ÑALES DIG I TALES
UNMSM – F F I E E