Добро пожаловать в Shenzhen Booming Microelectronics Co., Ltd.
информације
Подробное, но простое введение в схемы привода H-моста
Время выпуска:
2021-01-12
Что такое H-мост?
H-мост — это относительно простая схема, обычно состоящая из четырех независимо управляемых переключающих компонентов (например,MOS-FET) которые обычно используются для привода нагрузок с большими токами, таких как двигатели. Причина, по которой его называют H-мостом, заключается в том, что его форма напоминает буквуH, как показано на рисунке ниже;

Вот четыре переключающих компонентаQ1,Q2,Q3,Q4и также есть постоянный токовый двигатель M,D1,D2,D3,D4который является диодом свободного хода MOS-FET;
Состояния переключения
Ниже, взяв управление постоянным токовым двигателем в качестве примера, мы кратко представим несколько состояний переключения H-моста, где прямое и обратное вращение являются искусственно определенными направлениями, а в реальной инженерии они могут классифицироваться в зависимости от фактической ситуации;
Прямое вращение
Обычно H-мост используется для привода индуктивных нагрузок, здесь мы будем приводить в действие постоянный токовый двигатель;
-
Открыто Q1иQ4; -
Закрыто Q2иQ3;
В это время, предполагая, что двигатель вращается вперед, ток проходит черезQ1,M,Q4, отмеченный желтыми линиями на рисунке, как показано ниже;

Обратное вращение
Другое состояние — это реверс двигателя; в это время состояния четырех переключающих компонентов следующие;
-
Закрыто Q1иQ4; -
Открыто Q2иQ3;
В это время двигатель реверсирует (в противоположность ранее введенной ситуации), ток проходит черезQ2,M,Q3, отмеченный желтыми линиями на рисунке, как показано ниже;

Регулировка скорости
Если вы хотите регулировать скорость постоянного токового двигателя, одним из решений является ввод
-
Закрыто Q2,Q3; -
Открыто Q1,Q4PWM-формы с рабочим циклом, что достигает эффекта уменьшения скорости. Если вам нужно увеличить скорость, установите рабочий цикл входного PWM на 100%;50%Как показано ниже:
Состояние остановки

Здесь, взяв переключение двигателя с прямого вращения на состояние остановки в качестве примера;
В случае прямого вращения;
-
он находится в открытом состоянии; Q1иQ4В это время, если вы закроете -
, внутреннюю структуру постоянного токового двигателя можно Q1иQ4эквивалентно индуктивности, что является индуктивной нагрузкой, и ток не изменится резко, тогда ток будет продолжать течь в исходном направлении. В это время мы надеемся, что ток в двигателе может быстро уменьшиться;Здесь есть два метода:
Первый метод: закрыть
, в это время ток все еще будет течь через обратный диод свободного хода, и кратко открытьQ1иQ4, чтобы достичь цели быстрого уменьшения тока;Q1иQ3Второй метод: при подготовке к остановке, закрыть

, открытьQ1, в это время ток не будет быстро уменьшаться, ток циркулирует между Q2, M и Q4, потребляя электрическую энергию через внутреннее сопротивление MOS-FET;Q2Применение

На практике создание H-моста с дискретными компонентами довольно хлопотно. На рынке есть много широко используемых решений на основе интегральных схем, таких как L293D, L298N, TA7257P, SN754410 и т. д. Просто подключите источник питания и двигатель, и вы сможете управлять двигателем через входные управляющие сигналы;
Ниже представлен модуль L298N, который довольно распространен и очень дружелюбен для начинающих, а проводка также очень проста;
Этот модуль имеет встроенный регулятор напряжения 5V, который можно включить с помощью перемычек.

Если напряжение питания двигателя достигает 12V, мы можем включить регулятор напряжения 5V, и вывод 5V можно использовать в качестве выхода, например, для питания платы Arduino.
Однако, если напряжение двигателя превышает 12V, перемычка должна быть отключена, так как эти напряжения могут повредить встроенный регулятор напряжения 5V.
В этом случае вывод 5V будет использоваться в качестве входа, так как нам нужно подключить его к источнику питания 5V, чтобы ИС работала должным образом.
Здесь мы можем отметить, что падение напряжения этой ИС составляет около 2V. Поэтому, если используется источник питания 12V, напряжение на клеммах двигателя будет около 10V, что означает, что мы не сможем достичь максимальной скорости от постоянного токового двигателя 12V.
Здесь используется
Arduino, например, это демонстрационная структура, найденная в Интернете, как показано на рисунке ниже;В качестве примера, это общий каркас демо, найденный в интернете, как показано на рисунке ниже;

#define enA 9
#define in1 6
#define in2 7
#define button 4
int rotDirection = 0;
int pressed = false;
void setup() {
pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(button, INPUT);
// Установить начальное направление вращения
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
}
void loop() {
// Считать значение потенциометра
int potValue = analogRead(A0);
// Отобразить значение потенциометра от 0 до 255
int pwmOutput = map(potValue, 0, 1023, 0, 255);
// Отправить PWM сигнал на пин включения L298N
analogWrite(enA, pwmOutput);
// Считать кнопку - Дебаунс
if (digitalRead(button) == true) {
pressed = !pressed;
}
while (digitalRead(button) == true);
delay(20);
// Если кнопка нажата - изменить направление вращения
if (pressed == true && rotDirection == 0) {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
rotDirection = 1;
delay(20);
}
// Если кнопка нажата - изменить направление вращения
if (pressed == false && rotDirection == 1) {
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
rotDirection = 0;
delay(20);
}
}
Краткое описание: Сначала нам нужно определить пины и переменные, необходимые программе.
Вsetup(), нам нужно установить режимы пинов и начальное направление вращения мотора.
ВВloop(), сначала мы считываем значение потенциометра, затем линейно отображаем полученное значение от 0 до 1023 на значения PWM от 0 до 255, что соответствует рабочему циклу от 0 до 100%.
Затем используемanalogWrite()функция для отправки сигнала PWM на пин включения платы L298N, который фактически управляет мотором.
Далее мы проверяем, нажата ли кнопка, и если да, то инвертируем состояния входа 1 и входа 2, тем самым изменяя направление вращения мотора. Кнопка будет действовать как переключатель, изменяя направление вращения мотора каждый раз, когда она нажата.
На определенном сайте сокровищ много таких маленьких машинок, как показано на картинке ниже; основное управление можно заменить на 51 микроконтроллер или STM32, и, конечно, Arduino тоже подойдет. Используя L298N, маленькую машинку можно быстро собрать.

Отказ от ответственности: Содержание вышеуказанной статьи организовано из интернета. Если есть какие-либо проблемы с авторскими правами, пожалуйста, свяжитесь с нами немедленно.
Предыдущая страница
Следующая страница
Предыдущая страница
Следующая страница
