Die Lücke zwischen CAD und CAM schließen
Die Gerber X3 Version aus dem Jahr 2020 ist das De-facto-Standarddatenformat für die Übermittlung von Designdaten für die Leiterplatte (PCB) und bestückte Baugruppe.
Mit dieser Version des Gerberformats ist der Designer nun in der Lage, die Stücklisten- und CPL-(pick & place) Daten in einem einfachen und leicht lesbaren Dateiformat zu übertragen.
Dieser X3-Standard enthält Bauteilinformationen in den Gerberdaten.
Die Position von Bauteilen sind geometrische Daten, die den Mittelpunkt, den Umriss, die Referenzpositionen und den Footprint umfassen und als solche hervorragend in eine Gerberdarstellung passen.
Die Kombination von Leiterplatten- und Bauteildaten in einer Gerberdatei ermöglicht eine ganzheitliche Überprüfung der endgültigen Leiterplatte.
Der Workflow vereinfacht die Übertragung von Bauteilinformationen vom CAD- zum CAM-System des Baugruppenfertigers.
Der Vorteil ist, dass die Daten in einem einzigen, einheitlichen Format vorliegen. Diese Daten werden einfach in das CAM-System importiert, analysiert und visualisiert. Anschließend können die notwendigen Datenformate für unterschiedliche Bestückautomaten generiert werden.
Das spart Zeit und senkt die Kosten.
Wie beim allerersten Gerberformat ist X3 ein einfaches von Menschen lesbares ASCII-Format. Dadurch können Ingenieure jede Anomalie leicht erkennen und schnell korrigieren.
Wie immer ist diese Version abwärtskompatibel. Benutzer älterer Systeme können Gerber X3-Daten lesen, aber nur die Funktionen nutzen, die von ihrem aktuellen System unterstützt werden.
Die Gerber X3-Datei enthält einen neuen Datensatz, der als Bauteil-Lage (Top & Bottom) definiert ist.
Innerhalb dieses Datensatzes gibt es neue Attribute für Bauteile. Damit können alle notwendigen Informationen für jedes Bauteil auf jeder Lage definiert werden.
Bauteillage
Die folgenden Abschnitte beschreiben die Attribute, die zur Definition der Bauteile verwendet werden.
Das gängige Koordinatensystem der Bauteil-Lage ist bei allen Lagen gleich. Dabei wird die Leiterplatte von oben betrachtet.
Identifizieren einer Bauteillage
Dateifunktion |
Verwendung |
Component,L,(Top|Bot) |
L <'p'>Wobei <'p'> die Zahl der Kupferlage für die beschriebenen Bauteile angibt. (Top|Bot) gibt an, ob sich die Bauteile auf Top oder Bottom befinden und ob diese nach oben oder unten gedreht sind. |
Beispiel einer Bauteillage für einen 4-Lagen Multilayer
%TF.FileFunction,Component,L1,Top*%
%TF.FileFunction,Component,L4,Bot*%
Bauteil-Eigenschaften
Diese werden durch die .AperFunction-Werte und Objektattribute identifiziert und können nur in den Bauteil-Lagen verwendet werden.
.AperFunction Wert |
Verwendung |
ComponentMain |
Definiert den Mittelpunkt des Bauteils |
ComponentOutline, |
Definiert die Kontur des Bauteils
4 unterschiedliche Konturen können definiert werden: |
.C,<'refdes'> |
Identifiziert den Bauteil-Referenzdesignator.
<'refdes'>=<'field'> |
.CRot,<'decimal'> |
Definiert die Rotation und den Winkel. |
CMfr,<'field'>> |
Hersteller |
.CMPN,<'field'> |
Herstellernummer |
.CVal,<'field'> |
Wert (Bsp. 220nF) |
.CMnt |
Bauteil- Bestückungstyp (TH, SMD, Fiducial, Andere) |
.CFtp,<'field'> |
Footprint-Name |
.CPgN,<'field'> |
Gehäusename |
.CPgD,<'field'> |
Gehäusebeschreibung |
.CHgt |
Bauteilhöhe |
.CLbN,<'field'> |
Bibliotheksname |
.CLbD,<'field'> |
Bibliotheksbeschreibung |
.CSup,<'SN'>,<'SPN'> |
<'SN'> Lieferantenname
<'SPN'> Lieferantenbezeichnung |
Die Pin-Position
Die Pin-Position definiert die Position und Drehung in der Bauteillage
.AperFunction Wert |
Verwendung |
ComponentPin(Top|Bot) |
Definiert die Position von Pin 1 und / oder anderen Pins. |
Object Attribute |
Verwendung |
.P,<'refdes'>,<'number'>[,<'function'>] |
Identifiziert den Pin-Referenzdesignator, die Pin-Nummer oder den Pin-Namen und optional die Pin-Funktion.
<'refdes'>=<'field'> |
Beispieldatei
Hier ist ein Beispiel für einen Bauteil-Layer auf der Bestückungsseite.
Es wird davon ausgegangen, dass der Leser über allgemeine Kenntnisse des Gerber-Formats verfügt, da nur die neuen bauteilbezogenen Befehle mit Anmerkungen versehen sind.
Befehle |
Bemerkung |
%TF.GenerationSoftware,KiCad,Pcbnew,(5.99.0- 190-g0fd48dd4f-dirty)*% |
|
%TF.CreationDate,2019-10-02T18:52:55+02:00*% | |
%TF.ProjectId,kit-dev-coldfirexilinx_ 5213,6b69742d-6465-4762-9d63- 6f6c64666972,2*% |
|
%TF.SameCoordinates,PX3e22018PY8d89728*% | |
%TF.FileFunction,Component,L1,Top*% | Bauteil-Layer Bestückungsseite |
%TF.FilePolarity,Positive*% | |
%FSLAX46Y46*% | |
%MOMM*% | |
%LPD*% | |
G04 Aperture begin list* | |
%ADD10C,0.3*% | Blende zum flashen der Hauptbauteilinformation |
%TA.AperFunction,ComponentOutline,Courtyard*% | |
%ADD11C,0.1*% | Blende zum Zeichnen der Kontur |
%TA.AperFunction,ComponentPin*% | |
%ADD12P,0.36X4X0.0*% | Blende zum flashen der Pin 1 Position |
%ADD13C,0*% | Blende zum flashen anderer Pin Informationen |
%TD*% | |
G04 Aperture end list* | |
G04 Begin component info* | |
D10* | Blende wählen |
%TO.C,R301*% | Referenzbeschreibung für R301 zufügen |
%TO.CFtp,R_0805_2012Metric*% | |
%TO.CVal,4K7*% | Wert zufügen |
%TO.CMnt,SMD*% | Bestückungstyp zufügen |
%TO.CRot,-90*% | Rotation zufügen |
X218250000Y-73000000D03* | Flash Referenzpunkt |
D11* | Blende für Kontur wählen |
X219250000Y-71310000D02* | Kontur zeichnen |
X217250000Y-71310000D01* | Kontur zeichnen |
X217250000Y-74690000D01* | Kontur zeichnen |
X219250000Y-74690000D01* | Kontur zeichnen |
D12* | Blende für Haupt-Pin wählen |
%TO.P,R301,1*% | Beschreibung und Pin-Nummer zufügen |
X218250000Y-72045000D03* | Flashen |
D13* | Blende für Nachfolgende Informationen |
%TO.P,R301,2*% | Pin 2 Identifizierung zufügen |
X218250000Y-73955000D03* | Flashen |
%TD*% | Löschen aller Attribute |
G04 Next component* |