Шаговый двигатель не движется

Это мой второй проект на Arduino, и я пытаюсь понять, почему мой шаговый двигатель не вращается. Мне удалось заставить работать простой шаговый двигатель 28byj-48, используя stepper.h и несколько примеров кода.

Сейчас я пробую новую настройку, но никакого вращения не происходит. Я вижу питание на шаговом двигателе Arduino и блоке питания, и слышу жужжание двигателя, но он просто не вращается при загрузке кода Arduino:

#define STEP_PIN 9
#define DIR_PIN 8

void setup() {
    pinMode(STEP_PIN, OUTPUT);
    pinMode(DIR_PIN, OUTPUT);
    digitalWrite(DIR_PIN, HIGH); // или LOW для изменения направления
}

void loop() {
    for (int i = 0; i < 8000; i++) {
        digitalWrite(STEP_PIN, HIGH);
        delayMicroseconds(100);
        digitalWrite(STEP_PIN, LOW);
        delayMicroseconds(100);
    }
}

Настройка:

Мощность: Адаптер питания переменного/постоянного тока 24 В, 10 А, 240 Вт

Мотор: Биполярный шаговый двигатель STEPPERONLINE Nema 17, 2 А

Шаговый драйвер: Драйвер шагового двигателя ЧПУ STEPPERONLINE 1,0–4,2 А, 20–50 В постоянного тока, разрешение 1/128 микрошага для шаговых двигателей Nema 17 и 23

Конфигурация контактов:

Шаговый двигатель

Терминал водителя Цвет провода от двигателя
A+ Черный
А− Зеленый
B+ Красный
B− Синий

Блок питания подключен к +VDC и GRND

Arduino подключена

  • контакт 8 к DIR +
  • контакт 9 к PUL +

Для DIR - и PUL - Оба подключены к этой макетной плате, и оттуда есть контакт на GRND Arduino.

Где мне следует искать потенциальные причины, по которым двигатель не вращается?

, 👍0

Обсуждение

Не могли бы вы [отредактировать] свой вопрос, добавив рабочий минимальный пример кода?, @the busybee

Поскольку не существует стандарта относительно того, какого цвета должны быть провода двигателя, попробуйте немного поменять их местами и посмотрите, изменится ли что-нибудь., @chrisl

Вам следует с помощью мультиметра определить, какие провода на двигателе подключены к одной и той же катушке (одна катушка должна быть подключена к A, другая — к B). Во-вторых, проверьте переключатели на драйвере на корректность микрошагов и тока. Попробуйте уменьшить микрошаг и увеличить ток. В-третьих, на драйвере, похоже, также есть контакты ENA. Возможно, их нужно подключить к питанию или заземлению (см. техническое описание)., @Osman-pasha


1 ответ


1

Если ваш шаговый двигатель просто жужжит, но не вращается, вы можете проверить следующее:

Проводка — дважды проверьте соединения катушек двигателя (A+/A− и B+/B−). Неправильное подключение катушек приведёт к невозможности вращения.

Время импульсов шага — попробуйте увеличить delayMicroseconds(100) до 500 или более. Некоторым драйверам для отклика требуются более медленные импульсы шага.

Вывод разрешения (Enable pin) – некоторым драйверам требуется установить вывод EN (Enable) в положение LOW для активации двигателя. Убедитесь, что он либо заземлён, либо правильно настроен.

Источник питания — вы используете источник питания напряжением 24 В, что хорошо, но убедитесь, что настройка тока драйвера соответствует номиналу двигателя 2 А.

Перегрев/защита драйвера — проверьте, не срабатывает ли тепловая или токовая защита драйвера.

Если вы хотите узнать, как управлять шаговым двигателем 28BYJ-48, ознакомьтесь с моей статьей: Как управлять шаговым двигателем 28BYJ-48 с помощью драйвера ULN2003 и Arduino

Надеюсь, это поможет!

,