Prof. J. Walter - Informationstechnik, Mikrocomputertechnik, Digitale Medien Softwaredoku
Hochschule Karlsruhe Logo Bachelorthesis
Entwicklung eines Seilroboters zur Beschriftung von Oberflächen
Development of a Cable Robot for Plotting on Surfaces
Sommersemester 2019
jato1016

Software Dokumentation

Die verwendete Software wird in folgende Kategorien gegliedert:

1. Repetier Firmware (Arduino Due)
2. Repetier Server Image (Raspberry Pi)
3. G-Code Converter (PC)

1. Repetier Firmware (Arduino Due)

Zur Maschinensteuerung wird eine angepasste Version der Repetier-Firmware verwendet (Version 2.0 dev). Hierbei handelt es sich um eine hochperformante Firmware, die für 3D-Drucker, Lasergravierer/Laserschneider und CNC-Fräsen konzipiert wurde. Durch die relativ einfach gehaltene Einbindung eigener Kinematiken ist eine Steuerung von Maschinen mit bis zu sieben Achsen gut umsetzbar.
Die Dokumentation der Firmware findet sich unter folgendem LINK, hier wird auch der Installationsprozess zu Visual Studio Code und PlatformIO beschrieben. Weiterführende Informationen bietet das Repetier Forum, in welchem der Entwickler schnell und kompetent auf Fragen eingeht.

Bearbeitet wird die Firmware mit der IDE "Visual Studio Code" unter Verwendung des Plugins "PlatformIO". PlatformIO unterstützt eine große Bandbreite an Microcontrollern und bietet in Verbindung mit Visual Studio Code eine professionellere Arbeitsumgebung als z.B. die Arduino-IDE.

Die verwendete Firmware kann HIER heruntergeladen werden.

2. Repetier Server Image (Raspberry Pi)

Repetier Server ist ein Druckserver, welcher zur Steuerung von 3D-Druckern verwendet wird. Der Server dient der Speicherung von G-Codes und der Ansteuerung des Plotters über WLAN. Zum Betrieb des Servers auf einem Raspberry Pi mit Touchscreen wird eine kostenpflichtige Vollversion benötigt, für einen Betrieb ohne Touchscreen (nur Browser-Interface) reicht die Gratisversion.

Repetier Server bietet u.a. folgende Features:

-flashen des Arduinos (Firmware-Update), die Firmware wird als .bin-Datei auf den Server geladen und von diesem geflashed
-programmieren eigener G-Code-Befehle, welche wahlweise auf Knopfdruck oder ereignisabhängig (Druckende, Pause, etc.) abgerufen werden
-Fernsteuerung und Überwachung des Plotters über das Internet
-Stand-Alone-Betrieb des Plotters (kein Host-PC zum Betrieb notwendig)
-Hochladen von G-Codes auf den Server via WLAN und USB-Stick
-mögliche Anbindung einer Webcam, automatische Erstellung von Zeitrafferaufnahmen
-Anzeige und Speicherung von Logdateien
-Anzeige des Druckstatus und der verbleibenden Druckzeit

Unter folgendem LINK finden sich Anweisungen zum Download und zur Installation des Server Images.
Unter folgendem LINK finden sich Anweisungen zur Einbindung des Touchscreens an den Raspberry Pi.

3. G-Code Converter (PC)

Als G-Code-Converter können verschiedene Programme verwendet werden. Welches Programm am besten geeignet ist, hängt von der zu plottenden Datei und dem gewünschten Aussehen des erstellten Bildes ab.

3.1. Inkscape

Inkscape ist ein Grafikprogrammm, welches gratis zum Download bereitgestellt wird. Es eignet sich z.B., um Texte und einfache Grafiken (Logos, Piktogramme etc.) in G-Code umzuwandeln. Das hierfür benötigte Plugin "Gcode Tools" ist bereits in Inkscape enthalten.
Die Verwendung des Plugins wird in Video- und Textform unter folgendem LINK beschrieben.


Mit Inkscape erstellter Plot der Fourier-Transformation

3.2 Makeangelo Software

Bei der Makeangelo Software handelt es sich um ein Programm zur Erstellung von G-Codes für Seilplotter. Die Software wird auf Pay-What-You-Want-Basis zum Download angeboten, kann also auch gratis heruntergeladen werden. Im Gegensatz zu Inkscape eignet es sich eher für fotorealistische Abbildungen und künstlerische Anwendungsbereiche. Mit Makeangelo können Fotos so bearbeitet werden, dass sie vom Plotter in Graustufen- oder Vierfarbendarstellung gezeichnet werden können. Außerdem bietet die Software die Möglichkeit, verschiedene geometrische Muster zu erzeugen und eignet sich so zur Erstellung von generativer Kunst.



Verwendung von Makeangelo:

1. "Settings" aufrufen
2. "Model: Zarplotter" auswählen
3. Maschinendimensionen eingeben
4. Größe der Zeichenflache unter "Paper" eingeben
5. Geschwindigkeiten und Stiftgröße unter "Pen" eingeben
6.1. entweder Bild unter "Open File" laden und bearbeiten
6.2 oder geometrisches Muster unter "Generate Art" erstellen
7. G-Code unter "Save to file/SD card" speichern
8. Postprocessing

zu 8.: Da der ausgegebene G-Code nicht für das Koordinatensystem des hier behandelten Seilplotters ausgelegt ist, ist ein Postprocessing notwendig. Hierfür wurde ein Python-Script (Download) erstellt, welches den mit Makeangelo erstellten G-Code für den Seilplotter verwendbar macht.
Hierfür wird die Größe des Seilplotters in das Skript eingetragen ("GCodeConverter.py" in Texteditor öffnen, z.B. Notepad++), der G-Code im Ordner des Postprocessors abgelegt und die Umwandlung mittels Doppelklick auf "Start.cmd" gestartet.


Mit Makeangelo erstellter Plot eines Fotos, gezeichnet mit einem Stabilo-Fineliner



 

  Mit Unterstützung von Prof. J. Walter Sommersemester 2019