Abo
  • Services:
Anzeige
Für unseren Plotter haben wir uns querbeet bedient.
Für unseren Plotter haben wir uns querbeet bedient. (Bild: Martin Wolf / Golem.de)

Mit Laser statt Stift

Fündig werden wir aber doch. Das Lasergravur-Plugin von J Tech Photonics ist zwar, wie der Name bereits sagt, für Lasergravierer gedacht, lässt sich aber auch für unseren Plotter nutzen. Es ist nicht nur prinzipiell konfigurierbar, sondern produziert auch hübsche Ergebnisse. Insbesondere werden Bögen in G3-Anweisungen für kreisförmige Werkzeugbewegungen übersetzt statt in viele kleine G1-Linien. Allerdings hat das Plugin eine Schwäche: Es generiert nur Umrisse. Ausgefüllte Flächen kann es nicht erzeugen. Die Installation verlangt keinen Aufwand, nach dem Download müssen die vier Dateien des Paketes in das Extensions-Verzeichnis von Inkscape kopiert werden.

Anzeige

Für die Arbeit mit dem Plugin müssen das zu zeichnende Objekt oder die Objekte in Inkscape erst in Pfade übersetzt werden. Auf die ausgewählten Pfade wird dann das Plugin angewendet. Der entsprechende Menüeintrag befindet sich unter Erweiterungen - Generate Gcode - J Tech Photonics Laser Tool. Im erscheinenden Dialog müssen wir zwei Einträge ändern. Den Wert in Laser ON Command ändern wir auf unsere Servo-Steuerung: M280 P0 S120, damit wird der Stift abgesenkt. Laser OFF Command ändern wir auf M280 P0 S90, um den Stift anzuheben. Dann muss noch der Speicherort für die erzeugte Datei mit dem G-Code-Programm unter Verzeichnis angegeben werden und der eigentliche Name der Datei bei Dateiname. Mit Apply wird die Erzeugung gestartet. Je nach Komplexität der Grafik kann das durchaus dauern, insbesondere bei vektorisierten Fotografien.

Verbesserungspotenzial im G-Code

Die erzeugte G-Code-Datei können wir bereits auf unsere Maschine laden und das Bild zu Papier bringen. Allerdings enthält der Code noch einige Unschönheiten, die schon am Anfang deutlich werden:

M280 P0 S90 S0

G90
G21
G0 F3000
G0 X65.4159 Y27.3763
G4 P0
M280 P0 S120 S254

Die M280-Anweisungen haben jeweils zwei S-Parameter. Der zweite S-Parameter wird leider vom Plugin festcodiert eingefügt. Marlin interpretiert praktischerweise nur den ersten S-Parameter. Das muss allerdings nicht für jede Maschinensteuerung gelten.

Die Anweisungen G90 und G21 sorgen dafür, dass die Maschine immer absolut positioniert und als Einheit Millimeter verwendet wird. Was allerdings fehlt, ist ein G28-Kommando. Daher wird die Zeichnung irgendwo auf unserem Blatt gemalt, je nachdem, wo sich unser Stift gerade befindet und von der Maschine als Nullpunkt angenommen wird.

Neue G-Code-Anweisungen

Die beiden G0-Kommandos setzen zuerst die Bewegungsgeschwindigkeit für die nächste Bewegung. Der F-Parameter steht für Feed (zu Deutsch: Vortrieb). Danach wird der Stift an die angegebene Position bewegt. Die G0-Anweisung funktioniert analog zur früher beschriebenen G1-Anweisung, allerdings mit dem Unterschied, dass die Bewegung so schnell wie möglich erfolgen soll. Bei Marlin werden G0 und G1 identisch umgesetzt.

Die G4-Anweisung haben wir noch nicht vorgestellt. Sie pausiert die Ausführung des G-Codes. Das Plugin benutzt sie als Zeitspanne, in welcher der Laser seine volle Leistung aufbauen soll. Wir brauchen sie nicht, sie verlangsamt nur den Zeichenvorgang.

Das Plugin anpassen

Sowohl die fehlende G28-Anweisung als auch die überflüssigen Parameter wie Befehle lassen sich in einem Texteditor mit Suchen & Ersetzen einfügen beziehungsweise entfernen, per Script könnten wir das auch komplett automatisieren. Oder wir nutzen die Gelegenheit, einen etwas tieferen Blick in das Plugin zu werfen.

Die beiden Dateien des Plugins sind laser.inx und laser.py. Die erste Datei definiert Metadaten und den Export-Dialog, die zweite den eigentlichen Quellcode. Wir kopieren beide Dateien und benennen sie um in gplotter.inx und gplotter.py.

Zuerst bearbeiten wir die inx-Datei. In Zeile 3 und 4 setzen wir den Namen und den Identifier des Plugins neu. In der folgenden Zeile ändern wir den Verweis auf die abhängige Datei laser.py in gplotter.py. Die gleiche Änderung erfolgt auch in Zeile 28, dort wird festgelegt, dass diese Datei beim Aufruf des Menüpunktes ausgeführt werden soll.

Die weiteren Änderungen in dieser Datei sind eher kosmetischer Natur. In den Definitionen der Eingabeboxen für die Laser-an- und Laser-aus-Anweisungen in Zeile 8 und 9 ersetzen wir das Wort "Laser" durch "Pen" im Attribut _gui-text. Der vordefinierte Wert wird auf unsere Servo-Anweisungen gesetzt: "M280 P0 S120" und "M280 P0 S90". Zum Schluss geben wir noch einen Standardwert für den Verzeichniseintrag in Zeile 16 vor, um uns das Leben ein wenig bequemer zu machen.

 Kein G-Code-Programm kann alle knechtenPython-Code hacken für Anfänger 

eye home zur Startseite
derdiedas 05. Okt 2015

Es geht darum die Leute "anzufixen". Billigste Lösung ist Estlcam + Arduino...

jochenh 02. Okt 2015

Geht bei www.rapidfacture.com. Auch Einzelteile und Sonderanfertigungen.

am (golem.de) 02. Okt 2015

Sämtliche existierenden offenen Firmware-Programm gehen davon aus, dass die Z-Achse über...

Moe479 02. Okt 2015

die technik selbst ist garnicht so ultra kompliziert, finde ich, nur als hobbybastlerei...

derdiedas 02. Okt 2015

ich mache solche Dinge schon länger und über kleine selbstgebaute CNC Maschinen über den...



Anzeige

Stellenmarkt
  1. Techniker Krankenkasse, Hamburg
  2. FLO-CERT GmbH, Bonn
  3. Fresenius Medical Care Deutschland GmbH, Bad Homburg
  4. Edenred Deutschland GmbH, Berlin


Anzeige
Top-Angebote
  1. 13,99€
  2. 39,99€ mit Gutschein VFL6ESJY
  3. 199,90€ + 5,99€ Versand (Vergleichspreis CPU 206,39€)

Folgen Sie uns
       


  1. Breko

    Waipu TV gibt es jetzt für alle Netzbetreiber

  2. Magento

    Kreditkartendaten von bis zu 40.000 Oneplus-Käufern kopiert

  3. Games

    US-Spielemarkt wächst 2017 zweistellig

  4. Boeing und SpaceX

    ISS bald ohne US-Astronauten?

  5. E-Mail-Konto

    90 Prozent der Gmail-Nutzer nutzen keinen zweiten Faktor

  6. USK

    Nintendo Labo landet fast im Altpapier

  7. ARM-SoC-Hersteller

    Qualcomm darf NXP übernehmen

  8. Windows-API-Nachbau

    Wine 3.0 bringt Direct3D 11 und eine Android-App

  9. Echtzeit-Strategie

    Definitive Edition von Age of Empires hat neuen Termin

  10. Ein Jahr Trump

    Der Cheerleader der deregulierten Wirtschaft



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Netzsperren: Wie Katalonien die spanische Internetzensur austrickste
Netzsperren
Wie Katalonien die spanische Internetzensur austrickste

Spectre und Meltdown: All unsere moderne Technik ist kaputt
Spectre und Meltdown
All unsere moderne Technik ist kaputt
  1. Sicherheitsupdate Microsoft-Compiler baut Schutz gegen Spectre
  2. BeA Noch mehr Sicherheitslücken im Anwaltspostfach
  3. VEP Charter Trump will etwas transparenter mit Sicherheitslücken umgehen

Star Citizen Alpha 3.0 angespielt: Es wird immer schwieriger, sich auszuloggen
Star Citizen Alpha 3.0 angespielt
Es wird immer schwieriger, sich auszuloggen
  1. Cloud Imperium Games Star Citizen bekommt erst Polituren und dann Reparaturen
  2. Star Citizen Reaktionen auf Gameplay und Bildraten von Alpha 3.0
  3. Squadron 42 Mark Hamill fliegt mit 16 GByte RAM und SSD

  1. Re: Zusammenhang Strukturgröße und Taktrate

    Local Horst | 07:33

  2. Re: Modularität, warum nicht?

    ThaKilla | 07:33

  3. Re: Überall sieht man das Potenzial, nur in DE nicht

    ThaKilla | 07:32

  4. Re: Das Kochbeispiel

    %username% | 07:14

  5. Re: Einzig relevante Frage: Meltdown durch JS im...

    ThaKilla | 07:13


  1. 18:53

  2. 17:28

  3. 16:59

  4. 16:21

  5. 16:02

  6. 15:29

  7. 14:47

  8. 13:05


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel