Двигатели воют и не вращаются с L298N
У меня проблема с моим ESP32, модулем L298n, двумя воющими моторами и батареей 9 В.
Я подключил положительный вывод аккумулятора 12 В постоянного тока к VCC, а отрицательный — к GND.
Два двигателя 9 В подключены к OUT1, OUT2 - OUT3 - OUT4.
Мой ESP32 работает от порта microUSB.
IN1 -> GPIO 18
IN2 -> GPIO 19
ENA -> GPIO 21 (PWM)
IN3 -> GPIO 22
IN4 -> GPIO 23
ENB -> GPIO 25 (PWM)
GND -> GND (ESP32)
Последовательный вывод кода на испанском языке.
// Определить
#define IN1 18
#define IN2 19
#define ENA 21
#define IN3 22
#define IN4 23
#define ENB 25
void setup() {
// Инициализация серийного сообщения
Serial.begin(115200);
// Настройка сосен как salidas
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(ENB, OUTPUT);
// Инициализация обновленных двигателей
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
analogWrite(ENA, 0);
analogWrite(ENB, 0);
Serial.println("Setup completo, listo para comenzar.");
}
void loop() {
// Постепенное ускорение запуска двигателя
for (int speed = 0; speed <= 255; speed += 5) {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, speed);
Serial.print("Velocidad del motor 1: ");
Serial.println(speed);
delay(100);
}
// Постепенное ускорение второго двигателя
for (int speed = 0; speed <= 255; speed += 5) {
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENB, speed);
Serial.print("Velocidad del motor 2: ");
Serial.println(speed);
delay(100);
}
// Остановите двигатели
Serial.println("Deteniendo motores...");
analogWrite(ENA, 0);
analogWrite(ENB, 0);
delay(2000);
}
@esp32daniel, 👍0
Обсуждение1 ответ
В документации L298 указано, что напряжение падает (если мне не изменяет память) как минимум на 2 В, до почти 5 В при более высоких токах. Это означает, что ваши двигатели будут получать около 7 В в лучшем случае, до 4-5 В в худшем, при условии, что батарея новая и изначально выдает 9 В.
Даже если вы используете лучший источник, чем батарея типа PP3 (см. комментарий 6v6gt) с 298, вам все равно будет не хватать напряжения на двигателе, если вы начнете с 9 В, независимо от того, насколько хорош источник.
298 — это устаревшая технология, и вам следует рассмотреть возможность использования более современного устройства, которое не страдает от таких перепадов напряжения. (Кстати, перепад напряжения проявляется в виде тепла, поэтому эти модули имеют радиаторы размером с гаражные ворота.) Посетите сайт Pololu, где представлен широкий выбор гораздо лучших драйверов.
- L298N Dual Motor Controller Enable Pin имеет питание, но двигатели не работают
- Регулятор скорости для потолочного вентилятора 220 В переменного тока 100 Вт
- L298N, HC-05 Простой автомобиль с дистанционным управлением через Bluetooth, не работающий в Arduino
- L298N издает звуковые сигналы и дает сбой при получении определенных значений AnalogWrite
- Двигатели постоянного тока не работают с ШИМ и драйвером двигателя L298N
- Как использовать отдельный источник питания для Arduino и двигателей
- Как управлять скоростью двигателя с помощью L298N и Node MCU?
- Серводвигатель и драйвер двигателя l298n не работают вместе с esp32
"... и батарея 9 В" Это батарея типа крошечного детектора дыма. Если да, попробуйте более подходящий источник питания для привода двигателей., @6v6gt
Тот, кто отметил этот вопрос как неактуальный, пожалуйста, подумайте, понятно ли автору вопроса, почему он был отмечен как неактуальный, и, если нет, предоставьте автору вопроса объяснение в форме комментария., @6v6gt
Батарея 9 В может оказаться неспособной обеспечить достаточный ток для ESP32 и двигателей., @tepalia