Транзистор как ключ: почему вывод контроллера не крутит мотор
Предел тока вывода, базовый резистор с запасом, полевой ключ и диод поперёк обмотки
Мотор, подключённый к выводу ESP32, не крутится, а вывод после этого может не выжить. Разбираем, почему нужен ключ, как посчитать базовый резистор, когда брать полевой транзистор и зачем диод поперёк обмотки.
Логика рассуждения понятная: светодиод от вывода горит, значит, и маленький моторчик от вывода закрутится. Подключаем моторчик от игрушки между выводом ESP32 и землёй, выставляем HIGH. Мотор дёргается или стоит, контроллер перезагружается, а в худшем случае вывод больше не работает. Дело не в том, что мотор «тяжёлый», а в том, что вывод контроллера — это источник сигнала, а не источник питания.
Сколько может вывод и сколько нужно мотору
Вывод ESP32 выдаёт 3,3 В и рассчитан на ток до 40 мА — это абсолютный предел, а не рабочий режим. Рабочий ток, при котором вывод не просаживается и не греется, — единицы миллиампер. У Arduino Uno то же самое, только при 5 В.
Мотор в примере Мотор от вывода: почему нужен ключ имеет сопротивление обмотки 24 Ом и питается от 12 В. Ток:
I = U / R = 12 / 24 = 0,5 А = 500 мА
Это в двенадцать раз больше абсолютного предела вывода. И дело не только в токе: мотору нужно 12 В, а вывод даёт 3,3. Даже идеальный вывод не смог бы дать мотору ни нужного напряжения, ни нужного тока.
Есть и третья проблема, о которой узнают позже: обмотка — это индуктивность. При выключении она выдаёт выброс напряжения, который пробивает всё, что стоит на пути. К этому вернёмся ниже.
Решение — разделить цепи. Мотор получает ток из своего источника 12 В, а вывод контроллера только командует, пропускать этот ток или нет. Между ними ставят транзистор, работающий как ключ.
Биполярный транзистор в режиме ключа
У n-p-n транзистора три вывода: база, коллектор, эмиттер. Ток, втекающий в базу, разрешает течь току коллектора, в h21э раз большему. У маломощных транзисторов h21э обычно 100–300, у мощных — 20–100.
В ключевом режиме нас интересуют два состояния:
- Закрыт — тока базы нет, ток коллектора практически нулевой, нагрузка выключена.
- Насыщен — ток базы с запасом больше нужного, транзистор открыт полностью, напряжение коллектор–эмиттер падает до 0,1–0,3 В. Ток нагрузки определяется уже не транзистором, а нагрузкой и питанием.
Между ними — активный режим, где транзистор работает как усилитель: ток коллектора пропорционален току базы, а на транзисторе падает заметное напряжение. Для ключа это плохой режим, потому что транзистор греется. Поэтому базу нарочно «переоткрывают».
Нагрузку подключают между плюсом питания и коллектором, эмиттер — на землю. Земля контроллера и минус источника 12 В соединяются: без общей точки ток базы не найдёт обратного пути.
Мотор от вывода: почему нужен ключ
Запустите и сравните ток вывода и ток мотора: единицы миллиампер против сотен. Затем переключите вывод в ноль — транзистор закроется, мотор остановится.
Открыть схемуРасчёт базового резистора
Резистор в базе нужен по той же причине, что и резистор у светодиода: переход база–эмиттер — это диод, и без ограничения ток в нём ничем не задан. Пример-загадка Почини схему: транзистор сгорает при включении показывает этот случай: база подключена к источнику напрямую, и ток базы ограничен только внутренним сопротивлением источника.
Расчёт идёт в три шага. Возьмём пример Расчёт базового резистора для ключа: нагрузка 120 Ом от 12 В, управление от 5 В.
- Ток нагрузки: I_к = 12 / 120 = 0,1 А.
- Ток базы с запасом. При h21э = 100 минимально нужно 1 мА, берём запас k = 3: I_б = 3 × 0,1 / 100 = 3 мА. Запас нужен потому, что h21э у разных экземпляров одной модели отличается втрое и падает с ростом тока и при охлаждении.
- Резистор: R_б = (U_упр − U_бэ) / I_б = (5 − 0,7) / 0,003 ≈ 1,43 кОм. Из ряда берут 1,5 кОм: ток базы 2,9 мА, запас почти втрое сохраняется.
В симуляторе после запуска транзистор в насыщении, на нём меньше 0,3 В, амперметр показывает около 100 мА. Мощность на транзисторе: 0,3 × 0,1 = 0,03 Вт — он едва тёплый.
Что будет при недостаточном токе базы? Пусть R_б = 10 кОм: I_б = 4,3 / 10 000 = 0,43 мА, и при h21э = 100 транзистор пропустит не больше 43 мА. На нагрузке упадёт 0,043 × 120 = 5,2 В, на транзисторе останется 6,8 В, и рассеиваемая мощность вырастет до 6,8 × 0,043 ≈ 0,29 Вт — вдесятеро больше, чем в насыщении, при вдвое меньшем полезном токе.
Для ESP32 с его 3,3 В тот же ключ на 100 мА считается так: R_б = (3,3 − 0,7) / 0,003 ≈ 870 Ом, из ряда — 820 Ом.
А вот мотор на 0,5 А этим способом уже не включить. При h21э = 100 и запасе втрое нужен ток базы 15 мА — больше разумного тока вывода. Мощный биполярный транзистор с h21э около 30 потребует ещё больше. Выходы три: составной транзистор (схема Дарлингтона, где усиление перемножается), промежуточный маломощный ключ или полевой транзистор.
Полевой транзистор: управление напряжением
У MOSFET затвор изолирован от канала тонким слоем окисла. В установившемся режиме ток затвора практически нулевой, транзистор управляется напряжением между затвором и истоком. Ниже порога канала нет вовсе, выше — канал открывается и превращается в резистор сопротивлением в сотые доли ома.
В примере Полевой ключ n-канальный транзистор включает лампу 12 В, 10 Вт. Ток лампы:
I = P / U = 10 / 12 ≈ 0,83 А
При сопротивлении открытого канала, скажем, 0,05 Ом на транзисторе падает 0,04 В и рассеивается 0,83² × 0,05 ≈ 0,035 Вт. Биполярный транзистор в насыщении на том же токе терял бы около 0,2 В, то есть 0,17 Вт — впятеро больше. На вкладке «Показания» в симуляторе видно это падение — сотые доли вольта.
Важная оговорка: в примере затвор управляется от 10 В. Вывод ESP32 даёт 3,3 В, и обычный силовой MOSFET при таком напряжении на затворе открыт не полностью или не открыт вовсе. Для прямого управления от контроллера берут транзисторы с логическим уровнем управления: у них сопротивление канала нормировано при 2,5–4,5 В на затворе. Смотреть нужно не на пороговое напряжение, а на то, при каком напряжении затвора указано R_ds(on).
Ещё две детали, без которых полевой ключ ненадёжен:
- Резистор затвор–исток 10–100 кОм. Пока контроллер перезагружается, вывод висит, и изолированный затвор может открыться наводкой. Резистор держит его закрытым.
- Небольшой резистор последовательно с затвором, 100–220 Ом. У затвора есть ёмкость в сотни-тысячи пикофарад, и в момент переключения вывод заряжает её импульсом тока. Резистор ограничивает этот импульс.
Если нагрузку нужно коммутировать по плюсу, а не по минусу, схема усложняется: исток p-канального транзистора сидит на питании, и затвор надо утягивать ниже питания. Как это делается одним вспомогательным n-p-n, показывает пример Верхний ключ.
Диод поперёк обмотки
Обмотка мотора или реле — индуктивность, и ток в ней не может исчезнуть мгновенно. Когда транзистор закрывается, ток пытается продолжить течь, и напряжение на обмотке растёт по закону u = L · di/dt. Чем быстрее разрыв, тем выше выброс: десятки вольт на моторчике, сотни на катушке реле. Это напряжение оказывается приложено к закрытому транзистору и пробивает его.
Защита — диод параллельно обмотке, катодом к плюсу. В рабочем режиме он заперт и не мешает. В момент выключения он даёт току дорогу по кругу через обмотку, и напряжение на коллекторе ограничивается уровнем питания плюс 0,7 В. Энергия, запасённая в обмотке, W = L · I² / 2, рассеивается на активном сопротивлении обмотки и диоде. Для обмотки 0,05 Гн и тока 0,5 А это 0,05 × 0,25 / 2 ≈ 6 мДж.
В примере Защитный диод это видно на осциллографе: с диодом выброс прижат к питанию, без диода уходит в десятки вольт. В схеме 12 В Мотор через реле диод стоит поперёк катушки реле, и разбор честно предупреждает, что эта модель выброс не считает, — смотреть выброс нужно в аналоговом примере.
Типичные ошибки
| Ошибка | Что происходит |
|---|---|
| Нагрузка прямо на вывод | Вывод перегружен, контроллер перезагружается или выходит из строя |
| Нет резистора в базе | Ток базы ограничен только источником, переход выгорает |
| Резистор в базе посчитан без запаса | Транзистор в активном режиме, греется, нагрузка недополучает ток |
| Не соединены земли | Тока базы нет, ключ не открывается |
| Нет диода поперёк обмотки | Выброс при выключении пробивает транзистор |
| Обычный MOSFET от 3,3 В | Канал открыт не полностью, транзистор греется |
| Висящий затвор | Ключ открывается сам при сбросе контроллера |
Что проверить в симуляторе
Удобный порядок такой. Сначала мотор от вывода: посмотрите на ток через вывод и через мотор и посчитайте отношение. Затем расчёт базового резистора: до запуска ответьте на вопрос о токе нагрузки, потом увеличьте резистор до 47 кОм и найдите момент, когда транзистор выходит из насыщения. В полевом ключе опустите управляющее напряжение до 1,5 В — ток лампы пропадёт полностью. И в конце уберите диод в защитном примере и посмотрите на выброс на осциллографе: после этого вопрос «а он точно нужен» больше не возникает.
Коротко
Вывод контроллера даёт сигнал, а не мощность: единицы миллиампер при 3,3 В против сотен миллиампер при 12 В у мотора. Ключ разделяет цепи: нагрузка питается от своего источника, контроллер управляет транзистором. Для биполярного ключа ток базы берут с запасом в 2–3 раза и считают R_б = (U_упр − 0,7) / I_б. Для токов от полуампера удобнее полевой транзистор с логическим уровнем управления и резистором затвор–исток. Любой индуктивной нагрузке нужен диод поперёк обмотки.
Попробуйте в симуляторе
Расчёт базового резистора для ключа
Увеличьте базовый резистор с 1,5 кОм до 47 кОм и посмотрите, как транзистор выходит из насыщения, а ток нагрузки падает ниже 100 мА
Посчитать базовый резисторПолевой ключ: затвор не берёт тока вовсе
Опустите управляющее напряжение с 10 В до 1,5 В: ток лампы пропадёт совсем, потому что затвор оказался ниже порога
Полевой ключЗащитный диод: куда девать ток обмотки
Разомкните ключ с диодом и без него и сравните выброс на осциллографе: с диодом он прижат к питанию, без диода уходит в десятки вольт
Защитный диодТранзистор как ключ: слабый ток управляет мотором
Уведите освещённость фоторезистора в ноль: сопротивление вырастет до мегаома, тока базы не хватит, и мотор остановится
Ключ от фоторезистораМотор через реле и обратный диод
Замкните тумблер и найдите на схеме диод поперёк катушки реле: в рабочем режиме он заперт, а нужен в момент размыкания
Мотор через реле