Inhaltsverzeichnis:

Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266 - Gunook
Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266 - Gunook

Video: Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266 - Gunook

Video: Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266 - Gunook
Video: FLProg10: датчик температуры DS18B20 | ESP32 NodeMCU | Визуальное программирование для Arduino 2024, November
Anonim
Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266
Schnittstelle DS18B20 Temperatursensor mit Arduino und ESP8266

Hey, was ist los, Jungs! Akarsh hier von CETech.

Heute werden wir unserem Arsenal einen neuen Sensor hinzufügen, der als DS18B20 Temperatursensor bekannt ist. Es ist ein Temperatursensor ähnlich dem DHT11, hat aber andere Anwendungen. Wir werden es mit verschiedenen Arten von verfügbaren Temperatursensoren vergleichen und uns die technischen Spezifikationen dieser Sensoren ansehen.

Gegen Ende dieses Tutorials werden wir DS18B20 mit Arduino und ESP8266 verbinden, um die Temperatur anzuzeigen. Bei Arduino wird die Temperatur auf dem Serial Monitor und beim ESP8266 auf einem Webserver angezeigt.

Beginnen wir jetzt mit dem Spaß.

Schritt 1: Leiterplatten für Ihr Projekt herstellen lassen

Lassen Sie Leiterplatten für Ihr Projekt fertigen
Lassen Sie Leiterplatten für Ihr Projekt fertigen

Sie müssen OurPCB überprüfen, um PCBs für Ihr Projekt online herzustellen.

Sie verwenden zuverlässige Komponenten von akkreditierten Lieferanten wie Arrow, Avnet, Future Electronics usw. und bieten angemessene Preise, die letztendlich die Gewinnspannen des Benutzers maximieren. Spezialisiert auf Multilayer- und Rigid-Flex-Technologie haben sie höchste Qualitätsstandards.

OurPCB konzentriert sich auf kleine bis mittlere Auftragsvolumen und bietet einen sehr wettbewerbsfähigen Preis für das Volumen von 1-100 m². Sie müssen nur Ihre Dateien in einem der verfügbaren Formate hochladen (Gerber,.pcb,.pcbdoc oder.cam) und die Leiterplatten-Prototypen werden an Ihre Haustür geliefert.

Sie können auch bei ihrem Partner WellPCB nach guten Angeboten Ausschau halten.

Schritt 2: Vergleich zwischen verschiedenen Arten von Temperatursensoren

Vergleich zwischen verschiedenen Arten von Temperatursensoren
Vergleich zwischen verschiedenen Arten von Temperatursensoren
Vergleich zwischen verschiedenen Arten von Temperatursensoren
Vergleich zwischen verschiedenen Arten von Temperatursensoren

Der oben gezeigte Vergleich hat drei Sensoren DS18B20, DHT11 und NTC Thermistor, aber hier beschränken wir unseren Vergleich auf digitale Sensoren. Dies bedeutet nicht, dass der NTC-Thermistor nicht so wichtig ist wie digitale Sensoren. Tatsächlich ist die Entwicklung digitaler Sensoren nur wegen des NTC-Thermistors möglich. Die digitalen Sensoren bestehen aus NTC-Thermistoren, die mit einigen Mikroprozessoren verbunden sind, die letztendlich den digitalen Ausgang liefern.

Hauptpunkte des Vergleichs sind:

1. DS18B20 ist wasserdicht und robust, während DHT11 dies nicht ist. Aus diesem Grund wird in realen Szenarien und Anwendungen, bei denen eine kontaktbasierte Erfassung erforderlich ist, DS18B20 im Allgemeinen verwendet, während DHT11 in Anwendungen im Freien verwendet wird.

2. DS18B20 spuckt Daten von 9-12 Datenbits aus, während DHT11 Daten von 8 Bits ausgibt.

3. DS18B20 gibt nur die Temperatur an, während DHT11 verwendet werden kann, um sowohl die Temperatur als auch die Luftfeuchtigkeit zu erhalten.

4. DS18B20 deckt einen breiteren Temperaturbereich im Vergleich zum DHT11 ab und hat auch eine bessere Genauigkeit im Vergleich zum DHT (+ 0,5 Grad im Vergleich zu + 2 Grad für DHT11).

5. Wenn es um die Preisgestaltung geht, unterscheiden sich diese Sensoren geringfügig, da die beiden verschiedenen Varianten des DS18B20, die vom Typ verpackter Draht und das TO92-Gehäuse sind, etwa 1 USD und 0,4 USD kosten, während der DHT11 etwa 0,6 USD kostet.

Wir können also sagen, dass der DS18B20 etwas besser ist als der DHT11, aber eine bessere Auswahl kann nur anhand der Anwendung getroffen werden, für die der Sensor benötigt wird.

Sie können mehr über den DS18B20 erfahren, indem Sie das Datenblatt von hier lesen.

Schritt 3: DS18B20 mit Arduino verbinden

DS18B20 mit Arduino verbinden
DS18B20 mit Arduino verbinden
DS18B20 mit Arduino verbinden
DS18B20 mit Arduino verbinden

Hier werden wir den DS18B20-Temperatursensor mit Arduino verbinden, um die Temperatur zu erhalten und auf dem seriellen Monitor anzuzeigen.

Für diesen Schritt benötigen wir-Arduino UNO, DS18B20 Temperatursensor (Verpackungstyp oder TO92-Paket, was auch immer verfügbar ist) und 4,7 kOhm Widerstand

Der DS18B20-Sensor hat 3 Drähte, die schwarz, rot und gelb sind. Schwarz ist für GND, Rot für Vcc, während der gelbe der Signalstift ist

1. Verbinden Sie den GND-Pin oder das schwarze Kabel des Sensors mit GND.

2. Verbinden Sie den Vcc-Pin oder das rote Kabel des Sensors mit der 5V-Versorgung.

3. Verbinden Sie den Signalstift oder das gelbe Kabel über einen 4,7 kOhm-Widerstand mit 5 V und verbinden Sie diesen Signalstift auch mit dem Digital Pin Nr. 12 von Arduino.

Sie können sich zum besseren Verständnis auf das oben gezeigte Schema beziehen.

Schritt 4: Codieren des Arduino zur Anzeige der Temperatur

Codieren des Arduino zur Anzeige der Temperatur
Codieren des Arduino zur Anzeige der Temperatur
Codieren des Arduino zur Anzeige der Temperatur
Codieren des Arduino zur Anzeige der Temperatur
Codieren des Arduino zur Anzeige der Temperatur
Codieren des Arduino zur Anzeige der Temperatur

In diesem Schritt werden wir unser Arduino-Board codieren, um die Temperatur über den seriellen Monitor zu erhalten und anzuzeigen.

1. Verbinden Sie das Arduino UNO-Board mit dem PC.

2. Wechseln Sie von hier aus zum Github-Repository für dieses Projekt.

3. Im GitHub-Repository sehen Sie eine Datei mit dem Namen " Basic code ". Öffnen Sie diese Datei, kopieren Sie den Code und fügen Sie ihn in Ihre Arduino-IDE ein.

4. Wählen Sie das richtige Board und den richtigen COM-Port auf der Registerkarte Tools aus und klicken Sie auf die Schaltfläche Upload.

5. Nachdem der Code hochgeladen wurde, öffnen Sie Serial Monitor und wählen Sie die richtige Baudrate (9600 in unserem Fall) aus und Sie können die vom DS18B20 dort gemessene Temperatur sehen.

Sie können den Temperaturanstieg und -abfall beobachten, indem Sie geeignete Maßnahmen ergreifen, um die Temperatur zu erhöhen oder abzusenken, z. B. durch Reiben des Metallteils oder Anzünden eines Feuerzeugs in der Nähe des Metallteils des verpackten Sensors.

Schritt 5: DS18B20 mit ESP8266 verbinden

Verbindung von DS18B20 mit ESP8266
Verbindung von DS18B20 mit ESP8266
Verbindung von DS18B20 mit ESP8266
Verbindung von DS18B20 mit ESP8266

In diesem Schritt werden wir DS18B20 mit dem ESP8266-Modul verbinden, um die Temperatur zu erhalten.

Für diesen Schritt benötigen wir = ESP8266-Modul, 4,7 kOhm-Widerstand und DS18B20-Temperatursensor (Verpackungstyp oder TO92-Paket, was auch immer verfügbar ist).

Die Verbindungen für diesen Schritt ähneln den Verbindungen, die mit Arduino hergestellt wurden.

1. Verbinden Sie den GND-Pin oder das schwarze Kabel des Sensors mit GND.

2. Verbinden Sie den Vcc-Pin oder das rote Kabel des Sensors mit der 3,3-V-Versorgung.

3. Verbinden Sie den Signalstift oder das gelbe Kabel über einen 4,7 kOhm-Widerstand mit 3,3 V und verbinden Sie diesen Signalstift auch mit dem GPIO12, dem D5-Pin des Moduls.

Sie können sich zum besseren Verständnis auf das oben gezeigte Schema beziehen.

Schritt 6: Einrichten der Arduino-IDE

Einrichten der Arduino-IDE
Einrichten der Arduino-IDE

Um den ESP8266 mit der Arduino IDE zu codieren, müssen wir das ESP8266 Board in die zusätzlichen Boards der Arduino IDE einbauen, da diese nicht vorinstalliert sind. Zu diesem Zweck müssen wir die folgenden Schritte ausführen:-

1. Gehen Sie zu Datei > Einstellungen

2. Fügen Sie https://arduino.esp8266.com/stable/package_esp8266com_index.json zu den URLs des zusätzlichen Boards-Managers hinzu.

3. Gehen Sie zu Tools > Board > Boards-Manager

4. Suchen Sie nach esp8266 und installieren Sie dann die Platine.

5. Starten Sie die IDE neu.

Schritt 7: Kodieren des ESP8266 zur Anzeige der Temperatur

Kodierung des ESP8266 zur Anzeige der Temperatur
Kodierung des ESP8266 zur Anzeige der Temperatur
Kodierung des ESP8266 zur Anzeige der Temperatur
Kodierung des ESP8266 zur Anzeige der Temperatur

In diesem Schritt werden wir ESP8266 codieren, um die Temperatur zu lesen, und danach, anstatt diese Temperatur auf dem seriellen Monitor anzuzeigen, werden wir sie auf einem Webserver anzeigen.

1. Wechseln Sie von hier zum Github-Repository für dieses Projekt.

2. Im Repository sehen Sie einen Code mit dem Namen " ESP8266 Temperature Web Server " Sie müssen diesen Code nur kopieren und in die Arduino IDE einfügen.

3. Ändern Sie nach dem Einfügen des Codes die SSID und das Passwort im Code in die Ihres Wifi-Netzwerks.

4. Wählen Sie auf der Registerkarte Tools das richtige Board und den richtigen COM-Port aus und klicken Sie anschließend auf die Schaltfläche Upload.

5. Wenn der Code hochgeladen wird, öffnen Sie den seriellen Monitor der IDE und drücken Sie dann die Aktualisierungstaste auf dem ESP8266-Modul. Dort wird eine unbekannte Sprache geschrieben und darunter wird eine IP-Adresse angezeigt. Sie müssen diese IP-Adresse kopieren, da es sich um die Adresse des Webservers handelt, der die Temperatur anzeigt.

Schritt 8: Und es ist fertig

Und es ist fertig
Und es ist fertig

Wenn der Code hochgeladen und die IP-Adresse abgerufen wird. Öffnen Sie den Webserver mit dieser IP-Adresse.

Auf dem Webserver werden Temperaturwerte in Grad Celsius sowie in Grad Fahrenheit angezeigt.

Neben dem Webserver können die Temperaturwerte auch auf dem seriellen Monitor beobachtet werden.

Sie werden feststellen, dass sich die Messwerte auf dem Webserver ändern, wenn sich die Temperatur in der Nähe des Sensors ändert.

Das war's für die Demonstration.

Empfohlen: