Inhaltsverzeichnis:

Automatische Hühnerzufuhr - Gunook
Automatische Hühnerzufuhr - Gunook

Video: Automatische Hühnerzufuhr - Gunook

Video: Automatische Hühnerzufuhr - Gunook
Video: Unglaubliche Hühner Farm! 2024, Juli
Anonim
Automatische Hühnerfütterung
Automatische Hühnerfütterung

Vielleicht hattest du dieses Gefühl schon, du bist auf dem Weg zum Job und denkst dann darüber nach, wie du vergessen hast, deinen Hühnern auch ein bisschen Frühstück zu geben. Ich denke, Sie können dann wahrscheinlich eine automatische Hühnerfütterung verwenden! Mit diesem IoT-Gerät frühstücken Ihre Hühner immer pünktlich!

Bevor wir mit dem Bau dieses großartigen Dings beginnen, werde ich mich zuerst vorstellen. Ich bin Bertil Vandekerkhove (ich weiß, es ist ein seltsamer Name, aber hör einfach auf Google Translate. Es macht die Arbeit fast perfekt) und ich bin Student bei Howest und studiere NMCT! Dieses instructable ist eine Schritt-für-Schritt-Anleitung, wie ich mein Abschlussprojekt der ersten Jahre baue. Ich hoffe es gefällt euch und lasst uns loslegen!

Schritt 1: Beschaffung der erforderlichen Materialien

Besorgen der erforderlichen Materialien
Besorgen der erforderlichen Materialien

In der obigen Liste sehen Sie alle Materialien, die für dieses Projekt benötigt werden.

Schritt 2: Aufbau des Gehäuses

Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses
Bau des Gehäuses

Bevor wir das Gehäuse tatsächlich bauen können, müssen wir etwas Material besorgen, aus dem wir es bauen können. Ich verwende 8mm MDF, weil es ziemlich billig und einfach zu bedienen ist. Wenn Sie dies nachbauen möchten, können Sie eine beliebige Holzart auswählen oder sogar aus Metall herstellen. Aber stellen Sie sicher, dass die Maße für Ihre Holzstärke korrekt sind.

Die benötigten Holzplatten sind (in cm):

  • 2 x (100, 8 x 44, 6) - Seitenwände
  • 1 x (50, 8 x 100) - Rückwand
  • 1 x (50 x 80) - Frontplatte
  • 1 x (50 x 40) - innere Frontplatte
  • 1 x (51, 6 x 50) - Deckplatte
  • 2 x (3,6 x 8) - kleinere Seitenwände
  • 1 x (8 x 51, 6) - kleinere Frontplatte
  • 1 x (11, 4 x 49, 8) - Planke für die Waage
  • 1 x (50 x 20) - Frontblende für Regal
  • 2 x (50 x 25) - Trichter
  • 2 x (30 x 35) - Trichter
  • 1 x (50 x 38) - Deckplatte für Regal
  • 1 x (18 x 5) - Ablage für Motor

Und dann brauchen wir für den Foodslide (in cm):

  • 1x (30x16)
  • 2x (20x16)
  • 1x (30x21, 6)

Wir beginnen mit den Seitenwänden, befestigen zwei Hilfsblöcke pro Platte. Auf der Oberseite der Platte platzieren Sie den Hilfsblock auf 13 cm von der Seite und auf der Unterseite auf 8 cm von der Seite. Wiederholen Sie dies für die andere Seitenwand

Nehmen Sie danach die Rückwand und fügen Sie in den vier Ecken einen Hilfsblock hinzu.

Nehmen Sie nun die Seitenwände und die Rückwand und schrauben Sie diese mit einigen 3,5 mm Schrauben zusammen, danach schrauben Sie die Regalwände mit dem unteren Hilfsblock fest. Nehmen Sie dann die innere Frontplatte und schrauben Sie sie in die oberen Hilfsblöcke. Wenn Sie jetzt alles richtig gemacht haben, sollte es wie in Bild 3 aussehen.

Danach machen wir den Trichter für das Essen. Nehmen Sie die rechten Platten und sägen Sie sie in Dreiecke, die 50x25 Platten müssen 50x24 Dreiecke und die 30x35 Platten 30x32 Dreiecke sein. Achten Sie darauf, dass die Dreiecke nicht in einer Spitze enden, sondern mit einer 2cm-Seite.

Um den Trichter zu machen, stellen Sie die Stücke nebeneinander und halten Sie sie mit etwas Klebeband zusammen.

Um den Trichter im Gehäuse zu befestigen, befestigen Sie einige Hilfsblöcke auf der Innenseite 22 cm von oben, wie in Abbildung 7 gezeigt. Danach lassen Sie den Trichter herunter und schrauben ihn in die Hilfsblöcke. Sie können die Lücken mit etwas Klebeband füllen.

Dann nehmen Sie das Motorregal, das PVC-Rohr und den Motor selbst. Positionieren Sie das Loch des PVC-Rohrs unter dem Trichter und befestigen Sie es mit einigen Kabelbindern am Regal. Machen Sie dasselbe für den Motor. Verwenden Sie danach einige Hilfsblöcke, um das Regal an der Rückwand zu befestigen.

Danach nehmen Sie die Paneele, um den Foodslide zu machen, und befestigen Sie die Rückwand davon am Motorregal und die Bodenplatte am Gehäuse.

Nehmen Sie nun die große Frontplatte und befestigen Sie sie mit einigen Scharnieren am Gehäuse und installieren Sie einen Magnetverschluss, dasselbe für die obere Platte.

Schritt 3: Machen Sie die Skala

Machen Sie die Skala
Machen Sie die Skala
Machen Sie die Skala
Machen Sie die Skala

Um zu messen, wie viele Lebensmittel im Futterautomaten noch vorhanden sind, benötigen wir eine Waage aus einer Wägezelle. Nehmen Sie die Wägezelle und schrauben Sie sie in ein kleines Stück Holz und dann nehmen Sie die Waage und befestigen Sie sie mit einigen Schrauben und Muttern an der anderen Seite der Wägezelle. Stellen Sie sicher, dass es zentriert und nivelliert ist. Montieren Sie danach die Waage in das Gehäuse und verwenden Sie die kleinere Seiten- und Frontplatte(n) drumherum.

Schritt 4: Einrichten des Raspberry PI (RPi)

Um das Rpi zu verwenden, benötigen Sie ein Betriebssystem für das RPi, ich habe mich für Rapsbian entschieden. Laden Sie die Datei von der Website herunter und verwenden Sie Etcher, um sie auf die SD-Karte zu übertragen. Danach gehen Sie auf die SC-Karte und suchen nach der Datei "cmdline.txt" und fügen am Ende der Zeile hinzu: "ip=169.254.10.1". Dann können Sie Putty verwenden, um eine SSH-Verbindung mit dem RPi herzustellen, indem Sie 169.254.10.1 in Putty unter Hostname eingeben und auf Öffnen klicken. Wenn Sie Ihr RPi zum ersten Mal booten, müssen Sie sich mit den nächsten Zugangsdaten anmelden: Benutzername = pi und Passwort = Himbeere.

Um sich mit Ihrem Heimnetzwerk zu verbinden, müssen Sie den folgenden Code eingeben:

sudo -i

echo "Passwort" | wpa_passphrase „SSID“>> /etc/wpa_supplicant/wpa_supplicant.conf

Geben Sie sudo nano /etc/wpa_supplicant/wpa_supplicant.conf ein und prüfen Sie, ob Ihr Netzwerk vorhanden ist.

sudo wpa_cli

Schnittstelle wlan0

Scan

neu konfigurieren

Schließen Sie wpa_cli mit quit oder Strg+D.

Prüfen Sie, ob Sie eine gültige IP-Adresse haben mit:

ip addr show dev wlan0

Zum Abrunden testen Sie Ihre Verbindung mit:

wget google.com

Schritt 5: Herstellung der Schaltung

Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen
Den Kreislauf machen

In den obigen Bildern sehen Sie das Layout der Printboards, stellen Sie sicher, dass Sie nichts kürzen, wenn Sie diese erstellen. Ich habe mich entschieden, den T-Schusser, den DRV8825 und den HX711 auf Buchsenleisten zu setzen, damit Sie sie einfach austauschen können, wenn dies erforderlich sein sollte, dies jedoch nicht erforderlich ist.

Schritt 6: HX711

HX711
HX711

Um die Messung der Wägezelle zu erhalten, müssen Sie einen Gewichtssensor verwenden. Ich benutze den HX711.

Anschlüsse für den HX711:

  • E+: rotes Kabel.
  • E-: schwarzes Kabel.
  • A+: weißes Kabel.
  • A-: grünes Kabel.
  • VCC: 5V.
  • SCK: GPIO22.
  • DOUT: GPIO23.
  • GND: GND.

Nachdem Sie alles angeschlossen haben, müssen Sie die Waage zuerst kalibrieren. Verwenden Sie die Klasse HX711 und dann den folgenden Code:

hx = HX711(23, 24)hx.set_reading_format("LSB", "MSB") #hx.set_reference_unit(327) -> dies muss im Kommentar stehen hx.reset() hx.tare() val = hx.get_weight (5) sleep(0.5) hx.power_down() hx.power_up() print(val)

Lassen Sie nun den Code laufen und legen Sie etwas auf die Waage. Stellen Sie sicher, dass Sie das genaue Gewicht kennen. Warten Sie, bis Sie etwa 20 Werte haben, und nehmen Sie dann den Durchschnitt davon. Dann dividieren Sie diese Zahl durch das Gewicht des verwendeten Artikels. Tragen Sie nun diese Zahl in hx.set_reference_unit(number) ein und entkommentieren Sie sie. Testen Sie es, indem Sie verschiedene Gegenstände auf die Waage legen.

Schritt 7: Schrittmotor

Schrittmotor
Schrittmotor

Natürlich brauchen wir etwas Elektronik, damit das ganze System funktioniert. Zur Ansteuerung des Schrittmotors benötigen wir einen Schritttreiber, ich habe mich für den DRV8825 entschieden.

Verbindungen zum DRV8825:

  • VMOT: +12V (vom DC-DC-Wandler kommend).
  • GND: GND (vom DC-DC-Wandler kommend).

Stellen Sie sicher, dass Sie einen Kondensator zwischen diesen beiden platzieren.

  • 2B: rotes Stepperkabel.
  • 2A: blaues Stepperkabel.
  • 1B: schwarzes Stepperkabel.
  • 1A: grünes Stepperkabel.
  • FEHLER: Sie können dies unverdrahtet lassen, aber auch an 5V hängen.
  • GND: GDN (kommt vom Raspberry PI (RPi)).
  • ENABLE: kein Draht erforderlich.
  • MS1-MS2-MS3: kein Kabel erforderlich.
  • RESET - SLEEP: aneinander anschließen und dann an die 3, 3V.
  • SCHRITT: GPIO20.
  • DIR: GPIO21.

Bevor Sie alles anschließen, schließen Sie einfach VMOT+GND, GND an Rpi, RESET-SLEEP und STEP-DIR an. Wir müssen zuerst die Vref für den Stepper-Treiber einstellen. Die Vref muss die Hälfte des Stroms sein, den der Schrittmotor benötigt. Bei diesem Motor sind es ca. 600mV, messen Sie die Spannung und die kleine Schraube und drehen Sie sie auf ca. 600mV. Danach können Sie die anderen Drähte anschließen.

Schritt 8: 3D-Druckturbine

3D-Druckturbine
3D-Druckturbine

Um das Futter vom Reservoir zum Futterplatz zu schieben, benötigen Sie diese Turbine. Für die Leute, die keinen Zugang zu einem 3D-Drucker haben, können Sie immer einen 3D-Hub verwenden, wie diesen -> HUB

Schritt 9: MySQL installieren

Zur Speicherung der Daten aus dem System ist eine Datenbank integriert. Damit die Datenbank funktioniert, müssen wir zuerst MySQL auf dem RPi installieren.

Geben Sie die folgenden Befehle in Ihre Putty-Verbindung ein:

sudo apt-Update

sudo apt install -y python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

Testen Sie, ob Ihre MariaDB funktioniert mit:

sudo systemctl status mysql

Danach werden wir mit den folgenden Befehlen einige Benutzer in unserer Datenbank erstellen:

BENUTZER ERSTELLEN 'project-admin'@'localhost' IDENTIFIZIERT DURCH 'adminpassword';

BENUTZER ERSTELLEN 'project-web'@'localhost' IDENTIFIZIERT DURCH 'webpassword';

CREATE DATABASE-Projekt;

GEWÄHLE ALLE PRIVILEGIEN FÜR project.* an 'project-admin'@'localhost' WITH GRANT OPTION;

GRANT SELECT, INSERT, UPDATE, DELETE ON project.* TO 'project-web'@'localhost';

UPDATE mysql.user SET Super_Priv='Y' WHERE user='project-web' AND host='%';

Flush-Privilegien;

Jetzt ist die Datenbank vorhanden und wir können die Datenbank mit den erforderlichen Tabellen und gespeicherten Prozeduren füllen.

Erster Typ:

sudo -i

und dann:

mariadb

Kopieren Sie danach den Code in Projectdb.sql und fügen Sie ihn in mariadb ein.

Wenn dies funktioniert, machen Sie dasselbe für die anderen drei.sql-Dateien und beenden Sie mit:

Flush-Privilegien;

Wenn alles richtig gelaufen ist, ist Ihre Datenbank jetzt einsatzbereit!

PS: Wenn etwas nicht funktioniert, denk dran… Google ist dein Freund;-) !

Schritt 10: Installieren des Codes

Jetzt können wir endlich den Code auf dem RPi installieren, den Code von github herunterladen und mit Pycharm auf dem RPi installieren. Ein schönes Tutorial dazu findest du hier -> Tutorial.

Holen Sie sich den Code hier: Code

Schritt 11: Wie zu verwenden

  1. Stecken Sie die beiden Stecker ein.
  2. Warten Sie ein wenig, bis der Webserver gestartet ist.
  3. Geben Sie die IP Ihres RPi in den Browser ein.
  4. Auf dem 'Home'-Bildschirm sehen Sie eine Tabelle der gemessenen Lebensmittel.
  5. Auf dem 'Fütterungszeiten'-Bildschirm können Sie die Fütterungszeiten einstellen.
  6. Auf der 'Historie'-Seite können Sie die Einzahlungshistorie einsehen.

Empfohlen: