Forum: Analoge Elektronik und Schaltungstechnik LTSpice: opamp sweep parametrisieren


von Daniel (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe folgendes vor. Ich will in derselben Schaltung
den OpAmp automatisch auswechseln und .tran Analyse machen.
Angehängt ist ein Screenshot meines Versuches. Die Anleitung
habe ich hier gefunden 
http://www.electronicspoint.com/sep-ping-models-ltspice-t43178.html

vG, Daniel

von Simon K. (simon) Benutzerseite


Lesenswert?

Was ist jetzt konkret die Frage?

von Daniel (Gast)


Lesenswert?

Hm ja, so wie oben dargestellt, funktioniert das nicht!

Soweit ich aus dem Link das verstehe, funktioniert dies mit
.model 1 NPN(...) Syntax. Ich will aber keinen automatischen
Tausch der Transistoren, sondern OpAmps. Diese sind meines
Wissens .subsckt. Den genauen Unterschied zwischen .model
.subckt habe ich nicht gecheckt, da drücken sich die meisten
Tutorials darauf einzugehen.

Ist es irgendwie möglich dasselbe mit OpAmps zu erreichen?

von Simon K. (simon) Benutzerseite


Lesenswert?


von Helmut S. (helmuts)


Lesenswert?

Opamp-Modelle sind dubcircuits.
Deshalb geht die model-Ersetzung mit "ako" nicht.

Du hast nur eine Chance, wenn es mit .step gehen soll.
Du musst die Opamp-subcircuits mit Zahlen benennen, z. B. 324, 72, 741

.step param OPA list 324 72 741

Im Schaltplan muss dann am Opamp-Symbol {OPA} stehen. Die  {} sind 
wichtig.
Das Ganze geht natürlich nur, wenn die funktionale Pin-Reihenfolge 
(Netlist-Order) bei allen Opamp-Modellen gleich ist.


Statt

.subckt TL072 .....


Dann

.subckt 72 .....

von Simon K. (simon) Benutzerseite


Lesenswert?

Danke Helmut, das habe ich gerade auch gemerkt. Mit .subckt geht das ja 
gar nicht. Hmpf.

Ich habe in meiner aktuellen Schaltung zwei OPAMPs drin, die ich 
zeitgleich (über einen Parameter) austauschen will.
Leider kann man per .param nur Zahlen festlegen und keinen Text. So wie 
es aussieht geht das also nicht - Schade.


PS: Der Unterschied zwischen SUBCKT und MODEL ist, dass MODEL schon 
"eingebaute" Modelle im Spice sind. Das bedeutet, bei MODELs brauch man 
nur noch Kenn-Parameter anzugeben (Bei Transistoren zum Beispiel 
Verstärkung usw usf.).
SUBCKTs hingegen sind nichts anderes als wiederum Schaltpläne (die 
hinter einem Symbol versteckt sind) mit MODELs drin.

von Helmut S. (helmuts)


Lesenswert?

@Simon,

du könntest ja die Schaltung zweimal im Schaltplan haben.
Einfach kopieren. Dann hast du beide Opamps in einer Simulation.

Eine wesentlich aufwendigere Methode wäre es mit externem Programm die
Ergebnisse zweier Simualtionen zusammenzuführen.

von Yalu X. (yalu) (Moderator)


Angehängte Dateien:

Lesenswert?

Um beim ersten Vorschlag von Helmut nicht die Modelle selbst ändern zu
müssen, kann man stattdessen auch Wrapper-Modelle mit den numerischen
Namen anfertigen, wie in der Datei opnr.net gezeigt:
1
.lib LTC.lib
2
3
.subckt 1413  1 2 3 4 5
4
xu            1 2 3 4 5 lt1413
5
.ends
6
7
.subckt 1022  1 2 3 4 5
8
xu            1 2 3 4 5 lt1022a
9
.ends
10
11
.subckt 1113  1 2 3 4 5
12
xu            1 2 3 4 5 lt1113
13
.ends
opnr.net wird mit .include in die Schaltung (opsweep.asc) eingebunden,
und schon können per Step-Direktive mehrere OpAmps in einem Rutsch
simuliert werden (opsweep.png).

Wenn man mehr als 10 OpAmps mit dieser Methode simulieren will, lohnt es
sich vielleicht, die Datei opnr.net automatisch mit einem kleinen Shell-
oder Pythonskript zu generieren.

von Helmut S. (helmuts)


Lesenswert?

@Yalu,

Super-Tipp mit den Subcircuits außen rum. Werde ich mir merken.
Wenns einen nicht stört, dann kann man diese Subcircuit-Zeilen auch 
gleich im Schaltplan platzieren.

von Simon K. (simon) Benutzerseite


Angehängte Dateien:

Lesenswert?

Klasse, das funktioniert. Hab sowas auch gestern mal probiert, 
allerdings mit

.subckt OPAMP NE5532

Aber da fehlt natürlich die Anschlussliste und da wusste ich auch nicht 
mehr weiter.

Aber so klappts.

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.