3D gedruckter Schlangenroboter - Gunook
3D gedruckter Schlangenroboter - Gunook
Anonim
Image
Image
Teile
Teile

Als ich meinen 3D-Drucker bekam, begann ich zu überlegen, was ich damit machen kann. Ich habe viele Dinge gedruckt, aber ich wollte eine ganze Konstruktion mit 3D-Druck erstellen. Dann dachte ich darüber nach, Robotertiere zu machen. Meine erste Idee war, einen Hund oder eine Spinne zu machen, aber viele Leute haben bereits Hunde und Spinnen gemacht. Ich dachte an etwas anderes und dann dachte ich an Schlange. Ich habe die ganze Schlange in fusion360 entworfen und es sah fantastisch aus, also bestellte ich die notwendigen Teile und baute eine. Ich finde das Ergebnis super. Auf dem Video oben können Sie sehen, wie ich es gemacht habe, oder Sie können unten darüber nachlesen.

Schritt 1: Teile

Teile
Teile
Teile
Teile

Hier ist, was wir brauchen:

  • 8 Mikro-Servomotoren
  • Einige 3D-gedruckte Teile
  • Schrauben
  • 3, 7V Li-Po-Batterie
  • Einige Teile zur Herstellung von PCB (atmega328 SMD, Kondensator 100nF, Kondensator 470μF, Widerstand 1, 2k, einige Goldpins). Es ist sehr wichtig, PCB für dieses Projekt herzustellen, denn wenn Sie alles auf dem Steckbrett anschließen, könnte sich Ihre Schlange nicht bewegen.

Schritt 2: 3D-Modelle

3D-Modelle
3D-Modelle

Oben sehen Sie eine Visualisierung dieser Schlange. Dateien (.stl) können Sie hier oder auf meinem Dingiverse herunterladen. Einige Informationen zu den Druckeinstellungen:

Zum Drucken von Segmenten und Kopf empfehle ich das Hinzufügen von Raft. Supports ist für alle Objekte nicht erforderlich. Infill ist nicht so wichtig, weil alle Modelle sehr dünn sind und es fast nur Perimeter gibt, aber ich verwende 20%.

Du brauchst:

8x Schlangensegment

1x Schlangenkopf

1x Schlangenrücken

Schritt 3: PCB

PCB
PCB

Unten finden Sie Eagle-Dateien (.sch und.brd) einfach herunterladen in Eagle öffnen zur Board-Ansicht gehen ctrl + p klicken und ausdrucken. Wenn Sie nicht wissen, wie man PCB herstellt, können Sie hier nachlesen:

www.instructables.com/id/PCB-making-guide/

Auf dem Schema steht, dass der Mikrocontroller atmega8 ist, aber atmega328 hat die gleiche Pinbelegung, aber es gibt keinen atmega328 in Eagle.

Schritt 4: Zusammenbauen

Montage
Montage

Nachdem Sie alle Teile gedruckt haben, können Sie sie zusammenbauen. Setzen Sie das Servo in eines der Segmente ein, schrauben Sie es mit der M2-Schraube an das Segment und schrauben Sie dann das nächste Segment an den Servoarm. Wenn Sie nicht wissen, wie man es zusammenbaut, können Sie sich das Video ansehen.

Schritt 5: Verbindung

Verbindung
Verbindung

Auf dem Foto oben können Sie sehen, wo und was zu verbinden ist. Ich habe auch markiert, wo MISO-, MOSI- und SCK-Pin sind. Sie benötigen diesen Pin, um den Bootloader zu brennen. Mehr zum Brennen des Bootloaders können Sie hier auf der offiziellen Arduino-Seite lesen:

www.arduino.cc/en/Tutorial/ArduinoToBreadboard

Sie benötigen einen Programmierer oder ein anderes Arduino, um es zu brennen. Nach dem Brennen können Sie es mit dem USB-UART-Konverter oder dem gleichen Programmierer programmieren, den Sie zum Brennen des Bootloaders verwenden.

Nach dem Hochladen des Programms können Sie das Servo an die Platine anschließen. Das letzte Servo (am Ende der Schlange) ist Servo 1 und Servo 8 ist am nächsten zum Schlangenkopf.

Es gibt keinen Stabilisator auf der Platine, so dass die maximale Spannung, die Sie daran anschließen können, 5 V beträgt.

Atmega sowie Servomotoren funktionieren mit 3, 7V Li-Po und ich empfehle es für dieses Projekt zu verwenden, da es sehr klein und sehr leistungsstark ist. Sie finden es in einem alten RC-Spielzeug (ich habe meinen in einem alten RC-Hubschrauber gefunden).

Ich habe den Platinenpins RX und TX zum Programmieren hinzugefügt, aber auch für zukünftige Erweiterungen können Sie hier Sensoren anschließen oder z. B. Bluetooth-Modul.

Schritt 6: Programm

Das Programm verwendet eine Software-Servobibliothek, um 8 Servos gleichzeitig zu steuern. Es ist einfach das Inkrementieren und Dekrementieren der Servoposition mit einer kleinen Verschiebung, um eine Welle zu imitieren. Dank dieser Bewegung sieht es aus wie ein Wurm, bewegt sich aber auch effizienter.

Wenn Sie möchten, können Sie die Verzögerung am Ende der Schleife ändern. Diese Verzögerungssteuergeschwindigkeit der Schlange. Wenn Sie also einen kleineren Wert angeben, bewegt er sich schneller, ein höherer Wert = langsamer. Ich habe 6 gegeben, weil dies die höchste Geschwindigkeit ist, bei der die Schlange nicht überrollt. Aber Sie können damit experimentieren.

Sie können auch den maximalen und minimalen Wert ändern, um die Bewegungen zu vergrößern.

#enthalten

SoftwareServo Servo1, Servo2, Servo3, Servo4, Servo5, Servo6, Servo7, Servo8;

int b_pos, c_pos, d_pos, e_pos; String-Befehl; int-Differenz = 30; int-Winkel1 = 90; int-Winkel2 = 150;

int ser1 = 30;

int ser2 = 70; int ser3 = 110; intser4 = 150;

int-Minimum = 40;

int-Maximum = 170;

bool inkrement_ser1 = wahr;

bool inkrement_ser2 = wahr; bool inkrement_ser3 = wahr; bool inkrement_ser4 = wahr;

bool inkrement_ser5 = wahr;

intser5 = 90;

bool inkrement_ser6 = wahr;

int ser6 = 90;

Leere Einrichtung () {

Serial.begin (9600); servo1.attach(3); servo2.attach(5); servo3.attach(6); servo4.attach(9); servo5.attach(10); servo6.attach(11); servo7.attach(12); servo8.attach(13);

servo1.write (90);

servo2.write (130); servo3.write (90); servo4.write (100); servo5.write (90); servo6.write (90); servo7.write (90); servo8.write (90);

}

Leere Schleife () {

nach vorne(); SoftwareServo::refresh(); }

Void vorwärts(){

if(increment_ser1){

ser1++; }sonst{ ser1--; }

if(ser1 maximal){

Inkrement_ser1 = falsch; }

servo1.write (ser1);

if(increment_ser2){

ser2++; }sonst{ ser2--; }

if(ser2 maximal){

Inkrement_ser2 = falsch; }

servo3.write (ser2);

if(increment_ser3){

ser3++; }sonst{ ser3--; }

if(ser3 maximal){

Inkrement_ser3 = falsch; }

servo5.write (ser3);

if(increment_ser4){

ser4++; }sonst{ ser4--; }

if(ser4 maximal){

Inkrement_ser4 = falsch; }

servo7.write (ser4);

Verzögerung(6);

}

Schritt 7: Fazit

Abschluss
Abschluss
Abschluss
Abschluss

Ich finde, dieser Roboter sieht sehr gut aus. Ich wollte einen Schlangenroboter bauen, aber schließlich habe ich etwas gemacht, das einem Wurm ähnelt. Funktioniert aber sehr schön. Bei Fragen hinterlassen Sie einen Kommentar oder schreiben Sie mir: [email protected]

Sie können auch hier auf meiner Website über diesen Roboter lesen (auf Polnisch):

nikodembartnik.pl/post.php?id=3

Dieser Roboter gewann den ersten Preis beim Robots Festival in Chorzów in der Kategorie Freestyle.

Robotik-Wettbewerb 2016
Robotik-Wettbewerb 2016
Robotik-Wettbewerb 2016
Robotik-Wettbewerb 2016

Zweiter Preis beim Robotics Contest 2016