Skip to main content

L298N: Классический драйвер

L298N: Классический драйвер

L298N — это мощный, но устаревший драйвер двойного H-моста. Он огромен, имеет большой радиатор и кучу клемм.

L298N Module

1. Подключение

Модуль имеет 3 клеммника и ряд пинов.

Питание (Клеммник из 3-х винтов)

  1. 12V: Вход силового питания (от 7V до 35V). Сюда подключаем Плюс аккумулятора.
  2. GND: Общая земля. Сюда подключаем Минус аккумулятора И GND Arduino.
  3. 5V: Выход 5V (если стоит перемычка). Можно питать Arduino отсюда!

Важно: Если питание моторов > 12V, снимите перемычку “5V Enable” и подайте внешние 5V на клемму 5V для питания логики чипа. Иначе сгорит стабилизатор.

Выходы на моторы

  • OUT1 / OUT2: Мотор А.
  • OUT3 / OUT4: Мотор B.

Управление (Пины)

  • ENA: Скорость мотора А (PWM). Если стоит перемычка — всегда макс. скорость.
  • IN1 / IN2: Направление мотора А.
  • IN3 / IN4: Направление мотора B.
  • ENB: Скорость мотора B (PWM).

2. Программная реализация

// Пины для Мотора А
#define ENA 9  // PWM (обязательно пин с тильдой ~)
#define IN1 8
#define IN2 7

void setup() {
  pinMode(ENA, OUTPUT);
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
}

void loop() {
  // Вперед на полной скорости
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  analogWrite(ENA, 255);
  delay(2000);

  // Стоп
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  delay(1000);

  // Назад на половинной скорости
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, HIGH);
  analogWrite(ENA, 128); // 0-255
  delay(2000);
}

Таблица истинности (для одного канала)

IN1IN2ENA (PWM)Результат
HIGHLOW255Вперед (Быстро)
HIGHLOW100Вперед (Медленно)
LOWHIGH255Назад
LOWLOWXСтоп (Свободный выбег)
HIGHHIGHXСтоп (Торможение)

3. Недостатки

  • Падение напряжения: На драйвере теряется около 2V. Если у вас 4 батарейки AA (6V), мотор получит только 4V.
  • Нагрев: Радиатор нужен не для красоты.