3、无源器件模型:电阻、电容、电感模型,寄生参数与理想模型差异

做仿真这么多年,我越来越觉得一个道理:仿真和实测的差距,往往就藏在那些被你当成「理想」的元器件里。刚入行那会儿,我总觉得电阻就是R,电容就是C,电感就是L。直到有一次,一个LDO的电源抑制比仿真怎么都对不上实测,折腾了两周,最后发现罪魁祸首是——一个0402电容的ESR。

嗯,从那以后,我再也不敢小看这些「小东西」了。

3.1 理想模型 vs. 真实世界

LTspice里,你直接拖一个电阻出来,它就是理想的。什么意思?就是它只有电阻值,没有温度系数,没有寄生电感,没有击穿电压。说白了,它活在数学世界里。

但真实世界呢?

  • 电阻:有引线电感、有寄生电容、有温度漂移、有噪声
  • 电容:有等效串联电阻(ESR)、等效串联电感(ESL)、有漏电流、有电压系数
  • 电感:有直流电阻(DCR)、有自谐振频率(SRF)、有磁芯饱和特性

你想想看,如果你的仿真模型里全是理想器件,那仿真结果能信吗?

核心观点:仿真的精度,取决于你对非理想因素的建模深度。忽略寄生参数,仿真就是「画饼充饥」。

3.2 电阻模型:不只是R=V/I

LTspice里电阻的完整模型,其实比你想象的要复杂。我个人习惯,在低频DC分析时用理想电阻就够了,但一旦涉及高频或大电流,就必须上真实模型。

3.2.1 电阻的寄生参数

寄生参数 来源 影响 典型值
串联电感 引线、封装 高频阻抗增加 0.5~5 nH
并联电容 两端间寄生 高频阻抗下降 0.1~1 pF
温度系数 材料特性 阻值随温度变化 ±50~±500 ppm/°C
噪声 热噪声 信噪比恶化 √(4kTRB) V/√Hz

在LTspice里,你可以用下面这个子电路来模拟一个「真实」的电阻:

.SUBCKT REAL_RES A B
R1 A B {R_VALUE} TC1={TC1} TC2={TC2}
L1 A 1 {L_SERIES}
C1 1 B {C_PARASITIC}
.ENDS REAL_RES

我的经验:做DC-DC转换器的电流检测时,千万别用理想电阻。我曾经用理想电阻仿真,效率算出来95%,实际板子只有88%。后来加上DCR和温度系数,仿真才和实测对上。

3.2.2 电阻的SPICE模型参数

LTspice的电阻模型支持以下关键参数:

  • TC1, TC2:一阶和二阶温度系数
  • T_ABS:温度
  • T_MEASURED:测量温度
  • W, L:几何尺寸(用于半导体电阻)

举个例子,一个1kΩ的电阻,温度系数为±100 ppm/°C,在85°C时的阻值变化:

R(T) = R0 * (1 + TC1*(T-T0) + TC2*(T-T0)^2)
     = 1000 * (1 + 100e-6 * (85-25))
     = 1000 * 1.006
     = 1006 Ω

才6Ω的变化?嗯,在精密应用中,这6Ω可能就是误差来源。

3.3 电容模型:ESR和ESL才是关键

电容这东西,我越用越觉得它「不老实」。理想电容的阻抗随频率增加而无限下降,但真实电容呢?到了某个频率点,它反而开始像电感一样了。

3.3.1 电容的等效模型

一个真实的电容,可以等效为:

  • C:理想电容
  • ESR:等效串联电阻(来自电极、介质损耗)
  • ESL:等效串联电感(来自引线、内部结构)
  • R_leak:漏电阻(绝缘电阻)

LTspice里,你可以用这个子电路来建模:

.SUBCKT REAL_CAP A B
C1 A 1 {C_VALUE}
R_ESR 1 2 {ESR}
L_ESL 2 B {ESL}
R_LEAK A B {R_LEAKAGE}
.ENDS REAL_CAP

注意:电容的自谐振频率(SRF)由ESL和C决定:SRF = 1 / (2π√(L*C))。超过SRF后,电容就变成电感了。做电源去耦时,一定要确保工作频率远低于SRF。

3.3.2 不同电容类型的寄生参数对比

类型 ESR (典型) ESL (典型) SRF (典型) 适用场景
MLCC (X7R) 1~10 mΩ 0.5~2 nH 100 MHz~1 GHz 高频去耦
钽电容 100~500 mΩ 2~5 nH 10~50 MHz 中频滤波
铝电解 0.1~1 Ω 5~20 nH 1~10 MHz 低频储能
薄膜电容 1~10 mΩ 1~5 nH 50~500 MHz 精密/高频

我记得有一次做RF匹配网络,用了钽电容做DC-block,结果高频插损大得离谱。后来换成MLCC,问题立刻解决。原因就是钽电容的ESR太大,在GHz频段根本没法用。

3.4 电感模型:DCR和磁芯饱和

电感可能是三个无源器件里最「难搞」的。理想电感就是L,但真实电感呢?

3.4.1 电感的非理想因素

  • DCR:直流电阻,来自线圈的铜损
  • 并联电容:匝间电容,导致自谐振
  • 磁芯损耗:涡流损耗、磁滞损耗
  • 饱和特性:电流增大时,电感量下降

LTspice里,电感模型可以这样写:

.SUBCKT REAL_IND A B
L1 A 1 {L_VALUE}
R_DCR 1 B {DCR}
C_PAR 1 B {C_PARASITIC}
.ENDS REAL_IND

关键点:做开关电源仿真时,电感的饱和特性必须建模。我曾经用理想电感仿真一个Boost电路,输出纹波仿真值20mV,实测200mV。后来加上饱和模型,纹波仿真变成180mV,基本吻合。

3.4.2 电感饱和建模

LTspice支持用Flux语句来定义非线性电感:

L1 N001 N002 Flux='L0*Isat*tanh(x/Isat)'
* L0 = 10µH, Isat = 2A

这个模型模拟了电感随电流增大而饱和的现象。当电流超过Isat时,电感量急剧下降。

3.5 知识结构图:无源器件模型全景

下面这张图,是我自己总结的无源器件建模思路,分享给你:

无源器件模型与寄生参数全景图 无源器件模型与寄生参数全景图 电阻模型 电容模型 电感模型 寄生参数 • 串联电感 (0.5~5 nH) • 并联电容 (0.1~1 pF) • 温度系数 (±50~±500 ppm/°C) • 热噪声 (√4kTRB) 寄生参数 • ESR (1 mΩ~1 Ω) • ESL (0.5~20 nH) • 漏电阻 (MΩ~GΩ) • 自谐振频率 (SRF) 寄生参数 • DCR (mΩ~Ω) • 并联电容 (pF级) • 磁芯损耗 (涡流+磁滞) • 饱和特性 (Flux模型) 核心原则:仿真精度 = 理想模型 + 关键寄生参数 + 工作条件匹配 💡 我的建议:低频DC仿真用理想模型,高频/大电流/精密仿真必须加寄生参数 💡 从厂商数据手册提取ESR/ESL/DCR/SRF,建立自己的器件库

3.6 实战建议:如何选择模型复杂度

你可能会问:是不是每次仿真都要用最复杂的模型?

我的回答是:看情况。

  • DC工作点分析:理想模型就够了,寄生参数影响微乎其微
  • 低频AC分析(<1 MHz):加ESR和DCR,忽略ESL和电容
  • 高频AC分析(>10 MHz):所有寄生参数都要考虑
  • 瞬态大电流分析:必须加饱和模型和温度系数
  • 噪声分析:电阻噪声模型必须开启

我的习惯:先跑一遍理想模型,快速验证功能。然后逐步加入寄生参数,观察哪些参数对结果影响最大。这样既节省时间,又能抓住关键因素。

3.7 避坑指南

最后,分享几个我踩过的坑:

  • 电容ESR选错:做LDO输出电容时,用了低ESR的MLCC,结果环路不稳定。后来串了个小电阻才搞定。
  • 电感饱和没考虑:Boost电路满载时电感饱和,电流失控。仿真时没加Flux模型,根本看不出来。
  • 电阻温度系数忽略:精密分压电路,温度变化10°C,输出偏了2%。后来换成低温漂电阻才解决。
  • 电容SRF没注意:RF去耦用了大电容,结果在目标频率上已经呈感性了。

嗯,这些坑,你记住了,就能少走很多弯路。