transformada z matlab

Upload: jesus-cardenas

Post on 16-Jul-2015

239 views

Category:

Documents


0 download

TRANSCRIPT

Jcml Oct. 2004-10-22 LA TRANSFORMADA Z La transIormada z bilateralde una seal de tiempo discreto x|n| esta dada por: ( )nn: n x : X =

= | |Ec. (1) es una generalizacion de la transIormada discreta de Fourier, la cual es util para el estudio de seales y sistemas discretos en tiempo. Cuando se hace t fe := , la transIormada z se reduce a la transIormada de Fourier de tiempodiscreto.Sinembargo,transIormadazbilateralexisteparaunamayorgamade sealesquelatransIormadadeFourierdetiempodiscreto.Porestarazon,esutilel comprender el comportamiento de los sistemas estables e inestables. Para una gran clase de seales la transIormada z se puede representar por una relacion de polinomios en z: donde N(:) v D(:) son llamados los polinomios numerador y denominador. LastransIormadaspuedenrepresentarseporunarelaciondepolinomiosllamada transIormadasracionalesysatisIacenecuacionesdediIerenciaslinealesdecoeIiciente constante. LalocalizaciondelasraicesdelospolinomiosN(s)vD(s),llamadaspolosyceros respectivamentedeterminan,medianteunIactormultiplicativoconstante,el comportamiento del sistema LTI. De esta Iorma, las graIicas de la localizacion de los polos y ceros se pueden utilizar para analizar las propiedades del sistema. CONSTRUYENDO DIAGRAMAS POLOS-CEROS PARA SISTEMAS DISCRETOS EN TIEMPO En este tutorial se aprendera a desplegar los polos y ceros de la Iuncion de un sistema racionalen diagrama de polos-ceros.Los polos y ceros de la Iuncion de un sistema racional se pueden calcular en MATLAB mediante el uso de la Iuncion , como se mostro en el tutorial anterior. La Iuncion rotos requiere que el vector coeIiciente sea dado en orden descendiente de la variable independiente. Por ejemplo, considere el sistema LTI con Iuncion de transIerencia: ( )2 322+ +=: :: :: H los polos y ceros se pueden encontrar ejecutando: ( )( )( ) : D: N: X =Jcml Oct. 2004-10-22 b|1 1 0|; a|1 3 2|; zsroots(b) zs 0 1 psroots(a) ps -2 -1 Es comun que se requiera escribir las Iunciones del sistema discretos en tiempo en terminos de orden creciente de z-1. Los coeIicientes de estos polinomios se obtienen Iacilmente de la ecuaciondediIerenciasdecoeIicienteconstantelinealysonenlaIormaenquese requierenparautilizarlasIuncioneso.Sinembargo,silospolinomiosde numeradorydeldenominadornotienenelmismoorden,algunospolosycerosse sobrepondranenz0.Porejemplo,laexpresionanteriordeH(z)sepuederescribirdela siguiente Iorma: ( )2 112 3 11 + +=: ::: H Si requerimos obtener los coeIiciente de la expresion anterior, se tendra lo siguiente: b|1 1 |; a|1 3 2|; zsroots(b) zs 1 psroots(a) ps -2 -1 Observequeelceroen:0noaparece.Paraencontrartodoslospolosyceroscuandose trabaja con la Iuncion del sistema en terminos de :-1, se deben incluir (insertar) los ceros al vectorcoeIicienteparaelpolinomiodemenororden,detalIormaquelosvectores coeIicientes sean de la misma longitud. La Iuncion dpzplot graIica los polos y ceros de sistemas discretos en tiempo. El archivo-M deestaIuncion(dpzplot.m)seencuentraenelComputerExplorationsToolbox.Por conveniencia el archivo-m se lista abajo. function dpzplot(b,a) %function dpzplot(b,a) %Grafica el diagrama de polos-ceros para funciones de sistemas discretos en tiempo%H(z)=b(z)/a(z) definido por los polinomiosnumerador y denominador b y a. Jcml Oct. 2004-10-22 la=length(a); lb=length(b); if (la>lb), b=[b zeros(1,la-lb)]; elseif (lb>la), a=[ a zeros(1,lb-la)]; end ps=roots(a); zs=roots(b); mx=max(abs([ps' zs' .95]))+.05; clg axis([-mx mx -mx mx]); axis('equal'); hold on w=[0:.01:2*pi]; plot(cos(w),sin(w), '.'); plot([0 0], [-mx mx]); text(0.1,1.1, 'Im','sc'); plot(real(ps), imag(ps),'x'); plot(real(zs), imag(zs), 'o'); numz=sum(abs(zs)==0); nump=sum(abs(ps)==0); if numz>1, text(-.1,-.1,num2str(numz)); elseif nump>1, text(-.1,-.1,num2str(nump)); end hold off; ASIGNACION 1)Utilice dpzplot para graIicar los polos y ceros de H(z) en la ecuacion 1. 2)Utilice dpzplot para graIicar los polos y ceros de un Iiltro que satisIace la ecuacion de diIerencias: [ ] [ ] [ ] [ ]. 2 5 . 0 1 n x n v n v n v = + + 3)Utilice dpzplot para graIicar los polos y ceros de un Iiltro que satisIace la ecuacion de diIerencias: [ ] [ ] [ ] [ ] [ ] [ ]. 1 5 . 0 3 125 . 0 2 75 . 0 1 25 . 1 + = + n x n x n v n v n v n v BibliograIia: Buck J.R., Daniel M.M y Singer A.C.Computer explorations in Signals and Systems using Matlab. Ed.PrenticeHall,SignalProcessingSeries,AlanV.Oppenheim,SeriesEditor.1997p.159-160 y173-176.