Normativa española de ruido (RD 1367/2007)
Normas aplicables: RD 1367/2007Ley 37/2003Referencias: Avilés López y Perera Martín 2017
La evaluación acústica en España no termina en un . El Real Decreto 1367/2007, que desarrolla la Ley 37/2003 del Ruido, define un índice propio, el nivel de presión acústica continuo equivalente corregido , y construye sobre él toda la cadena de comprobación: se divide el día en periodos temporales de evaluación, cada periodo en fases de ruido, se corrige cada fase por componentes tonales, de baja frecuencia e impulsivas, se integra hasta un valor anual y se compara con tres criterios distintos de la misma tabla de valores límite de inmisión. Esta página implementa esa cadena completa.
Los niveles por periodo que la alimentan salen de Niveles integrados y estadísticos, y los indicadores europeos / con los que conviven, de Niveles ambientales (ISO 1996-1/-2).
El nivel corregido LKeq y sus tres correcciones
Sección titulada «El nivel corregido LKeq y sus tres correcciones»El índice del reglamento es (anexo I A.2 c):
donde es el nivel de presión acústica continuo equivalente
ponderado A, ya corregido por ruido de fondo, y las tres correcciones penalizan
el carácter del ruido. Cada una vale 0, 3 o 6 dB, y su suma está limitada a
9 dB (anexo IV A.3.3), tope que expone RD1367_MAX_CORRECTION. Aunque el
índice deriva de un nivel ponderado A, el reglamento lo expresa en dB.
La corrección por ruido de fondo que toda entrada da por hecha
Sección titulada «La corrección por ruido de fondo que toda entrada da por hecha»El de arriba es el nivel de la actividad sola. Todo lo de esta página, las tres correcciones, los niveles de fase y el veredicto, está definido sobre un nivel corregido por ruido de fondo, y el reglamento lo dice antes que ninguna otra cosa. El procedimiento es la resta energética de siempre: se mide el residual con la actividad parada, en el mismo periodo de evaluación, y se resta del total, .
Deja de tener sentido a medida que los dos convergen. Con la actividad 10 dB por
encima del residual, la corrección vale 0,4 dB y el residual apenas importa; a
3 dB la corrección vale 3 dB y la respuesta es tan incierta como las dos
mediciones que la produjeron. La ISO 1996-2 traza ahí la raya y un informe de
inspección debería hacer lo mismo: con un margen por debajo de 3 dB no se permite
corrección alguna y lo honrado es declarar el nivel sin corregir como cota
superior. residual_sound_correction() y el gaussian_residual_level() basado
en percentiles de
Niveles ambientales
hacen la aritmética y llevan esa regla (reportable_upper_bound,
reliable=False); el procedimiento propio del anexo IV del RD para la serie de
mediciones (cuántas, de qué duración, qué las invalida) no está implementado
aquí.
Dos consecuencias en campo. El residual hay que capturarlo en el mismo periodo de evaluación, porque un residual de noche no es un residual de día. Y una fase con un margen demasiado pequeño tampoco puede sostener un veredicto de , o : los tres son diferencias de niveles corregidos por ruido de fondo, así que el mismo margen gobierna las correcciones de carácter y no solo el nivel.
| Corrección | Magnitud de entrada | Umbrales | Función |
|---|---|---|---|
| , componentes tonales emergentes | Espectro sin ponderar en tercios de octava; , con la media aritmética de las dos bandas adyacentes | 8/12 dB (20 a 125 Hz), 5/8 dB (160 a 400 Hz), 3/5 dB (500 Hz a 10 kHz) | tonal_correction() |
| , componentes de baja frecuencia | 0 dB hasta 10 dB, 3 dB si , 6 dB por encima | low_frequency_correction() | |
| , componentes impulsivas | los mismos 10 y 15 dB | impulsive_correction() |
Para se evalúa banda a banda y, cuando hay varios tonos emergentes, gobierna el mayor de los obtenidos (paso d):
from phonometry import environment
freqs = [100, 125, 160, 200, 250, 315, 400, 500, 630, 800, 1000]levels = [58.0, 60.0, 59.0, 61.0, 72.0, 62.0, 60.0, 58.0, 56.0, 54.0, 52.0]
kt = environment.tonal_correction(levels, freqs)kt.correction # 6 dBkt.governing_frequency # 250,0 Hzkt.differences[4] # Lt = 10,5 dB sobre la media de las vecinas
environment.low_frequency_correction(lceq=76.0, laeq=63.0) # Lf = 13 dB -> Kf = 3 dBenvironment.impulsive_correction(laieq=68.0, laeq=63.0) # Li = 5 dB -> Ki = 0 dBenvironment.corrected_level(63.0, kt=6, kf=3, ki=0) # LKeq = 72,0 dBenvironment.total_correction(kt=6, kf=6, ki=3) # 9,0 dB: el topeLa comprobación enfrenta una banda a la media aritmética de sus dos vecinas, no a un suelo ajustado ni al espectro entero. Solo la banda de 250 Hz supera su umbral, por 10,5 dB frente al par de 5 dB y 8 dB que rige entre 160 Hz y 400 Hz, así que gobierna y dB. Las dos bandas de los extremos no tienen diferencia alguna, porque les falta una vecina.
Mostrar el código de esta figura
import matplotlib.pyplot as plt
# `environment`, `freqs` y `levels` vienen del fragmento de arriba.environment.tonal_correction(levels, freqs).plot(language="es")plt.show()y son la misma escalera de dos peldaños leída sobre dos diferencias distintas del sonómetro, y los peldaños son donde la aritmética se vuelve quebradiza: una diferencia de 15,0 dB puntúa 3 dB y una de 15,1 dB puntúa 6 dB, así que una décima de decibelio de incertidumbre de medida a un lado u otro de un peldaño vale 3 dB en el .
Mostrar el código de esta figura
import matplotlib.pyplot as pltimport numpy as np
# `environment` se importa arriba.diffs = np.linspace(0.0, 20.0, 400)fig, ax = plt.subplots()ax.step(diffs, [environment.low_frequency_correction(lceq=63.0 + d, laeq=63.0) for d in diffs], where="post", label="Kf (LCeq - LAeq)")ax.step(diffs, [environment.impulsive_correction(laieq=63.0 + d, laeq=63.0) for d in diffs], where="post", ls="--", label="Ki (LAIeq - LAeq)")ax.plot([13.0], [3.0], "o", label="ejemplo resuelto: Lf = 13 dB")ax.plot([5.0], [0.0], "s", label="ejemplo resuelto: Li = 5 dB")ax.set(xlabel="Diferencia de nivel [dB]", ylabel="Corrección [dB]")ax.legend(fontsize="small")plt.show()Relación con los procedimientos de ISO 1996
Sección titulada «Relación con los procedimientos de ISO 1996»Las correcciones del reglamento se parecen a procedimientos de ISO 1996 que la biblioteca ya implementa, pero no son intercambiables, y por eso este módulo implementa las variantes propias del RD en lugar de delegar en aquellas:
tonal_audibility()/tonal_adjustment()son el método de ingeniería del anexo C de ISO 1996-2, basado en la audibilidad dentro de la banda crítica del tono, y devuelven un continuo entre 0 y 6 dB. El RD trabaja sobre diferencias entre bandas de tercio de octava y solo produce 0, 3 o 6 dB.tonal_seeking_survey()(método de cribado, anexo K de ISO 1996-2:2017) es el pariente más cercano, porque también parte el espectro en 125 y 400 Hz, pero exige que la banda supere a ambas vecinas en 15/8/5 dB y solo devuelve un indicador de prominencia; el RD compara con la media de las vecinas con umbrales 8/5/3 dB y gradúa el resultado.impulsive_sound_adjustment()es el método de tasa de crecimiento de ISO/PAS 1996-3 sobre una señal calibrada. El del RD es la diferencia clásica leída en el sonómetro, no la misma magnitud.- no tiene ninguna contraparte en ISO 1996: la diferencia es propia del reglamento español.
Los dos procedimientos están lo bastante cerca como para confundirse y lo bastante lejos como para discrepar sobre un espectro real. Una banda de 250 Hz que sobresale 7,5 dB de la media aritmética de sus vecinas queda graduada con dB por el reglamento y no levanta ningún indicador en el método de cribado de ISO, porque supera a cada vecina en menos de los 8 dB que ese método exige. Esa es exactamente la situación que un informe de inspección tiene que saber defender: el RD compara con la media aritmética de las vecinas con umbrales 8/5/3 dB y gradúa el resultado en 0/3/6; el método de cribado exige que la banda supere a ambas vecinas en 15/8/5 dB y devuelve un indicador; el método de ingeniería del anexo C trabaja dentro de una banda crítica y devuelve un valor continuo.
Mostrar el código de esta figura
import matplotlib.pyplot as pltimport numpy as np
# `environment`, `freqs` y `levels` vienen del fragmento de correcciones de arriba.shallow = list(levels)shallow[4] = 69.0 # Lt = 7,5 dB en lugar de 10,5 dB
for spectrum in (levels, shallow): rd = environment.tonal_correction(spectrum, freqs) flags = np.asarray(environment.tonal_seeking_survey(spectrum, freqs)) print(rd.correction, rd.governing_frequency, bool(flags[4]))# 6.0 250.0 True <- los dos coinciden# 3.0 250.0 False <- el RD lo gradúa, el método de cribado no lo marcaplt.show()Periodos temporales de evaluación y fases de ruido
Sección titulada «Periodos temporales de evaluación y fases de ruido»El reglamento define tres periodos temporales de evaluación (anexo I A.1):
día de 07:00 a 19:00 (12 h), tarde de 19:00 a 23:00 (4 h) y noche de 23:00 a
07:00 (8 h), con las duraciones y los límites horarios en
RD1367_PERIOD_HOURS y RD1367_PERIOD_CLOCK_LIMITS.
Cuando la emisión varía dentro de un periodo, este se divide en fases de ruido de nivel percibido uniforme. En cada fase se mide durante al menos 5 s y se corrige, y el nivel del periodo es la media energética ponderada por la duración de las fases (anexo IV A.3.4.2 b):
El nivel promedio anual de cada periodo es a su vez la media
energética de los diarios del año (anexo I A.2 d). El reglamento
fija además su propio redondeo: se incrementa el resultado en 0,5 dB y se toma
la parte entera, que es lo que hace round_reported_level().
from phonometry import environment
environment.RD1367_PERIOD_CLOCK_LIMITS["day"] # (7, 19)environment.RD1367_PERIOD_HOURS["day"] # 12,0 h
day = [environment.NoisePhase(2, 0.0, label="cerrada"), environment.NoisePhase(6, 50.0, kt=6, kf=3), environment.NoisePhase(4, 48.0, kt=3, kf=3)]
lkeq_d = environment.evaluation_period_level(day) # 56,82 dB sin redondearenvironment.round_reported_level(lkeq_d) # 57 dB
lk_d = environment.long_term_corrected_level([57.0, 0.0], weights=[303, 62])environment.round_reported_level(lk_d) # 56 dB (303 días abierta, 62 cerrada)Objetivos de calidad acústica y valores límite de inmisión
Sección titulada «Objetivos de calidad acústica y valores límite de inmisión»El reglamento separa dos familias de valores. Los objetivos de calidad acústica del anexo II son los que debe cumplir el conjunto de todos los emisores acústicos que llegan a un área acústica o a un recinto; los valores límite de inmisión del anexo III son los que se exigen a un emisor concreto.
| Tabla | Contenido | Función |
|---|---|---|
| Anexo II, Tabla A | Objetivos en el ambiente exterior por tipo de área acústica: e 60/60/50, a 65/65/55, d 70/70/65, c 73/73/63, b 75/75/65 dB (redacción del RD 1038/2012) | outdoor_quality_objectives() |
| Anexo II, Tabla B | Objetivos en el ambiente interior por uso del edificio y tipo de recinto | indoor_quality_objectives() |
| Anexo II, Tabla C | Objetivo de vibraciones | vibration_quality_objective() |
| Anexo III, Tablas A1 y A2 | Valores límite de nuevas infraestructuras viarias, ferroviarias y aeroportuarias, y | infrastructure_limits(), max_infrastructure_limit() |
| Anexo III, Tabla B1 | Valores límite de infraestructuras portuarias y actividades | activity_limits() |
| Anexo III, Tabla B2 | Ruido transmitido por actividades a locales acústicamente colindantes | adjacent_premises_limits() |
Conviene tener presentes dos detalles de la Tabla A. El área acústica de
tipo f (sistemas generales de infraestructuras de transporte y equipamientos
públicos) no tiene valor numérico: la nota 2 la remite a los objetivos de las
áreas colindantes, y por eso ACOUSTIC_AREA_TYPES la lista pero las funciones
de límites no la admiten. Y en las áreas urbanizadas con posterioridad a la
entrada en vigor del reglamento (24 de octubre de 2007) el objetivo es 5 dB más
estricto (artículo 14.2), que es lo que aplica urbanisation="new".
from phonometry import environment
environment.outdoor_quality_objectives("a") # 65 / 65 / 55 dBenvironment.outdoor_quality_objectives("a", urbanisation="new") # 60 / 60 / 50 dBenvironment.indoor_quality_objectives("residential", "bedrooms") # 40 / 40 / 30 dBenvironment.infrastructure_limits("a") # 60 / 60 / 50 dBenvironment.max_infrastructure_limit("a") # 85 dB (LAmax)environment.activity_limits("a") # 55 / 55 / 45 dBenvironment.adjacent_premises_limits("residential", "bedrooms") # 35 / 35 / 25 dBenvironment.vibration_quality_objective("residential") # 75 dBCumplir un valor límite de inmisión no es simplemente quedar por debajo del número de la tabla. Para actividades e infraestructuras portuarias, el artículo 25.1 b) exige tres cosas a la vez: que ningún valor promedio anual supere el valor de la tabla, que ningún valor diario lo supere en más de 3 dB y que ningún medido en una fase de ruido lo supere en más de 5 dB. A efectos de la inspección de una actividad ya en funcionamiento, el artículo 25.2 aplica solo los dos últimos.
Ejemplo resuelto: una actividad nueva sobre suelo residencial
Sección titulada «Ejemplo resuelto: una actividad nueva sobre suelo residencial»Una actividad nueva situada sobre suelo residencial (área acústica de tipo a) abre de forma ininterrumpida de 9 a 21 h. Una máquina ruidosa funciona solo entre las 9 y las 15 h; el resto del horario los niveles son estables, y cuando la actividad está cerrada no emite ruido. Los niveles medidos en el exterior, ya corregidos por ruido de fondo, son:
| Fase | ||||||
|---|---|---|---|---|---|---|
| Con la máquina ruidosa | 50 dB | 6 | 3 | 0 | 9 | 59 dB |
| Resto del horario | 48 dB | 3 | 3 | 0 | 6 | 54 dB |
El periodo día se parte en tres fases (2 h cerrada, 6 h con la máquina, 4 h con el resto de fuentes) y da dB; el periodo tarde se parte en dos (2 h abierta, 2 h cerrada) y da dB. La actividad abre 303 días al año y cierra 62 (julio y agosto), de donde dB y dB. Los valores límite del área de tipo a (anexo III, Tabla B1) son 55/55/45 dB, así que los criterios aplicables son 60 dB sobre cada , 58 dB sobre el diario y 55 dB sobre el anual:
from phonometry import environment
day = [environment.NoisePhase(2, 0.0, label="cerrada"), environment.NoisePhase(6, 50.0, kt=6, kf=3), environment.NoisePhase(4, 48.0, kt=3, kf=3)]evening = [environment.NoisePhase(2, 48.0, kt=3, kf=3), environment.NoisePhase(2, 0.0, label="cerrada")]
limits = environment.activity_limits("a") # 55 / 55 / 45 dBverdict = environment.assess_activity( {"day": day, "evening": evening}, limits, operating_days=303)
verdict.periods[0].reported_level # 57 dB (LKeq,d)verdict.periods[0].reported_long_term # 56 dB (LK,d)verdict.complies # False: LK,d supera los 55 dBTres índices por periodo frente a tres criterios distintos, y solo el más estricto acaba mordiendo. En el periodo día la fase peor marca 59 dB frente a su criterio de 60 dB y el diario 57 dB frente a 58 dB, y ambos pasan, mientras que el anual de 56 dB incumple por un decibelio los 55 dB de la Tabla B1. El periodo tarde (54 / 51 / 50 dB) cumple los tres. Leer solo la barra más alta llevaría a declarar conforme esta actividad.
Mostrar el código de esta figura
import matplotlib.pyplot as pltfrom phonometry import environment
day = [environment.NoisePhase(2, 0.0, label="cerrada"), environment.NoisePhase(6, 50.0, kt=6, kf=3), environment.NoisePhase(4, 48.0, kt=3, kf=3)]evening = [environment.NoisePhase(2, 48.0, kt=3, kf=3), environment.NoisePhase(2, 0.0, label="cerrada")]
verdict = environment.assess_activity( {"day": day, "evening": evening}, environment.activity_limits("a"), operating_days=303,)verdict.plot(language="es")plt.show()El veredicto es el matiz del ejemplo. Los medidos (59 y 54 dB) quedan por debajo de 60 dB, y los diarios (57 y 51 dB) por debajo de 58 dB, pero el promedio anual del periodo día, dB, supera los 55 dB de la tabla. Una actividad nueva no cumple. Una actividad que ya estuviera en funcionamiento, juzgada por el artículo 25.2, sí cumpliría, porque a ella solo se le exigen los valores por fase y los diarios:
existing = environment.assess_activity( {"day": day, "evening": evening}, limits, operating_days=303, new_activity=False,)print(existing.complies) # True: el criterio anual no se aplicaGráficos e informe de inspección
Sección titulada «Gráficos e informe de inspección»ActivityAssessment.plot() dibuja los tres índices de cada periodo frente a
sus tres criterios, como en la figura anterior, y TonalCorrectionResult.plot()
dibuja el espectro de tercios de octava con las diferencias que
justifican el aplicado.
ActivityAssessment.report() va un paso más allá y renderiza un acta de
inspección acústica de una página: cabecera de identificación, tabla de
medición por fase con las correcciones //, evaluación por
periodo frente a los valores límite aplicables y el veredicto enmarcado. El
idioma por defecto es el español, el del reglamento; language="en" la
traduce.
from phonometry import environment
verdict = environment.assess_activity( {"day": [environment.NoisePhase(2, 0.0, label="cerrada"), environment.NoisePhase(6, 50.0, kt=6, kf=3), environment.NoisePhase(4, 48.0, kt=3, kf=3)], "evening": [environment.NoisePhase(2, 48.0, kt=3, kf=3), environment.NoisePhase(2, 0.0, label="cerrada")]}, environment.activity_limits("a"), operating_days=303,)
verdict.plot(language="es") # los tres criterios por periodoverdict.report("acta.pdf") # acta de inspección acústica, en españolEl acta de ejemplo se regenera con make reports y se mantiene renderizada en
el repositorio; pulsa la vista previa para abrir el PDF.

Acta de inspección acústica de una página, en español: una cabecera de identificación, la tabla de fases de ruido con las cinco fases, sus correcciones Kt, Kf y Ki y el LKeq,Ti resultante (59,0 dB con la máquina ruidosa activa, 54,0 dB para el resto de fuentes), la valoración por periodo frente a los 55 dB de la tabla B1 del anexo III (día 59/60, 57/58 y 56/55, tarde 54/60, 51/58 y 50/55), el gráfico de barras de los niveles de cada periodo frente a sus tres criterios, y el veredicto enmarcado de que la actividad supera los valores límite de inmisión del RD 1367/2007, con el día como periodo determinante (LKeq,x = 57 dB frente a un límite de 55 dB, LK,x = 56 dB).
Qué cubre esta guía
Sección titulada «Qué cubre esta guía»Cubierto
El nivel corregido y las correcciones , y del RD 1367/2007 (anexo I A.2 c y anexo IV A.3.3), los periodos temporales de evaluación y la integración por fases de ruido y anual (anexo I A.1 y anexo IV A.3.4.2 b) con el redondeo del reglamento, las tablas de objetivos de calidad acústica (anexo II) y de valores límite de inmisión (anexo III), y la comprobación de cumplimiento de actividades e infraestructuras portuarias del artículo 25.
No cubierto
La zonificación acústica en áreas acústicas, los mapas de ruido y los planes de acción del capítulo correspondiente de la Ley 37/2003 son instrumentos de planificación, no cálculo, y quedan fuera. Tampoco se implementan los procedimientos de medición en sí (posiciones de micrófono, duración de las series, número de mediciones del anexo IV): esta página empieza donde termina el sonómetro.
Véase también
Sección titulada «Véase también»- Niveles ambientales (ISO 1996-1/-2): los indicadores y y los ajustes de ISO 1996-2 con los que conviven las correcciones del reglamento.
- Niveles integrados y estadísticos: los niveles , y por fase que alimentan las tres correcciones.
- Código Técnico de la Edificación (CTE DB-HR): la otra mitad de la normativa española, que comparte con esta el índice de ruido día del emplazamiento.
- Prominencia de sonidos impulsivos: el ajuste por impulsividad de ISO/PAS 1996-3, el pariente del que no es intercambiable con él.
- Referencia de la API:
environment.assessment.spain. - Teoría: Descriptores ambientales (ISO 1996-1): los indicadores de ISO 1996-1 sobre los que se construyen los índices nacionales.
Respuestas rápidas
Sección titulada «Respuestas rápidas»¿Qué es el nivel LKeq del RD 1367/2007?
Sección titulada «¿Qué es el nivel LKeq del RD 1367/2007?»Es el nivel de presión acústica continuo equivalente corregido: (anexo I A.2 c), donde , y penalizan con 0, 3 o 6 dB la presencia de componentes tonales emergentes, de baja frecuencia e impulsivas. La suma de las tres correcciones nunca supera 9 dB.
Referencias
Sección titulada «Referencias»- Avilés López, R. y Perera Martín, R. (2017). Manual de acústica ambiental y arquitectónica. Paraninfo. Los ejemplos 3.1 a 3.3 (pp. 171-176) son el caso resuelto que reproduce esta página, con el desglose de fases de ruido, la integración anual y el veredicto del artículo 25. ISBN 978-84-283-3814-1.
- Jefatura del Estado (España). (2003). Ley 37/2003, de 17 de noviembre, del Ruido (Ley 37/2003 (BOE-A-2003-20976), texto consolidado). La ley que el RD 1367/2007 desarrolla: los tipos de área acústica del artículo 7, la figura del emisor acústico y el régimen de inspección de los artículos 25 a 27.
- Ministerio de la Presidencia (España). (2007). Real Decreto 1367/2007, por el que se desarrolla la Ley 37/2003, del Ruido, en lo referente a zonificación acústica, objetivos de calidad y emisiones acústicas (RD 1367/2007 (BOE-A-2007-18397), texto consolidado). El nivel corregido LKeq,T y las correcciones Kt/Kf/Ki (anexo I A.2 c y anexo IV A.3.3), los periodos temporales de evaluación (anexo I A.1), la integración por fases de ruido (anexo IV A.3.4.2 b), los objetivos de calidad acústica (anexo II) y los valores límite de inmisión (anexo III). La Tabla A del anexo II está modificada por el RD 1038/2012.