You are on page 1of 5

UNIVERSIDAD DE LA SALLE

FACULTAD DE INGENIERA EN AUTOMATIZACIN


ASIGNATURA: ANLISIS DE SEALES
PREPARADO POR: GUILLERMO CAMACHO

PRCTICA N 5 SERIES DE FOURIER DIENTE DE SIERRA FORMA RECTANGULAR

NOTA El informe relacionado con este laboratorio puede ser presentado en grupos de dos personas. Dicho informe
deber ser entregado por correo electrnico el da 12 de Marzo. Un 10% de la evaluacin de este informe es por
presentacin. No se recibirn informes atrasados. Informes copiados recibirn un 1.0
Objetivos
1. Afianzar conceptos relacionados con la descomposicin de un tren de pulsos en
sumatorias de seales seno y coseno
2. Desarrollar habilidades en los estudiantes en el uso y creacin de funciones de usuario en
el entorno Matlab
Requerimiento
Considere la seal x(t) definida en la ecuacin 1 y en la Fig. 1
t 2 0 ; ) ( < < = t t t x
) 2 ( ) ( t + = t x t x

(1)



Fig. 1 Seal x(t) peridica
1. Defina una funcin de matlab que permita calcular x(t) a partir de un vector de tiempo t.
2. Tomando como referencia la serie de Fourier en forma rectangular (ver ecuacin 2),
calcule expresiones analticas para obtener los coeficientes de Fourier A
k
y B
k
de la seal
x(t).


=

=
+ + =
1
0
1
0
0
) sin( ) cos(
2
) (
k
k
k
k
t kw t kw t x | o
o


(2)

3. Disee una funcin que permita calcular las expresiones analticas concluidas en el punto
2. El nombre de su funcin debe ser calculaCoef_rect(K), esta funcin debe retornar
los vectores alfa (Ak) y beta (Bk), con los K primeros coeficientes calculados.
4. Disee un script de matlab que permita reconstruir la seal x(t) a partir de la ecuacin (2).
(Tome como referencia el script presentado en anexo). Realice simulaciones con los
siguientes parmetros
a. K=1
b. K=3
c. K=7
d. K=19
e. K=100
Recomendaciones
- Tome como referencia la Fig. 2 para presentar las grficas requeridas en el punto 4.
- Dentro de sus conclusiones incluya comentarios acerca de la seal de error de
reconstruccin calculada (ver Fig 2).

a) b)
-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (2comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n
-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (4comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n

c) d)

e) f)

Fig. 2. Referencia para presentacin de resultados. Reconstruccin de x(t) a partir de a) K=1, b)K=3, c)K=7, d)K=19, e)
K=100 y f)K=10



-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (8comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n
-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (20comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n
-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (101comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n
-10 -5 0 5 10
0
2
4
6
x
(
t
)


seal original
reconstruccin (11comp)
-10 -5 0 5 10
-2
0
2
tiempo
e
r
r
o
r

d
e

r
e
c
o
n
s
t
r
u
c
c
i

n
16/09/12 12:16 PM C:\Users\MI EQUI...\punto2_rect.m 1 of 2
clc
close all
clear all

% 1. Defincin del nmero de componentes K
K=10;%numero de componentes
T0=2*pi;%Periodo fundamental (seg)
W0=2*pi/T0;%frecuencia fundamental(rad/s)
t=[-4*pi:0.001:4*pi];%vector de tiempo
A0=2*pi;%componente DC
xref=pi*(sawtooth(t)+1);%seal de referencia (resultado pto1)

% 2. Clculo de los coeficientes
[Ak Bk]=calculaCoef_rect(K);%retorna 2 vectores con los K coefcientes

% 3. Clculo de las componentes cosenoidales
[ccos csin]=calculaComp_rect(K, W0, t);%retorna dos matrices. Cada columna de
ccos contiene los componentes
% cosenoidales calculados. Cada columna de csin continen los componentes
% senoidales calculados

% 4. Calculo de la seal diente de sierra a partir de la serie de Fourier
Arep=repmat(Ak',length(t),1);
Brep=repmat(Bk',length(t),1);
x=A0/2+sum(Arep.*ccos,2)+sum(Brep.*csin,2);

% 5. Grafica de resultados
figure,
subplot(211),...
plot(t,xref,t,x)
grid on
legend ('seal original', ['reconstruccin (' num2str(K+1) 'comp)'])
axis tight

ylabel('x(t)')
16/09/12 12:16 PM C:\Users\MI EQUI...\punto2_rect.m 2 of 2
subplot(212),...
plot(t,xref'-x,'r')
xlabel('tiempo')
ylabel(['error de reconstruccin'])
grid on
axis tight

You might also like