O que foi usado?
Sensor MLX90614;
Arduino UNO;
Display LCD 16x2 com módulo I2C;
Protoboard (para facilitar a conexão do display e sensor ao arduino);
Jumpers diversos;
Ligação:
O que faz?
Lê a temperatura ambiente e a temperatura do objeto, pessoa, etc que esteja na frete do sensor, a cerca de 2 ou 3cm de distância, e mostra no display.
Datasheet do sensor
Biblioteca do sensor
Biblioteca do display
Código (adaptado do código que acompanha a biblioteca do sensor)
// adaptado do exemplo da bibliteca: // https://github.com/adafruit/Adafruit-MLX90614-Library byte grau[8] = { 0b00110, // byte para criar o caracter grau 0b01001, 0b01001, 0b00110, 0b00000, 0b00000, 0b00000, 0b00000 }; // bibliotecas #include <Wire.h> #include <Adafruit_MLX90614.h> #include <LiquidCrystal_I2C.h> // instanciando objetos lcd e mlx LiquidCrystal_I2C lcd(0x27,16,2); Adafruit_MLX90614 mlx = Adafruit_MLX90614(); void setup() { mlx.begin(); // inicialieza sens. de temp lcd.init(); // inicializa displau lcd.createChar(1, grau); // cria caracter ( º ) lcd.backlight(); lcd.print(" Teste MLX90614 "); delay(1000); lcd.clear(); } void loop() { // escreve temp ambiente lcd.setCursor(0,0); lcd.print("Amb.: "); lcd.print(mlx.readAmbientTempC()); lcd.print (" "); lcd.write(1); lcd.print ("C"); // escreve temp do objeto lcd.setCursor(0,1); lcd.print("Obj.: "); lcd.print(mlx.readObjectTempC()); lcd.print (" "); lcd.write(1); lcd.print ("C"); delay(500); }