¿Cómo calibrar el sensor de temperatura IR MLX90616?

1

He comprado algunos sensores de temperatura IR Melexis mlx90616. La hoja de datos indica que se requiere una calibración "por el cliente". Al contactar a mi comprador, obtuve la respuesta: "El proveedor se comunicó con nosotros diciendo que tienen recursos limitados disponibles para soporte técnico con respecto al MLX90616".

Resulta que Melexis no está interesado en ofrecer asistencia con respecto al procedimiento de calibración para el mlx90616 para aquellos que no compran un número elevado de unidades.

¿Alguien sabe cómo calibrar el mlx90616, o al menos la secuencia de cómo actualizar los registros de coeficientes de calibración de "solo lectura"? Al tener la información de cómo hacerlo, sería una tarea fácil escribir el software necesario.

Información de fondo:

Las lecturas de la temperatura del objeto devuelto (I2C / SMBus) cambian muy lentamente y siempre están cerca de la temperatura ambiente del chip. La lectura de los canales de IR sin procesar muestra un cambio rápido cuando se apunta a objetos con diferentes temperaturas.

Al leer el registro de coeficientes de calibración de eeprom de escritura 0x2F se devuelve 0x0020. Los otros registros de calibración de solo lectura de eeprom (por ejemplo, 0x26 a 0x2D) devuelven 0x00, lo que indica que se necesita una calibración. Los registros equivalentes en la unidad comparable mlx90614, que se calibra en fábrica, son diferentes de cero.

Sin embargo, el procedimiento de cómo calibrar el mlx90616 parece difícil de encontrar. No hay información en la hoja de datos sobre cómo actualizar los registros de calibración, ni sobre cómo determinar los valores.

    
pregunta SteinarK

2 respuestas

1

Sencillamente, debe construir el sistema prototipo (o completo) alrededor del MLX90616 que incluya la interfaz y el procesamiento apropiados (probablemente microcontrolador), luego debe tomar medidas contra objetos de temperatura y emisividad conocidas. Con esos datos, puede desarrollar coeficientes / constantes para usar en la función que convierte el valor de salida digital MLX90616 en un valor de temperatura.

    
respondido por el user2943160
1

Mi solución parece ser:

Dado que los datos sin procesar de los canales IR son Vir, la temperatura del objeto es Para, temperatura ambiente. es Ta, emisividad es emm y el elemento de calibración desconocido es alfa, la ecuación a tener en cuenta es:

Vir = alpha * emm * (To ^ 4 - Ta ^ 4) (eq. 1)

Usé uno de mis mlx90614 para medir la temperatura del objeto (To) en el intento de estimar alfa en la ecuación (1). Sea alfa una función de Ta y Vir-VirComp, además de compensar la ganancia en el mlx90616 (VirComp es el valor del registro de compensación de IR leído en el mlx90616). Tanto el mlx90614 como el mlx90616 estaban midiendo el mismo objeto y las lecturas de los registros en los mlx'es se realizaron lo más rápido posible utilizando I2C / SMBus a 100 kHz conectado a un RPi2 y con un tiempo de muestreo de 200 ms. Se utilizó el ajuste por mínimos cuadrados para determinar los coeficientes en alfa (b = A \ x en la sintaxis matlab para aquellos familiarizados con matlab).

Probó el concepto solo en un pequeño rango de temperaturas, pero parece que esta podría ser una forma de usar el mlx90616 para aquellos que no reciben apoyo de Melexis. Al menos ya no es un tapón de show ...

    
respondido por el SteinarK

Lea otras preguntas en las etiquetas