Sunteți pe pagina 1din 10

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM

[Seleccione la fecha]

UNMSM

CONVOLUCION DE SEALES SENCILLAS

USANDO MATLAB

DCDADCDASCASC

Alumno
Profesor

: Vsquez Cueva Hubert Stalin


12190033
: Ing. Sixto Llosa Portugal

Curso

: Introduccin a las Telecomunicaciones

Semestre

: 2014 - II

Vsquez Cueva Hubert Stalin

Pgina 1

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM


INFORME FINAL DE LABORATORIO DE INTRODUCCION A LAS
TELECOMUNICACIONES
EXPERIENCIA: CONVOLUCION DE SEALES SENCILLAS USANDO
MATLAB.
I.

OBJETIVO:
Reforzar los conceptos tericos sobre convolucin, comprender las limitaciones del
ordenador para trabajar con las seales y su convolucin, comprender las limitaciones del
ordenador para trabajar con las seales y su convolucin, comparar los resultados del
ordenador con analticos.

II.

EQUIPOS Y MATERIALES:
1. MATLAB
2. PC Pentium II-actual.

III.

PROCEDIMIENTO:
Para esta prctica hemos desarrollado una funcin que el ayudara a realizar cada ejercicio.

1 paso: En el programa Matlab, ingresar al men File New M-File. Aqu


crearemos la funcin myconv.m
2 paso: digitar en el editor lo siguiente:
function[y,X]=myconv(x,h)
%esta funcion evalua la convoolucion de dos funciones finitas
x=x(:);
h=h(:);
nx=length(x);
nh=length(h);
ny=nx+nh-1;
X=zeros(nh,ny)';
for i=1:nh
X((1:nx)+(i-1),i)=x;
end
y=X*h;
y=y(1:1:ny);
y=y/max(abs(y));

3 paso: guardar el archivo con el nombre myconv

Vsquez Cueva Hubert Stalin

Pgina 2

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM


1. Convolucin de seales Finitas.
a) Vamos a calcular la convolucin entre dos seales x(t) y h(t) que, en este caso, van a ser
iguales, x y h van a ser (ambas) un pulso rectangular centrado en t=0, de amplitud 1 y
que se extender desde t=-1 a t=1.
SOLUCION
Veamos cmo generarla en Matlab:
t=-5:0.1:5; % base de tiempo de x
L=length(t); % longitud
p1=find(t==-1);
p2=find(t==1); %localizar los puntos
x=zeros(1,L);
x(p1:p2)=1;% pulso entre -1 y 1
figure(1)
plot(t,x)
h=x; %h es igual a x
figure(2)
plot(t,h)
y=myconv(h,x);% usamos la funcion creada
w=-10:0.1:10;% base de tiempo de y
figure(3)
plot(w,y)

Vsquez Cueva Hubert Stalin

Pgina 3

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM

a.

Realizar la convolucin de las siguientes seales:

x(t): pulso triangular en t=0, altura 1, entre t=-2 y t=2.


h(t): pulso rectangular de altura 1, entre t=-2 y t=2.

SOLUCION
Para generar el pulso rectangular h(t9 lo haremos como en el ejercicio anterior,
mientras que para generar la funcin triangular x(t) lo haremos de la siguiente
manera:

Vsquez Cueva Hubert Stalin

Pgina 4

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM


p3=find(t==-2);
p4=find(t==0);
p5=find(t==2);
x=zeros(1,L);
x(p3:p4)=t(p3:p4)/2+1;
x(p4:p5)=-t(p4:p5)/2+1;
figure(4)
plot(t,x)
h=zeros(1,L);
h(p4:p5)=1;
figure(5)
plot(t,h)
y=myconv(h,x);
figure(6)
plot(w,y)

Vsquez Cueva Hubert Stalin

Pgina 5

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM

2. Convolucin de seales finitas.


Las convoluciones donde intervienen seales infinitas en tiempo son imposibles
de calcular en Matlab ya que no se puede tener un vector de valores de tamao
infinito. Sin embargo, vamos a hacer algunos ejemplos donde veremos que si es
posible hacer clculos aproximados.
a. Empezaremos por generar una seal que podramos llamar cuasi-finita
como es el caso de ( )
valores son prcticamente nulos).

( )

(cuasi-finita porque a partir t=2 sus

Luego haremos la convolucin con la funcin rectangular del ejercicio anterior


SOLUCION:
Para generar x(t) primero debemos generar la funcin pulso unitario u(t), que es
una funcin igual 1 pata t>=0 y para t<0.
p6=find(t==5);
u=zeros(1,L);
u(p4:p6)=1;
figure(7)
plot(t,u)
x=(3/2)*exp(-3*t/2).*u;
figure(8)
plot(t,x)
y=myconv(h,x);
figure(9)
plot(w,y)

Vsquez Cueva Hubert Stalin

Pgina 6

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM

Vsquez Cueva Hubert Stalin

Pgina 7

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM


2.2 Ahora vamos a cambiar la seal de entrada por h(t)=u(t). Ntese que vamos a
aumentar considerablemente la complicacin porque se trata de dos seales
infinitas y, adems, la h(t) no tiende a cero como si lo hace x(t).
h=u;
figure(10)
plot(t,h)
y=myconv(h,x);
figure(11)
plot(w,y)

Vsquez Cueva Hubert Stalin

Pgina 8

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM


3. Convolucin con seales peridicas
Vamos a terminar la prctica con un ejemplo de seales peridicas.
Mantendremos x(t) igual a la del apartado anterior (seal exponencial) y haremos
h(t)=cos(2t). Cuando una de las dos seales de una convolucin es peridica, el
resultado es peridico con el mismo periodo. En este caso, h(t)es peridica con
periodo fundamental T0=2/2=1 seg.
h=cos(2*pi*t);
figure(12)
plot(t,h)
y=myconv(h,x);
figure(13)
plot(w,y)

Vsquez Cueva Hubert Stalin

Pgina 9

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA - UNMSM

Vsquez Cueva Hubert Stalin

Pgina 10

S-ar putea să vă placă și