Frage zu LTspice

G

Guenter Koenig

Guest
Hallo,

ich nutze LTspice und möchte einige OP`s hinzufügen. Spicedaten sind
vorhanden. Ist das möglich und wenn ja, wie?

Gruß,
Günter König
 
Guenter Koenig schrieb:
ich nutze LTspice und möchte einige OP`s hinzufügen. Spicedaten sind
vorhanden. Ist das möglich und wenn ja, wie?
Schau mal nach Mike Engelhardts Beiträgen hier in der NG.


Gruß Dieter
 
"Guenter Koenig" <koenig-adendorf#guenter@t-online.de> schrieb im
Newsbeitrag news:bde8ba$3j4$03$1@news.t-online.com...
Hallo,

ich nutze LTspice und möchte einige OP`s hinzufügen. Spicedaten sind
vorhanden. Ist das möglich und wenn ja, wie?
Hallo Günter,
ich habe hier mal einen Mix aus meinen früheren Postings zusammengestellt.
Die Vorgehensweise gilt natürlich für alle Subcircuits.
Subcircuits sind alle Bauteile die in ihrer Definition mit .SUBCKT beginnen.

Gruß
Helmut


1. Ein Beispiel für einen TI-Opamp TL072.
-----------------------------------------
Zunächst legt man am besten zwei eigene Unterverzeichnisse an.
Das dient einzig und allein der Übersichtlichkeit.
"..." ist das Installationsverzeichnis, z.B. "C:\Programme\".

"...Ltc\SWCADIII\lib\sym\Private"
"...Ltc\SWCADIII\lib\lib\Private"

Die SPICE-Text-Dateien mit den Modellen kopiert man dann ins
Verzeichnis "...Ltc\SWCADIII\lib\lib\Private", z.B. "Ti.lib"
wird "...Ltc\SWCADIII\lib\lib\Private\Ti.lib".
In die "Ti.lib"-Datei kann man beliebig viele SPICE Modelle
hineinkopieren.

Die noch zu generierenden Symbole legt man entsprechend unter
"...Ltc\SWCADIII\lib\sym\Private" ab, z.B "TL072.asy".

Wenn man in Switchercad jetzt eines dieser neuen Bauteile
addieren will, dann findet man das im Menu im Verzeichnis
"Private" das parallel zum Verzeichnis "Opamp" liegt.
Dort gibt es dann z.B. den TL072. Nur noch anklicken und schon
ist er auf dem Schaltplan.


Generierung neuer Symbole:
--------------------------
Als erstes kopiert man am besten ein ähnliches Symbol nach
"sym\private". Z.B. "LT1013.asy" nach "...\sym\private\TL072.asy".
Das spart unnötige Arbeit. Dann die Datei TL072.asy mit LTSPICE
öffnen.

In der Kommandozeile "Edit -> Attributes -> Edit Attributes"
klicken. Die Box mit den Attributen wird angezeigt.

Den Wert von Value und Value2 von "LT1013" auf "TL072" ändern.
Diese Werte müssen mit dem Namen des Subcircuits übereinstimmen.

Wert von "SpiceModel" von "LTC.lib" auf "Private\Ti.lib" ändern.
Das ist der relative Suchpfad für den Library-File. Wäre dort
nur "Ti.lib" eingetragen, dann würde LTSPICE "nur" im Verzeichnis
"...\lib\sub" und im Arbeitsverzeichnis, wo die komplette
Schaltung(*.asc) liegt, nach dem Library-File "Ti.lib" suchen.
Der kleine Nachteil mit dem Unterverzeichnis "Private" für
den Library-File ist, daß man bei der Weitergabe von Symbolen
darauf hinweisen muß, daß die Library-Files im Unterverzeichnis
"Private" gespeichert werden müssen oder der Pfad im Symbol
angepasst werden muß.

Natürlich kann man auch das graphische Symbol selbst in dem Editor
verändern.

Ebenso kann man auch Pin-Namen ändern, löschen oder hinzufügen.
Dazu Cursor auf Pin setzen und dann recht Maustaste.
In der Box den neuen Namen und die "Netlist Order" eintragen.

Überprüfen ob die "Netlist Order"(Reihenfolge 1,2,3..) der Pins im
Symbol mit der Reihenfolge der Netze im Subcircuit-Modell übereinstimmt.
Dazu Cursor auf Pin setzen und dann recht Maustaste.
Beispiel: In+,1 1. Netz in .SUBCKT 'Non iverting' ...
Dieser Pin "In+" hat im Symbol die "Netlist Order" 1. Damit muß er
mit dem ersten Pin/Netz im Model .SUBCKT 1 2 3 4 5 übereinstimmen.
Der erste Pin im Model TL072 ist der "NON-INVERTING INPUT". Dieser
entspricht "In+" vom Symbol und ist damit richtig.
In unserem Beispiel stimmt die "Netlist Order" aller Pins bereits mit
der Netzreihenfolge im Modell(Library) vom TL072 überein.
Also braucht man da nichts ändern.
Achtung, die Pin-Namen im Symbol haben für LTSPICE keine Bedeutung.
Es kommt einzig auf deren "Netlist Order"-Wert an.
Zum Glück haben fast alle SPICE-Opamps verschiedener Hersteller die
gleiche Pin/Netz-Reihenfolge in ihren Modellen. Damit hat man dann
schon mal keine Arbeit mit Umnumerierung beim Generieren eines Symbols.

Symbolfile "TL072.asy":
"Label" In+ In- V+ V- Out
"Netlist Order" 1 2 3 4 5

Auszug aus Subcircuit definition(Ti.lib):
* TL072 OPERATIONAL AMPLIFIER "MACROMODEL" SUBCIRCUIT
* CREATED USING PARTS RELEASE 4.01 ON 06/16/89 AT 13:08
* (REV N/A) SUPPLY VOLTAGE: +/-15V
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
..SUBCKT TL072 1 2 3 4 5


Dann "Save" klicken und damit das neue Symbol speichern.

LTSPICE beenden!

Das neue Symbol kann erst nach einem Neustart von LTSPICE benutzt werden.

PS: Es gibt auch noch die Möglichkeit des "One fits all"-Symbols
wenn man viele gleichartige Symbole hat. Die Idee dahinter ist, daß
man erst im Schaltplan die Opamp-Type einträgt. Aber das laß ich jetzt
lieber erstmal weg.



SWCADIII\lib\sym\private\TL072.asy
--------------------------------------------------

Version 3
SymbolType CELL
LINE Normal -8 8 8 16
LINE Normal -8 24 8 16
LINE Normal -8 8 -8 24
LINE Normal -7 12 -5 12
LINE Normal -7 20 -5 20
LINE Normal -6 21 -6 19
LINE Normal 0 8 0 12
LINE Normal 0 24 0 20
LINE Normal 1 11 3 11
LINE Normal 2 10 2 12
LINE Normal 1 21 3 21
WINDOW 0 4 8 Left 0
WINDOW 3 4 24 Left 0
SYMATTR Prefix X
SYMATTR SpiceModel Private\Ti.lib
SYMATTR Value TL072
SYMATTR Value2 TL072
SYMATTR Description Fast Fet Operational Amplifier
PIN -8 20 NONE 0
PINATTR PinName In+
PINATTR SpiceOrder 1
PIN -8 12 NONE 0
PINATTR PinName In-
PINATTR SpiceOrder 2
PIN 0 8 NONE 0
PINATTR PinName V+
PINATTR SpiceOrder 3
PIN 0 24 NONE 0
PINATTR PinName V-
PINATTR SpiceOrder 4
PIN 8 16 NONE 0
PINATTR PinName OUT
PINATTR SpiceOrder 5



Datei SWCADIII\lib\sub\private\Ti.lib
---------------------------------------------------

* TL072 OPERATIONAL AMPLIFIER "MACROMODEL" SUBCIRCUIT
* CREATED USING PARTS RELEASE 4.01 ON 06/16/89 AT 13:08
* (REV N/A) SUPPLY VOLTAGE: +/-15V
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
..SUBCKT TL072 1 2 3 4 5
*
C1 11 12 3.498E-12
C2 6 7 15.00E-12
DC 5 53 DX
DE 54 5 DX
DLP 90 91 DX
DLN 92 90 DX
DP 4 3 DX
EGND 99 0 POLY(2) (3,0) (4,0) 0 .5 .5
FB 7 99 POLY(5) VB VC VE VLP VLN 0 4.715E6 -5E6 5E6 5E6 -5E6
GA 6 0 11 12 282.8E-6
GCM 0 6 10 99 8.942E-9
ISS 3 10 DC 195.0E-6
HLIM 90 0 VLIM 1K
J1 11 2 10 JX
J2 12 1 10 JX
R2 6 9 100.0E3
RD1 4 11 3.536E3
RD2 4 12 3.536E3
RO1 8 5 150
RO2 7 99 150
RP 3 4 2.143E3
RSS 10 99 1.026E6
VB 9 0 DC 0
VC 3 53 DC 2.200
VE 54 4 DC 2.200
VLIM 7 8 DC 0
VLP 91 0 DC 25
VLN 0 92 DC 25
..MODEL DX D(IS=800.0E-18)
..MODEL JX PJF(IS=15.00E-12 BETA=270.1E-6 VTO=-1)
..ENDS




2. Beispiel:
------------


----- Original Message -----
From: "Helmut Sennewald" <HelmutSennewald@t-online.de>
Newsgroups: de.sci.electronics
Sent: Saturday, June 14, 2003 5:03 PM
Subject: Re: SwitcherCad, Fremdmodelle benutzen


"Matthias Weingart" <mwnews@pentax.boerde.de> schrieb im Newsbeitrag
news:Xns939A576A8AlwLookOnTBrightSide@213.187.87.70...
Hallo,

ich moechte ein PSpice Modell vom 34063 unter Switchercad einsetzen.
Ein Modell*1 habe ich schon gefunden; muss es nur noch zum Laufen
kriegen. Habt Ihr da vielleicht ein paar Tips?
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip


Hallo Mathias,
ich zeige hier mal den für diese Aufgabe günstigsten Weg auf.

So man hat nimmt man erstmal die Eval-ORCAD 9.1/9.2 und schaut sich
den Schaltplan von Motorola an.

Die ORCAD demo version 9.1 gibt es hier.
http://www.cadencepcb.com/products/downloads/PSpicestudent/default.asp
Mit der kann man übrigens diese Schaltung simulieren.

Die Schaltung von "dir" hernehmen, entpacken und dann ORCAD Capture
starten.
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip

File->Open->Design->mc34063 "pspice.dsn". Da weiss man dann schon mal
was einen erwartet.

Ein zusätzlicher Blick ins Datenblatt kann auch nicht schaden.
http://www.onsemi.com/pub/Collateral/MC34063A-D.PDF



Jetzt kann es losgehen mit LTSPICE.
Als erstes muß man ein Symbol für den MC340863 erstellen.
Dazu nimmt man sich am einfachsten ein ähnliches das es bereits gibt.
In diesem Fall ist es z.B. der LT1101. Jetzt ändert man als erstes
die Namen der Pins. Cursor auf Pin setzen und dan recht Maustaste.
In der Box den neuen Namen eintragen. Das Feld "Netlist Order" gibt
die Reihenfolge der Netznamen im Subcircuit Modell an.
In unserem Beispiel stimmt die bereits mit denen im Modell MC34063
bei allen Pins überein. Also braucht man da nichts ändern.
Also nochmal, die Pin-Namen im Symbol sind unwichtig. Es kommt
einzig auf den Wert "Netlist Order" an.
Netlist Order: 1 2 3 4 5 6 7 8
Label: SWc SWe Ct Gnd FB Vcc Ipk DRc
Zum Vergleich die Subcircuit Definition:
.SUBCKT MC34063 swc swe ct 90 2 vdd isns drc

Dann in der Kommandozeile "Edit -> Attributes -> Edit Attributes"
klicken. Die Box mit den Attributen wird angezeigt. Dort "LTC.lib"
durch "MC34063.lib" und beide "LT1101" durch "MC34063" erstzen.
Das Feld Description passt man dann natürlich auch gleich an.

Dieses "neue" Symbol dann speichern als
"C:\Programme\Ltc\SwCADIII\lib\sym\Private\Mc34063.asy" .
Ich habe hier absichtlich ein Unterverzeichnis "Private" unterhalb
von "...\lib\sym" eingefügt in dem alle privaten Symbole gespeichert
werden. Das Gleiche sollte man auch mit eigenen Modellen(Subcircuits)
machen
die man am besten in ein eigenes "...\lib\sub\Private" Verzeichnis ablegt.

Den Modellfile mit dem Subcircuit .SUBCKT MC34063 als MC34063.lib
entweder ins Arbeitsverzeichnis speichern wo die komplette
Schaltung(*.asc)
liegt oder nach "...\lib\sub" speichern. Das sind die
beiden Verzeichnisse in denen LTSPICE automatisch sucht, wenn im
Symbol-File nur "MC34063.lib" steht. Hätten wir im Symbolfile
statt "MC34063.lib" den Wert "Private\MC34063.lib" angegeben, dann
müßten wir den Modellfile nach "...\lib\sub\Private\MC34063.lib"
speichern.

Eigentlich müßten wir uns ja auch noch um das Dioden-Modell DN5819
kümmern. Da aber LTSPICE den kompletten Modell-File zur Netzliste
lädt, ist es automatisch mit dabei.

Jetzt LTSPICE beenden und dann neustarten! Das ist wichtig damit
das neue Symbol beim Zeichnen der Schaltung zur Verfügung steht.

Zur Simulation:
Ich habe die Schaltung mit ".TRAN 0 25m 0 1u" simuliert.
Der Wert 1u definiert den maximalen Timestep in der Simulation.
Es ist oft besser hier eine Vorgabe zu machen und nicht den
Simulator dynaisch schätzen zu lassen. Die Ergebnise-Datei hat
übrigens eine Größe von 25MByte. Fügt man die (beiden) Zeile(n)
.IC V(out)=27.5 ein, dann kann man die Startphase der Simulation abkürzen.
Dies ist in dem Originalbeispiel so gemacht. Allerdings sieht man dann
natürlich nicht wie die Spannung von 12V nach 28V hochläuft.
Bei Schaltnetzteil Simulationen zeigt sich dann mal wieder, daß
der Rechner nie genug Taktfrequenz hat.

Ich habe mal alle Files angehängt, damit nicht jeder die Arbeit hat.
Ich hoffe, daß damit der Weg für alle Onsemi(Motorola) Modelle
aufgezeigt ist.


Gruß
Helmut

PS: Solange man nur die Originalschaltung von Onsemi simulieren will,
kann man sich natürlich den ganzen Aufwand sparen und mit der Cadence-
Orcad 9.1 oder 9.2 Student Version arbeiten.
Der Vorteil von LTSPICE ist, daß man sich beliebig große Schaltungen
bauen kann, da man keinerlei Größenbegrenzung hat.




Anhang
======


Das Symbol "MC34063.asy" :

Version 4
SymbolType CELL
LINE Normal -20 -128 -20 -112
LINE Normal 20 -128 20 -112
LINE Normal -8 -100 8 -100
RECTANGLE Normal 128 128 -128 -128
ARC Normal -20 -124 4 -100 -20 -112 -8 -100
ARC Normal -4 -124 20 -100 8 -100 20 -112
WINDOW 0 0 -144 Center 0
WINDOW 3 0 144 Center 0
SYMATTR Value MC34063
SYMATTR Prefix X
SYMATTR SpiceModel MC34063.lib
SYMATTR Value2 MC34063
SYMATTR Description Boost Converter
PIN -128 -96 LEFT 8
PINATTR PinName SWc
PINATTR SpiceOrder 1
PIN -128 -32 LEFT 8
PINATTR PinName SWe
PINATTR SpiceOrder 2
PIN -128 32 LEFT 8
PINATTR PinName Ct
PINATTR SpiceOrder 3
PIN -128 96 LEFT 8
PINATTR PinName Gnd
PINATTR SpiceOrder 4
PIN 128 96 RIGHT 8
PINATTR PinName FB
PINATTR SpiceOrder 5
PIN 128 32 RIGHT 8
PINATTR PinName Vcc
PINATTR SpiceOrder 6
PIN 128 -32 RIGHT 8
PINATTR PinName Ipk
PINATTR SpiceOrder 7
PIN 128 -96 RIGHT 8
PINATTR PinName DRc
PINATTR SpiceOrder 8



Das Modell(Subcircuit) "MC34063.lib" aus der ZIP-Datei :
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip
Das werde ich hier nicht expandieren, da mir das Copyright
nicht klar ist. Das kann sich jeder selbst "entzippen".



LTSPICE Testschaltung "MC34063_test.asc" :

Version 4
SHEET 1 880 680
WIRE 32 144 -192 144
WIRE 288 144 336 144
WIRE 416 144 496 144
WIRE 496 144 496 208
WIRE 496 304 496 320
WIRE 496 448 496 496
WIRE 496 496 -32 496
WIRE -96 496 -96 384
WIRE 32 336 -32 336
WIRE -32 336 -32 496
WIRE -32 496 -96 496
WIRE -96 320 -96 272
WIRE -96 272 32 272
WIRE 496 144 496 0
WIRE 496 0 96 0
WIRE 16 0 -32 0
WIRE -304 144 -304 176
WIRE -304 240 -304 272
WIRE -304 368 -304 400
WIRE -304 480 -304 496
WIRE -304 496 -160 496
WIRE -720 272 -816 272
WIRE -816 272 -816 288
WIRE -816 352 -816 384
WIRE -640 272 -608 272
WIRE -528 272 -480 272
WIRE -304 272 -304 304
WIRE -816 464 -816 496
WIRE -816 496 -480 496
WIRE -112 0 -304 0
WIRE -304 0 -304 144
WIRE -816 272 -944 272
WIRE -944 272 -944 320
WIRE -944 400 -944 496
WIRE -944 496 -816 496
WIRE -304 528 -304 496
WIRE 288 208 496 208
WIRE 496 208 496 224
WIRE 496 320 384 320
WIRE 496 320 496 368
WIRE 384 320 384 272
WIRE 384 272 288 272
WIRE -480 368 -480 384
WIRE -480 288 -480 272
WIRE -480 480 -480 496
WIRE -480 384 -528 384
WIRE -480 384 -480 400
WIRE -528 384 -528 576
WIRE 336 576 336 336
WIRE 336 336 288 336
WIRE -480 272 -384 272
WIRE -480 496 -304 496
WIRE -528 576 336 576
WIRE 32 208 -160 208
WIRE -160 208 -160 496
WIRE -160 496 -96 496
WIRE -192 144 -304 144
WIRE -384 272 -304 272
FLAG -304 528 0
FLAG -96 272 ct
FLAG -192 144 coll
FLAG -944 272 out
FLAG -384 272 out0
SYMBOL Private\\MC34063 160 240 R0
SYMATTR InstName U1
SYMBOL res 320 160 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rcol
SYMATTR Value 180
SYMBOL res 480 208 R0
SYMATTR InstName Rsense
SYMATTR Value 0.22
SYMBOL Misc\\battery 496 352 R0
SYMATTR InstName Vinput
SYMATTR Value 12
SYMBOL cap -112 320 R0
SYMATTR InstName Ct
SYMATTR Value 1.5n
SYMBOL ind 0 16 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 5 56 VBottom 0
SYMATTR InstName Lp
SYMATTR Value 170ľH
SYMBOL res -128 16 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rs1
SYMATTR Value 100m
SYMBOL diode -320 176 R0
SYMATTR InstName Dfw
SYMATTR Value DN5819
SYMBOL cap -320 304 R0
SYMATTR InstName Cout1
SYMATTR Value 330ľF
SYMBOL res -320 384 R0
SYMATTR InstName Resr1
SYMATTR Value 100m
SYMBOL res -624 288 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rs2
SYMATTR Value 10m
SYMBOL ind -736 288 R270
WINDOW 0 33 57 VTop 0
WINDOW 3 5 56 VBottom 0
SYMATTR InstName Lout
SYMATTR Value 1ľH
SYMBOL cap -832 288 R0
SYMATTR InstName Cout2
SYMATTR Value 100ľ
SYMBOL res -832 368 R0
SYMATTR InstName Resr2
SYMATTR Value 150m
SYMBOL res -960 304 R0
SYMATTR InstName Rload
SYMATTR Value 160
SYMBOL res -496 272 R0
SYMATTR InstName Rupper
SYMATTR Value 47k
SYMBOL res -496 384 R0
SYMATTR InstName Rlower
SYMATTR Value 2.2k
TEXT -896 -32 Left 0 !.tran 0 25m 0 1u
TEXT -896 72 Left 0 !.IC V(out)=27.5
TEXT -896 32 Left 0 !.IC V(out0)=27.5
TEXT -656 -80 Left 0 ;BOOST Converter 12V->28V
 
"Helmut Sennewald" <HelmutSennewald@t-online.de> schrieb im Newsbeitrag
news:bdenrh$kp$00$1@news.t-online.com...
"Guenter Koenig" <koenig-adendorf#guenter@t-online.de> schrieb im
Newsbeitrag news:bde8ba$3j4$03$1@news.t-online.com...
Hallo,

ich nutze LTspice und möchte einige OP`s hinzufügen. Spicedaten sind
vorhanden. Ist das möglich und wenn ja, wie?


Hallo Günter,
ich habe hier mal einen Mix aus meinen früheren Postings zusammengestellt.
Die Vorgehensweise gilt natürlich für alle Subcircuits.
Subcircuits sind alle Bauteile die in ihrer Definition mit .SUBCKT
beginnen.

Gruß
Helmut
Zum Gruße Helmut,

vielen Dank erstemal. Ich denke, das wird mir mächtig helfen. Dann will ich
mich mal dranmachen.

Bis denn,

Günter
 
"Helmut Sennewald" <HelmutSennewald@t-online.de> schrieb im Newsbeitrag
news:bdenrh$kp$00$1@news.t-online.com...
"Guenter Koenig" <koenig-adendorf#guenter@t-online.de> schrieb im
Newsbeitrag news:bde8ba$3j4$03$1@news.t-online.com...
Hallo,

ich nutze LTspice und möchte einige OP`s hinzufügen. Spicedaten sind
vorhanden. Ist das möglich und wenn ja, wie?
Hallo,
der Pfad "...Ltc\SWCADIII\lib\lib\Private" muß natürlich
"...Ltc\SWCADIII\lib\sub\Private" heißen.

Ich habe die Original-Mail korrigiert und wieder angehängt.
Zusätzlich habe ich im 2. Beispiel die Reply "> " Kennung entfernt.
Also bitte nur diese korrigierte Mail "archivieren".

Gruß
Helmut



Korrigierte Original-Mail
-------------------------

Hallo Günter,
ich habe hier mal einen Mix aus meinen früheren Postings zusammengestellt.
Die Vorgehensweise gilt natürlich für alle Subcircuits.
Subcircuits sind alle Bauteile die in ihrer Definition mit .SUBCKT beginnen.

Gruß
Helmut


1. Ein Beispiel für einen TI-Opamp TL072.
-----------------------------------------
Zunächst legt man am besten zwei eigene Unterverzeichnisse an.
Das dient einzig und allein der Übersichtlichkeit.
"..." ist das Installationsverzeichnis, z.B. "C:\Programme\".

"...Ltc\SWCADIII\lib\sym\Private"
"...Ltc\SWCADIII\lib\sub\Private"

Die SPICE-Text-Dateien mit den Modellen kopiert man dann ins
Verzeichnis "...Ltc\SWCADIII\lib\sub\Private", z.B. "Ti.lib"
wird "...Ltc\SWCADIII\lib\sub\Private\Ti.lib".
In die "Ti.lib"-Datei kann man beliebig viele SPICE Modelle
hineinkopieren.

Die noch zu generierenden Symbole legt man entsprechend unter
"...Ltc\SWCADIII\lib\sym\Private" ab, z.B "TL072.asy".

Wenn man in Switchercad jetzt eines dieser neuen Bauteile
addieren will, dann findet man das im Menu im Verzeichnis
"Private" das parallel zum Verzeichnis "Opamp" liegt.
Dort gibt es dann z.B. den TL072. Nur noch anklicken und schon
ist er auf dem Schaltplan.


Generierung neuer Symbole:
--------------------------
Als erstes kopiert man am besten ein ähnliches Symbol nach
"sym\private". Z.B. "LT1013.asy" nach "...\sym\private\TL072.asy".
Das spart unnötige Arbeit. Dann die Datei TL072.asy mit LTSPICE
öffnen.

In der Kommandozeile "Edit -> Attributes -> Edit Attributes"
klicken. Die Box mit den Attributen wird angezeigt.

Den Wert von Value und Value2 von "LT1013" auf "TL072" ändern.
Diese Werte müssen mit dem Namen des Subcircuits übereinstimmen.

Wert von "SpiceModel" von "LTC.lib" auf "Private\Ti.lib" ändern.
Das ist der relative Suchpfad für den Library-File. Wäre dort
nur "Ti.lib" eingetragen, dann würde LTSPICE "nur" im Verzeichnis
"...\lib\sub" und im Arbeitsverzeichnis, wo die komplette
Schaltung(*.asc) liegt, nach dem Library-File "Ti.lib" suchen.
Der kleine Nachteil mit dem Unterverzeichnis "Private" für
den Library-File ist, daß man bei der Weitergabe von Symbolen
darauf hinweisen muß, daß die Library-Files im Unterverzeichnis
"Private" gespeichert werden müssen oder der Pfad im Symbol
angepasst werden muß.

Natürlich kann man auch das graphische Symbol selbst in dem Editor
verändern.

Ebenso kann man auch Pin-Namen ändern, löschen oder hinzufügen.
Dazu Cursor auf Pin setzen und dann recht Maustaste.
In der Box den neuen Namen und die "Netlist Order" eintragen.

Überprüfen ob die "Netlist Order"(Reihenfolge 1,2,3..) der Pins im
Symbol mit der Reihenfolge der Netze im Subcircuit-Modell übereinstimmt.
Dazu Cursor auf Pin setzen und dann recht Maustaste.
Beispiel: In+,1 1. Netz in .SUBCKT 'Non iverting' ...
Dieser Pin "In+" hat im Symbol die "Netlist Order" 1. Damit muß er
mit dem ersten Pin/Netz im Model .SUBCKT 1 2 3 4 5 übereinstimmen.
Der erste Pin im Model TL072 ist der "NON-INVERTING INPUT". Dieser
entspricht "In+" vom Symbol und ist damit richtig.
In unserem Beispiel stimmt die "Netlist Order" aller Pins bereits mit
der Netzreihenfolge im Modell(Library) vom TL072 überein.
Also braucht man da nichts ändern.
Achtung, die Pin-Namen im Symbol haben für LTSPICE keine Bedeutung.
Es kommt einzig auf deren "Netlist Order"-Wert an.
Zum Glück haben fast alle SPICE-Opamps verschiedener Hersteller die
gleiche Pin/Netz-Reihenfolge in ihren Modellen. Damit hat man dann
schon mal keine Arbeit mit Umnumerierung beim Generieren eines Symbols.

Symbolfile "TL072.asy":
"Label" In+ In- V+ V- Out
"Netlist Order" 1 2 3 4 5

Auszug aus Subcircuit definition(Ti.lib):
* TL072 OPERATIONAL AMPLIFIER "MACROMODEL" SUBCIRCUIT
* CREATED USING PARTS RELEASE 4.01 ON 06/16/89 AT 13:08
* (REV N/A) SUPPLY VOLTAGE: +/-15V
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
..SUBCKT TL072 1 2 3 4 5


Dann "Save" klicken und damit das neue Symbol speichern.

LTSPICE beenden!

Das neue Symbol kann erst nach einem Neustart von LTSPICE benutzt werden.

PS: Es gibt auch noch die Möglichkeit des "One fits all"-Symbols
wenn man viele gleichartige Symbole hat. Die Idee dahinter ist, daß
man erst im Schaltplan die Opamp-Type einträgt. Aber das laß ich jetzt
lieber erstmal weg.



SWCADIII\lib\sym\private\TL072.asy
--------------------------------------------------

Version 3
SymbolType CELL
LINE Normal -8 8 8 16
LINE Normal -8 24 8 16
LINE Normal -8 8 -8 24
LINE Normal -7 12 -5 12
LINE Normal -7 20 -5 20
LINE Normal -6 21 -6 19
LINE Normal 0 8 0 12
LINE Normal 0 24 0 20
LINE Normal 1 11 3 11
LINE Normal 2 10 2 12
LINE Normal 1 21 3 21
WINDOW 0 4 8 Left 0
WINDOW 3 4 24 Left 0
SYMATTR Prefix X
SYMATTR SpiceModel Private\Ti.lib
SYMATTR Value TL072
SYMATTR Value2 TL072
SYMATTR Description Fast Fet Operational Amplifier
PIN -8 20 NONE 0
PINATTR PinName In+
PINATTR SpiceOrder 1
PIN -8 12 NONE 0
PINATTR PinName In-
PINATTR SpiceOrder 2
PIN 0 8 NONE 0
PINATTR PinName V+
PINATTR SpiceOrder 3
PIN 0 24 NONE 0
PINATTR PinName V-
PINATTR SpiceOrder 4
PIN 8 16 NONE 0
PINATTR PinName OUT
PINATTR SpiceOrder 5



Datei SWCADIII\lib\sub\private\Ti.lib
---------------------------------------------------

* TL072 OPERATIONAL AMPLIFIER "MACROMODEL" SUBCIRCUIT
* CREATED USING PARTS RELEASE 4.01 ON 06/16/89 AT 13:08
* (REV N/A) SUPPLY VOLTAGE: +/-15V
* CONNECTIONS: NON-INVERTING INPUT
* | INVERTING INPUT
* | | POSITIVE POWER SUPPLY
* | | | NEGATIVE POWER SUPPLY
* | | | | OUTPUT
* | | | | |
..SUBCKT TL072 1 2 3 4 5
*
C1 11 12 3.498E-12
C2 6 7 15.00E-12
DC 5 53 DX
DE 54 5 DX
DLP 90 91 DX
DLN 92 90 DX
DP 4 3 DX
EGND 99 0 POLY(2) (3,0) (4,0) 0 .5 .5
FB 7 99 POLY(5) VB VC VE VLP VLN 0 4.715E6 -5E6 5E6 5E6 -5E6
GA 6 0 11 12 282.8E-6
GCM 0 6 10 99 8.942E-9
ISS 3 10 DC 195.0E-6
HLIM 90 0 VLIM 1K
J1 11 2 10 JX
J2 12 1 10 JX
R2 6 9 100.0E3
RD1 4 11 3.536E3
RD2 4 12 3.536E3
RO1 8 5 150
RO2 7 99 150
RP 3 4 2.143E3
RSS 10 99 1.026E6
VB 9 0 DC 0
VC 3 53 DC 2.200
VE 54 4 DC 2.200
VLIM 7 8 DC 0
VLP 91 0 DC 25
VLN 0 92 DC 25
..MODEL DX D(IS=800.0E-18)
..MODEL JX PJF(IS=15.00E-12 BETA=270.1E-6 VTO=-1)
..ENDS




2. Beispiel:
------------


----- Original Message -----
From: "Helmut Sennewald" <HelmutSennewald@t-online.de>
Newsgroups: de.sci.electronics
Sent: Saturday, June 14, 2003 5:03 PM
Subject: Re: SwitcherCad, Fremdmodelle benutzen


"Matthias Weingart" <mwnews@pentax.boerde.de> schrieb im Newsbeitrag
news:Xns939A576A8AlwLookOnTBrightSide@213.187.87.70...
Hallo,

ich moechte ein PSpice Modell vom 34063 unter Switchercad einsetzen.
Ein Modell*1 habe ich schon gefunden; muss es nur noch zum Laufen
kriegen. Habt Ihr da vielleicht ein paar Tips?
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip
Hallo Mathias,
ich zeige hier mal den für diese Aufgabe günstigsten Weg auf.

So man hat nimmt man erstmal die Eval-ORCAD 9.1/9.2 und schaut sich
den Schaltplan von Motorola an.

Die ORCAD demo version 9.1 gibt es hier.
http://www.cadencepcb.com/products/downloads/PSpicestudent/default.asp
Mit der kann man übrigens diese Schaltung simulieren.

Die Schaltung von "dir" hernehmen, entpacken und dann ORCAD Capture
starten.
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip

File->Open->Design->mc34063 "pspice.dsn". Da weiss man dann schon mal
was einen erwartet.

Ein zusätzlicher Blick ins Datenblatt kann auch nicht schaden.
http://www.onsemi.com/pub/Collateral/MC34063A-D.PDF



Jetzt kann es losgehen mit LTSPICE.
Als erstes muß man ein Symbol für den MC340863 erstellen.
Dazu nimmt man sich am einfachsten ein ähnliches das es bereits gibt.
In diesem Fall ist es z.B. der LT1101. Jetzt ändert man als erstes
die Namen der Pins. Cursor auf Pin setzen und dan recht Maustaste.
In der Box den neuen Namen eintragen. Das Feld "Netlist Order" gibt
die Reihenfolge der Netznamen im Subcircuit Modell an.
In unserem Beispiel stimmt die bereits mit denen im Modell MC34063
bei allen Pins überein. Also braucht man da nichts ändern.
Also nochmal, die Pin-Namen im Symbol sind unwichtig. Es kommt
einzig auf den Wert "Netlist Order" an.

Netlist Order: 1 2 3 4 5 6 7 8
Label: SWc SWe Ct Gnd FB Vcc Ipk DRc
Zum Vergleich die Subcircuit Definition:
..SUBCKT MC34063 swc swe ct 90 2 vdd isns drc

Dann in der Kommandozeile "Edit -> Attributes -> Edit Attributes"
klicken. Die Box mit den Attributen wird angezeigt. Dort "LTC.lib"
durch "MC34063.lib" und beide "LT1101" durch "MC34063" erstzen.
Das Feld Description passt man dann natürlich auch gleich an.

Dieses "neue" Symbol dann speichern als
"C:\Programme\Ltc\SwCADIII\lib\sym\Private\Mc34063.asy" .
Ich habe hier absichtlich ein Unterverzeichnis "Private" unterhalb
von "...\lib\sym" eingefügt in dem alle privaten Symbole gespeichert
werden. Das Gleiche sollte man auch mit eigenen Modellen(Subcircuits)
machen die man am besten in ein eigenes "...\lib\sub\Private"
Verzeichnis ablegt.

Den Modellfile mit dem Subcircuit .SUBCKT MC34063 als MC34063.lib
entweder ins Arbeitsverzeichnis speichern wo die komplette
Schaltung(*.asc)
liegt oder nach "...\lib\sub" speichern. Das sind die
beiden Verzeichnisse in denen LTSPICE automatisch sucht, wenn im
Symbol-File nur "MC34063.lib" steht. Hätten wir im Symbolfile
statt "MC34063.lib" den Wert "Private\MC34063.lib" angegeben, dann
müßten wir den Modellfile nach "...\lib\sub\Private\MC34063.lib"
speichern.

Eigentlich müßten wir uns ja auch noch um das Dioden-Modell DN5819
kümmern. Da aber LTSPICE den kompletten Modell-File zur Netzliste
lädt, ist es automatisch mit dabei.

Jetzt LTSPICE beenden und dann neustarten! Das ist wichtig damit
das neue Symbol beim Zeichnen der Schaltung zur Verfügung steht.

Zur Simulation:
Ich habe die Schaltung mit ".TRAN 0 25m 0 1u" simuliert.
Der Wert 1u definiert den maximalen Timestep in der Simulation.
Es ist oft besser hier eine Vorgabe zu machen und nicht den
Simulator dynaisch schätzen zu lassen. Die Ergebnise-Datei hat
übrigens eine Größe von 25MByte. Fügt man die (beiden) Zeile(n)
..IC V(out)=27.5 ein, dann kann man die Startphase der Simulation abkürzen.
Dies ist in dem Originalbeispiel so gemacht. Allerdings sieht man dann
natürlich nicht wie die Spannung von 12V nach 28V hochläuft.
Bei Schaltnetzteil Simulationen zeigt sich dann mal wieder, daß
der Rechner nie genug Taktfrequenz hat.

Ich habe mal alle Files angehängt, damit nicht jeder die Arbeit hat.
Ich hoffe, daß damit der Weg für alle Onsemi(Motorola) Modelle
aufgezeigt ist.


Gruß
Helmut

PS: Solange man nur die Originalschaltung von Onsemi simulieren will,
kann man sich natürlich den ganzen Aufwand sparen und mit der Cadence-
Orcad 9.1 oder 9.2 Student Version arbeiten.
Der Vorteil von LTSPICE ist, daß man sich beliebig große Schaltungen
bauen kann, da man keinerlei Größenbegrenzung hat.




Anhang
======


Das Symbol "MC34063.asy" :

Version 4
SymbolType CELL
LINE Normal -20 -128 -20 -112
LINE Normal 20 -128 20 -112
LINE Normal -8 -100 8 -100
RECTANGLE Normal 128 128 -128 -128
ARC Normal -20 -124 4 -100 -20 -112 -8 -100
ARC Normal -4 -124 20 -100 8 -100 20 -112
WINDOW 0 0 -144 Center 0
WINDOW 3 0 144 Center 0
SYMATTR Value MC34063
SYMATTR Prefix X
SYMATTR SpiceModel MC34063.lib
SYMATTR Value2 MC34063
SYMATTR Description Boost Converter
PIN -128 -96 LEFT 8
PINATTR PinName SWc
PINATTR SpiceOrder 1
PIN -128 -32 LEFT 8
PINATTR PinName SWe
PINATTR SpiceOrder 2
PIN -128 32 LEFT 8
PINATTR PinName Ct
PINATTR SpiceOrder 3
PIN -128 96 LEFT 8
PINATTR PinName Gnd
PINATTR SpiceOrder 4
PIN 128 96 RIGHT 8
PINATTR PinName FB
PINATTR SpiceOrder 5
PIN 128 32 RIGHT 8
PINATTR PinName Vcc
PINATTR SpiceOrder 6
PIN 128 -32 RIGHT 8
PINATTR PinName Ipk
PINATTR SpiceOrder 7
PIN 128 -96 RIGHT 8
PINATTR PinName DRc
PINATTR SpiceOrder 8



Das Modell(Subcircuit) "MC34063.lib" aus der ZIP-Datei :
http://perso.wanadoo.fr/cbasso/Downloads/PSpice/34063.zip
Das werde ich hier nicht expandieren, da mir das Copyright
nicht klar ist. Das kann sich jeder selbst "entzippen".



LTSPICE Testschaltung "MC34063_test.asc" :

Version 4
SHEET 1 880 680
WIRE 32 144 -192 144
WIRE 288 144 336 144
WIRE 416 144 496 144
WIRE 496 144 496 208
WIRE 496 304 496 320
WIRE 496 448 496 496
WIRE 496 496 -32 496
WIRE -96 496 -96 384
WIRE 32 336 -32 336
WIRE -32 336 -32 496
WIRE -32 496 -96 496
WIRE -96 320 -96 272
WIRE -96 272 32 272
WIRE 496 144 496 0
WIRE 496 0 96 0
WIRE 16 0 -32 0
WIRE -304 144 -304 176
WIRE -304 240 -304 272
WIRE -304 368 -304 400
WIRE -304 480 -304 496
WIRE -304 496 -160 496
WIRE -720 272 -816 272
WIRE -816 272 -816 288
WIRE -816 352 -816 384
WIRE -640 272 -608 272
WIRE -528 272 -480 272
WIRE -304 272 -304 304
WIRE -816 464 -816 496
WIRE -816 496 -480 496
WIRE -112 0 -304 0
WIRE -304 0 -304 144
WIRE -816 272 -944 272
WIRE -944 272 -944 320
WIRE -944 400 -944 496
WIRE -944 496 -816 496
WIRE -304 528 -304 496
WIRE 288 208 496 208
WIRE 496 208 496 224
WIRE 496 320 384 320
WIRE 496 320 496 368
WIRE 384 320 384 272
WIRE 384 272 288 272
WIRE -480 368 -480 384
WIRE -480 288 -480 272
WIRE -480 480 -480 496
WIRE -480 384 -528 384
WIRE -480 384 -480 400
WIRE -528 384 -528 576
WIRE 336 576 336 336
WIRE 336 336 288 336
WIRE -480 272 -384 272
WIRE -480 496 -304 496
WIRE -528 576 336 576
WIRE 32 208 -160 208
WIRE -160 208 -160 496
WIRE -160 496 -96 496
WIRE -192 144 -304 144
WIRE -384 272 -304 272
FLAG -304 528 0
FLAG -96 272 ct
FLAG -192 144 coll
FLAG -944 272 out
FLAG -384 272 out0
SYMBOL Private\\MC34063 160 240 R0
SYMATTR InstName U1
SYMBOL res 320 160 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rcol
SYMATTR Value 180
SYMBOL res 480 208 R0
SYMATTR InstName Rsense
SYMATTR Value 0.22
SYMBOL Misc\\battery 496 352 R0
SYMATTR InstName Vinput
SYMATTR Value 12
SYMBOL cap -112 320 R0
SYMATTR InstName Ct
SYMATTR Value 1.5n
SYMBOL ind 0 16 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 5 56 VBottom 0
SYMATTR InstName Lp
SYMATTR Value 170ľH
SYMBOL res -128 16 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rs1
SYMATTR Value 100m
SYMBOL diode -320 176 R0
SYMATTR InstName Dfw
SYMATTR Value DN5819
SYMBOL cap -320 304 R0
SYMATTR InstName Cout1
SYMATTR Value 330ľF
SYMBOL res -320 384 R0
SYMATTR InstName Resr1
SYMATTR Value 100m
SYMBOL res -624 288 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName Rs2
SYMATTR Value 10m
SYMBOL ind -736 288 R270
WINDOW 0 33 57 VTop 0
WINDOW 3 5 56 VBottom 0
SYMATTR InstName Lout
SYMATTR Value 1ľH
SYMBOL cap -832 288 R0
SYMATTR InstName Cout2
SYMATTR Value 100ľ
SYMBOL res -832 368 R0
SYMATTR InstName Resr2
SYMATTR Value 150m
SYMBOL res -960 304 R0
SYMATTR InstName Rload
SYMATTR Value 160
SYMBOL res -496 272 R0
SYMATTR InstName Rupper
SYMATTR Value 47k
SYMBOL res -496 384 R0
SYMATTR InstName Rlower
SYMATTR Value 2.2k
TEXT -896 -32 Left 0 !.tran 0 25m 0 1u
TEXT -896 72 Left 0 !.IC V(out)=27.5
TEXT -896 32 Left 0 !.IC V(out0)=27.5
TEXT -656 -80 Left 0 ;BOOST Converter 12V->28V
 
"Helmut Sennewald" <HelmutSennewald@t-online.de> schrieb:

[Ausführliche Anleitung]

Das sollte eigentlich in die FAQ übernommen werden!

Gruß
Jürgen

--
Advertisement to this mail address is prohibited!
 
"MaWin" <mawin@gmx.net> schrieb im Newsbeitrag
news:01c33cf6$6f6642e0$0100007f@amdk6-300...
Juergen Klein <juergen@ek-p.de> schrieb im Beitrag
khtnfvore4ev5934b8olb0dsr018s7g01r@4ax.com>...

[Ausführliche Anleitung]

Das sollte eigentlich in die FAQ übernommen werden!

Hmm, ein bischen lang...
--
Hallo Mawin,
man kann ja das 2. Beispiel weglassen. Nur so mal als Tipp.

Gruß
Helmut
 

Welcome to EDABoard.com

Sponsor

Back
Top