Gesteuerter Roboter: Hands-Free Arduino UNO Projekt
Komponenten und Zubehör
![]() |
|
× | 1 | |||
![]() |
|
× | 1 | |||
|
× | 1 | ||||
|
× | 1 | ||||
|
× | 1 | ||||
![]() |
|
× | 1 | |||
|
× | 1 | ||||
![]() |
|
× | 2 | |||
|
× | 1 |
Apps und Online-Dienste
![]() |
|
Über dieses Projekt
UPDATE: EINE AKTUALISIERTE VERSION DIESES PROJEKTS IST HIER ZU FINDEN
Intro
Ich wünschte, ich könnte alles mit meinen Händen steuern! Im Sessel sitzen und Dinge wie ein BOSS kontrollieren. Das würde ich lieben! Also habe ich endlich einen coolen DIY Handgesten-Erkennungs-Roboter gebaut, der Befehlen folgt, die durch Handgesten gemacht werden. Klingt verrückt, aber ich verspreche, es ist sehr einfach. Einen Gestensteuerungs-Roboter zu bauen, ist tatsächlich sehr einfach. Dieser Roboter ist eine Verbesserung meines anderen DIY-Projekts „RC-Car mit RF-Modul“.
Auch hier ist der Roboter in zwei Teile unterteilt: Sender und Empfänger. Die Empfängerschaltung ist dieselbe wie im alten Beitrag, und im Sender gibt es nur eine kleine Änderung: Hier müssen wir die Senderschaltung programmieren. Also werde ich einen Arduino als Programmierplattform nutzen. Zur Erkennung der Gesten verwende ich einen Beschleunigungssensor. Also los geht's!
Roboter in Aktion sehen
Was ist das und wie funktioniert es?
Was ist ein Beschleunigungssensor (ADXL335)?

Kurz gesagt: Ein Beschleunigungssensor ist ein Gerät, das die Beschleunigung in drei Achsen misst. Der hier verwendete ADXL335 hat 3 Achsen (X, Y, Z).
Fast alle Smartphones haben heute Beschleunigungssensoren (auch wenn wir keinen aus einem Smartphone nehmen). Sie haben sicher schon Bewegungsspiele auf dem Handy gespielt (z. B. Temple Run), bei denen die Figur sich links/rechts bewegt, wenn Sie das Handy neigen – das wird vom Beschleunigungssensor erledigt.
Es gibt noch einen Sensor namens Gyroskop im Smartphone, den wir jetzt nicht brauchen.
Wie funktioniert es und erkennt die Gesten?
Das Gehirn des Roboters ist der Arduino Uno (Atmega32), der mit einer Reihe von Code gefüttert wird. Die Gesten/Bewegungen der Hand werden von einem Beschleunigungsmessgerät namens Beschleunigungssensor (ADXL335) erkannt.

Der Beschleunigungssensor liest die X-Y-Z-Koordinaten, wenn wir Handgesten machen, und sendet die X-Y-Z-Koordinaten an den Arduino (hier brauchen wir die Z-Achse nicht, wir benötigen nur zwei Koordinaten X und Y – also Z-Koordinate vernachlässigen). Der Arduino prüft die Koordinatenwerte und sendet einen 4-Bit-Code an den Encoder-IC. Der Encoder leitet die Daten an den Sender weiter, und die gesendeten Daten werden vom RF-Empfänger empfangen. Der Empfänger sendet den 4-Bit-Code an den Decoder-IC, und der Decoder leitet ihn an den Motortreiber-IC weiter. Schließlich lässt der Motortreiber die beiden Motoren in die erforderliche Richtung drehen.
Stromversorgung bauen
Zuerst beginnen wir mit der Stromversorgungsschaltung. Wir benötigen zwei Stromversorgungen: eine für den Sender und eine für den Empfänger. Der Empfänger muss mit 12 V versorgt werden (da ich einen 12-V-Motor verwende), und der Sender kann mit einer 9-V-Batterie betrieben werden.

Das Schaltbild für die Empfänger-Stromversorgung sehen Sie rechts. Anhand dieses Diagramms die Versorgungsschaltung verdrahten. Sie können auch eine LED über einen 1-kOhm-Widerstand hinzufügen, um den Status der Stromversorgung anzuzeigen.

- IC 7805, der die 12-V-Versorgung auf 5 V regelt (falls Sie keine 12-V-Versorgung bekommen, können Sie auch 9 V nutzen)
- 0,1 µF und 470 µF Kondensator
- 1 kOhm Widerstand für die Status-LED
HINWEIS: Kühlkörper für den 7805 verwenden, da wir 7 V (12-5) abfallen lassen – es wird viel Wärme erzeugt, die den Regler zerstören kann, daher wird ein Kühlkörper empfohlen.
Sender (Fernbedienung) bauen
Der Senderbereich besteht aus einem Beschleunigungssensor, der die Handgeste erkennt und die Daten an den Arduino sendet. Der Arduino sendet anschließend Daten an den Encoder-IC entsprechend der vom Beschleunigungssensor empfangenen Daten, und die Daten werden zum Empfänger übertragen. Verdrahten Sie gemäß folgendem Schaltplan:
HINWEIS: Bitte beachten Sie, dass einige Beschleunigungssensoren eine 3,3-V-Stromversorgung nutzen und durch 5 V beschädigt werden könnten. Prüfen Sie die Dokumentation des Lieferanten, um die korrekte Spannung herauszufinden.

Dies ist nur eine Illustration des Senders:

Code auf Arduino hochladen
Hier ist der aktualisierte Code.
Empfänger bauen

Die Empfängerschaltung besteht aus 2 ICs (HT12D Decoder, L293D Motortreiber) und dem RF-Empfängermodul.
Die Schaltung gemäß obigem Schaltplan verdrahten. Es gibt 2 LEDs auf der Empfängerplatine: Eine leuchtet, wenn die Stromversorgung dem Empfänger zugeführt wird, die andere, wenn die Stromversorgung dem Sender zugeführt wird. Die LED in der Nähe des IC HT12D sollte leuchten und zeigt eine gültige Übertragung (VT) an, wenn am Sender Strom anliegt. Falls nicht, stimmt etwas mit Ihrer Verbindung oder Ihrem RF-TX-RX-Modul nicht.
Wenn Sie mehr Details zum Empfängerbereich wissen wollen, lesen Sie diesen Artikel.
Welche Gesten erkennt der Roboter?
Dieser Roboter ist darauf ausgelegt, fünf Gestensätze zu erkennen: vorwärts, rückwärts, links, rechts und Stopp. Sie erhalten ein besseres Verständnis, wenn Sie die Fotos der Gesten unten ansehen.





Viel Spaß beim Steuern Ihres Roboters!
Verkleinern und dauerhaft machen
Der Arduino Uno ist groß und klobig an der Hand. Und wenn Sie ein weiteres Projekt mit Arduino bauen wollen, müssen Sie den Arduino und alle Verbindungen entfernen und verlieren Ihre alte Arbeit. Das mag ich nicht, also habe ich eine Lösung gefunden, um es dauerhaft zu machen. Lesen Sie diesen Artikel, um zu erfahren, wie Sie Ihr Arduino-Projekt verkleinern können.

PCB-Layout für die Standalone-Version hier herunterladen (gespiegelt).
standalone_etch_copper_top_mirror1.pdf
standalone_etch_copper_top1.pdf
Sehen Sie sich dieses Video an, in dem ich den Code auf einen Atmega8 MCU übertragen habe. Ich habe nur die Ausgänge des MCU per LED gezeigt.
Schauen Sie in meinen Blog für meine neuen Projekte.
Falls Sie Fragen haben, hinterlassen Sie hier einen Kommentar. Das ist mein Blog. Ich werde dort regelmäßig nach Feedback schauen statt hier.
Herstellungsprozess
- Bluetooth-gesteuerter Raspberry Pi Roboter mit Audio-Feedback bauen
- Gesten-gesteuerter Roboter mit Raspberry Pi
- Sprachgesteuerter Roboter mit Windows 10 IoT Core auf Raspberry Pi 2 bauen
- WLAN-gesteuerter Raspberry Pi Roboter mit Python bauen – Schritt-für-Schritt
- ROObockey: Präzisionsunterstützter ferngesteuerter Street-Hockey-Roboter
- Gesteuerter RGB-Tischlampe – Interaktive, berührungslose Beleuchtung
- DIY Arduino USB Gaming Controller – Bauen Sie Ihren eigenen High-Performance Gamepad
- Smarte Arduino-Trinkflasche: Echtzeit-Überwachung & Trinkerinnerung
- Sprachgesteuerter Roboter mit Arduino Nano bauen
- Handgeführte kollaborative Roboter: Sicherheitsstandards erklärt




