Inhaltsverzeichnis:

Zeichnungsroboter für Arduino - Gunook
Zeichnungsroboter für Arduino - Gunook

Video: Zeichnungsroboter für Arduino - Gunook

Video: Zeichnungsroboter für Arduino - Gunook
Video: Zeichnungsroboter Arduino programmieren 2024, Juli
Anonim
Image
Image
Zeichenroboter für Arduino
Zeichenroboter für Arduino
Zeichenroboter für Arduino
Zeichenroboter für Arduino

Hinweis: Ich habe eine neue Version dieses Roboters, die eine Leiterplatte verwendet, einfacher zu bauen ist und über eine IR-Hinderniserkennung verfügt! Schaut es euch unter https://bit.ly/OSTurtle. an

Ich habe dieses Projekt für einen 10-stündigen Workshop für ChickTech.org entworfen, dessen Ziel es ist, Teenager-Frauen an MINT-Themen heranzuführen. Die Ziele für dieses Projekt waren:

  • Einfach zu bauen.
  • Einfach zu programmieren.
  • Habe etwas Interessantes gemacht.
  • Kostengünstig, damit die Teilnehmer es mit nach Hause nehmen und weiter lernen können.

Mit diesen Zielen im Hinterkopf waren hier einige der Designentscheidungen:

  • Arduino-kompatibel für einfache Programmierung.
  • AA-Batterieleistung für Kosten und Verfügbarkeit.
  • Schrittmotoren für genaue Bewegungen.
  • 3D-gedruckt für einfache Anpassung.
  • Stift-Plotting mit Turtle-Grafik für interessante Ausgabe.
  • Open Source, damit Sie Ihre eigenen erstellen können!

Hier ist der Roboter, der dem, was ich tun wollte, am nächsten kam: https://mirobot.io. Ich habe keinen Laserschneider und der Versand aus England war unerschwinglich. Ich habe einen 3D-Drucker, also kann man sehen, wo das hinführt…

Lassen Sie sich nicht vom Fehlen eines 3D-Druckers abschrecken. Auf www.3dhubs.com können Sie lokale Bastler finden, die Ihnen helfen möchten

Es hat viel Arbeit gekostet, aber ich bin mit dem Ergebnis zufrieden. Und ich habe dabei einiges gelernt. Lass mich wissen was du denkst!

Schritt 1: Teile

Teile
Teile
Teile
Teile
Teile
Teile
Teile
Teile

Es gibt eine Reihe von Möglichkeiten, Roboter anzutreiben, anzutreiben und zu steuern. Möglicherweise haben Sie verschiedene Teile zur Hand, die funktionieren, aber dies sind die, die ich ausprobiert habe und für gut befunden habe:

Elektronik:

  • 1- Arduino UNO oder gleichwertig- adafruit.com/products/50

    Adafruit ist jetzt die US-Manufaktur für echte Arduinos! Holen Sie sie von der Quelle

  • 2-Getriebe 5V Stepper- adafruit.com/products/858
  • 1- ULN2803 Darlington-Treiber - adafruit.com/products/970
  • 1- Halbes Steckbrett - adafruit.com/products/64
  • 12- Herren-Herren-Pullover- adafruit.com/products/1956

    Mindestens zwei sollten 6 Zoll groß sein, der Rest kann 3 Zoll groß sein

  • 1- Micro Servo- adafruit.com/products/169
  • 1- Stiftleiste - digikey.com/short/t93cbd
  • 1-2 x AA Halter - digikey.com/short/tz5bd1
  • 1 -3 x AA Halter- digikey.com/short/t5nw1c
  • 1 -470 uF 25V Kondensator - www.digikey.com/product-detail/de/ECA-1EM471/P5155-ND/245014
  • 1 -SPDT-Schiebeschalter - www.digikey.com/product-detail/de/EG1218/EG1903-ND/101726
  • 1- USB-Mikrokabel
  • 5 - AA-Batterien

Hardware:

  • 2- 1 7/8" ID x 1/8" O-Ring- mcmaster.com/#9452K96
  • 1- Laufrolle 5/8" Lager- mcmaster.com/#96455k58/=yskbki
  • 10- M3 x 8 mm Linsenkopfschraube - mcmaster.com/#92005a118/=z80pbr
  • 4- M3 x 6 mm Flachkopfschraube- mcmaster.com/#91420a116/=yskru0
  • 12- M3-Mutter- mcmaster.com/#90591a250/=yskc6u3D
  • 2 - 1/4" gewindeformende 4-20 Schrauben

Gedruckte Teile (schauen Sie unter www.3dhubs.com nach, wenn Sie keinen Zugang zu einem Drucker haben):

  • https://www.thingiverse.com/thing:1091401

    • 1 x Kugellagerrolle
    • 1 x Gehäuse
    • 2 x Räder
    • 2 x Stepperhalterung
    • 1 x Stifthalter / Servohalterung
    • 1 x Stifthalsband
  • Ich verwende eine niedrige Auflösung, 100 % Füllung und keine Unterstützung. Dies entspricht etwa 4 Stunden Druckzeit.

Lieferungen:

  • Kreuzschlitzschraubendreher
  • Heißklebepistole
  • Digital-Multimeter
  • Scharfes Messer
  • Crayola farbige Marker

Schritt 2: Flashen Sie die Firmware

Bevor wir zu weit in die Konstruktion einsteigen, laden wir die Test-Firmware auf den Mikrocontroller. Das Testprogramm zeichnet nur Kästchen, damit wir die richtige Richtung und Dimension überprüfen können.

  1. Laden Sie die Arduino-Software von www.arduino.cc/en/Main/Software herunter
  2. Öffnen Sie die Arduino-Software.
  3. Laden Sie die angehängte ZIP-Datei herunter und entpacken Sie sie an den Speicherort des Arduino-Skizzenbuchs.

    Sie können diesen Speicherort in der Arduino IDE finden (oder ändern): [Datei] -> [Einstellungen] -> "Sketchbook Location"

  4. Testskizze laden: [Datei] -> [Skizzenbuch] -> [TIRL_Arduino_TEST]
  5. Verbinden Sie Ihren Arduino mit einem USB-Kabel mit Ihrem Computer.
  6. In der Arduino-IDE:

    1. Stellen Sie Ihren Board-Typ ein: [Tools] -> [Board] -> Ihr Board-Typ.
    2. Stellen Sie Ihren seriellen Port ein: [Tools] -> [Port] -> Normalerweise der letzte aufgeführte.
  7. Laden Sie die Skizze mit dem Pfeilsymbol hoch.

Bei Problemen finden Sie Hilfe unter www.arduino.cc/en/Guide/Troubleshooting.

Schritt 3: Stifthalter und Batteriehalter

Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
Stifthalter und Batteriehalter
  1. Setzen Sie die Muttern an der Oberseite des Chassis ein (Bild 1). Möglicherweise müssen Sie sie eindrücken.
  2. Installieren Sie den Stifthalter mit der Servohalterung an der Oberseite des Chassis (Bild 2 & 3).
  3. Befestigen Sie die Batteriehalter an der Unterseite des Chassis mit 3Mx6mm Flachkopfschrauben (Bild 4)

    • Sie benötigen mindestens 5xAA, um ein Arduino über den integrierten Regler ordnungsgemäß mit Strom zu versorgen. Sechs würde auch funktionieren, also habe ich Löcher für beide Größen auf beiden Seiten eingefügt.
    • Sie möchten, dass das Gewicht in Richtung der Rolle verlagert wird, also legen Sie das 3xAA nach hinten.
    • Richten Sie die Halter so aus, dass die Kabel den rechteckigen Kabelwegen am nächsten sind.
  4. Fädeln Sie die Batteriekabel durch die rechteckigen Kabelführungen (Bild 4).
  5. Wiederholen Sie dies für den anderen Batteriehalter.

Hinweis: Sofern nicht anders angegeben, sind die restlichen Schrauben 3Mx8mm Linsenkopfschrauben

Schritt 4: Stepper-Backets

Stepperbackets
Stepperbackets
Stepperbackets
Stepperbackets
Stepperbackets
Stepperbackets
Stepperbackets
Stepperbackets
  1. Setzen Sie eine Mutter in die Stepperhalterung ein und befestigen Sie diese mit einer Schraube oben am Chassis (Bild 1).
  2. Setzen Sie den Stepper in die Halterung ein und befestigen Sie ihn mit Schrauben und Muttern.
  3. Wiederholen Sie dies für die andere Halterung.

Schritt 5: Caster

Caster
Caster
Caster
Caster
  1. Setzen Sie das Kugellager in die Laufrolle ein.

    Drücken Sie es nicht mit Gewalt ein, sonst bricht es. Verwenden Sie einen Fön oder eine Heißluftpistole, um das Material bei Bedarf aufzuweichen

  2. Bringen Sie die Laufrolle an der Unterseite des Chassis vor dem Batteriehalter an.

Ich habe andere runde Gegenstände wie Murmeln ausprobiert, aber glatt und schwer scheint gut zu funktionieren. Wenn Sie einen anderen Durchmesser benötigen, können Sie die openScad-Datei (https://www.thingiverse.com/thing:1052674) so bearbeiten, dass sie zu dem passt, was Sie gerade zur Hand haben.

Schritt 6: Steckbrett und Gehirne

Steckbrett und Gehirne
Steckbrett und Gehirne
Steckbrett und Gehirne
Steckbrett und Gehirne
Steckbrett und Gehirne
Steckbrett und Gehirne
  1. Entfernen Sie eine der Stromschienen mit einem scharfen Messer, indem Sie den unteren Kleber durchschneiden (Bild 1).

    Eine Schiene hat Strom (rot) am äußeren Rand, die andere negativ (blau). Ich behalte das erste beigefügt, und es wird den Schaltplänen und Fotos entsprechen. Wenn Sie das andere verwenden, passen Sie einfach die Drähte entsprechend an

  2. Halten Sie das Steckbrett über die Chassisschienen und markieren Sie, wo sie die Kante schneiden (Bild 2).
  3. Mit einem Lineal (wie die entfernte Stromschiene) die Leitungen markieren und durch die Unterlage schneiden (Bild 3).
  4. Legen Sie das Steckbrett auf das Chassis, wobei die Schienen den freiliegenden Klebstoff berühren (Bild 4).
  5. Befestigen Sie das Arduino mit 4-20 Schrauben an der anderen Seite des Chassis (Bild 5).

Schritt 7: Kondensator- und Teilplatzierung

Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
Kondensator- und Teileplatzierung
  1. Legen Sie den Darlington-Treiber und den Netzschalter auf das Brotbrett (Bild 1).

    • Ich habe orangefarbene Punkte zur Sichtbarkeit hinzugefügt, um Folgendes zu markieren:

      • Pin 1 des Darlington-Treibers
      • Der Batteriestift des Mikrotrollers. Der Netzschalter "on" Position.
  2. Kürzen Sie die Kondensatorleitungen bei Bedarf (länger ist negativ) (Bild 2).
  3. Setzen Sie den Kondensator in die richtigen Schienen oben auf dem Steckbrett ein (Bild 3).

Schritt 8: Leistung

Leistung
Leistung
Leistung
Leistung
Leistung
Leistung
  1. Mit den rechten Batteriekabeln: Verbinden Sie die rote Leitung mit dem ersten Pin des Netzschalters (Bild 1).
  2. Verbinden Sie das schwarze Kabel mit einer leeren Reihe zwischen dem Mikrocontroller und dem Darlington-Chip (Bild 1).
  3. Mit den linken Batteriekabeln: Verbinden Sie die rote Leitung mit der gleichen Reihe wie die schwarze Leitung der anderen Batterie (Bild 2).
  4. Verbinden Sie die schwarze Linie mit der negativen Schiene des Steckbretts (Bild 2).
  5. Schließen Sie den Mikrocontroller an die Stromversorgung an:

    1. Roter Jumper von positiver Schiene zum Batteriestift (orangefarbener Punkt, Bild 3).
    2. Schwarzer Jumper von der negativen Schiene zum mit "G" gekennzeichneten Pin (Bild 4).
  6. Legen Sie die Batterien ein und schalten Sie das Gerät ein (Bild 5).
  7. Sie sollten sehen, dass die grünen und roten Lichter des Controllers aufleuchten (Bild 6).

Fehlerbehebung:

  • Wenn die Mikrocontroller-LEDs nicht aufleuchten, schalten Sie das Gerät sofort aus und beheben Sie Folgendes:

    • Batterien richtig herum eingelegt?
    • Überprüfen Sie die Positionierung der Batteriekabel.
    • Überprüfen Sie die Position der Schalterleitungen.
    • Verwenden Sie ein Multimeter, um die Spannungen der Batterien zu überprüfen.
    • Verwenden Sie ein Multimeter, um die Stromschienenspannungen zu überprüfen.

Schritt 9: Stepper Power

Stepperleistung
Stepperleistung
Stepperleistung
Stepperleistung
Stepperleistung
Stepperleistung

Nachdem Sie nun den Mikrocontroller mit Strom versorgt haben, schließen wir die Verkabelung der Stepper ab:

  1. Verbinden Sie einen schwarzen Jumper vom oberen linken Darlington-Pin mit der negativen Seite der Stromschiene (Bild 1).
  2. Verbinden Sie einen roten Jumper vom unteren linken Darlington-Pin mit der positiven Seite der Stromschiene (Bild 1).
  3. Verbinden Sie einen roten Jumper vom unteren linken Darlington-Pin mit einer Reihe rechts vom Darlington (Bild 2).
  4. Stecken Sie die Stiftleisten für die weißen JST-Anschlüsse des Steppers (Bild 2).

Schritt 10: Stepper-Steuersignale

Stepper-Steuersignale
Stepper-Steuersignale
Stepper-Steuersignale
Stepper-Steuersignale
Stepper-Steuersignale
Stepper-Steuersignale

Der Mikrocontroller liefert 5-Volt-Signale an das Darlington-Array, das wiederum VCC an die Schrittspulen liefert:

  1. Beginnen Sie mit dem Stift neben dem Massestift am Darlington-Treiber und installieren Sie die orangefarbenen, gelben, grünen und blauen Drähte in dieser Reihenfolge (Bild 1).
  2. Befestigen Sie die Jumper an den folgenden Arduino-Pins (Bild 2):

    1. orange - Digitalstift 4
    2. gelb - Digitaler Pin 5
    3. grün - Digitalstift 6
    4. blau - Digitalstift 7
  3. Zurück beim Darlington setzen Sie den Jumper für den anderen Stepper in umgekehrter Reihenfolge fort:

    blau, grün, gelb und orange (Bild 3)

  4. Befestigen Sie die Jumper an den folgenden Arduino-Pins (Bild 4):

    1. blau - Digitaler Pin 9 (Pin 8 wird letzterer für das Servo verwendet).
    2. grün - Digitaler Pin 10
    3. gelb - Digitalstift 11
    4. orange - Digitalstift 12

Schritt 11: Schrittspulenverbindungen

Anschlüsse der Schrittspulen
Anschlüsse der Schrittspulen
Anschlüsse der Schrittspulen
Anschlüsse der Schrittspulen
Anschlüsse der Schrittspulen
Anschlüsse der Schrittspulen

Die weißen JST-Anschlüsse des Steppers werden an der Stiftleiste befestigt. Das rote Kabel ist Strom und sollte mit den roten Strom-Jumpern übereinstimmen, die wir zuvor installiert haben (Bild 1).

Alle Farben sollten mit den Mikrocontroller-Jumpern auf der gegenüberliegenden Seite des Darlingtons übereinstimmen, mit Ausnahme von Grün, das zum rosa Draht des Steppers passt (Bild 2).

Schritt 12: Servo

Servo
Servo
Servo
Servo
Servo
Servo
  1. Montieren Sie das Servohorn mit dem Servo im Uhrzeigersinn bis zum Anschlag und dem Horn horizontal (Bild 1).
  2. Befestigen Sie das Servo an der Halterung und das Horn zeigt auf die rechte Seite des Steppers (Bild 1).
  3. Bringen Sie braune (Masse), rote (5 V Stromversorgung) und weiße (Signal) Jumper in den Servoanschluss an, passend zu den Servokabelfarben (Bild 2).
  4. Bringen Sie die Strom- und Erdungsjumper an die Masse und den 5V-Header des Arduino an (Bild 3).
  5. Verbinden Sie das weiße Signalkabel mit dem Digital Pin 8 des Arduino (Bild 4).

Schritt 13: Räder

Räder
Räder
Räder
Räder
  1. Legen Sie den Gummi-O-Ring um den Rand des Rades (Bild 1).
  2. Wenn die Nabe auf der Achse locker sitzt, können Sie sie mit einer 3M-Schraube befestigen (Bild 2).

    Ziehen Sie es nicht zu fest an, sonst streifen Sie den Kunststoff ab

Schritt 14: Testen

Hoffentlich haben Sie die Firmware bereits in Schritt 2 hochgeladen. Wenn nicht, tun Sie es jetzt.

Die Test-Firmware zeichnet einfach wiederholt ein Quadrat, damit wir Richtung und Genauigkeit überprüfen können.

  1. Stellen Sie Ihren Roboter auf eine glatte, flache, offene Oberfläche.
  2. Schalten Sie das Gerät ein.
  3. Beobachten Sie, wie Ihr Roboter Quadrate zeichnet.

Wenn Sie keine Lichter am Mikrocontroller sehen, gehen Sie zurück und beheben Sie die Stromversorgung wie in Schritt 8.

Wenn sich Ihr Roboter nicht bewegt, überprüfen Sie in Schritt 9 die Stromverbindungen zum Darlington-Treiber.

Wenn sich Ihr Roboter unregelmäßig bewegt, überprüfen Sie in Schritt 10 die Stiftverbindungen für den Mikrocontroller und den Darlington-Treiber.

Schritt 15: Kalibrierung

Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung
Kalibrierung

Wenn sich Ihr Roboter in einem ungefähren Quadrat bewegt, ist es an der Zeit, etwas Papier abzulegen und einen Stift hineinzustecken.

Messen Sie Ihren Raddurchmesser (Bild 1) und Radstand (Bild 2) in Millimetern.

Ihre Kalibrierungseinstellungen im Code sind:

Schwimmerrad_dia=63; // mm (erhöhen = ausdrehen)

Schwimmerrad_Basis = 109; // mm (increase = spiral in) int steps_rev=128; // 128 für 16x Getriebe, 512 für 64x Getriebe

Ich habe mit einem gemessenen Raddurchmesser von 65 mm begonnen und Sie können sehen, wie sich die Boxen bei jedem Schritt nach außen oder im Uhrzeigersinn drehen (Bild 3).

Ich kam schließlich zu einem Wert von 63 mm (Bild 4). Sie können sehen, dass es immer noch einen inhärenten Fehler aufgrund von Getriebespiel und dergleichen gibt. Nah genug, um etwas Interessantes zu tun!

Schritt 16: Anheben und Absenken des Stifts

Heben und Senken des Stifts
Heben und Senken des Stifts
Heben und Senken des Stifts
Heben und Senken des Stifts

Wir haben ein Servo hinzugefügt, aber nichts damit gemacht. Es ermöglicht Ihnen, den Stift anzuheben und abzusenken, damit sich der Roboter ohne Zeichnen bewegen kann.

  1. Setzen Sie das Stifthalsband auf den Stift (Bild 1).

    Wenn es locker ist, kleben Sie es fest

  2. Stellen Sie sicher, dass es das Papier berührt, wenn der Servoarm abgesenkt wird.
  3. Stellen Sie sicher, dass es das Papier beim Anheben nicht berührt.

Die Servowinkel können entweder durch Entfernen des Horns und Neupositionieren oder über die Software eingestellt werden:

int PEN_DOWN = 20; // Winkel des Servos, wenn der Stift unten ist

int PEN_UP = 80; // Winkel des Servos, wenn der Stift oben ist

Die Stiftbefehle sind:

penup();

pendown();

Wenn Sie andere Stiftgrößen verwenden möchten, müssen Sie den Stifthalter (www.thingiverse.com/thing:1052725) und das Stifthalsband (www.thingiverse.com/thing:1053273) auf den richtigen Durchmesser anpassen.

Schritt 17: Viel Spaß

Image
Image

Ich hoffe du hast es bis hierher ohne allzu viele Schimpfwörter geschafft. Lassen Sie mich wissen, womit Sie Schwierigkeiten hatten, damit ich die Anweisungen verbessern kann.

Jetzt ist es Zeit zu erkunden. Wenn Sie sich die Testskizze ansehen, werden Sie sehen, dass ich Ihnen einige Standardbefehle für "Schildkröte" bereitgestellt habe:

vorwärts (Entfernung); // Millimeter

rückwärts (Entfernung); links (Winkel); // Grad rechts (Winkel); penup(); pendown(); getan(); // Stepper loslassen, um Batterie zu sparen

Mit diesen Befehlen sollten Sie in der Lage sein, fast alles zu tun, vom Zeichnen von Schneeflocken oder dem Schreiben Ihres Namens. Wenn Sie Hilfe beim Einstieg benötigen, sehen Sie sich Folgendes an:

  • https://code.org/learn
  • https://codecombat.com/

Schritt 18: Andere Plattformen

Andere Plattformen
Andere Plattformen

Könnte dieser Roboter mit einem gemacht werden?

Jawohl! Diese Plattform ist sehr flexibel. Sie müssten hauptsächlich nur das Chassis ändern.

Ich habe es mit einem Raspberry Pi (Bild 1) und einem Adafruit Trinket (www.instructables.com/id/Low-Cost-Arduino-Compatible-Drawing-Robot/) (Bild 2) gemacht.

Lass mich wissen, was dir einfällt!

Empfohlen: