Die Neuerungen in CADdy EDS 14.0
Mit dieser Version haben wir die Bauteil-Datenbank auf eine neue Datenbank-Software
umgestellt. Zahlreiche Beschränkungen der alten Software entfallen damit,
und zahlreiche Weiterentwicklungswünsche die Bauteil-Datenbank betreffend
konnten nun endlich berücksichtigt werden: beliebig viele durch den Benutzer
definierbare Zusatztexte, Pinnummern als beliebige Texte, beliebige Bauteile
gegeneinander tauschen können - um nur einige dieser Wünsche zu nennen.
Bei der Implementation der neuen EDS-Datenbank-Schnittstelle wurde auf
Standards (ODBC, SQL) geachtet. Prinzipiell können daher verschiedene Datenbanken
als EDS-Bauteil-Datenbanken Verwendung finden. Um eine möglichst einfache
Administration zu erreichen wurde als Standard-Datenbank eine SQLite-DB
gewählt. Mit etwas administrativem Aufwand ist aber auch die Verwendung
von MS SQLServer möglich. Mit externen Tools können SQL-Abfragen auf diese
Datenbanken ausgeführt werden. Das ermöglicht es z.Bsp. die Pflege der
Zusatztexte (Bestellnummern, Lagerbestand o.ä.) von außen vorzunehmen.
Eine neue Datenbank
Vorab: bestehende Bauteil-Datenbanken können selbstverständlich verlustfrei in das neue DB-Format konvertiert werden (Datenbank - Übernehmen) ! Und die alten Bauteildatenbanken werden während der Laufzeit der Version 14.0 auch noch unterstützt. Einige der im Folgenden beschriebenen Neuerungen sind allerdings nur mit Datenbanken des neuen Formats möglich.
Da nun Datenbanken unterschiedlichen Formats (alt und neu) in Gebrauch
sein können, haben die Datenbanknamen in den Pulldown-Listen zur DB-Auswahl
eine Kennzeichnung vorangestellt bekommen. DBVista steht für das alte Datenbankformat, SQLite und MS SQL-Server stehen für das neue Datenbankformat. Da per Datenbank - Übernehmen auch die Objekte aus SQLite-Datenbanken in MS SQL-Server-Datenbanken übernommen werden können (und umgekehrt), kann die Entscheidung für ein bestimmtes Datenbankformat auch jederzeit wieder geändert werden.
Die grundlegende Struktur der Bauteile ist im Prinzip die gleiche geblieben. Allerdings wurde das Handling von Tauschgattern und -gehäusen vereinfacht. Tauschgatter sind nun einem Gatter zugeordnet (und Tauschgehäuse einem Gehäuse) und nicht mehr, wie früher einem Bauteil. Konsequenterweise werden Tauschgatter beim Datenbank - Gatter speichern festgelegt, und Tauschgehäuse beim Datenbank - Gehäuse speichern.
Geändert wurde auch die Handhabung der Familie. Diese stellt nun eine beliebige Gruppierung von Bauteilen in einer Datenbank
dar. Zusammengehörende Bauteile lassen sich über die Familie leichter durchsuchen.
Was "zusammengehörend" bedeutet, das legt der Anwender fest.
Die alte Beschränkung, dass nur Bauteile einer Familie gegeneinander getauscht
werden können, ist weggefallen. Per Bauteile - Bauteil tauschen könne nun beliebige Bauteile gegeneinander getauscht werden. Insbesondere
spielt auch die Pinanzahl keine Rolle mehr.
Pinnummern können nun aus einem beliebigen Text bestehen (z.B. "A1"). Die im Bauteil-Editor festzulegende Zuordnung von Anschlusspunkten zu Pads wird über sogenannte Pinidentifizierer vorgenommen, die ansonsten keine Rolle mehr spielen. Pinnummern und Pinbezeichner können mittels Bauteile - Pin-Information inspiziert und auch nachträglich geändert werden.
Wird ein Objekt (Symbol, Gatter, Gehäuse, Bauteil oder Baugruppe) in die Datenbank abgespeichert, so erhält es einen Zeitstempel. Und der Datenbank - Browser ermöglicht eine Suche über Zeitbereiche. Somit sind Suchen der Art "geändert
vor..." oder "geändert von ... bis ..." oder "geändert
nach ..." möglich. Zusätzlich besteht die Möglichkeit eine erweiterte
Datenbank-Historie mitzuschreiben. Diese Möglichkeit muss beim Erzeugen einer Datenbank festgelegt
werden. Ist eine Datenbank mit Historie erzeugt worden, dann wird der Name des Benutzers, der ein Objekt abspeichert,
ebenfalls abgespeichert. Außerdem besteht in diesem Fall die Möglichkeit
einen Kommentar einzugeben, der natürlich auch mit abgespeichert wird.
Die Funktion Datenbank - Historie gestattet es die Historie (Benutzer und Kommentare) zu durchsuchen und
zu inspizieren.
Das neue Datenbank-Format hat also zahlreiche, schon seit Langem auf der
Weiterentwicklungsliste stehende Änderungen ermöglicht. Die aber vielleicht
wichtigste Ergänzung sind:
Beliebig viele Benutzer-definierbare Zusatztexte
Jedes Bauteil und jede Baugruppe kann nun beliebig viele Zusatztexte erhalten.
Zusatztexte bestehen aus einem Zusatztext-Namen und dem Inhalt, wobei der
Inhalt auch leer sein kann. Zusatztexte sind einem Bauteil, bzw. einer
Baugruppe zugeordnet. Verschiedene Bauteile können somit durchaus verschiedene
Zusatztexte aufweisen.
Zusatztexte (Namen und Inhalt) können für ein einzelnes Bauteil (oder für
eine einzelne Gruppe) mittels Bauteile - Information definiert und verwaltet werden. Für mehrere oder alle Bauteile eines Projektes
gibt es die Funktion Bauteile - Zusatztexte verwalten. Mit ihrer Hilfe können u.a. Zusatztextnamen projektweit umbenannt werden,
oder auch Inhalte können Projekt-weit neu gesetzt werden.
Zusatztexte können beim Speichern in die Datenbank vorbelegt werden. Die Funktion Datenbank - Zusatztexte verwalten gestattet dann das Datenbank-weite Verwalten der Zusatztexte.
Alle Zusatztexte können anhand ihres Namens sowohl für die Darstellung
als auch für die Erzeugung von Ausgabedaten ausgewählt werden.
Überarbeitung der Texte mit Bedeutung
Die Einführung beliebig vieler, frei definierbarer Zusatztexte machte eine
Überarbeitung der Texte mit Bedeutung nötig. Diese sind jetzt generell als vordefinierte Textplatzhalter
(z.Bsp. @objname für Objektnamen oder @pinnumber für Pinnummern) implementiert. Mit der Funktion Texte - Editieren können Texte mit Bedeutung auch ergänzt oder neu zusammengesetzt werden: aus dem Text "@objname
ist vom Typ @typname" wird dann z.Bsp. "IC1 ist vom Typ 7400".
Ihre Bedeutung erhalten diese Texte dadurch, dass sie zu einem Objekt (Bauteil,
Gruppe, Pin) gehören.
Die Zusatztexte werden ebenfalls über diesen Mechanismus angesprochen,
wobei der Name des Zusatztextes der Name des Platzhalters ist. Ist z.Bsp.
für einen Widerstand ein Zusatztext mit Namen wert und Inhalt 4k7 definiert worden, dann wird der Textplatzhalter @wert in einem an diesen Widerstand angefügten Text mit dem zugehörigen Inhalt
4k7 gefüllt.
Ein neues Varianten-Handling
Ein Varianten-Handling konnte bislang mit etwas "Folien-Technik"
realisiert werden. In Fällen, in denen verschiedene Bauteile zu jeweils
mehreren, aber verschiedenen Varianten gehörten, wurde die Anzahl der dafür
nötigen Folien schnell unübersichtlich. Mit einem neuen Varianten-Handling
wird die Definition wie auch der Gebrauch von Varianten deutlich einfacher.
Bauteile können nun zu beliebig vielen Varianten gehören, und diese Zugehörigkeiten
werden als Bauteil-Eigenschaft verwaltet. Für einzelne Bauteile bietet
Bauteile - Information die einfachste Möglichkeit Variantenzugehörigkeiten zu definieren, zu
überprüfen und gegebenenfalls auch zu ändern. Bauteile - Varianten verwalten stellt diese Funktionen für mehrere (auch alle) Bauteile zur Verfügung.
In den Einstellungen - Darstellung können dann Varianten für die Darstellung ausgewählt werden, und in der
Objekt/Folienauswahl der Ausgabe-Einstellungen können Varianten für den zugehörigen Ausgabedatensatz
festgelegt werden.
Das Methodik-Kapitel über Bestückungs-Varianten wurde für das neue Varianten-Handling überarbeitet.
Informations-Funktionalitäten
Die Informations-Funktionalitäten berücksichtigen nun alle die Selektionsliste,
und sie zeigen auch Informationen untergeordneter Objekte an. Ist z.Bsp.
eine Baugruppe selektiert, dann liefert Bauteile-Information Informationen
über alle enthaltenen Bauteile. Leiterbahnen-Information liefert in diesem
Fall Informationen über alle Kupferobjekte in der Baugruppe, also neben
Leiterbahnen auch die Pads der enthaltenen Bauteile. Und Geometrien-Information
listet verwendete Bauteilsymbole, alle Bauteil-Texte sowie weitere eventuell
vorhandenen Geometrien auf.
Übersicht
Diese Auflistung enthält alle Neuerungen der Version 14.0.
-
Bauteil-Familien und Bauteil-Tauschen
- Bauteil-Familien sind nun beliebig definierbare Gruppierungen von Bauteilen. Die Familienzugehörigkeit
wird beim Bauteil-Speichern festgelegt.
- Bauteil-Tauschen ist mit beliebigen Bauteilen möglich. Die alte Beschränkung, dass nur
Bauteile einer Familie gegeneinander tauschbar sind, ist weggefallen. Insbesondere
können auch Bauteile mit unterschiedlicher Pin-Anzahl gegeneinander getauscht
werden.
-
Tauschgatter und Tauschgehäuse
- Tauschgatter sind einem Gatter zugeordnet, Tauschgehäuse einem Gehäuse
(nicht mehr, wie früher, einem Bauteil). Die Tauschobjekte werden beim
Speichern eines Gatters bzw. eines Gehäuses festgelegt.
-
Pins - Anschlusspunkte und Pads
- Pinnnummern sind nun als Text implementiert, d.h. die Pins müssen nicht
mehr fortlaufend durchnummeriert sein. Z.Bsp. ist auch "A1" eine
möglich Pinnummer.
- Pinnummern können auch noch nachträglich (im Layout oder im Schaltplan)
geändert werden (Bauteile-Pin-Information).
- Für die Zuordnung von Anschlusspunkten zu Pads gibt es sog. Pinidentifizierer.
Diese werden im Gattereditor und im Gehäuseeditor festgelegt, und im Bauteileditor
für die Zuordnung von Anschlusspunkten zu Pads benutzt.
- Pinbezeichner werden als Text im Gattereditor definiert, können aber im
Bauteileditor überschrieben werden. Auch eine nachträgliche Änderung in
Schaltplan oder Layout ist möglich (Bauteile-Pin-Information).
- die Pinbedeutung wird als Text im Bauteileditor festgelegt. Sie kann bei
Listenerzeugungen ausgegeben werden.
- neue Informationsfunktionalitäten gestatten Inspektion und Änderung aller
Pin-Texte (Bauteile-Pin-Information).
-
Zeitstempel
- alle Datenbank-Objekte haben einen Zeitstempel erhalten, der immer beim
Abspeichern neu gesetzt wird.
- Suchen nach Zeitkriterien ( geändert nach oder geändert vor oder geändert von...bis) sind möglich (Datenbank - Browser)
-
Datenbank-Historie
- Beim Erzeugen einer Datenbank kann festgelegt werden, ob eine Historie mitgeschrieben wird. In diesem
Falle wird jede Änderung in der Datenbank mit dem Benutzer- und Objektnamen
dokumentiert. Zusätzlich kann ein Kommentar eingegeben werden. Datenbank - Historie gestattet dann die Inspektion dieser Daten.
-
Datenbankauswahl
- alle Datenbankmasken bieten nun die Möglichkeit zwischen verschiedenen
Bauteildatenbanken direkt umzuschalten.
-
Bauteile Importieren und Exportieren
- Der Datenbank - Browser hat einen Export-Button erhalten. Bei Anwahl werden die selektierten Objekte (Mehrfachauswahl
möglich!) in eine SQLite-Datenbank geschrieben.
- Datenbank - Importieren gestattet es SQLite-Datenbanken komplett in die aktuelle Bauteil-Datenbank
zu importieren.
-
Datenbank-Speicher-Funktionen
- Der Suchen-Button in den verschiedenen Dialogmasken zum Speichern von Objekten in
die Bauteil-Datenbank ruft nun den Datenbank - Browser in einem speziellen Modus auf. Dabei können nur die Objekte für das betreffende
Eingabefeld aus dem Browser übernommen werden. Da mit Voransicht ist die
Suche in diesen Fällen sehr viel komfortabler.
-
Datenbank - Methodik
- Die Online-Hilfe wurde um zahlreiche Kapitel zur Erstellung von Datenbank-Objekten
ergänzt
-
Beliebig viele verschiedene Zusatztexte
- Bauteile und Baugruppen können beliebig viele, frei definierbare Zusatztexte
erhalten.
- Die Zusatztexte können im Bauteil-Editor für das Abspeichern in die Datenbank
vordefiniert werden. Der Datenbank - Browser gestattet es Zusatztexte von Bauteilen und Gruppen in der Datenbank zu
editieren. Aber auch spätere Änderungen im Projekt sind möglich (Bauteile - Information, Gruppen - Information). Neue Verwaltungsfunktionen, Datenbank - Zusatztexte verwalten und Bauteile - Zusatztexte verwalten (und Gruppen - Zusatztexte verwalten) gestatten die nachträglich Änderung sowohl der Namen als auch der Inhalte
von Zusatztexten mehrerer Bauteile oder Gruppen in einem Schritt.
- Alle Zusatztexte sind für die Darstellung oder für Ausgaben getrennt auswählbar.
-
Texte mit Bedeutung
- Alle Texte mit Bedeutung, wie z.Bsp. Objekt- oder Typnamen aber auch Pinnummern, sind jetzt durch
vordefinierte Textplatzhalter realisiert (z.Bsp. @objname, @typname oder @pinnumber).
- Texte mit Bedeutung können somit wie normale Texte editiert werden. Sie erhalten ihre Bedeutung
dadurch, dass sie an ein Bauteil oder an eine Gruppe oder an einen Pin
(für Pin-Texte) angefügt werden.
- Auch Ergänzungen und Kombinationen sind damit möglich. Aus dem Text "@objname
ist vom Typ @typname" wird dann z.Bsp. "IC1 ist vom Typ 7400".
-
Kreis - und Kreisbogen-Modi
- Kreisbögen (einzeln oder in einem Polygonzug) können nun auf verschiedene Arten definiert
werden. Neben der bisherigen Reihenfolge von Punkteingaben (Start-Mitte-Ende)
sind die anderen Reihenfolgen von Punkteingaben möglich. Ein Pulldown-Menü
auf der Werkezeugleiste gestattet die Auswahl.
- Auch Vollkreise können nun auf verschiedene Arten definiert werden
-
Variantenhandling
- Jedes Bauteil, bzw. jede Baugruppe kann zu keiner, einer oder mehreren
Varianten gehören. Varianten können sowohl für die Darstellung als auch für die Ausgabe konfiguriert werden. In der Bauteil-Infomaske ist eine Möglichkeit zu finden Bauteil-Varianten für einzelne Bauteile zu ändern. Bauteile - Varianten verwalten bietet die Möglichkeit Varianten für mehrere oder gar alle Bauteile in
einem Schritt zu ändern.
-
Informationsfunktionalitäten
- Alle Informations-Funktionen unterstützen jetzt das Selektionslisten-Handling.
-
Ansichten
- Bei den Funktionen Ansicht - Verschieben und vergößern und Ansicht - Verschieben und verkleinern bleibt nun der Punkt unter der aktuellen Mauszeigerposition erhalten.
Dies ist intuitiver als das alte Handling (Verschieben der Position unter
dem Mauszeiger zur Bildmitte).
- Ansicht - Dynamisch Größe ändern ist nun auch per Mausrad möglich.
-
Sonstiges
- Prozesse - Objekte Designcheck ein/aus ersetzt Leiterbahnen - Mindestabstand ein/aus. Die neue Funktion kann alle Objekte für den Designcheck ein- oder ausschalten.
- Objekte - Objekt entfernen, Objekte - Objekt hinzufügen gestatten es, wenn sinnvoll, Objekte an andere Objekte anzufügen bzw.
wieder abzuhängen (z.Bsp. einen Text oder eine Fläche an ein Bauteil-Gehäuse
anzufügen oder von diesem wieder zu entfernen).
- Flächen - Freien Bereich füllen füllt einen freien Bereich auf einer Platine mit einer Kupferfläche
-
Bereits während der Laufzeit von CADdy EDS 13.0 vorgenommene Ergänzungen
- In der Online-Hilfe wurden die Kapitel über das Erzeugen von Ausgabedaten
komplett überarbeitet und um Methodik-Kapitel ergänzt.
- Verbindungen-Löschen gestattet nun auch das Löschen von einzelnen Bus-Segmenten
- Bauteile - Gatter tauschen und Bauteile - Gehäuse tauschen: der Name des gefangenen Gatters oder Gehäuses wird auch dann noch in
der Statusausgabe angezeigt, während die Auswahlmasken für die Tauschobjekte
offen sind.
- Beim Fangen von Bauteilen werden neben dem Bauteilnamen auch Gatter-, bzw.
Gehäusename in der Statusausgabe angezeigt.
- Beim Erzeugen von Kupferflächen kann der Netztyp ausgewählt werden, den
die erzeugten Kupferflächen erhalten. Damit ist es z.B. einfacher möglich
Kupferflächen mit einem eigenen Mindestabstand zu erzeugen.
- Werden für eine Informations-Funktionalität mehrere (viele) Objekte gefangen,
dann wird nun auch deren Anzahl in der Listbox-Überschrift angezeigt. Dies
ermöglicht es Objekte zu zählen, indem die gewünschten Objektarten, die
sichtbaren Lagen und Folien eingestellt werden und dann im Ausschnitt über
alles gefangen wird, also z.B. "alle Lötstopflächen auf Lage 2"
u.ä.
- Beim Fräsdaten-Erzeugen können auch Punkte gefräst werden. Diese werden wie eine Bohrung behandelt.
- Die Auflistung der Gerätetreiber in den Ausgabedaten wurde neu sortiert.
Häufiger verwendete Schnittstellen (z.B. Gerber) wurden nach vorn verlagert,
weniger wichtige (z.B. Metafileausgaben) nach hinten.
- Die Onlinehilfe wurde um zahlreiche Kapitel zur Ausgabedaten - Methodik ergänzt.
- IDF-Ausgabe
- Platinen-Einstellungen wurden um die Höhe (gleich Stärke) ergänzt. Diese
wird in der IDF-Ausgabe berücksichtigt.
- Gehäusen kann nun auch über die Bauteil-Informationsmaske eine Höhe zugewiesen
werden.
- Geometrien - Umhüllender Polygonzug: Wurde eine Leiterbahn für die Funktion gefangen, und dann der Abstand
zum umhüllenden Polygonzug im Eingabefeld eingegeben, so wurde dieser von
der Referenzlinie (oder Skelettlinie) der Leiterbahn aus gerechnet. Das
war nicht sehr intuitiv, denn in aller Regel wird der Abstand zum Rand
der Leiterbahn gewünscht.
Jetzt wird, wie bei anderen Objekten auch, der Abstand zum Rand der Leiterbahn
gerechnet. Das bisher notwendige Addieren der halben Leiterbahnbreite entfällt
somit.
- Netze-Erzeugen: Wenn der zuerst gefangen Anschlusspunkt bzw. das Pad zu einem Netz gehört,
dann wird der Netztyp dieses Objekt voreingestellt.
- Beim Fangen werden die gefangenen Objekte gehighlightet, auch wenn sie
in der Darstellung ausgeschaltet sind. Dies ist z.Bsp. der Fall, wenn ein
Geometrie-Objekt gefangen wird, das zu einem Bauteil gehört, Bauteile aber
in der Darstellung ausgeschaltet sind. Wird nun das Bauteil über das Geometrie-Objekt
gefangen, so leuchtet auch das komplette Bauteil auf.
- Bei Gerber-RS274X-Ausgaben werden auch obrounds (Rechtecke mit angehängten Halbkreisen) geblitzt.
- In Stücklistenausgaben im HTML-Format können in der Kopfzeile bis zu 32000
Zeichen eingegeben werden - reichlich Platz für HTML-Kommandos. Werden
diese über die Zwischenablage eingefügt, dann werden Zeilenumbrüche durch
Leerzeichen ersetzt.
- Beim Löschen vom Bauteilen steuert der Schalter Angeschlossene Verbindungen und Kupfer löschen in den Einstellungen - Platzierung ob dabei angeschlossene Leiterbahnen/Verbindungen ebenfalls gelöscht werden
sollen.
- Die Funktionen des Menüs Geometrien ändern berücksichtigen nun die Selektionsliste. Ist eine solche vorhanden wird
die Funktion mit den darin enthaltenen Objekten ausgeführt.
- Beim Importieren von Gerberdaten werden nun auch die Aperture Macro Primitives "Line Lower Left",
"Moire" und "Thermal" berücksichtigt.
- Die Erzeugung von Isolierlackflächen, wie auch deren Überprüfung kann per
Stop-Button abgebrochen werden.
- Beim Fangen von Objekten wird bei gleichem Abstand und unterschiedlichen Lagen ein
eventuell auf der aktuellen Lage befindliches Objekte bevorzugt gefangen.
- Die Funktion zur Definition von Textplatzhaltern ist nun auch im Fenster Ausgabedaten aufrufbar, und dort im Menü Einstellungen zu finden. Textplatzhalter für Ausgabepfade lassen sich so bequemer definieren.
- Gestrichelte oder punktierte (Strich-punktierte) Linien werden nun so gezeichnet,
dass der erste Strich (oder Punkt) auch am letzten Punkt der Linie endet.
Die Enden von Linien und Kreisbögen oder auch die Eckpunkte von Poylgonzügen
sind so besser sichtbar. Dazu wird das Strichpunkt-Muster entsprechend
skaliert.
Für Vollkreise wird das Muster so skaliert, dass es ganzzahlig auf den
Kreis passt.
EDVin 14.0 hat die notwendig Anpassungen erhalten.
Datenbank
Da einerseits die Anforderungen an die Performance einer Bauteildatenbank
relativ gering sind (wie oft wird ein Bauteil aufgerufen und wie oft wird
eines geschrieben), und da andererseits einfache Installation und einfache
Administration von hohem Wert sind, fiel unsere Wahl für die ausgelieferte
Standard-DB auf SQLite. Die Vorteile dieser Datenbank:
- kein eigener Server (Betriebssystem-Service) nötig
- nur eine Datenbankdatei, die einfach gesichert und einfach verschoben oder
auf einen anderen Rechner übertragen werden kann
- eigene SQL-Abfragen sind möglich (mit externen Tools)
Die Multiuser-Fähigkeit wurde durch einen selbstentwickelten Locking-Mechanismus
sichergestellt.
siehe auch: Datenbank - Methodik - Datenbank-Formate
Schlussbemerkung
Die Einführung einer neuen Datenbank ermöglichte zahlreiche Ergänzungen
in vielen Bereichen. Wir wünschen eine interessante Zeit beim "Auskundschaften"
der Neuerungen !