Forum: Platinen Text einfügen in Gerberdatei


von Mull (Gast)


Lesenswert?

Hallo! Habe hier mehrere Geberdateien (mit Massefläche) die ich gerne 
noch mit einem Text versehen würde. Welche Möglichkeiten gibt es da mit 
Umsonst-Tools? Ist das überhaupt möglich?

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Mull.

> Hallo! Habe hier mehrere Geberdateien (mit Massefläche) die ich gerne
> noch mit einem Text versehen würde. Welche Möglichkeiten gibt es da mit
> Umsonst-Tools? Ist das überhaupt möglich?

Grundsätzlich ja. Besser ist es aber, das direkt im Layout Programm zu 
machen.

Von den kostenlosen Gerber Tools kenne ich keines, welches das kann.
(So kann, das es problemlos nutzbar ist. Cenon wäre nutzbar, aber das 
Programm ist extrem gewöhnungsbedürftig.)

Es geht aber auch mit einem Text Editor. Das ist aber eine haarige 
Angelegenheit, ich muss sehr gut wissen, was ich tue, weil es nicht 
einfach mit "einkopieren" erledigt ist. Ich muss mich an die bestehenden 
Vorgaben aus
dem Header halten, passende Aperturen wählen bzw. noch erstellen, und 
dann die Anweisungen in die Befehlskette "hineinflechten".
Geht, ist viel Arbeit, erfordert gute Vorkenntnisse, muss ständig 
kontrolliert und im Fehlerfalle zurückgenommen werden.

Ich habe es mit dem Editor nur aus sportlichen Gründen gemacht, und 
einmal dienstlich in einem absoluten Notfall. Der war aber eher Einfach 
gelagert, weil ich nur Text entfernen musste.

Dein Platinenhersteller hat aber mit Sicherheit ein solches Programm. 
Wenn die Änderung nicht zu aufwändig ist, wird er das besser, schneller 
und günstiger machen können als Du.

Ein solches Programm als "stand alone" kostet irgendwas 300-600 Euro.

Für nähere Informationen über Gerber und die damit zusammenhängenden 
Programme/Tools siehe: 
http://www.mikrocontroller.net/articles/Gerber-Tools

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von amateur (Gast)


Lesenswert?

Ist Gerber denn kein Textformat mehr?

Eine Textdatei z.B. mit dem Inhalt:
; Kein Kommentar

Durch copy TextDatei + GerberDatei NeueDatei
zusammengestellt,

oder mit einem einfachen Texteditor eingefügt.

Wichtig ist nur, dass Du Dich hinter dem Semikolon versteckst.

von lüsterklemme (Gast)


Lesenswert?

Schau Dir mal "ViewMate Deluxe" an. Kostet zwar 99$ aber damit kannst Du 
auch editieren.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo amateur. hallo Lüsterklemme.

> Ist Gerber denn kein Textformat mehr?

Eine Gerberdatei hat zwar Textformat und ist klarschriftmäßig lesbar,
aber sie stellt ein Programm bzw. Script dar, nachdem eine Maschine 
arbeiten soll.
D.h. die Schritte bauen aufeinander auf, und es ist die Reihenfolge und 
bestimmte Vorbedingungen zu beachten.

Genau so wenig wie Du Programme einfach so hintereinanderhängen kannst, 
so wenig geht das mit Gerber-Files.

>
> Eine Textdatei z.B. mit dem Inhalt:
> ; Kein Kommentar
>
> Durch copy TextDatei + GerberDatei NeueDatei
> zusammengestellt,
>
> oder mit einem einfachen Texteditor eingefügt.
>
> Wichtig ist nur, dass Du Dich hinter dem Semikolon versteckst.

Nein. So einfach ist es leider nicht.

Die in der Einfügung verwendeten Aperturen müssen z.B. zu den schon 
verwendeten (Definition UND Bezeichnung) passen. Wenn nicht, musst Du 
eine neue Apertur definieren bzw. die Bezeichnung anpassen.

Du musst die "Draws" einfügen. Auch damit must Du dich an vorhandene 
Vorgaben bezüglich Auflösung, Skalierung, Orientierung ec. anpassen.
Du must einen Anschluss an das schon gezeichnete herstellen, usw.

Im obigen Falle soll vermutlich der Text in einer Massefläche 
erscheinen.
Das ist extra kompliziert....;O)
Wenn Du Glück hast, müstest Du nur Polygone ändern, wenn Du so richtig 
Pech hast, hast Du als Fläche ein "stroke fill", wo die Fläche aus 
vielen "draws" zusammengesetzt ist (Eagle typisch). Das wird richtig 
Arbeit.

> Schau Dir mal "ViewMate Deluxe" an. Kostet zwar 99$ aber damit kannst Du
> auch editieren.

Danke für den Tipp!

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Bernd Wiebus schrieb:

Nachtrag:

>> Eine Textdatei z.B. mit dem Inhalt:
>> ; Kein Kommentar
>>
>> Durch copy TextDatei + GerberDatei NeueDatei
>> zusammengestellt,
>>
>> oder mit einem einfachen Texteditor eingefügt.
>>
>> Wichtig ist nur, dass Du Dich hinter dem Semikolon versteckst.

Ach, Du meinst, er will nur einen Hinweistext in der Gerberdatei selber, 
aber nicht auf der Platine haben? Also einen Kommentar in der Datei?

Auch dabei hätte ich mit dem Vorgehen Bauchschmerzen, weil in Gerber ein 
Semicolon nicht auf einen Kommentar hinweist.

Ein Kommentar in Gerber fängt am Zeilenanfang mit "G04" (G Null 4) an. 
Dann folgt  der Kommentar. Bei Zeilenumbruch muss wieder "G04" am Anfang 
stehen.
Solche Kommentarzeilen können natürlich problemlos eingefügt werden,

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von amateur (Gast)


Lesenswert?

Ich bin von einem Kommentar ausgegangen, um, z.B. in einem halben Jahr, 
die Daten einem bestimmten Projekt in einer bestimmten Version zuordnen 
zu können.

Es sollte wohl klar sein, dass bei einem Format wie dem von Gerber, 
Texte auch nur mit Hilfe von dessen Struktur auf z.B. einer Platine, 
platziert werden können.
Also mit:
Blendenauswahl,
Fahre nach,
Linienbeginn (Down)
Fahre nach,
Linienende (Up)
und das ganze leicht ein paar hundert Mal.

Alles andere würde wohl hellseherische Fähigkeiten vom Format bedeuten 
wie:
Bekannter Zeichensatz
Bekannte Zeichengröße
Bekannte Anfangsposition
Bekannte Richtung
u.s.w.
und natürlich auch welcher Text.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo amateur.

> Ich bin von einem Kommentar ausgegangen, um, z.B. in einem halben Jahr,
> die Daten einem bestimmten Projekt in einer bestimmten Version zuordnen
> zu können.

Der OT hatte expilizit eine Massefläche erwähnt. Das hat mich dazu 
gebracht, zu denken, er hätte gerne den Text in der Massefläche.

> Es sollte wohl klar sein, dass bei einem Format wie dem von Gerber,
> Texte auch nur mit Hilfe von dessen Struktur auf z.B. einer Platine,
> platziert werden können.
> Also mit:
> Blendenauswahl,
> Fahre nach,
> Linienbeginn (Down)
> Fahre nach,
> Linienende (Up)
> und das ganze leicht ein paar hundert Mal.

Eben. Er muss jeden Strich selber machen, d.h. definieren.

Ein Workaround dafür wäre, den Text separat in einem anderen 
Layoutprogramm zu erzeugen, idealerweise an passender Position auf einer 
sonst leeren "Dummyplatine" mit den gleichen Abmessungen wie der 
Zielplatine, damit er die Position schon hat, und daraus dann ein 
Gerberfile zu machen.

Unter der Berücksichtigung das Apertur, Auflösung, Maßstab und 
Orientierung/Ursprung und so Kram wie absolute oder inkrementale Daten 
passen müssen hätte er dann zumindest schon einmal den Text in Draws und 
müsste den nicht von Hand machen.

Ich würde es trozdem ohne Not jedenfalls nur aus Spieltrieb so angehen 
wollen. ;O)


Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Bernd Wiebus schrieb:

Nachtrag:

> idealerweise an passender Position auf einer
> sonst leeren "Dummyplatine" mit den gleichen Abmessungen wie der
> Zielplatine, damit er die Position schon hat,

Alternativ: Auf einer Dummyplatine die nur knapp größer als der Text 
ist. Gerber kennt Makros. Dann bräuchte er die aktuelle Position nicht 
für den ganzen Text jeden Strich einzeln, sondern nur den Startpunkt für 
das Makro.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von amateur (Gast)


Lesenswert?

Es könnte auch noch das eine oder andere Zeichenprogramm geben, dass 
HP-GL produzieren kann. Einfach den Roman schreiben und Plotten. Dieses 
könnte man eventuell anschließend ins Gerber-Format konvertieren, da es 
sehr ähnlich ist.
Das Ergebnis würde ich aber auf jeden Fall mit einem Viewer wie 
GC-Prevue, falls es das Programm noch gibt, kontrollieren. Wenn mich 
nicht alles täuscht konnte das sogar HP-GL direkt lesen – im vorigen 
Jahrtausend. Man musste dazu nur eine passende Blende definieren.

von Chris (Gast)


Lesenswert?

Sollte Interesse bestehen, dann könnte ich ein Tool zusammenkopieren
welches Grafik und Text in Gerber einfügen kann.
Sourcecode hätte ich dafür, ich müsste es nur zusammenschuhstern.
Eventuell auch das Generieren von Nutzendaten mittels Gerbermerge, 
sprich
ein Frontend dafür.

von Reinhard Kern (Gast)


Lesenswert?

Chris schrieb:
> Sollte Interesse bestehen, dann könnte ich ein Tool zusammenkopieren
> welches Grafik und Text in Gerber einfügen kann.

Wenn schon, dann schreib einen Gerber-Editor, sonst lohnt sich das 
nicht. Der nächste Fragesteller will ein Pad einfügen, der übernächste 
eine Leiterbahn löschen.

Gruss Reinhard

von Chris (Gast)


Lesenswert?

Kein Interesse.
Ich habe die Source um bw bmp nach Gerber zu verwandeln.
Zwar ineffizient da jeder Pixel geplottet wird, funktioniert 
anstandslos.
Weiters Gerber in ein Bild umzuwandeln, bzw auch einen Abstandscheck zu 
machen und andere Sachen.
Ich will keine Gerber parsen sowie keine Gerber macken supporten.
Auch wird im Gerber nur das angezeigt, was die damalige Version von
gerber2tiff kann. Punkt.
Eine Ebene Einzufügen und dort die convertierte Bitmap zu plazieren
sollte einfach sein.
Sprich Text, Linien, Bilder sollten einfügbar sein. Das ist alles.
Wenn was zu löschen ist, bitte dies in Gerbv als Beispiel löschen.
Ist Freeware und man kann damit Objekte in Gerberdateien löschen.
Ein Pad einzufügen wäre leicht machbar, ander Sachen nicht.

von amateur (Gast)


Lesenswert?

>Kein Interesse.

Kann ich sehr gut verstehen.

von Chris (Gast)


Lesenswert?

Um das Klarzustellen, die Umwandlung von Gerber zu Grafik dient nur zur
Darstellung und im orginalen Gerberfile würde dann nur die neu genierten
Elemente dazugefügt, die orginalen Gerber Makros usw bleiben erhalten.

von Reinhard Kern (Gast)


Lesenswert?

Chris schrieb:
> Kein Interesse.

Schade, du hättest dich um das Vaterland verdient machen können. Aber 
verständlich ist es, ich weiss ja was alles dazugehört.

Chris schrieb:
> bitte dies in Gerbv als Beispiel löschen.
> Ist Freeware und man kann damit Objekte in Gerberdateien löschen.

Das ist laut Website ein Projekt, also Zukunftsmusik. An einem freien 
Gerber-Editor bzw. CAM-Software herrscht nach wie vor Bedarf.

Gruss Reinhard

von Chris (Gast)


Lesenswert?

Gerbv kann Objekte löschen. Mehr auch nicht, und das Undo funktioniert 
nicht
bei gelöschten Objekten. Auch kann Gerbv panelisieren, man sollte aber 
entweder die Patches einspielen, oder gewisse Features nicht verwenden, 
da sie nur Fehler produzieren. Da ich mich auf das alte Release beziehe,
könnten die Patches schon in das Release eingeflossen sein.
Was z.B. beim Panelisieren nicht ging war das Drehen und verkleinern
oder vergrößern.

Ich wollte mal etwas für Gerber programmieren, aber ich hatte Probleme 
Beispielcode von verschiedenen Programmen herzubekommen, sowie Gerber 
bzw Drill File
welche verschiedene Features benutzen, welche nicht oft gebraucht 
werden,
und für mich nicht 100% klar definiert sind. Deshalb lasse ich lieber
die Finger davon. Wenn du aber da was beisteuern könntest, dann sähe die
Sache schon anders aus.

von Reinhard Kern (Gast)


Lesenswert?

Chris schrieb:
> Wenn du aber da was beisteuern könntest, dann sähe die
> Sache schon anders aus.

Ich fürchte, da bin ich 50 Jahre zu alt und ich weiss zuviel darüber, um 
das noch anzufangen.

Gruss Reinhard

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Reinard, hallo Chris

Reinhard Kern schrieb:

> Schade, du hättest dich um das Vaterland verdient machen können. Aber
> verständlich ist es, ich weiss ja was alles dazugehört.

Das ist war. Ich bin ja leider mit meinem Gerber-Projekt auch schon seit 
Anfang des Jahres wieder stecken geblieben.
Siehe: 
http://www.mikrocontroller.net/wikifiles/5/5a/PyGerberAnalyse_B5_13Jun2013.zip
Die Änderungen von Juni waren nur Aufräumarbeiten.

Irgendwas um die Daten sinnvoll zu manipulieren will ich dort auch noch 
einbauen.

> Das ist laut Website ein Projekt, also Zukunftsmusik. An einem freien
> Gerber-Editor bzw. CAM-Software herrscht nach wie vor Bedarf.

So ist es. Wobei z.B. OBD++ schon wieder problematisch ist. Ich habe 
davon noch keine Definition gesehen.

Chris schrieb:

> Gerbv kann Objekte löschen. Mehr auch nicht,

Alles andere als "Löschen" ist auch schon deutlich komplizierter. Ich 
werde bezüglich der Modifikatiosfunktionen vermutlich auch mit einer 
Löschfunktion anfangen. ;O)

> und das Undo funktioniert nicht bei gelöschten Objekten. Auch kann Gerbv  > 
panelisieren, man sollte aber  entweder die Patches einspielen, oder
> gewisse Features nicht verwenden,  da sie nur Fehler produzieren.

Panelisieren ist auch noch relativ einfach, weil Du eigentlich immer nur 
den gleichen Datensatz mit einem Offset wiederholst. Und natürlich einen 
Draw mit geschlossener Blende an den Anfang dieses Satzes. *)
Sobald ich Drehen und Skalieren will, fängt es an, komplizierter zu 
werden. ;O)

Ob die Wege des Draws jetzt optimiert sind oder nicht, und wie kurz die 
Datei ist, interessiert fast nicht. Speicherplatz existiert genug, und 
"echte" Fotoplotter existieren wohl auch nur noch selten.
Das ganze ist ein Austauschformat, und die Datenstruktur ist nur noch 
so, "als ob" sie einen Fotoplotter steuern würde. Für aktuelle Maschinen 
wird das ganze noch mal extra aufbereitet.

Auch über eine Undo-Funktion würde ich mir erst später Gedanken machen. 
Zu Anfangs würde ich eine Brutallösung wählen, die nach jeder Änderung 
neu abspeichert und das alte File nur umbenennt (durchzählend 
umbenennt). Für ein "undo" greife ich dann einfach auf "alte" Files 
zurück. Ist unelegant, dürfte aber einfach zu implementieren sein, und 
funktionieren.
Das einfache Implementieren ist wichtig für mich, da ich nicht 
Programmieren kann.

> Da ich mich auf das alte Release beziehe,
> könnten die Patches schon in das Release eingeflossen sein.
> Was z.B. beim Panelisieren nicht ging war das Drehen und verkleinern
> oder vergrößern.

Gut zu wissen. Das zu Kicad gehörige GerbView, das die eingelesenen 
Gerberdaten auch wieder als Kicad Board exportieren kann, ist auch noch 
sehr experimentell. Die Bugs sind auch jedesmal anders.....;O)
Darum habe ich es oben auch nicht erwähnt. Aber langsam wird es besser.

> Ich wollte mal etwas für Gerber programmieren, aber ich hatte Probleme
> Beispielcode von verschiedenen Programmen herzubekommen,

Das kenne ich. Ich habe mir selber "Testfiles" mit Eagle und Kicad 
gemacht...einfach vorhandene Projekte verwendet. Aber Testfiles, 
Speziell mit dem Kreistool und mit Makros suche ich auch.

> sowie Gerber
> bzw Drill File
> welche verschiedene Features benutzen, welche nicht oft gebraucht
> werden,  und für mich nicht 100% klar definiert sind.

Seit Anfang dieses Jahres (2013) hat Ucamco eine neue Gerber 
Beschreibung herausgebracht, die einiges klarstellt, und alten Kram 
rausschmeisst.

Ich werde mein Python Skript in dieser Hinsicht auch noch wieder 
überarbeiten müssen.

> Deshalb lasse ich lieber
> die Finger davon.

Falscher Ansatz. Besser schlecht als gar nicht. ;O)
Wenn Du ein schlechtes Programm hinstellst, meckert vieleicht einer, und 
darüber wirst Du vieleicht irgendwas bemerken. Eventuell schickt er Dir 
sogar noch ein File, mit dem es Probleme gibt. ;O)

Wenn Du nicht an irgendeiner Ecke anfängst, und sei das noch so schäbig, 
wird das nie was. ;O)

Aber Grundsätzlich hast Du recht, die Rückkopplung für das, was ich 
gemacht habe ist auch eher dürftig. Also entweder funktioniert das alles 
(Was ich eher nicht denke), die Leute sind zu faul, mich auszumeckern 
(Wahrscheinlich) oder aber es wird nur selten verwendet (Sehr 
Wahrscheinlich).
Meine persönliche Motivation dabei ist einfach mein unbändiger 
Spieltrieb.

> Wenn du aber da was beisteuern könntest, dann sähe die
> Sache schon anders aus.

Auf solche Testfiles wäre ich auch scharf. ;O)
Meine E-Mail Adresse ist: bernd.wiebus@gmx.de
Ich schaue im allgemeinen auch täglich in meinen Spam-filter, ob sich da 
was falsch positiv einsortiertes befindet.

Jedes Programm hat seine Eigenheiten:
Eagle benutzt für Flächen nur ein "Strocke fill".
Kicad hat in der Y Achse negative Werte.
Altium bringt in Kommentarzeilen Zusatzinformationen unter.

Ich hatte die ersten Tests mit von Eagle produzierten Gerberfiles 
gemacht, und war dann erstaunt, als ich die von Kicad produzierten Files 
spiegelverkehrt sah....das Minuszeichen wurde eben nicht ausgewertet. 
;O)

*) Es geht aber mit den Problemen los, wenn Du unterschiedliche Platinen 
zu Nutzen zusammenstellst. Wie stellst Du sicher, das alle den gleiche 
Massstab bzw Auflösung verwenden? Wie passen die Aperturen zusammen? Es 
wäre eher Zufall, wenn zwei unterschiedliche Platinen die gleiche 
Apertur unter der gleichen Nummer verwenden. ;O)
Wenn Sie nicht zusammen passen, musst Du umrechnen....
In der Tat müssen zwei unterschiedliche Platinen mit dem gleichen 
Lagenaufbau nicht unbedingt die gleiche Anzahl von Gerberfiles haben.
Aber woran soll nun das Programm erkennen, welches File welche Lage ist?
Die Zuordnung kannst Du nur von Hand machen.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Reinhard Kern (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Aber woran soll nun das Programm erkennen, welches File welche Lage ist?
> Die Zuordnung kannst Du nur von Hand machen.

Das ist auch der Grund, warum unsere CAM-Abteilung sagt, das ODB++ nicht 
allzuviel bringt - an der Stelle ist nach wie vor menschliche 
Intelligenz notwendig. Mein Cadstar-Postprozessor z.B. benennt das 
ODB++-File so wie ich die Lage, das kann also z.B. "Analog Gnd" sein. 
Dass das die 6. Lage von oben ist, muss ich anderweitig klarstellen. Ein 
Mausclick auf die Daten und LP fertigen bleibt ein Traum.

Gruss Reinhard

von Stefan Salewski (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Das zu Kicad gehörige GerbView, das die eingelesenen
> Gerberdaten auch wieder als Kicad Board exportieren kann,

Kann das prinzipiell sinnvoll funktionieren, oder ist das Pommes zu 
Kartoffel?

Im PCB-Programm hast Du Footprints, die Du verschieben kannst, für DIP8 
also 8 Löcher mit den 8 Pads, Beschiftung usw.

Gerber hat da doch nur stets ein Loch, ein Pad usw, die man so kaum 
wieder automatisch zu einem Footprint vereinen kann?

Oder irre ich mich?

>Seit Anfang dieses Jahres (2013) hat Ucamco

Kann man da frei zugänglich etwas nachlesen?

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Stefan Salewski.

>> Das zu Kicad gehörige GerbView, das die eingelesenen
>> Gerberdaten auch wieder als Kicad Board exportieren kann,
> Kann das prinzipiell sinnvoll funktionieren, oder ist das Pommes zu
> Kartoffel?

Kommt darauf an, was Du erwartest. Pommes und Kartoffeln haben ja 
Gemeinsamkeiten....

Wenn Du vollautomatisches Reverse Engeneering erwartest, so ist die 
Antwort mit Sicherheit "Nein".

Wenn Du eine einfache "Workaround" Methode zum manipulieren von Gerber 
Files suchst, ist die Antwort mit Sicherheit "Ja".

Für alles dazwischen kann es unterschiedlich ausfallen, abhängig vom 
Stand der Technik, dem gewünschten Ziel und dem vertretbaren Aufwand.

>
> Im PCB-Programm hast Du Footprints, die Du verschieben kannst, für DIP8
> also 8 Löcher mit den 8 Pads, Beschiftung usw.
>
> Gerber hat da doch nur stets ein Loch, ein Pad usw, die man so kaum
> wieder automatisch zu einem Footprint vereinen kann?

Genau das ist das Problem. Darum hat es GerbView Versionen gegeben, die
keine Pads nach PCBnew exportierten. Du konntest dann selber einen 
passenden Footprint einsetzten, und die Leiterbahnen etwas verschieben, 
um
einen Anschluss hinzubekommen.

Aber wenn Du nur eine Kleinigkeit, z.B. einen Text, in einem Gerber File 
ändern willst, ist das schon wieder ein no-go.

Sinnvoll ist sowas gelegentlich schon. Vorausgesetzt, es lässt sich 
Abschalten, wenn es nicht sinnvoll ist.

>
> Oder irre ich mich?
>

Nöö. Du siehst die Probleme schon richtig. Trozdem kann ich mir dabei 
Software Unterstützung vorstellen. ;O)

>>Seit Anfang dieses Jahres (2013) hat Ucamco
>
> Kann man da frei zugänglich etwas nachlesen?

Ja. Siehe http://www.ucamco.com/downloads
Dort "Gerber File Format Specification" wählen.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Chris (Gast)


Lesenswert?

Also nochmals, wenn so ein Tool gewünscht wird, um Text oder
Grafik in Gerber einzufügen kann ich dies problemlos machen.

Eigentlich gäbe es einen Opcode für Text in Gerberfiles, G56 .
Dieser wird aber nur von den wenigsten SW unterstützt.

Grundlage dafür wären gerber2tiff sowie opencv und lineare Gerber Paint 
code. Schrift wäre Hershey Font.

von Chris (Gast)


Lesenswert?

@Stefan
Pins sind Flashes, D03
Hier ein Beispiel aus Eagle eines 6pin Sot23 sowie Dip28 AVR.
D11 sind die runden Pins, D12 der viereckige erste Pin.
D20 ist das SMD Pin des Sot23.
Zusammen mit einer  IPC-7351C Lib kann man problemlos aus einer
Gerber Datei die Footprints sowie Centeroids und Nets rausholen,
solange die Pins mittels Flash (D03) im Gerber vorhanden sind.
Wenn Pin1 nicht speziell ist, dann bekommt man die Orientation der
Bauteile nicht raus.

Auch lässt sich sehr einfach eine Lötstoppmaske sowie ein Lötpaste
von einer Gerberdatei herstellen.

G54D20*
X30100Y-22225D03*
X30100Y-22600D03*
X30100Y-22975D03*
X29100Y-22975D03*
X29100Y-22600D03*
X29100Y-22225D03*

G54D11*
X46000Y-28500D03*
X45000Y-28500D03*
X44000Y-28500D03*
X43000Y-28500D03*
X42000Y-28500D03*
X41000Y-28500D03*
X40000Y-28500D03*
X39000Y-28500D03*
X38000Y-28500D03*
X37000Y-28500D03*
X36000Y-28500D03*
X35000Y-28500D03*
X34000Y-28500D03*
G54D12*
X47000Y-28500D03*
G54D11*
X34000Y-31500D03*
X35000Y-31500D03*
X36000Y-31500D03*
X37000Y-31500D03*
X38000Y-31500D03*
X39000Y-31500D03*
X40000Y-31500D03*
X41000Y-31500D03*
X42000Y-31500D03*
X43000Y-31500D03*
X44000Y-31500D03*
X45000Y-31500D03*
X46000Y-31500D03*
X47000Y-31500D03*

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Nachtrag:

Bernd Wiebus schrieb:

>>>Seit Anfang dieses Jahres (2013) hat Ucamco
>> Kann man da frei zugänglich etwas nachlesen?
> Ja. Siehe http://www.ucamco.com/downloads
> Dort "Gerber File Format Specification" wählen.

Ich muss mich revidieren: Es gibt dort schon ein Update von Juni 2013.
Es tut sich also was bei Gerber.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Chris.

Chris schrieb:

> Also nochmals, wenn so ein Tool gewünscht wird, um Text oder
> Grafik in Gerber einzufügen kann ich dies problemlos machen.

Wenn es problemlos ist, so mache es.

Aber....

> Eigentlich gäbe es einen Opcode für Text in Gerberfiles, G56 .
> Dieser wird aber nur von den wenigsten SW unterstützt.

Ich habe hier mehrere Gerber Definitionen (alle Barco/Ucamco). Die 
älteste von 1998, die neueren von 2012 und letzten von 2013.
Aber NIRGENDWO habe ich etwas über G56 gefunden.

>
> Grundlage dafür wären gerber2tiff sowie opencv und lineare Gerber Paint
> code. Schrift wäre Hershey Font.

Ich vermute, diese alten Sourcen würden dann Gerber code erzeugen, der 
nicht der aktuellen Definition entspricht.

Gleichwohl sollte aktuelle Software diesen alten Code erkennen und 
verstehen, um ihn umändern zu können.

Und hier geht es auch schon los:

Chris schrieb:

>
> G54D20*
> X30100Y-22225D03*
> X30100Y-22600D03*
> X30100Y-22975D03*
> X29100Y-22975D03*
> X29100Y-22600D03*
> X29100Y-22225D03*

"G54" ist "deprecated". Die Interpolationsart wird jedem Datenblock oder 
Zeile bei Draws (D01) vorangestellt, Bei Moves (D02) ist das möglich, 
wird aber ignoriert (wichtig ist der Endpunkt). Flashes bleiben wie 
gewohnt.

Also, mit G01 für lineare interpolation und Draws:

D20*
G01X30100Y-22600D01*
G01X30100Y-22975D01*
G01X29100Y-22975D01*

oder auch:

D20*
G01*
X30100Y-22600D01*
X30100Y-22975D01*
X29100Y-22975D01*

Siehe die Gerber Spezifikation von Ucamco vom Juni 2013, Seite 29-30.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Reinhard Kern (Gast)


Lesenswert?

Hallo,

generell ist die Modifikation von Gerber nur eine wackelige Krücke, 
genau wie das früher übliche Wegkratzen von Verbindungen auf dem Film 
oder das Malen von neuen mit Tusche. Wir hatten in der LP-Fertigung 
schon unzählige Fälle, wo solche Korrekturen quick and dirty 
durchgeführt wurden und beim nächsten Update und Neuausgabe dann nicht 
mehr da waren, mit teilweise beträchtlicher Schadenshöhe, z.B. 1000 
unbrauchbare Leiterplatten, und besonders toll wenn es erst nach dem 
Bestücken bemerkt wird.

Ich würde daher ein Dogma formulieren: die fertige LP muss genauso 
aussehen wie im CAD-Programm, ohne nachträgliche Modifikation. Und im 
CAD-System müssen die Versionen sauber verwaltet werden.

Gruss Reinhard

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Reinhard.

Reinhard Kern schrieb:

> generell ist die Modifikation von Gerber nur eine wackelige Krücke,

Das ist sehr richtig. Aber Krücken werden halt gebraucht.
Es gibt sogar den Beruf des Reha-Technikers....

In Gerberdaten rumpfuschen bzw. Tools dafür, die das erleichtern wären 
das CAM Analogon dazu...der Vergleich ist nicht schlecht.

> Ich würde daher ein Dogma formulieren: die fertige LP muss genauso
> aussehen wie im CAD-Programm, ohne nachträgliche Modifikation. Und im
> CAD-System müssen die Versionen sauber verwaltet werden.

Du vergisst, das Bestücker die Pastenschablonen, Klebstoffmasken und 
eventuell die Lötstoppmaske auf ihren Prozess anpassen müssen. Das ist 
AUCH Gerber.

Für die reine Leiterplatte hast Du aber gewiss recht....bis auf die 
nicht seltenen Fälle, wo kein Zugriff mehr auf die original Daten bzw. 
das original Programm besteht.

> wo solche Korrekturen quick and dirty
> durchgeführt wurden und beim nächsten Update und Neuausgabe dann nicht
> mehr da waren, mit teilweise beträchtlicher Schadenshöhe, z.B. 1000
> unbrauchbare Leiterplatten, und besonders toll wenn es erst nach dem
> Bestücken bemerkt wird.

Ich hatte mal den Fall, das ich in einer ganzen Serie von bestückten 
Platinen eine einzige hatte, die sich sehr merkwürdig verhielt....
Meine Fehlersuche brachte dann zu Tage, dass das Layout an einer Stelle 
geändert war. Eine Leiterbahn endete an einem Nachbarpad, statt am 
Ursprünglichen. Sah aber sonst alles optisch sehr professionell aus. ;O)
Meine Vermutung: Die belichtete Lage wurde beschädigt und von Hand 
falsch nachretuschiert.

Mit freundlichem Gruss: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Chris (Gast)


Lesenswert?

>> Eigentlich gäbe es einen Opcode für Text in Gerberfiles, G56 .
>> Dieser wird aber nur von den wenigsten SW unterstützt.
>
> Ich habe hier mehrere Gerber Definitionen (alle Barco/Ucamco). Die
> älteste von 1998, die neueren von 2012 und letzten von 2013.
> Aber NIRGENDWO habe ich etwas über G56 gefunden.
Ich habe auch zwei alte, allerdings in Papierform.
Eine kurze Onlinesuche ergab:
http://www.rulabinsky.com/cavd/text/chapa.html

>
>>
>> Grundlage dafür wären gerber2tiff sowie opencv und lineare Gerber Paint
>> code. Schrift wäre Hershey Font.
>
> Ich vermute, diese alten Sourcen würden dann Gerber code erzeugen, der
> nicht der aktuellen Definition entspricht.
>
Gerber Paint code heisst D01 und D02, keine Flash.
Ucamco will diese abschaffen, gleich wie es leiden den G91 abgeschafft
hat. Nur weil die SW keine 91 braucht, für handcodierten, oder 
optimierten
Code wäre G90/91 aber sehr brauchbar. Ist etwa dasselbe wie G71/70.
Dank der Abschaffung darf man teilweise raten, ob Zoll oder MM.
Wären die Codes geblieben, wäre es klar gewesen.
>
> Und hier geht es auch schon los:
>
> "G54" ist "deprecated". Die Interpolationsart wird jedem Datenblock oder
Ich habe eine normale Datei aus meinem Fundus von Gerberdaten
hergenommen für dieses Beispiel.
Die G04 dazu:
G04 (created by PCBNEW-RS274X (2012-01-19 BZR 3256)-stable) date So 29 
Apr 2012 13:44:41 CEST*

auch habe ich etliche Dateien von
G04 PowerPCB (Build Number [351.51 ]) generated Gerber (RS-274-X) file*
welche auch ausschließlich G54 verwenden, wie auch noch andere 
Programme.

Also so depredicated ist G54 nicht, und es stimmt auch, diese wird nicht
benutzt. Es gibt noch einen Modus, wo G54 eine komplett andere Funktion
hat. Diese ist wirklich nur eine preparatory Function und wird überhaupt
nicht mehr gebraucht. Deshalb ist die Definition von G54 ja so 
mehrdeutig
und nicht 100% beschrieben, da die doppeldefinition von G54
in der Ucamco unterschlagen wurde und da warscheinlich die alte nicht
mehr gebräuchliche Funktion gemeint war, die andere aber warscheinlich
vergessen wurde reinzunehmen, und dieser Fehler hat sich dann 
durchgeschleppt. Dies meine Meinung dazu.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Chris.

Chris schrieb:
>>> Eigentlich gäbe es einen Opcode für Text in Gerberfiles, G56 .
>>> Dieser wird aber nur von den wenigsten SW unterstützt.
>> Ich habe hier mehrere Gerber Definitionen (alle Barco/Ucamco). Die
>> älteste von 1998, die neueren von 2012 und letzten von 2013.
>> Aber NIRGENDWO habe ich etwas über G56 gefunden.
> Ich habe auch zwei alte, allerdings in Papierform.
> Eine kurze Onlinesuche ergab:
> http://www.rulabinsky.com/cavd/text/chapa.html

Ah, ok. Von 1994. Danke für den Tipp!
Ich werde mir das mal näher Ansehen. In der Tat hatte ich letztens noch 
alte Platinen ausgeschlachtet, wo ein vergleichbares Schriftbild 
existierte.

> Code wäre G90/91 aber sehr brauchbar.

Oja. Mann müsste nicht erst umrechnen. Auf der anderen Seite erzeugt und 
benutzt man Gerber Code immer nur an Rechnern. Sollen die das doch 
umrechnen. ;O)

> Ist etwa dasselbe wie G71/70.
> Dank der Abschaffung darf man teilweise raten, ob Zoll oder MM.
> Wären die Codes geblieben, wäre es klar gewesen.

Was ist mit MOIN und MOMM?

> und nicht 100% beschrieben, da die doppeldefinition von G54
> in der Ucamco unterschlagen wurde und da warscheinlich die alte nicht
> mehr gebräuchliche Funktion gemeint war, die andere aber warscheinlich
> vergessen wurde reinzunehmen, und dieser Fehler hat sich dann
> durchgeschleppt. Dies meine Meinung dazu.

Mmmh. Das ist für ganz alten Code sicher richtig. Aber solange ich halt 
mich mit Gerber beschäftige, ist er wirklich überfüssig.

So wie Ucamco schreibt, ist es ja auch wichtig. alten, "fehlerhaften" 
Code
einlesen und verarbeiten zu können, um ihn neu richtig abspeichern zu 
können. Insofern ist die Kenntnis über alten Code bzw. ausgestorbene 
Seitenenlinien schon wertvoll.
Hast Du mal Ucamco eine Mail darüber geschrieben? Unter 
gerber@ucamco.com nehmen sie feedback an.
Aus meiner Sicht kann ich Dir nur sagen, das ich mich bisher über jede 
Feedbackmail zu meinen Aktivitäten gefreut habe.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Chris (Gast)


Lesenswert?

>> Code wäre G90/91 aber sehr brauchbar.
>
> Oja. Mann müsste nicht erst umrechnen. Auf der anderen Seite erzeugt und
> benutzt man Gerber Code immer nur an Rechnern. Sollen die das doch
> umrechnen. ;O)
>
Klar, wenn man aber spezielle Apertures für Pastendaten macht, sind
diese wirklich sehr praktisch, und da sind teilweise die Kühlflächen
als Poligone und nicht als Flashes definiert.
Nicht jeder kann ein paar Tausend $ für Programme ausgeben, welche sowas
generieren, und wenn man nur das orginal Polygon löschen braucht,
und einen vorbereiteten Text mit den Koordinaten des Pick&Place files 
dieses Bauteils einzufügen braucht, ist dies sehr einfach, in Zukunft 
muss man dafür dann extra ein Programm
schreiben. Speziell wenn man runde cutouts macht, sind relative
Koordinaten interessant.

>> Ist etwa dasselbe wie G71/70.
>> Dank der Abschaffung darf man teilweise raten, ob Zoll oder MM.
>> Wären die Codes geblieben, wäre es klar gewesen.
>
> Was ist mit MOIN und MOMM?
>
G71/70 war aber auch in den Excellon Dateien drin. !!
Da wurde es rausgestrichen, obsolet, als NIST den Opcode von G71/70 auf
G20/21 abänderte. Da G20/21 aber bereits mit was belegt war, sprich
G02 nur im anderen Maßstab, gleich wie G10 und G11 bei G01, wurde
dieser ersatzlos gestrichen, auch wenn alle Routerhersteller den
G70/71 Code weiter unterstützten.
Ab da schrieben dann die wenigsten Programme das Format hinein.
MOIN sowie METRIC kam erst sehr viel später, anfänglich waren alle
Befehle auch ein oder zwei Buchstaben begrenzt, da der Speicherplatz
auf den Karten oder Lochbändern kostbar war.
Einige generieren diese Befehle immer noch nicht, gleich wie auch einige 
keinen Werkzeugwechsel schreiben sondern einfach ein M00
Da inzwischen die Benutzer aber erzogen wurden, das Format zu erraten,
hat man es so belassen.
Das ist dasselbe wie die Splines di man mal hatte. Da diese aber nur
Gerber Maschinen konnten, wurden diese de fakto ignoriert.Heute wäre man 
froh, wenn man Splines wieder hätte.


Wo ich echte Beispiele Bräuchte wäre:
Excellon: Step and Repeat
Gerber:
KO RO MI OF RC SF SM SS TR
sowei diverse unterschiedliche Modale Befehlsverhalten.
 Wenn du sowas auf den alten Platten hättest, würde es mich sehr 
weiterbringen.

Als Kurzreferenz haben mir die specs von Basista auf ihren neuen
Seiten sehr gut gefallen.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Chris

Chris schrieb:
> Wo ich echte Beispiele Bräuchte wäre:
> Excellon: Step and Repeat
> Gerber:
> KO RO MI OF RC SF SM SS TR
> sowei diverse unterschiedliche Modale Befehlsverhalten.
>  Wenn du sowas auf den alten Platten hättest, würde es mich sehr
> weiterbringen.

Das hattest Du oben missverstanden. Ich meine das ich das auf Platinen 
(boards, PCB) gesehen hatte, nicht auf Speicher Festplatten. ;O)

Ich produziere mir (fast) alles was ich bisher für PyGerbAnalyse zum 
Testen brauchte, aus Kicad und Eagle selber.

Darum bin ich auch immer auf der Suche nach Gerber Testfiles.....

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Reinhard Kern (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Darum bin ich auch immer auf der Suche nach Gerber Testfiles.....

Alte oder neue? Ich habe welche von ca. 1990 bis heute.

Gruss Reinhard

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Reinard.

Reinhard Kern schrieb:

>> Darum bin ich auch immer auf der Suche nach Gerber Testfiles.....
> Alte oder neue? Ich habe welche von ca. 1990 bis heute.

Eigentlich alles. Denn der Gerber Analysator sollte auch altes und 
ungewöhnliches zumindest erkennen können, damit er diesbezügliche 
Warnungen
ausgeben kann.

Wichtig ist nur, zumindest bei den Gerberfiles, die aktuell kaum noch 
gelesen werden können, das ich zumindest weiss, worum es geht und was 
gemeint ist. ;O)

Wenn Du also soetwas hättest, wäre ich interessiert.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Chris (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Reinhard, habe dir ein PN geschickt.
Was mich z.B. brennend interessieren würde wäre ein Beispiel mit
gedrehtem Step and Repeat, also sowas:
Dann würde ich gleich so eine SW schreiben.
Vorteil wäre, die orginalen Gerber werden nicht angetastet, sondern es
werden nur step and repeat Zeilen hinzugefügt, sowie Rotation.

von Reinhard Kern (Gast)


Lesenswert?

Chris schrieb:
> Was mich z.B. brennend interessieren würde wäre ein Beispiel mit
> gedrehtem Step and Repeat, also sowas:

Hallo,

ich fürchte da muss ich dich enttäuschen. Ich habe sowas sicher irgendwo 
im Archiv, wir haben schliesslich für 5...10 000 Leiterplatten 
CAM-Montagen gemacht, das wären mindestens 100 000 Gerberdateien. Aber 
ich habe keine Ahnung, wo mit gemischter Ausrichtung montiert wurde. Ich 
kann dir natürlich auch nicht die Leiterplattendaten von mehr als 500 
Kunden zur Verfügung stellen, da die allesamt vertraulich sind, vom 
Mengenproblem mal abgesehen. Bei einer einzelnen Datei einer alten LP 
hätte ich keine Bedenken, aber ich kann niemand im Datenbestand suchen 
lassen.

Gruss Reinhard

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.