Inhaltsverzeichnis:

Gib mir fünf! - eine Roboterhand - Gunook
Gib mir fünf! - eine Roboterhand - Gunook

Video: Gib mir fünf! - eine Roboterhand - Gunook

Video: Gib mir fünf! - eine Roboterhand - Gunook
Video: Vor so einem Roboter würde ich zittern 2024, November
Anonim
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand
Gib mir fünf! - eine Roboterhand

Eines Tages machten wir uns in unserem Kurs „Principles of Engineering“auf den Weg, Verbundmaschinen aus VEX-Teilen zu konstruieren. Als wir mit dem Bau der Mechanismen begannen, hatten wir Schwierigkeiten, mehrere komplexe Komponenten zu verwalten, die zusammengebaut werden mussten. Wenn uns nur jemand helfen könnte…

Aus diesem Grund haben wir, drei Schüler der Irvington High School in der Klasse von Frau Berbawy, beschlossen, eine Roboterhand von Grund auf zu entwerfen und zu bauen! Mit einer finanziellen Schätzung von 150 US-Dollar für dieses S. I. D. E. Project konnten wir alle benötigten Materialien beschaffen und das Budget deutlich unterschreiten. Das fertige Produkt besteht aus einem Arduino Mega, einem Servo-Mikrocontroller, der 5 Servos ansteuert, von denen jeder mit einem 3D-gedruckten Finger verbunden ist, der sich mit realistischen Gelenken individuell bewegen kann.

Dies war ein sehr ehrgeiziges Projekt, da alle Teammitglieder High-School-Studenten mit beschäftigten Zeitplänen für das Junior-Jahr sind und keine vorherige Erfahrung mit der vollständigen Entwicklung eines auf Elektronik basierenden Projekts von Grund auf haben. Obwohl unsere Teammitglieder bereits Erfahrung mit computergestütztem Design und Programmierung haben, öffnete uns das Projekt die Augen für die potenzielle Nutzung von Arduino-Hardware und -Software, die den Menschen bei der Erfüllung ihrer täglichen Aufgaben helfen könnte.

3D-Modellierung und Design von Patrick Ding

Dokumentation und Arduino-Codierung von Ashwin Natampalli

Arduino-Codierung, Schaltung und Instructable von Sandesh Shrestha

Schritt 1: CAD-Erstellung

CAD-Erstellung
CAD-Erstellung
CAD-Erstellung
CAD-Erstellung
CAD-Erstellung
CAD-Erstellung

Der erste und schwierigste Schritt bei diesem Projekt besteht darin, 3D-Modelle der Hand mit den Fingern zu erstellen. Verwenden Sie dazu Autodesk Inventor oder Autodesk Fusion 360 (wir haben ersteres verwendet).

Verwenden Sie Teiledateien, um individuelle CADs für die Handfläche, die Fingersegmente, die Fingerspitzen und das kleine Fingersegment zu erstellen. Dies erforderte 2-3 Überarbeitungen pro Teil, damit die Bedienung der Gelenke und Servos reibungslos war.

Das Design kann jede gewünschte Größe und Form haben, solange der Fadenverlauf eine reibungslose Fingerbedienung ermöglicht und die Finger nicht miteinander kollidieren. Stellen Sie außerdem sicher, dass die Finger für eine geschlossene Faust vollständig kollabieren können.

Um das Problem von Saiteninterferenzen und ineffizienten Pfaden zu beheben, wie wir es in unserer ersten Version festgestellt haben, wurden Schlaufen, Saitenführungen und Tunnel hinzugefügt, damit die Saite leicht gezogen und gelöst werden kann.

Hier sind unsere fertigen Multiviews und.stl CAD-Dateien für jedes Teil.

Schritt 2: 3D-Druck

3d Drucken
3d Drucken
3d Drucken
3d Drucken
3d Drucken
3d Drucken

Verwenden Sie nach Fertigstellung der CADs einen 3D-Drucker, um sie zum Leben zu erwecken. Diese Phase kann mehrmals wiederholt werden, wenn das von Ihnen erstellte Design Probleme aufweist.

Zum 3D-Druck exportieren Sie zunächst die CAD-Dateien als STL-Dateien. Klicken Sie dazu in Autodesk Inventor auf das Dropdown-Menü Datei und bewegen Sie den Mauszeiger über Exportieren. Wählen Sie in der Popout-Spalte CAD-Format aus. Im Windows-Datei-Explorer-Menü können Sie die.stl-Datei aus dem Dropdown-Menü auswählen und einen Speicherort für die Datei auswählen.

Sobald die Datei bereit ist, in die Software des 3D-Druckers importiert zu werden, konfigurieren Sie die Druckoptionen nach Ihren Wünschen oder folgen Sie unserer Konfiguration. Die 3D-Druckersoftware ist von Marke zu Marke unterschiedlich, konsultieren Sie daher die Online-Anleitungen oder das Handbuch, um durch ihre Software zu navigieren. Für unsere Hand haben wir den LulzBot Mini aufgrund seiner Verfügbarkeit in unserem Klassenumfeld verwendet.

Schritt 3: Montage

Montage
Montage
Montage
Montage
Montage
Montage

Sobald alle Teile erfolgreich in 3D gedruckt wurden, wobei Flöße und Stützen entfernt wurden (falls zutreffend), muss jedes Teil vorbereitet werden, um mit der Montage zu beginnen.

Da 3D-Drucker nicht sehr präzise sind und kleine Unvollkommenheiten auftreten können, verwenden Sie eine Feile oder ein Schleifpapier oder einen Dremel mit Schleifaufsatz, um bestimmte Gesichter zu glätten. Konzentrieren Sie sich für einen reibungslosen Verbindungsvorgang auf Fugen und Schnittpunkte, um optimale Verbindungen zu glätten. Manchmal können die Saitentunnel in Fingersegmenten und anderen Teilen einbrechen oder unvollkommen sein. Um größeren Abweichungen entgegenzuwirken, verwenden Sie zum Aufbohren der Tunnel einen Bohrer mit einem 3/16-Zoll-Bohrer.

Für die einfachste Saitenführung montieren Sie jeden Finger, führen Sie die Saite durch die Tunnel und binden Sie die Saite an den Enden. Bevor Sie jeden Finger mit der Handfläche verbinden, führen Sie die Schnur durch die Führungsschlaufen, eine durch das obere Loch und eine durch das untere Loch, auf der Handfläche und befestigen Sie sie an den gegenüberliegenden Enden der mitgelieferten Spulen des Servos. Sobald die Längen korrekt sind, verbinden Sie die Finger mit der Handfläche.

Setzen Sie, wie im Bild oben gezeigt, M4x16-Schrauben in jedes Gelenk ein, um den Finger zusammenzuhalten. Wiederholen Sie jeden Fingeraufbauprozess für alle Finger, wobei Sie die kleinen Fingersegmente für den kleinen Finger verwenden.

Schritt 4: Arduino-Schaltung

Arduino-Schaltung
Arduino-Schaltung
Arduino-Schaltung
Arduino-Schaltung
Arduino-Schaltung
Arduino-Schaltung

Nachdem das Skelett fertig zusammengebaut ist, müssen jetzt die Muskeln und das Gehirn integriert werden. Um alle Servos gleichzeitig zu betreiben, müssen wir einen PCA 9685 Motorcontroller von Adafruit verwenden. Dieser Controller benötigt eine externe Stromversorgung, um die Servos mit Strom zu versorgen. Die Verwendung dieses Controllers und seiner proprietären Codierungsbibliothek finden Sie hier.

Stellen Sie beim Verdrahten des Arduino mit dem Controller sicher, dass Sie die Pin-Ausgänge aufzeichnen. Wenn Sie einen Arduino Mega verwenden, ist dies nicht erforderlich. Beachten Sie jedoch in jedem Fall, an welchen Ports des Motorcontrollers die Servos montiert sind.

Um die Servos und die Hand mit einer IR-Fernbedienung zu steuern, fügen Sie einfach den IR-Empfänger hinzu und verbinden Sie Strom und Masse mit dem Arduino mit dem Datenkabel zu den digitalen Anschlüssen. Überprüfen Sie die Pinbelegung Ihres IR-Empfängers, um sicherzustellen, dass die Verkabelung korrekt ist. Ein Beispiel unserer Schaltung wird gezeigt.

Um diese Schaltung zu erstellen, verbinden Sie zuerst jedes Servo mit den Ports 3, 7, 11, 13 und 15 auf der Servomotor-Controller-Platine. Befestigen Sie die gesamte Platine mit den fünf Stiften an der Unterseite an einem Steckbrett.

Verbinden Sie mit Überbrückungskabeln die 5-V-Stromversorgung und Masse des Arduino mit einer Stromschiene des Steckbretts (stellen Sie sicher, dass Sie beschriften oder sich daran erinnern, welche Seite 5 V von Arduino hat!). Dadurch werden der IR-Sensor und die Motorsteuerung mit Strom versorgt. Schließen Sie ein 6-V-Netzteil an die andere Stromschiene an. Dadurch werden die Servos mit Strom versorgt.

Legen Sie alle 3 Pins des IR-Sensors in das Steckbrett. Verbinden Sie die Stromversorgung und Masse mit der 5V-Schiene und den Ausgang mit dem digitalen Pin 7.

Da wir einen Arduino Mega verwenden, werden die Ports SDA und SCL des Motorcontrollers mit den SDA- und SCL-Ports des Arduino verdrahtet. Die VCC- und Masseanschlüsse werden mit der 5V-Schiene verbunden.

Wenn der Akku an seine eigene Stromschiene angeschlossen ist, verwenden Sie Überbrückungskabel und einen kleinen Schlitzschraubendreher, um die Stromversorgung der Servomotoren über den grünen Stromeingangsstecker zu sichern.

Stellen Sie sicher, dass alle Verbindungen fest sind und überprüfen Sie alle Kabelleitungen mit unserer angeschlossenen TinkerCAD-Schaltung.

Schritt 5: Codierung

Codierung
Codierung
Codierung
Codierung
Codierung
Codierung

Der letzte Schritt, bevor diese Hand für den Einsatz in Betrieb genommen werden kann, besteht darin, das Arduino zu codieren. Da diese Hand den PCA 9685 Motorcontroller verwendet, müssen wir zuerst die Bibliothek installieren, was innerhalb der Arduino Coding Environment erfolgen kann. Installieren Sie nach der Installation auch die IRremote-Bibliothek für die IR-Remote-Funktionalität.

In unserem Code werden die Definitionen jeder Taste auf der IR-Fernbedienung mit 8-stelligen Codes angezeigt. Diese wurden mit dem IRRecord-Programm gefunden, das den 8-stelligen Code jeder Taste an den Serial Monitor ausgibt.

Beigefügt ist sowohl das IRRecord-Programm als auch das fertige Handsteuerungsprogramm.

Fügen Sie am Anfang des Codes die Bibliotheken IRremote, Wire und Adafruit_PWMServoDriver ein.

Verwenden Sie anschließend die Ergebnisse von IRRecord, um jede Taste der IR-Fernbedienung zu definieren. Obwohl nicht alle notwendig sind (nur 10 werden benötigt), ermöglicht dies eine schnelle Erweiterung (Hinzufügen von Funktionen und voreingestellten Gesten) für die Zukunft. Erstellen Sie den PWM mit der Servotreiberfunktion und weisen Sie die Servos den Pins am Motorcontroller zu. Verwenden Sie die gleichen Werte von SERVOMAX/MIN wie gezeigt. Weisen Sie den digitalen Eingangspin des IR-Sensors als 7 zu und initialisieren Sie.

Deklarieren Sie die Setup-Funktion mit der Initialisierung von Serial mit einer Baudrate von 9600. Aktivieren Sie den IR-Sensor und starten Sie das Servo mit einer Servofrequenz von 60 Hz.

Erstellen Sie schließlich einen Wenn / Sonst-Schalter basierend auf der eingehenden Übertragung der IR-Fernbedienung in der Schleifenfunktion. Erstellen Sie dann einen Schalter / ein Gehäuse mit Gehäusen für jede Taste auf der IR-Fernbedienung, die verwendet werden soll. Diese können für Ihre bevorzugten Steuerelemente geändert werden. Drucken Sie in jedem Fall die gedrückte Taste zum Debuggen auf den seriellen Monitor und verwenden Sie eine for-Schleife, um das Servo zu bewegen. Nachdem alle Fälle erstellt wurden, stellen Sie sicher, dass der IR-Sensor für weitere eingehende Signale wieder aktiviert wird, bevor Sie die Schleifenfunktion schließen. Die Codierung der Servos über die Motorcontrollerplatine finden Sie unter

Empfohlen: