Как подключить драйвер L298N к Ардуино?

драйвер Уроки Arduino

В этой статье мы научимся подключать и работать с драйвером двигателей и мотора. Драйвер предназначен для управления 2 моторами постоянного тока или одним шаговым двигателем с потреблением тока не больше 2 Ампер.

Внутреннее устройство платы L298N

Схема имеет следующие обозначения:

1-разъем питания двигателей до 35 В, питание с которого уходит на мотор(обозначается VSS), а также земля(обозначение на плате GND)(подсоединяется к аналогичному GND на Arduino)

2-линейный понижающий стабилизатор до 5 Вольт;

3-вход для питания платы(Vs), также является входом для питания стабилизатора, Возможно не подключать его, а подать напряжение только на VSS, но нужно установить джампер 4 для ограничения подаваемого напряжения на плату до 5 Вольт. Благодаря стабилизатору 2 и его входу 3 на 5 Вольт драйвер способен питать микроконтроллер или сервоприводы.

4-джампер подачи напряжения до 35 В для управления мотором, однако для этого требуется отдельно подавать 5 Вольт с платы Arduino.

1 3

5-OUT1 и OUT2 слева(разъемы для подключения первого двигателя или единственного мотора), OUT3 и OUT4 справа соответственно(разъёмы для подключения второго двигателя или единственного мотора), проще говоря-выходы на мотор или двигатель

6-Два логических входа на левые выходы(IN1, IN2) для моторов и два-для правых(IN3, IN4).

7- Джамперы, отвечающие за работу двигателей(ENA, ENB). Позволяют полностью включать и выключать канал мотора. Их можно не снимать и использовать вместо них основные логические входы. Используются в основном для изменения скорости щеточных моторов при помощи ШИМ-сигнала.

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

Входы на плату управляют направлением вращения двигателей. Левые два входа относятся к левому каналу, два последних-к правому.

Если подать 5 Вольт на 1 контакт, двигатель будет крутиться в одну сторону, если на второй-то он поменяет свое направление.

Два джампера рядом с входами соединяют два контакта. Если его снять, то там окажется контакт с 5 Вольтовым входом и контакт, регулирующий скорость оборота при помощи ШИМ-сигнала. Если на контакт, регулирующий скорость, ничего не подавать, то двигатель не будет вращаться даже в случае подачи сигналов к основным входам, регулирующим направление. С одетыми джамперами можно подавать сигналы на основные входы и регулировать как скорость, так и направление.

Логика управления мотором по 2ум пинам:

  • При подаче двух низких сигналов будет холостой ход
  • При подаче двух высоких сигналов будет активное торможение
  • При подаче разных сигналов задается направление вращения.
  • Недостатки драйвера 298N
  • Микросхемы данного драйвера является очень слабым по току и нагреваются даже при токе в 1 Ампер от одного мотора.

Подключение мотора с редуктором

Для примера подключим плату к мотору с редуктором(на него одеваем колесо от машинки). Плату питаем от обычной 5 Вольтовой телефонной зарядки. Третий контакт задействовать не будем, поскольку напряжение всего 5 Вольт.

motor

Перемычка остается на месте, а стабилизатор питает плату от напряжения +5 Вольт. Подсоединяем мотор к пину, отвечающему за направление вращения. После подсоединения к розетке на плате загорается светодиод, который сигнализирует о наличии напряжения. Подаем к контакту, отвечающему за мотор напряжение в 5 Вольт. Колесо начинает крутиться. Если переставить его в соседний контакт- направление изменится.

Подключение драйвера к ардуино и управление мотором при помощи ШИМ-сигнала

При работе через драйвер диод на мотор для борьбы с помехами ставить не требуется, поскольку мост на драйвере сам образует диод в обе стороны сам себя защищает. Диод требуется только при работе с одиночным транзистором и реле.

Для следующего эксперимента нам понадобится:

  • Плата Arduino;
  • Макетная плата;
  • Потенциометр(переменный резистор);
  • Пины, работающие с ШИМ-сигналом, обозначены волнистой линией.

Для управления скоростью вращения достаточно подавать ШИМ сигнал на управляющий вход, который обозначим pinIN, т.е. можно задействовать не все 6 входов, а 4 для управления скоростью.

2 1

Для управления направлением и скоростью мотора На 1 пин подаем 0 или 1, на второй-ШИМ. Для вращения в обратную сторону нам нужно инвертировать ШИМ сигнал, чтобы скорость менялась от 0 до 100%.

Если направление инвертировано, то инвертируем скорость и подаем на пин управления значения направление и на ШИМ-пин скорость.

Код

#define MOTOR1_IN 2

#define MOTOR1_PWM 3

#define MOTOR2_IN 4

#define MOTOR2_PWM 5

void setup() {

pinMode(MOTOR1_IN, OUTPUT);

pinMode(MOTOR1_PWM, OUTPUT);

pinMode(MOTOR2_IN, OUTPUT);

pinMode(MOTOR2_PWM, OUTPUT);

}

void loop() {

motorControl(analogRead(0), MOTOR1_IN, MOTOR1_PWM);

}

// принимает знач. 0-1023, пин IN и PWM(ШИМ)

void motorControl(int val, byte pinIN, byte pinPWM) {

val = map(val, 0, 1023, -255, 255);

if (val > 0) { // вперёд

analogWrite(pinPWM, val);

digitalWrite(pinIN, 0);

} else if (val < 0) { // назад

analogWrite(pinPWM, 255 + val);

digitalWrite(pinIN, 1);

} else { // остановка

digitalWrite(pinIN, 0);

digitalWrite(pinPWM, 0);

}

}

Однако 298N несовременен, ввиду своих характеристик является устаревшим. Микросхемы этого драйвера сделаны по полупроводниковой технологии. Он слаб по току и греется даже от нагрузки в 1 Ампер от 1 мотора. К тому же, он не эргономичен. Аналогичны характеристики имеет и классический моторшилд для UNO.

Рассмотрим другие, более современные драйвера.

Драйвер MX1508

Драйвер MX1508 обладает следующими характеристиками:

  • Позволяет подать на два мотора напряжение до 10 В при максимальном токе в 2.5 А;
  • Позволяет подать на два мотора напряжение до 10 В при максимальном токе в 2.5 А;
  • Чип имеет защиту от перегрева(сам отключается в случае перегрева);
  • Управление аналогично 298N;
  • Предназначен для работы с двумя моторами.

Драйвер TA6586

Драйвер TA6586 обладает следующими характеристиками:

  • Предназначен для работы с двумя моторами;
  • Ток до 7 А;
  • Обладает защитой от перегрева;
  • Подключение и управление аналогично.t

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

Оцените статью
Информация об Ардуино
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я принимаю политику конфиденциальности.