Está en la página 1de 7

TRANSFORMADAS DE ‘FOURIER’, ‘LAPLACE’ Y ‘Z’ CON MATLAB

Funciones Impulso y Paso Unitario:

>> u='k*Heaviside(t-a)' % crea una Función paso unitario o de Heaviside

u=
k*Heaviside(t-a)

>> d=diff(u) % calcula la derivada que es la función impulso o Delta de Dirac

d=
k*Dirac(-t+a)

>> int(d) % integra la Función impulso

ans =
-k*Heaviside(-t+a)

Transformada de Laplace:

>> f=sym('exp(-a*t)*cos(w*t)')

f=
exp(-a*t)*cos(w*t)

>> F=laplace(f) % calcula la transformada de Laplace de f

F=
(s+a)/((s+a)^2+w^2)

>> pretty(F)

sssss + a
-----------------------
(s + a)^2 + w^2

>> laplace(sym('Dirac(t)')) % la transformada de la Función impulso es

ans =
1

>> laplace(sym('Heaviside(t)')) % la transformada de la función paso unitario es

ans =
1/s

Luis Cabezas Tito 1 Procesamiento Digital de Señales


Transformada Inversa de Laplace:

>> ilaplace(F) % transforma F a su expresión original

ans =
exp(-a*t)*cos(w*t)

Transformada de Fourier:

Transformada Inversa de Fourier:

>> f='t*exp(-t^2)'

f=
t*exp(-t^2)

>> F=fourier(sym(f)) % transformada de Fourier

F=
-1/2*i*pi^(1/2)*w*exp(-1/4*w^2)

>> ifourier(F) % calcula la transformada inverse de Fourier

ans =
t*exp(-t^2)

-t
Otro ejemplo para f(t) = -e u(t) + 3δ(t):

>> fourier(sym('-exp(-t)*Heaviside(t)+3*Dirac(t)'))

ans =
-1/(1+i*w)+3

Luis Cabezas Tito 2 Procesamiento Digital de Señales


ifourier(ans) % calcula la inversa

ans =
-exp(-t)*Heaviside(t)+3*Dirac(t)

La transformada de Fourier usa la forma symvar(f,'t') para obtener la variable; mientras que, la transformada
inversa de Fourier usa symvar(F,'w') para elegir la variable independiente si no se le especifica.

- t^2
Ejercicio: calcular las transformadas directa e inversa de Fourier para la función g = e

Solución: G = pi^(1/2)*ext(-1/4*w^2)

La Transformada Z:

2 n (−5) n
Hallar la Transformada Z de la función: −
7 7

>> f='2^n/7-(-5)^n/7'

f=
2^n/7-(-5)^n/7

>> G=ztrans(sym(f)) % calcula la transformada Z

G=
1/14*z/(1/2*z-1)+1/35*z/(-1/5*z-1)

>> pretty(G)

z z
1/14 --------- + 1/35 -----------
1/2 z - 1 - 1/5 z - 1

La Transformada Inversa Z:

1
x ( n) = ∫ X ( z ) z n−1dz
2πj c

>> iztrans(G) % calcula la transformada inversa Z de la anterior funcion G.

ans =
1/7*2^n-1/7*(-5)^n

Luis Cabezas Tito 3 Procesamiento Digital de Señales


>> pretty(ans)

n n
1/7 2 - 1/7 (-5)

La transformada Z usa la forma symvar(f,'n') para obtener la variable, mientras que la transformada inversa usa
symvar(F,'z') para elegir la variable independiente si esta no se le especifica.

Sistemas continuos:

Función de Transferencia: H(s) = 100/(s 2 +4s+100)


La respuesta en frecuencia de este sistema se puede dibujar usando la función “bode”:

>> nc=100; dc=[1 4 100]; % coeficientes de los polinomios del numerador y denominador
>> bode(nc,dc)

Su respuesta al escalón se puede dibujar con la función “step”:

>> step(nc,dc)

Su respuesta al impulso se puede dibujar con la función “impulse”:

>> impulse(nc,dc)

Luis Cabezas Tito 4 Procesamiento Digital de Señales


Descripción del espacio de estados de este sistema:

>> [A,B,C,D]=tf2ss(nc,dc)

A=
-4 -100
10

B=
1
0

C=
0 100

D=
0

Para convertir este sistema continuo o analógico a un sistema discreto equivalente a un retenedor de
orden 0 con un periodo de muestreo de 0.01 segundos:

>> [n,d]=c2d(nc,dc,0.01)

n=
2.7183

d=
0.0172 0.0687 1.7183

Sistemas discretos:

Sea la función de transferencia discreta: H(z) = (z + 0.37)/(z 2 – 0.2z + 0.37)


La respuesta en frecuencia de este sistema se puede dibujar usando la función “freqz”:

>> nd=[1 0.37]; dd=[1 -0.2 0.37];


>> freqz(nd,dd)

Los ejes están normalizados, de modo que 1.0 es la frecuencia de Nyquist, es decir, 1.0 es igual a la mitad de la
frecuencia de muestreo.

Luis Cabezas Tito 5 Procesamiento Digital de Señales


La respuesta a un escalón se puede dibujar con la función dstep:

>> dstep(nd,dd)

La respuesta a un impulso se puede dibujar con la función dimpulse:

>> dimpulse(nd,dd)

Convirtiendo el sistema a una representación de estados con tf2ss, a condición de que el numerador sea
rellenado con ceros por delante para que tenga la misma longitud que el denominador:

>> [A,B,C,D]=tf2ss(ndd,dd)

Luis Cabezas Tito 6 Procesamiento Digital de Señales


A=
0.2000 -0.3700
1.0000 0

B=
1
0

C=
1.0000 0.3700

D=
0

----- oOo -----

Luis Cabezas Tito 7 Procesamiento Digital de Señales

También podría gustarte