RLC-Schaltungen mit „kompliziert“ aufzustellenden DGLn

Werbung
R. Kessler, D:\579911612.doc, Seite 1 /13
Homepage: http://www.home.hs-karlsruhe.de/~kero0001/
RLC-Schaltungen mit „kompliziert“
aufzustellenden DGLn
In diesem Text werden für die auf dieser Seite zusammengestellten 12 RLC-Schaltungen die DifferentialGleichungen (abgekürt DGLn) aufgestellt. Zu jeder Schaltung wird ein Algorithmus zum numerischen Lösen
der DGLn formuliert. Die Algorithmen können mit dem Programm Tephys ausgeführt werden. Sowohl die
Dateien mit den Algorithmen als auch das Programm Tephys können runtergeladen werden.
Die Eingangspannung u0 kann beliebige Zeitfunktion u0(t) haben, für die Schaltelemente R, L, C kann man
beliebige Werte eingeben ( allerdings L > 0, C > 0).
Allen Schaltungen ist gemeinsam, dass das Aufstellen der Differentialgleichungen „kompliziert“ ist, weil
(zunächst) mehrere Ableitungen pro Gleichung auftreten.
Vgl. dagegen einfachere Schaltungen: http://www.home.hs-karlsruhe.de/~kero0001/aufst6/AufstDGL6hs.html
C1
R0
C1
R0
C2
u1
Lk
M1
u2
RA
u0
uA
RLk
M1
Nr 1 Hochpass CLC-T-Glied
R0
i2
u2
L1
RL1
L2
RL1
L2
RA
uA
u0
M2
iC1 C1
i1
i1
L3
RA
RL1
RL2
M2
M1
uA
RL1
M1
M2
RL2
Nr 5 Hochpass, 2 LCL-Pi-Glieder
C3 R3
C2 R2
i2
L2
u1
L1
u0
RL3
M3
iC1 C1 R1
R0
i3
u2
L2
L1
u0
R2
i2
u1
L2
uA
RL2
M2
Nr 4 Hochpass LCL-Pi
C2
R1
RA
R1
u
RL1
M1
Nr 3 Hochpass, CLC-Pi-Glied
R0
uA
i2
i1
L1
RL2
M1
C
iC
R0
u
RA
M3
Nr 2 Hochpasss 2 CLC-T-Glieder (erschwert infolge R2)
i2
i1
u3
RL2
M2
C
iC
L1
u0
u1
C3
K2
i1
ik
u0
C2
R2
K1
u2
i3
L3
i4
u3
i5
u4
L4
RL4
RL3
M3
C5 R5
C4 R4
L6
RA
uA
RA
uA
RL6
M6
RL5
M4
i6
u5
L5
M5
Nr 6 Hochpass, 5 LCL-Pi-Glieder
ik Lk
Ck1
K1
R0
Ck2
K2
R0
K3
Ck
u0
i2
i1
u1 L1
C1
uk1
i3
uk2
u2 L2
C2
RL1
u3 L3
C3
RL2
RA
uA
L1
u0
C1
L1
C2
i1
L2
uk
Ck
u0
R0
Rk
u2
RA
uA
L1
C1
RL1
M1
M2
u0
RLk
Nr 9 Bandpass T
i1
L1
u1
M1
u1
K2
R1
uk
R2
M2
i2
u2 L2
C2
RA
uA
RL2
M3
RL2 i2 L2
K
R1 C1
R2 C2
C2
ik
iC1
Lk
Ck
ik
iC2
R0
ik
u0
Lk
iC1
RL1 i1 L1
L2
K
C1
iC1
u2
C2
Nr 10 Bandpass Pi
i2
R0
Ck
K1
i1
Lk
u1
Nr 8 Bandsperre Pi
i2
ik
u1
L2
uk
C1
RL3
Nr 7 Bandpass 2 Pi-Glieder, kapazitiv gekoppelte Parallel-Schwingkreise
R0
i2
i1
u2
uk
Nr 11 Bandsperre T
RA
uA
u0
u1
Lk
iC2
u2
RLk
M1
Ck
uk
RA
M2
Nr 12 Bandsperre T (mit zusätzlichen Widerständen)
uA
R. Kessler, D:\579911612.doc, Seite 2 /13
Bekanntlich erhält man die Differential-Gleichungen einer aus Widerständen (R), Spulen (L) und
Kondensatoren (C) bestehenden elektrischen Schaltung dadurch, dass man für jeden (unabhängigen)
„Energiespeicher“ eine „Zustandsvariable“ einführt und durch Anwendung des
„Knotensatzes“ (= Ladungs-Erhaltungs-Satz: Summe aller zu einem Knoten fließenden Ströme = 0)
und des
„Maschensatzes“ (= Energie-Erhaltungs-Satz: Summe aller Spannungen in einer Masche = 0)
ein System von DGLn aufstellt, in dem für jede Zustandsvariable je eine DGL erster Ordnung enthalten ist. Dabei
dürfen diese DGLn nur je eine Zeitableitung enthalten.
Energiespeicher sind die Spulen und die Kondensatoren. Die Widerstände sind keine Energiespeicher, sondern
Energieverbraucher. Jeder Spule Lk wird ihr Spulenstrom ik, jedem Kondensator Cj wird die an ihm liegende
Spannung uj als Zustandvariable zugeordnet (vgl. die obigen Schaltungen: Dort sind die Zustandsvariablen in die
Schaltung eingetragen. Den Widerständen wird keine Zustandsvariable zugeordnet.
R
i
Ru= R * i
L
i
uL= L *di/dt
C
iC = C * duC/dt
Widerstand R : Spannung an R ist uR = R * i
Spule L :
Spannung an L ist uL = L * di/dt
Kondensator C: Strom durch C ist iC = C * duC/dt
uC
Damit die zu berechnende Schaltung für beliebige Zeitfunktionen der Signalquellen gilt, wird beim Aufstellen der
DGLn darauf geachtet, dass nicht nach der Quellspannung u0 differenziert wird, denn die Signalquelle könnte ja
eine unstetige Funktion sein, z.B. eine Funktion mit „Sprüngen“ (etwa Rechteckfunktion). Die Zeitableitung eines
solchen Sprunges würde an den Sprungstellen unendlich große Werte annehmen, was „physikalisch“ unzulässig
wäre.
Bei den in diesem Text behandelten Schaltungen ist das Aufstellen der DGLn dadurch erschwert, dass (zunächst)
mehrere zeitliche Ableitungen in einer Gleichung auftreten. Durch „physikalische“ Überlegungen, insbesondere
sofortige Anwendung des Knotensatzes und durch die „Masche über alles“ und gelegentlich durch Einführen von
Hilfsgrößen gelingt es aber, die erforderliche Struktur der DGLn zu erhalten, nämlich nur je eine Ableitung pro
Gleichung.
Diese Methode zum Aufstellen der DGLn ist viel anschaulicher und einfacher als etwa durch „formales
algebraisches“ Lösen eines linearen Gleichungs-Systems (etwa mit Hilfe des Gauß- Algorithmus) die gewünschte
Struktur zu erhalten, nämlich nur je eine Ableitung pro Gleichung.
Zur Schreibweise in diesem Text: Die zeitliche Ableitung der Größe x wird mit dx/dt bezeichnet, gelegentlich
auch abgekürzt als x’ = dx/dt.
Ein paar Bemerkungen zur LAPLACE- Transformation:
In vielen Texten, insbesondere in der Regelungstechnik und der Systemtheorie, wird die LAPLACETransformation als ein „unentbehrliches“ Mittel angepriesen, um dynamische Vorgänge zu berechnen. Leider ist
der zugehörige Aufwand selbst für vergleichsweise simple Schaltungen sehr beachtlich und sehr unanschaulich. Oft
wird empfohlen, einen geeigneten Taschenrechner (für einige 100 EURO) zu verwenden.
Eine Bitte des Verfassers: Wenn ein geneigter Leser eine der in diesem Text vorgestellten Schaltungen mit seiner
geliebten LAPLACE-Transformation zu berechnen in der Lage ist, dann möge er mir bitte per E-Mail seine
Ergebnisse mitteilen [email protected] Aber dabei sollten, wie im vorliegenden Text, die
Schaltungsparameter (R, L, C) und die Zeitabhängigkeit der Eingangs-Spannung u0(t) „beliebig vorgebbar“
sein. Z.B. u0 = gedämpfter Sinus + Dreieck + Rechteck + Rauschen +...
Jetzt einige Bemerkungen zum Simulations-Programm PSPICE. Im Gegensatz zur LAPLACE-Transformation ist
die Berechnung dieser Schaltungen mit PSPICE überhaupt kein Problem. Selbst mathematische Laien könnten mit
PSPICE diese Schaltungen berechnen und dabei die Parameter nach Herzenslust variieren.
Wenn PSPICE das alles so einfach kann: Wozu dann überhaupt die DGLn dieser Schaltungen aufstellen und
mit einem geeigneten Simulationsprogramm numerisch lösen? PSPICE hat den Vorteil, dass man die
mathematischen Hintergründe nicht zu wissen braucht. Das ist aber eigentlich auch ein Nachteil, denn man
versteht eigentlich nicht, wie PSPICE das macht. Ein Nachteil von PSPICE: Es kann (von Haus aus) nur
elektrische Schaltungen berechnen, nicht aber etwa mechanische oder etwa thermische. Will man auch solches
mit PSPICE berechnen, muss man die Mathematik dieser Vorgänge verstehen und dann PSPICE diese Mathematik
„unterjubeln“. Allerdings hat dann PSPICE gegenüber anderen Simulationsprogrammen keinen Vorteil mehr.
Auf jeden Fall muss man dann die DGLN aufstellen und numerisch lösen. Drum hier die Übung des
Aufstellens der DGLn und der Formulierung eines numerischen Algorithmus.
R. Kessler, D:\579911612.doc, Seite 3 /13
1 Hochpass, CLC-T-Glied
R0
C1
K
C2
ik
u0
u1
M1
Lk
u2
RA
uA
RLk
Masche über alles:
u0= R0*iR0 + u1 + u2 + RA*iRA mit den Strömen iR0 und iRA:
iR0 = C1*u1’, iRA= C1*u1’ – ik
(mit der Abkürzung u1’=du1/dt )
=> u0 = R0 *C1*u1’ +u1 +u2 + RA*( C1*u1’ –ik)
= ( R0+RA)*C1*u1’ +u1 + u2 – RA*ik =>
C1 * du1/dt = 1/(R0+RA) * (u0-u1 –u2 + RA* ik )
( DGL für u1 )
Masche M1: u0 = R0*C1*u1’ + u1 + Lk* dik/dt + RLk*ik => mit Verwendung der obigen Formel für C1*u1’
Lk*dik/dt = u0 – u1 – RLk * ik – R0*/(R0+RA) * (u0 – u1 – u2 + RA* ik )
Knoten K:
C2*du2/dt =
Strom durch C1
– Strom durch Lk : =>
C2*du2/dt = 1/(R0+RA) * (u0-u1 –u2 + RA* ik ) – ik
( DGL für ik )
( DGL für u2 )
Tephys-Algorithmus :
d=drei(fd*t)
u0 = aP*ja(t-t1)*ja(t2-t) + aD*d + aR*sign(d-sw))+aS*sin(fs*t+phis)
u1 = u1+ 1/(R0+RA) * (u0-u1-u2+RA*ik) *dt/C1
ik = ik + ( u0-u1-RLk*ik – R0/(R0+RA)*(u0-u1-u2+RA*ik) )*dt/Lk
u2 = u2 + (1/(R0+RA) * (u0-u1 –u2 + RA* ik ) -ik) *dt/C2
uA= RA*( C1/(R0+RA) * (u0-u1-u2+RA*ik) - ik)
uA richtig??
t = t+dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
Bemerkungen zu einigen Tephys-Funktionen:
ja(x): if x > 0 then ja = 1 else ja = 0
sign(x): if x > 0 then sign = 1 else if x < 0 then sign = -1 else if x = 0 then sign = 0
drei(fd*t) = Dreieck mit Amplitude 1 und Frequenz f d
Im obigen Algorithmus ist also die Eingangs-Spannung u0(t) die Addition eines Rechteckimpulses (Höhe aP im
Zeitbereich t1 bis t2), einer Dreieckfunktion (Amplitude aD, Frequenz fd), einer Rechteckfunktion (Amplitude +/aR, Frequenz fr) und einer Sinusfunktion (Amplitude aS, Frequenz fs, Phase phis).
Der Algorithmus zum Lösen der DGLn erfolgt hier nach dem einfachen Schema: aus dx/dt = F ,=> dx=F*dt =>
Prinzip des Algorithmus x(neu) = x(alt) + F*dt oder als „Anweisung“ x = x + F*dt , d.h. ersetze den alten Wert
von x durch den neuen Wert x + F*dt.
R. Kessler, D:\579911612.doc, Seite 4 /13
2 Hochpass 2 CLC-T-Glieder
R0
C1 iC1 K1
R2
(Im Vergleich zu Nr 1 mit Erschwernis infolge R2 )
C2
K2
i1
u1
u0
M1
L1
RL1
C3
i2
u2
M2
L2
RL2
u3
RA
uA
M3
Einführen der Hilfsgröße iC1 ( = Strom durch Kondensator C1, s. Figur).
Mit iC1 –i1 = Strom durch R2 und iC1- i1 –i2 = Strom durch RA wird die
Masche über alles:
u0 = R0*iC1 + u1 + R2*(iC1 – i1) + u2 + u3 + RA * (iC1 – i1 – i2 ) =>
u0 = (R0 +R2 +RA)* iC1 + u1 –R2*i1 + u2 + u3 - RA*(i1+i2)
=> iC1 = 1/(R0+R2+RA) * ( u0 – u1 –u2 – u3 + R2*i1 + RA* ( i1+ i2 ) )
=> C1*du1/dt = iC1
Masche M1: u0 = R0 * iC1 + u1 + L1*di1/dt + RL1*i1
=> L1*di1/dt = u0 – R0*iC1 –u1 - RL1*i1
( Hilfsgröße iC1 )
( DGL für u1 )
( DGL für i1 )
Masche M1+M2: u0 = R0*iC1 +u1 + R2*(iC1 - i1) +u2 + L2*di2/dt +RL2*i2
=> L2*di2/dt = u0 - (R0 +R2)*iC1- u1 - u2 + R2*i1 –RL2*i2
( DGL für i2 )
Knoten K1: C2*du2/dt = iC1 – i1
( DGL für u2 )
Knoten K2: C3*du3/dt = iC1 – i1 - i2
( DGL für u3 )
Tephys-Algorithmus mit Runge-Kutta: Tephys-Datei 2_1.txt
DGL = 0
{Beginn der Runge-Kutta-Schleife }
d = drei(fd*t+del)
u0 = aP*ja(t - t1)*ja(t2 - t) + aD*d + aR*sign(d-sw) + aS*sin(2*pi*fS*t+phis)
iC1 = 1/(R0+R2+RA) * ( u0 – u1 –u2 – u3 + R2*i1 + RA* ( i1+ i2 ) )
u1 = rk ( iC1/C1 )
i1 = rk ( (u0 – R0*iC1 - u1 – RL1*i1) / L1 )
i2 = rk ( (u0 - (R0 +R2)*iC1- u1 - u2 + R2*i1 – RL2*i2 )/L2 )
u2 = rk ((iC1 –i1)/C2 )
u3 = rk ( (iC1 – i1 –i2)/C3 )
END =0
{Ende der Runge-Kutta-Schleife }
uA = RA*(iC1-i1-i2)
t = t+dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
Bemerkungen zur Tephys-Formulierung des Runge-Kutta–Algorithmus:
Zwischen den Zeilen DGL=0 und END = 0 wird der Runge-Kutta-Algorithmus abgearbeitet. Es liege das DGLSystem dx/dt = A, dy/dt= B, dz/dt = C vor. Dabei können A, B, C irgendwelche Funktionen der Zeit und der
gesuchten Größen (hier x, y, z ) sein. Zur Lösung dieses DGL-Systems werden die Formeln x=rk(A), y=rk(B),
z=rk(C) zeilenweise zwischen den Zeilen DGL=0 und END=0 eingegeben.
R. Kessler, D:\579911612.doc, Seite 5 /13
3 Hochpass LCL-Pi -Glied
R0
C
iC
i1
L1
u
RL1
M1
M2
u0
i2
L2
RA
uA
RL2
Masche über alles: u0 = R0*(i1 + iC) + u + RA*(iC – i2)= (R0+RA)* iC +u + R0*i1- RA* i2 =>
iC= C* du/dt = 1/(R0+RA) * ( u0-u-R0*i1+RA*i2)
Masche M1: u0 = R0*(i1+iC) + L1*di1/dt + RL1* i1
L1*di1/dt = u0 - R0*(i1+iC) – RL1*i1
( DGL für u ) ( Hilfsgröße iC )
=>
( DGL für i1 )
Maschen M1+M2: u0 = R0*(i1+iC) +u +L2*di2/dt + RL2*i2 =>
L2*di2/dt = u0 – R0 *( i1+iC) – u – RL2 * i2
Ausgangsspannung
uA=RA*(iC-i2)
( DGL für i2 )
Tephys-Algorithmus mit Runge- Kutta:
DGL = 0
u0 = aP*ja(t-t1)*ja(t2-t) { hier könnten noch weitere Signalfunktionen stehen, vgl. Schaltung 2 }
iC = 1/(R0+RA) * ( u0-u-R0*i1+RA*i2)
u = rk ( iC/C )
i1 = rk ( (u0 - R0*(i1+iC) – RL1*i1 )/L1 )
i2 = rk ( (u0 – R0 *( i1+iC) – u – RL2 * i2 )/L2 )
END = 0
uA = RA * (iC - i2)
t = t+dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
4 Hochpass LCL-Pi
(Im Vergleich zu Nr 3 mit Erschwernis infolge R1 )
iC C R1
R0
i1
u0
L1
RL1
M1
i2
u
M2
L2
RA
uA
RL2
Masche über alles: u0 = R0*(i1+iC) + u + R1*iC + RA*(iC-i2) = R0*i1 + (R0+R1+RA)*iC + u –RA*i2
=> iC = C*du/dt = 1/(R0+R1+RA) * ( u0 - R0*i1 – u + RA*i2 )
Masche M1: u0= R0*(i1+iC) +L1*di1/dt + RL1* i1 =>
L1*di1/dt = u0 – R0*(i1+iC) - RL1*i1
( DGL für u und Hilfsgröße iC )
( DGL für i1 )
Maschen M1+M2: u0 = R0*(i1+iC) + u + R1*iC + L2*di2/dt + RL2*i2 =>
L2*di2/dt = u0 – R0*(i1+iC) - u – R1*iC - RL2*i2
( DGL für i2 )
Tephys-Algorithmus mit Runge-Kutta: (Tephys-Dateien 4_1.txt, 4_2.txt)
DGL = 0
d = drei(fD*t+del)
u0 = aP* ja(t-t1)*ja(t2-t)+ aD*d + aR*sign(d-sw) + aS*sin(2*pi*fS+t)
iC = 1/(R0+R1+RA) * (u0-R0*i1-u+RA*i2)
u = rk(iC/C)
i1 = rk( (u0 – R0*(i1+iC) - RL1*i1 )/L1 )
i2 = rk( (u0 – R0*(i1+iC) - u – R1*iC - RL2*i2 )/L2 )
End = 0
uA = RA*(iC-i2)
t = t + dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
R. Kessler, D:\579911612.doc, Seite 6 /13
5 Hochpass aus zwei LCL-Pi-Gliedern
R0
iC1
i1
u0
C1
C2
R1
R2
i2
u1
L1
L2
RL1
RL2
i3
u2
L3
RA
M1
M2
uA
RL3
M3
Nr 5 Hochpass, 2 LCL-Pi-Glieder
Man wird erkennen, dass nach der folgenden Methode auch für „beliebig viele“ solcher Pi-Glieder die DGLn
aufgestellt und gelöst werden können:
Masche über alles: u0 = R0*( i1+ iC1 ) + u1 + R1*iC1 + u2 + R2* (iC1 – i2) + RA*( iC1 – i2 - i3 ) =>
u0 = (R0+R1+R2+RA)*iC1 + R0*i1+ u1 + u2 - R2*i2 – RA*(i2+i3) =>
iC1 = 1/( R0+R1+R2+RA ) * ( u0 – R0 *i1 –u1 - u2+ R2*i2 + RA*(i2 + i3) )
=> C1*du1/dt = iC1
Masche M1: u0 = R0 * (i1 + iC1) + L1* di1/dt + RL1 * i1 =>
L1 * di1/dt = u0 – R0 * (i1+iC1) – RL1 * i1
( Hilfsgröße iC1 )
( DGL für u1 )
( DGL für i1 )
Maschen M1…M2: u0 = R0*(i1 + iC1) + u1 + R1 * iC1 + L2 * di2/dt + RL2*i2 =>
L2 * di2/dt = u0 – R0*(i1+iC1) –u1 –R1*iC1 –RL2*i2
( DGL für i2 )
Maschen M1…M3: u0 = R0*(i1+iC1) + u1 + R1*iC1 + u2 + R2 *( iC1-i2) + L3*di3/dt + RL3*i3 =>
L3*di3/dt = u0 – (R0 + R1 + R2 )*iC1 – R0*i1 –u1 – u2 + R2*i2 – RL3*i3
( DGL für i3 )
C2* du2/dt = iC1 – i2
Ausgangsspannung
( DGL für u2 )
uA = RA * ( iC1 - i2 - i3 )
Tephys-Algorithmus mit Runge-Kutta: Tephys-Dateien
5_1.txt,
HP2LCL1.txt
DGL = 0
d = drei(fD*t+del)
u0 = aP * ja(t-t1)*ja(t2-t) +aD*d + aR*sign(d-sw) +aS*sin(2*pi*fS*t)
iC1 = 1/( R0+R1+R2+RA ) * ( u0 – R0 *i1 - u1 – u2 + R2*i2 + RA*(i2 + i3) )
u1 = rk (iC1/C1)
i1 = rk( ( u0 – R0 * (i1+ iC1) – RL1 * i1 ) / L1)
i2 = rk ( (u0 – R0*(i1+iC1) –u1 –R1*iC1 –RL2*i2 )/L2)
i3 = rk( (u0 – (R0 + R1 + R2 )*iC1 – R0*i1– u1– u2 + R2*i2– RL3*i3 )/L3)
u2 = rk (( iC1 – i2 – i3 )/C2 )
END = 0
uA = RA * (iC1 – i2 – i3 )
t = t + dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
R. Kessler, D:\579911612.doc, Seite 7 /13
6 Hochpass aus 5 LCL-Pi-Gliedern
R0
iC1
i1
C1
u1
L1
u0
M1
R1
C2
i2
L2
u2
RL2
RL1
M2
R2
i3
L3
C3
u3
i4
L4
C4
u4
RL4
RL3
M3
R3
M4
R4
i5
L5
C5
R5
i6
u5
L6
uA
RL6
RL5
M5
RA
M6
An diesem Beispiel aus 5 LCL-Pi-Gliedern soll demonstriert werden, dass die an 2 LCL-Pi-Gliedern benutzte
Methode auch für beliebig viele LCL-Pi-Glieder zum Ziele führt, nämlich zum Aufstellen des DGL-Systems
Masche über alles:
u0 = R0*( i1+ iC1 )+u1+R1*iC1+u2+R2*(iC1–i2) +u3+R3*(iC1-i2-i3)
+ u4+R4*(iC1-i2-i3-i4)+u5+R5*(iC1-i2-i3-i4-i5)+ RA*( iC1–i2-i3-i4-i5-i6)
iC1 ausklammern:
u0 = (R0+R1+R2+R3+R4+R5+RA)*iC1+u1+u2+u3+u4+u5 + R0*i1
- (R2+R3+R4+R5+RA)*i2 - (R3+R4+R5+RA)*i3 - (R4+R5+RA)*i4 - (R5+RA)*i5 - RA*i6
=>
iC1 = 1/( R0+R1+R2+R3+R4+R5+RA ) *( u0 – u1-u2-u3-u4-u5-R0 *i1
+ (R2+R3+R4+R5+RA)*i2 + (R3+R4+R5+RA)*i3 +(R4+R5+RA)*i4 +(R5+RA)*i5 +RA*i6 ) { Hilfsgröße iC1 }
Mit Hilfe von iC1 können alle DGL des Systems leicht formuliert werden:
Zunächst Einführen der „Kondensatorströme“ für die übrigen Kondensatoren:
iC2= iC1 - i2; iC3= iC2 - i3; iC4= iC3 - i4; iC5= iC4 - i5;
{ zusätzliche Hilfsgrößen iC2, iC3, iC4, iC5 }
Damit hat man die DGLn für die Kondensatorspannungen u1...u5 :
C1*du1/dt = iC1 ; C2*du2/dt = iC2; C3*du3/dt = iC3; C4*du4/dt = iC4; C5*du5/dt = iC5
( DGLn für u1, u2, u3, u4, u5 )
Aus den Maschen bekommt man die DGLn für die Ströme i1...i6 :
M1:
M1..M2:
M1..M3:
M1..M4:
M1..M5:
M1..M6:
u0=R0*(iC1+i1)+L1*di1/dt+RL1*i1
u0=R0*(iC1+i1)+u1+R1*iC1+L2*di2/dt+RL2*i2
u0=R0*(iC1+i1)+u1+R1*iC1+u2+R2*iC2+L3*di3/dt+RL3*i3
u0=R0*(iC1+i1)+u1+R1*iC1+u2+R2*iC2+u3+R3*iC3+L4*di4/dt+RL4*i4
u0=R0*(iC1+i1)+u1+R1*iC1+u2+R2*iC2+u3+R3*iC3+u4+R4*iC4+L5*di5/dt+RL5*i5
u0=R0*(iC1+i1)+u1+R1*iC1+u2+R2*iC2+u3+R3*iC3+u4+R4*iC4+u5+R5*iC5+L6*di6/dt+RL6*i6
Tephys-Algorithmus mit Runge-Kutta: Tephys-Dateien 6_1.txt, 6_2.txt
DGL=0
d= drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
Teil1= u0 – u1-u2-u3-u4-u5-R0 *i1 + (R2+R3+R4+R5+RA)*i2
Teil2= (R3+R4+R5+RA)*i3 +(R4+R5+RA)*i4 +(R5+RA)*i5 +RA*i6
iC1= (Teil1+Teil2)/( R0+R1+R2+R3+R4+R5+RA )
iC2= iC1-i1
iC3= iC2-i3
iC4= iC3-i4
iC5= iC4-i5
u1= rk(iC1/C1)
u2= rk(iC2/C2)
u3= rk(iC3/C3)
u4= rk(iC4/C4)
u5= rk(iC5/C5)
i1= rk((u0-R0*(iC1+i1)-RL1*i1 )/L1)
i2= rk((u0-R0*(iC1-i1) - u1-R1*iC1- RL2*i2 )/L2)
i3= rk((u0-R0*(iC1+i1) - u1-R1*iC1-u2-R2*iC2 - RL3*i3 )/L3)
i4= rk((u0-R0*(iC1+i1) - u1-R1*iC1-u2-R2*iC2 –u3-R3*iC3– RL4*i4 )/L4)
i5= rk((u0-R0*(iC1+i1) - u1-R1*iC1-u2-R2*iC2 –u3-R3*iC3-u4-R4*iC4– RL5*i5 )/L5)
i6= rk((u0-R0*(iC1+i1) - u1-R1*iC1-u2-R2*iC2 –u3-R3*iC3-u4-R4*iC4-u5-R5*iC5– RL6*i6 )/L6)
END=0
uA= RA*(iC5-i6)
t = t+dt {Diese Gleichungen werden so oft wiederholt, bis t größer als die Maximalzeit tmax ist}
( DGL für i1 )
( DGL für i2 )
( DGL für i3 )
( DGL für i4 )
( DGL für i5 )
( DGL für i6 )
R. Kessler, D:\579911612.doc, Seite 8 /13
7 Bandpass: 2 Pi-Glieder aus kapazitiv gekoppelten Parallel-Schwingkreisen
K1
R0
Ck1
i1
C1
u1
L1
u0
RL1
Ck2
K2
K3
i2
uk1
C2
u2
L2
RL2
i3
uk2
C3
L3
u3
RL3
RA
uA
Nr. 7
Bandpass
Eigenschaften der Schaltungs-Struktur: 8 Energiespeicher. Aber die Kondensatoren Ck1 und Ck2 sind keine
„unabhängigen“ Energiespeicher, denn uk1 = u1 - u2 und uk2 = u2-u3. Es liegen also nur 6 unabhängige
Energiespeicher vor, nämlich C1, L1, C2, L2, C3 und L3. Also ist für die entsprechenden Zustandsvariabeln u1,
i1, u2, i2, u3 und i3 je eine DGL 1. Ordnung aufzustellen. Einfach sind nur die DGL für i1, i2 i3 zu finden:
L1*di1/dt + i1*RL1 = u1, L2*di2/dt + RL2*i2 = u2, L3*di3/dt + RL3*i3 = u3.
( DGLn für i1, i2, i4 )
Es müssen also noch die DGLN für u1, u2, u3 gefunden werden. ( Wieder die Schreibweise x’ = dx/dt )
Knoten K1:
(u0 - u1)/R0 = C1*u1’ + i1 + Ck1*(u1’ – u2’) = i1 + (C1+Ck1)*u1’ – Ck1*u2’
=> (1) (u0-u1)/R0 = i1 + (C1+Ck1)*u1’ – Ck1*u2’
Knoten K2:
Ck1*(u1’-u2’) = C2*u2’ + i2 + Ck2*(u2’-u3’) =>
=> (2) Ck1*u1’ = (Ck1+C2+Ck2)*u2’ – Ck2*u3’ + i2
Knoten K3:
Ck2*(u2’-u3’) = C3*u3’ + i3 + u3/RA =>
=> (3) Ck2*u2’ = (Ck2+C3)*u3’ + i3 + u3/RA
Aus den 3 Gleichungen (1), (2), (3) erkennt man das Lösungsprinzip, um u1’, u2’, u3’ zu gewinnen:
Aus (1) setzt man u1’ und aus (3) setzt man u3’ ein in die Gl. (2). Damit ist aus (2) eine Gl. für u2’ allein geworden,
dies u2’ setzt man dann in die Gl. für u1’ und für u3’ ein und hat damit auch u1’ und u3’. Ausführung:
Aus (1) folgt Gleichung für u1’: u1’ = 1/(C1+Ck1) * ( (u0-u1)/R0 –i1 +Ck1*u2’ )
Aus (3) folgt Gleichung für u3’: u3’ = 1/(Ck2+C3) * ( Ck2*u2’ – i3- u3/RA)
Jetzt diese Ausdrücke u1’ und u3’ einsetzen in (2):
Ck1/(C1+Ck1) * ( (u0-u1)/R0 –i1 +Ck1*u2’ ) =
(Ck1+C2+Ck2)*u2’ + i2 – Ck2/(Ck2+C3) * ( Ck2*u2’ – i3- u3/RA)
u2’ ausgeklammert:
u2’*( Ck1+C2+Ck2 –Ck1*Ck1/(C1+Ck1) – Ck2*Ck2/(Ck2+C3) ) =
Ck1/(C1+Ck1)*( (u0-u1)/R0-i1) - i2 - Ck2/(Ck2+C3) * (i3+u3/RA)
Mit der Ablürzung K2= ( Ck1+C2+Ck2 –Ck1*Ck1/(C1+Ck1) –Ck2*Ck2/(Ck2+C3) )
hat man also die DGL für u2:
u2’ = 1/K2*( Ck1/(C1+Ck1)*( (u0-u1)/R0-i1) - i2 - Ck2/(Ck2+C3) * (i3+u3/RA) )
( DGL für u2 )
und diesen Ausdruck u2’ eingesetzt in die beiden oben schon berechneten Formeln für u1’ und u3’:
u1’ = 1/(C1+Ck1) * ( (u0-u1)/R0 –i1 +Ck1*u2’ )
( DGL für u1 )
u3’ = 1/(Ck2+C3) * ( Ck2*u2’ – i3- u3/RA)
( DGL für u3 )
Tephys-Algorithmus mit Runge-Kutta: Datei 7_1.txt Problem: Division durch Null
DGL=0
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
K2= ( Ck1+C2+Ck2 –Ck1*Ck1/(C1+Ck1) – Ck2*Ck2/(Ck2+C3) )
u2’ = 1/K2*(Ck1/(C1+Ck1)*((u0-u1)/R0-i1)- i2-Ck2/(Ck2+C3)*(i3+u3/RA))
u1= rk (1/(C1+Ck1) * ( (u0-u1)/R0 –i1 +Ck1*u2’ ) )
u2 = rk ( u2’)
u3 = rk ( 1/(Ck2+C3) * ( Ck2*u2’ – i3- u3/RA))
i1 = rk ( (u1- RL1*i1 )/L1 )
i2 = rk ( (u2- RL2*i2 )/L2 )
i3 = rk ( ( u3-RL3*i3 )/L3 )
END=0
uA=u3
t=t+dt
R. Kessler, D:\579911612.doc, Seite 9 /13
8 Bandsperre Pi
( Reihenschwingkreise als Querglieder, Parallel-Schwingkreis als Längsglied)
ik
Lk
R0
Ck
i1
i2
iCk
L1
u0
C1
M1
L2
uk
u1
C2
M2
RA
uA
u2
Nr 8 Bandsperre Pi
Einfach sind die DGLn für u1, u2, ik aufzustellen:
C1 * du1/dt = i1
C2 * du2/dt = i2
Lk * dik/dt = uk
( DGL für u1 )
( DGL für u2 )
( DGL für ik )
Hilfsgröße einführen: iCk = Strom durch Kondensator Ck (s. Figur)
Mit i1+ik+iCK = Strom durch R0 und mit ik+iCk-i2 = Strom durch RA wird die
Masche über alles: u0 = R0 * (i1 + ik + iCk) + uk + RA* ( ik + iCk – i2)
= (R0 + RA)* iCk + R0*(i1+ik) +RA*(ik –i2)
=> iCk = 1/(R0+RA) * (u0 –R0*(i1+ik) - RA*(ik – i2) )
(Hilfsgröße iCk)
Damit hat man die DGL für uk erhalten: Ck*duk/dt = iCk.
( DGL für uk )
Masche M1:
u0 = R0*(i1+ik+iCk) + L1*di1/dt + u1
Masche M1…M2: u0 = R0*(i1+ik+iCk) + uk + L2*di2/dt + u2
Tephys-Algorithmus mit Runge-Kutta:
DGL = 0
d=drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+ aR*sign(d-sw)+aS*sin(2*pi*fS*t)
iCk = 1/(R0+RA) * (u0 –R0*(i1+ik)-RA*(ik – i2) )
u1 = rk ( i1/C1 )
u2 = rk ( i2/C2 )
ik = rk ( uk/Lk )
uk = rk ( iCk/Ck )
i1 = rk ( ( u0 – R0*(i1+ik+iCk – u1 ) )/L1 )
i2 = rk ( ( u0 – R0*(i1+ik+iCk) – uk –u2 )/L2 )
END = 0
uA = RA*( ik + iCk – i2)
t = t+dt
( DGL für i1 )
( DGL für i2 )
R. Kessler, D:\579911612.doc, Seite 10 /13
9 Bandpass T
R0
C1
(Reihen-Schwingkreise als Längsglieder, Parallel-Schwingkreis als Querglied)
L1
i1
K
iCk
u1
Ck
u0
M1
Rk
uk
M2
C2
L2
i2
ik
Lk
u2
RA
uA
RLk
M3
Nr. 9 Bandpass T
Einfach sind die DGLn für u1 und für u2 aufzustellen:
C1*du1/dt = Strom durch C1 = Strom i1, also C1*du1/dt = i1
C2*du2/dt = Strom durch C2 = Strom i2, also C2*du2/dt = i2
( DGL für u1 )
( DGL für u2 )
Hilfsgröße: Strom durch Kondensator Ck ist iCk = i1 - ik - i2 (s. Figur)
=> Ck*duk/dt = iCk
Masche M1: u0 = R0*i1+ u1 + L1*di1/dt + uk + Rk*iCk
=> L1*di1/dt = u0 –R0*i1 –u1- uk – Rk*iCk
Masche M2:
uk + Rk*iCk = Lk * dik/dt + RLk * ik
Maschen M2...M3: uk + Rk*iCk = u2 + L2*di2/dt + RA*i2
( Hilfsgröße iCk )
( DGL für uk )
Tephys-Algorithmus mit Runge-Kutta:
DGL = 0
d=drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
iCk = i1 – ik – i2
u1 = rk ( i1/C1 )
u2 = rk ( i2/C2)
uk = rk ( iCk/Ck)
i1 = rk ( (u0 – R0*i1 – u1 – uk – Rk*iCk ) /L1)
ik = rk ( (uk + Rk*iCk – RLk * ik ) /L1)
i2 = rk ( (uk + Rk*iCk – u2 – RA * i2 ) /L2)
END = 0
uA = RA * i2
t = t + dt
( DGL für i1 )
( DGL für ik )
( DGL für i2 )
R. Kessler, D:\579911612.doc, Seite 11 /13
10 Bandpass Pi
R0
(Parallel-Schwingkreise als Querglieder, Reihen-Schwingkreis als Längsglied)
Ck
K1
i1
Lk
K2
ik
iC1
iC2
i2
uk
L1
C1
u1
C2
u0
R1
RL1
M1
M2
R2
M3
u2
L2
RA
uA
RL2
M4
Nr 10 Bandpass Pi
Infolge R1 und R2 ist das Aufstellen der DGLn schwieriger als bei R1= R2= 0. Durch Einführen der
Kondensatorströme iC1 und iC2 gelingt es, die DGLn aufzustellen.
Knoten K1: Strom durch R0 = i1 + iC1 + ik =>
Maschen M1...M2: u0 = R0 * (i1 + iC1 + ik) + u1 + R1 * iC1 = R0*(i1+ik) + (R0 + R1)*iC1 + u1 =>
iC1 = C1*du1/dt = 1/(R0+R1) * (u0 – u1 – R0 * (i1+ ik) )
( DGL für u1 u. Hilfsgröße iC1)
Masche M1 : u0 = R0*(i1+iC1+ik) + L1*di1/dt + RL1*i1 =>
L1*di1/dt = u0 – R0*(i1+ iC1+ik) - RL1*i1
( DGL für i1 )
Knoten K2: ik = C2* u2’ + i2 + ( u2 + R2*C2*u2’ ) /RA = (1 + R2/RA)*C2 * u2’ + i2 + u2/RA =>
iC2 = C2 * du2/dt = 1/(1+R2/RA) * ( ik – i2 - u2/RA )
( DGL für u2 u. Hilfsgröße iC2 )
Masche M3: u1+R1*iC1 = uk + Lk*ik’ + u2 + R2*iC2 =>
Lk* dik/dt = u1 + R1*iC1 – uk – u2 – R2* iC2
Ck * duk/dt = ik
Masche M4: u2 + R2*iC2 = L2*di2/dt + RL2*i2 =>
L2*di2/dt = u2 + R2*iC2 – RL2*i2
Ausgangsspannung
uA = RA* (ik – iC2 – i2)
Algorithmus mit Runge-Kutta:
DGL = 0
d=drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
iC1 = 1/(R0+R1) * (u0 – u1 – R0 * (i1+ ik))
iC2 = 1/(1+R2/RA) * ( ik – i2 - u2/RA )
u1 = rk ( iC1/C1 )
u2 = rk ( iC2/C2 )
i1 = rk ( ( u0 – R0*(i1+ iC1+ik) - RL1*i1 )/L1 )
ik = rk ( (u1 + R1*iC1 – uk– u2 – R2* iC2 )/Lk )
uk = rk ( ik/Ck )
i2 = rk ( ( u2 + R2*iC2 – RL2*i2 )/L2 )
END= 0
uA = RA* (ik – iC2 – i2)
t = t + dt
( DGL für ik )
( DGL für uk )
( DGL für i2 )
R. Kessler, D:\579911612.doc, Seite 12 /13
11 Bandsperre T
i1
L1
i2
L2
K
R0
C1
C2
ik
iC1
u1
u0
M1
Lk
Ck
u2
RA
uA
uk
Nr 11 Bandsperre T
Einfach sind die DGLn für i1, i2, uk aufzustellen:
L1*di1/dt = u1
L2*di2/dt = u2
Ck*duk/dt = ik
( DGL für i1 )
( DGL für i2 )
( DGL für uk )
Einführen der Hilfsgröße iC1 = Strom durch Kondensator C1 ( s. Figur).
Mit i1 + iC1 = Strom durch R0 und mit i1+ iC1 - ik = Strom durch RA folgt für die
Masche über alles: u0 = R0*(i1+ iC1) + u1 + u2 + RA*(i1 + iC1 - ik)
=> u0 = (R0+RA)*iC1 + R0*i1 + u1 + u2 + RA *(i1-ik)
=> iC1 = 1/(R0+RA) * (u0 - R0*i1 + u1 + u2 - RA*(i1-ik )
( Hilfsgröße iC1 )
=>
C1 *du1/dt = iC1
( DGL für u1 )
Masche M1:
Knoten K:
u0 = R0*(i1+iC1) + Lk*dik/dt + uk
i1+iC1 = ik + i2 + C2*du2/dt
Tephys-Algorithmus mit Runge-Kutta:
DGL = 0
d=drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
iC1 = 1/(R0+RA) * (u0 - R0*i1 + u1 + u2 - RA*ik )
i1 = rk ( u1/L1 )
i2 = rk ( u2/L2 )
uk = rk ( ik/Ck )
u1 = rk ( iC1/C1 )
ik = rk ( ( u0 – R0*(i1+iC1) – uk ) )/Lk )
u2 = rk ( ( i1 + iC1 –ik – i2 )/C2 )
END = 0
uA = RA+( ik + iC1 – ik)
t = t+dt
( DGL für ik )
( DGL für u2 )
R. Kessler, D:\579911612.doc, Seite 13 /13
12 Bandsperre T (mit Erschwernis infolge Reihenwiderständen R1, R2)
RL1
i1
L1
RL2
R0
i2
L2
K
R1
C1
R2
C2
ik
iC1
u1
iC2
Lk
u2
RA
u0
RLk
M1
Ck
uk
uA
M2
Nr 12 Bandsperre T (mit zusätzlichen Widerständen R1, R2 und RLk)
Infolge der zusätzlichen Widerstände R1, R2 zbd RLk ist das Aufstellen der DGLn etwas schwierger als bei
Schaltung Nr 11.
Einfach ist nur, die DGL für uk aufzustellen: Ck * duk/dt = ik
( DGL für u1 )
Für die anderen DGLn werden die Hilfsgrößen iC1 und iC2 eingeführt (s. Figur)
Knoten K: i1 + iC1 = ik + i2 + iC2 => iC2 = i1 + iC1 –ik – i2
Masche über alles: u0 = R0 *(i1 + iC1) + iC1 * R1 + u1 + iC2 * R2 + u2 + RA* (i1 + iC1- ik )
oder nach Einsetzen von iC2
u0 = R0*(i1+iC1)+iC1*R1+u1+R2*(i1+iC1-ik-i2) +u2 + RA* ( i1 + iC1 – ik )
=> u0 = (R0+R1+R2+RA)*iC1 + R0*i1 + u1 + R2*(i1-ik-i2) + u2 + RA*(i1-ik)
=> iC1 = 1/(R0+R1+R2+RA) * ( u0 – u1 –u2 – (R0+R2+RA)*i1 +R2*i2 + (R2+RA)*ik ) ( Hilfsgröße iC1 )
Mit iC1 ist das Aufstellen für die restlichen DGLn kein Problem mehr:
u1: C1*du1/dt = iC1
u2: C2*du2/dt = i1+iC1-ik-i2 (= iC2)
i1: RL1*i1 + L1*di1/dt = R1*iC1 + u1
i2: RL2 * i2 + L2 * di2/dt = R2*(i1+iC1-ik-i2)
Masche M1:
u0=R0*(i1+iC1) +R1*iC1 + u1 + Lk*dik/dt + RLk*ik + uk
Tephys-Algorithmus mit Runge-Kutta:
DGL = 0
d=drei(fD*t)
u0 =aP*ja(t-t1)*ja(t2-t)+aD*d+aR*sign(d-sw)+aS*sin(2*pi*fS*t)
iC1 = 1/(R0+R1+R2+RA) * ( u0 – u1 –u2 – (R0+R2+RA)*i1 +R2*i2 + (R2+RA)*ik )
uk = rk (ik/Ck)
u1 = rk ( iC1/C1)
u2 = rk ( (i1+iC1-ik-i2 )/C2)
i1 = rk ( (R1*iC1+u1- RL1*i1)/L1)
i2 = rk ( ( R2*(i1+iC1-ik-i2) – RL2*i2 )/L2)
ik = rk ( (u0-R0*(i1+iC1)-R1*iC1-u1-RLk*ik-uk )/Lk)
END = 0
t = t +dt
( DGL für u1 )
( DGL für u2 )
( DGL für i1 )
( DGL für i2 )
( DGL für ik )
Zugehörige Unterlagen
Herunterladen