Über SPICE: Soll ich eine Transientenanalyse oder eine lineare Gleichstromanalyse verwenden?

7

Meine Frage bezieht sich speziell auf ein Prüfungsproblem, bei dem ich eine zeitliche Funktion für den Strom an einem Kondensator und einem Widerstand finden musste. Die Schaltung war sehr einfach: Eine zeitvariante Stromquelle in Reihe mit 2 Teilschaltungen, die jeweils aus einem Kondensator und einem parallel geschalteten Widerstand bestehen. Bitte sehen Sie die Abbildung unten:

Schaltkreis

Wenn ich diese Schaltung mit einer SPICE-Software simulieren möchte, sollte ich dann eine Transientenanalyse, eine lineare DC-Analyse oder eine andere Art von Analyse durchführen?

Wenn die Stromquelle sinusförmig wäre, würde ich eine Wechselstromanalyse verwenden, aber die Stromquelle führt einen Strom aus, der numerisch t (in Ampere) entspricht, wobei t die Zeit (in Sekunden) ist, die seit Beginn der Schaltung vergangen ist.

Unten habe ich meine Netzlistendatei geschrieben. Obwohl es sich nicht um eine gültige SPICE-Netzliste handelt, zeigt sie, was ich versuche. Konzentrieren Sie sich auf die aktuelle Quelle Iin :

CIRCUIT ANALYSIS
C2 0 2 20m
R2 0 2 3
Iin 0 1 {time}
R1 1 2 2
C1 1 2 50m

.TRAN 1us 100ms
.CONTROL
RUN
PLOT V(1)-V(2)
.ENDC

.END

Wenn Sie versuchen würden, diese Netzliste zu simulieren, würden Sie eine ähnliche Fehlermeldung erhalten (die ich mit ngspice erhalten habe ):

Original line no.: 4, new internal line no.: 5:
Undefined number [TIME]
Original line no.: 4, new internal line no.: 5:
Cannot compute substitute
 Copies=9 Evals=9 Placeholders=1 Symbols=0 Errors=2

Wie kann ich diese Art der Analyse erreichen?

Severo Raz
quelle

Antworten:

4

Die Gleichstromanalyse gibt Ihnen nur die Anfangsbedingungen für Gleichstrom-stationäre Werte an. Sie müssen eine transiente Analyse durchführen, um zu sehen, wie sich die Spannungen und Ströme mit der Zeit entwickeln . Die Wechselstromanalyse gilt nur für den sinusförmigen stationären Kleinsignalzustand. Es ist eine Frequenzbereichsanalyse.

Ich glaube, Sie müssen für Ihre aktuelle Rampe eine stückweise lineare Quelle ( PWL ) verwenden.

Alfred Centauri
quelle
Die Anfangsbedingungen können alles sein, was Sie oder der Simulator wollen. Wäre DC nicht der stationäre Wert?
Kellenjb
Sie haben Recht, und ich weiß nicht, warum ich das geschrieben habe. Die DC-Lösung ist natürlich der Endzustand, nachdem alle Transienten abgeklungen sind. Doh!
Alfred Centauri
Großartig! Mit der PWL-Analyse konnte ich genau das tun, was ich geplant hatte. Und ja, nach allem, was mir aufgefallen ist, scheint die lineare Gleichstromanalyse den Endzustand der Schaltung in jedem Punkt darzustellen.
Severo Raz
5

Am besten verwenden Sie eine transiente Analyse. Anstatt den Zeitparameter zu verwenden, können Sie die Stromquelle mit dem Impulsattribut einrichten und dann die Anstiegs- / Abfallzeit entsprechend angeben, wenn Sie eine Standardstromquelle (Ix) verwenden. Oder verwenden Sie eine beliebige Quelle (Bx) und drücken Sie das Signal mathematisch aus, indem Sie die Zeit als Parameter verwenden.

Hier ist beispielsweise die Netzliste für Ihre Schaltung in LTSPice unter Verwendung einer willkürlich verhaltensbezogenen Stromquelle:

* C:\Program Files\LTC\LTspiceIV\current rc.asc
R1 N002 N001 2
C1 N002 N001 50mF
R2 N002 0 3
C2 N002 0 20mF
B1 0 N001 I=time
.tran 0 15 1m uic
.backanno
.end

Hier ist die Simulation mit V1 - V2 dargestellt:

Handlung

Oli Glaser
quelle
Ist B nicht ein Refdes für einen Transistortyp?
Severo Raz
Nachdem ich einige Änderungen an der von Ihnen bereitgestellten Netzliste vorgenommen hatte, konnte ich sie erfolgreich verwenden. Es scheint, dass der .backannoBefehl und die .tranSyntax zwischen LTSpice und ngspice variieren. Ich würde Ihre Lösung auch als Antwort markieren, aber ich habe bereits eine Antwort akzeptiert: /
Severo Raz
4

Basierend auf Ihrer Beschreibung des Prüfungsproblems denke ich, dass eine vorübergehende Analyse immer noch das ist, wonach Sie suchen. In CircuitLab können Sie die Stromquelle einfach als Strom "T" definieren, um eine lineare Stromrampe proportional zur Simulationszeit zu erzeugen: (Klicken Sie hier für Schaltung und Simulation)

Stromrampe

Öffnen Sie die Transientensimulation und führen Sie sie aus:

aktuelles Rampendiagramm

Sie können auch die Ströme in jedem Element untersuchen. Wie zu erwarten ist, sind die Ströme in C1 und C2 konstant, während die Ströme in R1 und R2 linear mit der Zeit wachsen.

In Bezug auf die ngspice / netlist-Frage glaube ich, dass die zu suchenden Schlüsselwörter "Verhaltensquellen" sind. Auf dieser Seite finden Sie einige Beispiele (eines am Ende verwendet TIME als Variable).

compumike
quelle
Hm, leider kann ngspice dieses Beispiel nicht TIMEals Parameter ausführen . Ich erhalte den gleichen Fehler, den ich in meine Frage aufgenommen habe, es ist sehr unglücklich.
Severo Raz
1
Und ich hätte es fast vergessen, danke, dass du mir CircuitLab gezeigt hast! Ich könnte es in Zukunft verwenden.
Severo Raz