ESP8266 - Temperatursensor - LCD

Dieses Tutorial erläutert, wie man den ESP8266 verwendet, um die Temperatur von einem DS18B20-Sensor zu erfassen und sie auf einem I2C-LCD anzuzeigen.

Erforderliche Hardware

1×ESP8266 NodeMCU
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×LCD I2C
1×DS18B20 Temperatursensor (mit Adapter)
1×DS18B20 Temperatursensor (ohne Adapter)
1×Breadboard
1×Verbindungskabel
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP8266
1×(Empfohlen) Stromverteiler für ESP8266 Typ-C

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Kaufhinweis: Viele DS18B20-Sensoren auf dem Markt sind von geringer Qualität. Wir empfehlen dringend den Kauf des Sensors von der Marke DIYables über den obigen Link. Wir haben ihn getestet und er funktionierte gut.

Über Temperatursensor und LCD-Display

Wenn Sie mit dem Temperatursensor und dem LCD (Pinbelegung, wie es funktioniert, wie man programmiert ...) nicht vertraut sind, können Ihnen die folgenden Tutorials weitere Informationen liefern:

Verdrahtungsdiagramm

ESP8266 NodeMCU Temperatursensor LCD Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Weitere Informationen finden Sie unter ESP8266-Pinbelegung und wie man ESP8266 und andere Komponenten mit Strom versorgt.

Wir empfehlen den Kauf eines DS18B20-Sensors zusammen mit seinem mitgelieferten Kabeladapter für eine nahtlose Einrichtung. Dieser Adapter enthält einen integrierten Widerstand, wodurch ein zusätzlicher Widerstand in der Verkabelung entfällt.

ESP8266-Code

/* * Dieser ESP8266 NodeMCU Code wurde von newbiely.de entwickelt * Dieser ESP8266 NodeMCU Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp8266/esp8266-temperature-sensor-lcd */ #include <OneWire.h> #include <DallasTemperature.h> #include <LiquidCrystal_I2C.h> #define SENSOR_PIN D7 // The ESP8266 pin connected to DS18B20 sensor's DQ pin OneWire oneWire(SENSOR_PIN); DallasTemperature DS18B20(&oneWire); LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows float temperature_C; // temperature in Celsius float temperature_F; // temperature in Fahrenheit void setup() { DS18B20.begin(); // initialize the sensor lcd.init(); // Initialize the LCD I2C display lcd.backlight(); // open the backlight } void loop() { DS18B20.requestTemperatures(); // send the command to get temperatures temperature_C = DS18B20.getTempCByIndex(0); // read temperature in Celsius temperature_F = temperature_C * 9 / 5 + 32; // convert Celsius to Fahrenheit lcd.clear(); lcd.setCursor(0, 0); // display position lcd.print(temperature_C); // display the temperature in Celsius lcd.print((char)223); // display ° character lcd.print("C"); lcd.setCursor(0, 1); // display position lcd.print(temperature_F); // display the temperature in Fahrenheit lcd.print((char)223); // display ° character lcd.print("F"); delay(500); }

※ Notiz:

Die Adresse des LCD kann je nach Hersteller variieren. In unserem Code haben wir 0x27 verwendet, wie von DIYables angegeben.

Schnelle Schritte

Um mit ESP8266 in der Arduino-IDE zu beginnen, befolgen Sie diese Schritte:

  • Schau dir das Tutorial zur Einrichtung der ESP8266-Umgebung in der Arduino-IDE an, falls du ESP8266 zum ersten Mal verwendest.
  • Verbinde die Komponenten wie im Diagramm gezeigt.
  • Verbinde das ESP8266-Board mit deinem Computer über ein USB-Kabel.
  • Öffne die Arduino-IDE auf deinem Computer.
  • Wähle das richtige ESP8266-Board, z. B. (NodeMCU 1.0 (ESP-12E Modul)), und den entsprechenden COM-Port.
  • Schließe das USB-Kabel an das ESP8266-Board und den PC an.
  • Starte die Arduino-IDE und wähle das richtige Board und den richtigen Port.
  • Klicke auf das Libraries-Symbol in der linken Seitenleiste der Arduino-IDE.
  • Suche nach “Dallas” und finde die DallasTemperature-Bibliothek, erstellt von Miles Burton.
  • Klicke auf die Install-Schaltfläche, um die Bibliothek hinzuzufügen.
ESP8266 NodeMCU Dallas-Temperaturbibliothek
  • Sie werden aufgefordert, die Abhängigkeit zu installieren. Klicken Sie auf die Schaltfläche Alle installieren, um die OneWire-Bibliothek zu installieren.
ESP8266 NodeMCU OneWire-Bibliothek
  • Suchen Sie nach “LiquidCrystal I2C” und finden Sie anschließend die LiquidCrystal_I2C-Bibliothek von Frank de Brabander.
  • Drücken Sie die Installieren-Schaltfläche, um die LiquidCrystal_I2C-Bibliothek zu installieren.
ESP8266 NodeMCU LiquidCrystal I2C-Bibliothek
  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE.
  • Dann drücken Sie die Hochladen-Schaltfläche in der Arduino IDE, um den Code zu kompilieren und auf den ESP8266 hochzuladen.
Arduino IDE Code hochladen
  • Tauchen Sie den Sensor in heißes Wasser und in kaltes Wasser, oder halten Sie ihn in der Hand.
  • Überprüfen Sie das LCD-Display.

Wenn das LCD-Display nichts anzeigt, schauen Sie sich Troubleshooting on LCD I2C für Hilfe an.

Code-Erklärung

Schau dir die Zeilen-für-Zeile-Erklärung an, die in den Kommentaren des Quellcodes enthalten ist!

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!