Inhaltsverzeichnis:

3D gedruckter Arduino angetriebener Vierbeiner - Gunook
3D gedruckter Arduino angetriebener Vierbeiner - Gunook

Video: 3D gedruckter Arduino angetriebener Vierbeiner - Gunook

Video: 3D gedruckter Arduino angetriebener Vierbeiner - Gunook
Video: 3D printed robotic arm 2024, November
Anonim
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter
3D-gedruckter Arduino-betriebener Vierbeiner-Roboter

Fusion 360-Projekte »

Aus den vorherigen Instructables können Sie wahrscheinlich sehen, dass ich ein tiefes Interesse an Roboterprojekten habe. Nach dem vorherigen Instructable, in dem ich einen Roboter-Zweibeiner gebaut habe, beschloss ich, zu versuchen, einen vierbeinigen Roboter zu bauen, der Tiere wie Hunde und Katzen imitieren konnte. In diesem Instructable zeige ich Ihnen das Design und die Montage des robotischen Vierbeiners.

Das Hauptziel beim Aufbau dieses Projekts war es, das System so robust wie möglich zu machen, so dass ich beim Experimentieren mit verschiedenen Geh- und Laufgangarten nicht ständig Angst haben muss, dass die Hardware ausfällt. Dadurch konnte ich die Hardware an ihre Grenzen bringen und mit komplexen Gangarten und Bewegungen experimentieren. Ein zweites Ziel war es, den Vierbeiner mit leicht verfügbaren Hobbyteilen und 3D-Druck relativ kostengünstig zu machen, was ein schnelles Prototyping ermöglichte. Die Kombination dieser beiden Ziele bietet eine solide Grundlage für die Durchführung verschiedener Experimente, die es einem ermöglichen, den Vierbeiner für spezifischere Anforderungen wie Navigation, Hindernisvermeidung und dynamische Fortbewegung zu entwickeln.

Sehen Sie sich das oben angehängte Video an, um eine kurze Demo des Projekts zu sehen. Folgen Sie, um Ihren eigenen Arduino Powered Quadruped Robot zu erstellen und geben Sie eine Stimme im "Make it Move Contest" ab, wenn Ihnen das Projekt gefallen hat.

Schritt 1: Übersicht und Designprozess

Übersicht und Designprozess
Übersicht und Designprozess
Übersicht und Designprozess
Übersicht und Designprozess
Übersicht und Designprozess
Übersicht und Designprozess

Der Vierbeiner wurde in der kostenlosen 3D-Modellierungssoftware Fusion 360 von Autodesk entwickelt. Ich begann mit dem Importieren der Servomotoren in das Design und baute die Beine und den Körper um sie herum. Ich habe Halterungen für den Servomotor entworfen, die einen zweiten Drehpunkt diametral gegenüber der Welle des Servomotors bieten. Die Doppelwellen an beiden Enden des Motors verleihen dem Design strukturelle Stabilität und verhindern jegliches Verkanten, das auftreten kann, wenn die Beine etwas belastet werden. Die Glieder wurden entwickelt, um ein Lager zu halten, während die Halterungen eine Schraube für die Welle verwendeten. Sobald die Glieder mit einer Mutter an den Wellen befestigt waren, würde das Lager einen glatten und robusten Drehpunkt auf der gegenüberliegenden Seite der Servomotorwelle bieten.

Ein weiteres Ziel bei der Konstruktion des Vierbeiners war es, das Modell so kompakt wie möglich zu halten, um das Drehmoment der Servomotoren maximal auszunutzen. Die Abmessungen der Glieder wurden so gestaltet, dass eine große Bewegungsfreiheit bei gleichzeitiger Minimierung der Gesamtlänge erreicht wird. Wenn sie zu kurz wären, würden die Halterungen kollidieren, was den Bewegungsbereich verringerte, und eine zu lange würde ein unnötiges Drehmoment auf die Aktuatoren ausüben. Schließlich entwarf ich den Körper des Roboters, auf dem das Arduino und andere elektronische Komponenten montiert werden würden. Ich habe auch zusätzliche Befestigungspunkte auf der Oberseite belassen, um das Projekt für weitere Verbesserungen skalierbar zu machen. Einmal könnten Sensoren wie Abstandssensoren, Kameras oder andere betätigte Mechanismen wie Robotergreifer hinzugefügt werden.

Hinweis: Die Teile sind in einem der folgenden Schritte enthalten.

Schritt 2: Benötigte Materialien

Benötigte Materialien
Benötigte Materialien
Benötigte Materialien
Benötigte Materialien

Hier ist die Liste aller Komponenten und Teile, die Sie benötigen, um Ihren eigenen Arduino Powered Quadruped Robot zu bauen. Alle Teile sollten allgemein verfügbar und in lokalen Baumärkten oder online leicht zu finden sein.

ELEKTRONIK:

Arduino Uno x 1

Towerpro MG995 Servomotor x 12

Arduino Sensor Shield (ich empfehle die V5-Version, aber ich hatte die V4-Version)

Überbrückungsdrähte (10 Stück)

MPU6050-IMU (optional)

Ultraschallsensor (optional)

HARDWARE:

Kugellager (8x19x7mm, 12 Stück)

M4 Muttern und Schrauben

3D-Drucker-Filament (falls Sie keinen 3D-Drucker besitzen, sollte es einen 3D-Drucker in einem lokalen Arbeitsbereich geben oder die Drucke können recht günstig online durchgeführt werden)

Acrylplatten (4mm)

WERKZEUGE

3D Drucker

Laserschneider

Die bedeutendsten Kosten dieses Projekts sind die 12 Servomotoren. Ich empfehle, sich für die Mid- bis High-Range-Version zu entscheiden, anstatt die billigen Plastikversionen zu verwenden, da sie leicht brechen. Ohne die Werkzeuge betragen die Gesamtkosten dieses Projekts ungefähr 60 $.

Schritt 3: Digital hergestellte Teile

Digital gefertigte Teile
Digital gefertigte Teile
Digital gefertigte Teile
Digital gefertigte Teile
Digital gefertigte Teile
Digital gefertigte Teile

Die für dieses Projekt benötigten Teile mussten kundenspezifisch gestaltet werden, daher nutzten wir die Leistungsfähigkeit von digital gefertigten Teilen und CAD, um sie zu bauen. Die meisten Teile sind 3D-gedruckt, abgesehen von einigen wenigen, die aus 4 mm Acryl lasergeschnitten sind. Die Drucke wurden mit 40% Füllung, 2 Perimetern, 0,4 mm Düse und einer Schichthöhe von 0,1 mm mit PLA hergestellt. Einige der Teile benötigen Stützen, da sie eine komplexe Form mit Überhängen haben, die Stützen sind jedoch leicht zugänglich und können mit einigen Fräsern entfernt werden. Sie können die Farbe Ihrer Wahl des Filaments auswählen. Unten finden Sie die vollständige Liste der Teile und die STLs zum Drucken Ihrer eigenen Version und die 2D-Designs für die lasergeschnittenen Teile.

Hinweis: Ab hier werden die Teile mit den Namen in der folgenden Liste bezeichnet.

3D-gedruckte Teile:

  • Hüftservohalterung x 2
  • Hüftservohalterung Spiegel x 2
  • Knieservohalterung x 2
  • Knieservohalterung Spiegel x 2
  • Lagerhalter x 2
  • Lagerhalter Spiegel x 2
  • Bein x 4
  • Servohornverbindung x 4
  • Lagerglied x 4
  • Arduino-Halter x 1
  • Abstandssensorhalter x 1
  • L-Stütze x 4
  • Lagerbuchse x 4
  • Servohorn-Abstandshalter x 24

Lasergeschnittene Teile:

  • Servohalterplatte x 2
  • obere Platte x 1

Insgesamt gibt es 30 Teile, die ohne die verschiedenen Abstandshalter in 3D gedruckt werden müssen, und insgesamt 33 digital gefertigte Teile. Die Gesamtdruckzeit beträgt etwa 30 Stunden.

Schritt 4: Vorbereiten der Links

Vorbereitung der Links
Vorbereitung der Links
Vorbereitung der Links
Vorbereitung der Links
Vorbereitung der Links
Vorbereitung der Links

Sie können mit der Montage beginnen, indem Sie zu Beginn einige Teile einrichten, was den Endmontageprozess einfacher macht. Sie können mit dem Link beginnen. Um das Lagerglied herzustellen, die Innenfläche der Löcher für das Lager leicht schleifen und dann das Lager an beiden Enden in das Loch drücken. Achten Sie darauf, das Lager hineinzudrücken, bis eine Seite bündig ist. Um die Servohornverbindung zu bauen, greifen Sie zu zwei runden Servohörnern und den mitgelieferten Schrauben. Legen Sie die Hörner auf den 3D-Druck und richten Sie die beiden Löcher aus, schrauben Sie als nächstes das Horn auf den 3D-Druck, indem Sie die Schraube von der 3D-Druckseite anbringen. Ich musste einige 3D-gedruckte Servohorn-Abstandshalter verwenden, da die mitgelieferten Schrauben etwas lang waren und sich während der Drehung mit dem Servomotorkörper kreuzten. Sobald die Verbindungen aufgebaut sind, können Sie mit dem Einrichten der verschiedenen Halter und Halterungen beginnen.

Wiederholen Sie dies für alle 4 Links beider Typen.

Schritt 5: Vorbereiten der Servohalterungen

Vorbereiten der Servohalterungen
Vorbereiten der Servohalterungen
Vorbereiten der Servohalterungen
Vorbereiten der Servohalterungen
Vorbereiten der Servohalterungen
Vorbereiten der Servohalterungen

Um die Knieservohalterung einzurichten, führen Sie einfach eine 4mm Schraube durch das Loch und befestigen Sie diese mit einer Mutter. Diese fungiert als Sekundärachse für den Motor. Führen Sie von der Hüftservohalterung zwei Schrauben durch die beiden Löcher und befestigen Sie sie mit zwei weiteren Muttern. Nehmen Sie als nächstes ein weiteres kreisförmiges Servohorn und befestigen Sie es mit den beiden Schrauben, die mit den Hörnern geliefert wurden, an dem leicht erhöhten Abschnitt der Halterung. Damit die Schrauben nicht in den Spalt für das Servo ragen, würde ich noch einmal empfehlen, den Servohorn-Abstandshalter zu verwenden. Greifen Sie schließlich das Lagerhalterteil und schieben Sie ein Lager in das Loch. Möglicherweise müssen Sie die Innenfläche leicht schleifen, um eine gute Passform zu erzielen. Schieben Sie als nächstes einen Lagerstoß in das Lager, so dass sich das Lagerhalterstück biegt.

Beachten Sie beim Bau der Halterungen die oben angehängten Bilder. Wiederholen Sie diesen Vorgang für den Rest der Klammern. Die gespiegelten sind ähnlich, nur ist alles gespiegelt.

Schritt 6: Montage der Beine

Montage der Beine
Montage der Beine
Montage der Beine
Montage der Beine
Montage der Beine
Montage der Beine
Montage der Beine
Montage der Beine

Sobald alle Glieder und Halterungen montiert sind, können Sie mit dem Bau der vier Beine des Roboters beginnen. Beginnen Sie mit der Befestigung der Servos an den Halterungen mit 4 x M4-Schrauben und Muttern. Achten Sie darauf, die Achse des Servos mit dem hervorstehenden Bolzen auf der anderen Seite auszurichten.

Als nächstes verbinden Sie das Hüftservo mit dem Knieservo mit dem Servohornverbindungsstück. Verwenden Sie noch keine Schraube, um das Horn auf der Servomotorachse zu befestigen, da wir die Position später möglicherweise anpassen müssen. Auf der gegenüberliegenden Seite das Traggelenk mit den beiden Lagern mit Muttern auf die hervorstehenden Bolzen montieren.

Wiederholen Sie diesen Vorgang für den Rest der drei Beine und die 4 Beine für den Vierbeiner sind fertig!

Schritt 7: Zusammenbau des Körpers

Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers
Zusammenbau des Körpers

Als nächstes können wir uns darauf konzentrieren, den Körper des Roboters zu bauen. Der Körper beherbergt vier Servomotoren, die den Beinen ihren 3. Freiheitsgrad verleihen. Beginnen Sie mit 4 x M4 Schrauben und Buts, um das Servo an der lasergeschnittenen Servohalterplatte zu befestigen.

Hinweis: Stellen Sie sicher, dass das Servo so angebracht ist, dass sich die Achse auf der Außenseite des Teils befindet, wie in den oben angehängten Bildern zu sehen. Wiederholen Sie diesen Vorgang für den Rest der drei Servomotoren unter Berücksichtigung der Ausrichtung.

Als nächstes befestigen Sie die L-Stützen auf beiden Seiten der Platte mit zwei M4-Muttern und -Schrauben. Dieses Stück ermöglicht es uns, die Servohalterplatte fest an der oberen Platte zu befestigen. Wiederholen Sie diesen Vorgang mit zwei weiteren L-Stützen und der zweiten Servohalterplatte, die den zweiten Satz Servomotoren hält.

Sobald die L-Stützen angebracht sind, verwenden Sie weitere M4-Muttern und -Schrauben, um die Servohalterplatte an der oberen Platte zu befestigen. Beginnen Sie mit dem äußeren Satz Schrauben und Muttern (nach vorne und hinten). Die zentralen Muttern und Schrauben halten auch das Arduino-Halterstück fest. Verwenden Sie vier Muttern und Schrauben, um den Arduino-Halter von oben auf der oberen Platte zu befestigen und richten Sie die Schrauben so aus, dass sie auch durch die L-Stützlöcher gehen. Erläuterungen finden Sie in den oben angehängten Bildern. Schieben Sie schließlich vier Muttern in die Schlitze an den Servohalterplatten und verwenden Sie Schrauben, um die Servohalterplatten an der oberen Platte zu befestigen.

Schritt 8: Alles zusammenfügen

Alles zusammenfügen
Alles zusammenfügen
Alles zusammenfügen
Alles zusammenfügen
Alles zusammenfügen
Alles zusammenfügen

Sobald die Beine und der Körper zusammengebaut sind, können Sie mit dem Zusammenbau beginnen. Montieren Sie die vier Beine mit den Servohörnern, die an der Hüftservohalterung befestigt waren, an den vier Servos. Verwenden Sie schließlich die Lagerhalterstücke, um die gegenüberliegende Achse der Hüfthalterung zu stützen. Führen Sie die Achse durch das Lager und befestigen Sie sie mit einer Schraube. Befestigen Sie die Lagerhalter mit zwei M4-Muttern und -Schrauben an der oberen Platte.

Damit ist die Hardware-Bestückung des Vierbeiners fertig.

Schritt 9: Verdrahtung und Schaltung

Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung
Verdrahtung und Schaltung

Ich beschloss, ein Sensorschild zu verwenden, das Anschlüsse für Servomotoren bereitstellte. Ich würde empfehlen, dass Sie das Sensor Shield v5 verwenden, da es über einen integrierten externen Stromversorgungsanschluss verfügt. Der von mir verwendete hatte diese Option jedoch nicht. Als ich das Sensorschild genauer betrachtete, bemerkte ich, dass das Sensorschild Strom vom integrierten 5-V-Pin des Arduino zog (was eine schreckliche Idee ist, wenn es um Hochleistungs-Servomotoren geht, da Sie das Arduino beschädigen könnten). Die Lösung für dieses Problem bestand darin, den 5V-Pin auf der Sensorabschirmung aus dem Weg zu biegen, damit er nicht mit dem 5V-Pin des Arduino verbunden war. Auf diese Weise können wir jetzt externe Stromversorgung über den 5-V-Pin bereitstellen, ohne den Arduino zu beschädigen.

Die Anschlüsse der Signalpins der 12 Servomotoren sind in der folgenden Tabelle angegeben.

Hinweis: Hip1Servo bezieht sich auf das am Körper befestigte Servo. Hip2Servo bezieht sich auf das am Bein befestigte Servo.

Bein 1 (vorne links):

  • Hip1Servo >> 2
  • Hip2Servo >> 3
  • KnieServo >> 4

Bein 2 (vorne rechts):

  • Hip1Servo >> 5
  • Hip2Servo >> 6
  • KnieServo >> 7

Bein 3 (hinten links):

  • Hip1Servo >> 8
  • Hip2Servo >> 9
  • KnieServo >> 10

Bein 4 (hinten rechts):

  • Hip1Servo >> 11
  • Hip2Servo >> 12
  • KnieServo >> 13

Schritt 10: Ersteinrichtung

Ersteinrichtung
Ersteinrichtung
Ersteinrichtung
Ersteinrichtung

Bevor wir mit der Programmierung komplexer Gangarten und anderer Bewegungen beginnen, müssen wir die Nullpunkte jedes Servos einstellen. Dadurch erhält der Roboter einen Referenzpunkt, mit dem er die verschiedenen Bewegungen ausführt.

Um Schäden am Roboter zu vermeiden, können Sie die Servohornglieder entfernen. Laden Sie als Nächstes den unten angehängten Code hoch. Dieser Code platziert jedes der Servos auf 90 Grad. Sobald die Servos die 90-Grad-Position erreicht haben, können Sie die Glieder wieder so anbringen, dass die Beine perfekt gerade sind und das am Körper befestigte Servo senkrecht zur Oberseite des Vierbeiners steht.

Aufgrund des Designs der Servohörner können einige der Gelenke zu diesem Zeitpunkt noch nicht perfekt gerade sein. Die Lösung hierfür besteht darin, das in der 4. Zeile des Codes gefundene zeroPositions-Array anzupassen. Jede Zahl stellt die Nullposition des entsprechenden Servos dar (die Reihenfolge ist die gleiche wie die Reihenfolge, in der Sie das Servo an den Arduino angeschlossen haben). Passen Sie diese Werte ein wenig an, bis die Beine perfekt gerade sind.

Hinweis: Hier sind die Werte, die ich verwende, obwohl diese Werte für Sie möglicherweise nicht funktionieren:

int nullPositionen [12] = {93, 102, 85, 83, 90, 85, 92, 82, 85, 90, 85, 90};

Schritt 11: Ein bisschen über die Kinematik

Ein bisschen über die Kinematik
Ein bisschen über die Kinematik
Ein bisschen über die Kinematik
Ein bisschen über die Kinematik
Ein bisschen über die Kinematik
Ein bisschen über die Kinematik

Damit der Vierbeiner nützliche Aktionen wie Laufen, Gehen und andere Bewegungen ausführen kann, müssen die Servos in Form von Bewegungspfaden programmiert werden. Bewegungspfade sind Pfade, entlang derer sich der Endeffektor (in diesem Fall die Füße) bewegt. Es gibt zwei Möglichkeiten, dies zu erreichen:

  1. Ein Ansatz wäre, die Gelenkwinkel der verschiedenen Motoren auf rohe Weise zu speisen. Dieser Ansatz kann zeitaufwendig, mühsam und auch mit Fehlern gefüllt sein, da die Beurteilung rein visuell erfolgt. Stattdessen gibt es einen intelligenteren Weg, um die gewünschten Ergebnisse zu erzielen.
  2. Der zweite Ansatz dreht sich um die Eingabe der Koordinaten des Endeffektors anstelle aller Gelenkwinkel. Dies ist die sogenannte inverse Kinematik. Der Benutzer gibt Koordinaten ein und die Gelenkwinkel werden angepasst, um den Endeffektor an den angegebenen Koordinaten zu positionieren. Diese Methode kann als Blackbox betrachtet werden, die als Eingabe eine Koordinate verwendet und die Gelenkwinkel ausgibt. Wer sich dafür interessiert, wie die trigonometrischen Gleichungen dieser Blackbox entwickelt wurden, kann sich das obige Diagramm ansehen. Für diejenigen, die es nicht interessiert, die Gleichungen sind bereits programmiert und können mit der pos-Funktion verwendet werden, die als Eingabe x, y, z nimmt, was die kartesische Position des Endeffektors ist und drei den Motoren entsprechende Winkel ausgibt.

Das Programm mit diesen Funktionen finden Sie im nächsten Schritt.

Schritt 12: Programmieren des Vierbeiners

Programmierung des Vierbeiners
Programmierung des Vierbeiners

Sobald die Verdrahtung und Initialisierung abgeschlossen ist, können Sie den Roboter programmieren und coole Bewegungspfade generieren, damit der Roboter interessante Aufgaben ausführt. Bevor Sie fortfahren, ändern Sie die 4. Zeile im angehängten Code auf die Werte, die Sie im Initialisierungsschritt festgelegt haben. Nach dem Hochladen des Programms sollte der Roboter anfangen zu laufen. Wenn Sie bemerken, dass einige der Verbindungen vertauscht sind, können Sie einfach den entsprechenden Richtungswert im Richtungs-Array in Zeile 5 ändern (bei 1 mache es -1 und bei -1 mache es 1).

Schritt 13: Endergebnisse: Zeit zum Experimentieren

Endergebnisse: Zeit zum Experimentieren
Endergebnisse: Zeit zum Experimentieren
Endergebnisse: Zeit zum Experimentieren
Endergebnisse: Zeit zum Experimentieren
Endergebnisse: Zeit zum Experimentieren
Endergebnisse: Zeit zum Experimentieren

Der vierbeinige Roboter kann Schritte von 5 bis 2 cm Länge ausführen. Auch die Geschwindigkeit kann variiert werden, während die Gangart ausgeglichen bleibt. Dieser Vierbeiner bietet eine robuste Plattform, um mit verschiedenen anderen Gangarten und anderen Zielen wie Springen oder Erledigen von Aufgaben zu experimentieren. Ich würde Ihnen empfehlen, zu versuchen, die Bewegungspfade der Beine zu ändern, um Ihre eigenen Gangarten zu erstellen und herauszufinden, wie sich verschiedene Gangarten auf die Leistung des Roboters auswirken. Ich habe auch mehrere Befestigungspunkte an der Oberseite des Roboters für zusätzliche Sensoren wie Abstandsmesssensoren für Hindernisvermeidungsaufgaben oder IMU für dynamische Gangarten auf unebenem Gelände belassen. Experimentieren könnte man auch mit einem zusätzlichen Greifarm, der oben am Roboter montiert wird, da der Roboter extrem stabil und robust ist und nicht so leicht umkippt.

Hoffe, Sie haben dieses Instructable genossen und es hat Sie inspiriert, Ihr eigenes zu bauen.

Wenn Ihnen das Projekt gefallen hat, unterstützen Sie es, indem Sie eine Stimme im "Make it Move Contest" abgeben.

Viel Spaß beim Machen!

Make it Move-Wettbewerb 2020
Make it Move-Wettbewerb 2020
Make it Move-Wettbewerb 2020
Make it Move-Wettbewerb 2020

Zweiter Preis beim Make it Move Contest 2020

Empfohlen: