A continuación, te detallo el método de calibración del sensor MQ‑3 y cómo definir y ajustar los límites de alerta, para que cada quien pueda adaptar el alcoholímetro a sus necesidades y al límite legal en España. Para otros países, tienes que consultar la normativa vigente de tu país. Si has llegado directamente aquí y no sabes cómo contruir el alcoholímetro con el sensor MQ-3, en este otro artículo, te lo explico detalladamente.
1. Método de Calibración del Sensor MQ‑3
Paso 1: Precalentamiento del Sensor
- Tiempo necesario:
Los sensores MQ‑3 necesitan calentarse (incluso hasta 24–48 horas) para alcanzar estabilidad. - Consejo:
Deja el sensor encendido en condiciones constantes antes de iniciar cualquier medición de calibración.
Paso 2: Medir en “Aire Limpio” para Obtener el Offset
- Objetivo:
Determinar el valor base (offset) que el sensor marca en ausencia de alcohol. - Procedimiento:
- Coloca el sensor en un ambiente sin presencia de vapores de alcohol (un lugar bien ventilado, sin contaminantes).
- Toma lecturas durante varios minutos (por ejemplo, cada 1 segundo durante 10 minutos).
- Calcula el promedio de estas lecturas; este promedio es el offset que luego restarás a todas las mediciones.
Paso 3: Exponer el Sensor a una Concentración Conocida de Alcohol
- Objetivo:
Obtener un segundo punto de referencia midiendo la respuesta del sensor ante una concentración definida de alcohol. - Procedimiento:
- Prepara una atmósfera con una concentración conocida de alcohol. Esto puede lograrse, por ejemplo, dejando evaporar una cantidad controlada de alcohol etílico en un espacio pequeño y cerrado o utilizando un calibrador de gas, si dispones de uno.
- Toma varias lecturas mientras el sensor está expuesto a esta concentración y calcula el promedio.
Paso 4: Calcular el Factor de Sensibilidad
- Fórmula Básica:

- Interpretación:
Este factor indica cuántos mg/L corresponden a cada unidad (voltio o valor convertido) que supere el offset. - Ejemplo numérico:
- Offset medido: 0,9 V
- Lectura con alcohol: 1,3 V
- Diferencia: 0,4 V
- Si la concentración conocida es 0,15 mg/L, el factor sería:

(Nota: Puedes trabajar en la misma unidad que uses en el código, ya sea voltios o mg/L, siempre que mantengas la coherencia en la fórmula).
Paso 5: Incorporar los Parámetros de Calibración en el Código
Una vez que tengas el offset y el factor, adapta el código para que:
- Se reste el valor del offset.
- Se multiplique el valor restante por el factor de sensibilidad.
Un ejemplo modificado del bloque de código podría ser:
globals:
- id: sensor_mg_l_global
type: float
restore_value: no
initial_value: "0.0"
- id: offset_mg_l # Valor en mg/L medido en aire limpio
type: float
restore_value: no
initial_value: "0.070" # Ejemplo: 0.070 mg/L
- id: factor_calibracion # Factor de sensibilidad (mg/L por unidad de sensor)
type: float
restore_value: no
initial_value: "5.0" # Ejemplo: ajusta este valor según tu calibración
sensor:
- platform: adc
pin: A0
name: "Nivel de Alcohol (V)"
id: sensor_voltage
update_interval: 1s
filters:
- multiply: 3.3
- platform: template
name: "Nivel de Alcohol (mg/L)"
lambda: |-
float voltage = id(sensor_voltage).state;
// Conversión inicial (según tu aproximación)
float mg_l_bruto = voltage * 0.08;
// Resta el offset medido en aire limpio
float mg_l_corr = mg_l_bruto - id(offset_mg_l);
if (mg_l_corr < 0.0) {
mg_l_corr = 0.0;
}
// Aplica el factor de calibración para obtener el valor real
mg_l_corr = mg_l_corr * id(factor_calibracion);
id(sensor_mg_l_global) = mg_l_corr;
return mg_l_corr;
accuracy_decimals: 3
unit_of_measurement: "mg/L"
Este ejemplo ilustra cómo se corrige la lectura para que cada constructor pueda ajustar los valores según sus propias mediciones.
2. Explicación de los Límites y Cómo Aconsejar Calibrar Según el Caso
Límites Legales en España
- Conductores habituales:
El límite en el aliento es de 0,25 mg/L. - Conductores noveles/profesionales:
El límite suele ser más bajo, alrededor de 0,15 mg/L.
Implementación en el Código
En tu código, puedes definir umbrales basados en el valor corregido (después de restar el offset):
text_sensor:
- platform: template
name: "Estado de Alcohol"
lambda: |-
float mg_l = id(sensor_mg_l_global);
if (mg_l < 0.05) {
return {"Bien"};
} else if (mg_l < 0.25) {
return {"Precaución"};
} else {
return {"Mejor quédate en casa"};
}
update_interval: 1s
- «Bien»:
Lecturas corregidas inferiores a 0,05 mg/L indican ausencia o niveles muy bajos de alcohol. - «Precaución»:
Valores entre 0,05 y 0,25 mg/L (para conductores habituales) sugieren que se debe tener cuidado. - «Mejor quédate en casa»:
Lecturas por encima de 0,25 mg/L indican que se ha superado el límite legal para conductores habituales.
Para conductores noveles, se recomendaría bajar este umbral (por ejemplo, a 0,15 mg/L).
Consejos para Cada Caso
- Calibración Individual:
- Cada sensor puede comportarse de forma diferente. Es fundamental que cada usuario realice su propia calibración, midiendo el offset en aire limpio y luego exponiendo el sensor a una concentración conocida.
- Se recomienda documentar el procedimiento y ajustar los parámetros
offset_mg_l
yfactor_calibracion
en el código según los resultados obtenidos.
- Ajuste de Umbrales:
- Conductores habituales: Mantén el umbral de 0,25 mg/L para la alerta “Mejor quédate en casa”.
- Conductores noveles/profesionales: Se aconseja ajustar el límite a 0,15–0,20 mg/L.
- Es importante aclarar en el tutorial que estos valores son orientativos y que el dispositivo es experimental. Recomienda a los usuarios que, si lo usan para fines prácticos, verifiquen y adapten los umbrales de acuerdo a su calibración.
- Importancia de Restar el Offset:
- Al restar el offset, te aseguras de que la medición en condiciones “limpias” sea 0. Esto hace que los umbrales sean más precisos y evita falsas alertas por la variabilidad inherente al sensor.
Conclusión
- Calibración:
- Precalienta el sensor.
- Mide en aire limpio para obtener el offset.
- Expon el sensor a una concentración conocida y toma lecturas.
- Calcula el factor de sensibilidad (diferencia en la lectura vs. concentración conocida).
- Actualiza el código para restar el offset y aplicar el factor de calibración.
- Límites:
- Para conductores habituales, usar un umbral de 0,25 mg/L (después de calibrar).
- Para conductores noveles o profesionales, considerar umbrales más bajos (alrededor de 0,15–0,20 mg/L).
- Asegúrate de que los usuarios sepan que deben ajustar estos valores basándose en sus mediciones reales, ya que cada sensor y entorno puede variar.
De esta forma, cada uno podrá realizar su propia calibración y adaptar los umbrales de advertencia según el uso que le dé y las normativas correspondientes. ¡Espero que esta explicación te sea útil!
Sígueme a YouTube
