Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Inicio
El sonido
MATLAB
Anlisis de datos
El sonido
Introduccin
Transformada rpida
de Fourier (FFT)
El sonido
Estadstica del viento
Estadstica de las olas
del mar
Anlisis armnico de
las mareas
Umbral de audicin
El umbral de audicin se define como la intensidad del sonido ms bajo que el odo humano puede percibir y tambin, la
intensidad del sonido ms elevado que el odo humano puede tolerar.
Se han tomado los datos de la tabla 1 (Minimum audible field thresholds) del documento titulado Hearing thresholds, para
representarlos grficamente en escala semilogartmica. En el eje X, la frecuencia en Hz y en el eje Y, la intensidad del
sonido en escala decibelios (dB).
f=[100,125,160,200,250,315,400,500,630,800,1000,1250,1600,2000...
,2500,3150,4000,5000,6300,8000,10000];
dB=[25.1,20.7,16.8,13.8,11.2,8.9,7.2,6.0,5.0,4.4,4.2,3.7,2.6,...
1.0,-1.2,-3.6,-3.9,-1.1,6.6,15.3,16.4];
semilogx(f,dB,'-o','markersize',4,'markerfacecolor','r')
xlabel('Frecuencia (Hz)')
ylabel('Intensidad del sonido (dB)')
title('Umbral de audicin')
grid on
Analizamos el mnimo del umbral de audicin, el intervalo de frecuencias entre 2000 y 5000 Hz. Aadimos el siguiente
cdigo al script anterior que realice las siguientes tareas
1. Que interpole mediante splines los datos de comprendidos entre las frecuencias 2000 a 5000 Hz.
2. Que represente los datos y la interpolacin en este intervalo de frecuencias
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
1/7
18/6/2014
El sonido
Se ha interpolado mediante spline los datos de la tabla (en color rojo) para obtener la frecuencia para la cual el umbral de
acudicn presenta un mnimo.
>> [dBmin,kmin] = min(dBm)
dBmin = -4.1444
kmin =
55
>> fm(kmin)
ans = 3.6364e+003
El mnimo se produce para la frecuencia 3636.4 Hz, valor que tambin podemos obtener en la ventana grfica utilizando
Data Cursor.
I0
12
) I 0 = 10
Para comprender la diferencia entre la escala fsica y la escala prctica se ha realizado el siguiente experiemento. Se
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
2/7
18/6/2014
El sonido
coloca el sensor PASPORT Sound Level Sensor de PASCO. Este sensor mide el sonido en tres escalas siendo
relevantes dos de ellas: decibelios y W/m2. Colocamos el sensor prximo a una fuente de sonido, en este caso un
diapasn de 440 Hz. La intensidad del sonido producido al golpear el diapasn permenece al principio constante,
despus disminuye exponencialmente como podemos comprobar en la parte inferior de la grfica (en color azul) que
hemos obtenido con el programa DataStudio.
La escala decibelios es logartmica y la intensidad del sonido disminuye linealmente con el tiempo, tal como podemos
apreciar en la grfica superior de color rojo. .
Comprobamos la correspondencia entre las dos escalas, por ejemplo a 1000 W/m2 le corresponde una medida de 90
dB.
Exportamos los datos tomados por el sensor a un fichero de texto. Con el Bloc de Notas de Windows eliminamos la
cabecera (dos lneas). Seleccionamos en el men Edicin/Reemplazar y sustitumos la coma (que separa la parte entera
de los decimales) por un punto. Guardamos el fichero sonido.txt y lo colocamos en una carpeta accesible a MATLAB.
Seleccionamos en el men de MATLAB, File/Import Data... e importamos el fichero sonido.txt con los datos.
Apreciamos dos columnas en la primera el tiempo medido en segundos y en la segunda la intensidad del sonido medido
en W/m2.
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
3/7
18/6/2014
El sonido
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
4/7
18/6/2014
El sonido
La intensidad del sonido decrece exponecialmente con el tiempo, de la forma I=I0exp(-t). Tomando logaritmos
decimales y multiplicando por 10.
I
10log10 (
12
) = 10log
(
10
10
I0
12
) (10log
e) t
10
10
La pendiente de la recta es 10log10e, 1.5077, siendo la constante de amortiguamiento del sonido, como podemos
ver en la ventana de comandos.
p=
-1.5077
89.0760
Golpeamos el diapasn con la varilla que acompaa al dispositivo y grabamos el sonido pulsando en el botn con el
crculo de color rojo. Detenemos la grabacin al cabo de 9.5 s, seleccionamos Archivo/Guardar como... para guardar el
sonido en formato WAV en un fichero denominado diapason. Durante la grabacin no se ha podido evitar la inclusin
de otros sonidos provenientes del exterior.
Situamos el fichero en una carpeta accesible a MATLAB. La funcin wavread carga el fichero diapason y devuelve la
amplitud de la seal en y, y la frecuencia de muestreo en Fs en Hz. Con estos datos representamos la seal en el tiempo.
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
5/7
18/6/2014
El sonido
[y,Fs,bits] = wavread('diapason');
%Representa la seal en el tiempo
figure
N=length(y);
t=(1:N)/Fs; %tiempo
plot(t,y)
xlabel('Tiempo(s)')
ylabel('Amplitud')
title('Diapasn de 440 Hz')
Aadimos al script las siguientes lneas para realizar la Transformada Rpida de Fourier, FFT y representar la seal en el
dominio de frecuencias.
....
%representa la seal en frecuencia
figure
g=abs(fft(y));
g=g(1:N/2);
%Toma solamente N/2 datos
f=Fs*(0:N/2-1)/N; %Frecuencias
plot(f,g)
xlim([0 1000])
xlabel('Frecuencia (Hz)')
ylabel('Amplitud')
title('Diapasn de 440 Hz')
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
6/7
18/6/2014
El sonido
Con Data Cursor obtenemos la frecuencia del pico muy elevado, 449.1 Hz
http://www.sc.ehu.es/sbweb/energias-renovables/MATLAB/datos/sonido/sonido.html
7/7