You are on page 1of 17

PROCESAMIENTO DIGITAL DE SEALES

TRABAJO COLABORATIVO PASO 3

PRESENTADO POR
JORGE ALBERTO GARZON RENDON. CODIGO C.C 14.697.186
LARRY JESUS PALOMARES RODRIGUEZ. CODIGO: C.C 14836731
AGUSTIN FRANCISCO MONTAO DE LA CRUZ. CODIGO: C.C 16.510.542
TUTORA
ANA ISABEL BOLAOS

GRUPO 299004-19

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA (UNAD)


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E INGENIERIA
INGENIERIA ELECTRONICA
CEAD PALMIRA

FECHA DE PRESENTACION
MAYO DEL 2015

INTRODUCCION
En este trabajo colaborativo paso 3 se aplicara temtica de la unidad 3 del mdulo
procesamiento digital de seales desarrollando tres puntos prcticos en el software Matlab
para realizar el procesamiento digital de seales de una seal de audio con la frase
procesamiento digital de seales paso 3 en donde se grabara en el entorno de Matlab,
luego se procesara y llamara, sacndole despus el eco y posteriormente se le eliminara
este.

1. Grabar desde MatLab la frase Procesamiento Digital de Seales Paso 3 con su voz en
un archivo de audio.wav y una frecuencia de muestreo de 44100Hz, apoyarse en la funcin
wavrecord() o audiorecorder() dependiendo de la versin de Matlab. Reproducir la seal y
guardarla en la carpeta de trabajo de MatLab con el nombre voz.wav. Graficar la seal en el
dominio del tiempo y su espectro.
PUNTO 1. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.

CODIGO MATLAB
Grabacin y graficacion archivo de audio en dominio del tiempo y espectro
clc
clear all
close all
fs=44100; % frecuencia de muestreo a utilizar, para este caso la voz.
T = 1/fs;
y=wavrecord(7*fs,fs,1); % La muestra sera de 7seg. y el (1) indica que es mono.
L= length(y);
t=(0:L-1)*T;
figure(1)
subplot(2,1,1);plot(y);title ('Seal Original - Dominio Tiempo'); %Titulo Grafica
xlabel('Tiempo(s)')
ylabel('y(t)')
sound(y,fs); % Reproduccion de la muestra.
wavwrite(y,fs,'voz.wav'); % Almacenamiento de la muestra con 16 bits
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
subplot (2,1,2);plot(f,2*abs(Y(1:NFFT/2+1)));title('Seal Original - Dominio Frecuencia')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')

PUNTO 1. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO


Pantallazos simulacin grabacin archivo de audio en dominio del tiempo y
espectro

Pantallazo ampliado simulacin grafica archivo de audio en dominio del tiempo y


espectro

PUNTO 1. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.


CODIGO MATLAB
llamando archivo de audio voz.wav en dominio del tiempo y espectro

[x,fs,nbits]=wavread('voz.wav'); %obtencion del vector de la muestra de audio.


T = 1/fs;
sound(x,44100); %Reproduccion de la muestra con un Fs optima para la muestra (44100).
L= length(x);
t=(0:L-1)*T;
figure
subplot(2,1,1);plot(x);title ('Seal Original - Dominio Tiempo'); %Titulo Grafica
xlabel('Tiempo(s)')
ylabel('y(t)')
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(x,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
subplot (2,1,2);plot(f,2*abs(Y(1:NFFT/2+1)));title('Seal Original - Dominio Frecuencia')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
Pantallazos simulacin llamando archivo de audio en dominio del tiempo y espectro

PUNTO 1. APORTE DEL COMPAERO JORGE ALBERTO GARZON RENDON.


Pantallazos Matlab simulacin seal eco en dominio del tiempo y espectro

PUNTO 1. APORTE DEL COMPAERO LARRY JESUS PALOMARES RODRIGUEZ.


Codigo Matlab Grabacin Y Graficacion Archivo De Audio En Dominio Del Tiempo
Y Espectro

fs=44100;
>> y=wavrecord(2*fs,fs,2);
Warning: WAVRECORD will be removed in a future release. Use AUDIORECORDER
instead.
> In wavrecord at 42
>> wavwrite(y,fs,16,'Larry_audio.wav');

>> sound(y,fs);
>> s=wavread('Larry_audio.wav');
>> plot(y)
>> title('audio');
>> grid on

PUNTO 1. APORTE DEL COMPAERO LARRY JESUS PALOMARES RODRIGUEZ.


Pantallazos Matlab simulacin seal voz en dominio del tiempo y espectro

PUNTO 2. Investigar la forma de agregar eco a la seal de voz, reproducir la seal


resultante y guardarla en la carpeta de trabajo bajo el nombre eco.wav. Graficar la seal en
el dominio del tiempo y su espectro.
PUNTO 2. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.
CODIGO MATLAB
Graficacion en dominio del tiempo y espectro seal voz y eco
clc
clear all
close all
[x,fs,nbits]=wavread('voz.wav'); %obtencion del vector de la muestra de audio.
T = 1/fs;
sound(x,44100); %Reproduccion de la muestra con un Fs optima para la muestra (44100).
L= length(x);
t=(0:L-1)*T;
figure
subplot(4,1,1);plot(x);title ('Seal Original - Dominio Tiempo'); %Titulo Grafica
xlabel('Tiempo(s)')
ylabel('y(t)')
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(x,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
subplot (4,1,2);plot(f,2*abs(Y(1:NFFT/2+1)));title('Seal Original - Dominio Frecuencia')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
x1=[x;zeros(6500,1)]; % se amplia la seal generando interferencias
x2=0.5*[zeros(6500,1);x]; % se reduce la seal
x3=x1+x2; %union de seales con frecuencia baja y alta combinadas generando el efecto
de desfase
subplot (4,1,3);plot(x3); title ('Seal Eco original- Dominio del tiempo
Estudiante:AGUSTIN FRANCISCO MONTAO DE LA CRUZ. INGENIERIA.
ELECTRONICA 8 Semestre UNAD'); %Titulo Grafica
xlabel('Tiempo(s)')
ylabel('y(t)')
wavplay(x3,fs);%Se llama seal de audio con eco x=3 para escucharla
L= length(x3);
t = (0:L-1)*T;
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(x3,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);% Plot single-sided amplitude spectrum.
subplot(4,1,4); plot(f,2*abs(Y(1:NFFT/2+1))); title('Seal Eco Original - Dominio
Frecuencia')

xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
grid on
PUNTO 2. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.
Pantallazos Matlab simulacin seal eco en dominio del tiempo y espectro

Pantallazos Matlab simulacin seal eco en dominio del tiempo y espectro

PUNTO 2. APORTE DEL COMPAERO LARRY JESUS PALOMARES RODRIGUEZ.

CODIGO MATLAB
Graficacion en dominio del tiempo seal eco

Fs=44100;
>> y=wavrecord(7*Fs,Fs,1);
Warning: WAVRECORD will be removed in a future release. Use AUDIORECORDER
instead.
> In wavrecord at 42
sound(y,Fs);
plot(y);
y1=[y;zeros(6500,1)];
y2=0.5*[zeros(6500,1);y];
y3=y1+y2;
plot(y3);
>> wavplay(y3,Fs);
Warning: WAVPLAY will be removed in a future release. Use AUDIOPLAYER instead.
> In wavplay at 41
>> wavwrite(y3,Fs,16,'larry eco.wav');

PUNTO 2. APORTE DEL COMPAERO LARRY JESUS PALOMARES RODRIGUEZ.

Pantallazos Matlab simulacin seal eco en dominio del tiempo

PUNTO 2. APORTE DEL COMPAERO JORGE ALBERTO GARZON RENDON.


Pantallazos Matlab simulacin seal eco en dominio del tiempo

PUNTO 3. Investigar la forma para remover el eco, reproducir la seal resultante y


guardarla en la carpeta de trabajo de MatLab bajo el nombre sin_eco.wav, graficarla en el
dominio del tiempo y graficar su espectro.
PUNTO 3. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.
CODIGO MATLAB
seal con eco y sin eco en dominio del tiempo y espectro
clc
clear all
close all
[x,fs,nbits]=wavread('voz.wav'); %obtencion del vector de la muestra de
audio.
T = 1/fs;
sound(x,44100); %Reproduccion de la muestra con un Fs optima para la
muestra (44100).
x1=[x;zeros(6500,1)]; % se amplia la seal generando interferencias
x2=0.5*[zeros(6500,1);x]; % se reduce la seal
x3=x1+x2; %union de seales con frecuencia baja y alta combinadas
generando el efecto de desfase
subplot (4,1,1);plot(x3); title ('Seal con eco - Dominio del Tiempo');
xlabel('Tiempo(s)')
ylabel('y(t)')
wavplay(x3,fs);%Se llama seal de audio con eco x=3 para escucharla
L= length(x3);
t = (0:L-1)*T;
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(x3,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);
subplot(4,1,2); plot(f,2*abs(Y(1:NFFT/2+1))); title('Seal con eco Dominio de la Frecuencia');
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
x4=x3-x2;
wavwrite(x3,fs,'sin eco')
[x4,fs]=wavread('sin eco');
subplot(4,1,3); plot(x4);('seal sin eco dominio del tiempo');
xlabel('Tiempo(s)')
ylabel('y(t)')
wavplay(x4,fs);
L= length(x4);
t = (0:L-1)*T;
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(x4,NFFT)/L;
f = fs/2*linspace(0,1,NFFT/2+1);
subplot(4,1,4); plot(f,2*abs(Y(1:NFFT/2+1))); title('Seal con eco Dominio de la Frecuencia');
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
title('seal sin eco');

PUNTO 3. APORTE DEL COMPAERO AGUSTIN FRANCISCO MONTAO.


Pantallazo en matlab seal con eco y sin eco en dominio del tiempo y espectro

Pantallazo en matlab seal con eco y sin eco en dominio del tiempo y espectro

PUNTO 3. APORTE DEL COMPAERO JORGE ALBERTO GARZON RENDON


seal con eco y sin eco en dominio del tiempo y espectro

CODIGO MATLAB
seal con eco y sin eco en dominio del tiempo y espectro

PUNTO 3. APORTE DEL COMPAERO JORGE ALBERTO GARZON RENDON


Pantallazo en matlab seal con eco y sin eco en dominio del tiempo y espectro

CONCLUSIONES
Este trabajo nos enseo a trabajar con el software en Matlab aplicando las temticas de la
unidad 3, en donde apreciamos que podemos grabar una seal en matlab por medio del
comando y=wavrecord(7*fs,fs,1); llamar a esta seal por medio del comado
wavwrite(y,fs,'voz.wav'); escuchar esta seal por medio del comando sound(y,fs);
transformarla para que se grafique en el dominio del tiempo y espectro por medio de los
comandos NFFT = 2^nextpow2(L); Y = fft(x,NFFT)/L; f = fs/2*linspace(0,1,NFFT/2+1);
de igual forma a conocer la temtica y desarrollar los filtros digitales FIR.

REFERENCIAS BIBLIOGRAFICAS

http://www.youtube.com/watch?v=h_6fHeYlc6g
http://datateca.unad.edu.co/contenidos/299004/299004_Modulo.
Pdf
http://www.youtube.com/watch?feature=player_embedded&v=0
vW4KVFV__o

You might also like