Forum: Analoge Elektronik und Schaltungstechnik Skalierungsprobleme mit ddt-Funktion (1. Ableitung) in LTSpice


von Third E. (third-eye)


Lesenswert?

Hallo,

ich habe eine Schaltung zu simulieren, bei der mich die Stromänderungen 
pro Sekunde interessieren.
Ich füge dafür immer gerne als Trace z.B. "d(I(R1))" hinzu.
Das funktioniert auch gut.

Aber jetzt brauche ich diese Stromänderung als Spannung in der 
Schaltung.
Wenn ich dafür eine "Arbitrary behavioral voltage source" verwende und 
als Funktion "V=ddt(I(R1))" eintrage, ist der Spannungsverlauf zwar 
qualitativ richtig, aber die Skalierung ist komplett falsch.
Ich habe festgestellt, dass dieser Skalierungsfehler abhängig von der 
Einstellung "Maximum timestep" ist.

Keinen Unterschied gibt es hingegen für die Einstellung des Solvers 
(Normal/ Alternate).

Bei Verwendung einer SPANNUNG funktioniert alles perfekt!

Kann mir jemand dieses Verhalten erklären?
Was ist bei Stromänderungen anders als bei Spannungsänderungen?

Danke
Third-Eye

: Bearbeitet durch User
von Helmut S. (helmuts)


Lesenswert?

Kannst du mal ein Beispiel(Datei.asc) anhängen?

von FelixW (Gast)


Lesenswert?

Glaskugel:
Stromverlauf hat Sprünge, dann ist die Höhe der Ableitung abhängig von 
der Schrittweite.

Bitte Beispiel :)

von Third E. (third-eye)


Angehängte Dateien:

Lesenswert?

Anbei die auf das Problem reduzierte .asc-Datei.

von Helmut S. (helmuts)


Lesenswert?

Hallo,

das ist in der Tat sehr seltsam. Ich habe jetzt mal dem Entwickler 
(Mike)von LTspice geschrieben und eine leicht modifizierte Version 
deiner Schaltung mitgeschickt. Mal sehen ...

Gruß
Helmut

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe jetzt mal selber eine Lösung gesucht.
Die Ableitung ddt() funktioniert richtig, wenn man eine Spannungsquelle 
als Strommesser benutzt wie es in klassischem SPICE üblich ist.
Ich erinnere mich, dass das auch in anderen Schaltungen mit B-Quellen 
manchmal vorteilhaft oder gar notwendig ist den Strom einer V-Quelle in 
der B-Formel zu verwenden.

Gruß
Helmut

von Michel M. (elec-deniel)


Lesenswert?

Hallo Helmut
jetzt gibt es wieder eine Fehlermeldung :-(
"V0: requires a minimum of 5 parameters. Only 4 specified."

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Michel M. schrieb:
> Hallo Helmut
> jetzt gibt es wieder eine Fehlermeldung :-(
> "V0: requires a minimum of 5 parameters. Only 4 specified."

Jemand hat Anfang letzten Jahres in irgend einem besonderen Fall von 
PULSE etwas nicht genau in SPICE definiertes angemeckert. Daraufhin hat 
der Entwickler als Lösung entschieden man müsste ab sofort mindestens 4 
Parameter einführen. Das war meiner Meinung nach die schlechtest 
mögliche Lösung, weil alle anderen SPICE-Programmen schon immer auch mit 
2 Parametern zufrieden waren. LTspice ist da jetzt inkompatibel bei 
PULSE bezüglich der minimalen Anzahl an Parametern.


Ich trage deshalb meistens bei width und period eine große Zeit ein die 
nie erreicht wird. Der Wert von Tfall ist in dem Fall auch egal, weil ja 
nicht so lange simuliert wird, dass Tfall zum tragen kommt.

PULSE (0 1 1n 1n 1n 100 200)

Ich weiß nicht mehr warum ich damals 1n delay benutzt habe.
DDT passt offenbar auch ohne delay.

PULSE (0 1 0 1n 1n 100 200)

: Bearbeitet durch User
von Michel M. (elec-deniel)


Lesenswert?

Hallo Helmut,
besten Dank für diese ausführliche und schnelle Antwort,
die sofort weitergeholfen hat.   Top !!!
... das erklärt jetzt auch einen anderen Simulations-Fall,
den ich mir bis jetzt nicht erklären konnte .....  :-)

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.