Actualmente estoy usando el convertidor de termopar a digital compensado en frío MAX31855 en un proyecto ( hoja de datos ). Usando SPI, soy capaz de leer la retroalimentación de la temperatura. Desde el punto de vista de la electrónica, todo parece funcionar bien, incluso puedo respirar en el termopar y la temperatura subirá. Sin embargo, el problema que he notado es que las lecturas de temperatura no son muy precisas.
U1eselMAX31855.
X2esunencabezadohembradedospines
Utilizando este termopar tipo K ( link )
Este chip se comunica con un arduino a través de SPI.
Mi código relevante:
float SensorMAX31855::read(void)
{
uint16_t temp;
digitalWrite(PIN_SPI_CHAN0_MAIN, LOW);
temp = SPI.transfer16(0x00);
Serial.println("First two bytes:");
Serial.println(temp);
digitalWrite(PIN_SPI_CHAN0_MAIN, HIGH);
temp &= MASK_MAX31855; // MASK_MAX31855 = 0hFFFC
return (float)(temp * 0.0625);
}
Nota: probablemente debería usar un entero con signo para la temperatura (según la hoja de datos), sin embargo, solo estoy tratando de hacer una validación en la que sé que mi temperatura debería ser positiva.
Problemas: En primer lugar, en el transcurso de 20 segundos, recibo lecturas de temperatura que van de 12C a 18C sin siquiera tocar el dispositivo (supongo que las vibraciones pueden afectar la lectura). ¿Debería la lectura de temperatura estar tan nerviosa? Mi conjetura es no.
En segundo lugar, la temperatura debería ser en realidad la temperatura ambiente de 21 ° C. Sin embargo, todas mis lecturas parecen estar por debajo de este número. ¿Debería estar esperando una temperatura absoluta? ¿O necesito ajustar una compensación?
Tercero, al leer la temperatura de referencia interna, resultó ser un valor de 26C. ¿Esto parece cálido dado que el dispositivo está a temperatura ambiente?
Posibles respuestas Es posible que haya introducido algún mal empalme durante el montaje físico. ¿Al aterrizar un termopar tipo K en un cabezal hembra se introduciría un error de compensación o una lectura ruidosa?
¿Es posible que se espere este comportamiento? Me doy cuenta de que el termopar puede leer una gran variedad de temperaturas, sin embargo, todavía parece bastante ruidoso.
¡Cualquier pensamiento / idea sería apreciado!