Inhaltsverzeichnis:

Totoro-Projekt - IoT & MQTT & ESP01 - Gunook
Totoro-Projekt - IoT & MQTT & ESP01 - Gunook

Video: Totoro-Projekt - IoT & MQTT & ESP01 - Gunook

Video: Totoro-Projekt - IoT & MQTT & ESP01 - Gunook
Video: Totoro project - IoT - 2024, November
Anonim
Totoro-Projekt - IoT & MQTT & ESP01
Totoro-Projekt - IoT & MQTT & ESP01
Totoro-Projekt - IoT & MQTT & ESP01
Totoro-Projekt - IoT & MQTT & ESP01

Das Totoro-Projekt ist ein schönes IoT-Projekt, das Sie in vielen anderen Formen kopieren können.

Mit dem ESP01-Board können Sie mit dem MQTT-Protokoll den Status der Schaltfläche an den MQTT-Broker (in meinem Fall AdafruitIO) übermitteln.

Eine nützliche Anleitung für MQTT und Adafruit:

Sie können jeden beliebigen MQTT-Broker verwenden und dasselbe für die Schaltflächenfunktion.

Wie funktioniert es?

Jedes Gerät im Netzwerk ist mit dem MQTT Broker verbunden und liest den Kanal namens "love_box".

Wenn Sie die Taste an einem Gerät drücken, sendet es eine Nachricht auf dem Kanal und die anderen Geräte blinken die LED. Bis Sie die Taste nicht drücken, blinkt das Gerät.

Mit diesem System können Sie ein kleines "Blare" an andere Geräte senden.

Schritt 1: Die Materialien

Die Materialien
Die Materialien
Die Materialien
Die Materialien
Die Materialien
Die Materialien

Um dieses Projekt zu erstellen, benötigen Sie einige Dinge:

  1. ESP01-Platine

    Nützlich - Der Programmierer für ESP01 (DIY)

  2. 3D-Modell

    1. Totoro - https://goo.gl/n3mAsi -
    2. Meshmixer - https://goo.gl/qqMzh - zum Modellieren beliebiger 3D-Modelle
  3. Elektronische Bauteile

    1. Spannungsregler LM317
    2. Widerstände: 150 Ohm, 270 Ohm, 10 K und 68 Ohm.
    3. Kondensatoren: 10uF
    4. LED - oder interne LED -
    5. Mini-Druckknopfschalter
  4. Lot
  5. Protoboard
  6. Buchsenleisten
  7. Transparentes 3D-Filament
  8. Energieversorgung

    BNC-Anschluss - https://goo.gl/DrD8k2 -

  9. Einige Drähte

Schritt 2: Machen Sie das Protoboard

Mach das Protoboard
Mach das Protoboard
Mach das Protoboard
Mach das Protoboard
Mach das Protoboard
Mach das Protoboard
Mach das Protoboard
Mach das Protoboard

Die Leistung für den Vorstand:

Nehmen Sie das Protoboard und löten Sie die Komponenten gemäß dem ersten Bild.

Diese Konfiguration ermöglichte es dem LM317 - https://goo.gl/VtzNz -, für den ESP01 etwa 3,4 Volt zu erzeugen.

Frage: Warum kann ich den LM7805 nicht verwenden?

Antwort: Die LM780x-Serie funktioniert nicht unter 5 Volt und kann keine 3,3 Volt erzeugen.

Wenn Sie fertig sind, überprüfen Sie die Ausgangsspannung mit dem Multimeter. Es muss ungefähr 3,4 Volt und 4,3 Volt betragen.

Für die Stromversorgung können Sie ein 5V-Netzteil oder größer verwenden. Ich empfehle Ihnen nicht mehr als 9 Volt zu verwenden, da es zu viel Wärme abgibt - Verlustleistung - !

Die Tafel:

Das ESP01 ist ein Board der Serie ESP, es ist klein und praktisch, aber nicht sehr benutzerfreundlich.

Denken Sie daran, dass Sie die Arduino-Pins nicht verwenden können, um direkt mit dem ESP01 zu kommunizieren, da es sich um eine 3,3-Volt-Pins-Toleranz handelt.

Es ist ein sehr nützlicher Programmierer zum Programmieren des ESP01 mit einem FTDI:

Verwenden Sie das zweite Bild als Richtlinie und erinnern Sie sich an spezielle Pin-Funktionen, drittes Bild, die in der obigen Anleitung zu sehen sind.

Für weitere Informationen lesen Sie die 1°-Schritte dieser Anleitung:

Wenn Sie Italiener sind, können Sie meine Anleitung für das ESP01 und FTDI DIY lesen:

Beende das Protoboard:

Das vierte Bild ist das fertige Projekt auf dem Protoboard.

Ich empfehle dringend die Buchsenleisten, um das Board mit dem Protoboard zu verbinden. Falls etwas schief geht, können Sie ein anderes Board wieder anschließen.

Schließen Sie die Taste und ihren Widerstand nicht an, wir werden es danach tun.

Schritt 3: MQTT-Broker - Adafruit IO

MQTT-Broker - Adafruit IO
MQTT-Broker - Adafruit IO
MQTT-Broker - Adafruit IO
MQTT-Broker - Adafruit IO

Der MQTT Broker ist ein "Server" für alle Ihre Nachrichten, von und zu den Geräten. Schauen Sie sich das erste Bild an.

Weitere Informationen finden Sie in diesem nützlichen Leitfaden:

In meinem Fall verwende ich das Adafruit IO, aber Sie können jeden beliebigen MQTT-Broker verwenden.

Gehen Sie zum Adafruit IO und führen Sie die Registrierung durch.

Jetzt müssen Sie ein neues Dashboard erstellen und:

  • Feed hinzufügen - https://goo.gl/z2Npto -

    Für meinen Code ist "love_box"

  • Blöcke hinzufügen – https://goo.gl/YJsCqX –

    • Momentary Button: Link zu "love_box" mit Press Value = 1 und Release Value = 0
    • Liniendiagramm: Link zu "love_box" mit mit Y-Axis Minimum = 0 und Y-Axis Max = 2

Am Ende haben Sie so etwas wie das zweite Bild.

Frage: Warum ist der Name "love_box" im Dashboard so wichtig?

Antwort: Sie haben im MQTT-Broker - Ada IO - den Kanal "love_box" erstellt, und wenn Sie im Code einen anderen Kanal verwendet haben, funktioniert MQTT nicht.

Der letzte Schritt auf dem MQTT Broker – Ada IO – ist der „AIO KEY“. Klicken Sie im Dashboard auf die kleine Taste oben rechts.

Kopieren Sie nun den "Username" und den "Active Key" und schreiben Sie sie auf den Arduino Code.

Schritt 4: Arduino-Code

Arduino-Code
Arduino-Code
Arduino-Code
Arduino-Code

Installieren Sie ESP Core für Arduino IDE:

Die Hauptanleitung ist diese: https://goo.gl/yAqlU4 und folgen Sie der "Installation mit Boards Manager".

Sehen Sie sich nun das erste Bild an. Die schwarze Version von ESP01 hat eine Flash-Disk-Größe von 1 MB und die blaue Version hat 512 KB. Was bedeutet? Schauen Sie sich das zweite Bild an, Sie müssen die richtige "Flash-Größe" auswählen.

Der Arduino-Code befindet sich in diesem Repository: Code viel klar zu lesen.

Denken Sie daran, zu bearbeiten:

  • AIO_USERNAME
  • AIO_KEY
  • Wifi_Nummer

Wenn Sie sich entschieden haben, den Kanal "Adafruit_MQTT_Publish" und "Adafruit_MQTT_Subscribe" zu bearbeiten, müssen Sie die gleichen Zeilen und den Aufruf im Code bearbeiten.

Schritt 5: Meshmixer und 3D-Druck

Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck
Meshmixer und 3D-Druck

3D-Modell

Für mein Projekt benötige ich ein 3D-Modell von Totoro.

Ich habe es auf thingiverse gefunden, unter diesem Link:

Sie können jedes gewünschte 3D-Modell verwenden, die nächsten Schritte sind die gleichen.

Hülse

Es ist Zeit, Meshmixer zu installieren. Mit diesem leistungsstarken Tool können Sie die Shell für Ihr Projekt erstellen.

Importieren Sie in Meshmixer die Totoro-STL und verwenden Sie das Hollow-Tool:

Denken Sie im selben Werkzeug daran, ein Escape Holes auf der Rückseite zu machen.

Jetzt müssen Sie das Modell mit dem Plane Cut-Tool in zwei Hälften schneiden:

Verwenden Sie die Export-Schaltfläche, um den unteren Teil zu exportieren.

Am Ende müssen Sie das Ohr abschneiden. Wählen Sie das Ohr aus und verwenden Sie das separate Werkzeug – fünf Bilder –.

Verwenden Sie die Export-Schaltfläche, um das Ohr zu exportieren.

Kehren Sie zum Half-Top-Modell zurück und verwenden Sie das Erase & Fill-Tool: https://goo.gl/d4LR76 - six image -.

3D-Druck

Ich ziehe es vor, die Stücke einzeln zu drucken, denken Sie daran, das transparente 3D-Filament zu verwenden!

Schritt 6: Montage

Montage
Montage
Montage
Montage
Montage
Montage
Montage
Montage

Bohren Sie ein Loch oben auf den Kopf. Dieses Loch ist notwendig, um in den Knopf zu stecken.

Blockieren Sie die Taste mit dem Heißkleber und testen Sie die Verbindung mit einem Multimeter im Durchgangsmodus.

Nehmen Sie das Ohr und fügen Sie ein kleines Stück unten hinzu, indem Sie Hot Blue oder Super Attack verwenden. Schneiden Sie das Stück ab, wenn es zu hoch ist.

Jetzt können Sie die Taste und ihren Widerstand gemäß dem Schema in Schritt 2 anschließen.

Erster Test

Denken Sie daran, das 3D-Modell nicht zu schließen, bevor Sie die korrekte Funktion getestet haben!

Drücken Sie die Taste am Adafruit IO und die interne LED muss blinken, bis Sie die Taste am Ohr gedrückt haben.

Wiederholen Sie den Test mit dem Knopf am Ohr.

Schritt 7: Bereit zu gehen

Image
Image
Bereit zu gehen
Bereit zu gehen

Schließlich ist dies das Endergebnis.

- Frage: Haben Sie die interne LED oder die externe rote LED verwendet?

- Antwort: In diesem Bild und Video habe ich die interne LED verwendet. Zur besseren Verdeutlichung ist die rote LED die Power-LED - man kann sie nicht ausschalten - und die blaue LED ist die interne LED. Die interne LED und die externe LED sind in meinem Schaltplan der gleiche Pin.

- Frage: Kann ich es im unbekannten Netzwerk verwenden?

- Antwort: Nein, das können Sie nicht. Sie müssen das ESP01 neu programmieren, da dieses Board keinen Platz für OTA hat.

Viele Infos zum OTA:

Aber Sie könnten dies dick machen: Fügen Sie eine spezielle Verbindungs-ID und ein Passwort für Ihren persönlichen Hotspot auf Ihrem Telefon hinzu!

Empfohlen: