Inhaltsverzeichnis:

Internet-Logger für Temperatur und Luftfeuchtigkeit mit Display mit ESP8266 - Gunook
Internet-Logger für Temperatur und Luftfeuchtigkeit mit Display mit ESP8266 - Gunook

Video: Internet-Logger für Temperatur und Luftfeuchtigkeit mit Display mit ESP8266 - Gunook

Video: Internet-Logger für Temperatur und Luftfeuchtigkeit mit Display mit ESP8266 - Gunook
Video: ESP8266 als Webserver, Temperaturanzeige mit einem DHT11 2024, November
Anonim
Temperatur- und Feuchtigkeits-Internet-Logger mit Display mit ESP8266
Temperatur- und Feuchtigkeits-Internet-Logger mit Display mit ESP8266

Ich wollte ein kleines Projekt teilen, von dem ich denke, dass es Ihnen gefallen wird. Es ist ein kleiner, langlebiger internetfähiger Internet-Logger für Temperatur und Luftfeuchtigkeit mit Display. Dieser loggt sich bei emoncms.org und optional entweder lokal bei einem Raspberry PI oder Ihrem eigenen emoncms-Server ein. Es verfügt über den LOLIN (ehemals WEMOS) D1 Mini, der den ESP8266-Kern enthält. Der Temperatur- und Feuchtigkeitssensor ist der LOLIN DHT 3.0 I2C-Sensor. Die Software ist Arduino und natürlich Open Source. Ich habe jetzt 7 davon gebaut und ein Kumpel von mir möchte 3 weitere.

Ich habe es in einem "Systema" 200ml Plastiketui umhüllt. Diese sind in Australien für ~$2 erhältlich. Die Gesamtkosten der Komponenten, einschließlich eines USB-Mikrokabels, betragen < 30 AU $, also sollten Sie dies in den USA für ~ 20 $ bauen können

Die komplette Komponentenliste ist

  1. LOLIN DI Mini V3.1.0
  2. LOLIN DHT Shield 3.0 Temperatur und Luftfeuchtigkeit
  3. TFT 1.4 Shield V1.0.0 für WeMos D1
  4. TFT I2C Connector Shield V1.1.0 für LOLIN (WEMOS) D1 mini
  5. TFT Kabel 10P 200mm 20cm für WEMOS SH1.0 10P Doppelkopfkabel
  6. I2C Kabel 100mm 10cm für LOLIN (WEMOS) SH1.0 4P Doppelkopfkabel
  7. Kunststoffetui - SYSTEMA 200ml - in Australien Coles/Woolies/KMart
  8. USB Micro auf USB-A Stromkabel

Alle aktiven Komponenten können im LOLIN-Shop auf AliExpress gekauft werden.

Werkzeuge und sonstige Hardware

  1. Lötkolben. Sie müssen die Header auf die Abschirmungen löten
  2. 1,5 mm Zylinderkopfschrauben ~ 1 cm lang und passender Mitnehmer
  3. 1,5 mm Bohrer oder Reibahle für Schraubenlöcher
  4. Rundfeile oder Dremel zum Schneiden von Kabelschlitzen

Schritt 1: Montage

Montage
Montage
Montage
Montage
Montage
Montage
Montage
Montage

Die Montage ist direkt. Es gibt 2 Abschirmungen zu stapeln, aber ich bevorzuge es, die D1-Abschirmung als obere Platine zu haben, da der Ausgangspfad für das USB-Kabel gerader und einfacher zu organisieren ist, sobald Sie den Deckel aufklipsen.

Der D1 kommt mit 3 Header-Kombinationen

  1. Buchse und lange Stifte
  2. Buchse und kurze Stifte
  3. Nur kurzer Stift

Verwenden Sie die Kombination langer Buchse/langer Stift für die DI. Stellen Sie sicher, dass Sie es mit der richtigen Ausrichtung löten. Hier ist eine kleine Vorrichtung, die ich verwende, um die Stifte zum Löten gerade auszurichten.

Positionieren Sie mit einem Steckbrett zwei Reihen von Short Pin Headern in den Reihen B & I längere Stifte nach unten. Sie werden bündig mit der Oberfläche abschließen. Positionieren Sie dann zwei Reihen von Sockel und kurzen Stiften in den Reihen A und J außerhalb der kurzen Stiftleisten.

Anschließend können Sie die langen Stiftleisten auf die kurzen Stifte in der Platine aufsetzen und dann den D1 lötbereit positionieren. Hinweis: Der D1 steht zu diesem Zeitpunkt auf dem Kopf. Die USB-Buchse und die Antennenspur befinden sich unter der Platine. Löten Sie die Stifte an die Platine. Versuchen Sie, nicht zu viel Lötmittel zu verwenden, da überschüssiges Lötmittel unter dem D1 absickert und bis zum Sockelbereich der Platine gelangen kann. Sie fragen sich vielleicht, warum ich beim D1 nicht nur die kurzen Stiftleisten verwendet habe? Ich habe andere Pläne, einschließlich einer Echtzeituhr und einer SD-Karte für Zeiten, in denen kein WLAN-Zugang möglich ist, daher habe ich dafür gesorgt, dass bei Bedarf andere Schilde gestapelt werden.

Der nächste Schritt ist das Löten der Anschlussplatine. Entfernen Sie die Buchsen- und Stiftleisten aus den Reihen A & J und schieben Sie sie auf die jetzt gelöteten D1-Pins. Sie können nun die Steckerabschirmung auf diese Pins schieben. Drücken Sie die Buchsen nicht ganz nach unten, sondern legen Sie sie einfach darauf. Grund? Wenn Sie zu viel Lötmittel verwenden, wird es nach unten "docht" und Ihr Stecker wird dauerhaft mit dem D1 verlötet.

Stellen Sie sicher, dass der Stecker richtig ausgerichtet ist. Auch der Steckerschirm sollte an dieser Stelle "auf den Kopf gestellt" sein. Die Pinbelegungen sind auf jeder Platine markiert. Stellen Sie sicher, dass sie übereinstimmen, d.h. der Tx-Pin auf dem D1 befindet sich direkt unter dem Tx-Pin auf der Anschlussplatine usw. Überprüfen Sie erneut und löten Sie die Anschlussplatine an ihren Header.

Das Löten ist jetzt abgeschlossen. Entfernen Sie die Platine aus der Vorrichtung, wenn Sie sie verwenden. Klemmen Sie sie zusammen und überprüfen Sie erneut die Ausrichtung. Im Gegensatz zu den Arduino Uno-Boards ist es möglich, ein Board um 180 Grad nach außen zu haben. An dieser Stelle können Sie das I2C-Kabel vom Connector Board zum DHT und das 10-Pin-TFT-Kabel zum TFT anschließen. Die internen Stifte sind ziemlich klein, also überprüfen Sie die Ausrichtung vor dem Einsetzen.

Schließen Sie ein USB-Mikrokabel an den D1 an und die Hintergrundbeleuchtung des TFT sollte leuchten. Sie sind nun bereit, die Arduino-Skizze zu laden.

Schritt 2: Laden der Firmware

Laden Sie die neueste Arduino-IDE. Ich hatte zum Zeitpunkt des Aufbaus dieses Projekts 1.8.5 ausgeführt.

Die IDE muss konfiguriert werden, um den Sketch für das WEMOS (ESP8266) zu kompilieren. Dazu müssen Sie die IDE starten und zu Datei / Einstellungen gehen und dann auf das Symbol rechts neben "Additional Boards Managers URLS" klicken. Ein Editor wird angezeigt. Fügen Sie Folgendes ein

arduino.esp8266.com/stable/package_esp8266c…

in den Editor und klicken Sie auf OK und dann auf OK, um den Einstellungseditor zu schließen. Anschließend müssen Sie die IDE schließen und erneut öffnen. Die Arduino-IDE verbindet und lädt dann die erforderliche "Toolchain" und Bibliotheken herunter, um Skizzen für den ESP8266 zu erstellen und zu kompilieren, auf dem der D1 basiert.

Außerdem benötigen Sie die AdaFruit-Bibliotheken für den TFT-Bildschirm. Diese erhalten Sie bei

github.com/adafruit/Adafruit-ST7735-Library

& github.com/adafruit/Adafruit-GFX-Library

entpackt und in Ihrem Bibliotheksordner in Ihrem Arduino-Projektordner gespeichert. Hinweis: Die Github-Downloads hängen häufig "-master" an den Ordner an, sodass Sie sie möglicherweise umbenennen müssen.

Außerdem benötigen Sie die LOLIN/WEMOS DHT 3.0 Bibliothek von

github.com/wemos/WEMOS_DHT12_Arduino_Library

Laden Sie die Datei IoTTemp_basic.ino herunter und legen Sie sie in einen Arduino-Projektordner namens "IOTTemp_basic" ab.

Öffnen Sie die Skizze in der IDE und gehen Sie zu Tools / Board und wählen Sie den "Boards Manager". Geben Sie in "Suche filtern" einfach "D1" ein und Sie sollten "esp8266 by ESP8266 Community" sehen. Klicken Sie auf "Weitere Informationen" und Sie sollten in der Lage sein, die neueste Version und "Installieren" auszuwählen. Die IDE beginnt dann, die Toolkette und die zugehörigen Bibliotheken herunterzuladen.

Sobald dies abgeschlossen ist, schließen Sie Ihr IotTemp an Ihren Computer an und wählen Sie nach der Erkennung den Port aus, auf dem das Gerät installiert ist unter "Tools/Port". Sie können jetzt kompilieren und laden.

Oben in der Skizze müssen Sie einige Variablen entsprechend Ihrer lokalen Umgebung konfigurieren

const char* ssid = ""; // Ihre lokale WLAN-SSID

const char* Passwort = ""; // Passwort für lokalen Knoten

const char* host = "emoncms.org"; // Basis-URL für die EMONCMS-Protokollierung. Hinweis KEIN "https://"

const char* APIKEY = "<Ihr API-Schlüssel"; // API-Schlüssel aus emonCMS schreiben

const char* nodeName = "Küche"; // Beschreibender Name für Ihren Knoten

Klicken Sie auf das "Häkchen"-Symbol, um den Code zu überprüfen. Wenn keine signifikanten Fehler vorliegen, sollten Sie den Code in den D1 hochladen. Sobald dies abgeschlossen ist, dauert es ein oder zwei Minuten, Sie sollten jetzt das TFT mit den Werten "TMP" und "R/H" (Relative Humidity) aufleuchten sehen.

Da wir das EMONCMS-Konto usw. nicht konfiguriert haben, sehen Sie "Verbindung fehlgeschlagen" mit Ihrem Hostnamen.

Die Skizze hat auch einen grundlegenden seriellen Monitor. Stellen Sie eine Verbindung mit dem seriellen Arduino-Monitor, Putty oder einem anderen seriellen Kommunikationsprogramm her, um weitere Informationen zu den Vorgängen im IoT Temp zu erhalten.

Ich bastle an dem Code, damit ihr meinen neusten Code findet unter

github.com/wt29/IoTTemp_basic

Schritt 3: Endmontage

Endmontage
Endmontage
Endmontage
Endmontage
Endmontage
Endmontage
Endmontage
Endmontage

Sie sind nun bereit, die Montage abzuschließen. Dabei werden die Komponenten in die Box montiert.

Beginnen Sie mit der Montage des TFT auf der Innenseite des Deckels. Trennen Sie den D1 vom Strom und trennen Sie dann den TFT von der Anschlussplatine. Halten Sie das TFT an den Deckel und versuchen Sie, das TFT so nah wie möglich an der Oberkante des Deckels zu positionieren. Dadurch erhalten Sie einen besseren Abstand für die D1/Connector-Platine. Ich drücke mit einer scharfen Reibahle eine kleine Markierung in den Kunststoff, entferne das TFT und reibe dann ein kleines Loch. Die Befestigungslöcher für das TFT sind mit 1,5 mm recht klein. Ich habe eine Sammlung von Kopfschrauben, die passen, aber keine passenden Muttern. Ich drücke den Kappenkopf von vorne, schraube sie durch und plastik und dann verwende ich einfach Niedertemperatur-Heißkleber, um das TFT an den Schrauben zu befestigen.

Montieren Sie den DHT-Sensor an der Außenseite des Deckels. Um den Sensor vom Schild zu trennen (die "Schild" -Halterungen werden nicht verwendet), drehen Sie das DHT auf den Kopf und ritzen Sie die Landenge (das dünne Bit) mit einem Hobbymesser ein. Der Sensor schnappt dann aus der Abschirmung.

Fast der letzte Schritt besteht darin, einen Entlastungsschlitz in die Unterkante des Deckels und des Bodens zu schneiden, um das USB-Kabel und die Verbindung zum DHT aufzunehmen. Ich benutze einen Dremel, aber er kann leicht ein bisschen wild werden, also nimm dir Zeit. Die SystemA-Box hat eine Silikondichtung im Deckel, die Sie nicht aufschneiden müssen.

Bauen Sie das Gerät im Karton zusammen. Ein Hauch von Niedertemperatur-Heißkleber unter der Anschlussplatine hilft, sie in der Box zu finden. Führen Sie die USB- und DHT-Kabel aus dem Steckplatz und kleben Sie einen Klecks Heißkleber über die beiden Kabel.

Befestigen Sie das DHT mit einer kurzen 1,5-mm-Schraube an der Außenseite der Box. Verwenden Sie ein wenig Heißkleber darunter, wenn Sie möchten - ich störe nicht.

Schließen Sie Ihr IOT Temp an eine 5V-Stromversorgung an und bewundern Sie Ihre Arbeit.

Empfohlen: