Forum: Analoge Elektronik und Schaltungstechnik LTspice - LMZ23603 Problem mit PSpice - Modell


von Klaus R. (klara)



Lesenswert?

Hallo,
der LMZ23603 ist ein toller 3A SIMPLE SWITCHER von TI. TI bietet über 
den WEBENCH® Power Designer auch die Möglichkeit von Simulationen an. 
Auch mit TINA kann man simulieren.

Die Simulationen sehen mit aber verdächtig sauber aus, irgendwie 
geschönt.

Aber TI bietet auch für den LMZ23603 ein Unencrypted PSpice Transient 
Model an. Das Symbol habe ich selbst erstellt. Das Modell läuft aber nur 
unter dem Alternate Solver, aber grausam. Mit dem Normal Solver kommt es 
zu einem "Time step too small". Das Error LOG weist aber zuvor noch 
andere Fehler auf, die auch unter dem Alternate Solver vorkommen. 
Vielleicht sind diese Fehler ursächlich für die schlechte Simulation 
verantwortlich.

Eventuell ist ja auch nur ein Syntax - Fehler die Ursache. Das Modell 
sollte ja an sich schon unter PSpice laufen.

1
...
2
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}}|v(c)>{{vthresh}},{{vss}},{{vdd}})}"
3
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh))|v(c)>((vthresh)),((vss)),((vdd)))"
4
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vss}},{{vdd}})}"
5
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vss)),((vdd)))"
6
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}&v(b)>{{vthresh}},{{vdd}},{{vss}})}"
7
    Error: undefined symbol in: "if([v](a)>((vthresh))&v(b)>((vthresh)),((vdd)),((vss)))"
8
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}**v(b)>{{vthresh}},{{vss}},{{vdd}})}"
9
    Error: undefined symbol in: "if([v](a)>((vthresh))**v(b)>((vthresh)),((vss)),((vdd)))"
10
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"
11
    Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"
12
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vss}},{{vdd}})}"
13
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vss)),((vdd)))"
14
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vss}},{{vdd}})}"
15
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vss)),((vdd)))"
16
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}}|v(c)>{{vthresh}}|v(d)>{{vthresh}},{{vdd}},{{vss}})}"
17
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh))|v(c)>((vthresh))|v(d)>((vthresh)),((vdd)),((vss)))"
18
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"
19
    Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"
20
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}}|v(c)>{{vthresh}},{{vdd}},{{vss}})}"
21
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh))|v(c)>((vthresh)),((vdd)),((vss)))"
22
Questionable use of curly braces in "b§e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vdd}},{{vss}})}"
23
    Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vdd)),((vss)))"
24
Direct Newton iteration for .op point succeeded.
25
Heightened Def Con from 1.50355e-008 ++++++++++++++++++++++++++++++++++++++++++++++++++Fatal Error: Analysis:  Time step too small; time = 1.50355e-008, timestep = 1.25e-019: trouble with u1:15:smooth-instance s:u1:15:_a1

Ich habe als Bild eine LTspice Simulation beigefügt. Sie läuft im 
Alternate Solver. Es sollte eine Spannung von 5V erreicht werden. Der 
Schalttakt sollte ca. 800 kHz erreichen. Er liegt unter 100 kHz.

Im Vergleich dazu ein Startup in der WEBENCH simuliert. Das zweite Bild 
zeigt ein Zoom. Alles ziemlich clean.
mfg Klaus

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo,

die Warnungen wegen den Klammern {} verschwinden, wenn man die unnötigen 
Doppelklammern {{ }} zu Einfachklammern reduizert { }. Siehe Anhang.

Die Simulation ist dann aber immer noch nicht richtig.

Mich wundern die 2.2u im Modell? Im Datenblatt steht nämlich 3.3u.
L1 SW VOUTRESR 2.2U


Der nächste Versuch wäre die AND/OR/XNOR subcircuits durch A-devices von 
LTspice zu ersetzen.

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Ich habe jetzt mal als Experiment diese Zeile geändert. Ich verstehe 
zwar nicht warum, aber das Ergebnis sieht jetzt gut aus. Die neue Datei 
ist im Anhang.

Original:
D4 LSSENSE SW _D4_MOD 1E5

Neu:
D4 LSSENSE SW _D4_MOD 1E4

: Bearbeitet durch User
von Klaus R. (klara)



Lesenswert?

Hallo Helmut,
vielen Dank für Deine Hilfe. LSSENSE könnte etwas mit der 
Strombegrenzung der seriellen Induktivität zu tun haben. Dies ist aber 
von mir nur geraten.

Die neue Definition "D4 LSSENSE SW _D4_MOD 1E4" ergibt die erwartenden 
800 kHz Taktfrequenz und auch ein Ripple von 50 mVss, der der Höhe in 
WEBENCH gut entgegen kommt. Leider haben wir unter LTspice ein 
Überschwingen beim Startup. Auch die Rampe, mit der unter WEBENCH 
simuliert bringt unter LTspice nichts.

Erhöhungen des Wertes 1E4 veringern zwar das Überschwingen, aber 
verringern auch sofort die Taktfrequenz und erhöhen den Ripple. Insofern 
liegst Du mit 1E4 schon im optimalen Bereich. Die Simu läuft nur unter 
dem Alternate Solver.

Nochmals, Danke
Klaus.

: Bearbeitet durch User
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.