Modellierung eines Doppel-T-Glieds und wie man Part-Ströme einsetzt

Die folgende Skize wird uns als Ausgangspunkt für die weiteren Ableitungen dienen:

Wie man sieht, besteht dieses Netzwerk aus 2 parallel geschalteten Teilnetzwerken, nämlich ein
RCR-Glied (Netzwerk 1) und ein CRC-Glied (Netzwerk 2). In U(I)-Formulierung läßt sich solch
ein Teilnetzwerk sehr leicht beschreiben, deshalb wählen wir den Modelltyp LaplaceVolts aus. Für
das Gesamtnetzwerk wäre das aber sehr kompliziert, da wir keine Strom-Terme wie bei LaplaceCurrents
zusammen addieren können. Deswegen gibt es die Möglichkeit mit Hilfe sogenannter Part-Ströme
parallele Netzwerke getrennt für sich zu beschreiben. Die Part-Ströme werden dann nach Berechnung
einfach zum Pin-Strom zusammen addiert. Ie1/Ia1 bzw. Ie2/Ia2 sind diese Part-Ströme.

Erstmal leiten wir die U(I)-Gleichungen für das Teilnetzwerk 2 ab, nämlich (Ue,Ua) = f(Ie2,Ia2).

Wir setzen also an:

Formel (1) in Formel (2) eingesetzt ergibt:

Wegen der Symmetrie kann sofort für Ua geschrieben werden:

Die U(I)-Gleichungen für das Teilnetzwerk 1 (Ue,Ua) = f(Ie1,Ia1) erhält man durch Substitution:

Die Pin-Ströme erhält man aus der Summierung der Part-Ströme:

Wegen Verwendung der internen Masse (Pin 0) schreibt man die Bilanz-Strom-Gleichung so:

In den Script kann nun folgendes reingeschrieben werden:

#VarsAndConstants
C2 = 2*C
R2 = 0.5*R
beta = 1/C
beta2 = 1/C2
#End

#Volts
ue = u1 - u0
ua = u2 - u0
#End

#LaplaceVolts
; CRC-Part
ue = beta/s*i_e2 + R2*i_e2 + R2*i_a2
ua = beta/s*i_a2 + R2*i_a2 + R2*i_e2
; RCR-Part
ue = beta2/s*i_e1 + R*i_e1 + beta2/s*i_a1
ua = beta2/s*i_a1 + R*i_a1 + beta2/s*i_e1

; Add the PartCurrents
i1 = i_e1 + i_e2
i2 = i_a1 + i_a2

<i0 = -i1-i2>   ; kann auch weggelassen werden, da standartmäßig zur Masse abfließend
#End

Hier der vollständige Script DoubleTElement.selfdef. Das Element ist unter Data/Filter zu finden.

Bitte beachten: Part-Strom-Symbole müssen immer mit 'i_' beginnen. Beim Summieren der Part-Ströme
zum Pin-Strom ist nur die Addition (+) erlaubt !
Um den Term-Typ 7 verwenden zu können, mußte noch beta = 1/C bzw. beta2 = 1/C2 substituiert werden.
Part-Strom-Symbole können auch in #DefineStaticInfoText und #DefineDynCharts verwendet werden.

Um unser neues Element zu testen, bitte die Schaltung DocSamples/OV_DoubleTElement.circ öffnen:

Hier habe ich gleichmal 2 Schaltungen in einem Wisch erledigt, die Analyse des Übertragungsverhaltens
und der Einsatz als Filter in einer OV-Schaltung.

Nach Durchführung der LSA öffnen sich unter Anderem folgende Charts:

Das reine Übertragungs-Verhalten zeigt Analyser 2. Man erkennt, dass ein Doppel-T-Glied wie ein Sperrfilter wirkt.
Da sich dieses Element in der OV-Schaltung im Gegenkopplungs-Zweig befindet, wird eine Filter-Charakteristik
erreicht (Analyser 1). Die Bandbreite und Verstärkung wird von R1 und R2 stark beeinflußt.

Leitung mit Abschluß-Widerstand modellieren:

Part-Ströme können auch im LaplaceCurrents-Modell eingesetzt werden. Nur machen sie dort nicht wirklich einen
Sinn, da hier sowieso Strom-Terme addiert werden. Es gibt aber Fälle wo der Einsatz dennoch erforderlich ist, z.Bsp.
bei einer Leitung mit Abschluss-Widerstand.

Für die LaplaceCurrents-Modellierung machen wir folgende Skize:

Eine elektrische Leitung mit dem Wellenwiderstand Zw und der Laufzeit Tv ist am Ende mit einem Terminierungs-
widerstand RT abgeschlossen. ILin, ILout und IR sind die Part-Ströme. Zusätzlich müssen wir einen inneren
Knoten $1 verwenden, den wir gedanklich als Pin $1 herausziehen (das wurde ja schon besprochen).

Die Gleichungen für die Leitung in I(U)-Schreibweise (ILin, ILout) = f(Uin, Uout) lauten näherungsweise:

Die Dämpfung D wird näherungsweise aus dem ohmschen Leitungslängswiderstand berechnet.
Wie man sieht, sind diese Gleichungen rekursiv (Ströme stehen auf linker und auch rechter Seite). Die Ströme
auf der rechten Seite sind in der Vergangenheit zum Zeitpunkt t - 2Tv aktuell gewesen.
Die Gleichungen müssen deswegen immer in sich geschlossen so niedergeschrieben werden. Es darf kein
zusätzlicher Term auftreten, was ohne Part-Strom-Mechanismus nicht möglich gewesen wäre.

Für den Part-Strom IR können wir einfach festsetzen:

Nun müssen die Part-Ströme noch zusammen addiert werden, um den gewünschten Pin-Strom zu erhalten:

ILin hätten wir uns ersparen können, habe das aber der Übersichtlichkeit halber mal so gemacht.

Und zum Schluß noch die Bilanzstrom-Gleichungen:

In den Script können wir jetzt rein schreiben:

#VarsAndConstants
C0 = 300e6
tv = len/(vkf*C0)
D = exp(-0.5*Rs/ZW*len)
GW = 1/ZW
tv2 = 2*tv
beta2 = GW*D*D
beta3 = 2*GW*D
beta4 = D*D
GT = 1/RT
#End

#Volts
uin   = u1 - u2
uout = u$1- u0   ;$1: inner Pin at end of the eline,  0: inner Earth
#End

#LaplaceCurrents 

; electricline Part
i_lin   = GW*uin   + beta2*exp(-tv2*s)*uin   - beta3*exp(-tv*s)*uout + beta4*exp(-tv2*s)*i_lin
i_lout = GW*uout + beta2*exp(-tv2*s)*uout - beta3*exp(-tv*s)*uin  + beta4*exp(-tv2*s)*i_lout

; ir TerminationResist Part
i_r = GT*uout

; Add the Part-Currents
i1   = i_lin
i$1 = i_r + i_lout

<i2 = -i1>
<i0 = -i$1>
#End

Hier der vollständige Script ElectricLine_withTermination.selfdef.
Man erkennt, dass nach Substitution die Term-Typen 15 und 16 für die Verzögerungs-Terme Verwendung finden.

Man kommt auch ohne Part-Ströme aus, wenn man die Leitungs-Gleichungen so formuliert, dass die Spex-Terme
verwendet werden können. Diese Term-Typen sind erst später dazugekommen.
Also mal den Script ElectricLine_withTermination_Spex.selfdef anschauen.

Zum Abschluß testen wir noch das Ding mit der Schaltung DocSamples/Eline_with_Termination.circ:

Für das ELine-Element hab ich ein Standard-MBitmap verwendet. Wer möchte kann ja mal ein ordentliches
malen (ich bin zu Faul).

Nach Dyna öffnen die DynCharts Line1.Uin und Line1.Iin:

Durch Fehlanpassung an beiden Enden kommt es zu Reflexionen an beiden Enden, was das Überschwingen nach jeder
Signal-Flanke erklärt. Die blaugrüne Kurve habe ich übrigens mit der SnapShot-Funktion bei RT=60Ohm gespeichert.

Zurück zur Hauptseite