Meine Workarounds, Ergänzungen und Tipps für fritzing
fritzing Lochrasterplatte perfboard stripboard Löten Vorlage Probleme Überdeckung
Warum selber rumpfuschen?
Vielleicht geht es Euch manchmal auch so wie mir: Man sucht nach einem geeigneten Werkzeug im Netz
(hier konkret: zum Dokumentieren einer Schaltung auf Lochrasterplatte), findet jede Menge Alternativen, aber überall auch
irgendwelche Pferdefüße (zu kompliziert, zu teuer, Funktionen nicht so wie man sich's vorstellt etc.).
fritzing gefiel mir auf Anhieb sehr gut. Da ist z.B. das direkte Umschalten zwischen den Ansichten (Steckbrett/Lochrasterplatte,
Schaltplan etc.) und auch die foto-realistische Darstellungsweise, die sich sehr gut zum Erstellen von Anleitungen
eignet. Beim Arbeiten musste ich mich dann aber leider über eine Reihe
von unverständlichen Unzulänglichkeiten ärgern:
- Man kann im Schaltplan nicht auf europäische Bauteil-Symbole (z.B. für den Widerstand) wechseln.
- Es gibt Bauteile, z.B. Dioden, deren Beinchenabstand auf der Lochrasterplatte
(Steckplatinenansicht) nicht stimmt.
- Manche Bauteile (u.a. Elkos, Spannungsregler, Transistoren) sind in der Steckplatinenansicht
(auch für Lochrasterplatte)
eher in der Seitenansicht statt in der Draufsicht dargestellt, so dass sie oft andere Bauteile überdecken und
die Darstellung unübersichtlich machen. Das gilt besonders, wenn man die Schaltung auf Lochrasterplatte
zusammenstellt, um eine Vorlage für das reale Zusammenlöten zu haben.
- Vor allem gibt es in der Steckplatinen/Lochrasterplatten-Ansicht keine senkrecht stehenden Widerstände.
Auch wenn man den Beinchenabstand beim generischen Widerstands-Bauteil entsprechend zu 100 mil wählt, bleibt
in der Steckbrettansicht der liegende Widerstand. Aber so eine Variante braucht's auf der Lochrasterplatte
halt einfach (z.B. für eine Schaltung wie diese).
Dabei kann man gerne auf die Darstellung der Farbringe verzichten.
- Man kann zwar einzelne Bauteile selbst definieren, aber das Erstellen von ganzen Reihen
(z.B. eine spezielle Widersandsreihe, eine spezielle Kondensator-Reihe, eine Spannungsregler-Reihe etc.) wird
nicht unterstützt.
- In der Schaltplan-Ansicht ist zunächst unklar, wie man Verbindungsknoten (die mit dem Knödel) an
beliebiger Stelle setzen kann. Beim verzweifelten Rumprobieren kann es dann schon mal sein, dass man eine
Verbindung (Drahtbrücke) löscht. Die verschwindet dann halt leider auch in den anderen Ansichten, ohne dass
man gewarnt wird.
Bei der Suche nach Abhilfe zeigte sich, dass manche Probleme teilweise schon vor Jahren im fritzing-Forum
angesprochen wurden. Die dortigen Antworten (siehe z.B.
thread 1546) oder die Hinweise von erfahrenen fritzing-Usern
in einem von mir gestarteten Thread
gaben mir wenig Hoffnung, dass sich da zeitnah irgendwelche
Updates von offizieller Seite anstoßen ließen. Ich wollte schon fast wieder hinschmeissen,
aber im Großen und Ganzen passte mir fritzing doch immer noch am besten.
Also habe ich mich hingesetzt, etwas reverse engineering und mühsames Foren-Absuchen
betrieben. Dabei sind ein paar Sachen rausgekommen, die ich mit Euch teilen möchte.
Patches für Euro-Schaltsymbole (EN/IEC 60617)
fritzing core Widerstand Elko Elektrolytkondensator Schaltzeichen EN/IEC 60617 Schaltplan
Also u.a. dieses Symbol
statt diesem
.
Die hier beschriebenen Patches sind einfach und schnell zu machen, bedeuten aber einen Eingriff in die fritzing-Installation,
der wiederholt werden muss, wenn man die fritzing-Anwendung neu aufspielt oder wenn eine
Aktualisierung durchgeführt wurde.
Der Austausch der Schaltsymbole geht folgendermaßen:
Man wechselt an geeigneter Stelle im Installationsverzeichnis die entsprechende Graphikdatei aus. Ihr findet
diese Datei im Ordner für Programme (für Window in der Regel: "C:\Program Files (x86)"). Dort geht
Ihr dann in den Ordner "fritzing.0.9.3b.64.pc\fritzing-parts\svg\core\schematic" und sucht die Datei
"resistor.svg". Die benennt Ihr um, z.B. indem Ihr ein ".bak" an den Namen hängt
(man muss sie ja nicht gleich löschen). Dann kopiert Ihr
diese Datei rein. Fertig!
Das Gleiche kann man z.B. auch noch mit dem Elko-Symbol (gepolter Kondensator) machen: Datei
"capacitor_polar.svg" umbenennen und durch
diese ersetzen.
Um nach diesen Patches die Änderungen wirksam werden zu lassen, muss man in fritzing dann noch unter
dem Reiter "Bauteil" die Funktion "Bauteil-Datenbank neu erstellen..." ausführen.
Voilà, nach dem erneuten Start von fritzing erscheinen die ausgetauschten Graphiken auch bei bereits
bestehenden Enwürfen.
O.k., es kann Probleme mit der Schreibberechtigung in o.g. Verzeichnissen geben. In der Regel
muss man aber nur nochmal extra auf
klicken. Wenn Ihr da aber nicht weiterkommt, müsst Ihr schauen, wie Ihr Euch als Administrator einloggen könnt
(z.B. nach "Verstecktes Administrator-Konto aktivieren" googeln).
Bauteile angepasst für Lochrasterplatte
fritzing mine Steckbrettansicht eigene Bauteile generisch Widerstand senkrecht
Arduino Aufkleben Huckepack
Wie oben schon erwähnt, sind die Steckbrettansichten vieler Core-Bauteile (also die, die direkt mit
dabei sind) für die Lochrasterplatte ungeeignet. Sie überdecken andere Bauteile und/oder haben einen
Beinchenabstand, der nicht dem eigentlichen Bauteil (wie auf der Leiterplatte) entspricht. Nach viel
Rumprobieren und Hilfe über das fritzing-Forum
(
siehe hier)
konnte ich einen Reihe von eigenen Bauteilen mit entsprechend korrigierter Steckbrett-Ansicht kreieren, die ich Euch
hiermit zum Runterladen breitstelle:
Hier gibt es dann auch noch eine Arduino-ProMini-Platine, die für's Aufkleben gedacht ist.
Gegenüber dem identisch aussehenden Core-Bauteil sind alle Anschlusspunkte als Lötfläche (statt Stifte)
definiert. Damit kann man die Platine auf einer Lochrasterplatte platzieren, ohne dass sie sich gleich
mit dem darunter liegenden Raster verbindet. Die gewünschten Anschlüsse werden explizit mit
Drahtbrücken gezogen. Dies entspricht der von mir praktizierten Bauweise.
Und, weil ich den auch noch gemacht habe:
einen L272 (Dual Power OP-Amp).
Falls
Ihr weitere Bauteile braucht, findet Ihr im nächsten Abschnitt meine Tipps
und Erkenntnisse, die Euch Frust ersparen sollen.
Tipps zum Erstellen eigener Bauteile
fritzing mine Tipps eigene Bauteile erstellen generische Eigenschaften erhalten
svg editieren Wertereihe Nennwert
Der offizielle Weg geht über den (neuen) Bauteile-Editor. Das Ganze ist aber etwas umständlich und
die Möglichkeiten sind eingeschränkt. Für ein effektiveres Arbeiten und ein Ausschöpfen der
Möglichkeiten habe ich folgende Tipps und Informationen:
- Erstellen/Ändern von Bauteilen nur über das Editieren der entsprechenden *.fzp-Dateien (Metadaten)
und der zugehörigen *.svg-Dateien (Grafiken für die verschiedenen Ansichten). Neue Bauteile werden
durch Kopieren und Anpassen aus vorhandenen Vorlagen abgeleitet. Die genannten Dateien enthalten
Text im xml-Format und sind deshalb alle z.B. mit WordPad bearbeitbar. Die *.fzp-Dateien der eigenen Bauteile
gehören ins Verzeichnis "...\Dokumente\Fritzing\parts\user", die zugehörigen *.svg-Dateien
nach "...\Dokumente\Fritzing\parts\svg\user\breadboard" (Steckbrettansicht),
"...\icon" (Auswahlansicht), "...\pcb" (Leiterplattenansicht) bzw. "...\schematic" (Schaltplanansicht).
U.a. hier ist das ausführlicher beschrieben.
- Der xml-Code in den *.svg-Dateien definiert Vektorgrafiken. fritzing sucht darin nach bestimmten
Schlüsselelementen, um u.a. festzustellen, wo sich im Bild welche elektrischen Anschlüsse befinden.
Üblicherweise verwendet man einen Grafik-Editor (hier Inkscape) zur Darstellung und Bearbeitung.
Die Erfahrung beim Bearbeiten von Steckbrettansichten mit Inkscape hat aber gezeigt, dass nach dem
"Anfassen" von Anschlusselementen die Datei oftmals so verändert abgespeichert wird,
dass fritzing die erwarteten Schlüsselelemente offenbar nicht mehr erkennt. Das Teil ist dann
unbrauchbar, da es auf dem Steckbrett bzw. der Lochrasterplatte keine Verbindung mehr eingeht. Mein Tipp:
fritzing-Schlüsselelemente direkt im xml-Code bearbeiten. Man findet leicht die
Anschluss-Elemente im Code, indem man nach "connector" sucht. Wenn man weiß, dass das Koordinatensystem links
oben seinen Ursprung hat, erschließt sich auch relativ leicht, wie man die xy-Positionsparameter
ändern muss, um gewünschte Verschiebungen etc. vorzunehmen.
- Dagegen ist eine Bearbeitung der rein illustrativen Bildelemente
(Bauteilansicht mit Schattierungen) tatsächlich mit Inkscape möglich und empfehlenswert.
Wichtig ist dabei, zu wissen, wie die Elemente
gruppiert sind: Bei den Grafiken für's Steckbrett heißt die oberste Ebene "breadboard" darin findet
fritzing die o.g. Schlüsselelemente. In einer Untergruppe (id="gn") ist der Rest zu finden.
Man muss dieser Gruppe "beitreten" (siehe Menü rechte Maustaste), dann kann man dort Löschungen
Verschiebungen, Einfügungen etc. vornehmen. Gruppierungen nicht aufheben!
- Nach den Änderungen in einer *.svg-Datei passt meistens der Viewport, d.h. die Umrandung der Grafik, die in
fritzing das Bauteil abgrenzt, nicht mehr. In Inkscape gibt es zwar die Möglichkeit diese bequem
anzupassen, allerdings führt das oft auch wieder dazu, dass das Teil unbrauchbar wird. Am besten man passt
die Parameter width, height und viewBox (ziemlich am Anfang des xml-Codes)
gleich manuell an. Dazu kann man
hier nachlesen, wie diese wirken. Wichtig ist aber vor allem, zu
wissen, dass width und das dritte Argument von viewBox, genauso wie height und das
vierte Argument von viewBox immer mit dem gleichen Faktor geändert werden müssen. Beachtet man das
nicht, wird die Grafik verzerrt.
- Es gibt eine Reihe von generischen Core-Bauteilen. Verwendet man ein solches Teil,
dann kann man nach der Platzierung den Bauteilewert im Inspector aus einer Liste wählen oder auch frei
eingeben. Typisches Beispiel ist der Ohm-Wert beim Widerstand. Kopiert man sich nun ein solches Teil als Vorlage
für eine eigene Variante, dann will man natürlich auch die generischen Eigenschaften erhalten.
Dazu muss man wissen, dass fritzing offensichtlich an der moduleId (ziemlich am Anfang der *.fzp-Datei),
erkennt welche Spezial-Behandlung
das Bauteil braucht. Beim Widerstand ist das z.B. auch noch das Ändern der Farbringe, je nach gewähltem
Ohm-Wert. Mindestens bei folgenden Core-Bauteilen gibt es eine spezielle Behandlung im fritzing-Code:
Bauteil | moduleId |
---|
Widerstand mit Farbringen | ResistorModuleID |
Potentiometer | PotentiometerModuleID |
Kondensator | CapacitorModuleID |
Induktivität | InductorModuleID |
Zener-Diode | ZenerDiodeModuleID. |
- Die moduleId kann mit irgendeinem zusätzlichen Text vorne erweitert werden, um für verschiedene
Varianten jeweils eine eindeutige ID zu kreieren. So hat bei den Core-Bauteilen z.B. der kleine
Keramik-Kondensator (capacitor_ceramic_100mil.fzp) die moduleId "100milCeramicCapacitorModuleID" und
der große Elko (capacitor_electrolytic_large.fzp) hat "LargeElectrolyticCapacitorModuleID".
Beide werden von fritzing, was die wählbaren Werte anbelangt, gleich behandelt, d.h. die gleiche
Kapazitäts- und Spannungsreihe werden angeboten.
- Schlüsselwörter in *.fzp sind case-sensitiv, was für bestimmte Funktionen eine Rolle spielt.
Schreibt man bei einem Kondensator z.B. "Capacitance" statt "capacitance" (bei <properties>),
funktioniert zwar alles, aber es erscheint in der Schaltplanansicht nicht automatisch der
Kapazitätswert im Label.
Verbindungspunkte im Schaltplan
fritzing Verbindungspunkte setzen Schaltplan
Ich habe lange gesucht und rumprobiert, bis ich gefunden habe, wie's geht. Die spärlichen Hinweise in den Foren
(z.B.
thread 1109 oder
thread 989)
muss man erst mal finden und verstehen. Unter Hilfe "Tipps und Tricks habe ich's erst nachträglich entdeckt.
So findet man die Verbindungen vor dem manuellen Anordnen der durchgezogenen Verbindungslinien vor.
Man kann schon mal die direkten orthogonalen Verbindungslinien von einem Bauteil-Anschlusspunkt zum anderen
ziehen. Fehlt nur noch eine horizontale Linie mit Verbindungspunkten.
Einen Verbindungspunkt irgendwo auf einer existierenden Verbindungslinie setzt man, indem
man zunächst einen Biegepunkt an dieser Stelle setzt (z.B. mit einem Doppelklick).
Es gibt keinen Snap auf das Gitter.
Jetzt kommt das Entscheidende: Man muss diesen Punkt mit gleichzeitig gedrückter Alt-Taste anfassen,
um von da aus neue Verbindungslinien ziehen zu können, ansonsten zieht man ja einfach nur die existierende
Linie. Hat man die erste abgehende Linie erfolgreich zu einem anderen Punkt gezogen, erscheint der ersehnte
dicke Knödel. Für das Ziehen weiterer abgehender Verbindungen muss man wieder die Alt-Taste gedrückt halten.
So, jetzt noch den Verbindungspunkt am Gitter einrasten, indem man nochmal draufklickt und ein bisschen
schiebt. Fertig.
Falls Ihr Euch fritzing runterladet und benutzt, vergesst nicht etwas zu spenden,
damit eine Weiterentwicklung möglich ist!
Wollt Ihr einen Kommentar loswerden oder habt Ihr eine Frage?
Schickt mir eine Mail