Welche Diodenmodifikatoren werden in der Praxis verwendet, um LEDs mit SPICE (Berkeley v.3f5) zu modellieren? Diese stehen mir zur Verfügung:
# 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 Diodenmodell (D)
Die Gleichstromeigenschaften der Diode werden durch die Parameter IS und N bestimmt. Ein ohmscher Widerstand RS ist enthalten. Ladungsspeichereffekte werden durch eine Laufzeit TT und eine nichtlineare Sperrschichtkapazität modelliert, die durch die Parameter CJO, VJ und M bestimmt wird. Die Temperaturabhängigkeit des Sättigungsstroms wird durch die Parameter EG, die Energie und XTI definiert, der Exponent der Sättigungsstromtemperatur. Die Nenntemperatur, bei der diese Parameter gemessen wurden, ist TNOM, die standardmäßig auf den kreislaufweiten Wert gesetzt wird, der auf der Steuerleitung .OPTIONS angegeben ist. Der Rückwärtsdurchbruch wird durch einen exponentiellen Anstieg des Sperrdiodenstroms modelliert und durch die Parameter BV und IBV (beide positive Zahlen) bestimmt.
Verwenden Sie zum Beispiel dieses einfache, billige Rot:
Ich interessiere mich nicht sehr für Hochfrequenzeigenschaften - ich möchte nur in der Lage sein, die IV-Kurve innerhalb ihrer Betriebsspezifikationen anzupassen (-10 uA / -5 V Leckage bis +100 mA / +2,2 V vorwärts):
Wie Sie bereits sagten, gibt es 3 Parameter, die die DC-Antwort einer Diode bestimmen. Dies sind der Sättigungsstrom ( IS ), der Emissionskoeffizient ( N ) und der ohmsche Widerstand ( RS ). Ich konnte die Kurve mit einer ziemlich hohen Genauigkeit anpassen, daher werde ich mein Modellverfahren dokumentieren.
Das SPICE-Modell für die Diode stimmt sehr gut mit der Schokley-Diodengleichung überein:
If = IS(e^(Vf/(N*Vt)) - 1)
wo Vt = kT/q = 26mV
bei Zimmertemperatur.
Holen Sie sich die tatsächlichen Werte aus den im Datenblatt bereitgestellten Diagrammen, um sie zum Vergleich zu verwenden. Je mehr Punkte desto besser und je genauer desto besser. Unten ist eine Tabelle, die ich anhand der von Ihnen angegebenen Zahl geschätzt habe:
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
Fügen Sie die Werte in Excel ein und ändern Sie die y-Achse in eine logarithmische Skala. Sie sollten ein Diagramm erhalten, das mit dem ursprünglichen Diagramm aus dem Datenblatt identisch aussieht. Fügen Sie eine weitere Spalte für Ihr Diagramm hinzu, wobei If aus der Durchlassspannung und den Konstanten IS und N berechnet wird . Wir können diese Konfiguration verwenden, um IS und N iterativ zu finden .
Löse nach IS und N auf . Wir versuchen, den linearen Teil des Diagramms abzugleichen (1,3 <= Vf <= 1,7). Das Anpassen von IS verschiebt die Kurve in der y-Achse. Bringen Sie den berechneten Graphen in die gleiche Größenordnung. Der nächste Schritt besteht darin, den Emissionskoeffizienten ( N ) zu finden. N wirkt sich sowohl auf die Amplitude als auch auf die Steigung aus, daher kann eine gewisse Anpassung von IS erforderlich sein, um die Kurve auf demselben Niveau zu halten. Sobald die Steigungen übereinstimmen (die Linien parallel sind), trimmen Sie IS , sodass die berechneten Daten mit den Datenblattwerten übereinstimmen. Ich habe IS = 1e-18
, und N=1.8
für die Diode, die Sie aufgelistet haben.
Identifiziere RS . Das ist etwas knifflig. RS ist für die Krümmung des Stroms ab 1,7 V verantwortlich. Erwägen Sie, den ohmschen Widerstand als Widerstand in Reihe mit der Diode zu modellieren. Wenn der Strom durch die Diode ansteigt, bewirkt der Spannungsabfall über dem ohmschen Widerstand, dass die Vorwärtsdiodenspannung Vf langsamer ansteigt. Bei kleinen Strömen ist dieser Effekt vernachlässigbar.
Das erste, was Sie tun müssen, ist, eine ungefähre Schätzung von RS zu erhalten, die in den genaueren Lösungen verwendet werden kann. Sie können den Effektivwert von RS aus den Datenblattwerten berechnen, indem Sie für Vf unter Verwendung des gemessenen If zurückrechnen . Die Spannungsdifferenz zwischen dem Eingangswert und dem berechneten Vf kann mit dem Durchlassstrom verwendet werden, um einen Widerstand zu erzeugen. Bei den höheren Strömen ist dies ein guter Startwert.
Um den Diodenstrom mit RS darzustellen , müssen Sie zuerst die Diode Vf bei einer gegebenen Spannung für die Widerstands-Dioden-Reihenkombination berechnen. Wikipedia listet eine iterative Funktion auf - sie konvergiert leicht, wenn der Spannungsabfall des Widerstands signifikant ist. Diese Funktion war einfach genug, um in Excel einzurichten. Für Vf -Werte unter 1,8 habe ich den Eingabewert hartcodiert, da die iterative Funktion nicht konvergierte. Nehmen Sie dann diesen Vf- Wert, um das If der idealen Diode zu berechnen. Ich habe dies mit dem ursprünglichen Datenblattdiagramm gezeichnet.
Mit Versuch und Irrtum sollten Sie in der Lage sein, einen RS- Wert zu erhalten, der sich ziemlich gut mit den Datenblattwerten überschneidet. Alles, was übrig bleibt, ist, das Modell in SPICE zusammenzuwerfen, um Ihre Arbeit zu überprüfen.
Unten ist mein Diodenmodell, das ich mit HSPICE verifiziert habe. Die Simulationsdaten sind fast eine perfekte Überlagerung für das Datenblattdiagramm.
.model Dled_test D (IS=1a RS=3.3 N=1.8)
Ich habe diesen Artikel verwendet , der bei den Diodengewürzparametern sehr geholfen hat.
Ich habe meine Tabelle aufgeräumt und tyblu hat sie hier zum Download bereitgestellt . Nutzung auf eigene Gefahr, Ergebnisse ohne Gewähr, etc... etc...
Ich habe ein Python-Programm zusammengestellt, das die Vorwärtsvorspannungseigenschaften einer Diode basierend auf den Datenblatt-IV-Eigenschaften modelliert.
http://leiceterraspberrypi.wordpress.com/projects/modelling-a-diode-for-use-in-spice-simulations/
Probieren Sie es gerne aus und kommentieren Sie es.
Zunächst möchte ich darauf hinweisen, dass Sie die zusätzlichen Diodenparameter BV , Ibv und Cjo direkt aus dem LED-Datenblatt als „Reverse Current“ Ir bei Vr und als „Capacitance“ C ablesen können .
Zusätzlich zu der großartigen Antwort von W5VO habe ich den Prozess für mich auf folgende Weise etwas rationalisiert:
Ich habe den Diagrammtyp XY-Streudiagramm als Linien nur unter OpenOffice (YMMV mit Excel usw.) verwendet und die Minima und Maxima der Achsen manuell festgelegt, z. um zu verhindern, dass es automatisch außerhalb des Bereichs meiner abgetasteten Daten liegt.
Nach den ersten drei Spalten der abgetasteten Punkte Vf_sampled , If_sampled sowie der If_estimate unter Verwendung der Schokley-Diodengleichung habe ich eine vierte für eine berechnete Vf_estimate hinzugefügt . Denken Sie daran, dass Rs ein Serienwiderstand ist ( siehe Bild unten) und die If_estimate uns tatsächlich den hier zu verwendenden Strom angibt, sodass Sie die Spaltenzellen einfach wie folgt berechnen können:
Vf_estimate = Vf_sampled + (If_estimate * Rs) .
Ich könnte jetzt eine dritte Kurve hinzufügen, in der ich die neue vierte Spalte ( Vf_estimate ) als X-Koordinate und die dritte Spalte ( If_estimate ) als Y-Koordinate verwendet habe und die ich jetzt leicht mit der ersten Kurve (den abgetasteten Daten) abgleichen könnte aus der Grafik im Datenblatt). Beachten Sie, dass ich die zweite Kurve nicht einfach ersetzen wollte, da die gerade Linie bei meinen Schätzungen sehr hilfreich war.
Ich bin mir sicher, dass ich W5VO hier etwas wiederhole, aber es erinnert nur an die Rolle der Konstanten Is , Rs und N in Bezug auf die Kurvenform (in unserer Log-Lin- Skala):
Dinge, die ich gefunden habe, die nützlich sein könnten:
AFAIK, unser Modell für die LED ist im Wesentlichen ein Rs - Widerstand und eine Is / N - Schätzdiode in Reihe: (-R->-D-)
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Hier sind die, die ich verwenden würde
# 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
Für Ihren VJ=1.8 Typ, BV=5. Das bringt Sie am meisten dorthin.
Wenn sich jemand fragt, warum sein/ihr einseitiges Datenblatt keine If/Vf-Kurve hat, liegt es wahrscheinlich daran, dass er/sie nicht das vollständige Datenblatt hat. Ich weiß, dass z. B. Optosupply nur die Zusammenfassungen der ersten Seite auf ihrer Website veröffentlicht, aber sie senden Ihnen auf Anfrage die vollständigen Spezifikationen (mit allen If / Vf-, relativen Intensitäts- und Spektrumskurven usw.).
Sie können wahrscheinlich auch brauchbare Zahlen für alle Werte erhalten, indem Sie ein Datenblatt einer anderen LED derselben Farbe mit derselben Chemie (vom selben Hersteller) verwenden. Überprüfen Sie einfach, ob die grundlegenden Eigenschaften (wie Ströme, Spannungen und Wellenlängen) übereinstimmen.
Tolle Antworten, aber es ist einfach, die Shockley-Diodengleichung algebraisch zu lösen. Beachten Sie nur, dass das "minus 1" in der Formel für Durchlassströme, die eine Größenordnung größer als Is sind, was sehr klein ist, z. B. 1E-12 A, sehr irrelevant ist. Finden Sie nur zwei Punkte in der Grafik mit leicht zu lesen I- und V-Werte und setze diese in die Formel ein. Durch Dividieren beider Formeln wird Is eliminiert, sodass N einfach zu berechnen ist. Geben Sie dann N in eine Formel ein, um Is zu finden.
Hier sind meine LibreOffice Calc-Makros in Basic:
Const Q as double = 1.6E-19
Const K as double = 1.38E-22
Const T as double = 300
rem The Shockley diode equation, to build the graph Id(Vd) for hardcoded values of Is and N
Function shockley(Vd as double) as double
Const Is1 as double = 5.94463E-18
rem Note that 'Is' is a reserved word and cannot be the name of a variable
Const N as double = 0.191367
shockley = Is1 * (exp(Vd * Q / (N * K * T )) - 1)
End Function
rem Step 1 in solving the diode equation for N using values from a graph
Function ComputeN(V1 as double, V2 as double, I1 as double, I2 as double) as double
ComputeN = (Q / (K * T)) * (V1 - V2) / (log(I1) - log(I2))
End Function
rem Step 2 in solving the diode equation for Is
Function ComputeIS(V as double, I as double, N as double) as double
ComputeIS = I / (exp(Q * V / (N * K * T)))
End Function
rem for debugging
sub Test
dim N as double
N = ComputeN(1.85, 1.3, 0.1, 1.5E-6)
dim Is1 as double
Is1 = ComputeIs(1.85, 0.1, N)
end sub
Wenn Sie sich die Formeln ansehen, erkennen Sie vielleicht einfach die Beschreibung einer Geraden mit der Steigung von q/NkT, aber auch von Delta Log(Id) / Delta Vd.
Ich erhalte einen etwas ähnlichen Wert für Is: 5,94E-18 = 5,94 Atto-Ampere (W5VO fand 1 aA), aber ein viel anderes N = 0,19 (W5VO fand 1,8, Tippfehler?), dennoch werden die Daten auch auf das gleiche Diagramm zurückgerechnet :
Die Spalte Vd sind die Spannungen, Id ist der Diodenstrom gemäß der reellen Formel, Id0 ist der Strom mit der vereinfachten Formel, bei der das "minus 1" in "minus null" geändert wird. Da Id0 eine echte Exponentialkurve ist, können Sie den Logarithmus in Spalte Id0_log nehmen. (Sie können nicht den Log einer Kurve nehmen, die Null und negativ wird, wie Id) Der Plot ist von Id0_Log gegen Vd. In diesem Diagramm habe ich den untersten Teil gepunktet gemacht, weil es dort NICHT mehr der tatsächliche Diodenstrom ist, sondern den Wert von Is am Schnittpunkt mit der Y-Achse zeigt.
Wenn Sie der Exponentialkurve nach links folgen, gelangen Sie asymptotisch auf Null. Aber das "minus 1" subtrahiert einen Betrag von Is, so dass die echte Diodenkurve durch den Ursprung geht und bei negativen Spannungen einen Rückwärtsleckstrom von Betrag Is zeigt.
Wenn die ursprüngliche Herstellerkurve auf einem wirklich großen Log-Plot gewesen wäre, hätten wir einfach ein Lineal verwenden können, um die gerade Linie nach unten zu verlängern, um Is bei Vd = 0 leicht zu finden und dann N zu berechnen, anstatt zuerst N und dann Is mit zu berechnen über Makros. Die Linealmethode wurde in "The Spice Book" von Andrei Vladimirescu (1994) beschrieben.
tyblu