Forum: Analoge Elektronik und Schaltungstechnik LTspice Modell MOSFET Infineon einbinden


von Hans (Gast)


Angehängte Dateien:

Lesenswert?

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

von H. H. (Gast)


Lesenswert?

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...

von Hardy (Gast)


Lesenswert?

Infineon hat oft keine LTSpice-taugliche Modellen.
Absichtlich so gemacht.

von abaso (Gast)


Angehängte Dateien:

Lesenswert?

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:
1
WARNING: Can't resolve .param fpar3=s(-0.0025,-0.002)
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..."
3
*replaced by parameter sj
4
*.FUNC J(d,g,T,da,s)
5
*+ {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))))}
6
.FUNC J(d,g,T,da,sj)
7
+ {a*(sj*(Ig(da,T,fpar10*fpar40*T,g-Vth+fpar2*(T-fpar42),fpar11)+1*exp(min(fpar14+(d-fpar15-fpar16*(T-fpar42))/fpar13,25))))}

von Hans (Gast)


Lesenswert?

Vielen Dank für die Unterstützung bei der Lösung des Problems. Ich bin 
echt beeindruckt. Auf diese Lösung muss man erst mal kommen.

Viele Grüße
Hans

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.