Проблема управления двумя моторами через L298N
- Войдите на сайт для отправки комментариев
Всем привет.
Есть у меня Arduino Uno, и драйвер двигателей L298N.
Интересуюсь у гугла, как же это все связать, он мне отвечает статьями с примерами. Я захожу интересуюсь, беру готовый скретч, заливаю его в Arduino (предварительно указав порты к которым подключено все).
Запускаю все, питаю драйвер от кроны(9 вольт), Arduino от USB от компа.
И отнюдь, работает только один двигатель.
Отключаю провода рабочего двигателя (ENA, IN1, IN2) от Arduino, изменяю скретч (удаляю строки с указанными выходами), заливаю - вуаля, второй двигатель работает. Проделываю все наоборот(второй отключаю первый возвращаю) все опять работает. А вместе не хочет..
Магия? Не думаю. Но как решать эту проблему хотелось бы узнать.
Остаётся загадкой схема подключения и ваш код ... но одна строчка "...Отключаю провода рабочего двигателя (ENA, IN1, IN2) от Arduino..."
наводит на мысль, что вы используете входы ENA и ENB для разрешения включения движков - не используя их залейте тестовый код
#define D1 2 // Направление вращение двигателя 1 #define M1 3 // ШИМ вывод для управления двигателем 1 #define D2 4 // Направление вращение двигателя 2 #define M2 5 // ШИМ вывод для управления двигателем 2 bool direction = 0; // Текущее направление вращения int value; // Текущее значение ШИМ void setup() { pinMode(D1, OUTPUT); pinMode(D2, OUTPUT); } void loop() { for(value = 0; value <= 255; value+=1) { digitalWrite(D1, direction); // Задаем направление вращения digitalWrite(D2, direction); analogWrite(M1, value); // Задаем скорость вращения analogWrite(M2, value); delay(20); } direction = direction ^ 1; // Инвертируем значение, чтобы в след. цикле вращаться в другую сторону }Залил данный скетч, запустил. Первый двигатель работает самостоятельно, второй начинает крутиться "с толчка". Может быть крона уже разряжена и это влияет на это? другого источника питания нету просто...
added: вспомнил про аккум с машинки, зарядил поставил, двигатели крутятся как надо, спасибо))