INSTITUTO POLITECNICO NACIONAL
Escuela Superior de Ingeniería Mecánica y Eléctrica
Unidad Zacatenco
Departamento de ingeniería en comunicaciones y electrónica
DISEÑO DE SONOMETRO DIGITAL
TESIS QUE PARA OBTENER EL TITUTLO DE: INGENIERO EN
COMUNICACIONES Y ELECTRONICA
PRESENTA:
LUIS DANIEL GARCIA IBARRA
ASESORES:
DR. PABLO ROBERTO LIZANA PAULIN
ING. LUCERO IVETTE TRINIDAD AVILA
INSTITUTO POLITECNICO NACIONAL
Escuela Superior de Ingeniería Mecánica y Eléctrica
Ingeniería en Comunicaciones y Electrónica
Academia de Acústica
2
Diseño de sonómetro digital
LUIS DANIEL GARCIA IBARRA
INSTITUTO POLITECNICO NACIONAL
Escuela Superior de Ingeniería Mecánica y Eléctrica
Unidad Zacatenco
Departamento de ingeniería en comunicaciones y electrónica
Academia de acústica
3
Diseño de sonómetro digital
© LUIS DANIEL GARCIA IBARRA, 2011
INSTITUTO POLITECNICO NACIONAL
Escuela Superior de Ingeniería Mecánica y Eléctrica
Unidad Zacatenco
Departamento de ingeniería en comunicaciones y electrónica
Academia de acústica
4
Diseño de sonómetro digital
LUIS DANIEL GARCIA IBARRA
Academia de acústica
Departamento de Ingeniería en Comunicaciones y Electrónica.
Escuela Superior de Ingeniería en Mecánica y Eléctrica, Zacatenco
Unidad Profesional “Adolfo López Mateos”.
Instituto Politécnico Nacional
5
Agradecimientos
Este trabajo de tesis está dedicado con mucho cariño a todos los que
realmente me quieren y me lo demostraron de la mejor manera que fue
apoyándome, no pienso mencionar nombres ni nada, simplemente si te
queda el saco, ¡póntelo! GRACIAS.
6
Contenido
Objetivo<<<<<<<<<<<<<<<<<<<<<<<<<<.. 9
Justificación<<<...<<<<<...<<<<<<<<<<<<........<. 9
Introducción<<<<.<<<<<<<<<<<<<<<<<...<<.. 10
1 Conceptos basicos<..<<<<....<<<<<<<<<<<<.... 11
1.1 Sonometros<<<<<<<<<<<<<<<<<..................................... 12
1.2 Conceptos generales<<<<<<<<<<<<<<<<<<<<<<..<<.... 16
1.2.1 Respuesta en frecuencia<<<<<<<<<<<<<<<<<<<<<<<<<<. 16
1.2.2 ¿Que es un decibel? <<<<<<<<<<<<<<<<<<<<<<<<................ 17
1.2.3 Relacionando el decibel a niveles acústicos<<<<<<<<<<<<<<<<<..... 17
1.2.4 dB NPS (Nivel de Presión Sonora)<...<<<<<<<<<<<<<<<<<............. 18
1.2.5 Nivel equivalente (Neq)<<<<<<<<<<<<<<<<<<<<<<<............. 18
1.2.6 Transformada rpida de Fourier (FFT)<<<<<<<<<<<<<<<<<<<.... 19
1.2.7 Frecuencia de muestreo<<<<<<<<<<<<<<<<<<<<<<<<<<.. 21
1.2.7.1 Teorema de Nyquist<<<<<<<<<<<<<<<<<<<<<<..... 22
1.3 Entorno de programación de LabVIEW<<<<<<<<<<<<<<<<.. 23
1.3.1 Controles e indicadores<<<<<<<<<<<<<..<<<<.<<<<<............... 26
1.3.2 Funciones<<<<<<<<<<<<<<<<<<<<<<<<<<...<<.<<<.. 27
1.3.3 Creación de programas<<<<<<<<<<<<<<<<<<<...<<<.<<<.. 29
1.3.4 VI y subVI<<<<<<<<<<<<<<<<<<<<<<<<<...<<<<<<.. 29
1.3.5 Depuración de código<<<<<<<<<<<<<<<<<<<...<<<<<<<.. 29
1.3.6 Estructuras<<<<<<<<<<<<<<<<<<<<<<<<...<<<.<<<< 30
1.3.6.1 While (mientras)<.<<<<<<<<<<<<<<<<...<<.<<<<.. 31
1.3.6.2 For (por/para)<<<<<.<<<<<<<<<<<<<<<.<<<<...... 31
1.3.6.3 Formula Node (formula nodo)<<<<<<<<<...<<<<<<<<.... 32
1.3.7 Tipos de datos dinmicos<<<<<<<<<<<<<<<<<<<<..<<<<..... 33
1.3.8 Ficheros de sonido<<<<<<<<<<<<<<<<<<<<<<.<<<<<..< 33
2. Desarrollo de sonometro<<<<<<<<<<<<<<<<..... 35
2.1 Curva de ponderación A<<<<<<<<<<<<<<<<<<<<<<..< 42
3. Pruebas<<<<<<<<<<<<<<<<<<<<<<<<< 53 3.1 Curva de ponderación A<<<<<<<<<<<<<<<<<<<<<<..< 54
3.2 Calibración del sonómetro<<<<<<<<<<<<<<<<<<<<<<... 56
7
4. Conclusiones<...<<<<<<<<<<<<<<<<<<<<<<<<<... 59
Apéndices <<<<<<<<<<<<<<<<<<<<<<<...< 60
Apéndice A<<<<<<<<<<<<<<<<<<<<<<<<<<..<<<.. 61
Bibliografia y referencias<<<<<<<<<<<<<<<<<..< 64
Libros<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<.. 64
Páginas web<<<<<<<<<<<<<<<<<<<<<<<<<<<<.<.. 64
Artículos<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<..... 65
Normas<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<..<. 65
8
Objetivo Diseñar un sonómetro digital con un sistema de alarma programado con
LabVIEW 2009.
Justificación
Con el diseño de este proyecto se puede implementar un sonómetro con igual funcionalidad
pero con un precio mucho más bajo que los usados con mayor frecuencia, así mismo al
realizarlo de manera digital en un programa ejecutable que cualquier persona sea capaz de
poder usar en su computadora ya sea portátil o de escritorio para así poder combatir los
problemas de ruido que hay en nuestra ciudad.
Para el estudio y la solución de estos problemas de ruido es necesario contar con un
sonómetro que es una herramienta muy utilizada en nuestra especialidad ya que al no existir
los suficientes recursos para complementar el equipo de medición y en ocasiones hace que los
proyectos se retrasen; con este sonómetro se soluciona este problema pudiendo instalarlo en
cualquier computadora.
En la actualidad, la población ha crecido de manera considerable y con ello se han
incrementado las emisiones de ruido como el tráfico aéreo, automovilístico, ruido industrial,
ruido por constructoras e incluso el ruido ambiental.
9
Introducción
Un sonómetro es un dispositivo muy usado en el campo de la acústica, necesario para
realizar mediciones de ruido, desde la aplicación de una norma, hasta el diseño de un recinto,
etc.
Hoy en día existen grandes problemas de ruido sin darse cuenta de la gravedad del asunto y
de lo que podría llegar a causar tal problema.
En ocasiones existe tal cantidad de ruido por lo que se acostumbran a este y ya no sienten el
daño causado, por ejemplo, en los antros, la música es tan fuerte que ni siquiera se puede
platicar, pero estudios de mercado han demostrado que así es como le gusta a las personas
que visitan estos lugares. En las escuelas solo el simple ruido de la plática humana puede
llegar a sobrepasar los 80 dB.
Tal vez esto sea un problema mundial pero lo que sí es un hecho es que tiene solución. Una
de las posibles soluciones es crear conciencia de los daños que podría causar la exposición a
grandes cantidades de ruido.
Por otro lado como se había comentado, la utilización de un sonómetro puede ayudar a crear
esta conciencia necesaria para bajar los niveles de exposición al ruido.
Este sonómetro cuenta con un sistema de alarma que el operador elige a qué nivel se activara,
y en cuanto el nivel equivalente de ruido sobrepase el nivel de la alarma, esta se activara
tratando de hacer conciencia del ruido existente.
La utilización de este sonómetro es de gran ayuda ya que permite obtener niveles de ruido
en dB, dB(A), es capaz de calcular un nivel equivalente de los valores ponderados (Neq(A)) y
contiene una de las tres ponderaciones más usadas que es la ponderación A, además es muy
útil en la aplicación de las normas tales como la NMX-AA-062-1979 la cual determina los
niveles de ruido ambiental y para poderla aplicar como debe de ser es necesario calcular en
nivel equivalente de los valores obtenidos con el sonómetro. Con este sonómetro se puede
registrar cada uno de esos valores y además instantáneamente obtener el valor del nivel
equivalente de la cantidad de muestras deseadas tal y como lo marca la norma. Se puede
modificar el tiempo entre muestras, el tiempo transcurrido y si el operador lo requiere es
posible no usar la tabla de registro de datos.
10
Así, será de mucha ayuda este sonómetro portátil al ser usado mediante una computadora
de escritorio o Laptop y a un precio relativamente bajo en comparación de los sonómetros
profesionales.
11
CAPITULO 1
Conceptos básicos
12
1.1 Sonómetros
Un sonómetro es un instrumento utilizado para medir el nivel de presión sonora (NPS).
Existen diferentes tipos de sonómetros los cuales se clasifican según su grado de
precisión en clase 0, 1, 2 y 3 siendo la clase 0 los de mayor precisión utilizados como
patrones, los de la clase 1 son usados como los de precisión, los de clase 2 son de
precisión y uso general y los de clase 3 son solo de inspección.
Para esto existen varios parámetros y componentes con los que debe contar dicho
sonómetro dependiendo el tipo de mediciones que se vaya a hacer.
A continuación se explicara cada uno de los componentes y parámetros con los que debe
contar un sonómetro.
Micrófono Amplificador Red de ponderación Detector integrador Ponde. Temporal Indicador
Fig. 1.1.- Diagrama a bloques básico de un sonómetro.
Según la norma NMX-075 un sonómetro debe contar con:
Micrófono.
Un micrófono es un transductor que lo que hace es convertir la señal analógica
percibida en una señal eléctrica.
Su principio de funcionamiento es el mismo que el de un altavoz pero varía
dependiendo del tipo de micrófono que se esté utilizando. En este caso el mejor
micrófono para medir ruido es el del condensador el cual varía la distancia entre
las placas, previamente polarizadas, cuando le incide una onda sonora.
Según la norma debe ser del tipo omnidireccional, variación de sensibilidad
dentro de un ángulo de ± 90º a partir del ángulo de incidencia y no debe exceder
las tolerancias de la tabla siguiente:
RMS Fast/Slow
w
Indicador
13
Frecuencias en Hertz Tolerancias permitidas en dB
31.5-1000 1 a -1
1000-2000 1 a -2
2000-4000 1 a -3
4000-8000 1 a -6
8000-12500 1 a -10
Tabla 1.1.- Tolerancias permitidas de la sensibilidad del micrófono en un ángulo de ±90º.
Esta variación de sensibilidad debe medirse con el micrófono montado en la
misma forma que se va usar como parte del sonómetro, estando el operador en la
posición especificada por el fabricante.
Amplificador.
La señal entregada por el micrófono es tan pequeña que es necesario amplificarla
para poderla procesar por medio de la red de ponderación.
Va colocado inmediatamente detrás del micrófono para reducir la alta
impedancia y así poder utilizar cables alargadores para conectarlo al resto de la
cadena de medida con una impedancia de entrada relativamente baja. El
preamplificador debe tener un ruido eléctrico muy bajo y una dinámica y rango
de frecuencia mayor que las del micrófono que se le conecte.
Redes de ponderación.
Los sonómetros disponen de determinadas redes de ponderación que hacen que
la respuesta en frecuencia del sonómetro, sea equivalente o igual a la del oído
humano haciendo que uno de los propósitos de un sonómetro es determinar de
una forma objetiva, los niveles de presión sonora que soporta el ser humano.
Una ponderación A asigna a cada frecuencia un valor ponderado que se
relaciona con la sensibilidad del oído a esa frecuencia. La característica de dBA
fueron diseñadas a espejo de las curvas isofónicas de igual sonoridad a 40 phons.
Dicha curva de ponderación A es la mostrada a continuación.
14
Fig. 1.2.- Curva de ponderación A.
La respuesta relativa contra la frecuencia para el instrumento completo debe ser
igual a la especificada en la siguiente tabla.
Frecuencias Curva A Curva B Curva C Limites de tolerancia
dB
Hz dB dB
10 -70,4 -38,2 -14,3 5 - ∞
12.5 -63,4 -33,2 -11,2 5 - ∞
16 -56,7 -28,5 -8,5 5 - ∞
20 -50,5 -24,2 -6,2 5 -5
25 -44,7 -20,4 -4,4 5 -5
31.5 -39,4 -17,1 -3 3 -3
40 -34,6 -14,2 -2 3 -3
50 -30,2 -11,6 -1,3 3 -3
63 -26,2 -9,3 -0,8 3 -3
80 -22,5 -7,4 -0,5 2 -2
100 -19,1 -5,6 -0,3 1 -1
15
125 -16,1 -4,2 -0,2 1 -1
160 -13,4 -3 -0,1 1 -1
200 -10,9 -2 0 1 -1
250 -8,6 -1,3 0 1 -1
315 -6,6 -0,8 0 1 -1
400 -4,8 -0,5 0 1 -1
500 -3,2 -0,3 0 1 -1
630 -1,9 -0,1 0 1 -1
800 -0,8 0 0 1 -1
1000 0 0 0 1 -1
1250 0,6 0 0 1 -1
1600 1 0 -0,1 1 -1
2000 1,2 -0,1 -0,2 1 -1
2500 1,3 -0,2 -0,3 1 -1
3150 1,2 -0,4 -0,5 1 -1
4000 1 -0,7 -0,8 1 -1
5000 0,5 -1,2 -1,3 1,5 -1,5
6300 -0,1 -1,9 -2 1,5 -2
8000 -1,1 -2,9 3 1,5 -3
10000 -2,5 -4,3 -4,4 2 -4
12500 -4,3 -6,1 -6,2 3 -6
16000 -6,6 -8,4 -8,5 3 - ∞
20000 -9,3 -11,1 -11,2 3 - ∞
Tabla 1.2.- Respuestas relativas y sus tolerancias para condiciones de campo libre.
Instrumento indicador.
En la actualidad se utilizan 2 tipos de indicadores dependiendo de la aplicación
para la que se use, el digital y el analógico. Los indicadores digitales son más
precisos mientras que los analógicos solo dan una idea del valor exacto.
A continuación se van a dar las características de los indicadores según la norma
NMX-075.
El instrumento indicador debe seguir la ley cuadrática. La escala del instrumento
indicador debe graduarse en divisiones de 1 dB, sobre un intervalo de cuando
menos 15 dB. El error que se introduzca mediante un cambio de ámbito debe ser
16
menor de 0.5 dB. La exactitud de las graduaciones debe ser ± 0.2 dB. Se debe de
cumplir con las características dinámicas de integración mencionadas en el punto
6.6 y 6.7 de la NMX-075 y se deben de mantener para todas las ponderaciones y
para todas las posiciones del atenuador.
1.2 Conceptos generales
1.2.1 Respuesta en frecuencia
La respuesta en frecuencia de un dispositivo que describe la relación entre la entrada
del dispositivo, la salida con respecto a la frecuencia y amplitud de la señal.
Describiendo el rango disponible de frecuencias de la señal a las cuales el dispositivo
pasara de la entrada a la salida.
En la forma más simple, una especificación de respuesta en frecuencia puede leerse:
Respuesta en frecuencia: 30 Hz a 18 KHz, ±3dB.
El valor de ±3dB es llamado la tolerancia de la especificación, que nos dice la máxima
desviación en el nivel de salida que podemos esperar sobre el rango especificado si el
nivel de entrada se mantiene igual a todas las frecuencias.
Sin una tolerancia la especificación de respuesta en frecuencia es inútil, ya que nos deja
adivinar el efecto de unidad en la señal.
Fig. 1.3.- Respuesta en frecuencia de un dispositivo con tolerancia de ±3dB.
17
1.2.2 ¿Qué es un decibel?
El dB es una abreviación de “decibel” la cual describe una relación de dos cantidades
que generalmente se relacionan con potencia. La razón de que el dB es usado muy
frecuentemente por ser logarítmico, y por lo tanto números más pequeños pueden ser
usados para expresar valores que de otra manera podrían requerir más dígitos. Entonces
la intención del dB fue simplificar las cosas, no complicárnola.
El decibel es una decima parte de un Bel llamado así por Alexander Graham Bell (de ahí
la B en la unidad dB). Un decibel define la relación logarítmica de dos potencias ya sean
acústicas eléctricas o cualquier otra potencia.
Un decibel puede ser expresado matemáticamente por la siguiente ecuación:
El dB puede ser usado para expresar relaciones de voltaje, como se explicara a
continuación.
La relación de dB no es la misma para relaciones de potencia que para relaciones de
voltaje. La potencia es proporcional al cuadrado del voltaje, esto significa que donde el
voltaje se refiere, la relación de dB se duplico en relación a la potencia. Esto es:
Donde E0 y E1 son los dos valores de voltaje. Si existe dos veces la potencia hay un
incremento en 3 dB, y con dos veces el voltaje hay un incremento de 6 dB. Similarmente
si hay diez veces la potencia y hay un incremento de 10 dB, 10 veces el voltaje hay un
incremento de 20 dB.
1.2.3 Relacionando el decibel a niveles acústicos
El término “nivel sonoro” se refiere a nivel de presión sonora, aunque puede referirse a
potencia acústica. Mientras potencia acústica es un término raramente usado nos
aseguraremos de hacer la distinción.
La potencia acústica es el total de energía radiada por un altavoz en todas direcciones.
La presión sonora es el nivel medido por unidad de área en una localización particular
relativa a la fuente sonora.
18
En cuanto a potencia acústica podemos decir que existe una presión de referencia la cual
es equivalente a 20 µPa ya que es el mínimo nivel de presión perceptible por el oído
humano, así como también, 20 Pa es el máximo nivel de presión que puede soportar.
Esto lo podemos traducir a que cuando exista un nivel de presión sonora de 20 µPa
existirá 0 dB y al momento de haber 20 Pa habrá 120 dB.
1.2.4 dB NPS (Nivel de Presión Sonora)
El dB puede ser usado para describir niveles de presión sonora. (otro término de voltaje
es la fuerza electromotriz) La fuerza de aire presionando contra la resistencia de un
tímpano es análoga a la fuerza de una batería empujando electrones contra la resistencia
de un circuito, por lo tanto, cuando un dB describe una relación de nivel de presión
sonora es usada la siguiente ecuación:
Donde P1 y P0 son los valores de presiones sonoras. Esta ecuación nos dice que si un NPS
es dos veces otro es 6 dB más grande y si es diez veces otro es 20 dB más grande.
Tomando P0 como el nivel de presión de referencia (20 µPa).
¿Cómo percibimos el NPS?
Un sonido el cual es 3 dB más grande que otro nivel apenas es perceptible o más fuerte;
un sonido que es 10 dB más grande en nivel se percibe que es alrededor de dos veces
más fuerte.
¿NPS tiene un valor de referencia absoluto, y por lo tanto tiene significado cuantificable?
Si, generalmente en 0 dB NPS es definido como el umbral de audición en el rango más
sensible del oyente, entre 1 KHz y 4 KHz.
1.2.5 Nivel equivalente (Neq)
Se define como el nivel sonoro medido en dB(A) de un ruido supuesto constante y
continuo durante un tiempo especificado, cuya energía después de atravesar la red de
ponderación A sea igual a la correspondiente al ruido variable a lo largo de la jornada de
mediciones. Es el ruido continuo que tendría el mismo contenido en energía acústica que
el ruido real variable en el mismo intervalo de tiempo
Para llevar a cabo este tipo de mediciones es necesario saber cuál es la aplicación a la
cual se va a dedicar el sonómetro y bajo que normas se hará la medición.
19
Por ejemplo, se debe seleccionar si se van a hacer mediciones continuas o semicontinuas.
En este caso de las mediciones semicontinuas, el periodo de medición en un punto debe
ser dividido en lapsos que contengan observaciones y descansos equivalentes. (Por
ejemplo en una hora se pueden hacer 360 periodos de 5 segundos de observación y 3
segundos de descanso, más un periodo de descanso de 12 minutos).
El nivel equivalente por mediciones continuas se calcula por medio de la siguiente
ecuación:
Donde:
Neq = Nivel equivalente de cada punto
T = Periodo de observación.
n = Nivel fluctuante para cada punto
En dado el caso que sea con mediciones semicontinuas el nivel equivalente se calcula
con la siguiente expresión:
Donde:
m = Número total de observaciones.
n = Nivel observado
Para que una medición semicontinua tenga representatividad y sea comparable a una
continua, es necesario que el periodo de observación sea igual al periodo de descanso,
sin importar la forma en que estos se distribuyan.
El nivel equivalente es solo el medio más sencillo para caracterizar sonidos variables en
el tiempo.
1.2.6 Transformada rápida de Fourier (FFT)
La FFT constituye uno de los mayores desarrollos en la tecnología del tratamiento de
cualquier tipo de señal.
20
Es un algoritmo eficiente para calcular la Transformada de Fourier Discreta (DFT).
Originalmente descubierta por Gauss en 1800, redescubierta por Coley y Tukey en IBM
durante 1960.
La FFT permite reducir el número de sumas y multiplicaciones a un valor proporcional a
Nlog2N.
El ahorro o reducción en el número de operaciones es significativo para valores de N
como los que es doble esperar en imágenes prácticas, por ejemplo, para una imagen de
1024 X 1024 pixeles, N=1024, se tendría:
N2=1.048.576 operaciones complejas.
Con FFT:
N2log2N = 10.240 operaciones complejas
Con la reducción de 102.4:1, el tiempo de computo, empleando maquinas equivalentes,
se reduce a menos del 1%.
Es posible calcular el número de operaciones, sumas y multiplicaciones complejas, que
se requiere para implementar un algoritmo para FFT, y se calcula como a continuación
se describe:
Para multiplicaciones
Para sumas
Donde N = 2n
Ejemplo:
Digamos que una maquina de 1 MFLOP (un millón de puntos flotantes de operaciones
por segundo) sea N = 1 millón = 106
Un algoritmo de N2 toma 1012 procesos → 106 segundos = 11.5 días.
21
Un algoritmo de NlogN toma 6X106 procesos →6 segundos.
Tabla 1.3.- Comparación del numero de procesos según el tipo de algoritmo empleado.
1.2.7 Frecuencia de muestreo
Para convertir una señal sonora analógica en señal digital, se basa en un sistema binario
el cual está conformado por ceros y unos (0 y 1) y se basa en que cualquier valor puede
ser representado solo con combinaciones de ceros y unos.
Al conjunto de procesamiento de una señal digital se le denomina PDS (Procesamiento
Digital de Señales).
Uno de estos procedimientos para la manipulación de las señales digitales es la
Cuantización. Corresponde a las muestras por segundo de una señal, es decir, el
procedimiento para que una señal pase de ser analógica a ser digital es que se tomaran
muestras de la señal analógica en un intervalo de tiempo.
La velocidad con la que se toman dichas muestras se le llama Frecuencia de muestreo y por
lo tanto esta expresada en Hertz (Hz). A cada una de esas muestras se le asigna un valor
correspondiente a la amplitud de ese instante en la señal original.
Como podemos ver en la figura de abajo la señal analógica que era continua (había
infinitos puntos entre un instante y otro) paso a ser discontinua, escalonada.
Esto se llevo a cabo mediante un dispositivo llamado CAD (Convertidor Analógico-
Digital).
Fig. 1.4.- Muestreo de una señal analógica.
22
Can.
Bits
Valores
Posibles
1 2
2 4
3 8
4 16
5 32
6 64
7 128
8 256
16 65536
24 16777216
32 4294967296
Para representar digitalmente una frecuencia se necesitan al menos dos muestras, una
para la amplitud positiva y una para la amplitud negativa, esto está fundamentado
gracias al teorema de muestreo o teorema de Nyquist.
1.2.7.1 Teorema de Nyquist: Para representar digitalmente una señal que contiene
componentes de frecuencia hasta “X” Hz, es necesario usar una frecuencia de muestreo
de, al menos, el doble de muestras por segundo (2x Hz).
La frecuencia de muestreo más común es la de 44.1 KHz establecida así para el CD ya
que alcanza a muestrear todo el espectro de audibilidad del ser humano que comprende
desde 20 Hz hasta 20 KHz.
A cada muestra que se toma se le asigna un valor que representara la amplitud de esa
muestra. La amplitud total estar dividida en tantos “escalones” (valores) como la
resolución en bits lo permita, de acuerdo a la fórmula 2n, donde n es la cantidad de bits.
La siguiente tabla muestra que cuanto más cantidad de bits (resolución de bits)
tengamos, mas valores intermedios tendremos. Lo que har que los “escalones” sean
más pequeños y la onda digitalizada sea más parecida a la señal original.
Tabla 1.4.- Resolución de bits.
23
Algunas resoluciones de bits usadas son 8 bits, 16 bits, 24 bits y 32 bits. La resolución de
16 bits es la más usada ya que es la establecida para el CD. Por lo tanto haciendo este
procesamiento habrá una buena calidad de audio, claramente no superior a la calidad de
audio analógica, pero también habrá un aumento en la memoria, es decir:
16bits = 2 bytes
x 2 canales = 4 bytes
x 44.100 = 176.400 bytes por segundo
x 60 = 10.584.000 bytes por minuto = 10 Mb por minuto
Esto es con una frecuencia de muestreo de 44.1 KHz a 16 bits para un minuto, y si se
hace con una resolución de 8 bits se reducirá a la mitad, así de la misma manera si la
frecuencia de muestreo 22.05 KHz.
1.3 Entorno de Programación de LabVIEW.
LabVIEW significa Laboratory Virtual Instrument Engineering Workbench (Laboratorio de
instrumentos virtuales, ingeniería y banco de trabajo). LabVIEW es un sistema de
programación con el cual se puede crear instrumentos sencillos. Se le llama sistema de
programación grafica.
Su propósito principal es crear aplicaciones para controlar instrumentos electrónicos,
por este motivo, se puede decir que es un sistema de instrumentación virtual. Por esto,
cada archivo creado en LabVIEW se llama instrumento virtual o VI y con la misma
extensión. Como se sabe, un instrumento consta de un panel donde contiene perillas,
botones, indicadores, pantallas, gráficas, etc. que es de donde se va a operar el
instrumento. Y de la misma manera atrás de todo eso, o mejor dicho, por dentro de todo
eso contiene toda una circuitería la cual es la encargada de hacer funcionar el
instrumento; el sistema de LabVIEW está conformado de la misma manera, tiene 2
ventanas donde la primera ventana se llama Panel frontal y otro que se llama Diagrama de
bloques.
Panel frontal: Es la parte que vera el usuario u operador, generalmente tiene fondo gris.
24
Diagrama de bloques: Es donde se realiza la programación y es de fondo blanco.
En la Fig 1.5 pueden verse las 2 ventanas antes mencionadas.
Fig. 1.5.- Panel frontal y diagrama de bloques.
Para poder trabajar en LabVIEW se deben colocar ya sea indicadores o controles en el
panel frontal o funciones en el diagrama de bloques, esto se logra fácilmente con las
paletas de control y la paleta de funciones, además es necesaria un paleta de
herramientas que consta de múltiples usos.
En la Fig. 1.6 puede verse el aspecto de estas 3 paletas.
25
Fig. 1.6.- Diferentes paletas de trabajo: Funciones, controles y herramientas.
Una paleta de gran utilidad es la de ayuda contextual ya que muestra una pequeña
explicación de el objeto que este debajo del cursor la cual puede ser una función, un
control, un indicador o incluso un VI. También te muestra un enlace a la página de
ayuda de este objeto con una explicación más detallada.
26
Fig. 1.7.- Ventana de ayuda contextual.
Para un manejo más fácil y rápido en la siguiente tabla se muestran los atajos más
comunes utilizados en LabVIEW.
Combinación de
teclas Función
CTRL + R Ejecuta el programa
CTRL + . Aborta la ejecución
CTRL + E Conmuta entre las dos ventanas principales
CTRL + B Elimina los hilos rotos
CTRL + H Muestra u oculta la ayuda contextual
CTRL + ? Muestra la ayuda
CTRL + C Copia los objetos seleccionados al portapapeles
CTRL + X Corta los objetos seleccionados al portapapeles
CTRL + V Pega los objetos desde el portapapeles
CTRL + Z Deshace la última acción
CTRL + SHIFT + Z Rehacer
CTRL + S Guarda el VI
TAB Cambia entre las herram. de la paleta de herram.
CTRL + arrastrar Crea una copia de los objetos seleccionados
SHIFT + arrastrar Mueve los objetos solamente en una dirección
Tabla 1.5.- Atajos de teclado más útiles.
27
1.3.1 Controles e indicadores
Los controles se puede decir que son las entradas de datos y los indicadores son las
salidas de esos datos. En la paleta del mismo nombre se clasifican en: Modern (moderno),
System (sistema) y Classic (clásico).
Existen varios tipos de indicadores de graficas siendo los más importantes Waveform
Chart (tabla de forma de onda) y Waveform Graph (gráfico de forma de onda).
Existe una gran diferencia entre los indicadores Waveform chart y Waveform Graph ya que
estos últimos dibujan totalmente la gráfica en cuanto llegan datos nuevos, y los
indicadores Waveform chart van anexando cada dato a los existentes. Por lo tanto, se
puede decir que el Waveform chart tiene memoria y el otro no.
1.3.2 Funciones
Las funciones son las usadas mientras se trabaja en el diagrama de bloques y de esta
paleta se pueden escoger diferentes funciones, subVI o estructuras, dependiendo de lo
que se necesite.
Por lo mismo, en esta paleta también hay varios submenús de los cuales se dividen
dependiendo la aplicación, el submenú más usado es el de Programming (programar).
El primer submenú de Programming es Structures (estructuras)¸este submenú contiene
funciones que son equivalentes a las estructuras de los lenguajes de programación
convencionales tales como los bucles WHILE (mientras) FOR (por) o CASE (caso).
Otro de los submenús principales es el que se divide según el tipo de datos ya sean
numéricos, binarios o strings (texto), además de los datos compuestos como los clusters
(grupo) o arrays (formación) y cada submenú consta de diferentes funciones.
28
Fig1.8.- Paletas de tipos de datos numéricos, booleanos y de texto
Los datos numéricos se pueden dividir de distintas formas como enteros o de coma
flotante y de cada uno de estos puede haber distintos tamaños. Los valores binarios
obviamente tienen solo 2 valores (verdadero y falso) debido a esto son excelentes para
usarlos como botones.
La forma de acceder a las funciones y los VI´s es la misma que para los controles, solo
con “arrastrar y colocar”. Una función se diferencia de un VI en que la función es para
un objetivo fijo y no tienen panel frontal mientras que los VI´s son pequeños programas
realizados por programadores de la empresa National Instruments y si tienen panel
frontal al cual se puede acceder con un doble clic sobre el VI.
Las funciones y los VI´s pueden tener varias entradas y una o más salidas, a las entradas
se le van a conectar un dato que provenga de un control o una constante o la salida de
otra función o de otro VI, y la salida se podrá conectar un indicador o la entrada de otra
función o VI.
Fig. 1.9.- Función Add (suma).
29
1.3.3 Creación de Programas
Un programa se compone básicamente de:
1.- Controles: sirven de entrada para los datos.
2.- Funciones, VIs y estructuras: realizan una o varias operaciones con esos datos.
3.- Indicadores: sirven de salida para los datos.
Una herramienta muy útil para realizar las conexiones es la llamada Connect wire
(conectar cable) localizada en la paleta de herramientas. Un cable solo tendrá una fuente
que puede ser un control, una constante o la salida de otro objeto y va a tener uno o
varios destinos como un indicador o la entrada de otro elemento.
Otra herramienta es la llamada Clean up wire (recoger cable) que automáticamente
realiza una ruta de cable automático.
Para correr un programa se deben introducir todos los datos en que sean necesarios en el
panel frontal y para ejecutarlo es con el botón Run (correr) o CTRL+R y ver los
resultados en el panel frontal.
1.3.4 VI y SubVI
Al momento de realizar un programa en LabVIEW se crea un archivo con extensión .vi
estos archivos se llaman Virtual instrument (instrumento virtual). En algunas ocasiones se
podrán realizar programas de gran tamaño que deberá separar en varios archivos .vi o
también podrá existir que una parte de un código se reutilice una o varias veces más. En
LabVIEW es posible que un VI contenga a otro VI así el segundo es SubVI del primero.
Un VI es muy fácil de crear y de usar con otros además de que es posible que se le
modifique su icono para que sea más fácil de reconocer.
1.3.5 Depuración de código
Depuración es el proceso por el cual es posible detectar los errores cometidos al
momento de programar. En LabVIEW existen varias herramientas que ayudan a este
proceso.
Esta depuración o detección de errores se hace automáticamente al momento de impedir
correr el programa cuando este tiene algún error de sintaxis o cualquier tipo de error y al
momento de querer correr el programa despliega automáticamente una ventana llamada
30
List errors (lista de errores) y el icono del botón Run se modifica por el de una flecha rota
como se puede apreciar en la siguiente figura.
En la ventana de lista de errores aparecen todos los posibles errores y warnings
(advertencias) que puede contener el programa y al seleccionar algún error en la parte
inferior aparece una pequeña descripción de tal error y presionando el botón Show error
(mostrar error) se direccionara en la ubicación del error que ha producido el fallo.
Una herramienta muy útil en la detección de errores es la de Highlight Execution (resaltar
la ejecución) ubicada en la parte de arriba cuyo icono tiene la forma de una bombilla de
luz. Lo que esta herramienta va a realizar es que va ejecutar el programa de una manera
demasiado lenta para poder ver fluir los datos detenidamente en el diagrama de
bloques.
1.3.6 Estructuras
Existen ciertas funciones que permiten ejecutar un cierto código de forma condicional o
repetirlo varias veces
Estas funciones son llamadas estructuras en LabVIEW y encierran el código a ejecutar en
su interior. La localización de estas estructuras es en el menú Programming>Structures
(programando>estructuras).
Fig. 1.10.- Estructuras.
31
En este caso para la realización del sonómetro solo fueron utilizadas las estructuras que
a continuación se explicaran.
1.3.6.1 While (mientras)
El funcionamiento básico del ciclo WHILE es que va a repetir el código en su interior las
veces que marque la iteración hasta que cumpla con una condición.
En la Fig. 1.11 puede verse al aspecto de este bucle, en el se aprecian dos terminales:
La primera terminal es la llamada terminal de iteración que se representa
con el símbolo i ubicada en la parte inferior izquierda. El valor dado a esta
terminal es un número entero que ira aumentado de uno en uno hasta que
se cumpla la condición. Cada vez que se incremente en uno repetirá una
vez el código en su interior. Siempre va a empezar a contar desde cero.
La siguiente terminal que se usa en esta estructura es la terminal de Stop
(alto) la cual es la terminal verde de la esquina inferior derecha de la
imagen. Y a esta se le podrá conectar algún valor binario o bien un cluster
de error.
Fig. 1.11.- Estructura WHILE.
1.3.6.2 For (por/para)
El ciclo FOR es demasiado parecido al ciclo WHILE solo con la diferencia de que el
código en su interior es repetido un cierto número de veces fijado a priori (previo a) y no
es posible cambiarse una vez que se ha empezado a ejecutar el ciclo.
Consta de dos terminales numéricas:
32
La terminal de iteración tiene el mismo funcionamiento que en el ciclo
WHILE.
La terminal mostrada con el símbolo N es la terminal de cuenta colocada
en la parte superior izquierda. Su valor va a estar definido de un numero
con el que va a determinar la cantidad de veces que se repetirá el ciclo.
Tanto en el menú contextual del WHILE como del FOR se tiene la opción de sustituir
uno por el otro.
Fig. 1.12.- Estructura FOR.
1.3.6.3 Formula Node (fórmula nodo)
Esta estructura tiene 2 formas de obtenerse, ya sea en Programming>Structures o en
Mathematics>Scripts & Formulas (matemáticas>secuencia de comandos & fórmulas).
Esta estructura no va a controlar su flujo de ejecución sino que va a evaluar la expresión
matemática en su interior escrita de forma parecida al lenguaje C además de que la
sentencia siempre va a terminar con el símbolo “;”.
Las sentencias normalmente son asignaciones que usan operadores o funciones, aunque
también pueden ser declaraciones de variables, ciclos o sentencias de condición.
También pueden insertarse comentarios de la misma manera que en C.
33
Operadores
**: exponenciación.
+,-,++,--,!,~: Suma y resta, pre-post incremento-
decremento, negación lógica y complemento
de bits.
*,/,%,+,-: Operaciones básicas
>>,<<: Desplazamientos
<,>,>=,<=,!=,==: Comparaciones
&,^,|,&&,| | Operaciones lógicas
<? < :< : evaluación condicional
=: asignación
Tabla 1.6.- Operadores usados en la estructura FORMULA NODE.
Al momento de presionar el botón secundario en cualquier borde de la estructura se
pueden crear variables de entrada o salida.
Fig.1.13.- Estructura FORMULA NODE.
1.3.7 Tipos de datos dinámicos
Los datos dinámicos incluyen atributos asociados con una señal ya sea nombre, fecha,
etc. Son usados con los VI´s Express y le dan mucho énfasis al hecho de que los datos
son medidas y no solo números en una columna. Este tipo de datos son como Dynamic
(dinámicos) o Waveform (forma de onda).
34
1.3.8 Ficheros de sonido
En LabVIEW es posible trabajar con archivos de sonido, abrirlos, modificarlos,
capturarlos y guardarlos.
Existe una paleta destinada a estos procesos Programming>Graphics & Sound>Sound
(programando>gráficos & sonido>sonido) donde hay 3 submenús dedicados a hacer
todas las tareas requeridas.
Fig. 1.14.- Paleta para trabajar con archivos de sonido.
35
CAPITULO 2
Desarrollo de Sonómetro
36
Para la programación del sonómetro digital primeramente lo que hay que definir es el
algoritmo de programación mediante su diagrama de bloques el cual se muestra en la
siguiente figura:
Fig. 2.1.- Diagrama de bloques del algoritmo para programación del sonómetro.
Para calcular el NPS lineal:
1.- Captura de sonido.
2.- Obtención de onda senoidal.
3.- Aplicación de transformada de Fourier.
4.- Calculo de NPS lineal.
Para calcular el Neq:
4.- Aplicación de la curva de ponderación.
5.- Calculo de NPS con ponderación A.
6.- Calculo de Neq.
7.- Documentación de datos.
37
8.- Proceso de alarma.
9.- Presentación de todos los datos en el panel frontal.
Para el primer paso del desarrollo es programar la interacción del micrófono con la
tarjeta de sonido de la computadora. Esto se logra gracias a un SubVI que es el siguiente.
Fig. 2.2.- SubVI Sound Read Waveform
(forma de onda de sonido leído)
Como se puede observar en la Fig. 2.3 este SubVI se programa mediante varios
parámetros los cuales quedan de la siguiente manera.
Fig. 2.3.- Parámetros del SubVI Sound Read Waveform
38
En buffer size (tamaño del buffer) se refiere al tamaño que labview necesita para
transferir los datos desde el dispositivo y el valor por default que se da es el que se
muestra de 8192, es 213. Este tamaño lo da para obtener 32 muestras de 0.96 segundos
tomando cada muestra de 30ms para que se considere una muestra pseudoperiodica. En
el siguiente parámetro se ve que en device (dispositivo) aparece un cero que es el número
que da por default lo cual quiere decir que solo existe una entrada la cual es el
micrófono. Para sound format (formato de sonido) los parámetros se dan en un clúster los
cuales están dados por la calidad de sonido la cual puede ser mono o estéreo, la
frecuencia de muestreo que puede ser de 11025, 22050, 44100 y 8000 Hz, y al ultimo la
resolución de bits por muestreo ya sea de 8 bits o 16 bits depende de lo requerido. Las
salidas como podemos ver es también dependiendo de cómo lo requiramos y de cómo se
haya escogido en la programación de parámetros para la adquisición de datos de sonido.
Para la siguiente etapa del sonómetro se va a poner un medidor de tonos con el cual se
va a determinar la fase, frecuencia y amplitud del sonido adquirido por el micrófono.
Fig. 2.4.- Sub VI Tone Measurements (Medidor de tonos)
Como podemos ver solo tiene una entrada que es la que dice signals (señales) y 3 salidas
las cuales van a determinar las características necesarias de una función.
Ya que en la programación del sound format se escogió una tasa de bits de 16 y una
calidad de sonido de mono (monofónico) vamos a escoger la salida dedicada para este
tipo de programación. El icono que aparece entre los 2 Sub´sVI es un convertidor de
datos con el que se va a convertir datos con signo de 16 bits a tipo de datos dinámico
para poder interactuar con el siguiente SubVI. A la misma salida se le conecto un
indicador grafico el cual tiene un texto que dice I 16 que significa, como ya lo
mencionamos, datos con signo de 16 bits.
39
Fig. 2.5. - Sound Read Waveform con Tone Measurements
(Forma de onda de sonido leído con medidor de tonos)
Para la siguiente etapa se conecta a un nuevo SubVI llamado Sine Waveform (Forma de
onda seno) el cual permite generar una onda senoidal, esto con el fin de tener una onda
más familiar como lo es una onda senoidal ya que las ondas analógicas que vienen del
exterior tienen una forma indefinida. Este SubVI lo puede lograr tan fácil como es
programarle los parámetros y obtener la onda senoidal con las características deseadas.
Como podemos ver en la figura no se conecto así tal cual, sino que lleva un cierto
proceso de conexiones las cuales van a ser explicadas a continuación.
De la salida de frecuencia del medidor de tonos se va a multiplicar por 44100 ya que esa
es la frecuencia de muestreo para digitalizar una señal y entonces a esa frecuencia va a
ser formada nuestra onda senoidal mostrada en un indicador. La amplitud va a ser
dividida por un ajustador el cual va a ser manipulado por el operador del sonómetro y
eso va a determinar la amplitud de la onda senoidal. En la entrada que dice sampling info
(información de muestreo) aparece un cluster con 2 cantidades, la primera determina la
frecuencia de muestreo en muestras por segundo (Fs) y la segunda es el numero de
muestras en la forma de onda (#s), claramente se puede ver que ambos valores son de
44100.
40
Fig. 2.6.- Generador de onda senoidal
Una vez obtenida la onda senoidal va a tener 2 destinos. El primero de ellos es aplicarle
Transformada Rápida de Fourier para pasar la señal del dominio del tiempo al dominio
de la frecuencia. Se utiliza la versión rápida de la trasformada de Fourier para tener un
número mínimo de operaciones al momento de hacer la transformada. Esto se hace
simplemente con un SubVI dedicado a eso, su icono es el observado en la fig. 2.7.
Como se puede observar se trata de la transformada rápida de Fourier. Para este caso
solo ocuparemos la entrada X la cual es un vector real, y la salida que ocuparemos es la
que dice FFT X que es la FFT de X.
Fig. 2.7. - SubVI FFT (Transformada Rapida de Fourier)
Y el diagrama de bloques del sonómetro va quedando de la siguiente manera.
41
Fig. 2.8.- Desarrollo de sonómetro.
Como se puede ver el segundo camino de la onda senoidal llega a un SubVI llamado
Waveform min max (min max de forma de onda) el cual va a ser descrito más adelante.
Arriba podemos ver el subVI mencionado antes donde podemos visualizar las
terminales que contiene. Waveform in (entrada de forma de onda) es la forma de onda de
la cual se va a obtener el valor máximo y valor mínimo. Y tiene varias salidas, una de
ellas es la que se llama Waveform out (salida de forma de onda) la cual va a entregar la
señal que entra a Waveform in pero sin alterar. Tiene dos salidas las cuales son max time
(tiempo máximo) y min time (tiempo mínimo) que van a dar los valores de tiempo en el
cual se alcanza el valor de datos máximo y mínimo respectivamente. Las salidas que
dicen Y max (Y máxima) y Y min (Y mínima) es el valor relativo de la forma de onda
máximo y mínimo respectivamente.
Fig. 2.9.- Waveform max min.
(max min de forma de onda).
42
Posteriormente, después de que se realizó la FFT lleva conectado un icono que lo que va
a hacer es convertir cantidades numéricas a punto flotante de doble precisión, con el fin
de dar un máximo valor de frecuencia de la señal de entrada para cada iteración del ciclo
de la curva de ponderación. Dicho icono es el siguiente.
Fig. 2.10.- Icono DBL.
(transforma de numero a punto flotante de doble precisión).
A continuación se va a pasar a una de las etapas más importantes de la realización del
sonómetro que es la programación de la curva de ponderación que en este caso será la
Ponderación A. Porque es la curva que más se asemeja a la respuesta del oído humano y
por lo tanto es la más usada comúnmente en mediciones de todo tipo a menos que sean
mediciones muy especificas.
2.1 Curva de Ponderación A
La ecuación que esta a continuación es la que permite calcular los valores ponderados
A.1
Los valores que nos entrega esta ecuación son valores lineales, pero en nuestro análisis
se necesitan que sean valores logarítmicos para que sean en decibeles (dB), este cambio
se hace mediante la ecuación siguiente:
Donde:
dB (A) = Nivel de presión Sonora en decibeles A
A (f) = Es el nivel de presión que se va a convertir a decibeles.
A (ref) = Es un valor de referencia tomado a 1000 Hz.
1 Pablo Lizana, Sergio Beristaín, Jose de Jesus Negrete. Algoritmo para la obtención de curva de
ponderación A. Instituto Politécnico Nacional 2006.
43
El valor de 1000 Hz se sustituye en la ecuación (1) quedando con un valor de A (ref) =
0.7943463957.
Entonces la red de ponderación programada queda de la siguiente manera:
Evidentemente podemos ver que es la combinación de las formulas (1) y (2) en base al
lenguaje de programación G.
Para programar la curva se utilizó una estructura llamada Formula Node dentro de un
ciclo For donde tiene una entrada con una terminal que es la que va a indicar cuantas
veces se va a repetir el ciclo. Para definir bien la programación de la curva con esta
estructura se van a definir 2 variables de entada u y v.
La variable u es un valor de referencia de inicio y v es el valor de iteración del ciclo para
generar un barrido de frecuencia. Estas 2 variables dan lugar a una nueva, m que es el
valor de la frecuencia. Así mismo m2 es la frecuencia al cuadrado y m3 a la cuarta
potencia.
m = (u+v)
m2 = m*m
m3 = m2*m2
Ahora para el siguiente paso la fórmula del algoritmo de la curva de ponderación se va a
dividir en 2 partes:
1. Según la fórmula se va a elevar al cuadrado los valores de 12200 y 20.6
obteniendo los resultados siguientes> 122002 = 148840000
20.62 = 424.36
Estos valores van multiplicados por la frecuencia, en el caso de 14884000 por m3 y
424.36 por m2 y a su vez dividiendo, quedando una variable más definida como D
de la siguiente manera>
D = (148840000*m3)/((m2+424.36)*(m2+148840000);
2. Para la segunda parte una variable mas a definir es la variable E, que
siguiendo el mismo procedimiento que con la variable anterior va a
quedar así: E = 1/(sqrt (m2+11599.29)*sqrt (m2+544496.41));
Donde 11599.29 y 5444496.41 son los valores al cuadrado de 107.7 y 737.9
respectivamente que son los que maneja la fórmula.
44
Posteriormente para seguir la estructura de la fórmula se van a multiplicar las variables
antes mencionadas provocando una variable más.
A = D*E
Y aplicando la fórmula (2) queda de la siguiente manera: k = 20*log(A/G), donde G está
definida por el valor de referencia del algoritmo de la curva de ponderación a una
frecuencia de 1000 Hz y k es la salida de valores con ponderación A.
Todo este procedimiento se puede visualizar en la figura de abajo.
Fig. 2.11.- Programación de la curva de ponderación A.
Hasta aquí lo que tenemos son los valores de presión ponderados, pero ahora lo que
sigue es obtener el Nivel de Presión Sonora (NPS) que vamos a calcular igualmente con
la ecuación (1) antes mencionada.
Para sacar la presión de cada uno de los valores obtenidos a través de la curva de
ponderación vamos a aplicar la fórmula siguiente:
Donde:
P = Presión.
AM = Amplitud máxima.
X = Valor obtenido de la curva de ponderación.
45
Claramente se puede ver que el valor de AM es obtenido a través de un SubVI llamado
Waveform max min de la salida Ymax.
En la figura siguiente podemos ver como se calculó el NPS dB(A) aplicando las 2
fórmulas antes mencionadas.
Fig. 2.12.- Calculo de NPS dB(A).
Para la realización de un sonómetro que solo calculara NPS con Ponderación A se podría
decir que lo único que le falta es ponerle los indicadores, pero, en este caso aun falta
trabajo ya que nuestro sonómetro va a calcular además de esto, un NPS lineal, es decir,
sin curva de ponderación y junto con esto un Neq dB(A) que es un Nivel Equivalente
respecto a los valores ponderados con un cierto número de muestras, además tendrá un
sistema de alarma y una tabla donde documentará todos los datos obtenidos por el
sonómetro.
Para la obtención de un NPS lineal vamos a realizar el siguiente diagrama de
programación mostrado en la Fig. 2.13 donde es evidente que hay dos terminales sin
conectar. Esto no quiere decir que las terminales vayan desconectadas sino que solo se
ven así para que se vea mejor la imagen.
La terminal que va a la función numérica Divide (dividir) viene directamente de la salida
del SubVI llamado FFT, y la otra salida que va conectada a la función numérica Multiply
(multiplicar) viene de igual forma desde el SubVI Waveform max min de la salida Ymax.
46
Fig. 2.13.- Calculo de NPS lineal.
Ahora para el cálculo de Neq vamos a aplicar la siguiente fórmula:
Donde:
Neq = Nivel equivalente.
NPS = Nivel de presión sonora.
n = Número de muestras.
Para poder programar esta fórmula lo primero que vamos a hacer es tomar las muestras
de las cuales se va a obtener el Neq. Vamos a usar esta ecuación ya que tomara el Neq
por mediciones semicontinuas según la norma NMX-AA-062-1979. Para esto vamos a
usar un SubVI llamado Elapsed Time (tiempo transcurrido), mostrado en la Fig. 2.14, que
lo que va a realizar es medir un tiempo constate que va a haber entre cada una de las
muestras. Esto lo va a realizar poniéndole una cantidad de tiempo (en segundos) en la
entrada Time Target (tiempo objetivo), una vez que transcurra este tiempo va a poner en
verdadero un valor binario a la salida Time has Elapsed (el tiempo ha transcurrido).
Una vez activada esta salida booleana va a activar un nuevo SubVI llamado Relay
(relevador) el cual realizara la función de un relevador. Cuando le llegue una señal
binaria actuara el relevador y dejara pasar la señal en dB(A).
Así podemos ver en la Fig. 2.14 que el relevador tiene 2 entradas, la de la señal en dB(A)
y la del valor binario. En su salida están combinadas las 2 entradas, la señal en dB(A) en
el tiempo que llega el valor binario.
Se le colocó un LED para mostrar cada vez que haya un valor binario.
47
Fig. 2.14.- Programación de toma de muestras de Leq.
Lo que prosigue ahora es programar la fórmula en base al lenguaje G.
Después de que la señal pasa por el relevador va a llegar a una función mencionada
anteriormente llamada divide con la que la señal de NPS se divide entre 10 como lo
muestra la fórmula, posteriormente llega a la función de potencia de 10 y de ahí al SubVI
llamado Add arrays PtbyPt (sumar colección punto por punto) el cual va a realizar la
sumatoria de las muestras.
En la fig. 2.15 se observa que más abajo existe otro SubVI igual con el que se realiza la
sumatoria pero de las muestras. Podemos ver que a la señal de entrada solo le entran
valores binarios ya que es como si fuera una iteración que va incrementando de uno en
uno, y a la salida obtiene toda la sumatoria para posteriormente sacarle el reciproco y
multiplicarlo por el resultado de la sumatoria de las muestras de dB(A), una vez con esto
se le saca el logaritmo y se multiplica por 10 para obtener un Neq dB(A).
Una vez obtenido el Neq le colocamos una alarma que el mismo operador del sonómetro
lo puede ajustar, es decir, si el operador ajusta la alarma a 70dB en cuanto el Leq rebase
este nivel de inmediato se encenderá un LED rojo, y a su vez si llega a bajar de este nivel,
el LED automáticamente se apagará.
Para poder realizar esto se va a utilizar un SubVI llamado Grater (mas grande) que
funciona como un comparador donde a la primera entrada Operand 1 (operando 1)
llegará la misma señal del Leq final y a la segunda entrada Operand 2 (operando 2)
48
llegará una señal de un control para que se ajuste el nivel deseado. Así, si el Operand 1 es
más grande que el Operand 2 se activara un LED que está a la única salida del SubVI.
Fig. 2.15.- Programación de la fórmula del Leq y alarma.
Ahora lo que sigue es poner la parte de la documentación de datos, lo cual se va a lograr
con el siguiente SubVI mostrado en la Fig. 2.16 llamado Build Table (construir tabla). Este
icono va a realizar la función del almacenamiento de datos por medio de las señales que
se le apliquen a la entrada signals. La función antepuesta a signals es llamada merge
signals (combinación de señales) con la que se van a unir las señales a documentar en la
tabla.
Además se le coloco un control binario con el que se puede seleccionar si se quiere usar
la tabla o no.
49
Fig. 2.16.- SubVI Build Table.
La forma en que se van a almacenar los datos en la tabla es desde arriba hacia abajo
según se acomoden en la función merge signals, en este caso la primera señal que entra a
dicha función es el número de la muestra, el siguiente es el valor de la frecuencia
seguida de la cantidad de decibeles lineales (dB), después entra la señal de decibeles con
ponderación A (dB(A)) y por último el valor del nivel equivalente (Neq). Así la tabla
queda de la siguiente manera:
Fig. 2.17.- Tabla de documentación de datos
Una vez realizado esto los datos se almacenaran de acuerdo a las columnas
correspondientes.
Por último lo que se realiza es una función llamada Clean Up Diagram para que
reacomode los componentes del diagrama de bloques de la mejor manera posible en
cuanto a estética, y se pueda visualizar mejor. Además de que todos los SubVI se
visualizaran a manera de iconos para que el diagrama a bloques ocupe menos espacio.
50
Una vez aplicada esta función y reacomodando todos los controles e indicadores del
panel frontal nos va quedar de la siguiente manera:
Fig. 2.18.- Panel frontal del sonómetro.
51
Igualmente el diagrama a bloques que como se muestra en la figura de abajo.
Debido a que es demasiado grande se mostrara en partes.
52
Fig. 2.19.- Diagrama de bloques del sonómetro en LabVIEW.
53
Capitulo 3
Pruebas
54
Durante el diseño de este sonómetro fue necesario someterlo a rigurosas pruebas tales
como las que se explicaran y mostraran durante este capítulo.
3.1 Curva de ponderación
Una vez programada la curva de ponderación se le sometió a hacerle pruebas para ver si
su respuesta era la correcta de acuerdo al algoritmo1 en el cual se basó para programarla.
La primera prueba realizada a la curva de ponderación fue la de su respuesta en
frecuencia realizada nuevamente en LabVIEW.
Primeramente ya con la curva programada se procedió a ponerle dos controles con los
que se va indicar desde donde se va a medir y hasta donde, en nuestro caso, será desde 0
Hz hasta 20000Hz como e muestra en la figura siguiente.
Fig. 3.1.- Diagrama de bloques de la curva de ponderación A
Después del control de “HASTA” se le puso un icono que hace la función de “+1” con el
que se va ir aumentando el valor de la frecuencia provocando un efecto de barrido uno a
uno. Y por último la respuesta se muestra en una gráfica, mostrada en la Fig. 3.2.
55
Fig. 3.2 Grafica de la curva de ponderación A con LabVIEW.
Con esto se puede comprobar que la forma de la curva de ponderación corresponde a la
misma forma de la curva de ponderación A teórica, pero ahora se va a comprobar de
otra manera.
La manera de comprobación es como se muestra en la Tabla 1.
Tabla 3.1.- Correcciones a ser sumadas
a los niveles de octavas de banda para
convertir a niveles con ponderación A.
De acuerdo a esta tabla si se tienen niveles de presión sonora lineales (NPS) se pueden
convertir a niveles de presión sonora con ponderación A (NPS dB(A)), es decir, en la
frecuencia de 31.5Hz al NPS lineal se le resta 39.4 dB linealmente, y por ejemplo en la
frecuencia de 2000Hz al NPS lineal se le suma 1.2 dB linealmente.
56
Así se hicieron pruebas al sonómetro con las que dieron las siguientes mediciones:
Frecuencia(Hz) Corrección dB dB(A) Corrección real Error
31,5 -39,4
63 -26,2
125 -16,1 66,3537 50,6506 - 15,7031 2,02%
250 -8,6 84,7128 77,9475 -6,7653 1,78%
500 -3,2 76,2051 72,7434 -3,4617 2,08%
1000 0 78,5342 78,4995 -0,0347
2000 +1,2 77,6678 79,3731 +1,7053 2,42%
4000 +1 55,9808 56,9556 +0,9748 0,0252%
8000 -1,1 40,3044 39,1659 -1,1385
2,035%
Tabla 3.2.- Correcciones dadas por el sonómetro.
Claramente se puede ver que en los valores de 31.5Hz y 63Hz no hay valores debido a
que la respuesta del micrófono de la PC no es muy buena. Mas adelante con otra prueba
se define el rango de frecuencia de operación del micrófono.
En la última columna podemos ver el porcentaje de error relativo que existe entre los
niveles de corrección que hay entre los niveles teóricos y los niveles que entrega el
sonómetro.
En cuanto a estas pruebas podemos concluir que tanto la programación como el
algoritmo de la curva de ponderación están correctos para el mejor funcionamiento del
sonómetro con ponderación A.
3.2 Calibración del sonómetro
Para realizar esta prueba fue necesario de cierto material proporcionado por la academia
de acústica. Dicho material es presentado a continuación:
Sonómetro integrador Extech modelo 407780 con rango de 30 – 130 dB.
Audio oscillator HP modelo 200ABR.
Altavoz marca Thump de 150 Watts e impedancia de 4Ω.
57
Computadora portátil con micrófono integrado.
El procedimiento de prueba fue el siguiente:
1. Se conectaron los componentes como lo muestra la figura siguiente.
1 m
Fig. 3.3.- Diagrama de conexión para calibración de sonómetro.
Como se puede ver en la figura de arriba el sonómetro y la PC donde se trabaja con el
sonómetro en labview están a la misma distancia del altavoz que correspondió a 1m.
2. Para empezar la calibración se puso el oscilador a una frecuencia de 1KHz
midiendo en el sonómetro Extech 80 dB(A).
3. Ya con esto se empezó a hacer un barrido de frecuencia en bandas de octava y
moviendo el control de ajuste al sonómetro en LabVIEW para que obtenga el
mismo resultado que el sonómetro Extech.
De esta manera se obtuvieron los siguientes resultados.
Frecuencia NPS (sonómetro
Extech)
NPS (sonómetro
LabVIEW) Ajuste Error
≈ 125 Hz 43.6 dB(A) 43.1dB(A) 17 0.011%
250 Hz 53.2 dB(A) 53.1 dB(A) 45 0.001%
500 Hz 73 dB(A) 73.08 dB(A) 500 0.001%
1 KHz 80 dB(A) 80.3 dB(A) 625 0.003%
2 KHz 76 dB(A) 76.2 dB(A) 340 0.002%
4 KHz 87.5 dB(A) 87.4 dB(A) 25 0.001%
7600 Hz 57.5 dB(A) 57.8 dB(A) 45 0.005%
Tabla 3.3.- Determinación de ajuste para calibración de sonómetro.
58
Con la tabla de arriba claramente podemos darnos cuenta de cuál es la respuesta en
frecuencia del micrófono la cual va aproximadamente desde 125 Hz hasta 7600 Hz, esto
es porque el micrófono de la computadora está diseñado solo para recibir voz.
En esta también nos muestra cual es el error entre el sonómetro Extech y el sonómetro de
LabVIEW en su ajuste para cada frecuencia.
Claramente podemos ver entre más se acerca la frecuencia a la que es más sensible el
oído como es el caso de 1000Hz, el ajuste es mayor debido a la respuesta del micrófono,
y así mismo entre mas se eleva la frecuencia el ajuste va disminuyendo.
59
Conclusiones
Finalmente se cumplió el objetivo del diseño de un sonómetro digital con un sistema de
alarma programado con LabVIEW 2009, se desarrollo tomando en cuenta una
aplicación práctica de diversas normas de ruido como es la NMX-AA-062-1979; con este
sonómetro se ahorra el trabajo de hacer los cálculos obteniendo el nivel equivalente con
mediciones semicontinuas de un total de 360 mediciones, con este sonómetro se puede ir
documentando cada una de esas mediciones y mostrando el nivel equivalente en tiempo
real sin necesidad de hacer todo el cálculo.
Una de las mejoras que se le realizo con respecto a los sonómetros convencionales fue el
sistema de alarma con el que cuenta, ya que puede ser usado en escuelas, hospitales,
restaurantes por qué se puede limitar a un rango máximo, si se pasa de este
automáticamente se activa la alarma creando conciencia del ruido que es posible
generarse y tratar de reducirlo.
Una de las principales problemáticas para la realización del proyecto fue el aprender el
manejo del software, para ello me base en un libro que aparece en la bibliografía así
como también en tutoriales, videos de la página oficial, etc.
Una limitante de este proyecto es que no se cuenta con la licencia para poder hacerlo un
archivo ejecutable que se pueda usar en cualquier computadora, si se puede, pero sin
licencia es necesario tener instalado el software LabVIEW. La licencia tiene un costo
aproximado de $80,000 M/N por lo que es un poco difícil conseguirla. Esta es una de las
cosas que faltarían para poder darse por concluido el proyecto y llevarlo en un futuro a
una comercialización y asi dar beneficios tanto a mi como a los que lo lleguen a comprar.
Por último se recomienda que para hacer uso de este dispositivo y obtener un mejor
desempeño se le puede conectar un micrófono con una mayor respuesta en frecuencia o
en dado caso usarlo mediante una computadora con tarjeta de sonido aplicable a este
dispositivo.
60
Apéndices
61
Apéndice A
Prueba de curva de ponderación A programada de diferente forma.
Para realizar esta prueba se realizo el mismo procedimiento que para la curva utilizada
en el sonómetro dando la siguiente grafica:
Fig. A.1.- Curva de ponderación A.
Y su diagrama de bloques queda de la siguiente manera:
Fig. A.2.- Diagrama de bloques de curva de ponderación A.
62
Así ya con esta otra prueba podemos establecer una comparación entre las dos formas
de programación de la curva de ponderación A.
En la siguiente figura son mostradas las graficas entregadas por labview al momento de
las pruebas en las cuales se puede ver que tienen la misma forma ya que se utilizo la
función de merge signals para juntar ambas curvas en una grafica, claramente se ve que
no difieren en nada, pero se podría decir que ambas curvas son aceptables para los usos
correspondientes, en este caso, la realización de un sonómetro.
Fig. A.3.- Grafica de prueba de las 2 formas de programación de curva de ponderación A.
En la siguiente figura se aprecia el diagrama a bloques de la comparación de ambas
curvas.
63
Fig. A.4.- Diagrama de bloques de comparación de curvas de ponderación A.
64
Bibliografía y referencias
Libros
[1] Cerana J. I. – Ayud. Izaguirre M., A. Principios de audio digital.
[2] Davis G., Jones R., B. Sound reinforcement handbook. Yamaha Corporation of America,
1989.
[3] Eco U., C. Como se hace una tesis, Técnicas y procedimientos de estudio, investigación y
escritura.
[4] Kinsler L. E., Frey A. R., Coppens A. B., Sanders J. V., D. Fundamentals of acoustic.
United States of America, 2000.
[5] Lajara V. J., Pelegrí S. J. E. LabVIEW Entorno grafico de programación LabVIEW 8.20 y
versiones anteriores. Alfaomega grupo editor, México, noviembre 2009.
[6] Moreno V. V., Fernández P. A., F. Programación en LabVIEW. Departamento de
automática y computación.
[7] Moser M., Barros J. L., G. Ingeniería acústica: Teoría y aplicaciones.
[8] Rocancino H. A., H. Tutorial de LabVIEW. Universidad distrital ``Francisco Jose de
Caldas”, Laboratorio de electrónica 2001.
Páginas web
http://begoaguayoglobalizacion.blogspot.com/2010_03_01_archive.html 01-11-10
http://www.estudiodegrabacion.eu/ 1-11-10
http://rabfis15.uco.es/lvct/tutorial/1/paginas%20proyecto%20def/%283%29%20Tecnicas
%20de%20medida/son%C3%B3metros.htm 24-10-10
65
http://www.monografias.com/trabajos40/calibracion-microfonos/calibracion-
microfonos2.shtml 23-10-10
http://www.diac.upm.es/acceso_profesores/asignaturas/tdi/tdi/transformadas/pdf/fourie
r3.pdf 23-10-10
http://cnx.org/content/m12942/latest/ 23-10-10
http://iie.fing.edu.uy/ense/asign/dsp/proyectos/2006/analizador_espectro/FFT.pdf
23-10-10
Artículos
Lizana, Beristaín, Negrete. Algoritmo para la obtención de la curva de ponderación a. Instituto
Politécnico Nacional. 2006.
Normas
NMX-075. Acústica sonómetros de precisión.
NMX-AA-062-1979 Determinación de los niveles de ruido ambiental.
Top Related