Krijg een goedkope toegang tot TINACloud om de voorbeelden te bewerken of om uw eigen circuits te maken
Zoals we al hebben gezien, kunnen circuits met sinusoïdale excitatie worden opgelost met complexe impedanties voor de elementen en complexe piek or complex rms-waarden voor de stromen en spanningen. Met behulp van de complexe waardenversie van de wetten van Kirchhoff kunnen knoop- en maasanalysetechnieken worden gebruikt om wisselstroomcircuits op te lossen op een manier die vergelijkbaar is met DC-circuits. In dit hoofdstuk laten we dit zien aan de hand van voorbeelden van de wetten van Kirchhoff.
Voorbeeld 1
Zoek de amplitude en fasehoek van de huidige ivs(T) if
vS(t) = VSM cos 2pft; i (t) = ISM cos 2pft; VSM = 10 V; ikSM = 1 A; f = 10 kHz;
Al met al hebben we 10 onbekende spanningen en stromen, namelijk: i, iC1deRdeLdeC2inC1inRinLinC2 en vIS. (Als we complexe piek- of rms-waarden gebruiken voor de spanningen en stromen, hebben we in totaal 20 echte vergelijkingen!)
De vergelijkingen:
Loop of mesh-vergelijkingen: voor M1 - VSM +VC1M+VRM = 0
M2 - VRM + VLM = 0
M3 - VLM + VC2M = 0
M4 - VC2M + VlsM = 0
Ohm's wetten VRM = R *IRM
VLM = j*w* L *ILM
IC1M = j*w*C1*VC1M
IC2M = j*w*C2*VC2M
Nodale vergelijking voor N1 - IC1M - ISM + IRM + ILM +IC2M = 0
voor serie-elementen I = IC1MDoor het systeem van vergelijkingen op te lossen, kun je de onbekende stroom vinden:
ivs (t) = 1.81 cos (wt + 79.96°) Een
Het oplossen van zo'n groot systeem van complexe vergelijkingen is erg ingewikkeld, dus we hebben het niet in detail laten zien. Elke complexe vergelijking leidt tot twee echte vergelijkingen, dus we tonen de oplossing alleen aan de hand van de waarden die zijn berekend met TINA's Interpreter.
De oplossing met behulp van TINA's Interpreter:
OM: = 20000 * pi;
Vs: = 10;
Is: = 1;
Sys Ic1, Ir, IL, Ic2, Vc1, Vr, VL, Vc2, Vis, Ivs
Vs=Vc1+Vr {M1}
Vr=VL {M2}
Vr=Vc2 {M3}
Vc2=Vis {M4}
Ivs=Ir+IL+Ic2-Is {N1}
{Ohm's regels}
Ic1 = j * OM * * C1 Vc1
Vr = R * Ir
VL = j * OM * L * IL
Ic2 = j * OM * * C2 Vc2
Ivs = Ic1
einde te maken;
Ivs = [3.1531E1 + 1.7812E0 * j]
abs (IVS) = [1.8089]
fiIvs: = 180 * arc (IVS) / pi
fiIvs = [79.9613]
sympy importeren als s
importeer cmath als c
cp= lambda Z: “{:.4f}”.format(Z)
om=20000*c.pi
Vs = 10
Is=1
Ic1,Ir,IL,Ic2,Vc1,Vr,VL,Vc2,Vis,Ivs=s.symbols('Ic1 Ir IL Ic2 Vc1 Vr VL Vc2 Vis Ivs')
A=[s.Eq(Vc1+Vr,Vs),s.Eq(VL,Vr),s.Eq(Vc2,Vr),s.Eq(Vis,Vc2), #M1, M2, M3, M4
s.Eq(Ir+IL+Ic2-Is,Ivs), #N1
s.Eq(1j*om*C1*Vc1,Ic1),s.Eq(R*Ir,Vr),s.Eq(1j*om*L*IL,VL),s.Eq(1j*om*C2*Vc2,Ic2),s.Eq(Ic1,Ivs)] #Ohm’s rules
Ic1,Ir,IL,Ic2,Vc1,Vr,VL,Vc2,Vis,Ivs=[complex(Z) for Z in tuple(s.linsolve(A,(Ic1,Ir,IL,Ic2,Vc1,Vr,VL,Vc2,Vis,Ivs)))[0]]
afdrukken(Ivs)
print(“abs(Ivs)=”,cp(abs(Ivs)))
print(“180*c.fase(Ivs)/c.pi=”,cp(180*c.fase(Ivs)/c.pi))
De oplossing met TINA:
Werk met de complexe impedanties om dit probleem met de hand op te lossen. Bijvoorbeeld R, L en C2 zijn parallel verbonden, dus u kunt het circuit vereenvoudigen door hun parallelle equivalent te berekenen. || betekent het parallelle equivalent van de impedanties:
Numeriek:
Het vereenvoudigde circuit met behulp van de impedantie:
De vergelijkingen in geordende vorm: I + IG1 = IZ
VS = VC1 +VZ
VZ = Z · IZ
I = j w C1· VC1
Er zijn vier onbekende- I; IZ; VC1; VZ - en we hebben vier vergelijkingen, dus een oplossing is mogelijk.
Uitdrukken I na het vervangen van de andere onbekenden uit de vergelijkingen:
Numeriek
Volgens het resultaat van TINA's Interpreter.
OM: = 20000 * pi;
Vs: = 10;
Is: = 1;
Z: = replus (R, replus (j * OM * L, 1 / j / OM / C2));
Z = [2.1046E0-2.4685E0 * j]
sys ik
I = j * OM * C1 * (Vs-Z * (I + Is))
einde te maken;
I = [3.1531E1 + 1.7812E0 * j]
abs (I) = [1.8089]
180 * arc (I) / pi = [79.9613]
sympy importeren als s
importeer cmath als c
Replus= lambda R1, R2 : R1*R2/(R1+R2)
om=20000*c.pi
Vs = 10
Is=1
Z=Te plus(R,Te plus(1j*om*L,1/1j/om/C2))
print('Z=',cp(Z))
I=s.symbolen('I')
A=[s.Eq(1j*om*C1*(Vs-Z*(I+Is)),I),]
I=[complex(Z) voor Z in tuple(s.linsolve(A,I))[0]][0]
print(“I=”,cp(I))
print(“abs(I)=”,cp(abs(I)))
print(“180*c.fase(I)/c.pi=”,cp(180*c.fase(I)/c.pi))
De tijdfunctie van de stroom is dan:
i (t) = 1.81 cos (wt + 80°) Een
U kunt de huidige regel van Kirchhoff controleren met behulp van fasordiagrammen. De onderstaande afbeelding is ontwikkeld door de knooppuntvergelijking in i te controlerenZ = i + iG1 het formulier. Het eerste diagram toont de fasoren die zijn toegevoegd door de parallellogramregel, het tweede illustreert de driehoekige regel van de fasortoevoeging.
Laten we nu KVR demonstreren met behulp van de phasordiagramfunctie van TINA. Omdat de bronspanning negatief is in de vergelijking, hebben we de voltmeter "achteruit" aangesloten. Het fasordiagram illustreert de oorspronkelijke vorm van de spanningsregel van Kirchhoff.
Het eerste fasordiagram gebruikt de parallellogramregel, terwijl het tweede de driehoeksregel gebruikt.
Ter illustratie van KVR in de vorm VC1 + VZ - VS = 0, we hebben de voltmeter opnieuw achterwaarts op de spanningsbron aangesloten. Je kunt zien dat de phasordriehoek gesloten is.
Voorbeeld 2
Zoek de spanningen en stromen van alle componenten als:
vS(t) = 10 cos wt V, iS(t) = 5 cos (w t + 30 °) mA;
C1 = 100 nF, C2 = 50 nF, R1 = R2 = 4 k; L = 0.2 H, f = 10 kHz.
Laat de onbekenden de complexe piekwaarden zijn van de spanningen en stromen van 'passieve' elementen, evenals de stroom van de spanningsbron (iVS ) en de spanning van de stroombron (vIS ). In totaal zijn er twaalf complexe onbekenden. We hebben drie onafhankelijke knooppunten, vier onafhankelijke lussen (gemarkeerd als MI), en vijf passieve elementen die kunnen worden gekenmerkt door vijf “wetten van Ohm” - in totaal zijn er 3 + 4 + 5 = 12 vergelijkingen:
Nodale vergelijkingen voor N1 IVSM = IkR1M + IC2M
voor N2 IR1M = IkLM + IC1M
voor N3 IC2M + ILM + IC1M +IsM = IkR2M
Loop-vergelijkingen het formulier1 VSM = VC2M + VR2M
het formulier2 VSM = VC1M + VR1M+ VR2M
het formulier3 VLM = VC1M
het formulier4 VR2M = VlsM
Ohm's wetten VR1M = R1*IR1M
VR2M = R2*IR2M
IC1m = j *w*C1*VC1M
IC2m = j *w*C2*VC2M
VLM = j *w* L * ILM
Vergeet niet dat elke complexe vergelijking tot twee reële vergelijkingen kan leiden, dus de methode van Kirchhoff vereist veel berekeningen. Het is veel eenvoudiger om de tijdfuncties van de spanningen en stromen op te lossen met behulp van een systeem van differentiaalvergelijkingen (hier niet besproken). Eerst tonen we de resultaten berekend door TINA's Interpreter:
F: = 10000;
Vs: = 10;
s: = 0.005 * exp (j * pi / 6);
OM: = 2 * pi * f;
sys ir1, ir2, ic1, ic2, iL, vr1, vr2, vc1, vc2, vL, vis, ivs
ivs=ir1+ic2 {1}
ir1=iL+ic1 {2}
ic2+iL+ic1+Is=ir2 {3}
Vs=vc2+vr2 {4}
Vs=vr1+vr2+vc1 {5}
vc1=vL {6}
vr2=zicht {7}
vr1=ir1*R1 {8}
vr2=ir2*R2 {9}
ic1=j*om*C1*vc1 {10}
ic2=j*om*C2*vc2 {11}
vL=j*om*L*iL {12}
einde te maken;
abs (vr1) = [970.1563m]
abs (vr2) = [10.8726]
abs (ic1) = [245.6503u]
abs (ic2) = [3.0503m]
abs (vc1) = [39.0965m]
abs (vc2) = [970.9437m]
abs (iL) = [3.1112u]
abs (vL) = [39.0965m]
abs (IVS) = [3.0697m]
180 + radtodeg (arc (IVS)) = [58.2734]
abs (vis) = [10.8726]
radtodeg (arc (vis)) = [- 2.3393]
radtodeg (arc (vr1)) = [155.1092]
radtodeg (arc (vr2)) = [- 2.3393]
radtodeg (arc (ic1)) = [155.1092]
radtodeg (arc (ic2)) = [- 117.1985]
radtodeg (arc (vc2)) = [152.8015]
radtodeg (arc (vc1)) = [65.1092]
radtodeg (arc (il)) = [- 24.8908]
radtodeg (arc (vL)) = [65.1092]
sympy importeren als s
importeer wiskunde als m
importeer cmath als c
cp= lambda Z: “{:.4f}”.format(Z)
f = 10000
Vs = 10
S=0.005*c.exp(1j*c.pi/6)
om=2*c.pi*f
ir1,ir2,ic1,ic2,iL,vr1,vr2,vc1,vc2,vL,vis,ivs=s.symbols('ir1 ir2 ic1 ic2 iL vr1 vr2 vc1 vc2 vL vis ivs')
A=[s.Eq(ir1+ic2,ivs), #1
s.Eq(iL+ic1,ir1), #2
s.Eq(ic2+iL+ic1+Is,ir2), #3
s.Eq(vc2+vr2,Vs), #4
s.Eq(vr1+vr2+vc1,Vs), #5
s.Eq(vL,vc1), #6
s.Eq(vis,vr2), #7
s.Eq(ir1*R1,vr1), #8
s.Eq(ir2*R2,vr2), #9
s.Eq(1j*om*C1*vc1,ic1), #10
s.Eq(1j*om*C2*vc2,ic2), #11
s.Eq(1j*om*L*iL,vL)] #12
ir1,ir2,ic1,ic2,iL,vr1,vr2,vc1,vc2,vL,vis,ivs=[complex(Z) for Z in tuple(s.linsolve(A,(ir1,ir2,ic1,ic2,iL,vr1,vr2,vc1,vc2,vL,vis,ivs)))[0]]
print(“abs(vr1)=”,cp(abs(vr1)))
print(“abs(vr2)=”,cp(abs(vr2)))
print(“abs(ic1)=”,cp(abs(ic1)))
print(“abs(ic2)=”,cp(abs(ic2)))
print(“abs(vc1)=”,cp(abs(vc1)))
print(“abs(vc2)=”,cp(abs(vc2)))
print(“abs(iL)=”,cp(abs(iL)))
print(“abs(vL)=”,cp(abs(vL)))
print(“abs(ivs)=”,cp(abs(ivs)))
print(“180+graden(fase(ivs))=”,cp(180+m.graden(c.fase(ivs))))
print(“abs(vis)=”,cp(abs(vis)))
print(“graden(fase(vis))=”,cp(m.graden(c.fase(vis))))
print(“graden(fase(vr1))=”,cp(m.graden(c.fase(vr1))))
print(“graden(fase(vr2))=”,cp(m.graden(c.fase(vr2))))
print(“graden(fase(ic1))=”,cp(m.graden(c.fase(ic1))))
print(“graden(fase(ic2))=”,cp(m.graden(c.fase(ic2))))
print(“graden(fase(vc2))=”,cp(m.graden(c.fase(vc2))))
print(“graden(fase(vc1))=”,cp(m.graden(c.fase(vc1))))
print(“graden(fase(iL))=”,cp(m.graden(c.fase(iL))))
print(“graden(fase(vL))=”,cp(m.graden(c.fase(vL))))
Probeer nu de vergelijkingen met de hand te vereenvoudigen met behulp van substitutie. Eerste vervanging eq.9. in vergelijking 5.
VS = VC2 + R2 IR2 a)
vervolgens eq.8 en eq.9. in eq 5.
VS = VC1 + R2 IR2 + R1 IR1 b.)
dan eq 12., eq. 10. en ikL van eq. 2 naar eq.6.
VC1 = VL = jwLIL = jwL (IR1 - IkC1) = jwLIR1 - jwLjwC1 VC1
Express VC1
Express VC2 vanaf vergelijking 4. en vergelijking 5. en vervang eq.8., eq.11. en VC1:
Vervang eq.2., 10., 11. en d.) In eq.3. en ik uitdrukkenR2
IR2 = IkC2 + IR1 + IS = jwC2 VC2 + IR1 + IS
Vervang nu d.) En e.) In vraag 4 en druk I uitR1
Numeriek:
De tijdfunctie van iR1 is het volgende:
iR1(t) = 0.242 cos (wt + 155.5°) mA
De gemeten spanningen: