Si deseas medir la temperatura ambiente usando un PT100, primeramente necesitas un módulo de interfaz adecuado, como un amplificador de instrumentación (por ejemplo, el Módulo Adafruit MAX31865 RTD PT100).
Una indicación básica de cómo puede distribuirse este esquema usando Arduino puede ser de la siguiente manera:
Conecta la patilla VCC del módulo MAX31865 a la patilla de 5V en tu Arduino.
Conecta la patilla GND del módulo MAX31865 a la patilla GND en tu Arduino.
Conecta la patilla SDO del módulo MAX31865 a la patilla MISO en tu Arduino.
Conecta la patilla SDI del módulo MAX31865 a la patilla MOSI en tu Arduino.
Conecta la patilla CLK del módulo MAX31865 a la patilla SCK en tu Arduino.
Conecta la patilla CS del módulo MAX31865 a un pin digital en tu Arduino, por ejemplo el pin 10.
Ahora, en cuanto al código en C++, puedes utilizar la librería de Adafruit para el MAX31865. Un ejemplo de cómo puede verse tu código es el siguiente:
C
#include <Adafruit_MAX31865.h>
// Creamos una instancia del adafruit MAX31865 en el pin 10
Adafruit_MAX31865 sensor = Adafruit_MAX31865(10);
#define RREF 430.0 // Valor de la resistencia de referencia. Comprobar en la documentación del módulo.
void setup() {
Serial.begin(9600);
sensor.begin(MAX31865_2WIRE); // Configuramos el sensor en modo 2 hilos
}
void loop() {
uint16_t rtd = sensor.readRTD();
// Calculamos la temperatura a través del valor de resistencia en función de la temperatura.
// La función .temperature(RNOMINAL, RREF) te da la temperatura en C
// RNOMINAL es tu resistencia a 0ºC para tu PT100, debería ser 100 ohmios.
float temperature = sensor.temperature(100, RREF);
Serial.print("Temperatura: ");
Serial.println(temperature);
delay(1000);
}
Este código inicializa la comunicación a través del protocolo SPI con el módulo MAX31865, lee el valor de resistencia del RTD y luego calcula la temperatura correspondiente utilizando la ecuación Callendar-Van Dusen.
Por favor, no olvides que este es solo un ejemplo muy básico. Deberás verificar en la hoja de datos de tu módulo y tu exacto PT100 para ajustar los valores necesarios. Además, este código no maneja ninguna forma de tratamiento de errores, puedes mejorar esto para hacerlo más robusto a fallos.
valent
copilot