H-мост с транзисторами и Arduino
Я сделал мост H, состоящий из 2 PNP и 2 NPN транзисторов. Смотрите схему ниже. Проблема вот в чем: когда я устанавливаю вывод 9 на Arduino в положение HIGH, а вывод 8 в положение LOW (теперь верхний правый PNP и нижний левый NPN должны быть включены, а два других выключены), нижний правый NPN становится очень горячим, горячее, чем два включенных транзистора. А мотор, которым я управляю, вращается небыстро. Когда я устанавливаю вывод 8 HIGH и вывод 9 LOW, схема работает просто отлично. Транзисторы, которые включены, немного нагреваются, а другие 2 транзистора остаются холодными, и двигатель вращается быстро.
Кто-нибудь знает, в чем проблема? Спасибо!
@jan, 👍-1
Обсуждение1 ответ
Ваша проблема связана с тем, как вы управляете схемой. То есть ваша схема — это 9-вольтовая схема, но вы пытаетесь управлять ею с помощью 5 В. Оба ваших PNP-транзистора будут пропускать ток, поскольку вы никогда не сможете выключить их должным образом. Это означает, что ток через ваш двигатель будет значительно уменьшен, и ваши транзисторы просто нагреются.
Есть причина, по которой люди используют микросхемы H-bridge: если только у вас нет одинакового напряжения везде, управлять H-мостом сложно. Интегрированные устройства избавляют вас от этих проблем, включая правильную схему драйвера.
Если вы действительно хотите сделать это вручную, я бы посоветовал:
- Замените биполярные транзисторы на полевые МОП-транзисторы (P вверху и N внизу).
- Подтяните затворы P-канала к +9 В, а затворы N-канала к 0 В с помощью резисторов (10 кОм будет достаточно).
- Добавьте еще два N-канальных МОП-транзистора, чтобы переключить затворы P-канала на землю и включить их
- Разделите сигналы управления, чтобы иметь возможность вручную управлять каждым из четырех сигналов (в противном случае вам пришлось бы добавлять еще больше схем, чтобы инвертировать либо верхний, либо нижний сигналы управления).
Конечно, убедитесь, что ваши МОП-транзисторы имеют подходящие пороговые значения для логических уровней.
- Установите A1 и B2 на ВЫСОКИЙ уровень, а остальные на НИЗКИЙ уровень для одного направления.
- Установите B1 и A2 на ВЫСОКИЙ уровень, а остальные на НИЗКИЙ уровень для другого направления.
- Установите A1 и A2 HIGH, а B1 и B2 LOW (или наоборот) для тормоза.
Будьте осторожны, чтобы никогда не переключать A1 и B1 в положение HIGH одновременно (или A2 и B2), иначе вы сожжете свою схему. Вы создадите короткое замыкание между 9 В и GND, и ваши MOSFET взорвутся (или, по крайней мере, сильно нагреются, и ваша батарея очень быстро разрядится). Лучше всегда переключать все выходы в положение LOW перед внесением любых изменений в состояние привода для безопасности (все LOW — это режим «свободного хода»).
- Изготовление H-моста с транзисторами
- Arduino H-bridge для радиоуправляемого автомобиля
- H-мост с транзисторами не хватает мощности
- Как устранить шум от вентилятора 12 В с ШИМ-управлением на низкой скорости
- Когда следует использовать транзистор, МОП-транзистор, а когда следует использовать реле?
- Управление светодиодом с помощью транзистора (TL188)
- Транзисторный усилитель для управления динамиком с использованием ШИМ Arduino
- L298N Dual Motor Controller Enable Pin имеет питание, но двигатели не работают
Это то же самое, что и ваш другой вопрос? https://arduinoprosto.ru/q/55597/making-an-h-bridge-with-transistors, @Greenonline
@Greenonline: Он меняет подключения к контактам Arduino и (к сожалению для него) напряжение питания., @Edgar Bonet