Перейти к содержанию

Ключ на биполярном транзисторе

Транзисторный ключ позволяет выводу микроконтроллера включать нагрузку с большим током или другим напряжением: нагрузка стоит в цепи коллектора NPN-транзистора, а вывод через резистор управляет базой. Главное в расчёте — ток базы с запасом по минимальному h21э из даташита.

Обновлено Редакция GAW

Ключ на биполярном транзисторе — самый простой способ включить от микроконтроллера то, что нельзя питать от его вывода: светодиодную ленту, лампу, зуммер, катушку реле. NPN-транзистор работает как выключатель в минусовом проводе нагрузки: при токе базы он насыщен и замыкает цепь, без тока базы — закрыт.

Коротко

Схема

Нижний ключ на NPN-транзисторе: нагрузка 12 В, 150 мА от вывода 3,3 ВНагрузка 12 В, 150 мА включена между плюсом 12 В и коллектором транзистора VT1 P2N2222A, эмиттер соединён с общим проводом. База подключена к выводу микроконтроллера 3,3 В через резистор R1 270 Ом, между базой и общим проводом — резистор R2 10 кОм.+12 ВНагрузка12 В, 150 мАVT1P2N2222AМК3,3 ВR1270 ОмR210 кОм

Нагрузка включена между плюсом своего питания (здесь 12 В) и коллектором, эмиттер — на общем проводе. Вывод микроконтроллера через резистор R1 подаёт ток в базу. Резистор R2 между базой и эмиттером держит транзистор закрытым, пока вывод не настроен как выход — после сброса он высокоомный вход. Общий провод источника 12 В и микроконтроллера обязательно соединяют, иначе ток базы не найдёт обратного пути.

Такой ключ называют нижним (low-side): он разрывает минусовой провод нагрузки. Напряжение нагрузки может быть любым — до допустимого Uкэо транзистора с запасом, — а микроконтроллер видит только переход база–эмиттер.

Расчёт

Пример: нагрузка 12 В, 150 мА, управление от STM32 с питанием 3,3 В, транзистор P2N2222A. Подробно о том, откуда берутся формулы, — в статье о биполярном транзисторе.

  1. Транзистор. У P2N2222A Uкэо = 40 В и Iк до 600 мА — для 12 В и 150 мА запас большой.
  2. Минимальный h21э при токе нагрузки: в даташите 50 при 150 мА и Uкэ = 1 В. Типичные значения и графики для расчёта не годятся.
  3. Ток базы с запасом k = 3: Iб = 3 · 150/50 = 9 мА. Запас нужен, чтобы транзистор гарантированно насытился с любым экземпляром и при холоде, когда h21э меньше.
  4. Резистор базы. Uбэ в насыщении берём 0,8 В: R1 = (3,3 − 0,8)/9 мА = 278 Ом, ближайший меньший номинал ряда E24 — 270 Ом. От Arduino с питанием 5 В: (5 − 0,8)/9 мА = 467 Ом → 470 Ом.
  5. Проверка вывода. У STM32F072 при токе 8 мА выходное напряжение единицы не ниже VDD − 0,4 В (DS9826, табл. 54), то есть 2,9 В. Тогда реальный ток базы (2,9 − 0,8)/270 ≈ 7,8 мА, отношение Iк/Iб ≈ 19 — это k ≈ 2,6, насыщение обеспечено. Предельный ток вывода STM32F072 — 25 мА (табл. 22), ATmega328P — 40 мА (DS40002061B, разд. 29.1).
  6. Мощность на транзисторе. В насыщении Uкэ ≤ 0,3 В (гарантировано при 150 мА и токе базы 15 мА), P = 0,3 · 0,15 = 45 мВт — при допустимых 625 мВт транзистор почти не греется.

Microchip в DS41285A (TIP #18) записывает ту же формулу без запаса — Rб = (VDD − VBE) · hFE · Rнагр/Vнагр — и в примере для нагрузки 100 мА и hFE = 180 получает 4,14 кОм от 3 В и 7,74 кОм от 5 В, но советует увеличить ток базы до 1–2 мА ради надёжного насыщения. Это то же, что запас k.

Калькулятор ниже открывается с примером реле 80 мА; для нагрузки 150 мА введите ток и h21э min = 50:

Исходные данные

В

Уровень единицы на выходе МК под нагрузкой — чуть ниже его питания

В

VBE(sat) из даташита: 0,7 В при единицах мА, до 1–1,2 В при сотнях мА

мА

hFE min при токе нагрузки: BC547B — 200 (2 мА), 2N2222A — 50 (150 мА, Uкэ = 1 В)

Запас по току базы: обычно 2…5

В

VCE(sat) из даташита: 2N2222A — до 0,3 В при 150 мА

Результат

Резистор базы Rб (E24)
510 Ом
расчётное 521 Ом, взят ближайший меньший номинал
Ток базы
4,9 мАнужно не меньше 4,8 мА = k·Iк / h21э
Iк / Iб
16,3Uкэ нас в даташитах нормируют при 10–20
Мощность на транзисторе
27,9 мВтUкэ нас·Iк + Uбэ·Iб
Мощность резистора базы
12,3 мВт

Расчёт для ключа в режиме насыщения: Iб = k·Iк / h21э min, Rб = (Uупр − Uбэ) / Iб. Напряжение питания нагрузки на результат не влияет, но оно должно быть меньше Uкэо транзистора с запасом, а индуктивной нагрузке нужен защитный диод.

Детали

ПозицияДетальЗамены и примечания
VT1P2N2222A (TO-92, 40 В, 600 мА)BC547B — до 100 мА; BD139 — до 1,5 А (h21э min 40 при 150 мА)
R1270 Ом, 0,125 Вт (от 3,3 В)470 Ом от 5 В; пересчитать под свой ток
R210 кОм4,7–47 кОм
Нагрузка12 В, 150 мАиндуктивная нагрузка — только с диодом, см. драйвер реле

Варианты

Верхний ключ на PNP. Если нагрузка должна оставаться подключённой к общему проводу, ключ ставят в плюсовой провод: PNP-транзистор эмиттером к плюсу, нагрузка в цепи коллектора. Базой PNP при напряжении нагрузки выше питания микроконтроллера управляют через NPN-транзистор — иначе вывод не сможет закрыть ключ.

PNP-ключ в плюсовом проводе 12 В с NPN-драйвером от микроконтроллера 3,3 ВЭмиттер PNP-транзистора VT2 2N3906 подключён к плюсу 12 В, коллектор — к нагрузке 12 В, 50 мА. Резистор R2 10 кОм между базой и эмиттером VT2 держит его закрытым. База VT2 через резистор R3 2 кОм подключена к коллектору NPN-транзистора VT1 BC547, эмиттер которого соединён с общим проводом. Вывод микроконтроллера управляет VT1 через резистор R1 10 кОм, резистор R4 100 кОм между базой и эмиттером VT1 закрывает его, пока вывод не настроен.+12 ВR210 кОмVT22N3906Rн12 В, 50 мАR32 кОмVT1BC547МК3,3 ВR110 кОмR4100 кОмIб = 5,5 мА

Сборка ULN2003A. Для нескольких реле или шаговых двигателей — семь составных ключей в одном корпусе. Каждый выход рассчитан на 500 мА и 50 В, на входе уже стоит резистор 2,7 кОм, защитные диоды выходов собраны на вывод COM (TI SLRS027O). Цена — большое напряжение насыщения: до 1,1 В при 100 мА и до 1,6 В при 350 мА.

MOSFET. Для токов от сотен миллиампер, ШИМ и питания 3,3 В удобнее ключ на MOSFET с логическим уровнем: ток затвора нужен только на переключение.

Почему не работает

  • Перепутаны выводы. Цоколёвка зависит от производителя и варианта корпуса: у P2N2222A в TO-92 порядок К–Б–Э, у PN2222A — Э–Б–К. Сверяйтесь с даташитом конкретной детали, а не с названием.
  • Нагрузка в цепи эмиттера. Это повторитель: на нагрузке на 0,6–0,7 В меньше, чем на выводе, и 12-вольтовая лента от 3,3 В не загорится.
  • Транзистор греется. Не хватает тока базы: транзистор не насыщен и работает в активном режиме, на нём несколько вольт. Пересчитайте R1 по минимальному h21э при вашем токе.
  • Нет общего провода. Минус источника нагрузки не соединён с минусом микроконтроллера — тока базы нет.
  • Сгорел транзистор на моторе или реле. Индуктивная нагрузка без диода: при выключении выброс напряжения пробивает переход коллектор–эмиттер.
  • Микроконтроллер сбрасывается или вывод «просел». Резистор базы забыт или слишком мал: ток вывода выше допустимого, выходное напряжение падает. У STM32F072 при 20 мА единица гарантирована только не ниже VDD − 1,3 В (DS9826, табл. 54).
  • Нагрузка включается при старте. Нет резистора R2, и база «висит», пока программа не настроила вывод.

Частые вопросы

Какой резистор ставить в базу транзистора от Arduino?

Сначала ток базы: Iб = k·Iк / h21э min, где h21э min — минимальный коэффициент из даташита при токе нагрузки, k = 2…5. Затем резистор: Rб = (Uупр − Uбэ) / Iб. Для нагрузки 150 мА на P2N2222A (h21э min = 50) при k = 3 нужен ток базы 9 мА; от вывода 5 В Rб = (5 − 0,8) / 9 мА ≈ 470 Ом, от 3,3 В — 270 Ом.

Зачем резистор между базой и эмиттером?

Пока микроконтроллер в сбросе или вывод ещё не настроен как выход, вывод — вход с высоким сопротивлением, и база «висит». Наводки и токи утечки могут приоткрыть транзистор. Резистор 10 кОм между базой и эмиттером держит его закрытым; ток через него при открытом ключе — меньше 0,1 мА, на расчёт он почти не влияет.

Можно ли поставить нагрузку в цепь эмиттера?

Можно, но тогда это не ключ, а эмиттерный повторитель: на нагрузке будет напряжение управления минус 0,6–0,7 В, то есть от вывода 3,3 В — около 2,6 В, сколько бы ни было питание нагрузки. Чтобы включить нагрузку, подключённую к общему проводу, используют верхний ключ на PNP-транзисторе с NPN-драйвером.

До какого тока подходит биполярный ключ?

P2N2222A рассчитан на 600 мА, BD139 — на 1,5 А, но чем больше ток, тем больше нужен ток базы: у BD139 минимальный h21э при 500 мА — 25, и для 500 мА с запасом k = 2 нужно 40 мА — предельный ток вывода ATmega328P. Для токов от сотен миллиампер и для ШИМ удобнее MOSFET с логическим уровнем — ему ток управления нужен только на переключение.

Источники

  1. onsemi. P2N2222A: Amplifier Transistors, NPN Silicon (P2N2222A/D) — даташит, ред. 7: предельные режимы, h21э при 150 мА, напряжения насыщения, цоколёвка
  2. onsemi. BC546B, BC547A, B, C, BC548B, C: Amplifier Transistors, NPN Silicon (BC546/D) — даташит, ред. 8: ток коллектора, h21э, напряжение насыщения
  3. onsemi. BD135G, BD137G, BD139G: Plastic Medium-Power Silicon NPN Transistors (BD135/D) — даташит, ред. 18: ток коллектора и h21э BD139
  4. onsemi. 2N3906: General Purpose Transistors, PNP Silicon (2N3906/D) — даташит, ред. 4: транзистор верхнего ключа на схеме варианта
  5. Microchip. 3V Tips 'n Tricks (DS41285A) — TIP #18: управление биполярным транзистором от вывода, уравнение 18-1 и примеры
  6. STMicroelectronics. STM32F072x8 STM32F072xB datasheet (DS9826 Rev 6) — табл. 22 (предельный ток вывода), табл. 54 (выходные напряжения при 8 и 20 мА)
  7. Microchip. ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet (DS40002061B) — разд. 29.1 (предельный ток вывода), табл. 30-1 (выходные напряжения при 20 мА, суммарные токи)
  8. Texas Instruments. ULN200x, ULQ200x High-Voltage, High-Current Darlington Transistor Arrays (SLRS027O) — ток и напряжение выходов, входной резистор, напряжение насыщения

Нашли ошибку?