Anda di halaman 1dari 10

UNIVERSIDAD NACIONAL

PEDRO RUIZ GALLO


INGENIERIA ELECTRONICA
TELECOMUNICACIONES I

PRACTICA

Docente:
SEGURA ALTAMIRANO, FRANCISCO

Integrantes:
ZAMORA VENTURA, JHOSSEP JOSSIMAR

Lambayeque, Mayo 2014

GRABAR USANDO EL MATLAB (3 seg. DE VOZ),


FRECUENCIA DE MUESTREO Fs: LA MXIMA PERMITIDA.
OBSERVAR EL ESPECTRO
MUESTREAR LA SEAL USANDO Fs=10KHz y 20KHz.

CODIGO MATLAB 10KHz.


clear all
ti=0;
tiempo=4;
Fs=44100;
t=ti:1/Fs:tiempo-1/Fs;
r=audiorecorder(Fs,16,1);
recordblocking(r,tiempo);
x=getaudiodata(r);
%GRABACION DE AUDIO
wavwrite(x,Fs,'record.wav');
sound(x,Fs); % REPRODUCCION DEL AUDIO
x=x';
X=fftshift(abs(fft(x)));
f=linspace(-Fs/2,Fs/2,length(x));
%SEGUNDA SEAL
x2=x;
X2=abs(fft(x2));
f2=linspace(0,Fs/2,length(x2));

%FILTROS PASABAJO DE SEALES


%DE LA PRIMERA SEAL
Fe=Fs/2;
Wp=4500/Fe;
Ws=5000/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[h1,fps1]=freqz(b,a,length(x)/2,Fs);
filtrada1=filter(b,a,x);
FILTRADA1=abs(fft(filtrada1));
%DE LA SEGUNDA SEAL
Fe=Fs/2;
Wp=8000/Fe;
Ws=10000/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[h2,fps2]=freqz(b,a,length(x2)/2,Fs);
filtrada2=filter(b,a,x2);
FILTRADA2=abs(fft(filtrada2));

USANDO

%MODULACION DE SEALES
%DE LA SEGUNDA SEAL
Fmod2=10000;
y2=filtrada2.*cos(2*pi*Fmod2*t); %Reemplazado por
ammod(filtrada2,Fmod2,Fs);
Y2=abs(fft(y2));
fm2=linspace(-Fs/2,Fs/2,length(y2)/2);

%FILTROS PASOBANDA
%DE LA SEGUNDA SEAL
Wp=[10000,12500]/Fe;
Ws=[9500,13000]/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[hpb2,fpb2]=freqz(b,a,length(y2)/2,Fs);
filtpb2=filter(b,a,y2);
FILTPB2=abs(fft(filtpb2));

%PLOTEO DE SEALES
%SEAL 1 EN BANDA BASE
figure(1)
subplot(2,1,1);
plot(t,x,'C')
title('PRIMERA SEAL');
xlabel('t(s)');
grid;
subplot(2,1,2);
plot(f,X,'C');
title('ESPECTRO DE LA PRIMERA SEAL');
xlabel('f(Hz)');
grid;
figure(2)

subplot(3,1,1);
plot(t,y2,'G');
title('MODULACION A 10000 Hz')
xlabel('t(s)');
grid;
subplot(3,1,2);
plot(f,fftshift(abs(fft(y2))),'G');
title('ESPECTRO DE LA MODULACION')
xlabel('f(Hz)');
grid;
%DEMODULACION

suma=filtrada1+filtpb2;
SUMA=abs(fft(suma));
fsuma=linspace(-Fs/2,Fs/2,length(suma)/2);
%FILTRO PASA BAJO A LA SEALES SUMADAS
Wp=11500/Fe;
Ws=12000/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[hdpsg,fdpsg]=freqz(b,a,length(suma)/2,Fs);
filtradadg=filter(b,a,suma);
FILTRADADG=abs(fft(filtradadg));

subplot(3,1,3)
plot(f,fftshift(abs(fft(filtradadg))),'G');
title('SUMA DE ESPECTROS');
grid;
%SEPARACION DE ESPECTROS PARA OBTENER LA SEAL REAL

Wpd2=[10000,12500]/Fe;
Wsd2=[9500,13000]/Fe;
Rpd2=4;%banda de paso max
Rsd2=21;%banda eliminada min
[n,Wn]=buttord(Wpd2,Wsd2,Rpd2,Rsd2);
[b,a]=butter(n,Wn);
[hdpb2,fdpb2]=freqz(b,a,length(filtradadg)/2,Fs);
filtradadpb2=filter(b,a,filtradadg);
FILTRADADPB2=abs(fft(filtradadpb2));
Fd2=10000;
s2=filtradadpb2.*cos(2*pi*Fd2*t);
S2=abs(fft(s2));
fdm2=linspace(-Fs/2,Fs/2,length(s2)/2);
Fe=Fs/2;
Wpdps2=4500/Fe;
Wsdps2=5000/Fe;
Rpdps2=4;
Rsdps2=21;
[n,Wn]=buttord(Wpdps2,Wsdps2,Rpdps2,Rsdps2);
[b,a]=butter(n,Wn);
[hdps22,fdps22]=freqz(b,a,length(s2)/2,Fs);
filtradadps2=filter(b,a,s2);
FILTRADADPS2=abs(fft(filtradadps2));

figure(3)
subplot(4,1,2);
plot(fdpb2,abs(hdpb2),'G');
title('FILTRO PASOBANDA A 10K');
grid;
subplot(4,1,3);

plot(f,fftshift(abs(fft(filtradadpb2))),'G');
title('DESPUES DEL FILTRO')
grid;
subplot(4,1,1);
plot(f,fftshift(abs(fft(filtradadg))),'G');
title('ESPECTROS MUESTREADOS');
grid;
subplot(4,1,4);
plot(f,fftshift(abs(fft(filtradadps2))),'G');
title('DEMODULAMOS Y OBTENEMOS ESPECTRO SEAL NORMAL');
grid;

ILUSTRACIONES:

COMO OBSERVACION SE PUEDE VER QUE PODEMOS REGRESAR A LA


SEAL ORIGINAL ASI LA HAIGAMOS MODULADO. Y HAY QUE TENER
MUCHO CUIDADO QU FILTRO VAMOS A USAR A LA HORA DE
TRATARLA.
TAMBIEN SE OBSERVA QUE LA SEAL AH PERDIDO UN POCO DE SU
POTENCIA EN EL PROCESO.
PARA 20KHz.
clear all
ti=0;
tiempo=4;
Fs=44100;
t=ti:1/Fs:tiempo-1/Fs;
r=audiorecorder(Fs,16,1);
recordblocking(r,tiempo);
x=getaudiodata(r);
%GRABACION DE AUDIO
wavwrite(x,Fs,'record.wav');
sound(x,Fs); % REPRODUCCION DEL AUDIO
x=x';
X=fftshift(abs(fft(x)));
f=linspace(-Fs/2,Fs/2,length(x));
%SEGUNDA SEAL
x2=x;
X2=abs(fft(x2));
f2=linspace(0,Fs/2,length(x2));

%FILTROS PASABAJO DE SEALES


%DE LA PRIMERA SEAL
Fe=Fs/2;
Wp=4500/Fe;
Ws=5000/Fe;

Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[h1,fps1]=freqz(b,a,length(x)/2,Fs);
filtrada1=filter(b,a,x);
FILTRADA1=abs(fft(filtrada1));
%DE LA SEGUNDA SEAL
Fe=Fs/2;
Wp=18000/Fe;
Ws=20000/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[h2,fps2]=freqz(b,a,length(x2)/2,Fs);
filtrada2=filter(b,a,x2);
FILTRADA2=abs(fft(filtrada2));

%MODULACION DE SEALES
%DE LA SEGUNDA SEAL
Fmod2=20000;
y2=filtrada2.*cos(2*pi*Fmod2*t); %Reemplazado por
ammod(filtrada2,Fmod2,Fs);
Y2=abs(fft(y2));
fm2=linspace(-Fs/2,Fs/2,length(y2)/2);

%FILTROS PASOBANDA
%DE LA SEGUNDA SEAL
Wp=[20000,21900]/Fe;
Ws=[19000,22000]/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[hpb2,fpb2]=freqz(b,a,length(y2)/2,Fs);
filtpb2=filter(b,a,y2);
FILTPB2=abs(fft(filtpb2));

%PLOTEO DE SEALES
%SEAL 1 EN BANDA BASE
figure(1)
subplot(2,1,1);
plot(t,x,'C')
title('PRIMERA SEAL');

xlabel('t(s)');
grid;
subplot(2,1,2);
plot(f,X,'C');
title('ESPECTRO DE LA PRIMERA SEAL');
xlabel('f(Hz)');
grid;
figure(2)

subplot(3,1,1);
plot(t,y2,'G');
title('MODULACION A 20000 Hz')
xlabel('t(s)');
grid;
subplot(3,1,2);
plot(f,fftshift(abs(fft(y2))),'G');
title('ESPECTRO DE LA MODULACION')
xlabel('f(Hz)');
grid;
%DEMODULACION
suma=filtrada1+filtpb2;
SUMA=abs(fft(suma));
fsuma=linspace(-Fs/2,Fs/2,length(suma)/2);
%FILTRO PASA BAJO A LA SEALES SUMADAS
Wp=21500/Fe;
Ws=22000/Fe;
Rp=4;
Rs=21;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
[b,a]=butter(n,Wn);
[hdpsg,fdpsg]=freqz(b,a,length(suma)/2,Fs);
filtradadg=filter(b,a,suma);
FILTRADADG=abs(fft(filtradadg));

subplot(3,1,3)
plot(f,fftshift(abs(fft(filtradadg))),'G');
title('SUMA DE ESPECTROS');
grid;
%SEPARACION DE ESPECTROS PARA OBTENER LA SEAL REAL
Wpd2=[20000,21900]/Fe;
Wsd2=[19000,22000]/Fe;
Rpd2=4;%banda de paso max
Rsd2=21;%banda eliminada min
[n,Wn]=buttord(Wpd2,Wsd2,Rpd2,Rsd2);
[b,a]=butter(n,Wn);
[hdpb2,fdpb2]=freqz(b,a,length(filtradadg)/2,Fs);
filtradadpb2=filter(b,a,filtradadg);
FILTRADADPB2=abs(fft(filtradadpb2));

Fd2=20000;
s2=filtradadpb2.*cos(2*pi*Fd2*t);
S2=abs(fft(s2));
fdm2=linspace(-Fs/2,Fs/2,length(s2)/2);
Fe=Fs/2;
Wpdps2=2400/Fe;
Wsdps2=2700/Fe;
Rpdps2=4;
Rsdps2=21;
[n,Wn]=buttord(Wpdps2,Wsdps2,Rpdps2,Rsdps2);
[b,a]=butter(n,Wn);
[hdps22,fdps22]=freqz(b,a,length(s2)/2,Fs);
filtradadps2=filter(b,a,s2);
FILTRADADPS2=abs(fft(filtradadps2));

figure(3)
subplot(4,1,2);
plot(fdpb2,abs(hdpb2),'G');
title('FILTRO PASOBANDA A 20K');
grid;
subplot(4,1,3);
plot(f,fftshift(abs(fft(filtradadpb2))),'G');
title('DESPUES DEL FILTRO')
grid;
subplot(4,1,1);
plot(f,fftshift(abs(fft(filtradadg))),'G');
title('ESPECTROS MUESTREADOS');
grid;
subplot(4,1,4);
plot(f,fftshift(abs(fft(filtradadps2))),'G');
title('DEMODULAMOS Y OBTENEMOS ESPECTRO SEAL NORMAL');
grid;

GRAFICOS:

TAMBIEN SE PUDO RECONSTRUIR LA SEAL. Y OBSERVAMOS TAMBIEN


PERDIDA DE SU POTENCIA.

Anda mungkin juga menyukai