vorhergehende Seite nächste Seite Inhaltsangabe

28. Modelle mit dem Modell-Editor verändern

Aufbau und Syntax eines Modells
Die Beispielschaltung
Die Registerkarte "Libraries"
Die Begriffe  "Implementation" und "Value"
Ändern eines Modell-Parameters mit dem Modell-Editor
Kennlinien mit dem Modell-Editor verändern

Dieser Abschnitt soll Ihnen den ersten Kontakt im praktischen Umgang mit Modellen und dem Modell-Editor ermöglichen. Sie erfahren neben dem prinzipiellen Aufbau von Halbleitermodellen, wie Sie PSpice-Modelle am Beispiel einer Zener-Diode verändern können. Dazu stehen Ihnen zwei Möglichkeiten offen. Erstens können Sie die einzelnen Modell-Parameter direkt in einer ASCII-Datei editieren (z.B. mit Notepad oder dem Modell-Editor). Zweitens können Sie Ihre gewünschten Kennlinien in den Modell-Editor eintragen, welcher dann auf dieser Grundlage im richtigen Verhältnis die entsprechenden Modell-Parameter neu errechnet.

Aufbau und Syntax eines Modells

Nachfolgend finden Sie exemplarisch das Modell der Zener-Diode 1N750 (D1N750) abgebildet. Modelle bestehen immer aus ganz gewöhnlichen ASCII-Texten, welche in einer Datei mit der Endung LIB untergebracht sind. In einer solchen LIB-Datei können ein einziges Modell oder mehrere Modelle hintereinander aufgelistet sein. In der Lite-Version finden Sie z.B. das Modell der besagten Diode in der "eval.lib". Wichtig ist nun im ersten Lernschritt, dass Sie erkennen, wo die Beschreibung der einzelnen Modelle beginnen und enden. Zur besseren Verständlichkeit sind deshalb die einzelnen Abschnitte farbig dargestellt. Blau sind die Kommentarzeilen, welche immer mit einem Asterix-Symbol (Sternchen, *) eingeleitet werden und keinen Einfluss auf das Modell haben, rot dargestellt ist das eigentliche Modell:

* "A" suffix zeners have the same parameters (e.g., 1N750A has
* the same parameters as 1N750)

* Den Formelsatz des Dioden-Modells finden Sie
* in der pspcref.pdf auf den Seiten 129 bis 133

.model D1N750 D(Is=880.5E-18 Rs=.25 Ikf=0 N=1 Xti=3
+ Eg=1.11 Cjo=175p M=.5516 Vj=.75 Fc=.5 Isr=1.859n
+ Nr=2 Bv=4.7 Ibv=20.245m Nbv=1.6989
+ Ibvl=1.9556m Nbvl=14.976 Tbv1=-21.277u)

* 89-9-18 gjg
* Vz = 4.7 @ 20mA, Zz = 300 @ 1mA,
* Zz = 12.5 @ 5mA, Zz =2.6 @ 20mA

Der Beginn des eigentlichen Modells ist immer durch den Ausdruck ".model" gekennzeichnet (Anmerkung: Unternetzwerke fangen mit ".subckt" an). Achten Sie auf den Punkt ganz am Anfang der Zeile.

Danach folgt nach einem Leerzeichen die Bezeichnung (Implementation) des Modells, welche in unserem Fall "D1N750" lautet.

Nach einem weiteren Leerzeichen ist der Modell-Typ beschrieben. In unserem Fall steht ein "D" für Diode ("npn" würde z.B. für einen NPN-Transistor stehen).

Danach folgen in Klammern die einzelnen Modell-Parameter, mit denen das Dioden-Modell beschrieben ist. Der Parameter "Bv" steht z.B. für die Zener-Spannung in Volt. In unserem Beispiel beträgt die Zener-Spannung demnach 4,7 Volt. Für die meisten anderen typischen Kennwerte einer Diode müssen allerdings mehrere Parameter gleichzeitig verändert werden. Diese Aufgabe kann der Modell-Editor übernehmen.

Das Plus-Zeichen "+" im Modell hat folgende Bedeutung: Eigentlich sollten alle Parameter in einer Zeile stehen. Dies wäre allerdings unübersichtlich. Zeilenumbrüche müssen deshalb mit einem Plus-Zeichen eingeleitet werden. Im Gegensatz zu Unternetzwerken gibt es übrigens keine Anweisung für das Modell-Ende.

Mit diesem Modellaufbau können übrigens alle möglichen Dioden (z.B. Kapazitätsdiode, LED, Si-Diode, Ge-Diode, Z-Diode u.s.w.) beschrieben werden. Die allgemeine Beschreibung der Modelle finden Sie im PSpice Reference Guide (pspcref.pdf). Das Dioden-Modell ist auf den Seiten 129 bis 133 beschrieben. Weitere Erklärungen zum Aufbau von Modellen finden Sie z.B. im Internet. Eine Link- und Literaturliste hat der Autor unter http://www.qsl.net/dh7uaf/simulation/ zusammengestellt.

Die Beispielschaltung

Die Anwendung des Modell-Editors wollen wir am Beispiel der Z-Diode D1N750 vorführen. Eine Veränderung des Modells soll die Zener-Spannung verändern. Um diesen Effekt mit einer Simulation in Probe nachprüfen zu können, speist eine Konstantstromquelle die Z-Diode. Der Messpunkt für die Zener-Spannung liegt am Knoten A:


Die Versuchsschaltung: Eine Z-Diode erhält einen Konstantstrom von 1 mA von der IDC-Quelle I1. Am Knoten A fällt die Zener-Spannung ab, welche wir durch einen Eingriff im Modell verändern sollen. Die Diode befindet sich in der eval.lib oder diode.lib) (das vorbereitete Projekt befindet sich unter diodebv oder diodebv.zip).

Im Simulationsprofil ist ein DC-Sweep für die Konstantstromquelle vorgesehen:


Ein DC-Sweep verändert die Strom-Quelle i1 linear von -0.5 mA bis 20 mA mit einer Schrittweite von 0.01 mA.

Das Ergebnis der Simulation (z.B. mit F11 ausführen) zeigt dann, dass bei einem Strom von 20 mA eine Zener-Spannung von 4,7 Volt auftritt. Dies entspricht genau dem Wert des Modell-Parameters BV:


Die Spannung an der Diode in Abhängigkeit vom Strom. Bei 20 mA fallen 4,7 Volt ab. Dies entspricht genau dem Modell-Parameter BV.

Die Registerkarte "Libraries"

Bevor Sie das Modell verändern, sollten Sie im Simulationsprofil der hier vorgestellten Schaltung die Einträge in der Registerkarte "Libraries" betrachten. Diese finden Sie im Fenster "Simulation Settings", welches Sie bereits kennen und in dem Sie Ihr Simulationsprofil eingetragen haben:


In der Registerkarte "Libraries" finden Sie im Normalfall unter "Library files" nur den Eintrag "nom.lib*"

In dieser Registerkarte müssen solche Modell-Bibliotheken (LIB-Dateien) eingetragen sein, welche auf Grund des Stromlaufplans für die Simulation benötigt werden. Die Modell-Bibliothek "nom.lib" erscheint immer automatisch und verweist auf alle Bibliotheken, welche zum Lieferumfang Ihrer PSpice-Version gehört. Deshalb haben wir uns bisher im Laufe des Kurses nicht um diese Registerkarte gekümmert. Das Sternchen (*) direkt hinter "nom.lib" sagt aus, dass es sich hier um eine globale Bibliothek handelt. Solche Bibliotheken werden automatisch immer hinzugefügt und Sie müssen diese deshalb nicht bei jedem neuen Projekt eigens eintragen. Bibliotheken fügen Sie als globale hinzu, wenn Sie den Knopf mit der Aufschrift "Add as Global" verwenden. Im Gegensatz dazu verwenden Sie den Knopf "Add to Design", wenn Sie nur für dieses bestimmte PSpice-Projekt eine Bibliothek eintragen möchten. Sollten Sie im Fenster "Library files" LIB-Dateien entfernen, so werden diese Dateien selbstverständlich nicht tatsächlich auf der Festplatte gelöscht. Sie haben dadurch nur die Verknüpfungs-Anweisung beseitigt.

Die Begriffe  "Implementation" und "Value"

Markieren Sie im Schaltplan das Symbol der Zener-Diode per Doppelklick, damit sich dann sogleich das Eigenschaften-Fenster (Property-Editor) öffnet:


In der Spalte "Implementation" finden Sie den Eintrag "D1N750", mit dem das Capture-Symbol sein gleichnamiges PSpice-Modell findet. Anmerkung: "Filter by:" steht auf <Current properties>.

Implementation:

In der Spalte "Implementation" des Eigenschafts-Fensters finden Sie den Eintrag "D1N750". Dieser Eintrag muss identisch mit dem Namen des PSpice-Modells sein, welcher dort in der ersten Zeile hinter ".model" auftaucht (z.B. .model D1N750 D). Das Symbol sucht nun im aktuellen Pfad die LIB-Dateien durch, in der sich ein Modell mit dem Namen (Implementation) D1N750 befindet. Das Symbol und die Angaben des Property-Editors finden sich  zum Teil in den Symbol-Bibliotheken (OLB-Dateien) oder im Schaltbild selbst (DSN-Datei). In der Spalte "Source Library" des Eigenschaften-Fensters finden Sie die Pfad-Angabe der aktuellen OLB-Datei.

In der Lite-Version befinden sich die OLB- und LIB-Dateien im Pfad /orcadlite/capture/library/pspice/. Im Gegensatz dazu befinden sich im Pfad /orcadlite/capture/library/ nur OLB-Dateien, deren Symbole keine PSpice-Modelle zugeordnet sind. Die dortigen Symbole können Sie also nur zum Zeichnen verwenden. Simulieren geht damit nicht.

Sollte das Symbol das Modell im aktuellen Pfad nicht gefunden haben, sucht es diejenigen Pfade durch, welche in der Registerkarte "Libraries" unter "Library Path" eingetragen sind. Mehrere Pfadangaben sind durch Semikoli (;) zu trennen.

Value:

Die "Implementation" dürfen sie niemals mit "Value" verwechseln, obwohl diese meistens identisch erscheinen. Im Eigenschaften-Fenster finden Sie eine Spalte "Value":


In der Spalte "Value" steht ebenfalls "D1N750". Dieser Eintrag ist nicht mit der Implementation zu verwechseln.

Unter Value ist lediglich das eingetragen, was Sie im Schaltbild als Bauteilebezeichnung erkennen. Diese Bezeichnung können Sie ändern, indem Sie im Schaltbild doppelt auf diese klicken. Es öffnet sich ein kleines Fenster. Unter Value könnten Sie nun eine andere Bauteilebezeichnung eintragen:


Absolute Vorsicht! So ändern Sie nur die im Schaltbild sichtbare Bezeichnung (Value) des Bauteils, welche nichts mit der Implementation zu tun hat (siehe auch im Abschnitt DC-Sweep). Ein Bauteil oder Modell tauschen Sie so nicht aus.

Wollten Sie also auf diesem Wege und im falschen Glauben in Ihrem Schaltbild eine Diode austauschen, hätte dies allerdings keinen Einfluss auf die Netzliste und könnte damit zu fatalen Fehldeutungen führen!

Zur Sicherheit sollten Sie die Netzliste mit dem Stromlaufplan vergleichen.


Ändern eines Modell-Parameters mit dem Modell-Editor

Nach diesen Vorüberlegungen können Sie nun besser verstehen, was passiert, wenn Sie mit dem Modell-Editor arbeiten. Diesen Editor rufen Sie auf, indem Sie das betreffende Bauteil per linken Mausklick markieren und mit der rechten Maustaste "Edit PSpice Model" anwählen:


Um den Modell-Editor aufzurufen, markieren Sie mit einem linken Mausklick das Bauteil, dann mit einem rechten Mausklick das kleine Auswahlfenster öffnen. Hier wählen Sie mit einem linken Mausklick "Edit PSpice Model" aus.

Danach erscheint nach einem eventuellen Hinweisfenster der Modell-Editor, welcher ein eigenständiges Programm darstellt:


Der Modell-Editor: Im linken Fenster ist die Liste der in dieser Bibliothek (hier BV1.lib) enthaltenen Modelle zu sehen, im rechten Fenster das eigentliche Modell.

Im oberen, blauen Balken des Fensters können Sie ablesen, dass sich der Modell-Editor auf die PSpice-Bibliothek "BV1.lib" bezieht. Unter "Models List" (linkes Fenster) sind alle Modelle aufgelistet und auswählbar, die in dieser Bibliothek enthalten sind. Bis jetzt ist es nur das Modell der D1N750, welches noch nicht abgespeichert ist, was Sie an dem kleinen Sternchen erkennen, welches sich direkt hinter dem Modell-Namen D1N750 befindet. Im rechten Fenster befindet sich das eigentliche Modell in Textform, welches Sie nun verändern können:


So können Sie das Modell  und die Implementation im Modell-Editor verändern.

Vergeben Sie dem Modell-Parameter BV, welcher für die Zener-Spannung verantwortlich, den Wert 8.5. Ändern Sie, wenn Sie wollen, die Implementation von "D1N750" auf "D1N750neu". Speichern Sie dann ab, indem Sie auf den Knopf mit dem Diskettensymbol  in der Werkzeugleiste klicken. In diesem Moment ändert sich auch der Eintrag in der "Models List" und das Sternchen verschwindet (siehe dazu das blau eingekreiste Feld im oberen Bild).

Wenn Sie nun eine erneute Simulation (mit F11) ausführen, können Sie in Probe erkennen, dass die Zener-Spannung jetzt 8,5 Volt beträgt:


Die erneute Simulation zeigt, dass die Zener-Spannung bei einem Strom von 20 mA nun bei 8,5 Volt liegt.

Wenn Sie sich die Dateien Ihres Projekts mit dem Explorer betrachten, fällt auf, dass eine neue LIB-Datei (PSpice-Bibliothek) hinzugekommen ist. Sie trägt den gleichen Namen, den auch die Projekt-Datei (OPJ-Datei) besitzt. In dieser neuen LIB-Datei ist das neue Modell der Zener-Diode enthalten. Sie brauchen also nicht die Befürchtung haben, dass jene Modelle in der eval.lib oder diode.lib, aus der Sie sich die Diode ursprünglich geholt haben, verändert werden. Dies ist selbst dann nicht der Fall, wenn Sie die Implementation nicht verändert hätten. Da diese LIB-Datei eine reine Text-Datei ist, könnten Sie diese auch mit einem ASCII-Editor bearbeiten.

     
Im Ordner Ihres Projekts (hier von der Version 9.2) entdecken Sie eine LIB-Datei, welche das veränderte Modell der Diode enthält (das vorbereitete Projekt  dazu finden Sie unter diodebv1 oder diodebv1.zip).

Werfen Sie nun einen erneuten Blick in die Registerkarte "Libraries" Ihres Simulationsprofils:


In der Registerkarte "Libraries" ist nun zusätzlich die die "bv.lib" bzw. die "bv1.lib" eingetragen (Version 9.2).

Bitte beachten Sie das etwas andere Erscheinungsbild in der Version 10.x:


In der Version 10.x gibt es keine Registerkarte "Libraries" mehr. Klicken Sie auf die Registerkarte "Configuration Files" und dann unter "Category" auf  "Library". Globale Bibliotheken - also Bibliotheken, die für alle Projekte eingebunden sind - sind durch eine Weltkugel und nicht mehr durch ein "*" gekennzeichnet.

Je nach der Bezeichnung Ihrer OPJ-Datei müssen Sie dort jetzt automatisch eine "bv.lib" bzw. "bv1.lib" vorfinden. Der Eintrag erfolgte in diesem Falle automatisch. Die obligatorische globale "nom.lib" ist weiterhin vorhanden.

Außerdem finden Sie nun im Eigenschaften-Fenster (Property Editor) der Diode in der Spalte "Implementation" den Eintrag "D1N750neu":


Im "Property Editor" der Z-Diode hat sich in der Spalte "Implementation" der Eintrag automatisch angepasst, da wir die Implementation des Modells verändert hatten.

Den Eintrag hat das Programm deshalb automatisch verändert, weil Sie das Modell mit dem Modell-Editor verändert hatten und den Modell-Editor direkt aus dem Schaltbild aufgerufen hatten.

Wenn Sie externe Modelle verwenden, die Sie z.B. aus dem Internet erhalten haben, müssen Sie dies Bibliotheken, in den sich diese Modelle befinden, unter "Libraries" eintragen. Das nachfolgende Video zeigt Ihnen, wie Sie solche Einträge vornehmen und verändern:

So binden Sie externe Modell-Bibliotheken ein und entfernen Sie sie wieder (einbinden-loeschen.avi).

Haben Sie mehrere Bibliotheken eingetragen und befinden sich in jedem dieser Bibliotheken Modelle gleichen Namens, entscheidet die Reihenfolge darüber, auf welches Modell das Programm zugreift. Zur Auswahl kommt das Modell in jener Bibliothek, die ganz oben steht.


Selbstverständlich können auch mehrere LIB-Bibliotheken eingebunden werden.

Das nachfolgende Video demonstriert die Vorgensweise.

So verändern Sie die Reihenfolge in der Liste der eingebundenen Modell-Bibliotheken (auswahl.avi).

Das Verändern der Reihenfolge können Sie an dem vorbereiteten Beispiel mehrere-lib bzw. mehrere-lib.zip selbst ausprobieren.

Kennlinien mit dem Modell-Editor verändern

Bisher haben Sie gelernt, wie Sie einzelne Modell-Parameter durch Editieren verändern können. Es ist quasi ein Glücksfall, dass sich die Zener-Spannung durch Ändern eines einzigen Parameters BV beeinflussen lässt. Die meisten anderen Bauteile-Eigenschaften lassen sich nur verändern, wenn mehrere Modell-Parameter gleichzeitig nach einem mathematischen Zusammenhang verändert werden. Der Modell-Editor bietet nun die Möglichkeit, dass Sie bestimmte Bauteile-Kennlinien nach Ihren Vorstellungen verändern können. Dazu tragen Sie die Eckdaten der Kennlinien in eine Tabelle ein. Dazu müssen Sie zuerst Ihren Modell-Editor von der Text-Ansicht (Model Text) auf die Normal-Ansicht (Normal) umstellen:


Über die Menüleiste des Modell-Editors stellen Sie über View - Normal den Editor auf die Normal-Ansicht, damit Sie die Kennlinien des Modells dargestellt erhalten.

Es präsentiert sich Ihnen dann die Normal-Ansicht des Modell-Editors:


Mit der Normal-Ansicht des Modell-Editors können Sie die Kennlinien beeinflussen.

Diese Ansicht setzt sich aus den folgenden Fenstern zusammen:

Die Modell-Liste ("Models List") links oben: Hier sind die einzelne Modelle der Bibliothek aufgelistet.

Das Tabellenfeld in der Mitte oben: Hier können Sie die x-y-Werte für eine neue Kennlinie eingeben. In der aktuellen Ansicht ist es die Schwellenspannung (x) und der Strom in Durchlassrichtung (y).

Das Feld für die Kennlinie rechts oben: Hier ist die Kennlinie abgebildet, welche durch Ihre Tabellen-Einträge verändert werden soll.

Die Registerkarten unterhalb der Tabelle und der Kennlinie: Hier können Sie zwischen verschiedenen Kennlinien und anderen Zusammenhängen umschalten.

Das untere Feld "Parameters": Hier können Sie die Modell-Parameter ablesen oder andere Werte eintragen. Die aktuellen Werte ("Value") dürfen sich durch Ihre Kennlinien-Veränderung zwischen "Minimum" und "Maximum" bewegen. Unter "Active" sind jene Modell-Parameter angekreuzt, welche von der aktuellen Kennlinien-Veränderung betroffen sind. Unter "Fixed" könnten Sie Parameter von der Veränderung ausschließen. Unter "Default" sind die Werte eines idealen Bauteils aufgelistet, welche Sie auch als Breaukout-Device in der breakout.olb vorfinden.

Tragen Sie nun Wertepaare in die Tabelle ein. Die neuen Koordinaten sind sofort in der daneben liegenden Kennlinie als kleine Rechtecke sichtbar, wenn in der Werkzeugleiste der Knopf ganz rechts (Auto Refresh) eingedrückt ist:


Achten Sie beim Eintragen von Wertepaaren darauf, dass der Knopf ganz rechts in der Werkzeugleiste (Auto Refresh) eingedrückt ist, damit die neuen Koordinaten im Kennlinien-Diagramm sichtbar werden.

Klicken Sie nun auf den Knopf "Extract" der Werkzeugleiste, damit der Modell-Editor eine neue Kennlinie ermitteln kann:


Die entscheidenden Knöpfe der Werkzeugleiste. Achten Sie vor dem Eintragen der Tabelle darauf, dass der Knopf ganz rechts ("Auto Refresh") eingedrückt ist. Nachdem Sie Ihre Tabelle ausgefüllt haben, klicken Sie auf den Knopf "Extract". Zum Schluss das Abspeichern nicht vergessen ("Save").

Auf Grund Ihrer Tabelle ermittelt der Modell-Editor nun eine neue Kennlinie:

Die neue Kurve stark vergrößert und nach einer Farbumkehr dargestellt: Zu erkennen ist, dass das Programm nicht alle Koordinaten der Tabelle exakt treffen konnte.

Das Programm versucht nun näherungsweise einen Kurvenverlauf zu finden, bei dem Ihre Koordinaten aus der Tabelle möglichst nahe der neuen Kurve liegen. Dazu werden nur die Modell-Parameter verändert, welche in der Spalte "Active" abgehakt sind. Sollte Ihre Tabelle sehr ungünstige Werte aufweisen, kann das Programm keine Lösung finden.

Gehen Sie nun wieder auf die Text-Ansicht des Modell-Editors (Menüleiste - View - Model Text), um sich den ASCII-Text des neuen Modells anschauen zu können. Falls Sie nun die Implementation ändern möchten, müssen Sie aufpassen:


Das veränderte Modell in der Text-Ansicht. Falls Sie nun die Implementation ändern möchten, müssen Sie die doppelt umrandete Kommentarzeile löschen.

Wenn Sie in der Zeile ".MODEL D1N750 D" die Implementation (hier D1N750) geändert haben möchten, müssen Sie vor dem Abspeichern noch die Kommentarzeile "*DEVICE=D1N750, D" ersatzlos löschen. Andernfalls nimmt der Modell-Editor die Änderung nicht an.

Wenn Sie die Implementation erfolgreich umgetauft haben (z.B. in D1N750neu), können Sie dies in der Netzliste nachprüfen. Gehen Sie dazu in Capture auf das Projektfenster und öffnen Sie dort unter "Outputs" die Netzliste:


Öffnen Sie über das Projektfenster unter Outputs die Netzliste.

In der Verbindungs-Netzliste (NET-Datei) können Sie ablesen, dass die Implementation der Diode (D1N750neu) verändert wurde und nicht mit der im Schaltbild sichtbaren Bezeichnung "Value" (D1N750) übereinstimmen muss.

Die Normal-Ansicht des Modell-Editors ist in der Lite- und Student-Version leider nur auf das Dioden-Modell beschränkt. In einer Vollversion kann der Modell-Editor auch andere Halbleiter, magnetische Kerne u.s.w. auf diese komfortable Weise bearbeiten. In der Vollversion können Sie in der Menüleiste des Modell-Editors über Model - New andere Modelle bearbeiten. Im Prinzip können Sie aber jedes Modell mit einem einfachen Text-Editor (z.B. Notepad) durch Editieren verändern.

Da der Modell-Editor ein eigenständiges Programm ist, können ihn auch direkt über die Startleiste aufrufen:


So rufen Sie den Modell-Editor über die Startleiste auf.

Über File - Open in der Menüleiste des Modell-Editors können Sie dann die Modelle in den LIB-Dateien betrachten und gegebenenfalls verändern.

Weiter zum nächsten Abschnitt.