Forum: Analoge Elektronik und Schaltungstechnik Variablen in LTSpice?


von miko (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bin gerade dabei Elektrotechnikgrundlagen zu lernen und habe das 
Programm LTSpice gefunden, das super ist um sich ein paar Dinge mit 
Simulationen anschaulich zu machen.

Dabei bin ich gerade bei folgender anspruchsvoller Schaltung angekommen 
g und habe folgende Frage:

Wie kann ich alle drei Spannungen (Us, Ur, Uc) gleichzeitig darstellen, 
ohne jedes mal bei "Add Trace" die Formel "V(us)-V(uc)" (für Ur) von 
Hand neu eingeben zu müssen?
Wenn ich nämlich nämlich jetzt etwas anderes anklicke (z.B. Strom 
anschaue) und dann wieder Ur haben will, ist diese "Trace" nicht 
gespeichert, und ich muss die Formel neu eingeben.

Gibt es da also irgenwie die Möglichkeit, "Ur=V(us)-V(uc)" als Variable 
abzuspeichern, die ich bei "Add Traces" dann nur noch auswählen muss, 
anstatt die Formel neu eingeben zu müssen?


Danke für jede Hilfe :)
miko

von miko (Gast)


Lesenswert?

Zusatz: Natürlich könnte ich "Save Plot Settings As" benutzen und jede 
einzele Kurvenansicht abspeichern, aber dann geht bei anspruchsvolleren 
Schaltungen der Überblick im Ordnder verloren. Es geht ja bestimmt 
(hoffentlich) auch weniger umständlich!

von Knut (Gast)


Lesenswert?

Ganz einfach, keinen Doppelklick auf die anzuzeigende Größe.

Einfachklick = Fügt zum Trace hinzu
Doppelklick = Fügt hinzu, löscht den Rest



Knut

von miko (Gast)


Lesenswert?

Das weiß ich, aber bei aufwändigeren Schaltungen will man ja keine 20 
Kurven gleichzeitig anzeigen, da geht doch dann die Übersicht verloren. 
Es muss doch da einen Weg geben, die Kurven einfach wieder neu 
anzuzeigen.

von Knut (Gast)


Lesenswert?

Gut, dass du etwas für "größere Projekte" suchst hast du nicht erwänt. 
Mir ist keine Lösung bekannt, aber wenn du eine hast, auf jeden Fall 
posten!!!


Knut

von Stephan_II (Gast)


Lesenswert?

Hallo,

man kann mit ltspice Formeln angeben unter .op oder in der plot.defs ...

kann das sehr gute pdf tutorial auf elektronikschule empfehlen, siehe 
link:

http://www.elektronikschule.de/~krausg/LTSwitcherCAD/index_LTSwitcherCAD.html

dort ist an Beispielen auch angeben wie sowas geht.

Gruß

Stephan

von miko (Gast)


Lesenswert?

Es sollte wohl mit "User Defined Functions" zu machen sein, aber ich 
bekomme es nicht hin.

http://kom.aau.dk/faqomatic/cache/216.html


Diese hier habe ich als Funktion ausprobiert, aber keines davon 
funktioniert.
.func ur(V(us),V(uc)) {V(us)-V(uc)}
.func ur2(us,uc) {us-uc}
.func ur3=us-uc

Für die ersten beiden sagt LTSpice mir: "Trouble expanding user-defined 
function"

Niemand eine Idee?

von miko (Gast)


Lesenswert?

Oh, danke für die Antwort, das hat sich zeitlich überschnitten. Ich 
schaue jetzt mal dort!

von miko (Gast)


Lesenswert?

Stephan_II schrieb:
> man kann mit ltspice Formeln angeben unter .op oder in der plot.defs ...

Zumindest meine Richtung war schonmal richtig, an der plot.defs war ich 
auch gerade am hantieren. Allerdings bekomme ich es weiter nicht hin. 
Anhand der Hilfe und einigen Tutorials habe ich jetzt inzwischen 
folgende Funktionen ausprobiert:

.func ur(V(us),V(uc)) {V(us)-V(uc)}
.func ur2(us,uc) {us-uc}
.func ur3 (us-uc)
.func ur4 {V(us)-V(uc)}
.func ur5 {(us-uc)}

Bei allen erhalte ich:  "Trouble expanding user-defined function"
Was mache ich verkehrt? Ich habe nach dem Editieren der plot.defs 
LTSpice neu gestartet, wie im verlinkten Tutorial beschrieben ( 
http://www.elektronikschule.de/~krausg/LTSwitcherCAD/index_LTSwitcherCAD.html 
)

Allerdings ist die plot.defs ja eine globale Datei, sehe ich das 
richtig?



Stephan_II schrieb:
> man kann mit ltspice Formeln angeben unter .op oder in der plot.defs ...

Zum Einbinden mittels .op habe ich im verlinkten Tutorial dort nichts 
gefunden! Wie funktioniert das?

von miko (Gast)


Lesenswert?

Stephan_II schrieb:
> man kann mit ltspice Formeln angeben unter .op oder in der plot.defs ...

Zusatz: Da war bestimmt .options gemeint, nicht .op, oder?
Wobei ich zu .options auch nichts habe finden können, was mein Problem 
löst.

von miko (Gast)


Lesenswert?

Ich habe glaube ich eventuell verkehrt aufgerufen in "Add Traces to 
Plot"?!
Muss ich die abhängigen Variablen mit reinnehmen? Ich habe jetzt schon 
beides in Tutorials gefunden Allerdings klappt bei mir beides nicht.


.func ur(V(us),V(uc)) {V(us)-V(uc)}
Mit Aufruf: ur(V(us),V(uc))
Fehler: "Grammatical Error"
Mit Aufruf: ur
Fehler: "Trouble expanding user-defined function"

.func ur2(us,uc) {us-uc}
Mit Aufruf: ur2(us,uc)
Fehler: "Undefined Symbol" (Er kennt anscheinend "us" und "uc" nicht)
Mit Aufruf: ur2
Fehler: "Trouble expanding user-defined function"

von miko (Gast)


Lesenswert?

...bevor ich noch mehr Zeit verplempere, werde ich jetzt doch erstmal 
mit dem "Plot Settings File" arbeiten :/

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Man kann Spannungsdifferenzen direkt "proben".

Die Cursor-Probe(rot) über die Leitung Us. Linke Maustaste drücken und 
halten. Nach rechts auf die Leitung Uc ziehen (Probe wird schwarz). 
Linke Maustaste loslassen. Jetzt wird V(Us,Uc) geplotted. Was will man 
mehr.

Merke, V(a,b) ist die elegante Schreibweise für V(a)-V(b). Siehe Bild.


Mit dem plot defs file.

.func Ur() {(V(Us)-V(Uc))}

Zum Plotten dann Ur() eingeben.
Nachteil des Plot-def Files ist, das dieser zentral abgelegt ist und 
somit bei einer Neuinstallation weg ist. Deshalb sollte man solche 
Definitionen als Kommentar im Schaltplan ablegen.



Viel besser ist da der Plot-Settinsg File. Den speichert man im 
Schaltplanordner.

von miko (Gast)


Lesenswert?

Vielen Dank Helmut!

Genau so etwas einfaches wie dieses direkte "proben" habe ich gesucht!

Danke auch für die weiteren Erläuterungen. Das mit dem Plot Defs-File 
habe ich damit jetzt auch ans Laufen bekommen, aber zusammen mit deinem 
ersten Tipp finde ich das Plot Settings-File inzwischen doch auch 
eleganter.

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.