Inhaltsverzeichnis:

Winziger ESP8266 Temperaturlogger (Google Sheets) - Gunook
Winziger ESP8266 Temperaturlogger (Google Sheets) - Gunook

Video: Winziger ESP8266 Temperaturlogger (Google Sheets) - Gunook

Video: Winziger ESP8266 Temperaturlogger (Google Sheets) - Gunook
Video: ESP32-CAM - Guide to making YOUR first DIY Security Camera 2024, November
Anonim
Winziger ESP8266 Temperaturlogger (Google Sheets)
Winziger ESP8266 Temperaturlogger (Google Sheets)
Winziger ESP8266 Temperaturlogger (Google Sheets)
Winziger ESP8266 Temperaturlogger (Google Sheets)
Winziger ESP8266 Temperaturlogger (Google Sheets)
Winziger ESP8266 Temperaturlogger (Google Sheets)

Dies ist eine Anleitung, wie Sie Ihren ganz eigenen, absolut winzigen WLAN-fähigen Temperaturlogger erstellen können. Es basiert auf dem ESP-01-Modul und dem digitalen Temperatursensor DS18B20, verpackt in einem engen 3D-gedruckten Gehäuse mit einer 200-mAh-Lithiumbatterie und einem Micro-USB-Ladegerät.

Es ist wirklich ein großartiges Projekt, wenn es richtig gemacht wird, aber es ist sehr frustrierend, alles manuell zu löten und es so klein zu halten, ohne etwas zu beschädigen und die Software zum Laufen zu bringen, ist ziemlich langatmig. Lesen Sie also bitte das gesamte instructable, bevor Sie es versuchen.

Wenn jemand einen baut, würde ich ihn gerne sehen und wofür Sie ihn verwenden. Bisher habe ich ihn verwendet, um den Arbeitszyklus meiner Klimaanlage an einem typischen Sommertag (50 Minuten an, 20 Minuten aus) zu bestimmen und werde ihn verwenden es, um die Temperatur von Würsten im Winter zu überwachen…

Schritt 1: Materialien/Ausrüstung

Materialien/Ausrüstung
Materialien/Ausrüstung

Obwohl es nur wenige Komponenten gibt und der Schaltplan recht einfach ist, braucht es viel Aufwand, um sie in einen schönen und funktionalen Formfaktor zu bringen…

Die Komponenten, die Sie benötigen, sind:

  • Ein ESP01
  • Ein 200mAh LiPo-Akku
  • Ein TP4056 LiPo-Lademodul
  • Ein HT7333A 3.3V Spannungsregler
  • Ein DS18B20 Temperatursensor
  • Zwei SMD 4,7kΩ Widerstände
  • Zwei kleine Druckknöpfe

Werkzeuge/Ausrüstung, die Sie benötigen, sind:

  • Dünner isolierter Draht (ich habe Drahtwickeldraht verwendet)
  • Lötkolben/Station, Lötmittel, Flussmittel und eine Entlötpumpe
  • Scheren/Abisolierzangen, Pinzetten
  • Ein Computer
  • Eine ESP01-Programmierplatine
  • Ein 3D-Drucker
  • Sekundenkleber/Cyanacrylatkleber

Schritt 2: Löten: der Tiny Deep_Sleep Wire

Löten: der Tiny Deep_Sleep Wire
Löten: der Tiny Deep_Sleep Wire
Löten: der Tiny Deep_Sleep Wire
Löten: der Tiny Deep_Sleep Wire
Löten: der Tiny Deep_Sleep Wire
Löten: der Tiny Deep_Sleep Wire

Eine der wichtigsten Funktionen, die ein batteriebetriebener Logger haben muss, ist ein Energiesparmodus, damit er so lange wie möglich hält. Der ESP8266 hat die ESP. DeepSleep(); Option, aber dafür muss GPIO_16 mit dem EXT_RSTB(Reset)-Pin verbunden sein, der leider für uns bei einem ESP01-Modul nicht ausgebrochen ist. Dies bedeutet, dass wir einen dünnen Draht von Hand an den richtigen Pin auf dem SMD ESP8266-Chip löten müssen. Dies ist eine ziemliche Herausforderung, kann aber mit einem normalen Lötkolben und viel Geduld und ruhigen Händen durchgeführt werden. GPIO_16 ist der letzte Pin auf der Seite des Chips in der Nähe des Entkopplungskondensators, da er sich am Rand befindet und das Anlöten erheblich erleichtert. Viel Glück!

Schritt 3: Prototyp

Prototyp
Prototyp
Prototyp
Prototyp

Bevor ich es auf die endgültige Elektronik verdichtete, um in den Fall zu gehen, habe ich einen Prototyp mit Perf-Board gemacht. Dies war ein optionaler Schritt, um zu überprüfen, ob alle Komponenten zusammenarbeiten, da es viel schwieriger ist, Fehler zu beheben, sobald sie miniaturisiert und in einem engen Gehäuse untergebracht sind. Könnte auch leicht auf einem Steckbrett gemacht werden.

Schritt 4: Programmierung

Programmierung
Programmierung
Programmierung
Programmierung
Programmierung
Programmierung

Um den ESP8266 zu programmieren, können Sie ein billiges Programmiermodul aus China mit einer leichten Modifikation verwenden, indem Sie einen Taster hinzufügen, um GPIO_2 mit Masse zu verbinden. Das Flashen eines ESP8266 ist außerhalb des Umfangs dieses instructable, aber es kann leicht mit der Arduino-Skizze auf der GitHub-Seite durchgeführt werden. Stellen Sie sicher, dass Sie die ArduinoJSON- und die OneWire-Bibliothek und natürlich die ESP-Kerne installieren.

WICHTIG! Vergessen Sie nicht, die SPIFFS-Daten auf das Board hochzuladen. Der Logger bootet nicht ohne die im SPIFFS-Speicher gespeicherte Konfigurationsdatei.

github.com/Luigi-Pizzolito/ESP8266-Temperatu…

Schritt 5: Interwebz: Google Formulare

Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare
Interwebz: Google Formulare

Das Backend unseres Loggers wird zwischendurch mit Google Forms and Sheets und IFTTT erstellt. Folgen Sie den Bildern von hier aus am einfachsten.

  1. Erstellen Sie ein neues Formular.
  2. Erfassen Sie eine Formularantwortanfrage mit den Entwicklertools von Google Chrome.
  3. Anforderungs-URL notieren und Daten anfordern
  4. Formular mit automatischer Aktualisierung von Google Sheet verbinden
  5. Grafiken zu Tabellen hinzufügen

Schritt 6: Interwebz: IFTTT-Webhooks

Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks
Interwebz: IFTTT-Webhooks

Folgen Sie an dieser Stelle wirklich einfach den Schritt-für-Schritt-Bildern.

  1. Erstellen Sie ein neues IFTTT-Applet
  2. Wählen Sie den Trigger als Webhook-Anforderungsereignis aus, notieren Sie sich den Ereignisnamen.
  3. Wählen Sie die Aktion als Webhook-Anforderung aus.
  4. Fügen Sie die Anforderungs-URL aus den Entwicklertools aus den Google-Formularen ein.
  5. Setzen Sie die Anforderungsmethode auf POST
  6. Setzen Sie den Inhaltstyp auf 'application/x-www-urlencoded'
  7. Fügen Sie die Rohdaten der Anfrage aus den Entwicklertools aus den Google-Formularen ein.
  8. Suchen Sie die Felder für Temperatur und Spannung und ersetzen Sie sie durch 'Zutaten'; Wert1 & Wert2.
  9. Applet fertigstellen.

Schritt 7: Interwebz: Richten Sie Ihren Logger ein

Interwebz: Richten Sie Ihren Logger ein
Interwebz: Richten Sie Ihren Logger ein
Interwebz: Richten Sie Ihren Logger ein
Interwebz: Richten Sie Ihren Logger ein
Interwebz: Richten Sie Ihren Logger ein
Interwebz: Richten Sie Ihren Logger ein

Folgen Sie den Bildern…

  1. Besuchen Sie die IFTTT Maker Webhooks-Dokumentation hier:
  2. Kopieren Sie Ihre Trigger-URL, nachdem Sie den Ereignisnamen eingegeben haben.
  3. Rufen Sie den Setup-Modus auf Ihrem TinyTempLogger auf, indem Sie die Setup-Taste gedrückt halten und die Reset-Taste drücken, verbinden Sie sich mit ESP_Logger und öffnen Sie 192.168.4.1
  4. Geben Sie Ihre URL ein, teilen Sie sie in Host und URI auf
  5. Geben Sie als Namen für die Parameter 'value1' und 'value2' ein.
  6. Klicken Sie auf Speichern und dann auf Zurücksetzen.

Ihr Logger sollte jetzt in der Lage sein, Daten über das IFTTT-Relay an Google Sheets zu senden.

Schritt 8: Löten: Batterie, Ladegerät und Regler

Löten: Akku, Ladegerät und Regler
Löten: Akku, Ladegerät und Regler
Löten: Akku, Ladegerät und Regler
Löten: Akku, Ladegerät und Regler

Zu diesem Zeitpunkt sollten Sie einen voll funktionsfähigen Prototyp auf dem Steckbrett / Perf-Board haben. In den nächsten Schritten werden wir alle Komponenten im Dead-Bug-Stil in den kleinstmöglichen Formfaktor verlöten.

Beginnen Sie damit, den Akku, den Regler und das Ladegerät gemäß dem Schaltplan miteinander zu verlöten.

Der Schaltplan ist auch auf der GitHub-Seite zu finden.

Schritt 9: Löten: Stiftleisten entfernen

Löten: Stiftleisten entfernen
Löten: Stiftleisten entfernen
Löten: Stiftleisten entfernen
Löten: Stiftleisten entfernen
Löten: Stiftleisten entfernen
Löten: Stiftleisten entfernen

WICHTIG! Bevor Sie die Stiftleisten entfernen, stellen Sie sicher, dass Sie das Programm und die SPIFFS geflasht und die Schaltung als Prototyp erstellt und bestätigt haben, dass sie funktioniert! Das Flashen des Speichers nach diesem Schritt wird ein Schmerz sein !!

NUR FORTFAHREN, wenn die Schaltung als Prototyp voll funktionsfähig ist.

Das Entfernen der Stiftleisten ist etwas schwierig. Meine Strategie besteht darin, einfach Flussmittel aufzutragen und zu versuchen, alle Stifte gleichzeitig mit Lötmittel zu erhitzen, während Sie die Stifte mit einer Pinzette herausziehen. Dann benutze ich die Lötpumpe von unten und den Lötkolben von oben, um das Lot, das in den Löchern steckt, zu schmelzen und auszusaugen. Achten Sie darauf, den empfindlichen Tiefschlafdraht nicht zu brechen.

Schritt 10: SMD-Widerstandslöten, Ändern des Stroms des Lademoduls

Löten von SMD-Widerständen, Ändern des Stroms des Lademoduls
Löten von SMD-Widerständen, Ändern des Stroms des Lademoduls
Löten von SMD-Widerständen, Ändern des Stroms des Lademoduls
Löten von SMD-Widerständen, Ändern des Stroms des Lademoduls

Bevor wir das LiPo-Lademodul mit unserem kleinen 200mAh-Akku verwenden, müssen wir es modifizieren. Standardmäßig laden diese Module die Zelle mit 500 mA auf, was für kleine Batterien zu hoch ist. Durch Ändern des SMD-Stromeinstellwiderstands von 1,2kΩ(122) auf 4,7kΩ(472) können wir den Strom auf ~150mA verringern. Auf diese Weise hält unsere Zelle länger.

Schritt 11: Löten: Tasten

Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe
Löten: Knöpfe

Das erste, was ich an den ESP-01 gelötet habe, waren die Drucktasten, ich habe nur dünnen Draht und oberflächenmontierte Drucktasten verwendet, folge einfach dem Schaltplan und halte alles so klein wie möglich.

Schritt 12: Löten: DS18B20

Löten: DS18B20
Löten: DS18B20
Löten: DS18B20
Löten: DS18B20
Löten: DS18B20
Löten: DS18B20

Als nächstes lötete ich den DS18B20-Temperatursensor, zuerst trimmte ich seine Leitungen und lötete einen oberflächenmontierten 4,7kΩ-Widerstand zwischen den VCC- und DATA-Pins, dann folgte ich nur dem Schaltplan, um ihn mit dem ESP zu verbinden.

Schritt 13: Löten: Befestigen Sie alles zusammen

Löten: Alles zusammenfügen
Löten: Alles zusammenfügen
Löten: Alles zusammenfügen
Löten: Alles zusammenfügen
Löten: Alles zusammenfügen
Löten: Alles zusammenfügen

Das letzte, was beim Löten noch zu tun war, war, die Stromkabel von der Batterie zum ESP zu verbinden, dann war das Löten endlich fertig!

Schritt 14: 3D-Druckzeit und Endmontage

3D-Druckzeit und Endmontage
3D-Druckzeit und Endmontage
3D-Druckzeit und Endmontage
3D-Druckzeit und Endmontage
3D-Druckzeit und Endmontage
3D-Druckzeit und Endmontage

Um die Montage abzuschließen, nachdem sichergestellt wurde, dass nach dem Löten alles noch funktionierte, war es an der Zeit, das Gehäuse dafür in 3D zu drucken. Ich begann damit, die Abmessungen auszumessen und das Modell in Fusion 360 zu erstellen, es sei denn, Sie haben es geschafft, Ihr Modell so klein oder gleich groß wie meines zu machen, müssen Sie möglicherweise das Fusion 360-Modell optimieren. Ansonsten sind die STLs für die Gehäuseober- und -unterseite sowie die Tastenfelder druckfertig. Ich habe Cura zum Schneiden mit einer Auflösung von 0,1 mm, 20% Infill, ABS-Filament und aktiviertem "Print Thin Walls" verwendet. Stellen Sie sicher, dass dies aktiviert ist, da sonst die dünne Verbindung, die die beiden Gehäusehälften ausrichtet, nicht gedruckt wird.

STLs und Fusion 360-Dateien befinden sich auf GitHub.

github.com/Luigi-Pizzolito/ESP8266-Temperatu…

Nach dem Drucken war es nur ein Fall (Wortspiel beabsichtigt), alles hineinzustopfen und mit Sekundenkleber zu verschließen. Es sitzt sehr eng und erfordert viel Geduld. Ich empfehle etwas wie Scotch Weld, weil es etwas dicker ist, Sekundenkleber dazu neigt, sehr dünn zu sein und alles abzudecken und überall zu kleben (einschließlich Finger).

Schritt 15: Abschließen

Vollständig
Vollständig
Vollständig
Vollständig
Vollständig
Vollständig

Da haben Sie es, einen absolut winzigen WiFi-fähigen Temperaturlogger. Viel Glück, wenn Sie versuchen, Ihre eigenen zusammenzubauen und viel Geduld, um diese Dinge klein, aber dennoch funktionsfähig zu machen.

Empfohlen: