Шаговый двигатель не работает с платой A4988
Итак, я следил за этим учебником о том, как запустить шаговый двигатель с помощью Arduino с помощью шагового драйвера A4988. Это учебник: Как управлять шаговым двигателем с помощью драйвера A4988 и Arduino. Я соединил провода в соответствии с этой схемой:
Я соединил провода точно так же и трижды проверил это! Проблема в том, что шаговый двигатель не вращается. Вот этот код(он очень прост):
// определяет номера контактов
const int stepPin = 3;
const int dirPin = 4;
void setup() {
// Устанавливает два контакта в качестве выходов
pinMode(stepPin,OUTPUT);
pinMode(dirPin,OUTPUT);
}
void loop() {
digitalWrithe(dirPin,HIGH); // Позволяет двигателю двигаться в определенном направлении
// Делает 200 импульсов для совершения одного полного цикла вращения
for(int x = 0; x < 200; x++) {
digitalWrite(stepPin,HIGH);
delayMicroseconds(500);
digitalWrite(stepPin,LOW);
delayMicroseconds(500);
}
delay(500);
}
Одна странная вещь:
Когда я подключаю вывод sleep и reset на плате A4988, шаговый двигатель начинает вращаться. Например, почему?
ПРИМЕЧАНИЕ: Я заменил MEGA на UNO, потому что в данный момент я просто тестирую.
@Gaurav Mall, 👍2
Обсуждение1 ответ
Лучший ответ:
Вы должны соединить вывод режима сна и сброса вместе. Я предполагаю, что вы взяли эту схему о том, как работать с мехатроникой. В его видео вы видите, что контакты для сна и сброса подключены. Я не знаю, почему, но так должно быть.
Затем, если двигатель вибрирует или щелкает, это может быть одна из следующих проблем:
- Вы неправильно подключили двигатель
- Ток на плате установлен слишком низким (винт на драйвере двигателя)
- Батарея (Vmot) недостаточно мощная
Если это не одна из этих проблем, возможно, проблема с чипом A4988. У меня есть аналогичная проблема, когда он поворачивается в одном направлении и только тогда, когда шим-сигнал проходит через контакт направления, а не контакт шага.
Спасибо! Вопрос задан примерно два года назад. Так что тогда я и сам это понял. Но ценю ваши усилия и принимаю это как ответ. Еще раз спасибо :), @Gaurav Mall
- Почему мой шаговый двигатель работает, когда я открываю последовательный порт?
- Питание двух шаговых двигателей с драйверами A4988
- Шаговый двигатель работает медленно при чтении с датчика MPU 6050
- Справка по библиотеке AccelStepper - Одновременное управление двигателем
- Как позволить шаговому двигателю вращаться постоянно?
- Как правильно использовать микрошаговый драйвер с шаговым двигателем более низкого напряжения
- arduino 28BYJ-48 stepper только жужжит, не вращается
- CD rom stepper нагревается
Пробовали ли вы потянуть Sleep и Reset на ВЫСОКИЙ уровень, как показано на страницах 1 и 7 спецификации [A4988]? (https://www.pololu.com/file/0J450/A4988.pdf)?, @chrisl
у меня нет. Потому что я этого не видел. Подожди, я попробую. Спасибо!, @Gaurav Mall
У меня та же проблема. Мой мотор вибрирует, но по-настоящему не двигается. Вы не могли бы мне помочь?, @PurpleOwl
@PurpleOwl Смотрите ответ ниже, это то, что я пробовал, и это сработало для меня. По сути, вам нужно подключить спящий режим и сбросить контакт вместе. Если они все еще не работают, см. Параметры отладки ниже., @Gaurav Mall