1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
[[!meta title="KH-3020 Laserschneider mit Gerbil-Board"]]
[[!toc startlevel=2]]
## Einführung
Der "China-Laser" ist ein aus China importierter KH-3020 Laser-Schneider und Gravur-Laser. Die ursprüngliche Steuerkarte wurde durch ein Gerbil-Board der Firma [awesome.tech](https://awesome.tech) ersetzt, so dass der Schneider G-code versteht und über eine USB-Schnittstelle angesteuert werden kann.
Der Laser hat eine nominale Leistung von 40W. Damit lassen sich dünne Holz- und Kunststoffplatten schneiden. Zusätzlich gibt es einen Gravur-Modus, um Rastergraphiken in Oberflächen einzubrennen.
[[!img Laser_KH-3020.jpg size="300x"]] [[!img Typenschild_Laser_KH-3020.jpg size="300x"]]
## Sicherheitshinweise
Die Leistung des Schneide-Lasers reicht aus, um dünne Holzplatten im Fokus des Strahls zu verbrennen. Ähnliches passiert auch mit Körperteilen, die in den Weg des Strahls geraten und insbesondere mit Augen, falls der Strahl ungünstig abgelenkt wird.
Der Laser-Schneider ist **kein Spielzeug**! Um eine Gefährdung der eigenen Person und auch anderer auszuschließen, sind die folgenden Sicherheitshinweise unbedingt zu beachten:
* Der Laser-Schneider darf **im laufenden Betrieb niemals geöffnet** werden. Der Laser muss mit dem entsprechenden Schalter immer zuerst ausgeschaltet werden ("Laser Switch", siehe Abbildung unten). Der Positionierkopf sollte ruhen.
* Personen, welche direkt am Laser hantieren, müssen zu jeder Zeit eine entsprechende **Schutzbrille tragen**.
* Reflektierende Materialen können den Laser unkontrolliert umlenken und sind zu vermeiden.
* Damit der Laser nicht überhitzt, muss vor der Nutzung die Wasserkühlung aktiviert werden. Es ist auf einen ausreichenden Wasserstand im Kühlkreislauf zu achten.
* Das geschnittene Material kann zu brennen beginnen. Der Schneidevorgang sollte daher immer überwacht werden.
[[!img Taster_Laser_KH-3020.jpg size="300x"]]
## Software-Installation
Um mit dem Laser-Schneider effizient arbeiten zu können, ist die Installation von mehreren Programmen und Erweiterungen notwendig. Diese ist in den folgenden Abschnitten beschrieben.
### Inkscape
[Inkscape](https://inkscape.org) ist ein freies, quelloffenes Programm zur Erstellung und Bearbeitung von Vektorgraphiken für Linux, Windows und macOS. Mit ihm lassen sich Schnitt- und Gravurvorlagen erstellen, welche später mittels Erweiterungen (siehe nächster Abschnitt) in G-code umgewandelt werden, um den Laserschneider zu steuern.
Unter Linux lässt sich Inkscape in der Regel über die Paketverwaltung der Distribution direkt installieren. Installierbare Pakete für Windows und macOS lassen sich über die Web-Seite des Projekts herunterladen.
### Inkscape-Erweiterungen
Für die Erstellung von G-code zum Schneiden oder Gravieren mit dem Laser benötigt man zwei Inkscape-Erweiterungen. Dieses lassen sich auf der Web-Seite von [awesome.tech](https://awesome.tech/installing-the-inkscape-plugins/) herunterladen. Für den Fall, dass die Datei nicht mehr verfügbar ist, haben wir eine Kopie der Version X vom 9. Februar 2020 lokal abgelegt.
Der Inhalt des Archivs muss in das Erweiterungs-Verzeichnis von Inkscape kopiert werden. Dieses lässt sich in Inkscape unter dem Menüpunkt *Edit > Preferences > System: User extensions* nachschlagen. Unter Linux ist dies in der Regel das Verzeichnis "/usr/share/inkscape/extensions" für die systemweite Installation bzw. das Verzeichnis ".config/inkscape/extensions" im Heimverzeichnis des aktuellen Benutzers für die private Installation.
Sofern Inkscape geöffnet ist, muss es geschlossen und wieder geöffnet werden. Nach erfolgreicher Installation sind im Menü *Extensions* die folgenden beiden Einträge zu finden:
* Generate Laser Gcode > K40 J Tech Photonics Laser Tool
* K40 Generate Laser Raster Gcode > K40 Raster 2 Laser Gcode generator
Wie man anhand der Namen bereits erahnen kann, lässt sich mit der ersten Erweiterung G-code zum Schneiden erstellen. Mit der zweiten Erweiterung erstellt man G-code zum gravieren.
*Achtung:* Die Erweiterungen sind in Python geschrieben und haben eine Reihe von Abhängigkeiten. Sind diese nicht erfüllt, dann tauchen die Erweiterungen in Inkscape nicht auf. Um unerfüllte Abhängigkeiten aufzuspüren empfiehlt es sich, Inkscape aus einer Shell heraus aufzurufen und die Fehlermeldungen in der Shell zu studieren.
Fehlende Python-Pakete lassen sich entweder über die Paketverwaltung des Betriebssystems nachinstallieren oder alternativ mittels *pip* aus dem *Python Package Index*. Die Befehlszeile für letztere Variante lautet:
>$ pip install <package\>
### CNCjs
Neben den Erweiterungen für Inkscape zur Erstellung des G-codes benötigt man noch eine Software, um den Code später auf den Laser-Schneider zu übertragen. Theoretisch ist dies auch direkt mit den Erweiterungen möglich. Komfortabler geht dies jedoch mit [CNCjs](https://cnc.js.org/). Auf der [Github-Seite des Projekts](https://github.com/cncjs/cncjs/releases) lassen sich installierbare Pakete für verschiedene Betriebssysteme herunterladen.
Die Übertragung des G-codes erfolgt über eine serielle Verbindung via USB. Unter Linux ist es hierzu notwendig, dass der Benutzer, unter dem man arbeitet, Mitglied der Gruppe "dialout" ist. Ansonsten fehlen die notwendigen Berechtigungen. Sollte dies noch nicht der Fall sein, kann man das Problem mit der folgenden Kommandozeile schnell beheben:
>$ sudo usermod -a -G dialout <user\>
Im Anschluss muss sich der entsprechende Benutzer neu anmelden, damit die Änderung wirksam wird.
Unter Umständen kann es sein, dass CNCjs den Laser-Schneider nicht findet, d.h. die zugehörige serielle Schnittstelle nicht wählbar ist, wenn der Laser-Schneider erst nach dem Start von CNCjs verbunden wurde. In diesem Fall hilft es CNCjs noch einmal zu schliessen und erneut zu starten.
## Benutzung
Die folgenden Abschnitte beschreiben, wie man in Inkscape Vorlagen zum Schneiden oder Gravieren erstellen kann. Diese werden mittels der zuvor installierten Erweiterungen in G-code konvertiert und schließlich mittels CNCjs an den Laser-Schneider übertragen.
### Erstellung von Vorlagen zum Schneiden
Prinzipiell lassen sich mittels Inkscape und der zugehörigen Erweiterung beliebige Vektorgraphiken in Schnittvorlagen umwandeln. Wichtig ist hierfür lediglich, dass man die zu schneidenden Objekte in einen Pfad umwandelt (Menü *Pfad > Objekt in Pfad umwandeln*). Handelt es sich um mehrere Objekte bzw. Pfade, dann müssen die Pfade zusätzlich vereinigt werden (Menü *Pfad > Vereinigung*).
*Hinweis*: Je nach Konture muss die Reihenfolge der Schnitte optimiert werden, da lose Teile in der Regel nach unten Fallen.
Jetzt kann man den aktuell gewählten Pfad (und nur diesen) mittels der Erweiterung *Generate Laser Gcode > K40 J Tech Photonics Laser Tool* in G-code umwandeln. Es öffnet sich ein Dialog, in dem die G-code-Erstellung parametriert werden kann. Wichtig sind die Parameter "Laser Speed", "Laser Power" und "Passes". Die restlichen Parameter kann man in der Regel ignorieren.
Der Parameter "Laser Speed" beschreibt die Geschwindigkeit des Positionierkopfs, wenn der Laser eingeschaltet ist. Der Parameter "Laser Power" beschreibt die stärke des Lasers im eingeschalteten Zustand. Die optimale Kombination der Parameter ist abhängig vom Material.
*Hinweis:* Die Laser-Leistung ("Laser Power #S") wird beim beschriebenen Modell auf einer Skala von 0 - 2024 bemessen (11-Bit Auflösung) und nicht 0-255 oder 0-12000, wie im Dialog angegeben.
Der Parameter "Passes" beschreibt die Anzahl der Durchläufe. Hierbei wir die zu schneidende Konture entsprechend der Anzahl mehrfach abgefahren. Meist gilt, dass das mehrfache Abfahren bei geringer Laserstärke schönere Schnittkanten ergibt.
Prinzipiell hängen die optimalen Einstellungen vom Material ab und man sollte ein wenig experimentieren. Die folgende Tabelle bietet erste Anhaltswerte.
[[!table data="""
Material | Laser Speed (mm/min) | Laser Power | Passes
Baselholz (Pappel), 3.5 mm| 300 | 900 | 2
|||
"""]]
Ist das Material unbekannt, so empfiehlt es sich zuerst einen Testschnitt durchzuführen. Hierzu könnt ihr die folgende [Vorlage](./Testschnitt.gcode) verwenden. In dieser wurden die Schnittgeschwindigkeit und die Lasterstärke systematisch variiert. Optional kann man die Vorlage mehrfach brennen. Zusätzlich gibt es ein Schnittmuster für die [Beschriftung](./Testschnitt_Beschriftung.gcode).
[[!img Testschnitt.svg size="x350"]]
Der erstellte G-code wird im Verzeichnis *Directory* unter dem Dateinamen *Filename* abgelegt.
Weitere Informationen findet man auf der Web-Seite von [awesome.tech](https://awesome.tech/using-the-gerbil/).
[[!img Dialog_Laserschnitt.png size="x350"]] [[!img Inkscape.png size="x350"]]
### Erstellung von Vorlagen zum Gravieren
(Noch zu erstellen)
### Lasern der Vorlage
Für das komfortable Lasern der Schnittvorlagen verwenden wir die Software CNCjs. Hierzu verbinden wir den Laserschneider (genauer die Gerbil-Steuerplatine) via USB-Kabel mit dem Steuerrechner. Im Anschluss starten wir CNCjs und öffnen eine Verbindung zum Laserschneider. Im Normalfall kommt die Schnittstelle */dev/ttyUSB0* zur Anwendung. Sind weitere Geräte mit dem Steuerrechner verbunden, dann kann die Nummer des Ports abweichen. Als G-Code-Dialekt wählen wir passend zur Gerbil-Steuerplatine "Grbl". Setzt man das Häkchen "Automatisch verbinden", dann verbindet sich CNCjs in Zukunft beim Start automatisch mit dem Laserschneider.
Im Anschluss führen wir eine Referenzfahrt durch. Danach laden wir den G-Code der Schnittvorlage, indem wir die Schaltfläche "G-Code hochladen" anklicken und im Anschluss die entsprechende Datei wählen. Der Pfad des Schnittmusters sollte jetzt im zentralen Fenster erscheinen. Zuletzt noch ein Klick auf die Abspieltaste und der Laser beginnt mit seiner Arbeit.
Sollte der Laser nicht schneiden liegt dies eventuell daran, dass er mittels des Sicherheitsschalters "Laser Switch" ausgeschaltet wurde. Die Ausführung des Schnitts lässt sich jederzeit durch Klicken auf die "Stopp-Taste" abbrechen. Im Anschluss sollte man eine Referenzfahrt durchführen, um den Schneider wieder zurückzusetzen.
[[!img CNCjs.png size="x350"]]
## Einstellungen des Laserboards
Damit uns die Einstellungen nicht verloren gehen haben wir sie an dieser Stelle abgelegt:
$0=10 (Step pulse time, microseconds)
$1=255 (Step idle delay, milliseconds)
$2=0 (Step pulse invert, mask)
$3=0 (Step direction invert, mask)
$4=0 (Invert step enable pin, boolean)
$5=1 (Invert limit pins, boolean)
$6=0 (Invert probe pin, boolean)
$10=31 (Status report options, mask)
$11=0.010 (Junction deviation, millimeters)
$12=0.002 (Arc tolerance, millimeters)
$13=0 (Report in inches, boolean)
$20=1 (Soft limits enable, boolean)
$21=1 (Hard limits enable, boolean)
$22=1 (Homing cycle enable, boolean)
$23=1 (Homing direction invert, mask)
$24=600.000 (Homing locate feed rate, mm/min)
$25=1000.000 (Homing search seek rate, mm/min)
$26=250 (Homing switch debounce delay, milliseconds)
$27=5.000 (Homing switch pull-off distance, millimeters)
$28=0.000
$30=2048 (Maximum spindle speed, RPM)
$31=5 (Minimum spindle speed, RPM)
$32=1 (Laser-mode enable, boolean)
$100=160.000 (X-axis travel resolution, step/mm)
$101=160.000 (Y-axis travel resolution, step/mm)
$102=250.000 (Z-axis travel resolution, step/mm)
$110=10000.000 (X-axis maximum rate, mm/min)
$111=10000.000 (Y-axis maximum rate, mm/min)
$112=500.000 (Z-axis maximum rate, mm/min)
$120=3000.000 (X-axis acceleration, mm/sec^2)
$121=3000.000 (Y-axis acceleration, mm/sec^2)
$122=10.000 (Z-axis acceleration, mm/sec^2)
$130=300.000 (X-axis maximum travel, millimeters)
$131=225.000 (Y-axis maximum travel, millimeters)
$132=200.000 (Z-axis maximum travel, millimeters)
|