mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik LTSpice: opamp sweep parametrisieren


Autor: Daniel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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-lt...

vG, Daniel

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist jetzt konkret die Frage?

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht 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 .....

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Yalu X. (yalu) (Moderator)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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:
.lib LTC.lib

.subckt 1413  1 2 3 4 5
xu            1 2 3 4 5 lt1413
.ends

.subckt 1022  1 2 3 4 5
xu            1 2 3 4 5 lt1022a
.ends

.subckt 1113  1 2 3 4 5
xu            1 2 3 4 5 lt1113
.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.

Autor: Helmut S. (helmuts)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Simon K. (simon) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.