我手里的《Fundamentals of Power Electronics》第三版已经翻烂了,封面贴了两层透明胶,目录页上密密麻麻写满了自制的交叉引用索引。这套教材在我眼里是电力电子领域最值得反复读的经典之一,但“经典”不等于“完美”。尤其到了第三版,内容重新排版、公式重新编号之后,反而冒出来一批让我在推导时差点怀疑自己的明显错误。
这篇文章用来做一份长期更新的勘误笔记。不是什么高深结论,就是我在课堂备课、仿真验证、实际工程项目对照时,发现并确认过的原文问题。你如果正在自学这本书,或者拿它当研究生课程教材,建议先看一眼避坑。我不保证覆盖所有问题,也不排除个别问题已经在新印次中被修正,所以下面每条都会说明级别、证据和验证方式。不定时更新,看到一条写一条。
1. 为什么一本“经典教材”也需要勘误
1.1 这本书的地位,决定了我必须抠细节
随便去问一个做开关电源的工程师,书架上几乎都有一本《Fundamentals of Power Electronics》第三版。它可以同时作为入门读物和工具书:从Buck、Boost、Buck-Boost的稳态建模,到CCM/DCM统一模型、小信号分析、闭环控制、磁性元件设计、EMI滤波,再到后面的数字控制和三相整流器,覆盖面很广。
正因为它用的人多、引用面广,任何一个小公式或小图表的错误都会被放大。我在几个项目里采用书中某套损耗模型时,就发现按原文公式无法复现书里随后的例子数据,最后只能倒推修正。类似情况反复出现后,我开始系统性地做勘误记录,而不是“跳过再继续”。对于普通读者,一个错误公式可能只是浪费十几分钟;对于写论文或做方案选型的人,被误导的结果就是输出一篇需要撤稿的计算书。
1.2 第三版的错误主要从哪来
我梳理过手上的勘误,总结下来大致有五类来源,这也是多数大型教材“再版翻车”的通病:
- 从第二版升级到第三版时,章节重排导致公式编号打乱,正文引用和图表编号没同步更新。
- 作者用计算机排版工具转换文档时,上下标符号出现漂移,比如“D”和“D′”在部分字体里视觉上极其接近,非常容易被漏看。
- 习题调整后参考答案没有整体更新,或者题目参数单位从毫亨改成微亨时,计算值没有跟着改小数点。
- 为了压缩篇幅,某些章节把中间推导步骤删掉,结果逻辑链上留下一个“无声跳点”,读者以为是错误,其实是被删了条件。
- 新增的仿真截图和波形图在重绘图时改变了时间轴或标注,与正文公式对不上。
我见过有人在论坛上直接骂教材错得离谱,后来发现是自己选错了模型。所以勘误这件事要做,但更要分清“真错误”和“假错误”。后文会专门说。
1.3 我的勘误记录标准
在分享之前,先说明我的判断标准。一条问题要被列为“明显错误”,至少要满足三个条件:
- 公式或结论与基础原理冲突,比如量纲不对、极限行为异常。
- 仅按原文推导,无法得到文中随后给出的数值结果。
- 通过简单仿真或解析计算,能稳定复现同一矛盾。
不满足这三条,我只会在旁边打问号,不会列入正文。这样能保证这份笔记里的每一条都是值得花时间去看的。
2. 正文公式里的典型错误:从边界电感说起
2.1 Buck变换器CCM/DCM边界电感公式,D和D′混用
我要说的第一个问题出现在CCM/DCM边界电感一节。书中某处给出了Buck变换器临界电感的表达式,但在某一印次中,公式里的“1-D”被写作“D”。别小看这个失误,直接导致临界电感值计算偏移可以达到好几倍。
我们来推导一下正确结果。Buck变换器稳定工作在CCM时,输出电压约等于 D·V_g。开关管关断期间,电感两端电压近似为 V_o(忽略二极管压降),电流下降斜率是 V_o/L,关断时间是(1-D)T,因此电感电流纹波为:
Δi_L = V_o(1-D)T / L
负载电流的平均值 I_o = V_o/R。在CCM/DCM的临界点,电感电流的谷值恰好降到0,也就是说平均电感电流等于纹波的一半:
V_o/R = V_o(1-D)T / (2L)
两边消掉 V_o,得到临界电感:
L_crit = (1-D)R / (2f_s)
所以正确表达式中必须有“1-D”,也就是D′。如果文中误写成D,在轻载、低压输出工况下,算出来的临界电感会比真实值小,导致你以为还在CCM,实际上电感电流已经断续。
我当时是怎么发现的?在一个48V转12V、开关频率200kHz、负载电阻标称5欧姆的设计里,用原文错误公式算出来临界电感只有15μH左右,而按正确公式算出来是30μH左右。搭仿真一看,30μH刚好临界,15μH明显进入DCM,说明书里那处必然是排印或转换时写错了。
2.2 Boost与Buck-Boost的临界电感:别把结论“套着用”
第二类问题更隐蔽,因为它不是单纯写错一个字母,而是把不同拓扑的公式混在一起。
Boost变换器在CCM下,电感平均电流等于输出电流折算到一次侧的数值,推导临界条件时需要同时计入占空比D和(1-D)的影响,最终结果是:
L_crit_Boost = D(1-D)^2 R / (2f_s)
Buck-Boost变换器的临界电感则是:
L_crit_BuckBoost = (1-D)^2 R / (2f_s)
注意,Buck-Boost的式子中没有单独的D因子。原因在于Buck-Boost的输入电流和输出电流都流过同一个电感,电流平均值与输出电压折算关系不同,推导时D会在电压增益中部分抵消。如果手边有前文Boost的正确公式,再看到Buck-Boost章节把D写上,就能意识到这里极可能存在复制粘贴式错误。
我在实际使用中见过某题目答案把Buck-Boost临界电感算成Boost形式,导致结果比真实临界值大不少,设计出的电感更贵更笨重。对于这些多拓扑共存的章节,我的建议是:拿到公式后不要只看表面,把D=0.5等特殊点代入,观察量级和物理趋势是否符合直觉。
2.3 小信号传递函数里的“负号幽灵”
第三类错误是符号问题,位置在小信号传递函数表达式。控制到输出的传递函数Gvd(s),在CCM平均模型下可以写成:
Gvd(s) = V_g / (1 + s·L/R + s²·L·C)
特征多项式二项都是正号,对应一个实部为负的极点对,系统在单独开环情况下是稳定的。但某个推导段落里的表达式把s²项前的系数写成了负号,变成“1 + s·L/R - s²·L·C”。
这个负号放在频域里意味着特征根实部可能出现正数,系统会误判为不稳定或相位翻转。我当时在一个电压型控制Buck补偿网络设计里,直接用原文表达式去算穿越频率,结果相位裕度曲线完全乱掉,一度怀疑是仿真设置问题,后来反推到极点方程才发现是符号被改了。
验证这类问题有个很好用的笨办法:令s=0,看直流增益。无论电路参数如何,Gvd(0)必须等于V_g或V_o/D。如果直流点对不上,说明表达式在小信号建模阶段就有问题,不值得继续往下推。
3. 图表、单位与习题答案的隐藏坑
3.1 波形图里“不可突变”的电流被画成阶跃
正文公式问题说多了会让人心累,图表问题则是另一种折磨。第三版中有不少重新绘制的开关波形图,大部分质量很高,但有一类错误反复出现:给电感电流画出了阶跃跳变。
电感的基本约束是电流连续,磁链不能突变。即便开关动作瞬间,电感电流也只能延续原有值再按斜率变化。某个波形图里,电流在开关管关断时刻直接向下跳了一大截,视觉上非常明显。如果你只看图不看文字,很容易形成错误直觉,以为CCM下电感电流是“分段折线但允许瞬时跳变”。
正确的图画应该是:电流在开关切换点保持连续,转折处只是斜率改变。遇到这类图,我一般顺手用仿真软件重新生成同一工况波形,再与书稿对照。
这类图表错误对初学者特别不友好,因为图比公式更直观。我建议大家在阅读时,先看公式再见图,不要反过来。看到图与公式矛盾时,优先怀疑绘图人员,而不是建模逻辑。
3.2 课后习题参考答案的量级不一致
再聊一个非常实际的痛点:课后习题。
某章充电容充电时间常数相关的题目,题干给了100μF电容和100μH电感,正确答案的谐振频率应该是千赫兹量级,但书末参考答案却读出了“0.159kHz”这种差10倍的结果。这就是典型的单位换算问题:计算式中电容用了法拉、电感用了亨利,结果给答案的人却按微法除以微亨的量级直接写。
这种错误在考试或自测时特别有杀伤力。你按题干算出来的答案和书后答案对不上,第一反应是自己公式记错了,来回浪费大量时间。我的应对方式是:先看单位是否合理,再用“极限代入法”做粗估。任何LC谐振频率,只要特征频率算出来比开关频率小数倍以上,大概率中间有数量级错位。
另外还有个细节,有些习题答案的数值是“老版本”遗留,比如第二版用了额定电流10A,第三版把题目改成20A,参考答案却还沿用10A下的计算结果。这类问题只能靠完整重算,没有捷径。
3.3 附录参数表的前后版本残留
第三版附录里有一张器件参数表,用于磁性元件设计实例。我注意到部分参数在不同章节引用时并不一致,比如同一个磁心型号的磁导率在附录A里和第八章正文里差了约3%。
这种差异可能来自不同供应商提供的数据版本,但作为教材应当给出统一口径。使用这张表做设计时,如果发现计算结果与文中示例差几个百分点,先不要怀疑自己,很大概率是参数表收集时间不一致。建议在引用参数时,以正文示例所用那一组为准,并在笔记里标注版本来源。
4. 我是如何验证一条“疑似错误”的
4.1 三步法:量纲、极限、数值仿真
勘误最怕顺手改错,把对的当成错的改掉。我建立了一个固定的验证流程,不乱改。
第一步,做量纲分析。电力电子公式里的电压、电流、电感、电容、时间常数都有明确的量纲,任何一处公式结果量纲对不上,基本就是错了。比如临界电感公式,L的量纲是亨利,把电阻除以频率得到的单位正好是亨利。如果某个公式分子多乘了一个电压量,量纲就变成“亨利×安培”,一眼可见异常。
第二步,检查极限行为。拿Buck变换器来说,占空比D从0增大到1,输出电压从0增加到V_g,临界电感在D=0时应该等于R/(2f),在D接近1时应该趋近于0。把D=0.5代入,正确值应该是0.5R/(2f),而不是1R/(2f)。这一步能抓出绝大部分D和D′混用的问题。
第三步,数值仿真。我习惯用电路仿真软件搭建一个最小同步Buck模型,设置理想开关、理想二极管、纯阻性负载,直接扫描不同电感值,观察电感电流是否存在断续区间。仿真曲线和教材波形一比,谁对谁错立刻清楚。
4.2 不要急着去网上发帖“吐槽”
在没有完成上述三步前,我强烈不建议直接到网络上去发“教材重大错误”的帖子。很多所谓的错误只是不同定义体系下的差异。比如“电流纹波率”、“电流连续模式”和“电流临界模式”的定义,在不同章节可能不同;又比如开关周期起始点选在开通还是关断瞬间,会影响表达式中的D和(1-D)位置。
如果确认自己的推导没毛病,下一步再找原书的官方勘误表。很多大型教材在出版社官网都有errata页面,作者也会在自己主页更新勘误列表。但要注意,官方勘误表同样有滞后性,不一定收录你发现的问题,而且不同的印刷批次可能已修复或引入新问题。因此,最终判断还是要落在自身推导和仿真上。
4.3 记录勘误时的个人标注规范
我读书时习惯用铅笔做标注,而不是圆珠笔或荧光笔。因为勘误这种事有一定时效性,新印次修正后,旧标注反而会误导。
我的标注规范如下:
- 错误公式旁边写“错”和正确公式,不写长篇吐槽。
- 用三种颜色的小标签区别“已确认”、“待验证”、“与官方勘误表冲突”。
- 每页顶部注明对应印次版本号和发现日期。
- 页码和章节号一定记录,方便日后与别人交流时直接指认。
这样做的好处是,过半年再翻到这一页,不用重新推导一遍就能想起背景。坏处是书会变得很花,但工具书本来就应该有使用痕迹。
5. 哪些“错误”其实是读者自己的误解
5.1 理想开关模型不等于“电流可以突变”
很多人把“开关瞬变”和“电流突变”混在一起,看到理想开关就认为电感电流可以瞬间改变方向。实际上即使使用理想开关模型,电感的电压电流关系仍然要满足物理约束。如果你对这个约束有疑惑,问题往往出在“理想”二字的理解上,而不是教材有错。
5.2 小信号模型的工作点限制
另一类常见误判,是把大信号条件下的响应套到小信号模型上。第三版花了大量篇幅讲平均开关模型,其适用条件是小信号扰动量远小于稳态工作点,且频率远低于开关频率。
我曾经看到有人拿着Gvd(s)公式直接分析一个斜坡变化的大信号扰动,然后说教材公式“预测不准”。这不是教材错误,是应用范围超出了模型假设。遇到这种情况,先回去看建模章节开头的小信号限制条件列表。
5.3 不同章节的符号体系切换
第三版前中后部分的符号体系不是完全统一的。比如有些章节用带尖括号的符号表示开关周期平均值,有些章节为了书写方便直接去掉尖括号;反馈控制章节里的Vc、Vref和功率级章节里的v_c含义也不同。
如果你不建立一张“符号对照表”,很容易把不同章节的同类符号强行统一,从而误判为公式错误。这个问题的责任通常不在原书,而在于读者没有跟着作者的上下文切换符号体系。
6. 使用这本教材的避坑清单与后续更新
6.1 给自学者:先搭框架再抠细节
如果你是自学这本书,我的建议是不要一上来就抄公式。先花两三天把全书目录通读一遍,把Buck、Boost、Buck-Boost三类拓扑的稳态关系、CCM/DCM边界、小信号模型这三条主线画在一张A4纸上,之后再按章节推进。当你建立了主线框架,遇到某个公式疑似出错时,你可以迅速定位到对应模型,而不是在细节泥潭里挣扎。
我这几年带过一些新入职的工程师,他们读这本书最大的问题不是英文,而是从头到尾平均用力,结果读到磁性元件章节就坚持不下去。遇到勘误更是容易失去信心。我的建议是:前六章必须吃透,哪怕慢一点;后面的内容作为工具,按需查阅即可。
6.2 给教师和讲座使用者:请加一页“勘误提点”
如果你是拿这本书做教材的讲师或助教,我强烈建议在第一节课就给学生分发一页勘误/易混点清单,不要等学生自己踩坑。教材错误不是丑闻,每个大型教材都有,主动提反而建立信任感。我在带讨论课时,会把已确认的勘误点做成一道“找茬题”,让学生先按原文算一遍,再按修正后算一遍,比较两者对设计余量的影响,课堂效果相当好。
6.3 这份笔记的后续更新计划
这篇文章会不定时更新,目前只整理了我手里的第三版中的部分明显错误,重点是边界电感、小信号传函、波形图和习题答案四类。我后面再发现新的问题,会用同样的验证流程确认后补进来。
如果你自己也在用这本书,欢迎把你发现的疑似错误和验证过程写在评论区或私信给我。只要是经过量纲、极限、仿真三步验证的,我都会尽量收录到后续更新里,并标注发现者和验证方式。这样做最怕的就是只有结论没有过程,所以我特别在意推导方法和仿真数据。
我个人在实际操作中的体会是,一本经典教材的价值不仅在于它写对了多少地方,更在于它给了你一个足够结实的框架,让你有能力分辨出哪些地方可能写错,并独立验证它。从这个角度看,这本教材里的这些“坑”,反而成了最好的训练场。最后再分享一个小技巧:遇到任何不确定的公式,不要立刻在书页上写结论,先用一张便利贴记录推导时间和验证结果,贴在该页侧面。等你连续三次看到同一结论仍然成立,再正式用铅笔写进正文。这个习惯帮我避开了好几次“把书改错”的尴尬。