Passive Bandsperre (RLC-Schaltung). Berechnung der komplexen

Werbung
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 1/1
Passive Bandsperre (RLC-Schaltung). Berechnung der
komplexen Übertragungsfunktion mit zwei Methoden:
mit komplexer Rechnung und mit FFT
Bandsperre aus 1 Pi-Glied: Z1= R1, Y1= L1 in Reihe mit C1,
Z2= Lk parallel mit Ck, Y2= L2 in Reihe mit C2, parallel dazu RA
Homepage: http://www.home.hs-karlsruhe.de/~kero0001/
Vgl diese Homepage:
http://www.home.hs-karlsruhe.de/~kero0001/RLCFilter/RLC_Vierpol_Filter3.pdf
Dort die vier Filtertypen: Tiefpass, Hochpass, Bandpass, Bandsperre. Jeweils als Pi-Glied und als TGlied. Allerdings dort nur die komplexe Berechnung der Übertragungsfunktionen. Hier dagegen für eins
dieser Filter, nämlich die Bandsperre (als Pi-Glied) zusätzlich zur komplexen Berechnung auch die
Berechnung im Zeitbereich: Als Eingang u0(t) wird eine kurzer Impuls verwendet. Die komplexe
Übertragungsfunktion (Ausgang uA zu Eingang u0) ergibt sich als Quotient der FFT der zeitlichen
Ausgangsfunktion uA(t) geteilt durch die FFT der Eingangsfunktion u0(t).
Die obere Schaltung hat diejenigen Bezeichnungen, die
für die komplexe Rechnung verwendet werden, siehe
die Symbole unterhalb des Schaltbildes: Die
Impedanzen Z1 und Z2 und die Leitwerte Y1 und
Y2 und der zusammengefasste Leitwert Y1p
parallel zur Spannung u1. Die Formeln für diese
komplexen Impedanzen und Leitwerte findet man in
der unten eingefügten Matlabdatei BaSp1P1.m
Ck
R1
Lk
L1
u0
L2
RA
u1
C1
Z1
uA
C2
Y1
Z2
Y2
Y1p
Diese zweite Figur ist die gleiche Schaltung wie die
erste Figur. Aber die Bezeichnungen sind so
geändert worden, dass sie für die Berechnung im
Zeitbereich geeignet sind.
iCk
R1
uCk
Ck
i1
ik
K
i2
Lk
L1
RA
Die Schaltung enthält 6 „Energiespeicher“: drei
L2
u0
Spulen und drei Kondensatoren.
C1
uC2
uC1
C2
Für die Berechnung im Zeitbereich wird für jeden
M2
M1
M3
Energiespeicher eine „Zustandsvariable“
definiert. Für die Spulen den durch die Spule
fließenden Strom, also hier der Strom i1 durch die Spule L1, der Strom ik durch die Spule Lk und der Strom
i2 durch die Spule L2.
Entsprechend wird jedem Kondensator die an ihm liegende Spannung als Zustandsgröße zugeordnet,
also hier die Spannung uC1 am Kondensator C1, die Spannung uCk am Kondensator Ck und die Spannung
uC2 am Kondensator C2.
Durch Anwendung des „Knotensatzes“ (die Summe der Ströme zu einem Knoten ist Null) und des
„Maschensatzes“ (die Summe der Spannungen an einer geschlossenen Masche ist Null ) stellt man die
Differentialgleichungen (DGLn) des Systems auf: Ziel ist, für jede Zustandsvariable genau eine DGL
erster Ordnung aufzustellen, die aber keine weiteren Ableitungen enthält). Es werden also 6 DGLn
gesucht:
di1/dt=…, di2/dt=…, dik/dt=…, duC1/dt=…, duC2/dt=…, duCk/dt=…,
wobei die rechten Seiten keine weiteren Ableitungen enthalten dürfen.
Viele Beispiele zum Aufstellen der Differentialgleichungen von RLC-Schaltungen findet man auf dieser
Homepage:
http://www.home.hs-karlsruhe.de/~kero0001/aufst6/AufstDGL6hs.html
Allerdings wird dort nicht die obige Schaltung behandelt, denn, wie gleich gezeigt wird, ist für diese Schaltung
das Aufstellen der DGLn nicht ganz einfach.
uA
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 2/2
Der Knotensatz liefert für den Knoten zwischen L1 und C1: i1 = Strom auf den Kondensator C1. Der Strom auf
den Kondensator ist C1*duC1/dt, also hat man die
DGL für uC1: duC1/dt = i1/C1
In entsprechender Weise ergibt sich die
DGL für uC2: duC2/dt = i2/C2
Für die Masche aus Lk und Ck ergibt sich: die Spannung uCk ist gleich der Spannung an der Spule Lk. Diese ist
Lk*dik/dt, also hat man die
DGL für ik: dik/dt = uCk/Lk
Leider findet man die anderen noch aufzustellenden DGLn nicht so einfach.
Um die Problematik zu demonstrieren, wollen wir es zunächst mal recht umständlich versuchen:
Der Maschensatz für die Masche M1 liefert: u0 = R1*Strom durch R1 + L1*di1/dt + uC1
Der Strom durch R1 ist (laut Knotensatz ) i1+ik+Ck*duCk/dt, folglich wird
u0 = R1*( i1+ik+Ck*duCk/dt) + L1*di1/dt + uC1. Zur Hervorhebung sind die Ableitungen unterstrichen. Man
sieht, dass die DGL zwei Ableitungen enthält. Sie ist also in dieser Form noch nicht für die numerische
Berechnung geeignet.
uCk
iCk
Der Maschensatz für die Masche M2 liefert
R1
Ck
K
die DGL L1*di1/dt + uC1= uCk+
L2*di2/dt + uC2. Sie enthält ebenfalls 2
i2
i1
ik
Ableitungen, ist also auch nicht unmittelbar
Lk
L1
RA
für die numerische Lösung geeignet.
L2
u0
uA
C1
uC2
uC1
C2
Masche M3: Strom durch RA ist (laut
M2
M1
M3
Knotensatz für Knoten K)
iRA= ik + Ck*duCk/dt – i2, folglich gilt für
die Masche M3:
L2*di2/dt + uC2 = RA* (ik + Ck* duCk/dt – i2). Auch diese DGL enthält zwei Ableitungen.
Es haben sich also 3 DGLn ergeben, die insgesamt die drei unbekannten Ableitungen enthalten: di1/dt , di2/dt
und duCk/dt. Durch Lösen dieses linearen Gleichungssystems (drei Gleichungen für 3 Unbekannte) könnte
man die gesuchten Unbekannten, nämlich die drei Ableitungen, finden.
Man kann sich das relativ umständliche Lösen dieses Gleichungssystems sparen und
kommt sehr viel schneller zum Ziel, indem man für den Kondensatorstrom
Ck*duCk/dt die „Hilfsgröße“ iCk einführt. Dies ist in obiger Figur bereits geschehen
(rote Schrift).
Der Maschensatz für „die Masche über Alles“ liefert (bei sofortiger Anwendung des Kontensatzes) sofort die
„algebraische“ Gleichung
u0 = R1*(i1 + ik + iCk) + uCk + RA* (ik+ iCk – i2)
Den (in Rotschrift geschriebenen ) Strom iCk kann man ausklammern:
u0 = R1*(i1 + ik )+ iCk *(R1+ RA) + uCk + RA* (ik – i2) und damit hat man eine Formel für iCk:
iCk=1/(R1+RA) * ( u0 – R1*(i1+ik) – uCk – RA*(ik – i2) )
Mit dieser Hilfsgröße iCk lassen sich die drei noch gesuchten DGLn sofort finden (zur Verdeutlichung sind
die Ableitungen unterstrichen dargestellt):
Strom durch Kondensator Ck: Ck*duCk/dt = iCk
u0 = R1*( i1+ik+iCk) + L1*di1/dt + uC1
Masche M1:
L2*di2/dt + uC2 = RA*(ik + iCk- i2)
Masche M3:
Zusammengefasst werden noch einmal die Formel für iCk und anschließend die 6 DGLn hingeschrieben,
gleich so umgeformt, dass auf der linken Seite nur die Ableitung steht:
iCk =
duC1/dt
duC2/dt
dik/dt
1/(R1+RA) * ( u0 – R1*(i1+ik) – uCk – RA*(ik – i2) )
= i1/C1
= i2/C2
= uCk/Lk
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 3/3
duCk/dt = iCk/Ck
di1/dt
= ( u0 - R1*( i1+ik+iCk1) – uC1 )/L1
di2/dt = ( RA*(ik + iCk- i2)
- uC2 )/L2
Diese DGLn werden in der nachfolgenden Matlabdatei BaSp1P1.m numerisch gelöst.
function BaSp1P1(R1, L1,C1,Lk,Ck,fak,dw,wmax,dt,tmax,DT,bild );
%function BaSp1P1(R1, L1,C1,Lk,Ck,fak,dw,wmax,dt,tmax,DT,bild );
%
BaSp1P1(0.9,1, 1 ,1, 1, 1,0.001,10,0.01,200, 1, 1 );
%
% Auch Zeitbereich
R1
% Bandsperre aus 1 Pi-Glied:
% Z1= R1
% Y1= C1 in Reihe mit L1
L1
% Z2= CK parallel mit Lk
u0
u1
% Y2= L2 in Reihe mit C2,
C1
% parallel dazu RA=fak*R1
C2=C1; L2=L1; RA=fak*R1;
Z1
Y1
Ck
Lk
RA
L2
uA
C2
Z2
Y2
format compact;
Y1p
w=1e-5:dw:wmax; % Vektor Kreisfrequenz w
s = j * w; % j = Wurzel aus (-1), s= "DiffenrentialOperator"
% Definition der Schaltung der 2-gliedrigen Kette (s. Schaltbild):
% Man beachte die “elementweise” Multiplikation ( .* statt nur *) und Division ( ./ statt nur /)
Z1=R1;
% 1. Längsimpedamz
Y1= 1./(s*L1+ 1./(s*C1));
% 1. Querleitwert
Z2= 1 ./( s*Ck + 1./(s*Lk)); % 2. Längsimpedanz
Y2= 1/(fak*R1)+ 1./(s*L2 + 1./(s*C2) ) ; % 2. Querleitwert
%
Y1p = Y1+ 1./(Z2+ 1./Y2); % Ersatzleitwert parallel zu u1
u1=1 ./(1+ Z1 .* Y1p); % u1= Spannung am 1. Querleitwert
u2=u1 ./(1+ Z2 .* Y2); % u2= Spannung am 2. Querleitwert, (u2=uA)
%
S0=['bild=',num2str(bild)];
S1=[',R1=',num2str(R1)]; S2=[',L1=',num2str(L1)];
S3=[',C1=',num2str(C1)]; S4=[',Lk=',num2str(Lk)];
S5=[',Ck=',num2str(Ck)]; S6=[',fak=',num2str(fak)];
Ti=[S0,S1,S2,S3,S4, S5,S6];
figure(bild); clf reset;
plot(w, abs(u2),'k', w, angle(u2)*180/pi/1000,'m');
grid on; Title(Ti);
xlabel('omega, FFT-Methode gepunktet');
legend('abs(u2)','Winkel(u2)');
% Ortskurve:
figure(bild+1); clf reset;
plot(real(u2),imag(u2)); axis equal;
grid on;
%xlabel('real(u2)');ylabel('imag(u2)');
%disp(' BaPa1T1(R1, C1,L1,RL1, Lk,RLk,Ck, C2,L2,RL2,fak, dw, wmax, bild ');
% Jetzt Zeitbereich
t=0:dt:tmax; % Zeitvektor
uAp=zeros(1,length(t));
RA=fak*R1;
%
Zur Neudefinition tmax, damit FFT mit 2-er Potenz rechnet, also schneller
hoch=log2((tmax-dt)/dt); hoch = round(hoch),
anz=2^hoch;
tmax=dt*(2^hoch),
%Neudefinition von tmax
t=0:dt:tmax-dt; LT=length(t),
uAp=zeros(1,length(t));
% Deklaration von Plotwerten uAp
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 4/4
%Startwerte:
i1=0; uC1=0; ik=0; uCk=0;
i2=0; uC2=0; iCk=0;
t1=5;
t2=t1+DT;
a0=0.9;
u0= a0* exp( - (t-t1) .*(t - t1) / (t2 - t1)^2 ); %
k=1;
Eingangsspannung als „Glockenimpuls“
% Jetzt numerisches Lösen der DGLn nach dem einfachen Prinzip:
%
der neue Wert ist gleich dem alten Wert plus die Änderung
for k=1:length(t);
% Plotwerte speichern:
% uCkp(k)=uCk;
% uC1p(k)=uC1;
% uC2p(k)=uC2;
uAp(k)=fak*R1*(ik-i2+iCk); % für Plotten der Ausgangsspannung uA
iCk=1/(R1+RA)*(u0(k)-R1*(i1+ik) - uCk-RA*(ik-i2)); % Hilfsgröße iCk
% neue Werte berechnen (der neue Wert ist gleichem dem alten Wert plus die Änderung)
uCk= uCk + iCk*dt/Ck;
uCk
iCk
i1 = i 1 + (u0(k) - R1*(i1+ik+iCk) - uC1)*dt/L1;
R1
C
uC1 = uC1 + i1*dt/C1;
k
i2
ik = ik + uCk*dt/Lk;
i1
ik Lk
uC2 = uC2 + (i2)*dt/C2;
L1
RA
L2
u0
i2 = i2 + (RA*(ik+iCk-i2) - uC2 )*dt/L2;
C1
uC
uC1
C2
2
end; % for k=1....
uA
% Fourier-Analyse mit FFT:
fftu0=fft(u0,length(t));
% fftu0 = komplexes Spektrum des zeitlichen Einganssignals u0
fftuAp=fft(uAp,length(t)); % fftuAp = komplexes Spektrum des zeitlichen Ausgangssignals
xfer=fftuAp ./ fftu0; % Das ist die wichtige Formel: Die komplexe Übertragungsfunktion
% xfer ist gleich dem Quotienten komplexes Spektrum des zeitlichen Ausgangssignals
% geteilt durch das komplexe Spektrum des zeitlichen Einganssignals
df=1/tmax;
% df = Frequenzschrittweite, tmax= Dauer des Zeitbereichs
freq=0:df: df*(length(t)-1); % freq = Vektor der Frequenzen
figure(bild+2); clf reset;
% Plotten der Zeitsignale: Eingang u0/10 , Farbe rot (m = magenta ), Ausgang uAp, Farbe schwarz (k)
plot(t,u0/10,'m', t, uAp,'k'); grid on; xlabel('sec');title(Ti);
legend('u0/10','uAp')
FuAp=fft(uAp,length(uAp)); Fu0=fft(u0,length(t)); xfer=FuAp./Fu0;
figure(bild); hold on;
plot(2*pi*freq(1:100),abs(xfer(1:100)),'.k' , ...
2*pi*freq( 1:100),angle(xfer(1:100))*180/pi/1000,'.m');
hold off;
figure(bild+1); hold on;
plot( real(xfer(1:100)), imag(xfer(1:100)),'.');
% FFT-Methode gepunktet
xlabel('komplexe Ortskurve, FFT-Methode gepunktet')
disp(' BaSp1T1(R1, L1,C1,Lk,Ck,fak,dw,wmax,dt,tmax,DT,bild );');
% toc
% Ende Datei BaSp1P1.m
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 5/5
Beispiel-Aufrufe:
BaSp1P1(0.9,1, 1 ,1, 1, 1,0.001,2,0.005,200, 1, 5 );
Das Ziel ist, zu zeigen, dass die komplexe Methode und die Zeitbereichs-Methode (d.h. die FFT-Methode)
das gleiche Ergebnis liefern. Drum sind die mit der FFT-Methode berechneten Kurven punktiert
dargestellt und die mit der komplexen Methode als durchgezogene Kurven Man erkennt, dass die Punkte
praktisch genau auf den durchgezogenen Linien liegen, also, dass beide Methoden übereinstimmen.
bild=5,R1=0.9,L1=1,C1=1,Lk=1,Ck=1,fak=1
0.5
abs(u2)
Winkel(u2)
0.4
BaSp1P1(0.9,1, 1 ,1, 1, 1,0.001,2,0.005,200, 1, 5 );
0.3
0.2
0.1
0
-0.1
-0.2
0
0.5
1
1.5
2
2.5
omega, FFT-Methode gepunktet
3
3.5
4
0.4
0.3
0.2
BaSp1P1(0.9,1, 1 ,1, 1, 1,0.001,2,0.005,200, 1, 5 );
0.1
0
-0.1
-0.2
-0.3
-0.4
-0.4
-0.2
0
0.2
0.4
0.6
komplexe Ortskurve, FFT-Methode gepunktet
bild=5,R1=0.9,L1=1,C1=1,Lk=1,Ck=1,fak=1
0.3
u0/10
uAp
0.2
BaSp1P1(0.9,1, 1 ,1, 1, 1,0.001,2,0.005,200, 1, 5 );
0.1
0
-0.1
0
20
40
60
80
sec 100
120
140
160
180
Die drei obigen Figuren gehören zusammen. Der Amplitudengang ist so gewählt, dass im
Durchlassbereich möglicht konstante Amplitude resultiert. Das erreicht man allein durch die Wahl des
Widerstandes R1 (und RA=R1)
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 6/6
Jetzt Ziel, den Sperrbereich schmäler zu machen:
Dazu wird die Koppelemente verändert, aber so, dass das Produkt Lk*Ck gleich L1*C1 bleibt.
Beim nächsten Aufruf ist statt LK=1, CK=1 gewählt worden: Lk=0.25, CK=4 (das Produkt bleibt also =1)
Zusätzlich wird der Widerstand R1 halbiert, also statt 0.9 jetzt 0.45.
Aufruf war: BaSp1P1(0.45,1, 1 ,0.25, 4, 1,0.001,2,0.005,200, 1, 10 );
bild=10,R1=0.45,L1=1,C1=1,Lk=0.25,Ck=4,fak=1
0.5
abs(u2)
Winkel(u2)
BaSp1P1(0.45,1, 1 ,0.25, 4, 1,0.001,2,0.005,200, 1, 10 );
0.4
0.3
0.2
0.1
0
-0.1
-0.2
0
0.5
1
1.5
2
2.5
omega, FFT-Methode gepunktet
3
3.5
4
0.4
BaSp1P1(0.45,1,
1 ,0.25, 4, 1,0.001,2,0.005,200, 1, 10 );
0.3
0.2
0.1
0
-0.1
-0.2
-0.3
-0.4
-0.4
-0.2
0
0.2
0.4
0.6
komplexe Ortskurve, FFT-Methode gepunktet
bild=10,R1=0.45,L1=1,C1=1,Lk=0.25,Ck=4,fak=1
0.3
u0/10
uAp
0.2
BaSp1P1(0.45,1, 1 ,0.25, 4, 1,0.001,2,0.005,200, 1, 10 );
0.1
0
-0.1
0
20
40
60
80 sec 100
120
140
160
180
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 7/7
Jetzt Ziel, den Sperrbereich noch schmäler zu machen:
Dazu werden die Koppelemente verändert, aber so, dass das Produkt Lk*Ck gleich L1*C1 bleibt.
Beim nächsten Aufruf ist statt LK=1, CK=1 gewählt worden: Lk=1/16=0.0625, Ck=16 (das Produkt bleibt
also =1)
Zusätzlich wird der Widerstand R1 noch mal halbiert, also statt 0.45 jetzt 0.225.
Aufruf war: BaSp1P1(0.225,1, 1 ,0.0625, 16, 1,0.001,2,0.005,200, 1, 15 );
bild=15,R1=0.225,L1=1,C1=1,Lk=0.0625,Ck=16,fak=1
0.6
0.5
0.4
BaSp1P1(0.225,1, 1 ,0.0625, 16, 1,0.001,2,0.005,200, 1, 15 );
0.3
abs(u2)
Winkel(u2)
0.2
0.1
0
-0.1
omega, FFT-Methode gepunktet
-0.2
0
0.5
1
1.5
2
2.5
3
3.5
4
0.4
0.3
0.2
B aS p1P 1(0.225,1, 1 ,0.0625, 16, 1,0.001,2,0.005,200, 1, 15 );
0.1
0
-0.1
-0.2
-0.3
kom plexe Ortskurve, FFT-M ethode gepunktet
-0.4
-0.4
-0.2
0
0.2
0.4
0.6
bild= 15,R 1= 0.225,L1= 1,C 1= 1,Lk = 0.0625,C k = 16,fak = 1
0.5
u0/10
uA p
0.4
0.3
B aS p1P 1(0.225,1, 1 ,0.0625, 16, 1,0.001,2,0.005,200, 1, 15 );
0.2
0.1
0
-0.1
-0.2
0
20
40
60
80 s ec 100
120
140
160
180
Prof. Dr. R. Kessler, HS-Karlsruhe, C:\ro\Si05\Andy\komptep\Bandsperre1.doc, S. 8/8
Jetzt Bandbreite noch weiter verschmälern:
wieder Lk, Ck auf den vierten Teil und R1 halbieren. Das ergibt den folgenden Aufruf:
BaSp1P1(0.1125,1, 1 ,1/64, 64, 1,0.001,2,0.001,200, 1, 20 );
bild=20,R1=0.1125,L1=1,C1=1,Lk=0.015625,Ck=64,fak=1
0.5
abs(u2)
Winkel(u2)
0.4
0.3
BaSp1P1(0.1125,1, 1 ,1/64, 64, 1,0.001,2,0.001,200, 1, 20 );
0.2
0.1
0
-0.1
omega, FFT-Methode gepunktet
-0.2
0
0.5
1
1.5
2
2.5
0.4
BaSp1P1(0.1125,1, 1 ,1/64, 64, 1,0.001,2,0.001,200, 1, 20 );
0.3
0.2
0.1
0
-0.1
-0.2
-0.3
komplexe Ortskurve, FFT-Methode gepunktet
-0.4
-0.4
-0.2
0
0.2
0.4
0.6
bild=20,R1=0.1125,L1=1,C1=1,Lk=0.015625,Ck=64,fak=1
0.4
0.3
BaSp1P1(0.1125,1, 1 ,1/64, 64, 1,0.001,2,0.001,200, 1, 20 );
0.2
u0/10
uAp
0.1
0
-0.1
0
50
100
150
sec
200
250
300
Herunterladen