"Harald Noack" schrieb im Newsbeitrag news:5148d$4b087f5e$d52f2bc6$ snipped-for-privacy@news.chello.at...
Hallo Harald,
Das Modell ist ein subcircuit. Deshalb muss LTspice beim Generieren der Netzliste das berücksichtigen. Schau mal da rein: View -> SPICE Netlist
Cursor über das Bauteil fahren. Ctrl plus rechte Maustate klicken. Im Dialogfenster: Prefix:Qn das QN durch X ersetzen. Prefix:X
OK
Diese Vorgehensweise braucht man auch für die Modelle von Power-Mosfets und manchmal auch für Dioden. Eben immer, wenn man ein Symbol hat das für ".model" gedacht ist, man es aber für ein Subcircuit verwenden will ohne ein extra Symbol zu machen.
ich arbeite mich auch gerade in LTSPICE ein und bin über ein ähnliches Problem gestolpert. Beim Einbinden des 2N7000, das als .model im File PWRMOS.LIB in der directory ..\lib\sub\pwrmos.lib vorliegt, habe ich Probleme mit den Symbolattributen, er findet das File nicht. Bei Subcircuits funktioniert das aber wie es soll.
Ich bin so vorgegangen: Zuerst ein Standard NMOS-Symbol ..\lib\sym\nmos.asy kopiert und als ..\lib\sym\user\pwrmos\m2n7000.asy abgespeichert. Dann mit dem Symboleditor die Attribute so eingestellt:
Wenn ich jetzt den Transistor in eine Schaltung einbinde, wird pwrmos.lib nicht gefunden. Dann habe ich in die Schaltung die Spice-Directive .lib pwrmos.lib eingefügt und es funktioniert. Will ich jetzt aus der pwrmos.lib einen Subcircuit einbinden, so wird der M2N7000 aber als doppelt vorhanden bezeichnet mit Warnung, dann lösche ich die Directive .lib pwrmos.lib und es funktioniert wieder.
Meine Schlußfolgerung ist, daß obige Zeile ModelFile bei .model ignoriert wird, nicht jedoch bei subcircuits. Mache ich da etwas falsch oder ist das ein Problem von LTSPICE?
In diesem Zusammenhang habe ich noch die Frage, wie man einzelne models, subcircuits und Module in einem Library-File trennt, ich habe das durch die Sequenz
*
****
gemacht, entspricht dem *$ in PSPICE. Bisher hat das so funktioniert, habe das irgendwo zufällig in den LTC-Library-Files als Erklärung gefunden, nicht jedoch in der Online-Hilfe. Ohne die Trennung würde es zwangsläufig zu Mehrdeutigkeiten kommen, da Module aus mehreren Subcircuits und Modellen bestehen können, die sich wiederholen können.
Ich teste LTSPICE gerade im Vergleich zur Vollversion von PSPICE 7.1 und bin angenehm überrascht über die guten Konvergenzeigenschaften und die Auswahl der Solver. Allerdings ist die Transientenanalyse bei LTSPICE sehr langsam, zumindest bei kritischen Problemen wie Schaltnetzteilen oder PLL, wo Konvergenzprobleme immer extrem sind, werde das weiterhin untersuchen. Ich versuche mir LTSPICE so herzurichten, daß ich die Möglichkeiten von PSPICE habe, bisher mit Erfolg, es scheint kompatibel zu sein. Einige Merkwürdigkeiten muß ich mir allerdings noch genauer ansehen.
"Winfried Salomon" schrieb im Newsbeitrag news:hebm48$s97$02$ snipped-for-privacy@news.t-online.com...
Hallo Winfried,
was bei subcircuits funktioniert, geht nicht bei symbols für ".model" Teile. Da musst du im Schaltplan ein ".include filename" einfügen.
LTspice braucht überhaupt keine Trennzeilen.
Wenn eine Simulation langsam rennt, dann hilft man da mit Konvergenzeinstellungen nach. So Kleinigkeiten wie unten bewirken da manchmal Wunder. Auch der Alternate Solver , einstellbar im Control Panel, hilft da manchmal.
hab ich gemacht, führt aber eben zu multiplen Symbolen, wenn gleichzeitig Subcircuits aus dem File eingebunden werden, durch die dieses dann bekannt ist. In dem Fall muß .include oder .lib wieder gelöscht werden. Mal sehen, ob man bei LTC jemanden auf dieses Problem aufmerksam machen sollte, obwohl es nicht fatal aber störend ist.
[.....]
Habe das aber in LTC.LIB gelesen oder so verstanden, viele subcircuits rufen wiederum andere auf, ähnlich wie subroutines. So können mehrere gleichbezeichnete subcircuits in einem File sein, die aber anderen Inhalt haben können. Ohne eine solche Trennung kann das nicht funktionieren. Muß diese Sache gelegentlich testen.
Ich habe das mit Trtol beschleunigt, von 1 auf 10, 30 oder mehr vergrößert, es wird dann aber ungenauer, hängt sich evtl. sogar auf. Insgesamt ist LTSPICE deutlich genauer als PSPICE und ich habe kaum Konvergenzprobleme beobachtet, aber es bleibt bei kritischen Simulationen sehr langsam. Ich untersuche gerade den uralten Schaltregler TL497, der nach dem Prinzip der Pulsabstandsmodulation funktioniert, wenn ich das richtig verstanden habe. Jedenfalls ist das Teil um Welten besser als alle PWM-Regler in der Simulation. Oder ich habe ein Modell aufgestellt, das sich viel besser verhalten würde, wenn es das als Bauteil gäbe. Muß mir das Datenblatt nochmal genau durchlesen. Die Simulation dieses Modells ist extrem langwierig.
"Winfried Salomon" schrieb im Newsbeitrag news:hecdkb$plk$03$ snipped-for-privacy@news.t-online.com...
Ich wundere mich über deine Probleme mit subcircuits. Ich habe tausende von Schaltungen mit LTspice gemacht und die funktionieren einfach. Bei jedem dem ich sie schicke, in jedem Verzeichnis. Warum? Weil die Symbole und Model-Files die zu einem Design gehören, bei mir immer im gleichen Ordner liegen wie der Schaltplan.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.