Gerber-Format
Gerber File Format | |
---|---|
Dateiendung: | .gbr
|
Entwickelt von: | Gerber Scientific, heute Ucamco |
Erstveröffentlichung: | 1980 |
Aktuelle Version | The Gerber Format Specification Revision 2020.09 (Oktober 2020) |
Standard(s): | Ucamco Downloads |
Reference Gerber Viewer | |
Das Gerber-Format ist eine Standard-Dateistruktur im ASCII-Format, die den Datenaustausch zwischen CAD (Entwicklung) und CAM (Produktion) ermöglicht. Es wird vor allem im Bereich von elektronischen CAD-Programmen (EDA – Electronic Design Automation) zur Ausgabe der Layoutdaten bei Leiterplatten verwendet.
Entwickelt wurde es im Jahr 1980 von dem Unternehmen Gerber Scientific zur Ansteuerung von dessen Fotoplottern. Es wurde zum Quasi-Standard für Leiterplattendaten. Gerber Scientific wurde 1998 von Barco ETS übernommen, die den RS-274X Format User’s Guide veröffentlichten. Dieses Extended Gerber oder RS-274X ist der heutige Standard.
Alle gängigen CAD-Programme erlauben einen Export des Designs im Extended-Gerber-Format und alle gängigen CAM-Programme einen Import. Das alte Standard Gerber (RS-274-D) wird heute kaum mehr verwendet. Verschiedene Anbieter bieten auch Extended Gerber-Viewer an.
Nach verschiedenen Umstrukturierungen wird das Gerber-Format seit 2007 von Ucamco NV gepflegt. Ucamco veröffentlicht von Zeit zu Zeit überarbeitete Revisionen der Gerber-Formatspezifikation; die aktuelle Revision ist 2020.09 vom Oktober 2020.
Bis jetzt gibt es vier größere Entwicklungsstufen im Gerber-Format:
- Gerber RS-274-D (Obsolet)
- Gerber RS-274-X
- Gerber X2, eine kompatible Erweiterung zu RS-274-X
- Gerber X3, ergänzt Gerber X2 um Bestückungsattribute[1]
Zwecks eindeutiger Übermittlung von Leiterplatten-Metadaten (z. B. Maskenfarbe, Material, IPC-Norm usw.) kann eine Datei im Gerber Job Format verwendet werden. Hierzu stellt Ucamco die Formatbeschreibung[2] und einen freien Editor[3] zur Verfügung.
Aufbau
[Bearbeiten | Quelltext bearbeiten]Jede Gerberdatei enthält immer nur eine Schicht (fachsprachlich „Layer“). Besteht eine Leiterplatte aus mehreren Schichten, z. B. zwei Layern für die Abbildung der elektrischen Verbindungen in Kupfer, zwei Layern für den Lötstopplack und einem Layer für den Textaufdruck auf der Leiterplatte, sind dafür in Summe fünf verschiedene Gerberdateien notwendig.
Struktur
[Bearbeiten | Quelltext bearbeiten]Die einzelnen Elemente (Leiterbahnen, Pads usw.) einer Leiterplatte werden mit x-y-Koordinaten positioniert. Die Koordinaten können in absoluten oder inkrementalen Werten angegeben sein. Als Einheiten sind mm oder Inch möglich. Die Koordinaten werden in ganzen Zahlen angegeben, für feinere Strukturen muss eine Skalierung angegeben werden. Führende oder angehängte Nullen können unterdrückt werden, um Speicherplatz zu sparen. Die grundsätzliche Struktur eines Gerberfiles ist:
Formatbeschreibung (absolut oder inkremental, Unterdrückung von Nullen) Einheitenbeschreibung (mm/Inch, Skalierung) Plotanweisungen 1. Block | Werkzeug | X-, Y-Koordinate | Steuerfunktionen | Blockende | 2. Block | Werkzeug | X-, Y-Koordinate | Steuerfunktionen | Blockende | usw.
D-Code-Liste
[Bearbeiten | Quelltext bearbeiten]Die Wahl der Steuerfunktion und des Werkzeugs erfolgt über die D-Code-Liste (auch Blendentabelle genannt). Die D-Code-Liste beschreibt die in einem Gerber-File eingesetzten grafischen Werkzeuge (Kreise, Kreisringe, Rechtecke). Sie beschreibt die Zuordnung aller in den Gerberdaten vorhandenen D-Codes zu einer geometrischen Blendenform und einer mechanischen Blendengröße. D1 bis D3 sind reservierte Codes; sie bezeichnen keine Blende, sondern das Ein- bzw. Ausschalten der Lichtquelle des Fotoplotters. Dabei sind:
- D1: ziehe eine Linie mit eingeschaltetem Licht. Achtung: das bedeutet nicht einfach „Licht an“, sondern vielmehr „ziehe eine Linie“, was einen wichtigen Unterschied darstellt.
- D2: Lichtquelle aus
- D3: Lichtimpuls (Flash)
RS-274-D Standard Gerber
[Bearbeiten | Quelltext bearbeiten]Standard Gerber ist ersetzt worden durch Extended Gerber RS-274X. Es beschreibt eine Teilmenge der Electronic Industries Association RS-274-D Specification,[4] ein Format für die Steuerung von NC-Maschinen in vielen Industriebereichen. Der Ausdruck RS-274-D wird oft falsch verwendet (ohne den „Gerber“-Zusatz), um auf die Gerber-Teilmenge zu verweisen statt auf das Original RS-274-D. Standard-Gerber wird verwendet, um Vektor-Photoplotter zu steuern, welche tatsächlich 2D NC-Maschinen sind. Es ist ein einfaches ASCII-Format, bestehend aus Kommandos und X- und Y-Koordinaten.[5] Ein Beispiel für eine Gerber RS-274-D-Datei:
D11* X1785250Y2173980D02* X1796650Y2177730D01* X1785250Y2181480D01* X1796650Y2184580D01* D12* X3421095Y1407208D03* X3422388Y1406150D03* M02*
RS-274-D wurde in den 1960er und 70ern entworfen zur Steuerung numerischer Maschinen wie Vektor-Photoplottern. Diese wurden mittlerweile von Raster-Photoplottern abgelöst. Eine RS-274-D-Datei ist nicht eine Bildbeschreibungsdatei an sich. Sie enthält keine Einheit oder Blenden. Das sind Standardformen, ähnlich wie ein Font für Textverarbeitung, und sollten manuell vom Plotterbediener gesetzt werden. Sie wurden in eine unformatierte ASCII-Datei geschrieben, Blendentabelle oder Aperturetabelle genannt. Der Bediener bestückte daraufhin eine kreisförmige Scheibe mit Öffnungen, beschrieben wie in der Tabelle, welche während der Belichtung des Films in den Lichtstrahl gedreht wurden. Es gibt keinen Standard für diese Tabellen, somit hat jede ihre eigene Formatierung.[5]
Um Formen darzustellen, die nicht mit der beschränkten Blendenmenge zu beschreiben sind, wird das Ausmalen (vector-fill) dieser Form verwendet. Standard-Gerber ist gut geeignet, um die beschränkten Möglichkeiten auszunutzen, über die ein vektororientierter Photoplotter verfügte. Es wurde für eine manuelle Arbeitsweise konzipiert und ist somit nicht geeignet für einen komplett automatisierten Datentransfer zwischen Leiterplattendesigner und -hersteller.
Der vollständige Dateisatz für die Beschreibung einer Leiterplatte besteht aus den Dateien der einzelnen Lagen, einer oder mehrerer Dateien mit einer D-Code-Liste und einer Datei, die den Lagenaufbau beschreibt.
RS-274X Extended Gerber
[Bearbeiten | Quelltext bearbeiten]Das RS-274X Gerber-Format, auch bekannt als Extended Gerber oder X-Gerber, ist ein 2D Bi-Level vektororientiertes Bildbeschreibungsformat.[6] Es ist eine Erweiterung des RS-274-D Standard-Gerber-Formates, das wiederum eine Teilmenge des EIA RS-274-D-Formates ist.
Es ist in ASCII-Text geschrieben[7] und besteht aus einer Reihe von Kommandos und Koordinaten. Die Grundfunktionen sind „Linie zeichnen“ (Draw) und „Punkt zeichnen“ (Flash) mit vordefinierten Formen an eine bestimmte Position und das Füllen einer Kontur. Positive und negative Objekte können kombiniert werden.
Ein Beispiel für eine RS-274X-Datei:
G04 Shorter version of Gerber X2 Example Job 1, created by Filip Vermeire, Ucamco* %TF.FileFunction,Copper,L4*% %TF.Part,Single*% %FSLAX35Y35*% %MOMM*% %TA.AperFunction,Conductor*% %ADD10C,0.15000*% %TA.AperFunction,ViaPad*% %ADD11C,0.75000*% %TA.AperFunction,ComponentPad*% %ADD12C,1.60000*% %ADD13C,1.70000*% %SRX1Y1I0.00000J0.00000*% G01* G75* %LPD*% D10* X7664999Y3689998D02* X8394995D01* X8439999Y3734999D01* X9369999D01* D11* X7664999Y3689998D03* X8359999Y1874998D03* X9882998Y3650498D03* D12* X4602988Y7841488D03* D13* X10729976Y2062988D03* X10983976D03* X11237976D03* M02*
Eine RS-274X-Datei enthält die komplette eindeutige Beschreibung einer Leiterplattenlage. Es werden keine zusätzlichen Dateien benötigt. Blenden und Operatoren sind enthalten, Flächen können spezifiziert werden, ohne gefüllt werden zu müssen, wie in RS-274-D. Da sie automatisch verarbeitet werden kann, ist sie gut geeignet für einen sicheren Datentransfer und zuverlässige und automatisierte Arbeitsabläufe.
Benutzung
[Bearbeiten | Quelltext bearbeiten]Gerber-Dateien werden normalerweise von Leiterplattenlayout-, Electronic Design Automation (EDA) oder PCB CAD-Software geschrieben. Diese Dateien werden zu den Leiterplattenherstellern geschickt, wo sie in einen CAM-System eingelesen werden, um Daten für jeden Produktionsschritt zu erzeugen. Sie werden auch für gebohrte Löcher verwendet, welche als Drill-Lage gesehen werden können; normalerweise wird aber ein Bohrformat wie Excellon verwendet.[8] Gerber-Dateien werden auch zur Ansteuerung von Prüfmaschinen verwendet, sowie zur automatischen optischen Inspektion.
Das RS-274X-Format beschreibt nicht, welche Lage dargestellt wird. Deshalb sollte die Lagenfunktion in dem Dateinamen enthalten sein, das Format der Dateierweiterung ist .gbr
. Manche Entflechter benutzen kryptische Dateinamen, welche in einer separaten Datei dokumentiert werden, oder missbrauchen die Dateierweiterung, z. B. .ls
für die Lötseite.[9]
Zusätzliche Daten
[Bearbeiten | Quelltext bearbeiten]Eine RS-274X-Datei beschreibt u. a. eine Kupferlage oder eine Maske. Leiterplattenherstellung und -prüfung benötigen aber noch mehr Informationen. RS-274X kann Bohrdaten darstellen, meistens sind diese aber spezifiziert im IPC-NC-349- oder Excellon-Format. RS-274X kann keine Netzliste enthalten; wenn benötigt, wird diese meist in IPC-D-356[10] dargestellt. Lagennamen und Materialaufbau werden normalerweise in Textdateien oder Zeichnungen mitgeliefert.[11] Jedoch empfiehlt Ucamco dafür die Benutzung eines Teil des IPC-2581.[9] Normalerweise werden alle Dateien in einem Zip-Archiv zusammengefasst. Dieses wird dann zum Leiterplattenhersteller geschickt.
Gerber-Dateierweiterungen
[Bearbeiten | Quelltext bearbeiten]Eine Gerber-Datei enthält zum Beispiel eine Kupferlage, Maske oder Bestückungsdruck. Somit werden für eine Leiterplatte mehrere Gerber-Dateien benötigt. Es gibt keine Namenskonvention für diese Dateien, jedoch ist die bevorzugte Dateierweiterung .gbr.[6] Der Dateiname kann die Funktion enthalten, zum Beispiel Lage1.gbr oder Maske-top.gbr. Die Erweiterung .gbx wird zusätzlich für Gerber RS-274X (Extended Gerber) verwendet.
Aus historischen Gründen (DOS, 8.3-Format) werden in manchen CAD-Paketen (Altium/Protel) die Dateierweiterungen als Funktion verwendet. Somit ergeben sich über 50 verschiedene Erweiterungen. Eine Liste findet man bei Altium.[12] Heutige Betriebssysteme weisen einer Erweiterung meist einen Dateityp zu. Dieser Mechanismus funktioniert hier aber nicht.
Gerber X2
[Bearbeiten | Quelltext bearbeiten]In der Revision J4 sind neue Befehle für die Verwendung von Attributen eingeführt worden. Die Attribute können sich auf Dateiebene, Blendenebene oder Objektebene beziehen.
Es gibt unter anderem vordefinierte Attribute für:
- Lagenposition innerhalb des Aufbaus der Leiterplatte: z. B. „Soldermask on Top“.
- Funktion der einzelne Objekte und Blenden: z. B. „Kupferpad für SMD Bauteil“
- Netzliste und Bauteil-Information
Die komplette Liste mit Attributen ist in der frei verfügbaren Spezifikation beschrieben[6] und es gibt eine Anleitung zur Verwendung.[13]
Gerber Viewer
[Bearbeiten | Quelltext bearbeiten]Aufgrund des textlesbaren Dateiformat existiert eine Vielzahl an Viewern:
- KiCAD: Das Open-Source-CAD-Programm (Windows, Linux) enthält auch einen dedizierten Gerber Viewer.
- Keysight ADS: Pre-Poduction Editor
- CAMtastic
- Diverse Online-Viewer
Siehe auch
[Bearbeiten | Quelltext bearbeiten]Weblinks
[Bearbeiten | Quelltext bearbeiten]- TU Ilmenau: GERBER-Files ( vom 3. März 2016 im Internet Archive) und Kurze Beschreibung des Datenformats RS-274X ( vom 13. April 2016 im Internet Archive)
- Mikrocontroller-Net: Informationen zu Gerber-Tools
- Ucamco: Ucamco Downloads (englisch). Dort, neben diversen Artikeln, vor allem:
- The Gerber Format Specification (englisch)
- Reference Gerber Viewer (englisch)
- The Gerber File Format version 2 FAQ (DE)
- PCB Fabrication Data - A Guide (englisch)
- Gerber X2 intro movie (englisch)
- Ucamco: kostenlose Gerber CAM Lizenzen für akademische Nutzer (englisch)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Gerber Generationen. (PDF) Ucamco, abgerufen am 15. Oktober 2023.
- ↑ The Gerber Job Format Specification. (PDF) Ucamco, abgerufen am 3. Juli 2019 (englisch).
- ↑ Gerber Job EditorFAQ. (PDF) Ucamco, abgerufen am 3. Juli 2019 (englisch).
- ↑ EIA Standard RS-274-D Interchangeable Variable Block Data Format for Positioning, Contouring, and Contouring/Positioning Numerically Controlled Machines. Electronic Industries Association, Engineering Department, Washington, D.C. Februar 1979.
- ↑ a b Steve DiBartolomeo: D-codes, Apertures and Gerber Files. Artwork Conversion Software, Inc., 1991, abgerufen am 16. Oktober 2011.
- ↑ a b c RS-274X Gerber Format Specification. Ucamco, Dezember 2016, abgerufen am 28. November 2016.
- ↑ Ian Robertson Sinclair, John Dunton: Practical electronics handbook. 6. Auflage. Elsevier, Amsterdam / Boston 2007, ISBN 978-0-7506-8071-4, S. 543.
- ↑ PCB Layout Data. Eurocircuits, archiviert vom (nicht mehr online verfügbar) am 24. Oktober 2012; abgerufen am 26. November 2011.
- ↑ a b Karel Tavernier: Improving CAD to CAM Data Transfer: A Practical Approach. (PDF; 93 kB) In: Journal of the HKPCA. Nr. 40/2011/2Q. 2011, archiviert vom (nicht mehr online verfügbar) am 20. Dezember 2016; abgerufen am 2. Oktober 2011: „RS-274-D: Benutze es nicht.“ Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ Using IPC-D-356 for Importing Net and Node. Abgerufen am 16. Oktober 2011.
- ↑ IPC-2524 PWB Fabrication Data Quality Rating System, Februar 1999
- ↑ Altium Gerber Output Options. (PDF) Abgerufen am 9. Januar 2015.
- ↑ Steve DiBartolomeo: What’s all this about RS274X Anyway? Artwork Conversion Software, Inc., 1995, abgerufen am 3. November 2011.