Драйвер реле 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 плюс насыщение драйвера, и в техническом описании приведены три точки по току:
Это падение напряжения оказывается непосредственно последовательно с нагрузкой. Для реле на 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 В через этот компонент.
Падение напряжения на 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
Два практических правила снижения номинальных параметров делают таблицу полезной на практике. Во-первых, используйте максимальную температуру окружающей среды, которую продукт увидит внутри своего корпуса, а не лабораторную температуру — герметичный корпус добавляет 15–20 °C. Во-вторых, если выходы переключаются непрерывно (реле удерживаются включенными), рассматривайте рассеиваемую мощность как стационарную; если они работают импульсно, вместо этого используйте кривую переходного теплового импеданса, которая допускает более высокую импульсную мощность при малых коэффициентах заполнения.
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 — транзистор работает, но в линейной области и нагревается.
Два практических замечания. Во-первых, вход — это резистор к базе Дарлингтона, поэтому GPIO 3.3 V видит около 0.7 mA — вполне в пределах любого вывода MCU. Во-вторых, на входе нет подтяжки вниз; если управляющий вывод плавает во время сброса, выход может включиться. Добавьте подтяжку вниз 10 kΩ на входе для всего, что должно оставаться выключенным.
Скорость переключения — не сильная сторона
ULN2003A включается и выключается за единицы микросекунд, а не наносекунд. Это нормально для реле и ламп и неправильно для управления яркостью с помощью PWM или микрошагового управления шаговым двигателем на высоких частотах.
Если вам нужен PWM, варианты — MOSFET с логическим уровнем (быстрый, но без ограничительного диода) или специализированная микросхема драйвера. Подача PWM 20 kHz на ULN2003A приводит к медленному переходу с потерями и слышимому шуму от нагрузки.
5. Вывод COM и индуктивные нагрузки
Каждый выход имеет диод ограничения, катод которого подключён к выводу 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 |
- Измерьте VCE(sat) при фактическом токе нагрузки и рассчитайте мощность на канал.
- Просуммируйте все активные каналы и проверьте соответствие лимиту корпуса для наихудшей температуры окружающей среды.
- Проверьте осциллографом коллектор при выключении: при подключённом COM выброс должен ограничиваться вблизи Vs + 1.2 В.
- Проверьте напряжение гарантированного срабатывания реле по формуле Vcoil = Vs − VCE(sat).
- Подтвердите высокий логический уровень на входном выводе во время работы, а не только на выводе 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 В, а напряжение гарантированного срабатывания реле должно быть ниже этого. С точки зрения тепловыделения ничего не меняется — поэтому эта ошибка проходит испытания и даёт отказ в эксплуатации.
- Какова сумма I × VCE(sat) по всем активным каналам?Сравните это с допустимым тепловым бюджетом корпуса из таблицы 2.
- Какое напряжение на самом деле видит реле?Перед проверкой порога срабатывания вычтите падение напряжения насыщения.
- Куда уходит ток катушки при выключении?Если 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. Источники
- Texas Instruments,ULN200x, ULQ200x — высоковольтные, сильноточные матрицы транзисторов Дарлингтона— значения VCE(sat), вход 2.7 kΩ, RθJA для каждого корпуса, проектный предел 125 °C.
- Texas Instruments,Техническое описание ULN2003V12— справочные материалы по 7-канальному драйверу реле и индуктивной нагрузки с отводом тока на землю.
- Electronics StackExchange,Управление 12 V реле от логики 3.3 V.
- Electronics StackExchange,Залипание контактов реле и проблема драйвера.
Подбор драйвера реле?
Пришлите напряжение катушки, ток катушки и сколько каналов работают одновременно. Мы рассчитаем падение напряжения и температуру перехода до того, как вы будете выполнять компоновку.