5·03

dependent source 电路可能无解或有无穷多解:non-existence 与 non-uniqueness

About 11 minLecture 10Book · Davis 5.1

第 4 章的结论是:只含电阻和 independent source 的电路,只要接法合法,节点方程(或网孔方程)就一定有唯一解。"接法合法"指两条:没有一个全部由电压源组成的回路(否则这些电压源的值必须恰好满足 KVL);也没有一组全部由电流源组成、把它们换成开路后电路就断成两块的支路(课本叫 cut set of current sources,否则 KCL 被这些电流源单独定死)。加了 dependent source 以后,接法完全合法的电路,在某些参数值下也会无解或有无穷多个解。这一节讲怎样找出这些参数值(考试常问"μ\mu 取什么值时无解"),以及它在实际电路里意味着什么。课上第 10 讲最后一个例子讲的也是这件事,放在例 2。

例题

例 1 课本图 5.13:一个回路里的 VCVS

+ − 8 V 4 Ω + − vx + − μ vx (+ 在下) 走
课本图 5.13:8 V 电压源(+ 在上)、4 Ω(它上面的电压叫 vxv_x,左 + 右 −)、一个 VCVS μvx\mu v_x。注意 VCVS 的 + 在下面。

求 vxv_x。μ\mu 取什么值时无解?

  1. 贴胶带。先把菱形当成一个值未知的电压源,电压叫 vcv_c,正负号照图上标的:+ 在下,− 在上。
  2. KVL。从左下角出发,顺时针绕一圈(图中"走"的方向),记下每个元件上电位的变化:经过 8 V 源从 − 到 +,升高 8;经过 4 Ω 从 + 到 −,降低 vxv_x;经过菱形从上面的 − 到下面的 +,升高 vcv_c。回到出发点电位不变,所以这些变化加起来为 0: 8−vx+vc=08 - v_x + v_c = 0 移项得 vx=8+vcv_x = 8 + v_c。
  3. 撕胶带。菱形的电压由标签决定:vc=μvxv_c = \mu v_x。代进上式:vx=8+μvxv_x = 8 + \mu v_x。
  4. 整理成"系数 × 未知数 = 常数"。把含 vxv_x 的项移到左边: (1−μ) vx=8(1 - \mu)\, v_x = 8
  5. 解。μ≠1\mu \ne 1 时两边除以 1−μ1-\mu:vx=81−μv_x = \dfrac{8}{1-\mu}。例如 μ=0.5\mu = 0.5:vx=8/0.5=16v_x = 8/0.5 = 16 V;μ=3\mu = 3:vx=8/(−2)=−4v_x = 8/(-2) = -4 V。
  6. 奇异值。μ=1\mu = 1 时系数为 0,方程变成 0⋅vx=80 \cdot v_x = 8。不管 vxv_x 取多少,左边都是 0,不可能等于 8,所以无解。
  7. 核对。μ=0.5\mu = 0.5:vc=0.5×16=8v_c = 0.5 \times 16 = 8 V,KVL:8−16+8=08 - 16 + 8 = 0 ✓。μ=3\mu = 3:vc=3×(−4)=−12v_c = 3 \times (-4) = -12 V,KVL:8−(−4)+(−12)=08 - (-4) + (-12) = 0 ✓。

为什么 μ=1\mu = 1 会无解。从 8 V 源看过去,4 Ω 和菱形串成一串。这一串两端的电压是 vx−vc=(1−μ) vxv_x - v_c = (1-\mu)\,v_x(4 Ω 上是 vxv_x;再经过菱形从 − 端到 + 端,要减去 vcv_c),流过它的电流是 4 Ω 上的 vx/4v_x/4。电压除以电流,这一串等效于一个 (1−μ)×4 Ω(1-\mu)\times 4\ \Omega 的电阻。μ=1\mu = 1 时它是 0 Ω,相当于一根导线直接接在 8 V 源两端:导线要求两端电压为 0,电压源要求 8 V,违反 KVL(课本图 5.14)。

例题

例 2 课上例题(第 10 讲):(μ−1)Vx=V1(\mu - 1)V_x = V_1

第 10 讲最后一个例子是一个含 VCVS(倍数 μ\mu)、由独立电压源 V1V_1 驱动的电路。录播里的电路图这里没有截图,下面从课上整理出的方程开始。按例 1 的步骤(贴胶带、KVL、撕胶带、移项)得到:

(μ−1) Vx=V1(\mu - 1)\, V_x = V_1

它和例 1 的方程是同一种:系数里含 μ\mu,常数是独立源的值。分情况讨论它的解。

  1. μ≠1\mu \ne 1。两边除以 μ−1\mu - 1,得到唯一解 Vx=V1μ−1V_x = \dfrac{V_1}{\mu - 1}。
  2. μ\mu 靠近 1。分母趋于 0,∣Vx∣|V_x| 越来越大。取 V1=2V_1 = 2 V:μ=3\mu = 3 时 Vx=2/2=1V_x = 2/2 = 1 V;μ=1.1\mu = 1.1 时 2/0.1=202/0.1 = 20 V;μ=1.01\mu = 1.01 时 2/0.01=2002/0.01 = 200 V;从另一侧,μ=0.9\mu = 0.9 时 2/(−0.1)=−202/(-0.1) = -20 V。μ\mu 从两侧逼近 1 时,解分别趋于 +∞+\infty 和 −∞-\infty。
  3. μ=1\mu = 1、V1≠0V_1 \ne 0。方程变成 0⋅Vx=V10 \cdot V_x = V_1。左边对任何 VxV_x 都是 0,右边不是 0:无解(nonexistence)。注意结论不是"Vx=∞V_x = \infty":∞\infty 不是一个电压值,正确的说法是这个模型在这里给不出答案。
  4. μ=1\mu = 1、V1=0V_1 = 0。方程变成 0⋅Vx=00 \cdot V_x = 0,任何 VxV_x 都满足:无穷多解(nonuniqueness)。
情况方程结果
系数 ≠0\ne 0Vx=V1/(μ−1)V_x = V_1/(\mu - 1)唯一解
系数 → 0解的大小 → ∞
系数 = 0,常数 ≠0\ne 00⋅Vx=V10 \cdot V_x = V_1无解
系数 = 0,常数 = 00⋅Vx=00 \cdot V_x = 0无穷多解

不止一个未知数:看行列式

奇异情况 (singular case)

贴胶带、列方程、撕胶带以后,任何线性电路的方程都能写成 Ax=b\mathbf{A}\mathbf{x} = \mathbf{b}:x\mathbf{x} 是未知的节点电压(或网孔电流);b\mathbf{b} 由 independent source 决定;A\mathbf{A} 由电阻值和 dependent source 的参数(μ,rm,gm,β\mu, r_m, g_m, \beta)决定。

  • det⁡A≠0\det \mathbf{A} \ne 0:唯一解。
  • det⁡A=0\det \mathbf{A} = 0 且方程互相矛盾:无解。
  • det⁡A=0\det \mathbf{A} = 0 且方程不矛盾(比如 b=0\mathbf{b} = \mathbf{0}):无穷多解。

让 det⁡A=0\det \mathbf{A} = 0 的参数值叫奇异值。一个未知数时,det⁡A\det \mathbf{A} 就是例 1、例 2 里的那个系数。

为什么纯电阻电路不会这样:只有电阻时,A\mathbf{A} 是第 4 章的电导矩阵,接法合法时总是可逆的。dependent source 的参数会进入 A\mathbf{A}(撕胶带时把含未知数的标签移到方程左边),而且可正可负,所以能找到一个参数值让 det⁡A\det \mathbf{A} 正好等于 0。

例题

例 3 两个节点:用行列式找奇异值

Is = 3 A R1 = 2 Ω R2 = 2 Ω R3 = 2 Ω g v1 v1 v2
三个电阻都是 2 Ω。v1v_1、v2v_2 是对地的节点电压。VCCS 的箭头朝上:电流 gv1g v_1 从地流进节点 2。

(a) g=1g = 1 S 时求 v1v_1、v2v_2。(b) gg 取什么值时无解?(c) 如果 Is=0I_s = 0,在这个 gg 下会怎样?

  1. 贴胶带。VCCS 的电流叫 ici_c,方向照箭头:从地流进节点 2。
  2. 节点 1 的 KCL(流出 = 流进)。流出:经 R1R_1 到地 v12\frac{v_1}{2},经 R2R_2 到节点 2 v1−v22\frac{v_1 - v_2}{2}。流进:Is=3I_s = 3 A。合并 v1v_1 的两项: v12+v1−v22=3\frac{v_1}{2} + \frac{v_1 - v_2}{2} = 3 v1−0.5 v2=3v_1 - 0.5\,v_2 = 3
  3. 节点 2 的 KCL。流出:v2−v12+v22\frac{v_2 - v_1}{2} + \frac{v_2}{2}。流进:ici_c。 v2−v12+v22=ic\frac{v_2 - v_1}{2} + \frac{v_2}{2} = i_c
  4. 撕胶带。ic=g v1i_c = g\, v_1。它含未知数 v1v_1,移到左边,左边化简成 −0.5v1+v2−gv1-0.5 v_1 + v_2 - g v_1: −(0.5+g) v1+v2=0-(0.5 + g)\, v_1 + v_2 = 0
  5. 写成矩阵,算行列式。 [1−0.5−(0.5+g)1][v1v2]=[30]\begin{bmatrix} 1 & -0.5 \\ -(0.5+g) & 1 \end{bmatrix}\begin{bmatrix} v_1 \\ v_2 \end{bmatrix} = \begin{bmatrix} 3 \\ 0 \end{bmatrix} 主对角线之积减副对角线之积,(−0.5)⋅(−(0.5+g))=0.5 (0.5+g)(-0.5)\cdot\big(-(0.5+g)\big) = 0.5\,(0.5+g): det⁡A=1−0.5 (0.5+g)=0.75−0.5 g\begin{aligned} \det \mathbf{A} &= 1 - 0.5\,(0.5 + g) \\ &= 0.75 - 0.5\,g \end{aligned} 矩阵不对称:gg 只出现在左下角。含 dependent source 的电路都是这样,这是正常的。
  6. (a) g=1g = 1 S。第 2 个方程给 v2=1.5 v1v_2 = 1.5\, v_1。代进第 1 个:v1−0.75 v1=3v_1 - 0.75\, v_1 = 3,0.25 v1=30.25\, v_1 = 3,所以 v1=12v_1 = 12 V,v2=18v_2 = 18 V。核对节点 1:122+12−182=6−3=3\frac{12}{2} + \frac{12 - 18}{2} = 6 - 3 = 3 A ✓。节点 2:流出 18−122+182=12\frac{18-12}{2} + \frac{18}{2} = 12 A,流进 gv1=12g v_1 = 12 A ✓。
  7. (b) 奇异值。令 det⁡A=0.75−0.5 g=0\det \mathbf{A} = 0.75 - 0.5\,g = 0,得 g=1.5g = 1.5 S。这时第 2 个方程给 v2=2v1v_2 = 2 v_1,代进第 1 个:v1−v1=3v_1 - v_1 = 3,即 0=30 = 3,无解。
  8. (c) Is=0I_s = 0、g=1.5g = 1.5 S。第 1 个方程变成 v1−0.5v2=0v_1 - 0.5 v_2 = 0,也是 v2=2v1v_2 = 2v_1。两个方程其实是同一个,v1v_1 取任何值都满足:无穷多解。电路里一个独立源都没有,却允许非零电压,这也说明模型出了问题。(g≠1.5g \ne 1.5 S 时,Is=0I_s = 0 只有 v1=v2=0v_1 = v_2 = 0 一个解。)

和例 1 对照。用 Cramer 法则,v1=3×1−(−0.5)×0det⁡A=Isdet⁡Av_1 = \frac{3 \times 1 - (-0.5) \times 0}{\det \mathbf{A}} = \frac{I_s}{\det \mathbf{A}},所以从 IsI_s 看进去的电阻是 v1Is=10.75−0.5g Ω\frac{v_1}{I_s} = \frac{1}{0.75 - 0.5g}\ \Omega(g=1g = 1 S 时 4 Ω,正好 12/312/3)。g=1.5g = 1.5 S 时它变成无穷大:电流源"看到"一个开路,违反 KCL。例 1 是电压源"看到"一个短路,违反 KVL。两种无解是对偶的。

真实电路里会怎样:饱和

在实验室里把例 1 的电路接起来、取 μ=1\mu = 1,电压表一定能读出一个数。问题出在模型:真实的 dependent source(比如用 transistor 做的放大器)靠电源供电,输出不可能超过电源电压。课本图 5.15 画了一个更真实的 VCVS:只有在 −ε≤vx≤ε-\varepsilon \le v_x \le \varepsilon 这一段里 vc=μvxv_c = \mu v_x;vx>εv_x \gt \varepsilon 时输出停在 +Vs+V_s,vx<−εv_x \lt -\varepsilon 时停在 −Vs-V_s,其中 Vs=μεV_s = \mu\varepsilon。这叫饱和 (saturation),±Vs\pm V_s 叫 saturation values,大约等于电源电压。

−ε = −4 ε = 4 −Vₛ +Vₛ 0 vₓ 理想直线 vc
课本图 5.15 的样子:中间一段斜率 μ,两边是平的。
例题

例 4 用饱和模型重做例 1(μ = 1)

取 μ=1\mu = 1、ε=4\varepsilon = 4 V,所以 Vs=4V_s = 4 V。线性模型说无解,用饱和模型求 vxv_x。

  1. 线性区内无解(例 1),所以 VCVS 一定在线性区外:要么 vx>4v_x \gt 4 V、vc=+4v_c = +4 V,要么 vx<−4v_x \lt -4 V、vc=−4v_c = -4 V。两种都试。
  2. 假设 vc=+4v_c = +4 V。例 1 的 KVL 仍然成立(它和 VCVS 的特性无关):vx=8+vc=12v_x = 8 + v_c = 12 V。检查:12>412 \gt 4,确实在正饱和区,假设自洽 ✓。
  3. 假设 vc=−4v_c = -4 V。vx=8−4=4v_x = 8 - 4 = 4 V。检查:负饱和要求 vx<−4v_x \lt -4 V,4 V 不满足 ✗。
  4. 答案:vx=12v_x = 12 V,VCVS 输出 4 V(课本图 5.16)。

步骤是:先按线性模型算;算不出来(或者算出的输出超过电源电压),就假设输出停在某个饱和值,再检查控制量是否真的在那一侧。op amp 的饱和(5·18)用的是同一套做法。

常见错误
  • 算到 0⋅vx=80 \cdot v_x = 8 就写"vx=∞v_x = \infty"或"vx=0v_x = 0"。正确的结论是:μ=1\mu = 1 时无解,因为系数为 0 而常数不为 0。
  • 分不清无解和无穷多解:系数(行列式)为 0 时,再看常数项,方程矛盾才是无解。
  • 除非题目给了饱和值,本书都按线性 dependent source 算。