这是「黑箱城堡」系列的第三篇:前两篇讲的是怎么把复杂网络折叠成两个元件(戴维南定理、诺顿定理),这一篇回到更底层——任何电路都绕不开的两条铁律:基尔霍夫电流定律(KCL)和电压定律(KVL)。
公式只有两个符号,很多人背得滚瓜烂熟,可一到手算就出事:箭头标反、电源升降搞混、回路方向换来换去,最后算出的数对不上。问题从来不在公式,而在符号约定和知识的边界。这篇把这两件事一次说透。
故事:森林里的引水渠
小狐狸阿栗这回不取水了,它要给森林里三户人家铺一套引水渠网:从城堡引水,一路分给三家。渠网有分水桩、有环路、有高低落差。
铜钉爷爷说:铺渠只要守两条铁律,剩下全是算术。
铁律一(KCL):分水桩前,进多少就得出多少
水不会凭空产生,也不会凭空消失。所以任何一个分水桩(电路的节点)上,流进来的水必须等于流出去的水:
或者更直白地写成:
这里有两个新手最容易含糊的点:
- 「节点」是一整块导体,不是纸面上的一个点。一根导线连着的整片铜皮、一整条地平面,都算同一个节点(所谓广义节点)。画原理图时把地线画成好几个符号,物理上是同一个桩。
- 电流必须有方向才能写方程。方向是我们自己假设的参考方向,先随便定,算出来是负数就说明实际方向与假设相反——物理一点没错。
图 1:绿箭头 = 假设流入,红箭头 = 假设流出。流出多少,就必须有多少流进来;写成代数和 时,只要全篇统一「流入取正」,符号自然不会乱。
铁律二(KVL):绕一圈回到原地,水位必须回到原处
沿着任意一条闭合水路走一圈,你会上升、也会下降,但回到出发点时,海拔必然是出发时那个海拔:升的总和等于降的总和:
具体怎么记账,只要盯住两件事:
- 电源:从「−」走到「+」是升高(+U);反过来走是降低(−U);
- 电阻:顺着电流方向过电阻是降低(−IR);逆着电流方向过是升高(+IR)。
一句话记法:顺着水流下坡,逆着水流上坡。
图 2:沿红虚线顺时针走一圈,把每一次电位变化记下来:电源升 、两个电阻各降 、,回到起点必须归零,于是 。
KVL 还有一个常被忽略的强处:它对任意闭合路径都成立,不只是「网孔」。你可以绕大圈、绕小圈、绕出个「8」字形,只要是闭合的,代数和就是零。
两条铁律加起来,够解任何电路
对一个有 条支路、 个节点的连通网络,独立方程总数正好是 :
| 定律 | 能给出的独立方程数 | 用在哪 |
|---|---|---|
| KCL | 个 | 节点(含广义节点) |
| KVL | 个 | 回路(网孔) |
为什么 KCL 少一个? 因为流入所有节点的电流加起来必然是 0——最后那个节点的方程,是前面所有方程的线性组合,写了也是白写。同理,KVL 只写「网孔」就够,把大回路也全写上会多出一堆相关方程,解不动还容易算错。
试炼:12 V 和 6 V 抢一个节点
一个节点 A 上挂三条支路,全部接到下方节点 B(取 ):
- 左支路: 电源(+ 朝上)串 ;
- 中支路:;
- 右支路: 电源(+ 朝上)串 。
三个电流方向全都假设为从 B 流向 A(向上)。按这个假设列方程:
节点 A 的 KCL(三条支路都向上,即都流入 A):
左回路的 KVL(顺时针:从 B 出发向上过电源、向右过 、向下过 、回到 B):
注意第三项: 假设向上,而我们向下穿过 ,是逆着电流走,所以是升高,取 。
右回路的 KVL(顺时针:向上过 、向右沿顶边、向下过 与 6 V 电源、向左回 B):
逐项记账: 这次是顺着 向上走,降低 ; 是逆着 向下走,升高 ;6 V 电源从「+」走到「−」,降低 。
三式联立(把后两式的 、 代入第一式即可):
节点电压顺手就出来了:
验算(这一步别省):
- KCL: ✓
- 左 KVL: ✓
- 右 KVL: ✓
结果怎么读? 、 是负数,意思是它们实际方向与我们假设的相反——往下流,分别是 1.2 A 和 0.4 A。物理上完全正常:中间那条 6 Ω 支路本来就是 A 电位(7.2 V)比 B 高,电流自然从 A 流向 B;右侧 6 V 电源被 7.2 V「顶」着,电流被倒灌进去(在充电/吸收功率)。
再验一次功率守恒(KCL + KVL 的直接推论):
| 元件 | 功率 |
|---|---|
| 12 V 电源 | 输出 |
| 6 V 电源 | 吸收 |
| 耗散 | |
| 耗散 | |
| 耗散 |
输出 ,去向是 ✓ 一分不差。算完电路拿功率对一次账,几乎能抓住所有符号错误。
图 3:三个电流都先假设向上。算出来 、 是负数,说明它们实际往下流——不是算错,是参考方向反了。
4 条注意事项(每条都踩过)
1. 参考方向可以随便标,但整篇必须一致
同一根导线,你标「向上」和标「向下」都对——只是算出来的数差一个负号。负号不是错,是信息:它告诉你实际方向与你假设的相反。真正致命的是中途换方向:方程按「向上」列的,代数时又按「向下」代入,必错。
图 4:左右两次算的是同一个电流。改参考方向不会改变答案,只会让符号翻面——但绝不能中途换。
2. 电源的「升/降」最容易反
从「−」到「+」是升高,从「+」到「−」是降低。而且只跟你走的方向有关,跟电流方向无关——电压源两端的电压是它自己定的,不由电流决定。这是 KVL 里翻车率最高的一处。
3. 有变化磁通的回路,KVL 不能直接用
这一点几乎所有入门教材都不强调,但做电源的人天天撞上。计入磁通后,闭合回路的电压代数和不是零,而是:
所以下面这些地方不能照搬 KVL:
- 变压器 / 耦合电感:原副边各自成环,磁芯把两边耦合起来;
- 开关电源的功率回路:MOS、电感、二极管围成的小环,换流瞬间 极大,寄生电感上的感应电压会让示波器上看到的波形「不守恒」;
- 地环路:两个接地点之间穿过交变磁场,地线上就有一份感应电动势——这就是「地环路噪声」的来源。
KVL 的标准适用前提是集总参数电路:所有元件的尺寸远小于信号波长,磁场被约束在电感里、电场被约束在电容里。
4. 高频、长线,两条铁律都只是近似
一旦走线长度能和波长比(工程经验:超过 ),电压和电流沿线的分布不能忽略,必须换成传输线方程。KCL/KVL 没错,但「一个节点上处处等电位」这个隐含假设不成立了。这也是为什么 100 MHz 的板子上,同一根地线上的两点会有几十 mV 的电位差。
留给自己的小练习
- 把试炼里的 6 V 电源改成反接(+ 朝下),重算 、、 和 。(提示:KVL 右回路的 变 )
- 只写两个网孔的 KVL + 一个节点的 KCL,算出 、、 之后,再用「绕大圈」的外回路 KVL 验算一次:,看看是不是也成立。
- 想一想:为什么「流入取正」和「流出取正」两种约定都能用,但混用就会得到 0 = 0 这种废话方程?
两条铁律记牢就够用了:分水桩进出相等,绕一圈回到原处。剩下的只是把方向标清楚、把符号代对、算完对一次功率账。
下一篇换到器件视角:同一座城堡的水渠上装一道水闸 —— MOS 管参数速查:一道水闸讲清 8 个公式,附数据手册读法。