Управление двигателем постоянного тока с использованием драйвера двигателя L298N и платы Ардуино

Управление двигателем постоянного токаВ этом мини-проекте мы увидим, как управлять двигателем постоянного тока с помощью Arduino и драйвера двигателя L298N. Существуют разные способы управления двигателем постоянного тока, но управление двигателем постоянного тока Arduino с использованием драйвера двигателя L298N становится довольно популярным по многим причинам.

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

А если вы переключите провода, т.е. поменяете полярность, двигатель будет вращаться в обратном направлении. Все это просто, правда?

Но, если вы хотите контролировать скорость вращения двигателя постоянного тока, то существует метод, называемый ШИМ-управлением двигателем постоянного тока. Широтно-импульсная модуляция или ШИМ-сигнал, генерируемый этим методом, позволит нам контролировать среднее напряжение, подаваемое на двигатель постоянного тока.

Управление скоростью двигателя постоянного тока с помощью ШИМ

Используя метод ШИМ, среднее значение напряжения, подаваемого на двигатель постоянного тока, регулируется путем включения и выключения питания с очень высокой скоростью. Частота этого переключения будет порядка нескольких десятков килогерц.

Теперь среднее напряжение (среднее значение волны переменного тока), подаваемое на двигатель постоянного тока, будет зависеть от того, что называется рабочим циклом сигнала ШИМ. Рабочий цикл ШИМ-сигнала — это не что иное, как отношение времени, в течение которого сигнал включен или высокий, к общему периоду времени сигнала, т.е. сумме времени включения и времени выключения.

Рабочий цикл обычно выражается в процентах, и на следующем рисунке представлены различные ШИМ-сигналы источника питания 12 В с различными рабочими циклами 0%, 25%, 50%, 75% и 100% соответственно.

Частота импульсов

Теперь, когда мы поняли, как контролировать среднее напряжение, которое должно подаваться на двигатель постоянного тока, как нам подать это напряжение на двигатель? Здесь идет использование транзистора.

Сигнал ШИМ от любого источника, такого как Arduino в этом примере, может быть подан на затвор MOSFET, и в зависимости от рабочего цикла сигнала ШИМ скорость двигателя постоянного тока будет варьироваться.

Читать также:  RGB-светодиод

На следующем изображении показана простая принципиальная схема, где выход ШИМ от Arduino передается на полевой МОП-транзистор, а двигатель постоянного тока 12 В подключается через МОП-транзистор.

Схема выхода ШИМ от Arduino

Код этой схемы приведен ниже. Используя этот код, Arduino будет плавно изменять скорость двигателя постоянного тока, то есть постепенно увеличивать скорость до пика, а затем постепенно уменьшать скорость до полной остановки.

Код

Эта схема хороша для управления скоростью двигателя, но не является эффективным способом изменения направления вращения. Для изменения направления вращения без перестановки проводов двигателя каждый раз необходимо использовать специальную схему, называемую H-мостом.

Управление двигателем постоянного тока с использованием H-моста

H-мост — это простая электронная схема, состоящая из четырех переключающих элементов, таких как транзисторы (BJT или MOSFET), которые могут управлять двигателем в обоих направлениях без переключения проводов.

Название «H-мост» относится к внешнему виду соединения, состоящего из четырех транзисторов и двигателя в центре, образующих букву «H».

Ниже показано простое соединение H-моста с использованием четырех транзисторов и двигателя. Активируя два определенных транзистора одновременно, мы можем управлять протеканием тока через двигатель и, следовательно, направлением вращения.

Соединение H-моста

Два управляющих входа A и B в приведенной выше схеме определяют направление вращения двигателя. Если A низкий, а B высокий, транзисторы Q1 и Q4 будут включены и позволят току течь через двигатель в определенном направлении.

Если управляющий вход A установлен на высокий уровень, а B на низкий уровень, то транзисторы Q2 и Q3 откроются, и ток через двигатель изменится на противоположный, а значит, и направление вращения изменится тоже.

Объединив обе функции, т.е. метод ШИМ для управления скоростью и соединение H-моста для управления направлением, вы можете получить полный контроль над двигателем постоянного тока.

Читать также:  Конфигурация статического IP

Нелегко использовать транзисторы для создания эффективного соединения H-моста. Для этой цели в продаже доступны специализированные ИС драйвера двигателя H-моста, и две распространенные ИС — L293D и L298N.

Мы уже показывали вам, как управлять скоростью двигателя постоянного тока с помощью L293D в более ранних статьях. А в этой статье мы сосредоточимся на более продвинутом драйвере двигателя L298N и рассмотрим управление двигателем постоянного тока Arduino с помощью драйвера двигателя L298N с использованием метода ШИМ.

Кратко о драйвере двигателя L298N

ИС драйвера двигателя L298N — это 15-выводная высоковольтная, сильноточная ИС драйвера двигателя с двумя полными мостовыми драйверами. Логические уровни IC L298N совместимы со стандартным TTL, и IC может использоваться для управления различными индуктивными нагрузками, такими как двигатели постоянного тока, шаговые двигатели, реле и т.д.

На следующей картинке показана схема выводов микросхемы L298N в многоваттном корпусе (многовыводной блок питания).

Многовыводной блок питания

Поскольку микросхема драйвера двигателя L298N представляет собой сдвоенную интегральную схему полного моста, вы можете одновременно управлять двумя двигателями с помощью отдельных входов. Напряжение питания логики составляет 5 В, но напряжение питания двигателя может достигать 45 В. Пиковый выходной ток на канал составляет 2А.

Как правило, драйвер L298N доступен в виде модулей, содержащих все необходимые компоненты и разъемы для управления двумя двигателями постоянного тока. Один из таких модулей показан ниже.

L298N

Модуль драйвера двигателя L298N состоит из двух 2-контактных винтовых клеммных колодок для подключения двух двигателей. Он также имеет шесть штыревых разъемов для подключения двух входов включения и четырех входных контактов (по два на каждый двигатель).

Имеется 3-контактная винтовая клеммная колодка, через которую нужно подать напряжение питания на двигатель. Если используемые двигатели рассчитаны на 12 В или меньше, то питание 12 В подается через эту винтовую клемму, а встроенный регулятор 5 В обеспечивает питание логики 5 В для микросхемы L298N.

Читать также:  Электрическая ракета своими руками на суперконденсаторах

Драйвер двигателя L298N

Вы также можете получить доступ к этому регулируемому напряжению 5 В через третий контакт в 3-контактной винтовой клеммной колодке. Перемычка, расположенная рядом с 3-контактной винтовой клеммой, должна быть задействована при напряжении питания до 12 В, так как эта перемычка включает встроенный регулятор. Выход 5 В с третьего контакта 3-контактной винтовой клеммы доступен только при включенной перемычке, т.е. напряжение питания 12 В. Этот выход 5 В можно использовать для питания платы Arduino.

Если напряжение питания больше 12В, то снимите перемычку, так как это может привести к повреждению регулятора. В этом случае питание логики 5 В на микросхему L298N подается через третий контакт 3-контактной винтовой клеммы.

Управление двигателем постоянного тока Arduino с использованием L298N

Теперь мы рассмотрим простую схему, с помощью которой мы будем управлять скоростью и направлением двигателя постоянного тока, используя Arduino и микросхему L298N. Вам потребуется несколько дополнительных компонентов для этого мини-проекта. Полный список компонентов приведен ниже. С использованием L298N мы будем контролировать обе функции простого двигателя постоянного тока, то есть скорость и направление вращения, используя комбинацию сигнала ШИМ и L298N (H-мост).

Принципиальная электрическая схема

Принципиальная электрическая схема подключения

Требуемые компоненты

  • Arduino UNO (можно заказать здесь)
  • Модуль драйвера двигателя L298N (можно заказать здесь)
  • Двигатель постоянного тока 12 В
  • Потенциометр 100 кОм
  • Источник питания 12 В
  • Макетная плата
  • Соединительные провода

Код

Итог

Управление двигателем постоянного тока на Arduino с использованием драйвера двигателя L298N может стать начальным этапом многих продвинутых проектов. Почти у всех роботов есть колеса, и нам нужно управлять двигателями, подключенными к этим колесам. Следовательно, любой робот на базе Arduino может реализовать этот тип управления двигателем с помощью L298N.

Вот некоторые из роботизированных применений драйвера двигателя L298N — это робот, управляемый жестами рук, робот, следящий за линией, робот, избегающий препятствий и т.д.

С Уважением, МониторБанк

Добавить комментарий