Ir al contenido

Potencia acústica por métodos de presión

Normas aplicables: ISO 3744ISO 3745ISO 3746Referencias: Beranek y Mellow 2012

De las vías normalizadas hasta el nivel de potencia acústica , los métodos de presión son los que no necesitan nada más exótico que un sonómetro: muestrear la presión acústica sobre una superficie que envuelve la fuente, promediarla en energía, corregirla y sumar el término de superficie. Esta guía cubre los tres. Los métodos de superficie envolvente de ISO 3744 (grado de ingeniería) e ISO 3746 (grado de inspección) funcionan in situ, sobre uno o más planos reflectantes, y limpian el nivel superficial con la corrección de ruido de fondo y la corrección de entorno . El método de precisión de ISO 3745 traslada la misma idea a una cámara anecoica o semianecoica cualificada, donde una malla fija de micrófonos muestrea directamente el campo libre y las correcciones de grado 1 son meteorológicas en lugar de ambientales. La sección final presenta la determinación como ficha de ensayo de estilo acreditado. Qué vía encaja con qué trabajo, y las alternativas de cámara reverberante e intensidad, se sopesan en Potencia acústica.

1. Superficie envolvente, presión acústica (ISO 3744 / ISO 3746)

Sección titulada «1. Superficie envolvente, presión acústica (ISO 3744 / ISO 3746)»

Coloca la fuente sobre un plano reflectante e imagina una superficie de medición de área que la envuelve: una semiesfera para una fuente compacta, una caja (paralelepípedo recto) para una grande o alargada. Muestrea el nivel de presión acústica en un conjunto de posiciones de micrófono sobre esa superficie, promédialas en energía, y la potencia acústica se obtiene porque una superficie suficientemente difusa capta toda la energía radiada:

La prima marca sobre qué se toma la media: aquí son los niveles por posición sin corregir, y y se restan después de la media, de modo que es mean_pressure_level y es surface_pressure_level. La media de ISO 3745 de la sección 2 está construida al revés, y las primas son el único aviso de ello.

Dos correcciones depuran el nivel superficial. La corrección por ruido de fondo elimina la energía que habría estado presente con la fuente apagada, a partir del margen entre los niveles con la fuente encendida y los de fondo,

y la corrección ambiental elimina la acumulación reverberante de la sala de ensayo a partir de su área de absorción acústica equivalente ,

El área de la superficie es una forma cerrada de la geometría: una semiesfera es sobre un plano reflectante (dividida entre dos y entre cuatro para dos y tres planos), y una caja de un plano es con , , para la distancia de medición . ISO 3746 (inspección) comparte todas las fórmulas pero es más burda: menos posiciones de micrófono, un criterio de fondo de 3 dB en lugar de 6 dB, y validez hasta en lugar de 4 dB.

Ni ni son de libre elección, y las dos se miden desde la caja de referencia: el paralelepípedo recto más pequeño que encierra justo a la fuente, de lados , apoyado en el plano reflectante (apartado 7.1). Su origen es el centro de la caja formada con sus imágenes en los planos contiguos, y la dimensión característica de la fuente es la distancia de a la esquina más alejada de la caja de referencia:

sobre un plano reflectante, con sin dividir entre dos sobre dos planos y con y sin dividir sobre tres. Esa es la que rotula la figura de abajo, y la norma acota con ella la superficie: el radio de la semiesfera debe ser al menos , no menor de 1 m y no mayor de 16 m (apartado 7.2.3; los 0,5 m solo se admiten para productos pequeños en un rango de frecuencias limitado), y la distancia de medición de la caja debe ser al menos 0,25 m y preferiblemente 1 m o más (apartado 7.2.4, con una nota de que m limita el rango de baja frecuencia).

Con números, sobre una máquina de suelo de 1,4 × 0,9 × 1,1 m: m, así que una semiesfera necesita m y m². Esa misma máquina encajonada a m da m, m, m y m² — una cuarta parte menos de superficie, y una superficie que cabe en una nave de ensayo normal. Esa es la razón habitual de que una fuente grande o alargada se encajone en vez de cubrirse con una cúpula, y el apartado 7.2.3 lo dice sin rodeos: cuando el radio necesario crece tanto que dejan de cumplirse los requisitos de entorno del apartado 4, no debe usarse una semiesfera en absoluto.

Leído al revés, esto acota también los ejemplos de esta página. El radius=1.5 de abajo es legítimo para una fuente de m — un aparato de sobremesa o una bomba pequeña — y no para la máquina de 1,4 m recién calculada; el radius=4.0 del ejemplo de informe de la sección 3 cubre hasta 2 m.

Superficies de medición de ISO 3744: una semiesfera de radio r envolviendo una fuente compacta sobre un plano reflectante, con las diez posiciones de micrófono del Anexo B marcadas, y un paralelepípedo recto (caja) a la distancia de medición d alrededor de una fuente grandeSuperficies de medición de ISO 3744: una semiesfera de radio r envolviendo una fuente compacta sobre un plano reflectante, con las diez posiciones de micrófono del Anexo B marcadas, y un paralelepípedo recto (caja) a la distancia de medición d alrededor de una fuente grande

La superficie de caja lleva su propio conjunto de posiciones, y no es el conjunto hemisférico del Anexo B: measurement_positions lanza un error a propósito con una caja, porque ISO 3744 define esas posiciones por subdivisión en áreas (Anexo C, normativo). Cada uno de los cinco planos de la superficie de medición se considera por separado y se divide en áreas parciales iguales cuyo lado no supere ; las posiciones clave son entonces el centro de cada área parcial más sus esquinas, excluidas las que se meten en el plano reflectante, lo que da un mínimo de nueve posiciones cuando un área parcial cubre cada plano (apartado C.1; diez con una subdivisión triangular). El grado de inspección se queda solo con los centros de las áreas parciales. La dirección de referencia de cada micrófono es la normal a su cara, salvo en una esquina de la superficie, donde apunta al origen de la caja de referencia (apartado 7.2.2).

Vista en planta y vista lateral de la superficie de medición en paralelepípedo de ISO 3744 alrededor de una caja de referencia de 1,4 por 0,9 por 1,1 metros a una distancia de medición de 1 m, que da 2a = 3,4 m, 2b = 2,9 m, c = 2,1 m y S = 36,3 metros cuadrados. Cada cara visible se divide con una línea discontinua en áreas parciales iguales porque el lado de 3,4 m supera el límite de 3d, las posiciones clave de micrófono se marcan en los centros de las áreas parciales y en sus esquinas salvo las del plano reflectante, una posición lleva una flecha normal a su cara y una posición de esquina una flecha apuntando al origen O de la caja de referenciaVista en planta y vista lateral de la superficie de medición en paralelepípedo de ISO 3744 alrededor de una caja de referencia de 1,4 por 0,9 por 1,1 metros a una distancia de medición de 1 m, que da 2a = 3,4 m, 2b = 2,9 m, c = 2,1 m y S = 36,3 metros cuadrados. Cada cara visible se divide con una línea discontinua en áreas parciales iguales porque el lado de 3,4 m supera el límite de 3d, las posiciones clave de micrófono se marcan en los centros de las áreas parciales y en sus esquinas salvo las del plano reflectante, una posición lleva una flecha normal a su cara y una posición de esquina una flecha apuntando al origen O de la caja de referencia

levels_positions no es un array de decibelios cualquiera: es el nivel promediado en el tiempo por posición y por banda con la fuente funcionando en su modo declarado, tomado a través de una cadena que la norma especifica. Todo el sistema de instrumentación — micrófonos, cables y el paravientos si se monta — debe cumplir la clase 1 de IEC 61672-1, y los filtros la clase 1 de IEC 61260 (apartado 5.1). Antes y después de cada serie se aplica a cada micrófono un calibrador acústico de clase 1 según IEC 60942 para comprobar toda la cadena de medida y, sin ajuste alguno entremedias, las dos lecturas no deben diferir en más de 0,5 dB; si difieren más, la serie se descarta, no se corrige (apartado 5.2). La conformidad del propio sistema se verifica en un laboratorio trazable a intervalos no mayores de dos años, y la del calibrador a intervalos no mayores de un año. La mecánica de esa comprobación está en Calibración.

Cada micrófono se orienta con su dirección de referencia normal a la superficie de medición y, en una esquina de una superficie de caja, apuntando al origen (apartado 7.2.2) — que es la razón de que una cápsula de campo libre y una de campo difuso se apunten de forma distinta sobre el mismo trípode.

Cada nivel se promedia en el tiempo sobre un periodo típico de funcionamiento: el intervalo debería ser de 20 s o más y debe ser de al menos 10 s, y hay que indicarlo en el informe de ensayo (apartado 8.2.1). Un micrófono en recorrido integra sobre un número entero de recorridos completos, y al menos dos. La lectura de fondo se toma inmediatamente antes o inmediatamente después de la lectura con la fuente, en las mismas posiciones y sobre el mismo intervalo — así que background_levels es una medida (NM, NB) del mismo día y del mismo conjunto de posiciones, no un espectro copiado de otra sesión, y emparejar lecturas dispares es la forma más común de acabar con un equivocado.

import numpy as np
from phonometry import emission
# SPL en banda de octava (dB) en las 10 posiciones de la semiesfera de ISO 3744
# (Anexo B), con la fuente en marcha, más el espectro de fondo con ella apagada.
freqs = np.array([63, 125, 250, 500, 1000, 2000, 4000, 8000])
base = np.array([70.0, 74.0, 78.0, 80.0, 79.0, 76.0, 72.0, 66.0])
rng = np.random.default_rng(0)
levels = base + rng.normal(0.0, 0.5, size=(10, 8)) # (posiciones, bandas)
background = np.full((10, 8), 55.0)
# Coordenadas de micrófono del Anexo B de ISO 3744 en una semiesfera de radio 1.5 m.
mic_xyz = emission.measurement_positions("hemisphere", radius=1.5, reflecting_planes=1)
print(mic_xyz.shape) # (10, 3)
res = emission.sound_power_pressure(
levels, "hemisphere", radius=1.5, reflecting_planes=1,
background_levels=background, frequencies=freqs,
room=emission.RoomEnvironment(reverberation_time=0.6, volume=300.0), # -> K2
)
print(round(res.surface_area, 2)) # 14.14 m^2 (= 2*pi*1.5^2)
print(round(float(res.environmental_correction[0]), 2)) # K2 = 2.32 dB
print(round(res.sound_power_level_a, 1)) # LWA = 92.4 dB
print(round(res.uncertainty, 1)) # U = 3.0 dB (2*sigma_R0)
print(np.round(res.sound_power_level, 1)) # LW por banda
res.plot() # barras de nivel de potencia acústica por banda; LWA en el título (requiere matplotlib)
El espectro de nivel de potencia acústica por superficie envolvente del ejemplo de semiesfera de ISO 3744, una barra por banda de octava de 63 Hz a 8 kHz con pico cerca de 500 Hz, con el total ponderado A de 92,4 dB(A) en el títuloEl espectro de nivel de potencia acústica por superficie envolvente del ejemplo de semiesfera de ISO 3744, una barra por banda de octava de 63 Hz a 8 kHz con pico cerca de 500 Hz, con el total ponderado A de 92,4 dB(A) en el título

Una barra por banda: la presión superficial promediada en energía menos las correcciones de fondo () y ambiental () más el término de superficie dan , y la suma energética ponderada A entre bandas da el número único del título.

Mostrar el código de esta figura
import matplotlib.pyplot as plt
import numpy as np
from phonometry import emission
# SPL en banda de octava (dB) en las 10 posiciones de la semiesfera de ISO 3744
# (Anexo B), con la fuente en marcha, más el espectro de fondo con ella apagada.
freqs = np.array([63, 125, 250, 500, 1000, 2000, 4000, 8000])
base = np.array([70.0, 74.0, 78.0, 80.0, 79.0, 76.0, 72.0, 66.0])
rng = np.random.default_rng(0)
levels = base + rng.normal(0.0, 0.5, size=(10, 8)) # (posiciones, bandas)
background = np.full((10, 8), 55.0)
res = emission.sound_power_pressure(
levels, "hemisphere", radius=1.5, reflecting_planes=1,
background_levels=background, frequencies=freqs,
room=emission.RoomEnvironment(reverberation_time=0.6, volume=300.0), # -> K2
)
# res es el SoundPowerResult calculado arriba. Una línea:
res.plot(language="es")
plt.show()
# A mano: un espectro de barras de LW con el total ponderado A en el título.
freqs = res.frequencies
positions = np.arange(freqs.size)
fig, ax = plt.subplots()
ax.bar(positions, res.sound_power_level, width=0.7, color="#1f77b4")
ax.set_xticks(positions)
ax.set_xticklabels([f"{f:g}" for f in freqs], rotation=45, ha="right")
ax.set_xlabel("Frecuencia [Hz]")
ax.set_ylabel("Nivel de potencia acústica LW [dB]")
ax.set_title(
f"Potencia acústica por superficie envolvente (ISO 3744) "
f"LWA = {res.sound_power_level_a:.1f} dB(A)")
plt.show()

El total ponderado A se combina a partir de las potencias por banda con las correcciones de ponderación A del Anexo E de ISO 3744, así que necesita frequencies. Pasar un RoomEnvironment como room (reverberation_time + volume, o absorption_area, o mean_absorption_coefficient + room_surface) habilita ; omítelo y el campo se trata como libre (). Si el margen de fondo cae por debajo del criterio del grado o supera el límite de validez, un SoundPowerWarning avisa de que los niveles son cotas superiores; la determinación se devuelve igualmente.

Ambas correcciones restan energía al nivel superficial, así que sobreestimar cualquiera de las dos subestima la emisión. Por eso las normas las acotan, y por eso la mayoría de las disputas sobre un resultado de superficie envolvente se remontan a uno de estos hábitos:

  • tiene un precipicio, no una pendiente. Con 15 dB de margen la corrección es de tan solo 0,14 dB (despreciable); en el criterio de ingeniería de 6 dB ya es 1,26 dB, el mayor valor que acepta el grado. Por debajo del criterio la norma no permite aplicar la fórmula: se acota y el resultado se declara cota superior. Nunca extrapoles la resta a un margen menor; aumenta el margen (emplazamiento más silencioso, superficie más cercana) o pásate al método de intensidad.
  • supone un fondo estacionario. La lectura con la fuente apagada debe tomarse en las mismas posiciones y con la sala en el mismo estado, y la energía de fondo debe ser la misma durante ambas lecturas. Un sistema de ventilación que cicla o un vehículo que pasa durante cualquiera de las dos invalida la pareja; la resta energética supone además que la fuente y el fondo son incoherentes, lo que vale para el ruido ajeno pero no para las reflexiones de la propia fuente.
  • elimina la acumulación media de la sala, no las reflexiones discretas. Una pared cercana, un carro u otra máquina justo fuera de la superficie añaden una contribución especular concentrada en unos pocos micrófonos. Ese desequilibrio aflora en el índice de directividad aparente , y ninguna corrección promedio de sala puede eliminarlo: desplaza la superficie, retira el reflector o trátalo con absorción.
  • vale lo que valga . Con de Sabine (), los errores en el tiempo de reverberación o en el volumen se propagan directamente. En el límite de validez cerca del 60 % de la energía medida proviene de la sala, no de la fuente, y un error del 20 % en aún modifica en unos 0,5 dB. Prefiere un medido a un coeficiente de absorción estimado, y mantén la distancia de medición lo bastante pequeña para que quede holgadamente por debajo del límite.
Dos paneles. A la izquierda, la corrección por ruido de fondo K1 frente al margen entre fuente y fondo, cayendo con fuerte pendiente desde 1,26 dB en el criterio de ingeniería de 6 dB hasta 0,46 dB en 10 dB y 0,14 dB en 15 dB, con la región por debajo de 6 dB sombreada y rotulada como acotada y el criterio de 3 dB de ISO 3746 marcado. A la derecha, la corrección ambiental K2 frente a 4S/A en eje logarítmico, con los límites de validez de 4 dB de ISO 3744 y 7 dB de ISO 3746 dibujados y anotados con el 60 % y el 80 % de la energía medida que es de la sala y no de la fuente, y una banda que muestra el desplazamiento cuando el área de absorción A solo se conoce con un más menos 20 por cientoDos paneles. A la izquierda, la corrección por ruido de fondo K1 frente al margen entre fuente y fondo, cayendo con fuerte pendiente desde 1,26 dB en el criterio de ingeniería de 6 dB hasta 0,46 dB en 10 dB y 0,14 dB en 15 dB, con la región por debajo de 6 dB sombreada y rotulada como acotada y el criterio de 3 dB de ISO 3746 marcado. A la derecha, la corrección ambiental K2 frente a 4S/A en eje logarítmico, con los límites de validez de 4 dB de ISO 3744 y 7 dB de ISO 3746 dibujados y anotados con el 60 % y el 80 % de la energía medida que es de la sala y no de la fuente, y una banda que muestra el desplazamiento cuando el área de absorción A solo se conoce con un más menos 20 por ciento

Las dos correcciones tienen formas opuestas. es plana hasta que el margen se cierra y entonces sube con fuerte pendiente, que es la razón de que las normas la acoten en el criterio en vez de dejar correr la fórmula; crece sin límite a medida que la superficie llena la sala, y la banda del ±20 % enseña lo que cuesta una estimada en el límite de validez.

Mostrar el código de esta figura
import matplotlib.pyplot as plt
import numpy as np
# K1 se lee de la propia sound_power_pressure, barriendo el fondo bajo un nivel
# superficial fijo; K2 tiene su propia forma cerrada.
margenes = np.linspace(0.5, 20.0, 200)
k1 = [float(emission.sound_power_pressure(
np.full((10, 1), 80.0), "hemisphere", radius=2.0,
background_levels=np.full((10, 1), 80.0 - m),
frequencies=np.array([1000.0])).background_correction[0])
for m in margenes]
razon = np.geomspace(0.05, 10.0, 200)
fig, (axi, axd) = plt.subplots(1, 2, figsize=(12, 5))
axi.plot(margenes, k1)
axi.axvline(6.0, linestyle="--") # criterio de ISO 3744
axi.set(xlabel="ΔLp [dB]", ylabel="K1 [dB]", ylim=(0, 4.2))
axd.semilogx(razon, 10.0 * np.log10(1.0 + razon))
axd.axhline(4.0, linestyle="--") # límite de validez de ISO 3744
axd.set(xlabel="4S/A", ylabel="K2 [dB]")
plt.show()

Una corrección que la fórmula de superficie envolvente no lleva es la meteorológica. La Ec. 18 supone la impedancia característica de referencia del aire, así que la determinación es una determinación «para las condiciones meteorológicas del momento y del lugar del ensayo» (apartado 8.2.5). Por encima de 500 m de altitud o por debajo de 10 °C eso pasa a ser un sesgo, y el apartado 8.2.5 exige entonces llevar el resultado a las condiciones de referencia según el Anexo G, que es normativo — el mismo tipo de término que las secciones de ISO 3741 e ISO 3745 escriben explícitamente como y . Su tamaño: el apartado H.4.2.7 dice que por debajo de 500 m no hace falta ninguna corrección meteorológica ni de impedancia de radiación, que a 120 m y 23 °C la corrección es nula y que a 500 m llega a 0,6 dB. sound_power_pressure no implementa ningún término así y no admite argumento alguno de temperatura o presión, de modo que una determinación en una planta de montaña o al aire libre en invierno necesita aplicar a mano la corrección del Anexo G.

ParámetroTipoUnidadesRango / valor por defectoNotas
levels_positionsarray 2DdB(NM, NB)Una fila por posición, una columna por banda (o una única columna ponderada A)
surfacestr'hemisphere' / 'box'Forma de la superficie de medición
radiusfloatm> 0 (semiesfera)Radio de la semiesfera
dimensions(float, float, float)m> 0 (caja) del paralelepípedo de referencia
distancefloatm> 0 (caja)Distancia de medición
reflecting_planesint1 / 2 / 3, por defecto 1Divide entre dos/cuatro el área de la semiesfera
background_levelsarray 2D o espectrodB(NM, NB), o (NB,) / (1, NB)Habilita ; un espectro único se difunde a todas las posiciones
frequenciesarray 1DHzcentros de banda nominalesHabilita (Anexo E)
roomRoomEnvironment o Nonepor defecto None (campo libre)Los datos de sala tras ; sus campos son las tres vías hacia de abajo
room.absorption_areafloat o array 1D> 0 para (directo); un array por banda → por banda
room.reverberation_time, room.volumefloat/array, floats, m³> 0 para ; por banda → por banda
room.mean_absorption_coefficient, room.room_surfacefloat/array, float—, m²(0,1], > 0 (Ec. A.7); por banda → por banda
gradestr'engineering' (por defecto) / 'survey'ISO 3744 vs ISO 3746
omc_uncertaintyfloatdBpor defecto 0.0, inestabilidad de operación/montaje, incorporada a

Devuelve un SoundPowerResult: sound_power_level ( por banda), surface_pressure_level ( tras /), mean_pressure_level, background_correction/environmental_correction (/), directivity_index (índice de directividad aparente por posición de micrófono y banda de frecuencia, forma (NM, NB); ISO 3744 apartado 8.4), surface_area, sound_power_level_a (), uncertainty (expandida, 95 %) y grade. measurement_positions('hemisphere', radius=…, reflecting_planes=…, tones=…, grade=…) devuelve las coordenadas normativas (N, 3) de micrófono (Tabla B.1 para fuentes tonales, B.2 para banda ancha). Esas coordenadas se dibujan directamente con plot_microphone_positions, que representa el array sobre su superficie de medición en 3-D, numerado como en la norma.

Vista tridimensional del array de micrófonos de ISO 3744: diez micrófonos numerados sobre un hemisferio de alambre de 2 m apoyado en un plano reflectante circular sombreado, con las posiciones 1 y 2 cerca del plano, las demás escalonadas en altura hasta las posiciones 9 y 10 cerca de la cúspide, y los ejes x, y y z graduados en metrosVista tridimensional del array de micrófonos de ISO 3744: diez micrófonos numerados sobre un hemisferio de alambre de 2 m apoyado en un plano reflectante circular sombreado, con las posiciones 1 y 2 cerca del plano, las demás escalonadas en altura hasta las posiciones 9 y 10 cerca de la cúspide, y los ejes x, y y z graduados en metros

Dónde se colocan de verdad los diez micrófonos del Anexo B sobre el hemisferio de 2 m: las alturas se escalonan para que el array muestree toda la superficie por igual, que es lo que permite que la media energética de los diez niveles sustituya a la integral de superficie.

Mostrar el código de esta figura
import matplotlib.pyplot as plt
from phonometry import measurement_positions, plot_microphone_positions
# Los 10 micrófonos del Anexo B de ISO 3744 sobre un hemisferio de 2 m.
plot_microphone_positions(measurement_positions("hemisphere", radius=2.0),
radius=2.0, language="es")
plt.show()

Diez es el número para un plano reflectante. Frente a dos planos el conjunto son las cinco posiciones clave 2, 3, 6, 7 y 9 de la Tabla B.2; en un rincón, frente a tres planos, son las tres posiciones 1, 2 y 3 de la Tabla B.3 (apartado 8.1.1). El grado de inspección usa conjuntos aún más burdos: cuatro posiciones sobre un plano.

Esos números son un punto de partida, no un resultado. El apartado 8.1.1 exige posiciones adicionales si se cumple cualquiera de tres condiciones:

  • a) el recorrido de los niveles ponderados A entre las posiciones clave supera 10 dB sobre un plano reflectante, 5 dB sobre dos o 3 dB sobre tres;
  • b) el índice de directividad aparente ponderado A supera 5 dB en alguna dirección;
  • c) una fuente grande radia solo desde una parte pequeña de sí misma — las aberturas de una máquina por lo demás cerrada son el ejemplo de la propia norma.

Las dos cosas tienen respuestas distintas. La condición a) se atiende añadiendo las posiciones 11 a 20 de la misma tabla (o, equivalentemente, repitiendo el conjunto clave con la fuente girada −60° para la Tabla B.1 o 180° para la Tabla B.2): la superficie se sigue muestreando por igual, así que la media energética simple sigue valiendo. Las condiciones b) y c) se atienden con una investigación localizada — posiciones extra concentradas alrededor del máximo, en número igual al recorrido de niveles hallado — y esas posiciones llevan áreas de segmento desiguales, de modo que la media debe ser entonces la ponderada por áreas del apartado 8.2.2.2 y no la media de áreas iguales que calcula sound_power_pressure. La nota 3 añade una regla de prioridad que ahorra mucho trabajo inútil: cuando el fondo en alguna posición está a menos de 6 dB del nivel de fuente más alto, hay que reducir el fondo antes de añadir posiciones, porque un fondo así de cerca es lo que está moviendo de entrada.

Las dos comprobaciones son una línea cada una sobre el resultado que la página ya ha calculado:

import numpy as np
# El nivel sumado en bandas por posición (para el recorrido ponderado A de la
# norma, se ponderan antes las bandas en A; aquí la fuente es lo bastante de
# banda ancha como para que no cambie el veredicto).
lp_a = 10.0 * np.log10(np.sum(10.0 ** (0.1 * levels), axis=1))
print(round(float(lp_a.max() - lp_a.min()), 2)) # 0.76 dB: condición a) holgada
print(round(float(np.abs(res.directivity_index).max()), 2)) # 1.1 dB: b) holgada

es el índice de directividad aparente del apartado 8.4, el exceso del nivel corregido de fondo en la posición sobre la media de la superficie, por posición y por banda; es a lo que se refería la trampa de de arriba con «aflora en el índice de directividad aparente». Una máquina que radia 5 dB más hacia un micrófono que la media de la superficie no tiene el conjunto de posiciones estropeado: tiene una directividad que las diez posiciones no pueden resolver.

2. Grado de precisión, cámara anecoica (ISO 3745)

Sección titulada «2. Grado de precisión, cámara anecoica (ISO 3745)»

Cuando se requiere la máxima exactitud, ISO 3745 mide la potencia acústica en una cámara anecoica o semianecoica cualificada, donde el campo libre permite que un conjunto fijo de micrófonos muestree directamente la presión acústica radiada. Es la contraparte de grado 1 del método de superficie envolvente de la Sección 1, con coordenadas de micrófono normalizadas, una corrección por ruido de fondo por posición y una corrección meteorológica explícita.

Potencia acústica de precisión de ISO 3745 en una cámara anecoica: paredes revestidas de cuñas, el dispositivo bajo ensayo en el centro y un conjunto hemisférico de micrófonos a un radio fijo, con el nivel de potencia acústica formado a partir de la presión promediada en la superficie más las correcciones de área, ruido de fondo y meteorológicaPotencia acústica de precisión de ISO 3745 en una cámara anecoica: paredes revestidas de cuñas, el dispositivo bajo ensayo en el centro y un conjunto hemisférico de micrófonos a un radio fijo, con el nivel de potencia acústica formado a partir de la presión promediada en la superficie más las correcciones de área, ruido de fondo y meteorológica

El panel izquierdo del clip de abajo es para lo que sirve esa sala. Con los contornos absorbiendo, un micrófono solo ve lo que la fuente le manda, así que el nivel cae con la distancia y el conjunto de posiciones tiene que muestrear una superficie entera — que es la razón de que la única geometría que necesita el método, una vez cualificada la sala, sea el término de superficie . El panel derecho es la alternativa en cámara reverberante de ISO 3741, y las dos terminan en el mismo .

La misma fuente en una cámara anecoica y en una cámara reverberante produce presiones de micrófono distintas, y las fórmulas de campo libre y campo difuso convergen al mismo nivel de potencia acústica L_W.

Descargar la animación (WebM)

La misma fuente en una cámara anecoica y en una cámara reverberante produce presiones de micrófono distintas, y las fórmulas de campo libre y campo difuso convergen al mismo nivel de potencia acústica L_W.

Descargar la animación (WebM)

Nivel de potencia acústica (apartado 8). El nivel de potencia acústica por banda es el nivel de presión promediado en la superficie más el término de superficie y las correcciones:

con sobre la esfera o sobre la semiesfera, . y son las correcciones meteorológicas (términos de referencia e impedancia de radiación); tiene en cuenta la absorción del aire sobre el radio de medición. Las posiciones de micrófono son los conjuntos normalizados de vectores unitarios de las Tablas D.1 (esfera), E.1 (semiesfera) y E.2 (semiesfera, banda ancha).

En esa fórmula no hay término aparte porque — sin prima, a diferencia del de la sección 1 — es la media sobre la superficie de los niveles después de corregir cada uno por su cuenta el ruido de fondo,

(apartado 9.4.3.1). Así que la corrección vive dentro de la media, un por posición, en lugar de restarse de la media como hace ISO 3744. mean_pressure_level es la media energética bruta y surface_pressure_level la corregida, que es el de la fórmula de arriba.

El radio no es libre (apartados 8.1/8.2). Debe cumplir , con la distancia del centro acústico al punto más alejado de la fuente (en cámara semianecoica, o , el que sea mayor, siendo la altura del centro acústico sobre el suelo), a la frecuencia más baja de interés y m — 0,5 m solo para una fuente pequeña y poco ruidosa en una banda limitada — con toda la superficie dentro de la región cualificada según el Anexo A o el B. Con números: una fuente de sobremesa de 0,6 × 0,5 × 0,7 m tiene m, así que m; con una banda más baja de 100 Hz, m no manda, y el mínimo de 1 m tampoco. El radius=1.0 de los ejemplos de abajo solo vale, por tanto, para una fuente de menos de unos 0,5 m de dimensión característica.

El conjunto de posiciones tampoco lo es. Primero se usan las posiciones 1 a 20, y las 21 a 40 se añaden solo cuando la diferencia entre el nivel más alto y el más bajo en alguna banda de interés no es menor que la mitad del número de posiciones — una comprobación sobre datos que el lector ya tiene, levels.max(0) - levels.min(0) >= 0.5 * levels.shape[0]. Si con 40 posiciones sigue sin cumplirse, hace falta una investigación localizada y las posiciones pasan entonces a tener áreas desiguales, que es para lo que está areas=.

import numpy as np
from phonometry import emission
# Las 40 posiciones normalizadas de la semiesfera (vectores unitarios escalados por el radio).
pos = emission.precision_positions("hemisphere", radius=1.0, count=40)
print(pos.shape) # (40, 3)
# SPL en banda de octava/tercio (dB) en cada una de las 40 posiciones; aquí un
# valor uniforme de 74 dB en una banda. El resultado lleva S = 2*pi*r^2 y LW con C1+C2+C3.
levels = np.full((40, 1), 74.0)
res = emission.sound_power_anechoic(levels, "hemisphere", radius=1.0)
print(round(res.surface_area, 3)) # 6.283 (2*pi*1^2)
print(np.round(res.sound_power_level, 2)) # [81.85]
Dos paneles tridimensionales de los conjuntos de micrófonos de ISO 3745 sobre un radio de 1 m. A la izquierda, la semiesfera de 40 posiciones de la Tabla E.1 sobre su plano reflectante, con las posiciones 1 a 20 de un color y las 21 a 40 de otro para marcar la ampliación. A la derecha, la esfera completa de 20 posiciones de la Tabla D.1 para el caso anecoico, sin plano reflectanteDos paneles tridimensionales de los conjuntos de micrófonos de ISO 3745 sobre un radio de 1 m. A la izquierda, la semiesfera de 40 posiciones de la Tabla E.1 sobre su plano reflectante, con las posiciones 1 a 20 de un color y las 21 a 40 de otro para marcar la ampliación. A la derecha, la esfera completa de 20 posiciones de la Tabla D.1 para el caso anecoico, sin plano reflectante

Los conjuntos de precisión, dibujados desde la misma llamada a precision_positions que hace el fragmento de arriba. Las veinte primeras muestrean la superficie por sí solas; las veinte siguientes se añaden solo cuando el recorrido de niveles de banda dispara la ampliación, y una investigación localizada posterior lleva áreas desiguales.

Mostrar el código de esta figura
import matplotlib.pyplot as plt
fig, (axi, axd) = plt.subplots(1, 2, subplot_kw={"projection": "3d"})
plot_microphone_positions(
emission.precision_positions("hemisphere", radius=1.0, count=40),
ax=axi, radius=1.0)
plot_microphone_positions(
emission.precision_positions("sphere", radius=1.0, count=20),
ax=axd, radius=1.0)
plt.show()

Correcciones por ruido de fondo y meteorológica. La corrección por ruido de fondo se aplica por posición y se acota donde la diferencia señal-fondo es pequeña (Ec. 11); la corrección meteorológica se evalúa a partir de la temperatura y la presión estática medidas.

import numpy as np
from phonometry import emission
# K1 para una diferencia señal-fondo de 6 dB en una banda de borde <=200 Hz: el
# límite es 1.26 dB (Ec. 11). Los niveles de fuente y fondo son [posiciones, bandas].
k1 = emission.precision_background_correction(
np.array([[56.0]]), np.array([[50.0]]), np.array([200.0]))
print(round(float(k1[0, 0]), 4)) # 1.2563
# Correcciones meteorológicas en la referencia de 23 C, 101.325 kPa (Ec. 16):
mc = emission.meteorological_corrections(23.0, 101.325)
print(round(mc.c1, 4), round(mc.c2, 4)) # -0.1282 0.0
# Incertidumbre expandida (EJEMPLO del apartado 10.5): sigma_R0 = 0.5, sigma_omc = 2.0,
# k = 2 -> U = 4.1 dB.
print(round(emission.precision_uncertainty(0.5, 2.0, 2.0), 3)) # 4.123

La MeteorologicalCorrection es un par de escalares (más el por banda cuando el coeficiente de atenuación se aporta por banda), no un espectro dibujable: las correcciones se pliegan en el PrecisionSoundPowerResult como sus campos c1/c2/c3, y la ficha .report() las imprime en su franja de base de medición.

Los márgenes y los intervalos que hay detrás de esos números son más estrictos que los de la sección 1. El fondo, promediado sobre todas las posiciones, debe quedar al menos 6 dB por debajo del nivel de fuente en todas las bandas y al menos 10 dB por debajo entre 250 Hz y 5 kHz (apartado 5.2.1.1) — una banda que no lo alcance puede excluirse en cambio del rango de interés si su potencia de banda ponderada A corregida queda al menos 15 dB por debajo de la más alta (apartado 5.2.1.2). Donde el margen se quede corto de todos modos, el apartado 9.4.2 congela en el valor que produce el criterio — 1,26 dB para las bandas de 200 Hz y por debajo y de 6,3 kHz y por encima, 0,46 dB entre 250 Hz y 5 kHz — y exige entonces que el informe de ensayo, y las tablas y gráficas que contenga, indiquen que esas bandas son cotas superiores. precision_background_correction aplica exactamente esa regla; declarar la omisión es cosa de quien lee.

El promediado es más largo que el de ISO 3744: al menos 30 s en las bandas centradas en 160 Hz y por debajo y al menos 10 s de 200 Hz hacia arriba (apartado 9.4.1), con el intervalo indicado en el informe, y al menos dos recorridos completos cuando se usa un micrófono en recorrido. El fondo se mide inmediatamente antes o inmediatamente después de la fuente, en las mismas posiciones y sobre el mismo intervalo. Cuarenta posiciones a 30 s en las bandas graves son la razón de que una campaña de grado 1 lleve mucho más tiempo que la de grado 2 de la sección 1: el coste del grado es sobre todo tiempo.

ParámetroTipoUnidadesRango / valor por defectoNotas
levels_positionsarray 2DdB(NM, NB)Una fila por posición, una columna por banda
surfacestr'sphere' / 'hemisphere'Cámara anecoica o semianecoica
radiusfloatm> 0Radio de medición ; acotado por , y el suelo de 1 m de arriba
background_levelsarray 2D o espectrodBcoincide con levels_positionsHabilita el por posición de la Ec. 11
frequenciesarray 1DHzuna por bandaHabilita y el por banda
areasarray 1Duna por posiciónÁreas de segmento desiguales, para una investigación localizada (apartado 9.4.3.2); si se omite se suponen iguales
temperaturefloat°Cpor defecto 23.0Fija ,
static_pressurefloatkPapor defecto 101.325Fija ,
air_absorption_coefficientfloat o array 1DdB/mpor defecto NoneEl término de absorción del aire; se aporta, no se calcula
sigma_omcfloatdBpor defecto 0.0Desviación típica de funcionamiento y montaje, apartado 10.5
coverage_factorfloatpor defecto 2.0La de

Los dos últimos son toda la historia de la incertidumbre, y el valor por defecto la esconde: si se deja como está, sigma_omc = 0 afirma que la instalación es perfectamente repetible y la ficha imprime dB. Los 4,1 dB que declara el ejemplo de abajo son lo que cuesta esa misma determinación una vez se admite el valor de EJEMPLO dB del apartado 10.5.

Sobre varias bandas sound_power_anechoic devuelve un PrecisionSoundPowerResult representable que lleva el por banda y el total ponderado A:

import numpy as np
from phonometry import emission
# Una máquina con pico en frecuencias medias medida sobre el conjunto hemisférico de
# 40 posiciones (Anexo E). levels_positions es el espectro de presión superficial
# (40, NB): un espectro base con pico cerca de 1 kHz más una pequeña dispersión espacial por posición.
freqs = np.array([125, 250, 500, 1000, 2000, 4000, 8000], float)
base = 70.0 + 8.0 * np.exp(-(np.log2(freqs / 1000.0) ** 2) / 2.0)
rng = np.random.default_rng(7)
levels = base[None, :] + rng.normal(0.0, 1.0, (40, freqs.size))
# sigma_omc es la desviación típica de funcionamiento y montaje del
# apartado 10.5; con el valor de EJEMPLO 2.0 dB y el factor de cobertura por
# defecto k = 2, la incertidumbre expandida U = k*sqrt(sigma_R0^2 + sigma_omc^2)
# son los 4.1 dB que imprime la ficha de abajo. Con su valor por defecto 0
# informa 1.0 dB.
result = emission.sound_power_anechoic(levels, "hemisphere", radius=1.0,
frequencies=freqs, sigma_omc=2.0)
print(round(result.sound_power_level_a, 1)) # 89.3
print(round(float(result.uncertainty), 1)) # 4.1 dB
result.plot() # espectro LW, LWA en el título (requiere matplotlib)
El espectro de nivel de potencia acústica de precisión de una máquina con pico en frecuencias medias medida sobre el conjunto hemisférico de ISO 3745, una barra por banda con pico cerca de 1 kHz, con el total ponderado A de 89,3 dB(A) en el títuloEl espectro de nivel de potencia acústica de precisión de una máquina con pico en frecuencias medias medida sobre el conjunto hemisférico de ISO 3745, una barra por banda con pico cerca de 1 kHz, con el total ponderado A de 89,3 dB(A) en el título

Una barra por banda: la presión promediada en la superficie más las correcciones de área, ruido de fondo y meteorológica dan , y la suma energética ponderada A entre bandas da el número único del título.

Mostrar el código de esta figura
import matplotlib.pyplot as plt
import numpy as np
from phonometry import emission
# Una máquina con pico en frecuencias medias medida sobre el conjunto hemisférico de
# 40 posiciones (Anexo E). levels_positions es el espectro de presión superficial
# (40, NB): un espectro base con pico cerca de 1 kHz más una pequeña dispersión espacial por posición.
freqs = np.array([125, 250, 500, 1000, 2000, 4000, 8000], float)
base = 70.0 + 8.0 * np.exp(-(np.log2(freqs / 1000.0) ** 2) / 2.0)
rng = np.random.default_rng(7)
levels = base[None, :] + rng.normal(0.0, 1.0, (40, freqs.size))
result = emission.sound_power_anechoic(levels, "hemisphere", radius=1.0, frequencies=freqs)
# result es el PrecisionSoundPowerResult calculado arriba. Una línea:
result.plot(language="es")
plt.show()
# A mano: un espectro de barras de LW con el total ponderado A en el título.
freqs = result.frequencies
positions = np.arange(freqs.size)
fig, ax = plt.subplots()
ax.bar(positions, result.sound_power_level, width=0.7, color="#1f77b4")
ax.set_xticks(positions)
ax.set_xticklabels([f"{f:g}" for f in freqs], rotation=45, ha="right")
ax.set_xlabel("Frecuencia [Hz]")
ax.set_ylabel("Nivel de potencia acústica LW [dB]")
ax.set_title(
f"Potencia acústica de precisión (ISO 3745) LWA = {result.sound_power_level_a:.1f} dB(A)")
plt.show()

Una determinación de potencia acústica termina en un documento. Todos los resultados de esta página siguen siendo dibujables mientras se trabaja con ellos (res.plot() traza interactivamente el mismo espectro que la ficha compone), y el paso de informe lo envuelve en el entregable. Tanto el resultado de superficie envolvente (SoundPowerResult, ISO 3744/3746) como el resultado de precisión (PrecisionSoundPowerResult, ISO 3745) exponen un método .report() que escribe una ficha PDF de una página con el formato de una hoja de ensayo de potencia acústica: la línea de base normativa que nombra el método aplicado y el grado de exactitud, un encabezado opcional de metadatos (cliente, fuente de ruido, entorno de ensayo, instrumentación, clima, fecha), una tabla por bandas (frecuencia nominal de octava/tercio de octava, el nivel de presión acústica de superficie y el nivel de potencia acústica de banda ), el espectro de potencia acústica con eje de bandas nominal, y un recuadro con el nivel de potencia acústica ponderado A (dB re 1 pW) acompañado del total, la incertidumbre expandida y el área de la superficie de medición .

Los metadatos se proporcionan mediante un ReportMetadata, cuyos campos aplicables aquí son la descripción de la fuente (specimen), el entorno de ensayo (test_room), el cliente, la instrumentación, la temperatura, la humedad relativa y la presión ambiente, la fecha del ensayo (test_date) y la identidad del pie (laboratory, operator, report_id, notes); el área de la superficie de medición procede del propio resultado y se imprime en el recuadro y en la franja de base, junto con las correcciones aplicadas (el ruido de fondo y el entorno para el método de superficie ISO 3744/3746, o las meteorológicas // para el método de precisión ISO 3745). Indicar requirement añade un veredicto CUMPLE/NO CUMPLE frente a un límite declarado de potencia acústica ponderada A (la emisión de potencia acústica es una magnitud en la que menos es mejor, así que la fuente cumple igual o por debajo del límite). verbose=True añade el nivel promedio energético a la tabla, y para el resultado de superficie ISO 3744/3746 añade además las columnas de corrección / (el resultado de precisión no lleva en absoluto y pliega su por posición dentro de la media de superficie, así que la ficha imprime // en su franja de base en lugar de esas columnas). language="es" genera la ficha en español con decimales de coma.

import numpy as np
from phonometry import ReportMetadata, emission
freqs = np.array([63, 125, 250, 500, 1000, 2000, 4000, 8000], float)
# Diez espectros de posición idénticos sobre un hemisferio de radio 4 m; ruido
# de fondo uniforme 10 dB por debajo y área de absorción equivalente
# A = 1500 m^2 (para que K1, K2 sean significativos y dentro del límite de
# validez del grado de ingeniería).
surface = np.array([72.0, 76, 80, 82, 81, 78, 73, 66])
res = emission.sound_power_pressure(
np.tile(surface, (10, 1)), "hemisphere", radius=4.0,
background_levels=np.tile(surface - 10.0, (10, 1)),
frequencies=freqs, grade="engineering",
room=emission.RoomEnvironment(absorption_area=1500.0),
)
res.report(
"sound_power.pdf",
metadata=ReportMetadata(
client="Planta de fabricación de ejemplo",
specimen="Grupo hidráulico (de suelo)",
test_room="Cámara semianecoica sobre suelo reflectante",
instrumentation="Sonómetro clase 1 (IEC 61672-1), n/s 0042",
laboratory="Laboratorio de referencia Phonometry",
report_id="EXAMPLE-3744",
requirement=105.0,
),
language="es",
) # LWA = 103,7 dB(A) re 1 pW -> límite declarado 105 dB(A): CUMPLE

La ficha de ejemplo se regenera con make reports y se mantiene renderizada en el repositorio; pulsa la vista previa para abrir el PDF.

Informe de ejemplo de determinación de potencia acústica ISO 3744 (PDF)

Ficha de una página de determinación de potencia acústica ISO 3744: un encabezado con el cliente, la fuente de ruido, el entorno de ensayo semianecoico y la instrumentación y el clima, la tabla en bandas de octava (63 Hz a 8 kHz) de niveles de presión acústica de superficie Lp y niveles de potencia acústica de banda LW, el espectro de potencia acústica LW(f) con eje de bandas nominal, el recuadro con el nivel de potencia acústica ponderado A LWA = 103,7 dB(A) re 1 pW con el LW total = 105,8 dB, la incertidumbre expandida U = 3,0 dB y la superficie de medición S = 100,53 m2, y un veredicto CUMPLE frente al límite declarado de 105 dB(A), cerrada por una franja de base que indica las correcciones aplicadas K1 = 0,5 dB y K2 = 1,0 dB.

Descargar el informe (PDF)

Ficha de determinación de potencia acústica (SoundPowerResult.report), una medición ISO 3744 en hemisferio de grado de ingeniería con las correcciones K1/K2 y el LWA en recuadro.

El resultado de precisión escribe la misma hoja desde el lado de ISO 3745, con las correcciones meteorológicas en su franja de base en lugar del par /. Es la medición de la sección 2 sobre las 40 posiciones del hemisferio, la del espectro representado más arriba:

from phonometry import ReportMetadata
result.report(
"potencia-precision.pdf",
metadata=ReportMetadata(
client="Planta de fabricación de ejemplo",
specimen="Máquina con pico en medias frecuencias",
test_room="Cámara anecoica cualificada, red de 40 posiciones en hemisferio",
measurement_standard="ISO 3745",
),
language="es",
) # LWA = 89,3 dB(A) re 1 pW, U = 4,1 dB
Informe de ejemplo de determinación de potencia acústica de precisión ISO 3745 (PDF)

Ficha de una página de potencia acústica de precisión ISO 3745: un encabezado con el cliente, la fuente de ruido y la cámara anecoica cualificada con su red de 40 posiciones en hemisferio, la tabla en bandas de octava de 125 Hz a 8 kHz de niveles de presión acústica de superficie Lp y niveles de potencia acústica de banda LW (78,0, 79,0, 82,6, 85,8, 82,6, 78,7 y 78,0 dB), el espectro LW con su máximo en 1 kHz, y el recuadro con el nivel de potencia acústica ponderado A LWA = 89,3 dB(A) re 1 pW junto al LW total = 90,1 dB, la incertidumbre expandida U = 4,1 dB y la superficie de medición S = 6,28 m2, sobre una franja de base que indica las correcciones meteorológicas aplicadas C1 = -0,13 dB, C2 = 0,00 dB y C3 = 0,0 dB.

Descargar el informe (PDF)

Ficha de potencia acústica de precisión (PrecisionSoundPowerResult.report), la determinación anecoica de ISO 3745 con sus correcciones meteorológicas.
  • Cubierto

    La determinación por superficie envolvente de ISO 3744/3746 (sound_power_pressure): las áreas de superficie de semiesfera y caja, las correcciones de fondo y de entorno con sus límites de validez, las posiciones de micrófono del Anexo B (measurement_positions, plot_microphone_positions) y el total ponderado A del Anexo E. La determinación de precisión de ISO 3745 (sound_power_anechoic): las mallas fijas de los Anexos D/E (precision_positions), la corrección de fondo por posición (precision_background_correction, Ec. 11), las correcciones meteorológicas // y la incertidumbre expandida del apartado 10.5 (precision_uncertainty). Ambos resultados presentan la ficha de potencia acústica de estilo acreditado mediante .report().

  • No cubierto

    Ninguno de los dos métodos ejecuta el ensayo de cualificación del recinto: la cualificación de campo libre de la cámara anecoica o semianecoica de ISO 3745 se da por supuesta, no se realiza, y la validez de en ISO 3744 solo emite avisos. Tampoco se aplica la corrección del Anexo G de ISO 3744 a las condiciones meteorológicas de referencia, exigida por encima de 500 m de altitud o por debajo de 10 °C (apartado 8.2.5): sound_power_pressure no admite argumento de temperatura ni de presión. La corrección meteorológica de ISO 3745 necesita un coeficiente de absorción del aire que aporta quien llama (air_absorption_coefficient=); este módulo no lo calcula a partir de ISO 9613-1. La elección entre las seis vías, y la declaración ISO 4871 que un resultado alimenta, viven en Potencia acústica.