Make Magazin 2/2016
S. 48
Know-How
Aufmacherbild

Isolationsfräsen

Kein Herumschmaddern mit ätzenden Chemikalien, keine Löcher und Flecken in der Kleidung, kein Entsorgungsproblem: Das Isolationsfräsen ist die umweltfreundliche und schnelle alternative zum Platinenätzen. Preiswerte CNC-Technik macht die einstige Profi-Disziplin nun auch für Maker erschwinglich.

Eine ebenso dankbare wie anspruchsvolle Aufgabe für die eigene CNC-Portalfräse ist die „ganzheitliche“ Platinenfertigung – also das Strukturieren der Leiterbahnen und Bohren ohne Werkstück- und Maschinenwechsel. Wer als Institut oder industrielles Labor über ein üppiges Budget für den Prototypenbau verfügt, greift zu einem Fertigsystem wie der Protomat-Serie von LPKF – die Rundum-Sorglos-Pakete beginnen bei rund 6000 Euro, größere und mit Werkzeugwechsler ausgestattete Geräte kommen schnell in den satt fünfstelligen Euro-Bereich.

Doch auch mit einer eher simplen Konstruktion Marke Eigenbau ist eine gelungene Platine keine utopische Aufgabe. Schließlich stellt das Fräsen der Isloationskanäle keine übertriebenen Anforderungen an die Kraft und die Genauigkeit der Maschine, ebenso wenig wie das anschließende Bohren. Eine Auflösung von 5/100 mm ist ausreichend, damit kommt selbst unsere zahnriemengetriebene „Sperrholzfräse“ (veröffentlicht in Ausgabe 4/2014) in Frage. Grenzwertig wird es allerdings mit umgebauten 3D-Druckern, die wegen der direkten Kraftübertragung ohne zusätzliche Flaschenzug-Riemenführung nicht über 1/10 mm Auflösung hinauskommen.

Es gibt allerdings zusätzliche Voraussetzungen, ohne die das heimische Isolationsfräsen zu einem frustrierenden Erlebnis wird – deshalb hier zunächst ein paar Tipps zur Maschinenausrüstung und Werkzeugwahl.

Gravierstichel aus dem Schildermachergewerbe: Nur eine Schneide, aber extrem scharf und spitz. Ein kleiner Vorrat ist ratsam, denn die Spitzen brechen leicht. Für das Isolationsfräsen eignen sich Stichel mit 30° Spitzenwinkel am besten, die Spitzenverrundung sollte nicht größer als 0,1 mm sein.

Auflagen

Zweimal die gleiche Platine, links konventionell belichtet und geätzt, rechts isolationsgefräst.

Die Kupferauflage handelsüblicher Platinen beträgt 35 µm – die gilt es in den Isolationskanälen abzutragen. Kupfer ist trotz seiner Weichheit ein eher widerspenstiges Material, das bei der Bearbeitung gern „schmiert“ und mit ungeeigneten oder stumpfen Fräsern ausfranst. Verwenden Sie also nur scharfe Fräser. Die besten Erfahrungen haben wir mit Graviersticheln gemacht, die einen Spitzenwinkel von 30° und eine Spitzenrundung von 0,1 mm oder kleiner aufweisen. Natürlich muss der Stichel tiefer als 35 µm in das Basismaterial eindringen, damit das Kupfer zuverlässig entfernt wird; theoretisch sollte eine Frästiefe von 0,1 mm oder sogar noch weniger ausreichend sein.

In der Praxis lassen sich so geringe Frästiefen nicht zuverlässig reproduzieren – weniger wegen der begrenzten Genauigkeit der Maschine als vielmehr wegen der unzureichenden Planlage des Werkstücks. Platinenmaterial ist nie völlig eben, schon eine Wölbung von 1/10 mm über die Fläche würde dazu führen, dass der Frässtichel an kritischen Stellen zu tief eindringt oder das Material nur oberflächlich ankratzt. In ersterem Fall können sich feine Leiterbahnen ablösen, in letzterem entstehen Kurzschlüsse.

Graviertiefenregler (hier ein Modell der Firma Heiz) stellen eine präzise Eindringtiefe des Stichels sicher. Sie erschweren aber die randnahe Bearbeitung der Platine und den Werkzeugwechsel.

Die Planlage des Werkstücks ist absolut essentiell – mit einer schiefen oder verkanteten Werkstückauflage wird das Isolationsfräsen zum Fiasko. Da selbst präzise gearbeitete Maschinen immer eine gewisse Unebenheit des Maschinentisches ausweisen, muss man die eingestellte Frästiefe anderweitig sicherstellen.

Oft geschieht dies über einen so genannten Frästiefenregler: Die Z-Achse ist hier beweglich ausgeführt, und den Andruck des Werkzeugs auf das Werkstück erledigt das Eigengewicht des Spindelmotors. Eine Art Abstandsring sorgt dafür, dass der Gravierstichel immer nur um den eingestellten Wert in das Material eindringen kann. Luxuriöse Ausführungen mit Mikrometer-Einstellung kosten im Handel allerdings schnell ein paar hundert Euro.

Angesaugt

Problem ist allerdings, dass durch den das Werkzeug umschließenden Abstandsring eine randnahe Bearbeitung der Platine kaum möglich ist, wenn diese konventionell eingespannt wurde. Man muss hier also auf eine möglichst flache Einspannung achten, idealerweise verwendet man einen Vakuumtisch.

Der ist auch für andere Anwendungen mit flachen Werkstücken sehr praktisch und nicht einmal besonders teuer – kleinere Ausführungen für Platinen in Eurokarten-Größe (160 x 100 mm) gibt es ab 50 Euro. Ohne Vakuum nützt er allerdings gar nichts, somit fallen zusätzliche Investitionen für eine Vakuumpumpe sowie Schläuche, Verschraubungen und Ventile an.

Unsere Selbstbau-Fräse von Ausgabe c't Hacks 01/2013 Seite 38 bei der Arbeit: Die kleinen Abmessungen der Platine lassen gerade noch das Einspannen im Zentrierschraubstock zu.

Sofern nur graviert oder isolationsgefräst wird, reicht eine Drehschieber-Vakuumpumpe (ab 60 Euro, z. B. als Kältemittel-Absauggerät für Klimatechnik-Installateure). Deren Luftdurchsatz ist allerdings eher gering, bei größeren Leckagen (etwa durch Bohrungen und Ausfräsungen im Werkstück) sollte man auf einen Staubsauger oder einen Seitenkanalverdichter (gebraucht ab 100 Euro) als Vakuumerzeuger zurückgreifen. Beim Staubsauger gibt es allerdings das Problem, dass er ohne richtigen Luftdurchsatz schnell überhitzt. Er sollte also etwas "Nebenluft" ziehen dürfen, damit der Motor genug gekühlt wird – was aber den Unterdruck verringert.

Schraubt man den Vakuumtisch mit einer leicht flexiblen Unterlage auf den Maschinentisch, lässt sich die exakte Planlage über die Befestigungsschrauben einstellen – dann kann man getrost auf einen Graviertiefenregler verzichten. So machen es übrigens auch viele 3D-Drucker, deren Tisch sich über Federn und Schrauben nivellieren lässt.

Tiefebene

Einfache Halterung aus MDF und Alu-Schiene aus dem Baumarkt zum Aufschrauben auf den Maschinentisch. Die Halterung wird auf der Maschine plangefräst.

Für kleinere Standardplatinen kann man sich alternativ eine eigene Halterung aus MDF oder POM (Polyoxymethylen, ein leicht zu bearbeitender Kunststoff) bauen, die man erst in der Maschine planfräst und danach fest installiert lässt. Die Arbeitsfläche ist auf diese Weise ganz automatisch nivelliert, und man muss nur noch darauf achten, dass die eingespannte Platine nicht in sich verzogen ist. Verbogene Exemplare lassen sich durch Erwärmen mit dem Heißluftgebäse und sachtes Biegen von Hand wieder in Form bringen – anschließend auf einer ebenen Fläche prüfen, ob die Platine noch „kippelt“.

Drehzahl ist alles

Der kleine effektive Werkzeugdurchmesser von 0,2 bis 0,3 mm erfordert hohe Drehzahlen – 25 000 Umdrehungen pro Minute sollten es schon sein, 40 000 sind anzustreben. Je höher die Drehzahl, umso schneller kann man den Vorschub wählen und umso sauberer wird das Fräsergebnis.

Wer die Investition in einen flüsterleisen HF-Spindelmotor (siehe Make: 1/2016) scheut, sollte zu den kleineren Universalschleifmotoren zum Beispiel von Proxxon oder Dremel greifen. Die drehen zwar nur mit Mühe über 30 000 Upm, machen dabei aber wenigstens nicht so einen Radau wie ihre großen 230-V-Brüder und sind von der Leistung her völlig ausreichend. Bei einer Drehzahl von 30 000 Upm sind Vorschubgeschwindigkeiten von 300 bis 400 mm/min drin, ohne den Gravierstichel zu gefährden.

Von Gerber zu G-Code

Das von allen Platinenlayout-Programmen ausgegebene Gerber-Format entstand zu einer Zeit, als CNC-Maschinen noch mit Lochstreifen gefüttert wurden – entsprechend einfach und starr ist es aufgebaut. Das förderte in den 1970ern einen gewissen Wildwuchs bei den Maschinenherstellern, die es nach Gutdünken um herstellerspezifische Befehle bereicherten. Erst die Version RS-274-X räumte mit dem gröbsten Befehlswirrwarr auf.

Das textbasierte Vektorformat beschreibt nicht die Umrisse der Leiterbahnen und Pads, sondern deren Mittellinien und Mittelpunkte, die dann mit verschiedenen vorgegebenen „Blenden“ (d.h. Durchmessern und Formen) belichtet werden – Gerber-Dateien steuerten ja einst so genannte Fotoplotter zur Filmbelichtung und keine CNC-Maschinen. Trotzdem merkt man ihm seine Verwandtschaft zum G-Code an – im Prinzip ist Gerber ein Subset des frühen RS-274-Standards.

Das Platinenlayout-Programm Target 3001! erstellt selbst G-Code-Dateien zum Isolationsfräsen – sogar in verschiedenen Maschinendialekten.

Schön, wenn das Platinenlayout-Programm direkt eine G-Code-Ausgabe unterstützt. Die Umrissvektoren liegen für die Bildschirmdarstellung des Layouts ja ohnehin vor, womit man sich lästige und zeitaufwendige Zwischenschritte erspart. Target 3001! von IBFriedrich zum Beispiel exportiert verschiedene G-Code-Dialekte, aber auch simple HPGL-Outlines. Die wären für unseren Vektorgrafik-Player GRBLize das geeignete Format.

Getrickst

Das kostenlose Layout-Programm DesignSpark und sein kommerzieller Bruder Easy-PC können im Unterschied zu Target 3001! normalerweise keine Fräswege zum Isolationsfräsen selbst erstellen. Eine Umrissdatei lässt sich aber über einen kleinen Trick per „gegossener“ Kupferfläche erstellen, wie man sie sonst für Masseflächen verwendet.

Setzt man die Abstände einer Kupferfläche vor dem Gießen auf sehr kleine Werte, fließt der Kupfer-Umriss um alle Pads und Leiterbahnen herum. Dann wählt man in den „Properties“ der Kupferfläche (rechter Mausklick) die Eigenschaft „Filled“ ab und voilà: Schon hat man einen Fräsweg für die CNC-Maschine. Den nackten Umriss kopiert/überträgt man schlussendlich auf einen neuen Layer (zum Beispiel „Mill“) und exportiert diesen später als „Penplot“ im HPGL-Format.

Das CAM-Programm CamBam kann Gerber-Dateien öffnen und berechnet auch Umrisse mit Offset.
Kleiner Vakuumtisch VT2012 von www.vakuumtisch.de, ausreichend für Eurokarten. Kostenpunkt: rund 50 Euro inklusive Schlauchadapter für den Staubsauger. Die beigelegten Gummimatten sorgen für eine gute Abdichtung.

In allen anderen Fällen ist der Einsatz eines zusätzlichen CAM-Programms (Computer Aided Manufacturing – Programme, die eine Zeichnung in Befehle für die CNC-Maschine aufbereiten und übersetzen, ähnlich einem Slicer für 3D-Drucker) nötig. Einige können Gerber-Daten direkt importieren. Die Umrechnung in umrissbeschreibende Vektoren aus den Gerber-Mittellinien ist übrigens keineswegs trivial. Sie erfolgt per virtueller Belichtung einer hochauflösenden Bitmap-Grafik als Zwischenschritt, die dann wieder in Umriss-Vektoren umgerechnet wird.

Der komplexe Vorgang ist sehr rechenintensiv und führt zu einem gewissen Genauigkeitsverlust; außerdem scheuen viele Maker die Investition in ein kommerzielles CAM-Programm. Es gibt inzwischen aber sogar Online-Angebote, die eine solche Umrechnung vornehmen – www.rapid-pcb.com zum Beispiel ist kostenlos und über ein klar strukturiertes Web-Interface zu bedienen.

Seitenkanalverdichter (rechts) und Drehschieber-Vakuumpumpe: Ersterer hat deutlich mehr Luftdurchsatz und eignet sich als Unterdruckerzeuger bei größeren Leckagen. Dafür ist das Vakuum bei der Drehschieberpumpe besser.

Beliebt und mit rund 100 Euro noch relativ preiswert ist das CAM-Programm CamBam, ein wahrer Importkünstler. Es erzeugt einwandfreie Fräsweg-Outlines, die sich zunächst streng an die Gerber-Belichtungsdaten halten und keinerlei Optimierungen aufweisen. CamBam erstellt aber auf Befehl auch Umrissvektoren mit Offset – hier ist je nach Layout noch etwas Nacharbeit erforderlich.

Vereinfacht

  
  --front arg                           front side RS274-X .gbr
  --back arg                            back side RS274-X .gbr
  --outline arg                         pcb outline polygon RS274-X .gbr
  --drill arg                           Excellon drill file
  --svg arg                             SVG output file. EXPERIMENTAL
  --zwork arg                           milling depth in inches (Z-coordinate
                                        while engraving)
  --zsafe arg                           safety height (Z-coordinate during
                                        rapid moves)
  --zdrill arg                          drill depth
  --zchange arg                         tool changing height

  --offset arg                          distance between the PCB traces and the
                                        end mill path in inches; usually half
                                        the isolation width
  --mill-feed arg                       feed while isolating in [i/m] or [mm/m]
  --mill-speed arg                      spindle rpm when milling
  --output-dir arg                      output directory
  --front-output arg (=front.ngc)       output file for front layer
  --back-output arg (=back.ngc)         output file for back layer
  --outline-output arg (=outline.ngc)   output file for outline
  --drill-output arg (=drill.ngc)       output file for drilling
  --metric [=arg(=1)] (=0)              use metric units for parameters. does
                                        not affect gcode output
  --metricoutput [=arg(=1)] (=0)        use metric units for output
  --optimise [=arg(=1)] (=0)            Reduce output file size by up to 40%
                                        while accepting a little loss of
                                        precision.

Die wichtigsten Befehlszeilenoptionen von pcb2gcode. Eine komplette Liste erhält man mit „pcb2gcode -?“. Zum Glück braucht man längst nicht alle gleichzeitig.

Eigentlich muss man ja nicht jede Leiterbahn einzeln im Umriss abfahren – es würde genügen, voneinander isolierte Kupferinseln zu erzeugen. Das kann zum Beispiel pcb2gcode, ein ebenso unscheinbares wie mächtiges Tool und noch dazu kostenlos. Es erzeugt neben G-Code- und SVG-Dateien auch zwei PNG-Vorschaubilder, aus denen die Arbeitsweise ersichtlich wird (siehe Screenshots). Einziger Pferdefuß: pcb2gcode verlangt eine umfangreiche Parametrierung, wodurch die aufrufende Befehlszeile elend lang wird.

pcb2gcode --front beispiel.gbr --zsafe 1 --zchange 30 --zwork -0.2 --offset 0.2 --mill-feed 200 --optimise=1 --mill-speed 6000 --metric=1 --metricoutput=1 --front-output beispiel.nc
Ein Befehl für eine einseitige Platine füllt im Command Prompt oder der Shell schon mehrere Zeilen.
In der neuen GRBLize-Version ist das Tool pcb2gcode integriert. Das Vorschaubild zeigt die Fräswegoptimierung durch den Inflate-Parameter (hier 0,2 mm).

Wir haben deshalb in unser GRBLize-Programm eine Art pcb2gcode-Shell integriert, die das elegant erledigt – sogar für Vorder- und Rückseite einer doppelseitigen Platine. Einen Link zum Programm inklusive Sourcen finden Sie am Artikel-Ende. Interessant ist hier der „Inflate“-Parameter (als pcb2gcode-Befehlszeilen-Argument heißt er „–offset“). Leiterbahnen und Pads werden um ebendiesen Betrag vergrößert, bis sie an den Offset eines Nachbarn stoßen. Mit Werten zwischen 0,1 und 0,2 mm erhält man einen Fräsweg, der sich eng an die Leiterbahnen und Pads anschmiegt. Ein Wert von 0 würde direkt dem Umriss folgen; damit würde Leiterbahnen und Pads aber um die Isolationskanalbreite (also den halben effektiven Werkzeugdurchmesser) zu klein. Mit höheren Werten bis 3 mm verschwinden immer mehr doppelte Fräswege, so dass nur noch größere Kupferinseln stehenbleiben.

Das Ergebnis hat mit dem Original-Layout dann nur noch wenig gemein, ist aber elektrisch korrekt. Problem bei SMD-Bauteilen: Man findet ihre Position auf der gefrästen Platine kaum wieder. Damit sie an ihren vorbestimmten Positionen eingelötet werden, muss man im Zweifelsfall den Bestückungsplan zu Rate ziehen. Mit bedrahteten Bauteilen hat man es etwas einfacher, da deren Position durch die Bohrungen festliegt. Eine mit großen Inflate- beziehungsweise Offset-Werten angefertigte Platine (hier übrigens der Entwurf für unseren kapazitiven Z-Längentaster aus Make: 1/2016) ähnelt den Elektor-Platinen aus den siebziger Jahren – ältere Leser werden sich erinnern.

Wiedererkennungswert

Original-Gerber-Belichtung der Z-Taster-Platine und pcb2gcode-Umrechnungen mit den Inflate-/Offset-Werten 0,2 mm und 1 mm. Je größer der Offset-Wert gewählt wird, desto mehr überflüssige Fräswege verschwinden. Zu hohe Werte führen zu einem „unruhigen“ Fräswegverlauf.

Für ebenso ästhetische wie leicht wiederzuerkennende Ergebnisse sollte der Inflate-Wert ungefähr dem effektiven Werkzeug-Radius entsprechen, in der Praxis also 0,1 bis 0,2 mm – entsprechend einer Isolationskanal-Breite von 0,2 bis 0,4 mm. Mit 0,2 mm breiten Fräsungen kann man sogar noch eine Leiterbahn zwischen den Beinchen eines ICs (Pin-Abstand 2,54 mm) hindurchführen, wie unser Z-Taster-Entwurf beweist.

DesignSpark-Trick: Zunächst den Shape-Abstand auf halbe Isolationskanal-Breite setzen (hier 0,1 mm), im „Pour Copper“-Dialog die Speichen abwählen …

Im Prinzip lassen sich auch doppelseitige Platinen in Frästechnik herstellen; Problem ist lediglich, beide Seiten auch deckungsgleich hinzubekommen. Dazu bohrt man manuell zwei diagonal angeordnete „Pilot-Löcher“ durch Platine und Unterlegplatte, in die zwei Stifte mit exakt passendem Durchmesser eingesetzt werden. Nach dem Fräsen der Oberseite steckt man die Stifte zur Unterseite durch, dreht die Unterlage um und setzt die Platine wieder darauf – diesmal aber mit der Unterseite nach oben. So ist sichergestellt, dass zumindest eine Achse ihren Nullpunkt behalten kann.

Bohren

… und dann in den Eigenschaften der entstandenen Kupferfläche die Füllung ausschalten. Es entsteht ein Umriss (im Screenshot weiß), dem man dann für einen leichteren HPGL-Export eine neue Ebene zuweist.

Es liegt nahe, auch das Bohren der Platine von der CNC-Maschine erledigen zu lassen – zumindest dann, wenn es sich nicht um einen reinen SMD-Entwurf mit bestenfalls einer Handvoll Bohrlöcher handelt. Spätestens bei 30 und mehr Löchern wird man die Umrüstung der Maschine inklusive Aufbereitung der Bohrdatei in Kauf nehmen.

Die Platine lässt man dazu eingespannt – das erspart eine erneute Nullpunktsuche. Wenn man im Layoutprogramm nicht irgendwelche obskuren Parameter verstellt hat, sollte eine in der CNC-Steuerung importierte Bohrdatei deckungsgleich mit dem zu fräsenden Layout sein.

Apropos: Während man für das manuelle Bohren die Bauteile-Pads gern „offen“ anlegt, damit der Bohrer durch den Kupferring des Pads geführt wird, sollten sie für das maschinelle Bohren lieber gefüllt sein. Ein Versatz von ein, zwei Zehntelmillimetern führt dann nicht gleich zum Aufreißen des Kupfer-Restrings oder gar zum Bohrerbruch.

Bei den Bohrdaten gibt es neben Gerber (das auch Bohrungen beschreiben kann) praktisch nur zwei relevante und zudem sehr ähnliche Formate – die der Firmen Excellon Automation Co. und Sieb & Meyer AG, beide ebenso alt und einfach. Im Unterschied zu den Fräsvektoren entfällt bei letzteren meist der Umweg über ein CAM-Tool, weil die Werkzeugposition exakt der Bohrlochposition entspricht und CNC-Steuerprogramme die Bohrdaten in der Regel direkt importieren können.

Stellenangebot

Achten Sie beim Export der Bohrdaten darauf, dass die gleichen Einheiten (Inches oder Millimeter), Offsets und Nachkommastellen (Gerber- und Bohrdaten verzichten meist auf Dezimalpunkte) eingestellt sind wie bei den Layout-Daten, dann kann eigentlich nichts mehr schiefgehen. Und wenn doch, liegt es oft an einer unterschiedlichen Anzahl gültiger Dezimalstellen – das merkt man aber schnell, weil die Platine dann um den Faktor 10 oder 100 zu klein oder zu groß ist.

Online-Konverter von Gerber zu G-Code: Für gelegentliche Arbeiten ist man mit rapid-pcb.com gut bedient. Änderungen in den Parametern werden sofort in der Darstellung sichtbar.

Die Excellon-Formatbeschreibung gibt bei Inches 6 gültige Dezimalstellen an, davon meist 2 für den Ganzzahl- und 4 für den Nachkommateil. Einheiten in Millimetern können 5- oder 6-stellig sein, zudem noch mit unterschiedlicher Nachkommastellenzahl. Die kann man in der Regel beim Export der Leiterplattendaten im Layout-Programm vorgeben.

Etwas aufpassen muss man bei der Einstellung der Z-Tiefe: Natürlich sollte der Bohrer die Platine zuverlässig durchdringen, andererseits aber nicht zu tief in die Unterlage oder gar den Maschinentisch eindringen. Die konisch geformte Bohrspitze verlangt bei größeren Durchmessern etwas mehr Z-Tiefe – klar, die Bohrerschneiden müssen ja vollständig die Unterseite erreichen, nicht nur die Spitze. In der Praxis rechnet man mit Z-Tiefe = Platinendicke + halber Bohrerdurchmesser. cm