Como aficionado que no tiene acceso a equipos de laboratorio, realmente me parece imposible poder calibrar el termistor que tengo.
Por supuesto, hay sensores de temperatura calibrados como DS18B20, pero los termistores especialmente en MCU lentas como Aruino UNO (en comparación con las MCU nuevas) son más rápidos.
¿Qué opciones tenemos para calibrar un termistor sin usar equipo de laboratorio?
thermistor
calibration
ElectronSurf
fuente
fuente
Respuestas:
La calibración de un termistor (o sobre todo cualquier sensor) es un proceso de dos pasos:
El primer paso es el más difícil, y desafortunadamente con el que tengo menos experiencia. Entonces solo lo describiré en términos muy generales. El segundo paso es principalmente matemática.
Medición de los datos de calibración.
Debe llenar una tabla con pares (T, R), es decir, con valores de resistencia medidos a temperaturas conocidas. Sus datos de calibración deben cubrir todo el rango de temperaturas que necesitará en el uso real. Los puntos de datos fuera de este rango no son muy útiles. De lo contrario, cuantos más puntos de datos tenga, mejor.
Para medir la resistencia del termistor, le aconsejo que no use un ohmímetro. Utilice en su lugar la misma configuración que utilizará para las mediciones reales posteriores a la calibración. De esta forma, se calibrarán los errores sistemáticos en la medición de resistencia (como los errores de compensación y ganancia de ADC).
Para conocer la temperatura, tiene dos opciones: usar puntos de temperatura fijos (como, por ejemplo, agua hirviendo o derretir hielo) o usar un termómetro ya calibrado. Los puntos fijos son el estándar de oro de la calibración de temperatura, pero es difícil hacerlos bien, y es probable que no encuentre muchos de ellos dentro del rango de temperaturas que le interesan.
El uso de un termómetro en buen estado probablemente será más fácil, pero todavía hay algunas advertencias:
Poner ambos juntos, dentro de un recinto con alta inercia térmica (una nevera o un horno) puede ayudar aquí.
Obviamente, la precisión del termómetro de referencia es un factor muy importante aquí. Debería ser significativamente más preciso que los requisitos que tiene sobre su precisión de medición final.
Ajustar una ley de calibración
Ahora necesita encontrar una función matemática que se ajuste a sus datos. Esto se llama un "ajuste empírico". En principio, cualquier ley puede hacerlo siempre que se encuentre lo suficientemente cerca de los puntos de datos. Los polinomios son los favoritos aquí, ya que el ajuste siempre converge (porque la función es lineal en relación con sus coeficientes) y su evaluación es barata, incluso en un microcontrolador de baja potencia. Como caso especial, una regresión lineal puede ser la ley más simple que puedes probar.
Sin embargo, a menos que esté interesado en un rango de temperaturas muy estrecho, la respuesta de un termistor NTC es altamente no lineal y no muy susceptible a ajustes polinómicos de bajo grado. Sin embargo, un cambio estratégico de variables puede hacer que su ley sea casi lineal y muy fácil de adaptar. Para esto, nos divertiremos con algo de física básica ...
La conducción eléctrica en un termistor NTC es un proceso activado térmicamente. La conductancia puede ser modelada por una ecuación de Arrhenius :
G = G ∞ exp (−E a / (k B T))
donde G ∞ se llama el "factor pre-exponencial", E a es la energía de activación , k B es la constante de Boltzmann y T es la temperatura absoluta.
Esto se puede reorganizar como una ley lineal:
1 / T = A + B log (R)
donde B = k B / E a ; A = B log (G ∞ ); y log () es el logaritmo natural.
Si toma sus datos de calibración y traza 1 / T en función de log (R) (que es básicamente un diagrama de Arrhenius con los ejes intercambiados), notará que es casi, pero no del todo, una línea recta. La desviación de la linealidad proviene principalmente del hecho de que el factor pre-exponencial depende ligeramente de la temperatura. Sin embargo, la curva es lo suficientemente suave como para ser ajustada muy fácilmente por un polinomio de bajo grado:
1 / T = c 0 + c 1 log (R) + c 2 log (R) 2 + c 3 log (R) 3 + ...
Si el rango de temperaturas que le interesa es lo suficientemente corto, una aproximación lineal puede ser lo suficientemente buena para usted. Entonces estaría utilizando el llamado "modelo β", donde el coeficiente β es 1 / B. Si usa un polinomio de tercer grado, puede notar que el coeficiente c 2 puede ser descuidado. Si lo descuidas, entonces tienes la famosa ecuación de Steinhart-Hart .
En general, cuanto mayor sea el grado del polinomio, mejor debe ajustarse a los datos. Pero si el grado es demasiado alto, terminarás sobreajustando . En cualquier caso, el número de parámetros libres en el ajuste nunca debe exceder el número de puntos de datos. Si estos números son iguales, entonces la ley se ajustará exactamente a los datos , pero no tiene forma de evaluar la bondad del ajuste. Tenga en cuenta que esta calculadora de termistor (vinculada a un comentario) usa solo tres puntos de datos para proporcionar tres coeficientes. Esto es bueno para una calibración aproximada preliminar, pero no confiaría en ello si necesitara precisión.
No discutiré aquí cómo realizar el ajuste. Los paquetes de software para hacer ajustes de datos arbitrarios abundan.
fuente
Leer Thermistor es un poco complicado. El método de calibración anterior, no genera rendimiento para una detección de error, crearía dos puntos de una curva logarítmica (la curva de respuesta del termistor.
Esto significa que, por cada 0.1 ° C de cambio de temperatura, el cambio correspondiente en la resistencia variará, dependiendo del rango de temperatura.
Al principio, puede ver un error de aproximadamente 2 a 5 ° C de la temperatura real, pero no hay error, solo una mala lectura.
No publicas ningún detalle sobre cómo estás leyendo este termistor, puede ser Arduino? Debo decir que algunas bibliotecas no funcionan en absoluto, por lo que debe crear una función especial para hacerlo.
Publique una explicación detallada sobre cómo caracterizar y leer un termistor. La publicación está en español, pero en las etiquetas de código, toda la explicación en inglés simple.
Una vez que haya obtenido sus coeficientes ABC, su error será de aproximadamente 0.1 ° C de otra medición, incluso en un tramo de cable LAN de 6 m de largo.
Esta prueba leyó al mismo tiempo los 4 termistores. Puede ver una pequeña diferencia en la temperatura de 2 de ellos que sostuve brevemente en mis dedos.
fuente
Llena una taza con cubitos de hielo y vierte agua para llenar hasta el borde. Dale un revuelo ocasional. Cuando el hielo comience a derretirse, estará a 0 ° C. Pegue el sensor en el agua y tome una lectura.
Si su sensor puede tolerarlo, colóquelo en un hervidor de agua hirviendo. A nivel del mar que le dará una lectura de referencia de 100 ° C.
Si necesita contraer el calor de su sensor para impermeabilizarlo, tendrá que esperar un tiempo para que la lectura se estabilice.
simular este circuito : esquema creado con CircuitLab
Figura 1. Curva de calibración lineal simple.
Como se señaló en los comentarios, si está utilizando un termistor, deberá verificar la linealidad de la hoja de datos. Si este enfoque simple no es lo suficientemente bueno, tendrá que usar un cálculo polinómico o una tabla de búsqueda en un microcontrolador.
fuente
Los termómetros lineales tienen un error de ganancia y compensación.
Los termistores se calibran a 25 ° C con una curva de sensibilidad específica con 2 variables.
para calibrarlo solo necesitas 2 medidas
fuente