4·14

节点法遇到电压源:已知节点与超节点 (supernode)

观察法的每一项都是"电阻电流 = G×G\times 电压差"。理想电压源没有这种关系:它两端电压固定,但电流是多少它自己说不出来,由外电路决定。所以在电压源的端点写 KCL,会冒出一个未知的电源电流,观察法填不进去。分两种情况处理。

情况 A:电压源一端接参考节点

另一端的节点电压直接已知(例题 1 的 v3=16v_3 = 16 V)。这个节点的 KCL 里含有未知的电源电流,而且我们也不需要它,所以删掉这一行。它在其它行里出现的项 YkjvjY_{kj}v_j 是已知数,移到右边。电源电流如果题目要,最后再算。

情况 B:电压源两端都不是参考节点(浮动电压源)

用"先假装、再相消"的办法,这样还能继续用观察法:

  1. 给电压源设一个未知电流 ixi_x,从节点 aa 经电源流到节点 bb。
  2. 暂时把它当成一个电流源,照常用观察法写所有行。ixi_x 在第 aa 行右边是 −ix-i_x(流出 aa),在第 bb 行右边是 +ix+i_x(流入 bb)。
  3. 把第 aa 行和第 bb 行相加。ixi_x 一正一负,消掉了。相加得到的这一行就是超节点的 KCL。
  4. 相加使方程少了一个,用电压源本身的约束补上:va−vb=Vsv_a - v_b = V_s(+ 端在 aa)。
为什么相加是合法的

画一个圈把节点 aa、bb 和它们之间的电压源一起包住。电荷守恒对任何封闭边界都成立:流出这个圈的总电流 = 0。电压源的电流在圈里面从 aa 到 bb,不穿过边界,所以不出现。把两个节点的 KCL 相加,算的正是穿过这个大圈的电流。这个圈就叫超节点。

超节点不是把 aa、bb 短路。两者电压差仍然是 VsV_s,所以第 4 步的约束必须写。

例题 2 · 第 6 讲的超节点电路

+ − VA = 10 V R₁ = 2 Ω R₄ = 4 Ω + − VB = 5 V R₂ = 8 Ω R₃ = 6 Ω 节点 1 节点 2 节点 3 超节点
第 6 讲板书(51:45)。VAV_A 接地(情况 A),VBV_B 浮动在节点 2、3 之间(情况 B),虚线框是超节点。

情况 A:v1=VA=10v_1 = V_A = 10 V。设 ixi_x 从节点 2 经 VBV_B 流到节点 3,假装写第 2、3 行:

第 2 行:−12v1+(12+18)v2=−ix\text{第 2 行:}\quad -\tfrac12 v_1 + \left(\tfrac12 + \tfrac18\right) v_2 = -i_x 第 3 行:−14v1+(16+14)v3=+ix\text{第 3 行:}\quad -\tfrac14 v_1 + \left(\tfrac16 + \tfrac14\right) v_3 = +i_x

相加,ixi_x 消掉,再代入 v1=10v_1 = 10:

−34v1+58v2+512v3=0  ⇒  58v2+512v3=7.5-\tfrac34 v_1 + \tfrac58 v_2 + \tfrac{5}{12} v_3 = 0 \;\Rightarrow\; \tfrac58 v_2 + \tfrac5{12} v_3 = 7.5

补上约束 v2−v3=5v_2 - v_3 = 5。代入 v2=v3+5v_2 = v_3 + 5:2524v3=7.5−258=358\tfrac{25}{24}v_3 = 7.5 - \tfrac{25}{8} = \tfrac{35}{8},所以

v1=10 V,v2=9.2 V,v3=4.2 Vv_1 = 10\ \text{V},\qquad v_2 = 9.2\ \text{V},\qquad v_3 = 4.2\ \text{V}

写成课上的矩阵形式(前两行是电压约束,第三行是超节点 KCL,所以各行单位不同,这没问题):

[10001−1−(G1+G4)G1+G2G3+G4][v1v2v3]=[VAVB0]\begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & -1 \\ -(G_1+G_4) & G_1+G_2 & G_3+G_4 \end{bmatrix}\begin{bmatrix} v_1 \\ v_2 \\ v_3 \end{bmatrix} = \begin{bmatrix} V_A \\ V_B \\ 0 \end{bmatrix}

课上把这个数值解留作练习;这里的 9.2 V、4.2 V 是我们自己算的,已用 Python 验证。