Hallo zusammen,
ich habe mir das Spice Modell des MOSFETs "IPBE65R050CFD7A" von Infineon
heruntergeladen und wollte das Modell in einer einfachen Testschaltung
testen.
Probiert habe ich das Einfügen des Modells auf folgende zwei Arten:
a) Über normales Modell von "NMOS" aus Bauteilbiliothek --> Im Component
Attribute Editor habe ich den Prefix auf "X" geändert und außerdem den
Namen des Subcircuits "IPBE65R050CFD7A_L1" unter Value eingetragen
(siehe Screenshot). Zusätzlich habe ich die .lib Datei über das Spice
Directive .include... eingebunden.
Leider erscheint beim Starten der Simulation folgende Fehlermeldung:
"M1: Can't find definition of model..."
b) .lib Datei in LTspice öffnen --> Rechtsklick auf .SUBCKT
IPBE65R050CFD7A_L1 und dann mit Autogenerator Symbol erstellt -->
Anschließend Symbol über Bauteileditor in Schaltplan geholt.
Leider erscheint beim Starten der Simulation die folgende Warnung:
"WARNING: Can't resolve .param mos_kp_a=..."
Mir scheint es so, als wäre das Problem des Ganzen, dass das Spice
Modell aus mehreren Subcircuits besteht und auch der Subcircuit
"IPBE65R050CFD7A_L1" auf die anderen Subcircuits zugreifen muss.
Ich habe die beiden Simulationen inklusive Screenshots, das Symbol und
das Spice Modell im Anhang angehängt. Kann mir jemand sagen, wie man das
Problem lösen kann?
Viele Grüße
Hans
Ein bekanntes Problem, viele Modelle von Infineon sind nicht mit LTSpice
kompatibel. Und weil die Modelle so komplex sind, ist ändern schlimmer
als neu erstellen...
Hans schrieb:> a) Über normales Modell von "NMOS" aus Bauteilbiliothek --> Im Component> Attribute Editor habe ich den Prefix auf "X" geändert und außerdem den> Namen des Subcircuits "IPBE65R050CFD7A_L1" unter Value eingetragen> (siehe Screenshot). Zusätzlich habe ich die .lib Datei über das Spice> Directive .include... eingebunden.>> Leider erscheint beim Starten der Simulation folgende Fehlermeldung:> "M1: Can't find definition of model..."
In deiner MOSFET_Test_NMOS.asc ist der Prefix trotzdem auf MN. Mit X ist
die erste Hürde genommen.
Dieses Vorgehen funktioniert bei den L0- und L1-Modellen mit drei
Anschlüssen. L2 bzw. L3 benötigen ein Symbol mit fünf Pins.
Es folgt:
Hier wir in der lib ein "||" anstelle von "|" als logische
Oder-Verknüpfung verwendet.
Korrektur:
1
* LTspice PSPICE Syntax uses "|" for logical OR operator
2
*.FUNC s(w1, w3)={if(a==9.7248 || a==9.69,w1,w3)}
3
.FUNC s(w1, w3)={if(a==9.7248 | a==9.69,w1,w3)}
Nächstes Problem:
1
WARNING: bad call of user defined function in: "a*([s*](ig(da,t,fpar10*fpar40*t,g-vth+fpar2*(t-fpar42),fpar11)+1*exp(min(fpar14+(d-fpar15-fpar16*(t-fpar42))/fpar13,25))))"
LTspce interpretiert anscheinend den Parameter s der Funktion J als
zuvor definierte Funktion s.
Lösung - umbenennen in sj:
1
*LTspcie mistake parameter s for function s(...)
2
*Error msg "WARNING: bad call of user defined function..."