Как определить коэффициент идеальности (N) диода по даташиту?

Я должен найти Is N из таблицы данных диодов 1N4004 и 1N4148. Я сделал это, оценив оба из них, разместив прямую линию на логарифмическом графике зависимости Id от Vd в таблице данных каждого диода. Есть ли другой способ узнать эти два параметра из таблицы данных? Спасибо.

Посмотрите на этот ответ и найдите код Python для диодов. Вам понадобится как минимум три измерения.
Вообще есть вопросы? Я считаю, что сделал вещи настолько конкретными, насколько это возможно. Если вы хотите, чтобы мы раскритиковали ваш собственный метод, вам придется раскрыть его детали, а также предоставить нам пример того, как вы примените его к конкретному примеру таблицы.

Ответы (1)

При просмотре таблицы данных есть как минимум три, а не два важных параметра. Кроме того, вам необходимо применять как можно большую точность в пределах, доступных вам на диаграмме. Это последовательное сопротивление, ток насыщения и фактор (не)идеальности. Таким образом, для их извлечения требуется как минимум три точки измерения.

Поначалу может показаться, что чем больше точек, тем лучше, поскольку процесс подгонки в основном представляет собой процесс интегрирования (имеют место суммирования, указанные частными производными) и, следовательно, имеет тенденцию лучше сглаживать случайные ошибки. Но люди, читающие диаграммы, могут с большей вероятностью совершать систематические ошибки. Так что я склонен считать, что можно просто сделать все возможное, чтобы получить три балла из диаграмм, разделив два конечных пункта на третий примерно посередине между ними.

Вот пример из диаграммы Vishay для таблицы данных 1N4148 :

введите описание изображения здесь

Я добавил синюю среднюю кривую через их две кривые предела рассеяния, а затем «обвел красным» три выбранные точки.

Эти точки были измерены в пикселях, и результаты следующие: [ 552 мВ 200 мю А 842 мВ 20 мА 1,158 В 200 мА ]

Подключив их к коду Python, работающему на Sage, я получаю: р 1,005 Ом , я СИДЕЛ 16.41 нА , и Н 2,283 .

Код, который я использовал:

def diode():
    print( "This program uses 3 diode measurements to extract parameters." )
    print( "You will need to have taken these measurements beforehand." )
    print( "Enter each point as [ <diode current>, <diode voltage> ]." )
    print( "" )
    TA= int( input( "Enter the ambient temperature in Celsius (default is 27 C): " ) or "27" )
    print( "" )
    VT= 8.61733034e-5 * ( 273.15 + TA )
    POINTS= []
    vd, id, N, ISAT, RS= symbols( "vd id N ISAT RS" )
    for i in range(3):
        pid, pvd= input( "Enter point " + str(i) + ": " ).split()
        POINTS.append( { vd: float( pvd ), id: float( pid ) } )
    EQS= []
    for i in range(3):
        EQS.append( Eq( POINTS[i][vd], RS*POINTS[i][id] + N*VT*ln(POINTS[i][id]) - N*VT*ISAT ) )
    print( POINTS )
    print( EQS )
    ANS= solve( EQS, [ RS, N, ISAT ] )[0]
    print( "RS   = " + str(ANS[0]) )
    print( "N    = " + str(ANS[1]) )
    print( "ISAT = " + str(exp(ANS[2])) )

Тем не менее, вы можете разработать свой собственный метод. Но я настоятельно рекомендую вам помнить, что в процесс, который вы используете, должны быть включены объем, контакт и сопротивление свинцу. Причина довольно проста. Это повлияет на форму кривых, которые вы видите, и если вы не учтете это, то ваши другие два числа будут еще дальше от реальности, чем в противном случае. Достаточно сложно получить приличные точки данных с графика, как он есть, чтобы не ухудшить его, пренебрегая важным параметром.

Приведенный выше код на самом деле несколько более надежен на Н чем по другим параметрам. Так что это, вероятно, полезно для того, что вы хотите, я думаю.