Inhaltsverzeichnis:

Instructables Hit Counter (ESP8266-01) - Gunook
Instructables Hit Counter (ESP8266-01) - Gunook

Video: Instructables Hit Counter (ESP8266-01) - Gunook

Video: Instructables Hit Counter (ESP8266-01) - Gunook
Video: Tutorial For YouTube Subscriber Counter 2024, Juli
Anonim

23.01.2018 Firmware aktualisiert

Vor einiger Zeit habe ich versucht, mit der Instructables-API und einem Arduino Uno mit einem kabelgebundenen Netzwerkschild einen "Instructables Hit Counter" zu erstellen. Mit dem begrenzten RAM des Arduino Uno konnte ich das System jedoch nicht zum Laufen bringen.

Vor einiger Zeit bemerkte ich ein ähnliches Projekt von diytronics mit einer NodeMCU. Das war genau der richtige Startpunkt, um mein Projekt zu wiederholen.

Mit dem WLAN-Modul ESP8266-01 habe ich die verschiedenen verfügbaren Optionen studiert und das System neu gestaltet.

Das erste Problem bei der Verwendung der ESP8266-Module besteht darin, das Gerät so einzurichten, dass es sich mit einem vorhandenen WLAN-Zugangspunkt verbindet. Ich wollte dies nicht mit Code tun, da dazu der Code geändert und in den ESP8266 neu programmiert werden musste. Ich fand die WiFiManager-Bibliothek sehr nützlich und habe die Beispiele verwendet, um die einfachste Methode zum Verbinden des EP8266 mit einem WiFi-Netzwerk zu erhalten.

Als nächstes wollte ich nicht jedes Mal Änderungen am Code vornehmen, wenn ich das zu überwachende Instructable ändern wollte. Dafür habe ich den ESP8266 mit einem eingebauten Webserver eingerichtet, um ein einfaches Ändern von Parametern zu ermöglichen.

Schritt 1: Das Design

Das Design
Das Design
Das Design
Das Design

Sie benötigen folgende Komponenten:

  • 1 x ESP8266-01 Modul
  • 1 x max7219 8-stellige 7-Segment-Anzeige
  • 1 x 7805 Spannungsregler
  • 1 x ASM1117 3.3V Spannungsregler

Energieversorgung

Die Stromversorgung des Gerätes erfolgt über ein 12V DC Netzteil. Wir benötigen zwei Vorräte:

  • 5V für das max7219-Display
  • 3.3V für den ESP8266-01

Siehe schematisches Diagramm.

Eine Diode wird verwendet, um das Gerät vor falschen Polaritätsanschlüssen zu schützen, gefolgt vom EIN/AUS-Netzschalter. Die Eingangsspannung wird vom Spannungsregler 7805 auf 5V geregelt. Diese 5 V werden verwendet, um das max7219-Display mit Strom zu versorgen.

Die 5V werden auch verwendet, um die vom ESP8266-01 benötigten 3,3V zu erhalten. Der Regler ASM1117 3.3 wird an den 5V-Regler und nicht an den DC-Eingang angeschlossen. Dies dient dazu, die Wärme zu reduzieren, die vom ASM1117 erzeugt wird, wenn er an eine 12-V-Versorgung angeschlossen wird. Der verwendete ASM1117 3.3 ist ein SMD-Gerät und kann einfach auf ein Stück Vero-Platine gelötet werden.

Da das ESP8266-Modul beim Senden bis zu 300 mA verbrauchen kann, ist jede Spannungsschiene mit einem anständigen Glättungskondensator ausgestattet. Um HF-Rauschen zu eliminieren, sind außerdem an jeder Spannungsschiene 0,1uf Kondensatoren angebracht.

ESP8266-01

Bei begrenzten verfügbaren I/O-Pins sollte darauf geachtet werden, dass der ESP8266 korrekt hochfährt. Damit das ESP8266-01-Modul im richtigen Modus hochfährt, müssen Sie Folgendes tun:

  • CH_PD muss HIGH sein
  • RST muss HIGH sein
  • GPIO muss auf HIGH gezogen werden
  • GPIO2 muss auf HIGH gezogen werden

Dies geschieht mit 10K Pull-Up-Widerständen. Dadurch wird ein korrektes Hochfahren des ESP8266-Moduls sichergestellt.

I/O-Pins

Mein Design benötigte 5 I / O-Pins für Folgendes:

  • 3 Pins für das max7219-Display
  • 1 Pin für die MODE/SETUP-Taste
  • 1 Pin für den Summer

Da der ESP8266 nur vier I/O-Pins zur Verfügung hat, ist ein I/O-Pin kurz. Dafür sind der Summer und die MODE/SETUP-Taste mit einem einzigen I/O-Pin verbunden. Die Software wird verwendet, um den INPUT/OUTPUT-Modus dieses Pins zu steuern.

max7219 Anzeige

Das Display benötigt drei I/O-Pins, aber da der ESP8266 nur 2 Allzweck-I/O-Pins hat, werden auch die Rx- und TX-Pins verwendet. Das bedeutet, dass während der Entwicklung kein Serial Monitor verfügbar ist. Zur Steuerung des Displays werden GPIO1-, Rx- und TX-Pins verwendet.

Summer/Taste

Wenn nur noch ein I/O-Pin übrig ist (GPIO0), werden der Summer und MODE/SETUP mit diesem Pin verbunden, und bei Verwendung von Multiplexing wird der Pin verwendet, um den Tastenstatus zu lesen und den Summer zu ertönen.

Schritt 2: Aufbau der Schaltung

Aufbau der Schaltung
Aufbau der Schaltung
Aufbau der Schaltung
Aufbau der Schaltung

Mit nur wenigen Komponenten wurde die Schaltung auf einem kleinen Stück Vero-Platine aufgebaut. Der SMD ASM1117-Regler wurde auf die Leiterbahnseite der Platine gelötet.

Um den ESP8266-01 anzuschließen, habe ich 2 x 4-Pin-Header verwendet. Dies ermöglicht ein einfaches Entfernen des ESP8266-Moduls zur Programmierung. Ein scharfes Hobbymesser wurde verwendet, um die Vero-Board-Spuren zwischen den ESP8266-Pins zu trennen.

Drähte für Display, Summer und Taster wurden direkt auf die Vero-Platine gelötet.

Schritt 3: Anbringen des Displays am Gehäuse

Anbringen des Displays am Gehäuse
Anbringen des Displays am Gehäuse
Anbringen des Displays am Gehäuse
Anbringen des Displays am Gehäuse
Anbringen des Displays am Gehäuse
Anbringen des Displays am Gehäuse

Ich hatte ein kleines Plastikgehäuse zur Verfügung. Um das Display zu montieren, mache ich zuerst einen Ausschnitt für das Display. Der Ausschnitt wurde kleiner als das Display gemacht und anschließend gefeilt, um sicherzustellen, dass das Display genau in den Ausschnitt passt.

Mit einem permanenten schwarzen Marker wurde das Weiß auf dem Display schwarz gemacht und das Display mit Epoxid verklebt.

Schritt 4: Andere Gegenstände montieren

Montage anderer Artikel
Montage anderer Artikel
Montage anderer Artikel
Montage anderer Artikel
Montage anderer Artikel
Montage anderer Artikel

Die Netzbuchse, der Ein/Aus-Schalter, die Taste und der Summer wurden an der Rückseite des Gehäuses montiert.

Für den Summer habe ich ein 3mm Loch in das Gehäuse gebohrt und den Summer über dieses Loch geklebt. Dadurch wird sichergestellt, dass der Summer ausreichend belastet wird.

Bei allen montierten Komponenten wurde die Verdrahtung zwischen den Komponenten mit dünnem Draht hergestellt.

Schritt 5: Programmierung des ESP8266-01

Programmierung des ESP8266-01
Programmierung des ESP8266-01
Programmierung des ESP8266-01
Programmierung des ESP8266-01

Laden Sie den Code mit Ihrer Methode auf den ESP8266-01 hoch. Zur besseren Übersicht habe ich die verwendeten Bibliotheken aufgeführt.

Bitte beachten Sie, dass ich die LedControl-Bibliothek geändert habe, daher müssen Sie meine LedControlESP8266-Bibliothek verwenden.

Schritt 6: Verbinden mit Ihrem WLAN

Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN
Verbinden mit Ihrem WLAN

Damit der Trefferzähler korrekt funktioniert, müssen wir das Gerät zuerst mit einem WLAN-Zugangspunkt verbinden. Folge diesen Schritten:

  • Schalten Sie das Gerät ein
  • Wenn "Set Net" angezeigt wird, drücken Sie die MODE/SETUP-Taste etwa 2 Sekunden lang
  • Das Display zeigt nun "no con" an
  • Gehen Sie zu Ihrem PC oder Smartphone und wählen Sie die WLAN-Verbindungen
  • Wählen Sie "Instructables Hit Counter"
  • Öffnen Sie Ihren Internetbrowser. Wenn die Konfigurationsseite nicht automatisch geöffnet wird, geben Sie die folgende IP-Adresse ein: 192.168.4.1
  • Klicken Sie auf WLAN konfigurieren
  • Wählen Sie den gewünschten WLAN-Zugangspunkt aus und geben Sie das Passwort für diesen Zugangspunkt ein
  • Geben Sie als Nächstes die IP-Adresse, das Gateway und die Maske gemäß Ihren Anforderungen ein
  • Wenn Sie fertig sind, klicken Sie auf die Schaltfläche Speichern
  • Bei Erfolg erhalten Sie eine Bestätigungsmeldung, dass die Daten gespeichert wurden.
  • Sobald die Verbindung hergestellt ist, zeigt der Hit Counter die aktuell konfigurierten Hits an

Schritt 7: Einrichtung des Trefferzählers

Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers
Einrichtung des Trefferzählers

Sobald die Verbindung hergestellt ist, können die Einstellungen des Trefferzählers über die Webseite des Geräts geändert werden.

Öffnen Sie Ihren Webbrowser und geben Sie die IP-Adresse des Trefferzählers ein.

Trefferzähler

Die Einheit kann für zwei Arten von Trefferzählern eingerichtet werden. Jeder der Zähler muss einzeln eingerichtet werden.

  • Autor-Bildschirmname – Zeigt die Gesamtzahl der Treffer für einen bestimmten Autor an.
  • Instructables ID - Zeigt die Gesamtzahl der Treffer für einen bestimmten Instructable-Treffer an. Weitere Informationen zum Erhalt der ID finden Sie unten auf der Webseite

Anzeige

Das Gerät kann so eingestellt werden, dass es entweder den Autor oder die anweisbaren Treffer anzeigt:

  • Wählen Sie Autor Gesamttreffer, um die Gesamtzahl der Treffer für den Autor anzuzeigen
  • Wählen Sie Instructbles ID Hits, um die Gesamtzahl der Treffer für das Instructable anzuzeigen

Klang

Wählen Sie diese Option, wenn Sie möchten, dass das Gerät bei Änderungen des angezeigten Trefferzählers einen Signalton ausgibt.

Bildschirmhelligkeit

Die Displayhelligkeit kann über die Webseite geändert werden. Geben Sie je nach Anforderung eine Helligkeitsstufe zwischen 0.. 15 ein.

Schritt 8: Verwenden des Instructabes-Trefferzählers

Verwenden des Instructabes-Trefferzählers
Verwenden des Instructabes-Trefferzählers

Einmal angeschlossen, hat das Gerät nicht viele Funktionen. Außer der MODE-Taste gibt es keine weitere Schnittstelle zwischen dem Gerät und dem Benutzer.

Durch Drücken der MODE-Taste ändert sich die Anzeige zwischen den Autoren-Gesamttreffern und den anweisbaren Treffern.

Ich hoffe, Sie haben dieses Instructable genossen.

Grüße

Eric

Empfohlen: