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

Драйвер реле на транзисторе

Катушку реле нельзя питать от вывода микроконтроллера: реле Omron G5Q на 5 В потребляет 80 мА, а вывод ATmega328P рассчитан максимум на 40 мА. Катушку включают через транзисторный ключ, а параллельно ей ставят диод, который гасит выброс напряжения при выключении.

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

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

Коротко

Катушка G5Q-1 DC5
5 В, 80 мА, 63 Ом
Срабатывание
не выше 75 % (3,75 В)
Отпускание
не ниже 5 % (0,25 В)
Ключ
P2N2222A, R1 300 Ом от Arduino (5 В)
Диод
1N4148 катодом к плюсу
Контакты NO
10 А 125 В~, 5 А 250 В~, 5 А 30 В=

Схема

Драйвер реле на NPN-транзисторе с защитным диодомВывод микроконтроллера ATmega328P через резистор R1 300 Ом подключён к базе транзистора VT1 P2N2222A; резистор R2 10 кОм между базой и эмиттером держит транзистор закрытым, пока вывод не настроен. Эмиттер соединён с общим проводом. В цепи коллектора — катушка реле K1 (5 В, 63 Ом), подключённая к плюсу +5 В. Параллельно катушке включён диод VD1 1N4148 катодом к плюсу.ATmega328P5 ВR1300 ОмR210 кОмVT1P2N2222A+5 ВK15 В, 63 ОмVD11N4148K1.1к нагрузкеобщий провод МК и реле

Катушка реле K1 включена между плюсом 5 В и коллектором транзистора VT1, эмиттер — на общем проводе. Вывод микроконтроллера через R1 подаёт ток в базу, R2 держит транзистор закрытым после сброса. Диод VD1 подключён параллельно катушке катодом к плюсу: пока транзистор открыт, диод заперт и не мешает; при выключении он подхватывает ток катушки.

Реле: что смотреть в даташите

Параметры реле Omron G5Q с одной группой переключающих контактов (SPDT) и катушкой на 5 В (Cat. No. J155-E1-16):

ПараметрG5Q-1 DC5G5Q-1 DC12
Номинальный ток катушки80 мА33,3 мА
Сопротивление катушки (±10 % при 23 °C)63 Ом360 Ом
Напряжение срабатывания, не выше75 % — 3,75 В75 % — 9 В
Напряжение отпускания, не ниже5 % — 0,25 В5 % — 0,6 В
Наибольшее напряжение катушки190 % при 23 °C, не длительное190 % при 23 °C, не длительное
Мощность катушкиоколо 400 мВтоколо 400 мВт

Контакты исполнения SPDT: нормально разомкнутый (NO) — 10 А при 125 В~, 5 А при 250 В~ и 5 А при 30 В=; нормально замкнутый (NC) — 3 А. Предельное коммутируемое напряжение — 277 В~ и 30 В=. Время срабатывания — не больше 10 мс, отпускания — не больше 5 мс; рабочая температура стандартного исполнения — от −40 до 105 °C. Исполнение с одним замыкающим контактом (SPST-NO, G5Q-1A) потребляет вдвое меньше: 40 мА и 125 Ом при 5 В.

Расчёт

Расчёт — для Arduino Uno (ATmega328P, 5 В), питания катушки 5 В ±5 % и комнатной температуры.

  1. Ток катушки: I = U/R = 5/63 = 79,4 мА — совпадает с номинальными 80 мА из даташита. С допусками питания (±5 %) и сопротивления (±10 %) — до 5,25 В/56,7 Ом = 92,6 мА: на этот ток и считают ключ. Вывод ATmega328P (предел 40 мА) и тем более STM32 (25 мА) такого тока не дадут.
  2. Транзистор. P2N2222A: 40 В и 600 мА — с большим запасом. Напряжение насыщения в его даташите гарантировано при Iк/Iб = 10: не больше 0,3 В при 150 мА, Uбэ нас — от 0,6 до 1,2 В.
  3. Ток базы по этому отношению плюс ток резистора R2: Iб = 92,6 мА/10 + 1,2 В/10 кОм = 9,26 + 0,12 = 9,38 мА.
  4. Резистор базы. ATmega328P гарантирует уровень единицы не ниже 4,2 В при токе до 20 мА: (4,2 − 1,2) В/9,38 мА = 320 Ом → 300 Ом. Ток вывода — от 10 до (5 − 0,6) В/300 Ом = 14,7 мА, в пределах 20 мА.
  5. Напряжение на катушке: не меньше 4,75 − 0,3 = 4,45 В — больше 3,75 В срабатывания.
  6. Диод. В момент выключения через VD1 течёт ток катушки — до 92,6 мА, а пока транзистор открыт, к диоду приложено напряжение питания. У 1N4148 прямой ток до 300 мА и постоянное обратное напряжение 75 В — запас большой.

От 3,3 В и на морозе. От ESP32 с силой выхода по умолчанию (~20 мА) уровень единицы не ниже 2,64 В, и R1 = 150 Ом даёт ток вывода до 18 мА. У STM32F103 уровень 2,9 В гарантирован только до 8 мА: с P2N2222A этого мало, а с BC547, у которого Uкэ нас нормировано при Iк/Iб = 20, хватает — R1 = 430 Ом, ток вывода до 6,4 мА. Если устройство работает при −40 °C, холодная катушка потребляет до 124 мА, и от Arduino нужен R1 = 240 Ом (ток вывода до 18,3 мА).

Первый калькулятор ниже считает резистор базы по минимальному h21э и коэффициенту насыщения: это быстрая прикидка, но напряжение насыщения даташит гарантирует только при Iк/Iб = 10. Второй считает драйвер целиком по условиям даташитов — с допусками, температурой, проверкой срабатывания реле и защитного диода; чтобы повторить расчёт выше, выберите в нём реле Omron G5Q-1, 5 В. Он же открыт на странице калькулятора драйвера реле.

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

В

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

В

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кэо транзистора с запасом, а индуктивной нагрузке нужен защитный диод.

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

Реле

JW1aSN-DC5V-F, JW1SN-DC5V, JW2SN-DC5V и другие исполнения JW на 5 В. Panasonic JW Relays, каталог ASCTB190E (2026.7), с. 3, таблица «Coil data». Предельные 130 % — для изоляции класса E при 60 °C; у исполнения с изоляцией класса B — 120 % при 85 °C. Рабочая температура класса E — от −40 до 60 °C.

В
±%

5 В от USB на плате Arduino бывают ниже 4,75 В — измерьте

°C

Самая холодная катушка: при ней наибольший ток

°C

Нагретая катушка: при ней наибольшее напряжение срабатывания

Управление

Microchip DS40002061B: разд. 30.1 — 40 мА на вывод, от −0,5 В до VCC + 0,5 В; табл. 30-1 — VOH ≥ 4,2 В при 20 мА, VCC = 5 В и 85 °C. Уровень нормирован при VCC = 5 В: при меньшем питании (например, от USB) он ниже. Ток больше 20 мА даташит не гарантирует; сумма токов группы выводов — не больше 150 мА.

Ключ

onsemi P2N2222A/D, Rev. 7: 40 В, 600 мА, 625 мВт, RθJA 200 °C/Вт; VCE(sat) ≤ 0,3 и 1,0 В, VBE(sat) 0,6…1,2 В и ≤ 2,0 В при 150/15 и 500/50 мА

кОм

Держит ключ закрытым, пока вывод после сброса не настроен; пусто — без него

Защита от выброса

Цепь параллельно катушке

Vishay 81857, Rev. 1.6: VR 75 В (VRRM 100 В), IF 300 мА; VF ≤ 1 В только при 10 мА, при большем токе — по графику IF–VF (рис. 2)

Результат

Резистор базы R1 (E24)
220 Ом
расчётное 239 Ом для Iб = Iк/10 + ток R2 120 мкА, взят ближайший меньший
Ток вывода
13,6 мА…20 мАпри VOH ≥ 4,2 В и Uбэ до 1,2 В — при 5 В и Uбэ от 600 мВ
Iк/Iб
9,18Uкэ нас ≤ 300 мВ при Iк/Iб = 10 и 150 мА
Мощность на транзисторе
до 58 мВтпри наибольшем токе базы; кристалл теплее воздуха на 12 °C
Мощность R1
до 88 мВт
Ток катушки
86,1 мА…124 мАноминальный 106 мА; с допусками питания и сопротивления при 20 °C
Напряжение на катушке
4,45 В…5,25 Всрабатывание до 3,5 В, отпускание от 500 мВ, предел 6,5 В
Выброс на ключе
6,25 ВUпит + VF; VF ≈ 1 В (нормировано при 10 мА)
Обратное напряжение диода
от 10,5 В2–3 × Uпит; у 1N4148 — 75 В постоянного
Отпускание
10 мс…25 мсв 2–5 раз дольше паспортных «не более 5 мс» без диода; контакты расходятся медленнее и хуже разрывают постоянный ток

Схема работоспособна, но обратите внимание на отмеченное.

  • Ток коллектора: 124 мА при допустимых 600 мА
  • Ток вывода: 13,6 мА…20 мА при нормированных 20 мА
  • Мощность: до 58 мВт при допустимых 625 мВт (25 °C)
  • Срабатывание: на катушке не меньше 4,45 В при срабатывании до 3,5 В
  • Предельное напряжение: до 5,25 В при допустимых 6,5 В (130 % при температуре воздуха до 60 °C)
  • ±5 % номинала: Panasonic рекомендует держать на катушке 4,75 В…5,25 В (±5 % номинала), а здесь нижняя граница 4,45 В ниже 4,75 В: запаса по срабатыванию меньше, особенно на горячей катушке.
  • Обратное напряжение диода: 1N4148: 75 В постоянного обратного напряжения при нужных 10,5 В…15,8 В
  • Ток диода: 124 мА при допустимых 300 мА; VF ≤ 1 В нормировано только при 10 мА, при токе катушки падение больше — по графику IF–VF даташита
  • Выброс на ключе: 6,25 В при Uкэо 40 В

Худший случай: ток катушки — при наибольшем питании и самой холодной катушке с наименьшим сопротивлением; напряжение на ней — при наименьшем питании и наибольшем падении на ключе, а срабатывание — на нагретой катушке. Без температур расчёт идёт при температуре таблицы даташита (20 °C); сопротивление меди меняется примерно на 0,4 % на градус (Panasonic). Ток базы — при Iк/Iб из условий Uкэ нас даташита.

Схема с рассчитанными номиналами

Драйвер реле на NPN-транзисторе с защитным диодомВывод микроконтроллера ATmega328P через резистор R1 220 Ом подключён к базе транзистора VT1 P2N2222A; резистор R2 10 кОм между базой и эмиттером держит транзистор закрытым, пока вывод не настроен. Эмиттер соединён с общим проводом. В цепи коллектора — катушка реле K1 (5 В, 47 Ом), подключённая к плюсу +5 В. Параллельно катушке включён диод VD1 1N4148 катодом к плюсу.ATmega328P5 ВR1220 ОмR210 кОмVT1P2N2222A+5 ВK15 В, 47 ОмVD11N4148K1.1к нагрузкеобщий провод МК и реле

Скетч Arduino

const uint8_t RELAY_PIN = 7;

void setup() {
  digitalWrite(RELAY_PIN, LOW);  // keep the relay off while the pin becomes an output
  pinMode(RELAY_PIN, OUTPUT);
}

void loop() {
  digitalWrite(RELAY_PIN, HIGH);  // coil on
  delay(1000);
  digitalWrite(RELAY_PIN, LOW);   // coil off, the diode takes the coil current
  delay(1000);
}

Единица на выводе включает реле во всех трёх схемах. Вывод сначала получает низкий уровень, потом становится выходом — так реле не щёлкнет при старте. У ESP32 сила выхода по умолчанию — 2 (~20 мА); силу 3 включает gpio_set_drive_capability(…, GPIO_DRIVE_CAP_3).

Детали

ПозицияДетальЗамены и примечания
K1Omron G5Q-1 DC5 (SPDT, 5 В, 80 мА)G5Q-1A DC5 (только замыкающий, 40 мА); на 12 В — G5Q-1 DC12 и питание катушки 12 В
VT1P2N2222ABC547 — для катушек до 100 мА, с ним R1 = 680 Ом от Arduino; ULN2003A для нескольких реле
VD11N4148любой выпрямительный диод на ток катушки и постоянное обратное напряжение в 2–3 раза больше питания
R1300 Ом от Arduino (5 В)150 Ом от ESP32; для своей катушки и микроконтроллера — по калькулятору
R210 кОм4,7–47 кОм

Варианты

Реле на 12 В. Катушку G5Q-1 DC12 (33,3 мА, с допусками — до 38,9 мА) питают от 12 В, а схема ключа та же — пересчитайте только ток базы: по условиям насыщения P2N2222A нужно 4,0 мА, R1 = 680 Ом от Arduino и 390 Ом от STM32F103. Закрытый транзистор держит 12 В — меньше трети его 40 В.

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

Быстрое отпускание. С простым диодом ток катушки затухает медленно, и реле отпускает позже. Если это важно, последовательно с диодом включают стабилитрон с напряжением, примерно равным напряжению питания (так советует Panasonic): выброс ограничивается напряжением стабилизации, энергия катушки рассеивается быстрее. Напряжение питания плюс напряжение стабилизации должно оставаться ниже Uкэо транзистора, а стабилитрон — выдерживать импульс: в начале он рассеивает Uст · I, для 5,1 В и 92,6 мА — около 0,47 Вт.

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

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

  • Реле не щёлкает. Напряжение катушки ниже напряжения срабатывания: реле на 5 В питают от 3,3 В, или ток базы мал и транзистор не насыщен. Измерьте напряжение прямо на выводах катушки.
  • Транзистор сгорел после первых включений. Нет диода или он стоит не там: выброс при выключении пробил транзистор.
  • Короткое замыкание при включении. Диод развёрнут анодом к плюсу: когда транзистор открыт, диод замыкает питание через транзистор.
  • Реле щёлкает при включении питания. Нет резистора R2 между базой и эмиттером.
  • Микроконтроллер перезагружается при переключении реле. Катушка и микроконтроллер питаются от одного слабого источника, бросок тока просаживает питание; помогают отдельный стабилизатор или конденсатор у катушки и разводка общего провода «звездой».
  • Контакты подгорают. Ток или напряжение нагрузки больше номинала контактов, либо нагрузка индуктивная или с большим пусковым током: номиналы в даташите даны для резистивной нагрузки.

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

Зачем диод параллельно катушке реле?

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

Почему реле срабатывает при включении Arduino?

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

Можно ли питать реле 5 В от 3,3 В?

Нет: у Omron G5Q на 5 В напряжение срабатывания — до 75 % номинального, то есть реле может не сработать ниже 3,75 В. Катушку питают от 5 В (или от 12 В, если взять реле на 12 В), а микроконтроллер на 3,3 В управляет только транзистором — напряжение катушки от него не зависит.

Можно ли управлять реле через ШИМ?

Включать и выключать реле с частотой ШИМ нельзя: у G5Q время срабатывания до 10 мс, отпускания — до 5 мс, а ресурс контактов ограничен числом переключений. Для регулирования мощности используют транзисторы или симисторы. Отдельные исполнения реле допускают снижение напряжения удержания катушки после срабатывания — это указано в их даташите, у G5Q — для моделей с суффиксом PW.

Источники

  1. Omron. G5Q PCB Power Relay (Cat. No. J155-E1-16) — параметры катушки (ток, сопротивление, напряжения срабатывания и отпускания, предельное напряжение), нагрузка контактов, времена срабатывания и отпускания, температура
  2. onsemi. P2N2222A: Amplifier Transistors, NPN Silicon (P2N2222A/D) — даташит, ред. 7: предельные режимы, напряжения насыщения Uкэ нас и Uбэ нас при Iк/Iб = 10
  3. onsemi. BC546B, BC547A, B, C, BC548B, C: Amplifier Transistors, NPN Silicon (BC546/D, Rev. 8) — ток коллектора до 100 мА, Uкэ нас при Iк/Iб = 20
  4. Vishay. 1N4148 Small Signal Fast Switching Diode (Document Number 81857, Rev. 1.6) — постоянное обратное напряжение 75 В, прямой ток 300 мА
  5. Microchip. ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet (DS40002061B) — разд. 29.1: предельный ток вывода 40 мА; табл. 30-1: уровень единицы не ниже 4,2 В при 20 мА
  6. STMicroelectronics. STM32F103x8, STM32F103xB datasheet (DS5319 Rev 20) — табл. 7: 25 мА на вывод; табл. 37: уровень единицы не ниже VDD − 0,4 В при 8 мА
  7. Panasonic. Relays Cautions for Use — диод на катушке: обратное напряжение и отпускание в 2–5 раз дольше; диод со стабилитроном на напряжение, примерно равное питанию
  8. Texas Instruments. ULN200x, ULQ200x High-Voltage, High-Current Darlington Transistor Arrays (SLRS027O) — ток и напряжение выходов, защитные диоды на выводе COM

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