Obtenez un accès économique à TINACloud pour modifier les exemples ou créer vos propres circuits
Comme nous l'avons déjà vu, les circuits à excitation sinusoïdale peuvent être résolus en utilisant impédances complexes pour les éléments et pic complexe or complexe valeurs efficaces pour les courants et les tensions. En utilisant la version à valeurs complexes des lois de Kirchhoff, des techniques d'analyse nodale et de maillage peuvent être utilisées pour résoudre les circuits CA d'une manière similaire aux circuits CC. Dans ce chapitre, nous allons le montrer à travers des exemples de lois de Kirchhoff.
Exemple 1
Trouver l'amplitude et l'angle de phase du courant ivs(T) if
vS(t) = VSM cos 2pft; i (t) = ISM cos 2pft; VSM = 10 V; jeSM = 1 A; f = 10 kHz;
Au total, nous avons 10 tensions et courants inconnus, à savoir: i, iC1leRleLleC2vC1vRvLvC2 et vIS. (Si nous utilisons des valeurs de crête ou efficaces complexes pour les tensions et les courants, nous avons au total 20 équations réelles!)
Les équations:
Équations de boucle ou de maillage: pour M1 - VSM +VC1M+VRM = 0
M2 - VRM + VLM = 0
M3 - VLM + VC2M = 0
M4 - VC2M + VIsM = 0
Les lois d'Ohm VRM = R *IRM
VLM = j*w* L *ILM
IC1M = j*w*C1*VC1M
IC2M = j*w*C2*VC2M
Équation nodale pour N1 - IC1M - ISM + IRM + ILM +IC2M = 0
pour les éléments de la série I = IC1MEn résolvant le système d'équations, vous pouvez trouver le courant inconnu:
ivs (t) = 1.81 cos (wt + 79.96°) A
La résolution d'un si grand système d'équations complexes est très compliquée, nous ne l'avons donc pas montré en détail. Chaque équation complexe conduit à deux équations réelles, nous ne montrons donc la solution que par les valeurs calculées avec l'interpréteur de TINA.
La solution utilisant l'interpréteur de TINA:
om: = 20000 * pi;
Vs: = 10;
Est: = 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}
{Règles d'Ohm}
Ic1 = j * om * C1 * Vc1
Vr = R * Ir
VL = j * om * L * IL
Ic2 = j * om * C2 * Vc2
Ivs = Ic1
fin;
Ivs = [3.1531E-1 + 1.7812E0 * j]
abs (Ivs) = [1.8089]
fiIvs: = 180 * arc (Ivs) / pi
fiIvs = [79.9613]
importer Sympy en tant que s
importer cmath en tant que c
cp= lambda Z : « {:.4f} ».format(Z)
om=20000*c.pi
Vs=10
Est=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]]
imprimer (Ivs)
print("abs(Ivs)=",cp(abs(Ivs)))
print("180*c.phase(Ivs)/c.pi=",cp(180*c.phase(Ivs)/c.pi))
La solution avec TINA:
Pour résoudre ce problème à la main, travaillez avec les impédances complexes. Par exemple, R, L et C2 sont connectés en parallèle, vous pouvez donc simplifier le circuit en calculant leur équivalent parallèle. || signifie l'équivalent parallèle des impédances:
Numériquement:
Le circuit simplifié utilisant l'impédance:
Les équations sous forme ordonnée: I + IG1 = IZ
VS = VC1 +VZ
VZ = Z · IZ
I = j w C1· VC1
Il y a quatre inconnues- I; IZ; VC1; VZ - et nous avons quatre équations, donc une solution est possible.
Express I après avoir substitué les autres inconnues des équations:
Numériquement
D'après le résultat de l'interprète de TINA.
om: = 20000 * pi;
Vs: = 10;
Est: = 1;
Z: = replus (R, replus (j * om * L, 1 / j / om / C2));
Z = [2.1046E0-2.4685E0 * j]
sys je
I = j * om * C1 * (Vs-Z * (I + Is))
fin;
I = [3.1531E-1 + 1.7812E0 * j]
abs (I) = [1.8089]
180 * arc (I) / pi = [79.9613]
importer Sympy en tant que s
importer cmath en tant que c
Replus= lambda R1, R2 : R1*R2/(R1+R2)
om=20000*c.pi
Vs=10
Est=1
Z=Replus(R,Replus(1j*om*L,1/1j/om/C2))
imprimer('Z=',cp(Z))
I=s.symboles('I')
A=[s.Eq(1j*om*C1*(Vs-Z*(I+Is)),I),]
I=[complexe(Z) pour Z dans un tuple(s.linsolve(A,I))(0]][0]
print("Je=",cp(Je))
print("abs(I)=",cp(abs(I)))
print("180*c.phase(I)/c.pi=",cp(180*c.phase(I)/c.pi))
La fonction temporelle du courant est donc:
i (t) = 1.81 cos (wt + 80°) A
Vous pouvez vérifier la règle actuelle de Kirchhoff en utilisant des diagrammes de phaseur. L'image ci-dessous a été développée en vérifiant l'équation de nœud dans iZ = i + iG1 forme. Le premier diagramme montre les phaseurs ajoutés par la règle du parallélogramme, le second illustre la règle triangulaire de l'addition des phaseurs.
Maintenant, démontrons KVR en utilisant la fonction de diagramme de phaseur de TINA. Puisque la tension de la source est négative dans l'équation, nous avons connecté le voltmètre «à l'envers». Le diagramme de phaseur illustre la forme originale de la règle de tension de Kirchhoff.
Le premier diagramme de phaseur utilise la règle du parallélogramme, tandis que le second utilise la règle triangulaire.
Pour illustrer KVR sous la forme VC1 + VZ - VS = 0, nous avons de nouveau connecté le voltmètre à la source de tension à l'envers. Vous pouvez voir que le triangle de phaseur est fermé.
Exemple 2
Trouvez les tensions et les courants de tous les composants si:
vS(t) = 10 cos wla télé, 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.
Soit les inconnues les valeurs de crête complexes des tensions et des courants d'éléments `` passifs '', ainsi que le courant de la source de tension (iVS ) et la tension de la source de courant (vIS ). Au total, il existe douze inconnues complexes. Nous avons trois nœuds indépendants, quatre boucles indépendantes (marquées comme MI), et cinq éléments passifs qui peuvent être caractérisés par cinq «lois d'Ohm» - au total, il y a 3 + 4 + 5 = 12 équations:
Équations nodales pour N1 IVSM = IR1M + IC2M
pour N2 IR1M = ILM + IC1M
pour N3 IC2M + ILM + IC1M +IsM = IR2M
Équations de boucle forme1 VSM = VC2M + VR2M
forme2 VSM = VC1M + VR1M+ VR2M
forme3 VLM = VC1M
forme4 VR2M = VIsM
Les lois d'Ohm VR1M = R1*IR1M
VR2M = R2*IR2M
IC1m = j *w*C1*VC1M
IC2m = j *w*C2*VC2M
VLM = j *w* L * ILM
N'oubliez pas que toute équation complexe peut conduire à deux équations réelles, donc la méthode de Kirchhoff nécessite de nombreux calculs. Il est beaucoup plus simple de résoudre les fonctions temporelles des tensions et des courants en utilisant un système d'équations différentielles (non discutées ici). Nous montrons d'abord les résultats calculés par l'interpréteur de TINA:
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 = vis {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}
fin;
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]
importer Sympy en tant que s
importer les mathématiques en tant que m
importer cmath en tant que 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+degrés(phase(ivs))=",cp(180+m.degrés(c.phase(ivs))))
print("abs(vis)=",cp(abs(vis)))
print("degrés(phase(vis))=",cp(m.degrés(c.phase(vis))))
print("degrés(phase(vr1))=",cp(m.degrés(c.phase(vr1))))
print("degrés(phase(vr2))=",cp(m.degrés(c.phase(vr2))))
print("degrés(phase(ic1))=",cp(m.degrés(c.phase(ic1))))
print("degrés(phase(ic2))=",cp(m.degrés(c.phase(ic2))))
print("degrés(phase(vc2))=",cp(m.degrés(c.phase(vc2))))
print("degrés(phase(vc1))=",cp(m.degrés(c.phase(vc1))))
print("degrés(phase(iL))=",cp(m.degrés(c.phase(iL))))
print("degrés(phase(vL))=",cp(m.degrés(c.phase(vL))))
Essayez maintenant de simplifier les équations à la main en utilisant la substitution. Premier substitut eq.9. dans l'éq 5.
VS = VC2 + R2 IR2 a)
puis eq.8 et eq.9. en eq 5.
VS = VC1 + R2 IR2 + R1 IR1 b.)
puis eq 12., éq. 10. et moiL de éq. 2 en eq.6.
VC1 = VL = jwLIL = jwL (jeR1 - JEC1) = jwLIR1 - jwLjwC1 VC1
Express VC1
Express VC2 à partir de l'éq.4. et éq.5. et remplacer l'éq.8., l'éq.11. et VC1:
Remplacer les éq.2., 10., 11. et d.) Par l'éq.3. et j'exprimeR2
IR2 = IC2 + IR1 + IS = jwC2 VC2 + IR1 + IS
Remplacez maintenant d.) Et e.) Par l'éq.4 et exprimez IR1
Numériquement:
La fonction temps de iR1 est le suivant:
iR1(t) = 0.242 cos (wt + 155.5°) mA
Les tensions mesurées: