Inhaltsverzeichnis:
- Schritt 1: Motor bohren, anschließen und montieren
- Schritt 2: Anbringen des Behälters
- Schritt 3: Machen Sie ein kleines Loch für Candy Thrower
- Schritt 4: Arduino-Setup
- Schritt 5: Dlib-Setup
- Schritt 6: Verbinden des Gesichtserkenners mit Ihrem Roboter
Video: Süßigkeiten-werfender Roboter mit Arduino, recycelten Teilen und Dlib. - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Mit ein paar recycelten Teilen, einem Arduino + Motorschild und der Dlib-Computersoftware können Sie einen funktionierenden Süßigkeitenwerfer mit Gesichtserkennung herstellen.
Materialien:
- Holzrahmen
- Laptop/Computer (vorzugsweise einer leistungsstärker als ein Raspberry Pi!).
- Arduino (Bevorzugt Uno oder eines, das zu Ihrem Motorschild passt.)
- Arduino-Motorschild (ich habe das alte Adafruit-Schild verwendet, wie es hier noch verkauft wird)
- Jede Standard-Webcam
- Kleine Unterlegscheibe
Recycelte Teile:
- Gehäuse (alte Metallbox funktioniert gut.)
- Schrittmotor, Gleichstrommotor aus zerlegtem alten Drucker.
- Altes Druckernetzteil
- Süßigkeitenspender (Großer Joghurtbehälter).
Die Innereien des fertigen Produkts sehen in etwa wie beigefügte Übersicht aus.
Warnung
Stellen Sie sicher, dass Sie das Arduino / Motor-Setup vom Stromnetz trennen, bevor Sie es verkabeln / neu verkabeln. Achten Sie auf die richtige Polarität!
Dies ist ein Projekt auf mittlerer Ebene, das Arduino und Software verwendet, die Sie auf Ihrem Computer installieren oder kompilieren müssen. Die Anweisungen können variieren und wurden auf Ubuntu getestet.
Möglicherweise müssen Sie den Arduino-Code an das von Ihnen verwendete Motorschild anpassen, wenn Sie nicht das alte Adafruit-Motorschild verwenden.
Schritt 1: Motor bohren, anschließen und montieren
Bohren Sie Löcher in das Gehäuse und befestigen Sie den Schrittmotor, damit sich die Webcam oben bewegen und der Spender unten drehen kann.
Schrittmotoren können sich in kleinen Schritten (4 Drähte) bewegen, im Gegensatz zu DC-Motoren (2 Drähte), die rückwärts / vorwärts laufen, nicht in Schritten.
Der Gleichstrommotor hat 2 Drähte (läuft in beide Richtungen), der optionale Schrittmotor hat 4 in zwei Spulen (Testen Sie mit einem Multimeter-Widerstandsmesser, um zu sehen, wo die Spulen verdrahtet sind, wie hier beschrieben.)
Wenn Sie das alte Adafruit-Schild wie in meinem Beispiel verwenden, sollten Sie den DC-Süßigkeiten-Spinner-Motor an Motor Nr. 3 und den Schrittmotor an die ersten beiden Motoren (Nr. 1, Nr. 2) anschließen, wie in deren Dokumentation beschrieben.
Nach dem Anschließen verdrahten Sie die Motoren mit einem Arduino Motor Shield, das an einem Arduino befestigt ist. Für beste Ergebnisse wird empfohlen, eine zweite Stromversorgung für die Motoren zu haben, die Sie an den DC-Ausgang einer 2 US-Dollar-Wandwarze aus einem Second-Hand-Laden anschließen können.
Schritt 2: Anbringen des Behälters
Messen Sie die Mitte eines Joghurtbehälters oder eines anderen großen Plastikbehälters aus und bohren Sie einen Griff, der etwas größer als das Ende des Motors ist.
Befestigen Sie den Behälter mit einer kleinen Unterlegscheibe an der Box - Krazy-Klebe ihn auf den Boden des Behälters und auf die Elektromotorspindel.
Lasse den Kleber ein oder zwei Tage trocknen, um ihn vollständig auszuhärten – vielleicht möchtest du einen kleinen Abstandshalter zwischen Kasten und Drehbehälter legen, um sicherzustellen, dass er nicht schief ansetzt.
Schritt 3: Machen Sie ein kleines Loch für Candy Thrower
Sobald der Spinner richtig angebracht ist, verwenden Sie das Ende eines scharfen Messers, um ein kleines Loch zu umreißen, damit Süßigkeiten aus dem Ende geworfen werden können - dies sollte sich direkt über dem Boden befinden, wo sich die Lippe befindet.
(Für beste Ergebnisse können etwa 30 Bonbons auf das Deckelende des Spenders geladen werden, das der Boden ist.)
Umreißen Sie vorsichtig mit einem scharfen Messer, bis es herausspringt und ein kleines Loch hinterlässt (Sie können das Loch später bei Bedarf erweitern).
Schritt 4: Arduino-Setup
Wenn Sie die Arduino-Software noch nicht installiert haben, erhalten Sie sie von
www.arduino.cc/en/Main/Software
Jede aktuelle Version sollte funktionieren.
Testen Sie den DC / Schrittmotor mit den Beispielen im Beispielcode Ihres Arduino Shield.
Wenn Sie dieses Schild verwenden (bei einigen Händlern noch erhältlich), können Sie meinen Code direkt verwenden:
github.com/programmin1/HowToTrainYourRobot…
Sobald Sie getestet haben und Süßigkeiten ausgeben können, indem Sie im seriellen Arduino-Fenster "d" eingeben, ist es an der Zeit, dies mit dem Dlib-Erkenner zu verbinden.
Schritt 5: Dlib-Setup
Dlib (https://dlib.net/) bietet eine einfach zu verwendende Open-Source-Bibliothek für die Bilderkennung. Installieren Sie das Python Dlib-Modul mit:
sudo pip installiere Dlib
- oder -
sudo easy_install Dlib
Warten Sie, bis Dlib installiert und kompiliert ist. (Sie benötigen einen Computer mit vorzugsweise ein paar GB RAM, oder Sie müssen lange warten und den Swap-Speicher erweitern). Der Code verwendet auch OpenCV für das Webcam-Modul. Führen Sie also Folgendes aus:
sudo apt-get install python-opencv
Die Installationsschritte können variieren, wenn Sie MacOS oder andere Betriebssysteme verwenden.
Holen Sie sich jetzt die Daten der Gesichtserkennungs-Wahrzeichen von
dlib.net/files/shape_predictor_68_face_land…
Entpacken Sie es (mit Archive Manager / 7zip) und legen Sie es in HOME/Downloads/shape_predictor_68_face_landmarks.dat ab
Schritt 6: Verbinden des Gesichtserkenners mit Ihrem Roboter
Schließen Sie den Arduino-steuernden USB an den Computer an und überprüfen Sie, ob die Datei "/dev/ttyACM0" vorhanden ist (dies ist das Gerät, an das die seriellen Befehle gesendet werden). Wenn es nicht funktioniert und ein anderes ähnlich benanntes Verzeichnis, das in /dev angezeigt wird, wenn Sie es anschließen, ersetzen Sie /dev/ttyACM0 in der Datei faceDetectThreadCorrelationCV2FaceSmile.py im Repository.
Schließen Sie die Webcam an (wenn sich keine integrierte Webcam in dem von Ihnen verwendeten Computer befindet) und führen Sie diese.py-Datei in der Befehlszeile oder mit dem Befehl Ausführen/F5 im Geany-Texteditor aus. Wenn Sie eine zweite/externe Webcam auf einem Laptop verwenden möchten, können Sie "VideoCapture(0)" in "VideoCapture(1)" ändern, um eine zweite Webcam zu verwenden, die Sie auf dem Schrittmotor oben auf der Roboterbox platzieren können.
Wenn alles gut geht, sehen Sie einen Umriss eines Lächelns, wenn sich ein Gesicht vor der Webcam befindet.
Lesen Sie die Übersicht und den Quellcode der.py-Datei, um die mathematische Funktionsweise der Lächeln-Erkennung anhand der Punkte zu sehen, die die Dlib von der Gesichtserkennungsfunktion gibt.:)
Empfohlen:
Einen intelligenten Roboter mit Arduino bauen – wikiHow
Wie man einen intelligenten Roboter mit Arduino macht: Hallo, ich bin Arduino-Hersteller und in diesem Tutorial werde ich Ihnen zeigen, wie man einen intelligenten Roboter mit Arduino macht, wenn Ihnen mein Tutorial gefallen hat, dann überlegen Sie, meinen Youtube-Kanal namens Arduino-Hersteller zu unterstützen
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
RC-Tracked-Roboter mit Arduino – Schritt für Schritt: 3 Schritte
RC Tracked Robot mit Arduino – Schritt für Schritt: Hey Leute, ich bin zurück mit einem weiteren coolen Robot-Chassis von BangGood. Ich hoffe, Sie haben unsere vorherigen Projekte durchgegangen – Spinel Crux V1 – Der gestengesteuerte Roboter, Spinel Crux L2 – Arduino Pick-and-Place-Roboter mit Roboterarmen und The Badland Braw
[Arduino-Roboter] Wie erstelle ich einen Motion-Capture-Roboter - Daumen Roboter - Servomotor - Quellcode: 26 Schritte (mit Bildern)
[Arduino-Roboter] Wie erstelle ich einen Motion-Capture-Roboter | Daumen Roboter | Servomotor | Quellcode: Thumbs Robot. Verwendet ein Potentiometer des Servomotors MG90S. Es macht sehr viel Spaß und ist einfach! Der Code ist sehr einfach. Es sind nur etwa 30 Zeilen. Es sieht aus wie ein Motion-Capture.Bitte hinterlassen Sie Fragen oder Feedback![Anleitung] Quellcode https://github.c
So teilen Sie Ihre Fotos von Ihrem Mac Mini im Internet – wikiHow
So teilen Sie Ihre Fotos von Ihrem Mac Mini im Internet: "Picasa - 1 GB limit"Flickr - 100 MB"Photobucket - 1 GB"Ihr Mac mini - Unbegrenzt!!!***"Jede andere generische Foto-Sharing-Site da draußen, einige dumme Dateigrößenbeschränkungen und begrenzter Speicherplatz und andere unsinnige Einschränkungen. Warte ab