Tabla de contenido:

Medición de temperatura con MCP9803 y Arduino Nano: 4 pasos
Medición de temperatura con MCP9803 y Arduino Nano: 4 pasos

Video: Medición de temperatura con MCP9803 y Arduino Nano: 4 pasos

Video: Medición de temperatura con MCP9803 y Arduino Nano: 4 pasos
Video: COMUNICAÇÃO SPI e I2C PIC18 2024, Noviembre
Anonim
Image
Image

MCP9803 es un sensor de temperatura de alta precisión de 2 cables. Están incorporados con registros programables por el usuario que facilitan las aplicaciones de detección de temperatura. Este sensor es adecuado para un sistema de monitoreo de temperatura multizona altamente sofisticado.

En este tutorial se ha ilustrado la interfaz del módulo sensor MCP9803 con arduino nano. Para leer los valores de temperatura, hemos utilizado arduino con un adaptador I2c. Este adaptador I2C hace que la conexión al módulo sensor sea fácil y más confiable.

Paso 1: Hardware necesario:

Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido
Hardware requerido

Los materiales que necesitamos para lograr nuestro objetivo incluyen los siguientes componentes de hardware:

1. MCP9803

2. Arduino Nano

3. Cable I2C

4. Escudo I2C para arduino nano

Paso 2: Conexión de hardware:

Conexión de hardware
Conexión de hardware
Conexión de hardware
Conexión de hardware

La sección de conexión de hardware básicamente explica las conexiones de cableado necesarias entre el sensor y el arduino nano. Asegurar las conexiones correctas es la necesidad básica al trabajar en cualquier sistema para obtener la salida deseada. Entonces, las conexiones requeridas son las siguientes:

El MCP9803 funcionará sobre I2C. Aquí está el diagrama de cableado de ejemplo, que demuestra cómo cablear cada interfaz del sensor.

Fuera de la caja, la placa está configurada para una interfaz I2C, por lo que recomendamos usar esta conexión si, por lo demás, es agnóstico.

¡Todo lo que necesitas son cuatro cables! Solo se requieren cuatro conexiones Vcc, Gnd, SCL y pines SDA y estos se conectan con la ayuda del cable I2C.

Estas conexiones se muestran en las imágenes de arriba.

Paso 3: Código para la medición de temperatura:

Código para medición de temperatura
Código para medición de temperatura

Comencemos ahora con el código arduino.

Mientras usamos el módulo de sensor con el arduino, incluimos la biblioteca Wire.h. La biblioteca "Wire" contiene las funciones que facilitan la comunicación i2c entre el sensor y la placa arduino.

El código arduino completo se proporciona a continuación para la conveniencia del usuario:

#incluir

// La dirección I2C del MCP9803 es 0x48 (72)

#define Addr 0x48

configuración vacía ()

{

// Inicializar la comunicación I2C como MASTER

Wire.begin ();

// Inicializar la comunicación en serie, configurar la velocidad en baudios = 9600

Serial.begin (9600);

// Iniciar transmisión I2C

Wire.beginTransmission (Addr);

// Seleccionar registro de configuración

Wire.write (0x01);

// Modo de conversión continua, encendido por defecto

Wire.write (0x60);

// Detener la transmisión I2C

Wire.endTransmission ();

retraso (300);

}

bucle vacío ()

{

datos int sin firmar [2];

// Inicia la comunicación I2C

Wire.beginTransmission (Addr);

// Seleccionar registro de datos

Wire.write (0x00);

// Detener la transmisión I2C

Wire.endTransmission ();

// Solicita 2 bytes de datos

Wire.requestFrom (Dirección, 2);

// Leer 2 bytes de datos

// temp msb, temp lsb

si (Cable disponible () == 2)

{

datos [0] = Wire.read ();

datos [1] = Wire.read ();

}

// Convierte los datos a 12 bits

int temp = ((datos [0] * 256) + datos [1]) / 16.0;

si (temp> 2047)

{

temp - = 4096;

}

float cTemp = temp * 0.0625;

float fTemp = cTemp * 1.8 + 32;

// Salida de datos al monitor en serie

Serial.print ("Temperatura en grados Celsius:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Temperatura en Fahrenheit:");

Serial.print (fTemp);

Serial.println ("F");

retraso (500);

}

En la biblioteca de cables, Wire.write () y Wire.read () se utilizan para escribir los comandos y leer la salida del sensor.

Serial.print () y Serial.println () se utilizan para mostrar la salida del sensor en el monitor en serie del IDE de Arduino.

La salida del sensor se muestra en la imagen de arriba.

Paso 4: Aplicaciones:

Aplicaciones
Aplicaciones

MCP9803 se puede emplear en una amplia gama de dispositivos que incluyen computadoras personales y periféricos, unidades de disco duro, varios sistemas de entretenimiento, sistemas de oficina y sistemas de comunicación de datos. Este sensor se puede incorporar en varios sistemas sofisticados.

Recomendado: