Драйвер реле ULN2003A: падение напряжения, обратный выброс и тепловой бюджет

ULN2003A Relay Driver: Drop, Flyback, and Thermal Budget

Драйвер реле ULN2003A: напряжение насыщения, обратный выброс и тепловой бюджет

Семь пар Дарлингтона в одном корпусе выглядят как семь бесплатных драйверов реле. Но это не так: каждый канал создаёт падение 0.9–1.6 V, а у корпуса один тепловой бюджет на все них.

Краткий ответ

  • Падение: VCE(sat) составляет 0.9 V типично при 100 mA, 1.2 V при 350 mA, до 1.6 V при 350 mA в худшем случае.
  • Тепловой: SOIC-16 — 88.6 °C/W. Семь каналов при 80 mA рассеивают 0.5 W → примерно +45 K.
  • Ток: 500 mA на канал — это ограничение по кремнию; при 350 mA в тепловой бюджет одновременно укладываются только два канала.
  • Управление: вход с сопротивлением 2.7 kΩ работает от 3.3 V (0.7 mA) и на пределе при 1.8 V (0.15 mA).
  • Обратноходовой преобразователь: COM должен быть подключён к питанию катушки, иначе внутренним ограничительным диодам некуда сбрасывать выброс напряжения.

1. Что представляет собой компонент

Параметр Значение Что это значит на практике
Channels 7 Darlington pairs Common emitter, open collector
Output voltage 50 V max Relays up to 48 V are fine
Current 500 mA per channel Thermal limit arrives far earlier
Input resistor 2.7 kΩ (ULN2003A) TTL and 5 V CMOS compatible
Clamp diodes Per channel, common cathode Requires COM wired to coil supply
Junction limit 150 °C absolute, 125 °C recommended Use 125 °C as the design target

2. Напряжение насыщения является ограничением при проектировании

ULN2003A выпускается в корпусах PDIP, SOIC, SOP, TSSOP и SOT — все 16 выводов с одинаковой цоколевкой. Корпус меняет только тепловое сопротивление — кристалл и падение на Дарлингтоне остаются теми же. Это удобно для компоновки и опасно для тепловых допущений: замена PDIP-16 на SOT-16 не является равноценной с точки зрения теплоотвода.

Вход 2.7 kΩ — это то, что делает его «совместимым с логикой». В ULN2004A используется 10.5 kΩ для CMOS при 6–15 V, а ULN2002A добавляет стабилитрон для управления PMOS при 14–25 V. Их путаница — распространенная ошибка в BOM: 2004A требует большего входного напряжения, а 2002A рассчитана на более высокий уровень управления.

Выход Дарлингтона — это два падения VBE плюс насыщение драйвера, и в техническом описании приведены три точки по току:

ULN2003A collector-emitter saturation voltage versus collector current
Рисунок 1 — типичное значение 0.9 V при 100 mA; в худшем случае 1.6 V при 350 mA. Этот разброс важен для напряжения катушки.

Это падение напряжения оказывается непосредственно последовательно с нагрузкой. Для реле на 5 V с током потребления 80 mA:

Vcoil = 5.0 - 0.9 = 4.1 V
Pchannel = 0.9 x 0.08 = 0.072 W

Реле, рассчитанное на 5 В, обычно имеет напряжение срабатывания около 3.5–3.75 В, поэтому 4.1 В достаточно. Но проверяйте именно порог срабатывания (must-operate), а не номинальное напряжение катушки: реле с порогом 4.2 В будет дребезжать на шине 5 В через этот компонент.

Coil voltage versus supply voltage through the driver and ideal
Рисунок 2 — Катушка никогда не получает полное напряжение шины. При 12 В разница составляет 0.9 В; при 5 В — 18 %.

Падение напряжения на Darlington и MOSFET в цифрах

Причина, по которой ULN2003A всё ещё используют, — удобство: один компонент, семь каналов, встроенные диоды-ограничители, резистивные входы. Причина, по которой его заменяют, — падение напряжения.

Ток нагрузки Падение напряжения на ULN2003A Мощность ULN FET логического уровня (RDS 0.1 Ω)
80 mA 0.9 V 0.072 W 0.008 V / 0.6 mW
200 mA 1.0 V 0.20 W 0.02 V / 4 mW
350 mA 1.2 V 0.42 W 0.035 V / 12 mW

При токах реле эта разница допустима; при токах соленоида или двигателя она определяет топологию. Канал на 350 мА при 1.2 В рассеивает 0.42 Вт в корпусе с бюджетом 0.96 Вт — два таких канала, и чип на пределе теплового режима, тогда как та же нагрузка через FET с 0.1 Ω рассеивала бы 12 мВт.

3. Тепловой режим: единый бюджет для семи каналов

Тепловое сопротивление корпуса — второе ограничение, и оно общее:

Корпус RθJA Бюджет при 40 °C (до 125 °C)
PDIP-16 66.7 °C/W 1.27 W
SOIC-16 88.6 °C/W 0.96 W
SOP-16 95.0 °C/W 0.89 W
TSSOP-16 114.1 °C/W 0.75 W
SOT-16 123.1 °C/W 0.69 W
7 каналов x 80 mA x 0.9 V = 0.50 W
SOIC-16: 0.50 x 88.6 = 44 K -> Tj = 84 C при температуре окружающей среды 40 C
SOT-16:  0.50 x 123.1 = 62 K -> Tj = 102 C

При 80 mA все семь каналов могут работать одновременно, даже в SOT-16. Картина меняется при более высоком токе:

350 mA, VCE 1.2 V: 0.42 W на канал
Бюджет SOIC-16 0.96 W -> 2 канала, а не 7
Junction temperature versus number of active channels for three packages
Рисунок 3 — При 80 mA корпус нормально работает при всех активных каналах. Ограничение появляется выше ~200 mA на канал.

Два практических правила снижения номинальных параметров делают таблицу полезной на практике. Во-первых, используйте максимальную температуру окружающей среды, которую продукт увидит внутри своего корпуса, а не лабораторную температуру — герметичный корпус добавляет 15–20 °C. Во-вторых, если выходы переключаются непрерывно (реле удерживаются включенными), рассматривайте рассеиваемую мощность как стационарную; если они работают импульсно, вместо этого используйте кривую переходного теплового импеданса, которая допускает более высокую импульсную мощность при малых коэффициентах заполнения.

Power dissipation per channel versus collector current
Рисунок 4 — Мощность растет быстрее, чем линейно, потому что VCE(sat) также увеличивается с током.

4. Управление входом от 3.3 V

Последовательный резистор 2.7 kΩ задает входной ток, который задает ток базы:

Iin ≈ (Vlogic - 1.4 V) / 2.7 kOhm

3.3 V: 0.70 mA
5.0 V: 1.33 mA
1.8 V: 0.15 mA

Дарлингтон с hFE примерно 1000 превращает 0.7 mA в достаточный ток коллектора. При 1.8 V входной ток падает до 0.15 mA, что может не обеспечить насыщение нагрузки 500 mA — транзистор работает, но в линейной области и нагревается.

Input current versus logic high voltage for the 2.7 kOhm input resistor
Рисунок 5 — 3.3 V — комфортно; 1.8 V — это где начинается «оно вроде бы работает».

Два практических замечания. Во-первых, вход — это резистор к базе Дарлингтона, поэтому GPIO 3.3 V видит около 0.7 mA — вполне в пределах любого вывода MCU. Во-вторых, на входе нет подтяжки вниз; если управляющий вывод плавает во время сброса, выход может включиться. Добавьте подтяжку вниз 10 kΩ на входе для всего, что должно оставаться выключенным.

Скорость переключения — не сильная сторона

ULN2003A включается и выключается за единицы микросекунд, а не наносекунд. Это нормально для реле и ламп и неправильно для управления яркостью с помощью PWM или микрошагового управления шаговым двигателем на высоких частотах.

Если вам нужен PWM, варианты — MOSFET с логическим уровнем (быстрый, но без ограничительного диода) или специализированная микросхема драйвера. Подача PWM 20 kHz на ULN2003A приводит к медленному переходу с потерями и слышимому шуму от нагрузки.

5. Вывод COM и индуктивные нагрузки

Каждый выход имеет диод ограничения, катод которого подключён к выводу COM. Эти диоды работают только тогда, когда COM подключён к тому же источнику питания, что и нагрузка:

Flyback path with COM connected to the coil supply and without clamp
Рисунок 6 — COM является обратным путём для тока катушки. Если оставить COM неподключённым, выброс напряжения перейдёт в транзистор Дарлингтона.

Напряжение ограничения равно напряжению питания плюс падение напряжения на одном диоде, поэтому катушка на 12 В ограничивается на уровне около 13,2 В — это безопасно для выхода на 50 В. Ток циркулирует через катушку и диод, пока не затухнет; драйвер видит только падение напряжения на сопротивлении катушки.

Если COM подключён к шине 5 В, а катушка питается от 12 В, диод оказывается обратно смещённым из-за этой ошибки и не работает. Это распространённая ошибка монтажа на платах с несколькими шинами питания, и её симптом — драйвер, который выходит из строя только на канале с реле на 12 В.

Смешанные источники питания в одном корпусе

Диоды ограничения имеют общий катод, поэтому вывод COM каждого канала должен обеспечивать прохождение тока от собственного источника питания катушки. Если один корпус управляет реле на 5 В и на 12 В, COM нельзя подключить к обеим шинам через внутренние диоды.

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

Именно поэтому релейные платы часто группируют выходы по напряжению катушки, а не по функции: корпус — это общая тепловая и электрическая область, а не семь независимых драйверов.

6. Что выходит из строя в эксплуатации

Случай 1: дребезг реле на шине 5 В

Реле срабатывает, катушка нагревается, сопротивление растёт, напряжение на катушке падает, и якорь отпускает. Драйвер ни при чём; падение 0.9 V убрало запас. Проверяйте гарантированные напряжения срабатывания и отпускания реле, а не только «катушка 5 В».

Случай 2: «ULN нагревается всего от двух реле»

Два реле на 12 В с током 120 мА каждое: 2 × 0.12 × 1.0 = 0.24 Вт — нагрев незначительный. Обычная реальная причина — третий канал, управляющий неучтённой нагрузкой, либо соленоид на 400–500 мА на одном канале (0.6–0.8 Вт только на нём). Измеряйте ток по каждому каналу, а не полагайтесь на техническую документацию реле.

Случай 3: драйвер выходит из строя при отпускании реле

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

Случай 4: драйвер шагового двигателя, который «работает, но перегревается»

Униполярный шаговый двигатель, управляемый через ULN2003A при 400 мА на фазу, — распространённое любительское решение. Четыре фазы при падении 1.2 В дают 1.9 Вт — вдвое больше допустимого для SOIC. Плата работает, двигатель вращается, а драйвер отказывает летом. Решение — либо снизить ток, либо использовать радиатор с корпусом DIP, либо специализированный драйвер шагового двигателя.

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

7. Альтернативы в зависимости от требований

Вариант Подходит, когда Когда избегать
ULN2003A 5–12 V relays at 50–150 mA, 3.3–5 V logic >250 mA per channel; 1.8 V logic
ULN2803A Same, but 8 channels needed Same thermal limits per channel
Logic-level MOSFET >0.5 A, or low drop needed No per-channel clamp; add diodes
Solid-state relay AC loads, long life, no contact wear Cost; leakage current; heat sinking

Кому не следует использовать ULN2003A:схемы с логикой 1.8 V; любой канал с током выше 250 mA непрерывно в герметичном корпусе; нагрузки, которым требуется падение на низкой стороне менее 0.5 V; и платы, где COM не может быть соединён с питанием катушки.

Если вам нужен больший тепловой запас при том же посадочном месте, версия PDIP удваивает тепловой бюджет, уменьшая RθJA вдвое. Если плата герметична, считайте значение для SOIC оптимистичным и снижайте его на 20 %.

НашВерсия PDIP-16есть на складе для сквозного монтажа; аверсия SOIC-16— это серийная деталь. Для проверки кода даты и подлинности драйверов см. нашпроцесс прослеживаемости.

8. Проверка

Чек-лист для стенда

Проверка Проходит Если не проходит
VCE(sat) at working current ≤ 1.1 V at 100 mA Check base drive and input voltage
Coil voltage Above must-operate with margin Use a lower-threshold relay or a FET
Package temperature, 20 min Stable, < 90 °C Reduce channels or change package
Collector spike at turn-off Clamped near Vs + 1.2 V COM not connected to coil supply
Input high level at the pin ≥ 2.4 V (for 3.3 V logic) Add pull-down only, not pull-up
  1. Измерьте VCE(sat) при фактическом токе нагрузки и рассчитайте мощность на канал.
  2. Просуммируйте все активные каналы и проверьте соответствие лимиту корпуса для наихудшей температуры окружающей среды.
  3. Проверьте осциллографом коллектор при выключении: при подключённом COM выброс должен ограничиваться вблизи Vs + 1.2 В.
  4. Проверьте напряжение гарантированного срабатывания реле по формуле Vcoil = Vs − VCE(sat).
  5. Подтвердите высокий логический уровень на входном выводе во время работы, а не только на выводе MCU.

Для версии той же проблемы с MOSFET нижнего плеча см.Руководство по управлению затвором 2N7002; для стороны питания платы реле,Тепловой расчёт TP4056использует тот же метод.

9. Проверка проекта в трёх вопросах

Пример расчёта: четырёхканальная плата реле 12 В

Четыре реле на 12 В при 90 мА, логика 3.3 В, SOIC-16, герметичный корпус при температуре окружающей среды 55 °C:

P на канал = 90 мА x 0.95 В = 0.086 Вт
Всего       = 4 x 0.086 = 0.34 Вт
dT          = 0.34 x 88.6 = 30 К
Tj          = 55 + 30 = 85 C  (предел 125 C)
На катушке  = 12 - 0.95 = 11.05 В

Вердикт: комфортно. COM к 12 В, один подтягивающий к земле резистор 10 кОм на каждый вход.

Теперь заменим на реле на 5 В при 90 мА на той же плате, сохранив питание 12 В и добавив стабилизатор 5 В: напряжение на катушке становится 4.05 В, а напряжение гарантированного срабатывания реле должно быть ниже этого. С точки зрения тепловыделения ничего не меняется — поэтому эта ошибка проходит испытания и даёт отказ в эксплуатации.

  1. Какова сумма I × VCE(sat) по всем активным каналам?Сравните это с допустимым тепловым бюджетом корпуса из таблицы 2.
  2. Какое напряжение на самом деле видит реле?Перед проверкой порога срабатывания вычтите падение напряжения насыщения.
  3. Куда уходит ток катушки при выключении?Если COM не подключен к цепи питания катушки, ответ — «через драйвер».

10. FAQ

Может ли ULN2003A управлять реле на 12 V от GPIO 3.3 V?

Да. Входной резистор потребляет около 0.7 mA при 3.3 V, чего достаточно для насыщения транзистора Дарлингтона при токах реле в диапазоне 50–150 mA. Выходная сторона видит 12 V, что находится в пределах номинала 50 V.

Почему моё реле получает только 4.1 V от источника 5 V?

Потому что драйвер обычно имеет падение 0.9 V при 80 mA. Если напряжение срабатывания реле близко к 4.2 V, оно будет на грани. Либо используйте реле на 5 V с более низким порогом, либо MOSFET с меньшим падением.

Сколько каналов можно использовать одновременно?

При 80 mA — все семь, в любом корпусе. При 200 mA бюджет SOIC-16 допускает примерно четыре; при 350 mA — только два. Считайте сумму, а не номинальный ток на канал.

Нужны ли внешние диоды обратного хода?

Нет, если COM подключен к питанию катушки. Если COM нельзя подключить или нагрузка не является простой катушкой, добавьте внешние диоды.

Работает ли это с логикой 1.8 В?

На пределе. Входной ток падает примерно до 0.15 mA, что может не насытить тяжелую нагрузку. Вместо этого используйте преобразователь уровней или logic-level MOSFET.

Почему выход включается во время сброса?

Вход — это резистор к базе без внутренней подтяжки к земле. Плавающий вывод MCU может включить канал. Добавьте подтяжку к земле 10 kΩ на каждый вход, который должен оставаться выключенным.

Можно ли параллелить два канала для увеличения тока?

Не рекомендуется. Дарлингтоны не делят ток равномерно, и у каждого канала свой VCE(sat) и тепловой путь. Используйте MOSFET или драйвер, рассчитанный на этот ток.

ULN2003A — это то же самое, что и ULN2003V12?

Нет. Вариант V12 — это устройство с более низким напряжением и меньшим падением, предназначенное для управления реле на 3.3 V и 5 V. Перед заменой в любую сторону проверьте входной резистор и выходные параметры.

11. Источники

Подбор драйвера реле?

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

Наличие ULN2003A Отправить BOM

Check stock by part number

Turn this insight into a sourcing decision.

Need pricing or a drop-in alternative? Submit a BOM / RFQ or talk to our team.