Mit LinuxCNC war das Software-Problem zwar gelöst, nicht das der Befestigung. Schließlich fand ich in den späten 2010ern einen Unterdrucktisch zum Aufschrauben auf eine 2D-Fräse über eine Modellbau-Zeitschrift. Mit diesem Teil sitzt die Platine bombenfest. Jetzt hätte es also losgehen können ...
Hätte ... können ...
Leider ist das unter Linux nicht ganz so einfach. Eagle als
Software für Schaltpläne und Platinen kannte ich schon seit Anbeginn meiner
Entwicklerlaufbahn, das gab es auch für Linux. Und es gab sogar ein ULP (User Language Program)
zum Erzeugen der Isolationskanäle. Leider hatte das einen Fehler, sodaß ich es nicht zum
Laufen gebracht habe. Ich habe dann Stunden und Tage im Web verbracht, um herauszubekommen, wie mein
Problem mit Linux zu lösen ist.
KiCad als Schaltungs- und Platinenentwurfprogramm
war schnell das Mittel der Wahl. Nur an die Fräsdaten zu kommen erschien mit mit jedem Blog,
Foreneintrag, Tutorial und Video komplizierter. Irgendwie waren immer unständliche Kompromisse
oder Windowsprogramme mit Wine oder nicht mehr verfügbare Programme nötig. Der Durchbruch
kam mit dem Video-Tutorial Exporting from KiCAD to Fab Mods (Method 1, SVG direct) (ab Min. 1.01). Aufgrund der
alten Version (5.4) von KiCad passt das zwar nicht mehr genau, aber der zündende Funke war da.
Jetzt ist die Toolchain für Linux komplett und einfach und schnell zu verwenden.
Ein weiteres Programm in der Toolchain ist dxf2gcode, das ich
auch schon lange für Teile meiner Modellhubschrauber einsetzte.
Wenn man das Platinenlayout fertig hat, ist es wichtig, den Ursprungspunkt der Driil/Place-Dateien die richtige Stelle zu setzen. Und zwar muss dieser an die rechte, untere Ecke der Platine. Der Grund erklärt sich später ...
Hinzufügen -> Ursprung Drill-/Place-Datei
Und jetzt kommt der Trick :
Im Menü Plotten ist das Plotformat DXF auszuwählen.
Die zu plottenden Layer sind bei einer einseitigen Platine B.Cu (Lötseite) und
Edge.Cuts (Platinenrand).
Unter Allgemeine Optionen sind alle Haken zu entfernen, nur Ursprung der
Driil/Place-Datei verwenden wird aktiviert. Da gespiegelter und negativer Plot für DXF nicht
zur Verfügung stehen, liegt hier der Grund für den Ursprung an der rechten
Ecke! Das wird später wieder korrigiert.
Unter Optionen DXF wählt man noch die Einheit Millimeter aus, der Rest bleibt, wie
er ist.
Schließlich klickt man auf Plotten, womit dann pro Layer eine .dxf-Datei entsteht.
Um diesen kümmern wir uns als nächstes. Unter dem Menüpunkt Optionen -> Toleranzen werden beide Werte auf 0,00001 geändert. Damit ist die Fehlermeldung weg.
Bei Optionen -> Maschinen-Konfig setzen wir bei den Standardwerten der dritten Achse die Werte für Schnitttiefe und Endfrästiefe auf 0,15 mm.
Schließlich wählen wir noch Optionen -> Mirror All und dort Mirror all on X-Axis. Damit ist das Fräsbild korrekt für die Unterseite der Platine.
Diese Einstellungen legt man mit Datei -> Projekt speichen als .d2g-Datei ab.
Als letztes folgt die Ausgabe der Fräsdaten mit Exportieren -> Pfade optimieren und exportieren in eine .ngc-Datei.
Das nächste Bild zeigt den ersten Fräsversuch mit LinuxCNC.
Zuerst wird wieder das Menü Plotten aufgerufen und hier Bohrdateien erzeugen angeklickt. Als Format wird Excellon gewählt, alles andere bleibt aus. Mit Speichern werden dann zwei Dateien erzeugt, die Datei ...-PTH.drl ist die für die Unterseite.
Die Umwandlung in GCode habe ich mit einer leicht an LinuxCNC angepassten und erweiterten Version von drl2gcode.py durchgeführt. Diese Version steht hier zum Download bereit. Alle Optionen werden mit drl2gcode.py -h angezeigt.
Als Beispiel kann die folgende Befehlszeile dienen :
Jetzt kann man in der vorher erzeugten Datei RaspberryPi4-B_Cu.ngc die letzte Zeile durch den Inhalt der eben erzeugten Datei RaspberryPi4-PTH_Tall.ngc ersetzen und hat alle Daten zum Fräsen und Bohren zusammen.
Es fehlen nun noch die Daten zum Ausfräsen der Platine, die sich aus der Datei RaspberryPi4-Edge_Cuts.dxf erzeugen lassen. Dazu muss ich noch etwas experimentieren.
Der Versuch hat insgesamt zwar geklappt, ist aber vom Ergebnis her unbrauchbar (s. Bildtext).
Aber ich bleibe dran - versprochen!