Hasta ahora tenemos sensores como el de medición cómoda de temperaturas. DHT22 o eso DS18B20 utilizado Desafortunadamente, solo podemos medir temperaturas bajas con él, no podemos usarlo para medir una barbacoa o medir la temperatura de los gases de escape. Es por eso que me gustaría nuestro módulo hoy MAX6675 para medir temperaturas de hasta 1024 ° C. Las instrucciones para usar el módulo con un Arduino se pueden encontrar fácilmente en Internet, Adafruit proporciona una biblioteca para esto. Desafortunadamente, esta biblioteca no es compatible con las NodeMCU sin modificación. En mi opinión, los NodeMCU son más adecuados que Arduinos, ya que son tableros como el nuestro Kit WIFI 8 allí, que ya tiene una fuente de alimentación con baterías Li-Po también Pantalla OLED tener a bordo. También es posible integrarlos en su propio WiFi y tener la salida de información en un sitio web o mediante MQTT.
Como ejemplo de aplicación, usamos nuestro LoLin NodeMCU V3 hoy y lo cableamos así:
NodeMCU LoLin V3 | MAX6675 Modulo |
3.3V | VCC |
GND | GND |
D5 | SCK |
D6 | SO |
D7 | CS |
La biblioteca Adafruit existe aqui. Alternativamente, esto también se puede instalar en ArduinoIDE a través del administrador de la biblioteca. El directorio del MAX6675 se encuentra en sus otras bibliotecas en C: \ Users \ username \ Documents \ Arduino \ bibliotecas
Abra el archivo max6675.cpp con un editor como Nodepad ++y cambie el código como en la captura de pantalla de:
en:
Luego puede compilar el código sin errores:
#include "max6675.h" int thermoDO = 12; int thermoCS = 13; int thermoCLK = 14; MAX6675 termopar(thermoCLK, thermoCS, thermoDO); nulo configuración() { De serie.comenzar(115200); De serie.println("Prueba MAX6675"); // ¡espera el chip MAX! retrasar(500); } nulo bucle() { De serie.imprimir("C ="); De serie.println(termopar.leer Celsius()); //Serial.print("F = "); //Serial.println (thermocouple.readFahrenheit ()); retrasar(1000); }
Sobre esta base, puede configurar bien e integrar fácilmente su pantalla o en su solución SmartHome.
2 comentarios
Uli
habe die Library über die ArduinoIDE installiert, danach hat es ohne weitere Anpassungen funktioniert, danke :-)
Wolfgang
Bei mir gabs eine Fehlermeldung… Das Delay war nicht definiert…
Folgende Änderung hat funktioniert:
// this library is public domain. enjoy!
// www.ladyada.net/learn/sensors/thermocouple
#define _delay_ms(ms) delayMicroseconds((ms) * 2000)
//#include <avr/pgmspace.h>
//#include <util/delay.h>
#include
#include “max6675.h”