Inhaltsverzeichnis:

Krokodil-Solarpoolsensor - Gunook
Krokodil-Solarpoolsensor - Gunook

Video: Krokodil-Solarpoolsensor - Gunook

Video: Krokodil-Solarpoolsensor - Gunook
Video: Подарочный кейс-футляр для пистолета (иск. кожа) 2024, Juli
Anonim
Krokodil Solar Pool Sensor
Krokodil Solar Pool Sensor
Krokodil Solar Pool Sensor
Krokodil Solar Pool Sensor
Krokodil Solar Pool Sensor
Krokodil Solar Pool Sensor

Diese Anleitung zeigt, wie man einen ganz speziellen Poolsensor baut, der die Pooltemperatur misst und über WLAN an die Blynk App und an einen MQTT-Broker überträgt. Ich nenne es den "Crocodile Solar Pool Sensor". Es verwendet die Arduino-Programmierumgebung und ein ESP8266-Board (Wemos D1 mini pro).

Was ist das Besondere an diesem Projekt?

  • Die Optik ist einfach toll
  • Völlig unabhängig von Stromquellen (Solarpanel speist den LiPo-Akku)
  • ESP8266 WLAN-verbundener Sensor mit geringem Stromverbrauch
  • Ziemlich hochpräziser Temperatursensor
  • Datenübertragung von Temperatur und Spannung an die Blynk APP für Ihr Mobiltelefon
  • Sendet auch einen "zuletzt aktualisierten" Zeitstempel an die Blynk APP
  • Datenübertragung von Temperatur und Spannung an einen MQTT-Broker
  • Celsius und Fahrenheit umschaltbar
  • Kann umprogrammiert werden

Ihr Kenntnisstand: Mittelstufe bis Erfahren

Lieferungen

Für diesen Build müssen Sie wissen, wie Sie arbeiten mit:

  • Arduino IDE (Programmierumgebung)
  • ein Lötkolben
  • ein Bohrer
  • ein scharfes Messer
  • Epoxidklebstoff
  • Heißkleber
  • industrieller Sprühschaum
  • Sprühfarbe

Schritt 1: Benötigte Komponenten

Benötigte Komponenten
Benötigte Komponenten
Benötigte Komponenten
Benötigte Komponenten

Diese Dinge werden benötigt, um diesen schönen Poolsensor zu bauen:

  • Den Krokodilkopf (geschäumter Kunststoff) finden Sie hier: Amazon: Crocodile Head
  • ODER alternativ: Bootskörper (Aliexpress). Siehe dazu Schritt 6.
  • ESP8266 Wemos D1 mini pro: (Aliexpress)
  • Sonnenkollektor 0,25W 45x45mm: (Aliexpress)
  • **BEARBEITEN nach einem Jahr Nutzung: Ich empfehle dringend, einen stärkeren Akku wie einen 18650 zu verwenden (Beispiel: Aliexpress)
  • Batterielademodul TP4056: (Aliexpress)
  • Wasserdichter Temperatursensor DS 18b20: (Aliexpress)
  • 22 AWG-Draht (Aliexpress)
  • Prototyp Leiterplatte 5x7cm (Aliexpress)
  • 220 Ohm und 4,7 kOhm Widerstände
  • ein kurzes USB-zu-MicroUSB-Kabel

zusätzlich:

  • Isolierschaum-Dichtstoff @ Baumarkt oder hier: (Amazon)
  • Wasserfeste Farbe @ Baumarkt oder hier: (Amazon)
  • Füller Grundierung Spray @ Baumarkt oder hier: (Amazon)
  • Flüssiges Epoxid für eine wasserdichte Beschichtung auf dem Baumarkt
  • Heißkleber

Möglicherweise müssen Sie einen 3D-Drucker verwenden, um eine wasserdichte Abdeckung für den USB-Anschluss zu drucken.

Schritt 2: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Ich dachte, es ist am einfachsten, mit einigen dieser DIY-Universal-Prototyp-Leiterplatten zu beginnen, und ich fand, dass ein 5x7cm für diesen Zweck einfach perfekt ist.

Bauschritte:

  1. Bereiten Sie den D1 mini pro für die Verwendung einer externen Antenne vor:

    1. 0 Ohm Widerstand neben Keramikantenne ablöten
    2. 0 Ohm Widerstand nach unten drehen und Anschluss an externe Antenne verlöten (gute Erklärung hier - Step5)
  2. Platzieren Sie die Teile und entscheiden Sie sich für das Layout auf der Prototypenplatine, bevor Sie mit dem Löten beginnen
  3. Löten Sie die Stifte an den D1 Mini Pro
  4. Löten Sie die Abstandsstifte an die Prototypenplatine
  5. Löten Sie die Pins für die Ladeplatine an die Prototyp-Platine
  6. Löten Sie die Ladeplatine an die Pins
  7. Schneiden Sie das Kabel des Temperatursensors auf eine Länge von 20 cm
  8. Bitte beachten Sie das Bild oben zum Anschließen des Temperatursensors
  9. Löten Sie das Kabel an das Solarpanel
  10. Löten Sie die Solarpanel-Kabel NOCH NICHT an die Platine - diese müssen zuerst auf den Kopf des Krokodils geklebt werden
  11. Folgen Sie dem obigen Fritzing-Schema, um alle verbleibenden Verbindungen mit der Platine zu verlöten
  12. Sobald alle Komponenten verbunden und verlötet sind, verwenden Sie etwas Heißkleber, um den Akku zu befestigen. Bitte beachten Sie: Um den ESP8266 in den Ruhezustand zu versetzen, ist es notwendig, Pin D1 mit Pin RST zu verbinden. Manchmal verursacht der D1 mini pro Probleme mit der seriellen Schnittstelle, wenn Port D0 und RST verbunden sind. Der von mir verwendete (siehe Aliexpress-Link oben) hatte dieses Problem nicht. Wenn dieses Problem auftritt, müssen Sie möglicherweise einen Jumper oder einen Schalter verwenden, um die beiden Pins zu trennen, um neuen Code hochzuladen. Aber (!) dann hat man nach dem Versiegeln des Krokodilkopfes keine Chance zum Umprogrammieren. In diesem Fall brauchen Sie den USB-Port auch nicht nach außen zu bringen (z. B. um ein drittes Loch zu bohren).

Schritt 3: Hardware Teil 1 (Vorbereitung des Krokodilkopfes)

Hardware Teil 1 (Vorbereitung des Krokodilkopfes)
Hardware Teil 1 (Vorbereitung des Krokodilkopfes)
Hardware Teil 1 (Vorbereitung des Krokodilkopfes)
Hardware Teil 1 (Vorbereitung des Krokodilkopfes)
Hardware Teil 1 (Vorbereitung des Krokodilkopfes)
Hardware Teil 1 (Vorbereitung des Krokodilkopfes)

In diesem Schritt bereiten wir die Rückseite des Krokodilkopfes vor, um genügend Platz für die Elektronik zu bekommen. Und wir bohren ein paar Löcher für die Antenne, das Solarpanel und den USB-Port. Mein Projekt habe ich zuerst ohne USB-Port geplant. Aber dann dachte ich, dass es für mich unmöglich wäre, einige Software-Updates durchzuführen, wenn das Krokodil wieder versiegelt wurde. Daher habe ich mich entschieden, ein kurzes USB-Kabel Micro-USB auf USB zu verwenden, um einen externen Zugriff auf das ESP8266-Board zu ermöglichen. Nächste Schritte:

  • Schneiden Sie mit einem scharfen Messer etwas mehr als 7x5 cm (Größe Ihres Prototypenboards) von der harten Oberfläche ab
  • Mit einem Löffel den weicheren Schaum von innen entfernen
  • Achte nur darauf, dass du genug Platz für deine Kabel und dein Board hast
  • Probieren Sie aus, ob es passt und später noch Platz zum Abdecken ist

Bohren Sie nun zwei oder drei Löcher in den Kopf:

  • für das Solarpanel
  • für die Antenne
  • (optional) für den USB-Port zur Ermöglichung einer späteren Programmierung

Verwenden Sie 2-Komponenten-Epoxidharz (5 Minuten), um diese Löcher wieder zu kleben und zu versiegeln. Verwenden Sie genug Epoxidkleber! Stellen Sie sicher, dass es danach wasserdicht ist!

  1. Kleben Sie das Solarpanel-Kabel an den Kopf und versiegeln Sie das Loch richtig
  2. Kleben Sie das Solarpanel zwischen die Augen
  3. Kleben Sie die Antennenbuchse auf den Kopf und verschließen Sie das Loch richtig
  4. Kleben Sie den USB-Stecker und versiegeln Sie das Loch richtig

Um eine Korrosion des USB-Ports durch Wasser zu vermeiden, habe ich eine kleine Schutzkappe 3D-gedruckt.

Schritt 4: Software

Software
Software
Software
Software
Software
Software

Sie benötigen eine laufende Arduino-Umgebung. Falls nicht, überprüfen Sie dies bitte.

Das Hardware-Setup ist einfach (auf meinem Mac):

LOLIN(WEMOS) D1 mini Pro, 80 MHz, Flash, 16M (14M SPIFFS), v2 Geringerer Speicher, Deaktivieren, Keine, Nur Skizze, 921600 auf /dev/cu. SLAB_USBtoUART

Holen Sie sich den Arduino-Code hier: Arduino-Code bei Github

Der Code sendet die Temperatur und die Spannung der Batterie an Blynk. Laden Sie einfach die Blynk-App auf Ihr Mobiltelefon und erstellen Sie ein neues Projekt. Blynk sendet Ihnen ein Auth Token für dieses Projekt. Geben Sie dieses Token in die Datei Settings.h ein. Die Standardeinstellungen werden gesendet

  • die Temperatur auf VIRTUAL PIN 11
  • die Spannung an VIRTUAL PIN 12
  • der zuletzt aktualisierte Zeitstempel auf VIRTUAL PIN 13

aber es ist einfach, diese Pins im Code zu ändern. Spielen Sie einfach mit allen Blynk-Widgets mit V11, V12 und V13 herum - es macht Spaß. Wenn Sie neu sind, lesen Sie einfach die Anleitung meines Freundes Debasish - das meiste davon wird dort in Schritt 19 erklärt.

Die Software ist auch für die Verwendung eines MQTT-Brokers vorbereitet.

In der Settings.h gibt es eine globale Variable namens MQTT. Dies muss auf true oder false gesetzt werden, je nachdem, ob Sie MQTT verwenden oder nicht.

In meinem Fall verwende ich einen MQTT-Broker (Orange PI Zero, Mosquitto, Node-Red) und ein Dashboard, in dem alle meine Sensordaten zusammenlaufen. Wenn Sie neu bei MQTT sind, lassen Sie sich von Google bei der Einrichtung helfen.

Wenn Sie mit MQTT vertraut sind, bin ich mir ziemlich sicher, dass Sie den Code verstehen werden.

Schritt 5: Hardware Teil 2 (wieder versiegeln)

Hardware Teil 2 (Wieder versiegeln)
Hardware Teil 2 (Wieder versiegeln)
Hardware Teil 2 (Wieder versiegeln)
Hardware Teil 2 (Wieder versiegeln)
Hardware Teil 2 (Wieder versiegeln)
Hardware Teil 2 (Wieder versiegeln)

In diesem Schritt müssen wir die gesamte Elektronik (Software geladen und getestet) verpacken und den Bauch unseres Krokodils wieder versiegeln. Ich persönlich sehe zwei mögliche Lösungen:

  1. Verwenden Sie ein Acrylglas und kleben Sie es mit Epoxidkleber wasserdicht auf den Bauch. Verwenden Sie für das Temperatursensorkabel einen wasserdichten Kabelkanal (ich bedaure, dass ich diese Option nicht gewählt habe - nach allem, was ich durchgemacht habe, kann ich diesen Weg nur empfehlen.)
  2. Verwenden Sie einen Industrieschaum und füllen Sie die Lücken erneut, dann verwenden Sie wasserfeste Farbe zum Versiegeln. Und beenden Sie es mit Füller und Farbe.

Also habe ich mich für Option 2 entschieden. Die Schritte sind wie folgt:

  1. Solarmodulkabel an die Platine anlöten
  2. Antennenkabel anschließen
  3. Verbinden Sie das USB-Kabel mit der ESP8266-Platine (UND NICHT mit der Ladeplatine)
  4. Drücken Sie alle Kabel und die Platine in das Loch
  5. Lassen Sie 5-10cm des Temperatursensorkabels heraushängen
  6. Verwenden Sie den Industrieschaum, um alle Lücken zu füllen (Achtung - der Schaum dehnt sich stark aus)
  7. Trocknen lassen und den Schaum anschließend mit einem scharfen Messer abschneiden
  8. Verwenden Sie jetzt etwas wasserfeste Farbe (wird verwendet, um Dächer zu reparieren) und streichen Sie es überall an
  9. Lassen Sie es trocknen und verwenden Sie das Spachtelspray, um eine harte Kruste zu erzeugen (Sie müssen dies immer wieder tun)
  10. WICHTIGE BEARBEITUNG (nach einigen Wochen im Wasser): Tragen Sie zwei oder drei Beschichtungen mit flüssigem Epoxid auf, um eine wirklich wasserdichte Beschichtung zu erhalten.
  11. Trocknen lassen – FERTIG!

Schritt 6: Alternativer Build

Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau
Alternativer Aufbau

Da der erste Build mit dem Krokodil immer noch mein Favorit ist, muss ich zugeben, dass ich den falschen Akku gewählt habe (zu schwach). Leider kann ich den Akku nicht mehr austauschen, da er im Krokodilkörper versiegelt ist.

Aus diesem Grund habe ich mich für eine andere Lösung mit einem Boot als Karosserie entschieden, um bei Bedarf besser auf die Elektronik und die Batterie zugreifen zu können.

Änderungen:

  • Shell (https://www.aliexpress.com/item/32891355836.html)
  • LiIon-Akku 18650
  • 3D-gedruckter Einsatz zur Montage der beiden Platinen (ESP8266 und Lademodul)

Schritt 7: Anhang: Zusätzliche Anzeigen/Sensoren

Anhang: Zusätzliche Anzeigen/Sensoren
Anhang: Zusätzliche Anzeigen/Sensoren
Anhang: Zusätzliche Anzeigen/Sensoren
Anhang: Zusätzliche Anzeigen/Sensoren
Anhang: Zusätzliche Anzeigen/Sensoren
Anhang: Zusätzliche Anzeigen/Sensoren

Wenn Sie die Pooldaten nicht nur in der Blynk-App anzeigen möchten, können Sie sie auch an einen MQTT-Broker pushen. Dadurch können Sie mehrere weitere Möglichkeiten nutzen, um Ihre Pool- (oder andere) Daten auf verschiedenen Geräten anzuzeigen. Eines wäre Node Red Dashboard auf einem Raspberry Pi (siehe Bild oben) oder ein LED-Matrix-Display. Bei Interesse an der LED Matrix finden Sie den Code hier:

Ich habe dieses Projekt übrigens mit der Solar Weather Station kombiniert inklusive einer Zambretti Wettervorhersage aus diesem Projekt:

Die Inspiration zu dieser Solar-Wetterstation kam von meinem indischen Freund Debasish. Hier finden Sie sein anweisbares:

Sensorik-Wettbewerb
Sensorik-Wettbewerb
Sensorik-Wettbewerb
Sensorik-Wettbewerb

Erster Preis beim Sensorik-Wettbewerb