INFORMACIÓN
El sensor de temperatura infrarrojo GY-906 MLX90614 es un dispositivo digital que permite medir la temperatura sin contacto físico, utilizando la radiación infrarroja emitida por los objetos. Este módulo integra el sensor MLX90614 de Melexis, que incluye una termopila para detectar la radiación IR y un procesador interno que convierte esta señal en valores de temperatura compensados, tanto del objeto como de la temperatura ambiente. Su funcionamiento se basa en el principio de que todos los cuerpos emiten radiación infrarroja proporcional a su temperatura; el sensor capta esta radiación y la traduce en un valor digital preciso. El GY-906 MLX90614 ofrece mediciones de -70 °C a 380 °C para la temperatura del objeto y de -40 °C a 170 °C para la temperatura ambiente, con una precisión típica de ±0.5 °C. Se comunica principalmente mediante I2C (y opcionalmente PWM), lo que facilita su integración con microcontroladores.
El sensor de temperatura infrarrojo GY-906 MLX90614 se utiliza en aplicaciones donde se requiere medir la temperatura sin contacto físico, lo que lo hace ideal para termómetros digitales, monitoreo médico, control de temperatura en maquinaria, sistemas industriales, hornos, electrodomésticos inteligentes, estaciones meteorológicas y proyectos de robótica. También es muy empleado en automatización e IoT, como en control de ventilación, detección de sobrecalentamiento y monitoreo en tiempo real de procesos. Gracias a su comunicación mediante I2C (y opcionalmente PWM), es compatible con una amplia gama de tarjetas de desarrollo, incluyendo Arduino (Uno, Nano, Mega), ESP8266, ESP32, Raspberry Pi, STM32 y Teensy, lo que permite integrarlo fácilmente en proyectos educativos, industriales y de investigación que requieran mediciones precisas de temperatura a distancia.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Tipo: Sensor de temperatura sin contacto.
- Módulo: GY-906.
- Sensor: MLX90614ESF-BAA.
- Voltaje de Operación: 3.3 – 5 VDC.
- Rango de temperatura ambiente de trabajo: – 40 ℃ hasta 170 ℃.
- Rango de temperatura de objeto: – 70 ℃ hasta 380 ℃.
- Precisión: ±0.5 °C.
- Angulo de visión: 90° (FOV).
- Distancia para temperatura de objeto: Min. 2 cm y Max. 3 cm.
- ADC incorporado de 17 bits.
- Salida de PWM: 10 bits.
- Protocolo de comunicación SMBUS (I2C).
- Dimensiones: 20 mm x 20 mm x 3 mm.
- Peso: 3 g.
*Nota: Este sensor no es para aplicaciones médicas o de salud, no utilizar para medir temperatura corporal, ya que tendrás lecturas no reales. Para medir temperatura corporal te recomendamos el sensor MLX90614ESF-DCI.
DOCUMENTACIÓN Y RECURSOS
- Datasheet
- Pinout
- Dimensiones
- Librerías:
TUTORIALES
- ¿Como programar el sensor MLX90614 con el IDE de Arduino y la placa ESP32? – Blog UNIT Electronics
- Termómetro de objetos MLX90614, la placa ESP32 y Display Oled de 128×64 0.96 – Blog UNIT Electronics
INFORMACIÓN ADICIONAL
¿Cómo se puede probar el Sensor de Temperatura infrarrojo GY-906 MLX90614?
Materiales Necesarios:
- Módulo GY-906 (MLX90614).
- Microcontrolador (por ejemplo Arduino UNO/Nano) o una Raspberry Pi.
- Cables dupont (4: VCC, GND, SDA, SCL).
- Fuente de alimentación adecuada.
- Termómetro de referencia o blanco térmico (hielo, superficie negra mate, etc.) para validación.
Conexiones con Arduino.
- VCC → 5V (o 3.3V si el módulo lo requiere; revisa tu placa).
- GND → GND.
- SDA → A4.
- SCL → A5.
Verifica con multímetro que hay la tensión correcta entre VCC y GND antes de probar comunicación. Si el módulo no responde, puede necesitar pull-ups explícitas a la tensión de referencia (4.7k a 3.3V/5V según nivel).
Verificación Inicial: Escaneo I2C.
Antes de leer temperaturas, confirma que el sensor está en el bus. En Arduino carga un sketch de escáner I2C como este:
#include <Wire.h>
void setup() {
Serial.begin(9600);
Wire.begin();
Serial.println("Escáner I2C");
}
void loop() {
byte error, address;
int devices = 0;
for (address = 1; address < 127; address++) {
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0) {
Serial.print("Dispositivo encontrado en 0x");
if (address < 16) Serial.print('0');
Serial.print(address, HEX);
Serial.println();
devices++;
} else if (error == 4) {
Serial.print("Error desconocido en 0x");
Serial.println(address, HEX);
}
}
if (devices == 0) Serial.println("No se encontraron dispositivos I2C.");
delay(5000);
}
El MLX90614 responde por defecto en la dirección 0x5A
Lectura de Temperaturas.
Instala la librería (por ejemplo Adafruit_MLX90614 desde el Library Manager de Arduino) y usa este ejemplo básico:
#include <Wire.h>
#include <Adafruit_MLX90614.h>
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
void setup() {
Serial.begin(9600);
if (!mlx.begin()) {
Serial.println("No se pudo inicializar MLX90614");
while (1);
}
Serial.println("Sensor MLX90614 listo");
}
void loop() {
Serial.print("Temperatura ambiente: ");
Serial.print(mlx.readAmbientTempC());
Serial.print(" *C\tObjeto: ");
Serial.print(mlx.readObjectTempC());
Serial.println(" *C");
delay(1000);
}
Puedes convertir a Fahrenheit si lo necesitas: °F = °C * 9/5 + 32.
Prueba de Validación / Calibración Simple.
- Hielo (0 °C): Señala con el sensor una superficie negra mate en contacto con hielo derretido (por ejemplo una cinta negra sobre un bloque frío), y espera a que se estabilice. La lectura de objeto debe estar cerca de 0 °C.
- Temperatura ambiente: Apunta a una superficie que esté a temperatura del entorno (evita reflejos).
- Fuente caliente conocida: Ejemplo, una taza con agua tibia; compara con un termómetro de referencia.
Consejo: las superficies reflectantes pueden falsear la lectura; usa cinta negra mate o pinta una pequeña área con pintura de alta emisividad. La emisividad por defecto es 1; para otras superficies se puede ajustar en EEPROM o aplicar correcciones de software.
Ten en cuenta la distancia y el ángulo de visión: el sensor promedia sobre su campo de visión (ej. 35° en versiones comunes), así que a mayor distancia mapea un área mayor. Asegúrate de que el objeto cubra suficientemente el “spot” para una medición precisa.

Fuente de alimentación para protoboard v2 MB-102 3.3V 5V
Tang Nano 9K FPGA Gowin GW1NR-9



























Valoraciones
No hay valoraciones aún.