Ich habe festgestellt, dass beim Ausführen von gsch2pcb zum Konvertieren eines gEDA-gschem-Schaltplans in ein PCB-Layout bestimmte Komponenten, die im Schaltplan ordnungsgemäß verbunden sind, im PCB-Layout nicht verbunden sind. Insbesondere Transistoren aus der Aktiensymbolbibliothek sind betroffen, aber dies wurde auch bei einigen anderen Aktienkomponenten beobachtet. (gschem-Version 1.6.2.20110115 - Ubuntu x64)
Um dies zu demonstrieren, habe ich einen neuen Schaltplan wie unten erstellt
Überprüfen Sie dann die Verbindungen (mit gnetlist -g drc2 demo.sch -o /dev/stdout), um sicherzustellen, dass alles verbunden ist. Allen Komponenten wurden gültige Footprints zugewiesen.
pat@frog:/tmp/x$ gnetlist -g drc2 x.sch -o /dev/stdout
Loading schematic [/tmp/x/x.sch]
Checking non-numbered parts...
Checking duplicated references...
Checking nets with only one connection...
Checking pins without the 'pintype' attribute...
Checking type of pins connected to a net...
Checking unconnected pins...
Checking slots...
Checking duplicated slots...
Checking unused slots...
No warnings found.
No errors found.
Dies wird dann mit gsch2pcb in ein PCB-Layout konvertiert und die Netzlistendatei geladen, und wir sehen das folgende Ratsnest (ich habe die Komponenten auch automatisch platziert):
Warum wird der NPN-Transistor ignoriert? Es ist ein Standard-gEDA-Symbol (npn-3.sym) und ein Standard-Footprint (TO92) aus der PCB-Bibliothek. Ich habe sowohl die generierte Netzlistendatei geladen als auch die generierte .cmd-Datei ausgeführt, und beide Dateien listen die Pins auf Q1 auf. In der folgenden Netzliste sind alle 3 Pins von Q1 mit etwas verbunden.
pat@frog:/tmp/x$ cat x.net
unnamed_net3 R3-2 LED1-2
unnamed_net2 LED1-1 Q1-C R2-1
+5V S1-2 R2-2
GND R3-1 Q1-E R1-1
unnamed_net1 Q1-B S1-1 R1-2
Die generischen NPN-Symbole verwenden BCE als Pin-Namen und nicht 1-2-3 wie der TO92-Footprint, der ein generisches Paket ist und nicht nur für Transistoren verwendet wird.
Die Netze sind mit den B-, C- und E-Pads von Q1 verbunden, die eigentlich nicht existieren, sodass Sie keine entsprechenden Leitungen auf Ihrem Rattennest haben.
Sie sollten die Symbole bearbeiten, um die 1-2-3-Namen für die Pins (in Pinnummer) zu verwenden. Diese sollten mit den Namen der Pads in den Footprints übereinstimmen.
Es ist so etwas wie ein philosophisches Argument darüber, wie es konventionell gemacht werden sollte. Im Moment scheint mir persönlich die Verwendung von 1-2-3 sauberer zu sein, aber es hilft, sich daran zu erinnern, dass Transistoren nicht immer in TO92 enthalten sind und es daher möglicherweise einfacher ist, BCE von einem Paket zu einem anderen zu wechseln (obwohl Sie es dann getan hätten). ein alternativer Footprint zu TO92 in Ihrer Bibliothek speziell für Transistoren)
Anstatt das Symbol zu bearbeiten, können Sie den gleichen Effekt mit der Slots-Funktion erzielen. Fügen Sie dem Transistor die folgenden Attribute hinzu:slot=1 numslots=1 slotdef=1:3,2,1
Zahlen in slotdef danach 1:
stellen Paket-Pin-Nummern in der pinseq
Reihenfolge dar. Im obigen Beispiel C
hat pinseq=1
und wird für das npn-3-Symbol Pin 3 zugewiesen, B
hat pinseq=2
und wird Pin 2 zugewiesen und E
hat pinseq=3
und wird Pin 1 zugewiesen.
Andere Transistoren können andere Anschlussbelegungen haben. Zum Beispiel slotdef=1:2,1,3
für einen MJE305 im TO220W-Gehäuse verwenden. Wenn Sie das Symbol weiter bearbeiten, werden Ihre vorherigen Designs immer wieder zerstört. Sie können auch eine Reihe von Klonen mit unterschiedlichen Pinbelegungen erstellen, aber das kann ziemlich schnell aus dem Ruder laufen, wenn Sie viele verschiedene Arten von Transistoren verwenden.
Chintalagiri Shashank
Patthoyts
Chintalagiri Shashank
Patthoyts