Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Verifica y calibra tu sensor de humedad para mediciones precisas

¿Qué tan preciso es tu sensor de humedad? Descúbrelo con este proyecto.

Los sensores de humedad son comunes, relativamente baratos y vienen en muchas variedades. A menudo consultamos la hoja de datos, los usamos con una interfaz y (mientras los valores "parezcan razonables") aceptamos los resultados.

En este proyecto demostramos cómo ir un paso más allá y verificar la exactitud de un sensor de humedad. También ilustramos un método general de calibración de sensores y lo aplicamos para calibrar resultados y mejorar la precisión de mediciones de humedad.

Montaje de prueba usado en el proyecto (izq. a der., placa microcontrolador Quark D2000, interfaz sensor, sensor HIH5030 en micro-entorno).

Fundamentos del proyecto

Para verificar la exactitud de un sensor, los valores obtenidos se comparan a un estándar de referencia. Para verificar un sensor de humedad, usamos el método de "sal saturada" para producir los estándares. En términos simples, ciertas sales (compuestos iónicos como sal de mesa o cloruro de potasio), disueltas en solución acuosa, producen una atmósfera de humedad conocida (ver PDF referencia).

Estas propiedades químicas crean micro-entornos de porcentajes de humedad relativa (HR) conocidos (estándares de referencia), y los sensores se leen dentro del micro-entorno. Específicamente, haremos una solución en un frasco sellado para preservar la atmósfera y colocaremos el sensor conectado en el frasco sellado. Posteriormente, el sensor se lee repetidamente y se registran los valores.

Repitiendo el procedimiento con varias sales distintas, cada una produciendo diferente humedad relativa, podemos desarrollar un perfil del sensor bajo prueba. Como sabemos la humedad relativa de cada micro-entorno, podemos evaluar las desviaciones de nuestras lecturas respecto a esos valores conocidos y así evaluar la exactitud del sensor.

Si las desviaciones son sustanciales pero no insalvables, podemos aplicar procedimientos de calibración matemática en software para aumentar la precisión de las mediciones.

Una palabra sobre seguridad

Antes de continuar, es esencial que manejes los químicos de este proyecto responsablemente.

Sales usadas

En general, cuantas más atmósferas HR puedas producir para estándares de referencia, mejor será la caracterización del sensor. Sin embargo, siempre hay límite práctico de recursos. En este proyecto se usaron cuatro estándares de referencia y las sales se eligieron para cubrir rango de valores HR posibles, considerando también seguridad, disponibilidad y coste.

Las sales siguientes fueron elegidas. En caso de cloruro sódico (sal de mesa), se obtuvo sal kosher pura barata en supermercado local. Si vas por esa ruta, evita sal de mesa con aditivos como yodo o antiapelmazantes.

Sales usadas en el proyecto
Sal % HR (a 25°C) Fuente Hoja de seguridad
Cloruro de Litio 11,30 Home Science Tools SDS para LiCl
Cloruro de Magnesio 32,78 Home Science Tools SDS para MgCl
Cloruro de Sodio 75,29 Varios (ver texto) SDS para NaCl
Cloruro de Potasio 84,34 Home Science Tools SDS para KCl

Crear un micro-entorno

Tenemos estándares para casi todo y hay incluso uno para crear HR estable desde solución acuosa (ver ASTM E104 – 02(2012)). Aunque mi banco, y probablemente el tuyo, no es un laboratorio oficial, vale la pena seguir las especificaciones del estándar lo más cerca posible.

Nota también que los resultados presentados, aunque recopilados con cuidado, no deben interpretarse como declaración de calidad general sobre la exactitud de ninguna marca de sensor. Solo se probaron pocos sensores y estos tenían diferentes edades e historiales de uso.

Para cada sal, se creó mezcla pastosa añadiendo agua destilada a consistencia similar a arena muy mojada. Cuatro o cinco cucharadas de químico y una de agua destilada pueden probarse, pero puede requerir experimentación.

La mezcla se hizo en frasco pequeño con cierre hermético. Vidrio o plástico funcionan bien, mientras mantengan la atmósfera dentro. Se puede hacer pequeño agujero en la tapa para pasar cables de conexión a la interfaz del sensor y al microcontrolador. El sensor conectado se posiciona aprox. 1,25–2,5 cm sobre la mezcla. Cuida que el sensor nunca contacte directamente la solución o se dañará. Para sujetar la conexión y sellar el agujero de la tapa, se puede usar masilla de contacto extraíble.

Es importante permitir tiempo suficiente para equilibración antes de tomar la lectura final. Probé esto empíricamente, tomando lecturas cada minuto hasta seis horas en casos seleccionados. En mi experiencia, fue más de lo necesario y me decidí por 90–120 minutos de equilibración por sensor y sal. Luego se usó promedio de las últimas cinco lecturas como valor final. En todos los casos, los cinco valores mostraron muy poca o ninguna diferencia.

Adicionalmente, todas las lecturas se tomaron a unos 25 °C (± 1°) temperatura ambiente, y el valor HR usado para cada estándar fue el listado para 25 °C (ver PDF para valores).

Sensor HIH5030 en placa portadora dentro de micro-entorno con cloruro sódico.

Hardware

Microcontrolador

En este proyecto, interfazamos los sensores usando microcontrolador Quark D2000. El D2000 es placa 3V con interfaces I2C y analógico-digital.

Ten en cuenta que casi cualquier otro microcontrolador con interfaces apropiadas puede usarse.

Interfaces de sensores

Sensores probados en el proyecto; A) HIH8121, B) HIH5030, C) DHT-22 (AM2302), D) HIH6030 (en placa portadora).

Se probaron cuatro tipos de sensores de humedad: DHT-22 (dos usados), HIH5030, HIH6030 e HIH8121. Los esquemas abajo ilustran las interfaces simples usadas para cada tipo, y consultar las hojas de datos enlazadas dará info de fondo para los circuitos.

Interfaz DHT-22 a D2000.

DHT-22 BOM: U1, sensor DHT-22; R1, resistencia 4,7kΩ; C1, condensador 0,1 µF.

Interfaz HIH5030 a D2000.

HIH5030 BOM: U1, sensor HIH3050; U2, op-amp MCP601P; C1, condensador 1,0 µF; C2, 0,1 µF.

Interfaz HIH6030 a D2000.

HIH6030 BOM: U1, sensor HIH6030; R1 y R2, resistencia 2,2 kΩ; C1, 0,22 µF; C2, 0,1 µF.

Interfaz HIH8121 a D2000.

HIH8121 BOM: U1, sensor HIH8121; R1 y R2, resistencia 2,2 kΩ; C1, 0,22 µF.

Software de sensores

Todos los programas para recopilar datos de sensores están en C y pueden descargarse clicando botón "Humidity Sensor Project Code". Cada uno está comentado y es directo. Para cada sensor, el programa simplemente lee el sensor cada minuto y envía el valor a monitor serie. Así, deberían ser fáciles de adaptar a tu aplicación.

Capturas de salida de DHT22.c (izq.) e HIH5030.c (der.).

Procedimiento de evaluación de sensores

La tabla abajo contiene datos de evaluación de sensores en cada uno de los cuatro micro-entornos.

% HR para sensores de prueba (OBS = valor observado, ERR = error como diferencia del estándar, RMSE = error cuadrático medio)
DHT #1 DHT #2 HIH5030 HIH6030 HIH8121
HR Referencia OBS ERR OBS ERR OBS ERR OBS ERR OBS ERR
11,30 (LiCl) 12,56 1,26 16,29 4,99 13,02 1,72 20,79 9,49 12,31 1,01
32,78 (MgCl) 32,36 -0,42 33,79 1,01 33,46 0,68 40,77 7,99 32,43 -0,35
75,29 (NaCl) 73,04 -2,25 74,50 -0,79 77,74 2,45 83,83 8,54 76,63 1,34
84,34 (KCl) 82,30 -2,04 82,15 -2,19 85,84 1,50 93,43 9,09 85,01 0,67
RMSE 1,657 2,799 1,708 8,796 0,920

Una vez recopilados datos del rendimiento del sensor en entornos estables de HR conocida, puedes evaluar numéricamente la exactitud del sensor.

Nota que en la tabla calculamos error para cada sensor en cada estándar HR. No podemos simplemente promediar esos valores para evaluar el sensor porque algunos son positivos y otros negativos. Si promediáramos, el resultado minimizaría el error promedio al cancelarse valores positivos y negativos.

En su lugar, calculamos error cuadrático medio (RMSE) para caracterizar la exactitud. La fórmula del RMSE:

Donde O es el valor observado del sensor e I el valor ideal (estándar de referencia). Para calcular RMSE, elevamos al cuadrado cada error (desviación del estándar), calculamos la media aritmética de esos valores y finalmente tomamos la raíz cuadrada de la media.

Una vez caracterizada la exactitud, puedes usar el RMSE para decidir si calibrar el sensor. En algunos casos, el RMSE es pequeño y totalmente aceptable para tu aplicación y puedes decidir razonablemente que no se requiere calibración.

Por ejemplo, los resultados del HIH8121 son impresionantes. El RMSE es menor al 1 % y todos los puntos muestrales tienen error menor al 2 %.

Por otro lado, en algunos casos puedes encontrar que la respuesta del sensor es tan pobre e irregular que simplemente decides que se necesita otro sensor.

La decisión de calibrar debe considerar siempre el grado de exactitud necesario para la tarea. No obstante, podemos mejorar la exactitud de lecturas por calibración para todos los sensores de la tabla.

Procedimiento de calibración de sensores

Para calibrar un sensor, primero determinamos matemáticamente la función que relaciona valores ideales con observados. Puede usarse regresión lineal para determinar esa función.

La palabra "lineal" en el nombre no significa función lineal. Se refiere a combinación lineal de variables. La función resultante puede ser lineal o curvilínea. Las tres funciones polinómicas abajo representan regresión lineal (ignoramos caso grado 0, no útil aquí).

  1. y = ax + b (primer grado, lineal)
  2. y = ax2 + bx + c (segundo grado, cuadrática)
  3. y = ax3 + bx2 + cx + d (tercer grado, cúbica)

En el proyecto actual, calculamos valores de sensor usando cuatro estándares de referencia (n = 4). Así, un polinomio de tercer grado es el de mayor grado posible. Siempre es el caso que el mayor grado posible es n – 1, aquí 3 (4 – 1).

Procedimientos de mínimos cuadrados se usan ordinariamente para regresión lineal. En este procedimiento, se ajusta una línea de modo que la suma de distancias de cada dato a la línea sea mínima. Hay muchos programas que usan mínimos cuadrados para regresión lineal. Incluso puedes usar Excel (clic aquí para más info).

También cabe notar que no tenemos que usar regresión lineal. Podríamos usar regresión no lineal. Ejemplos resultan en función potencia o Fourier. La regresión lineal, sin embargo, se adapta bien a nuestros datos y, además, la corrección por software (calibración) se implementa fácilmente. De hecho, en este proyecto no creo que ganaras mucho usando regresión no lineal.

Elegir el polinomio

En teoría, queremos el polinomio que mejor se ajuste a los datos. Es decir, el que produzca el menor coeficiente de determinación, denotado r2 (o R2, "R cuadrado"). Cuanto más cerca de 1 esté r2, mejor el ajuste. Con estimación mínimos cuadrados, siempre es el caso que mayor grado de polinomio, mejor ajuste.

No tienes que usar automáticamente el mayor grado posible. Como la calibración ocurre en software, puede haber casos donde un polinomio de menor grado represente ventaja de velocidad y/o memoria, especialmente si la ganancia de exactitud usando mayor grado es muy pequeña.

Abajo demostramos procedimientos de calibración para sensor HIH6030 usando polinomios de diferente grado, ilustrando el procedimiento general aplicable a cualquier grado que elijas.

Usando datos de la tabla anterior, primero realizamos regresión de mínimos cuadrados para determinar coeficientes de cada polinomio. Esos valores vienen del paquete software de regresión usado. Resultados abajo, incluyendo valores r2.

  1. Lineal: y = ax + b; a = 1,0022287, b = -8,9105659, r2 = 0,9996498
  2. Cuadrática: y = ax2 + bx + c; a = -0,0012638, b = 1,1484601, c = -12,0009745, r2 = 0,9999944
  3. Cúbica: y = ax3 + bx2 + cx + d; a = 0,0000076, b = -2,4906103, c = 1,2061971, d = -12,7681425, r2 = 0,9999999

Los valores observados pueden modificarse ahora usando las funciones calculadas. Es decir, las lecturas del sensor pueden calibrarse como ilustra la tabla abajo (OBS, Corregido y ERR redondeados a dos decimales).

Valores observados y calibrados HIH6030 usando polinomios
RAW 1er Grado 2do Grado 3er Grado
Ref HR OBS ERR Corregido ERR Corregido ERR Corregido ERR
11,30 20,79 9,49 11,93 0,63 11,36 0,06 11,30 0,00
32,78 40,77 7,99 31,95 -0,83 32,83 0,05 32,78 0,00
75,29 83,83 8,54 75,11 -0,18 75,85 0,55 75,29 0,00
84,34 93,43 9,09 84,73 0,39 84,83 0,49 84,34 0,00
RMSE 8,795736 0,562146 0,371478 0,00212

Se ve que los tres polinomios produjeron disminución significativa del RMSE frente a medidas observadas, y por eso calibras. El gráfico abajo ilustra la mejora con polinomio 1er grado. Nota cómo los datos calibrados (corregidos) yacen cerca de la diagonal ideal.

Leer más información….

Cómo verificar y calibrar un sensor de humedad

Proyecto / Post actual también puede encontrarse usando:


Proceso de manufactura

  1. Mantenimiento Diferido: Definición, Costos y Estrategias para Controlar Acumulación de Tareas
  2. Raspberry Pi y HDC2010: Guía completa de configuración I2C para sensor de temperatura y humedad
  3. Construya un sensor de temperatura remoto con Raspberry Pi y Python – Guía paso a paso
  4. Construya una estación meteorológica con Raspberry Pi que envíe datos diarios por email
  5. Construya un Sistema de Monitorización de Temperatura y Luz Multi‑Sensor con Raspberry Pi y DS18B20
  6. Control de sensores y actuadores con Raspberry Pi: acelerómetro, servo y streaming de datos
  7. Construye un sistema aeropónico automatizado con Raspberry Pi y sensor de humedad
  8. Monitorización Precisa de Temperatura y Humedad con SHT15 en Windows 10 IoT Core
  9. Guía Paso a Paso para Inspeccionar y Diagnosticar Problemas en Motores DC
  10. Sensores de Humedad: Funcionamiento y Aplicaciones Clave
  11. Sensor DHT11: Funcionamiento y Aplicaciones Principales