Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

mechatronik:sose24:remote-plotter

Remote Plotter

Atzen: Tomke P. Matthias W. Sander W. Paul H.

Idee

Unsere Idee war es ein Arm mit zwei Gelenken zu bauen, welcher oben an einer Tafel befestigt werden kann und menschliche Zeichnungen von einem Computer/Tablett bekommt und diese auf der Tafel selbstständig nachzeichnet.

Aufbau

Der Arduino soll durch die Steppermotoren die Winkel der Arme kontrollieren. Auf einem Computer nimmt ein Programm Zeichnungen eines Menschen an und konvertiert diese in eine Ansammlung von Punkten in einem Koordinatensystem. Der Arduino soll dann die Anweisung über geraden zwischen den Punkten zu zeichnen Ausführen, indem er die Koordinaten in Winkel seiner Arme umrechnet und die Motoren dementsprechend bewegt. Der Plotter soll einen Kopf haben, in welchen mit Servomotoren verschiedene Tolls ausgewählt werden können zb. Stift, Leer, Radierer und zukünftig verschiedene Farben.

Elektronik

Steckplatiene


Pin Tabelle

Motor Funktion Arduino
Haupt Direction 2
Step 3
Neben INS1 9
INS2 10
INS3 11
INS4 12

Software

Die Software besteht aus zwei Komponenten; dem Teil der auf dem Computer bzw. Laptop läuft (Frontend) und dem Teil, der auf dem Aduino läuft (Backend).

(Der gesamte Code ist unten im Reiter „Code“ nochmal zu finden)

Frontend

Unser Frontend-Skript stellt eine Nutzeroberfache bereit, auf welcher ein User auf einer Zeichenfläche mit der Maus oder Touchscreen zeichnen kann. Die Zeichnung wird durch Punkte repräsentiert, welche über den SerialPort an den Arduino zur Verarbeitung gesendet werden.

Backend

Das Backend ist in zwei Klassen unterteilt

Axies

Axies ist eine Abstraktion für Bewegung auf einem XY-Grid. Im falle des Arms werden die XY-Koordiaten in Winkel umgerechnet, und an die beiden Motoren gesendet, um eine Position zu erreichen.

Gantry

Ganrty stellt den Kopf des Plotters dar, es können mit Servos verschiedene Tools ausgewählt werden eg. Stift, Farben, Radierer, Keins.

(In der Hardware ist der Gantry noch nicht implementiert :AUGENROLL: )

Main

Im Main Source wird der Roboter mit seinen Maßen initialisiert. Anschließend welches das Programm zum Read-Loop, in welchem aus dem Serial Befehle gelesen werden und vom Roboter ausgeführt werden.

Mechanik

Aufbau


Unsere Idee ist es, zwei Motoren mit einem Arm zu verbinden. Dabei sitzt das eine Ende es Armes auf dem ersten Motor und der zweite Motor befindet sich im anderen Ende des Armes. Ein zweiter Arm wird mit dem zweiten Motor verbunden um einen Stift zu halten. Somit lassen sich durch die zwei „Gelenke“ (Motoren) alle Punkte im Bereich der Arme erreichen. Daher ist es möglich mit dieser simplen Konstruktion ein Bild zu malen.

Modelle

Erster Versuch

FIXME rp_proto0.jpg
mussten wir leider verwerfen, da die ersten Motoren nicht so funktioniert haben wie gedacht

Erster Arm

Auf der Oberseite des Arms befindet sich eine Vertiefung für den Motor, welcher den zweiten Arm hält.
Arm1 Oberseite

Um den Arm zu halten, befindet sich eine weitere Vertiefung in Form eines Zahnrads in welcher der Aufsatz der ersten Motorachse passt.
Arm1 Unterseite

Anmerkung: Unser finales Model für Arm 1 ist nicht perfekt, denn die zwei dünnen Wände an der Motorhalterung mussten wir wegfeilen, damit der Motor richtig sitzt. Außerdem musste noch etwas Platz ,für die Kabel des Motors, freigebohrt werden.

bohrspass

Zweiter Arm

Auf der linken Seite ist das Loch für den Stift, in das eine Schraube gedreht werden kann, um den Stift zu fixieren. Auf der rechten Seite ist das Loch für die Motorachse.
Arm2 Magischer Stift

Erfahrung

3D-Druck

Da fast jeder von uns nicht viel Erfahrung mit dem Entwerfen und Drucken von Bauteilen hatte, gingen es anfangs schleppend voran. An das CAD-Programm als auch die Kunst des 3D-Drucken mussten wir uns langsam aber sicher heranwagen. Schon für unseren ersten Prototypen hatten wir viele Test-Drucke in Auftrag gegeben und viel gewartet, wie man in der Abbildung sehen kann. Dieses Problem verfolgte uns bis zu den Test-Drucks vor unserem finalen Druck und hat uns ein bisschen mehr Zeit gekostet, als nötig war.
rp_testdruck.jpg
Tipp: Lieber eine Test-Platte drucken mit vielen Formen, als viele separate kleinflächige Platten drucken, um schneller zu Erkenntnissen zu kommen.
Manchmal wollte der 3D-Drucker aber einfach nicht so wie wir es wollten, also war es Zeit für eine Kalibrierung.
Tipp: Martin scheut sich nicht davor euch eine kleine aber feine Einführung in die wundersame Welt der 3D-Druckerkalibrierung zu geben, falls ihr ähnliche Probleme wie auf dem folgendem Bild habt.
rp_fehldruck.jpg

Schritte für die Zukunft

  • Robo zum malen bringen :(
  • Der Hauptmotor scheint kaputt, muss ersetzt werden
  • Plotter Kopf mit Stift muss implementiert werden
  • fester Halterung für Papier/Fläche und Roboter
  • Bessere Halterung, die nicht von Gummibändern gehalten werden muss
  • Mobil- und oder Webapp zum Malen wäre etwas Feines
  • Support für verschiedene Farben im Werkzeugsatz

Code

mechatronik/sose24/remote-plotter.txt · Zuletzt geändert: 2024/07/31 10:41 von TPfoch