Paso 4: Código de Arduino para la calibración y lectura de temperatura
El Arduino es el pan y la mantequilla de este dispositivo todo en que lo hace la mayor parte de los trabajos relacionados con este proyecto. Programación del Arduino puede hacerse fácilmente por pedir prestado parte de código de Adafruit en GitHub (https://github.com/adafruit/Adafruit-MLX90614-Library).
Este código hace varias cosas. En primer lugar, establece la relación master/slave es necesaria para la comunicación I2C. En segundo lugar, crea una clase "mlx" que hace acceder al objeto del esclavo, en este caso el MLX90614, increíblemente fácil. En tercer lugar, es convenientes definiciones que vienen en prácticas al hacer la programación necesaria para su proyecto.
Este código es una librería creada por Adafruit. Para usarlo, descarga un archivo .zip que contiene archivos .ino, .h y .cpp. Transferencia de esta carpeta .zip en tu biblioteca Arduino haciendo lo siguiente:
- Abra el explorador de windows (o finder si utiliza un Mac).
- Busque la carpeta archivos de programa en la unidad C:
- En la carpeta archivos de programa, busque la carpeta de Arduino
- En la carpeta de Arduino, busque la carpeta de bibliotecas.
- Pegar el archivo .zip en la carpeta de bibliotecas.
Ahora, puede abrir el IDE de Arduino y acceso el código de ejemplo asociado a esta biblioteca yendo a archivo -> ejemplos -> bibliotecas -> Adafruit MLX90614.
Al abrir este ejemplo de código, hay muchas cosas que destacar. En primer lugar, el código de ejemplo incluye dos bibliotecas: Wire.h y AdafruitMLX90614.h. La primera biblioteca permite la comunicación I2C mientras que la segunda ayuda a establecer el MLX90614 como un objeto.
Con tu Arduino conectado a su circuito, puede realizar una prueba rápida y ver exactamente lo que el código produce. Debería notar una temperatura relativamente exacta si abres el monitor serie. Si usted siente que su circuito está produciendo una incorrecta lectura de la temperatura, ir en el archivo .cpp asociado con esta biblioteca. En este documento verás el método readTemp. El código de este método nos permite calibrar la salida asociada a la lectura de la temperatura. Con base en el resultado que estamos viendo, modificar este código según sea necesario para asegurar la salida apropiada.
Se recomienda agregar un retraso a la salida de Arduino de aproximadamente 1s. Esto sólo permite que los datos que se insertará en una tarifa que es usable (de lo contrario, hay una abrumadora cantidad de datos generados).
Ahora tienes un termómetro de trabajo! Porque no hay ningún registro mecanismo o incluso pantalla, tenemos que añadir más funcionalidad.