Inhaltsverzeichnis:

IOT Blumentopf-Waage - Gunook
IOT Blumentopf-Waage - Gunook

Video: IOT Blumentopf-Waage - Gunook

Video: IOT Blumentopf-Waage - Gunook
Video: Fluchende Pflanze bauen! Arduino Projekt + Tutorial 2024, Juli
Anonim
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage
IOT Blumentopfwaage

Ich möchte meine IOT-Blumentopfwaage vorstellen, die das Gewicht eines Blumentopfs kontinuierlich erfassen und protokollieren kann. So kann die Bodenfeuchtigkeit direkt erfasst werden. Und wann die Pflanze Wasser braucht, kann man erkennen.

Warum wird mit der Wiegemethode Kapazität oder Widerstand nicht gemessen?

1. Eine Sonde muss in den Topf eingeführt werden, sie kann die Pflanzenwurzel verletzen.

2. Die Messung der Kapazität oder des Widerstands kann keinen direkten Bodenfeuchtigkeitswert erhalten.

Zum Beispiel mein Sinn. 'Stone's Georgia' wiegt 287g, wenn die Erde etwas trocken ist.

Nach dem Gießen wurden es 460 g, die 173 g sind Wasser.

Erstes Bild ist mein Sinn. 'Stone's Georgia', aufgenommen letztes Jahr.

Schritt 1: Wie es funktioniert

Wie es funktioniert
Wie es funktioniert
Wie es funktioniert
Wie es funktioniert

Vor dem Wiegen ist eine klare Operation erforderlich, um Nullpunktdrift oder Temperaturdrift oder ähnliches zu verhindern.

Die Wägezelle wird zwischen Sockelleiste und fester Platte montiert. Ein Ende der beweglichen Platte ist mit einem Scharnier verbunden und das andere Ende befindet sich über einem Exzenterrad.

Das Exzenterrad wird von einem MG995 Servo angetrieben. In der obersten Position steht der Blumentopf auf der beweglichen Platte. Klare Bedienung ist möglich. In der unteren Position steht der Blumentopf auf der festen Platte. Der Wägevorgang kann durchgeführt werden. Um Schäden an der Wägezelle zu vermeiden, steht der Blumentopf höchstens auf der beweglichen Platte. Nodemcu wird verwendet, um die Wägezelle zu lesen, den Server zu steuern und Daten über WIFI mit dem MQTT-Protokoll an den IOT-Server zu senden.

Schritt 2: Sammeln Sie, was Sie brauchen

Sammeln Sie, was Sie brauchen
Sammeln Sie, was Sie brauchen
Sammeln Sie, was Sie brauchen
Sammeln Sie, was Sie brauchen
Sammeln Sie, was Sie brauchen
Sammeln Sie, was Sie brauchen

Hier ist eine Liste von allem, was für dieses Projekt benötigt wird:

1. Waage (mit ihrer Wägezelle)

2. HX711-Modul

3. NodeMCU mit ESP-12E

4. MG995-Servo

5. 5mm dicke ABS-Platine

6. einige 3D-gedruckte Teile

7. etwas Kabel

8. M3 und M4 Schrauben und Muttern

Schritt 3: Machen Sie die Waage

Machen Sie die Waage
Machen Sie die Waage
Machen Sie die Waage
Machen Sie die Waage
Machen Sie die Waage
Machen Sie die Waage

Als Basis der Waage wird eine 200*250*5 mm ABS-Platte verwendet.

Die Wägezelle ist auf der Platine montiert.

Die Fixplatte besteht aus der Originalplatte und einem 3D-gedruckten Teil.

Die bewegliche Platte ist eine 180 * 190 * 5 mm ABS-Platte mit einer weiteren 5 mm ABS-Verstärkungsrippe.

Das Scharnier, der Servohalter, das Exzenterrad ist ein 3D-Druckteil.

Kleben oder schrauben Sie sie.

Eine Sketchup-Datei kann Ihnen sagen, wo Sie Teile platzieren müssen.

Schritt 4: Verkabelung

Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung

Verdrahten Sie sie.

Wenn ESP8266 Deep Sleep verwendet wird, sollten GPIO16 und RST-Pin verbunden sein, keine Verwendung in dieser Anwendung.

Schritt 5: Codierung

Arduino wird verwendet und die HX711-Bibliothek wird verwendet, hier der Link

github.com/bogde/HX711

Nodemcu sendet eine MQTT-Nachricht an einen Domoticz-Server in meinem NAS. Daher wird eine MQTT-Clientbibliothek benötigt.

github.com/knolleary/pubsubclient

Ein Fehler mit der HX711-Bibliothek, d. h. ein Software-Reset, tritt beim Verbinden des MQTT-Servers nach dem Einbinden der HX711-Bibliothek auf. Kommentar "void yield(void) {};" in HX711. CPP kann das Problem lösen.

Ihre SSID-, Passwort- und MQTT-Einstellung sollten vor der Verwendung geändert werden.

const char* ssid = "IHRE SSID";

const char* password = "IHR PASSWORT";

const char* mqtt_domoticz = "IHR SERVER";

Schritt 6: Kalibrierung

Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung

Siehe Anweisungen in der HX711-Bibliothek.

1. Rufen Sie set_scale() ohne Parameter auf.

2. Rufen Sie tare() ohne Parameter auf.

3. Legen Sie ein bekanntes Gewicht auf die Waage und rufen Sie get_units(10) auf.

4. Teilen Sie das Ergebnis in Schritt 3 durch Ihr bekanntes Gewicht. Sie sollten sich über den Parameter informieren, den Sie an set_scale() übergeben müssen.

5. Passen Sie den Parameter in Schritt 4 an, bis Sie einen genauen Messwert erhalten.

Schritt 7: Zusammenfassen

Es ist mein erster Artikel auf Englisch, vielleicht ein paar Fehler.

Einige andere Funktionen können hinzugefügt werden, z. B. Gewichtsanzeige, Bewässerung.

Empfohlen: