如何使用 SPICE 对 LED 进行建模?

电器工程 引领 二极管 香料 光电子学
2022-01-17 06:41:04

在实践中使用哪些二极管修改器来模拟带有 SPICE (Berkeley v.3f5) 的 LED? 这些可供我使用:

#       Name    Parameter                    Units      Default Example  Area
1       IS      Saturation current             A         1e-14   1e-14    *
2       RS      Ohmic resistance               Ω         0       10       *
3       N       Emission coefficient           -         1       1.0
4       TT      Transit-time                   s         0       0.1ns
5       CJO     Zero-bias junction capacitance F         0       2pF      *
6       VJ      Junction potential             V         1       0.6
7       M       Grading coefficient            -         0.5     0.5
8       EG      Activation energy              eV        1.11    1.11 Si
                                                                 0.69 Sbd
                                                                 0.67 Ge
9       XTI     Saturation-current temperature exponent  3.0     3.0 jn
                                                                 2.0 Sbd
10      KF      Flicker noise coefficient      -         0
11    AF      Flicker noise exponent         -         1
12    FC      Coeff. for for.-bias dep. cap. formula   0.5
13    BV      Reverse breakdown voltage      V         ∞       40.0
14    IBV     Current at breakdown voltage   A         1.0e-3
15    TNOM    Parameter measurement temp.    °C        27      50

3.4.2 二极管模型 (D) 二极管
的直流特性由参数 IS 和 N 确定。其中包括一个欧姆电阻 RS。电荷存储效应由传输时间 TT 和由参数 CJO、VJ 和 M 确定的非线性耗尽层电容建模。饱和电流的温度依赖性由参数 EG、能量和 XTI 定义,饱和电流温度指数。测量这些参数的标称温度为 TNOM,默认为 .OPTIONS 控制线上指定的电路范围值。反向击穿由反向二极管电流的指数增加建模,并由参数 BV 和 IBV(均为正数)确定。

例如,使用这种基本的、廉价的红色:

我不太关心高频特性——只是希望能够在其工作规格内匹配它的 IV 曲线(-10uA/-5V 泄漏到 +100mA/+2.2 'ish V 正向): 在此处输入图像描述

4个回答

正如您所说,有 3 个参数决定了二极管的直流响应。它们是饱和电流 ( IS )、发射系数 ( N ) 和欧姆电阻 ( RS )。我能够以相当高的精度拟合曲线,所以我将记录我的模型过程。

二极管的 SPICE 模型与 Schokley 二极管方程非常匹配:

If = IS(e^(Vf/(N*Vt)) - 1)

Vt = kT/q = 26mV室温下。

  1. 从数据表中提供的图表中获取实际值以用于比较。点数越多越好,越准确越好。下面是我根据您提供的数字估算的表格:

    Vf  If (mA)
    1.3 0.001
    1.4 0.010
    1.5 0.080
    1.6 0.700
    1.7 5.000
    1.8 20.000
    1.9 40.000
    2.0 65.000
    2.1 80.000
    
  2. 将值插入 Excel,并将 y 轴更改为对数刻度。您应该得到一个看起来与数据表中的原始图表相同的图表。为您的图表添加另一列,使用If从正向电压和常数ISN计算得出。我们可以使用这个配置来迭代地找到ISN

  3. 求解ISN我们试图匹配图形的线性部分(1.3 <= Vf <= 1.7)。调整IS将在 y 轴上移动曲线。将计算得到的图形得到相同的数量级。下一步是找到排放系数 ( N )。N影响幅度和斜率,因此可能需要对IS进行一些调整以使曲线保持在相同的范围内。一旦斜率匹配(线平行),修剪IS以使计算数据与数据表值匹配。我得到了IS = 1e-18N=1.8对于你列出的二极管。 在此处输入图像描述

  4. 识别RS这有点棘手。RS负责1.7V及以上电流的弯曲。考虑将欧姆电阻建模为与二极管串联的电阻器。随着通过二极管的电流增加,欧姆电阻上的电压降导致正向二极管电压Vf增加较慢。在小电流下,这种影响可以忽略不计。

首先要做的是获得 RS 的大致估计值,以用于更准确的解决方案。您可以通过使用测量的If反算Vf来从数据表值计算RS的有效值。输入值与计算出的 Vf 之间的电压差可与正向电流一起使用以产生电阻。在较高的电流下,这将是一个很好的起始值。

要使用RS绘制二极管电流,您需要首先计算给定电阻-二极管串联组合电压的二极管Vf 。维基百科列出了一个迭代函数——如果电阻压降很大,它很容易收敛。这个功能很容易在 Excel 中设置。对于低于 1.8 的Vf值,我对输入值进行了硬编码,因为迭代函数没有收敛。然后取这个Vf值来计算理想二极管的If。我用原始数据表图表绘制了这个。

通过反复试验,您应该能够获得与数据表值很好重叠的RS值。剩下的就是将模型放在 SPICE 中以验证您的工作。

下面是我使用 HSPICE 验证的二极管模型。仿真数据几乎是数据表图表的完美叠加。

.model Dled_test D (IS=1a RS=3.3 N=1.8)

我使用了这篇文章,它对二极管香料参数有很大帮助。

我清理了我的电子表格,并且 tyblu 已在此处提供下载。使用风险自负,结果不能保证,等等......等等......

首先,我要指出的是,您可以直接从 LED 数据表中读取额外的二极管参数BVIbvCjo作为“反向电流” Ir at Vr和“电容” C


除了 W5VO 的出色答案之外,我还通过以下方式为自己简化了流程:

  1. 我仅在 OpenOffice 上将XY 散点图的图表类型用作线条(使用 Excel 的 YMMV 等)并手动设置轴的最小值和最大值,例如 (X,Y)=(1.4-4.0, 0.01-50.0),防止它自动调整到我的采样数据范围之外。

  2. 在前三列采样点Vf_sampledIf_sampled以及使用Schokley二极管方程的 If_estimate 之后,我添加了第四个用于计算的Vf_estimate请记住,Rs是一个串联电阻(参见底部的图像),而If_estimate实际上为我们提供了此处使用的电流,因此可以简单地将列单元格计算为:
    Vf_estimate = Vf_sampled + (If_estimate * Rs)

  3. 我现在可以添加第三条曲线,在其中我使用新的第四列 ( Vf_estimate )作为 X 坐标,第三列 ( If_estimate ) 作为 Y 坐标,现在我可以轻松地与第一条曲线匹配(数据采样从数据表上的图表)。请注意,我不想简单地替换第二条曲线,因为直线对我的估计很有帮助。

  4. 我确定我在这里有点重复 W5VO,但它提醒了常量IsRsN在曲线形状方面的作用(在我们的log-lin尺度中):

    • 仅影响曲线的位置(上/左或下/右)
    • N影响曲线的斜率位置(因为它是一个线性系数并且曲线总是通过原点,原点总是在刻度之外)。
    • Rs定义了新的第三条曲线的曲率(渐进式向右扫掠)(因为它是另一个方向的线性项)。
  5. 我发现可能有用的东西:

    • 您可能会发现第二条曲线(直线)需要比采样数据看起来更陡峭且向上/向左倾斜,因为Rs引起的曲率从原点开始。
    • 您可以通过放大数据表(假设为 PDF)、截屏并在您最喜欢的绘图程序中打开它来获得相当准确的采样。然后,您可以使用例如选择或直线工具来测量区间线之间的距离(以像素为单位)以及该点到较低值区间线的距离。对于线性轴,该分数转换为简单的数据值。
    • XY 散点图允许您使用任意数据点。与等距采样相比,您可以使用更少的样本。您可以选择仅在最简单和严格需要的点对数据进行采样。例如,在半对数刻度上,您可以在对数刻度的间隔线上进行采样。如果需要,您仍然可以为估计曲线提供更多点(行)。(至少 OpenOffice 图表似乎忽略了没有相应 Y 坐标的点。)
      请注意,X 值(Vf_sampled)仍然需要按升序(或降序)顺序排列。否则线条会变得一团糟。
    • 请注意您正在估计/绘制/试图找到的单位的比例(例如毫安),并记住 SPICE 通常使用裸单位(安培)。
    • 请注意,W5VO 的Vt毫伏为单位。如果您使用伏特,请使用值0.026
    • 检查您的 SPICE 模拟器接受哪些度量前缀(m、p、u 等)。使用指数符号(例如 12E-34)可能更简单。
    • 编辑图表的单元格范围似乎总是重置(新)第三条曲线,因此我不得不将数据范围重新添加到 X 坐标并将第三列重新更改为其 Y 范围。在同一图表上添加更多点或对多个 LED 建模时要考虑到这一点 - 一次进行所有这些更改。(更改单元格内的数据显然不会触发重置。)
    • 图表上的曲线插值可能会因过冲或下冲而导致您误入歧途,而不会向您展示原因,即数据的实际点在哪里。
    • 直线段也可能会产生误导,因为对应点最终位于不同的位置,并且线性插值不会跟踪曲线的对数性质。(采样曲线和新的第三条曲线的所有数据点应位于另一条直线段的外侧(上/左)。)

AFAIK,我们的 LED 模型本质上是一个Rs电阻器和一个串联的Is / N估计二极管:(-R->-D-)

示意图

模拟此电路- 使用CircuitLab创建的原理图

我已经编写了一个 Python 程序,该程序将根据数据表 IV 特性对二极管的正向偏置特性进行建模。

http://leicesterraspberrypi.wordpress.com/projects/modelling-a-diode-for-use-in-spice-simulations/

随意尝试并发表评论。

这是我会使用的

#       Name    Parameter                    Units      Default Example  Area
2       RS      Ohmic resistance               Ω         0       10       *
6       VJ      Junction potential             V         1       0.6
13    BV      Reverse breakdown voltage      V         ∞       40.0
14    IBV     Current at breakdown voltage   A         1.0e-3

对于您的 VJ=1.8 典型值,BV=5。这让你大部分时间都在那里。