Подключение шаговика 17hs4401 к Arduino Uno через драйвер A4988

Тема в разделе "Моторы, сервоприводы, робототехника", создана пользователем Hank Hill, 28 ноя 2016.

  1. Hank Hill

    Hank Hill Нерд

    Добрый день,
    Пытаюсь подключить шаговый двигатель 17hs4401 к ArduinoUno через драйвер A4988.
    Двигатель почему-то не крутиться.
    Подскажите, пожалуйста, что я делаю не так. Схема подключения и код – ниже.
    Спасибо заранее
    upload_2016-11-28_0-6-0.png
    #define STEP_PIN 7
    #define DIR_PIN 8
    #define EN_PIN 9

    //миллисекнд на шаг -
    //этой константой можно регулировать скорость вращения
    #define STEP_MILLIS 20
    //количество шагов, которое мотор будет делать
    #define STEPS 200

    void setup()
    {
    pinMode(STEP_PIN, OUTPUT);
    pinMode(DIR_PIN, OUTPUT);
    pinMode(EN_PIN, OUTPUT);

    }

    void loop()
    {
    //подача напряжения на enable драйвера
    digitalWrite(EN_PIN, HIGH);
    //выбор направления
    digitalWrite(DIR_PIN, HIGH);

    //в цикле включается и выключается пин драйвера, отвечающий за шаги,
    //столько раз, сколько записано в константе STEPS
    for (int i = 0; i < STEPS; i++)
    {
    digitalWrite(STEP_PIN, HIGH);
    delay(STEP_MILLIS);

    digitalWrite(STEP_PIN, LOW);
    delay(STEP_MILLIS);
    }

    //режим удержания вала
    analogWrite(EN_PIN, 100);
    delay(3000);
    //изменение направления
    digitalWrite(DIR_PIN, LOW);
    digitalWrite(EN_PIN, HIGH);

    for (int i = 0; i < STEPS; i++)
    {
    digitalWrite(STEP_PIN, HIGH);
    delay(STEP_MILLIS);

    digitalWrite(STEP_PIN, LOW);
    delay(STEP_MILLIS);
    }

    delay(3000);
    digitalWrite(EN_PIN, LOW);
    }
     
  2. Tomasina

    Tomasina Сушитель лампочек Модератор

    попробуй разные комбинации подключения проводов от ШД.
     
  3. vvr

    vvr Инженерище

    убери провод enable
    и код полностью покажи
    кто его знает что там нацарапано)))
     
    Hank Hill нравится это.
  4. Hank Hill

    Hank Hill Нерд

    Спасибо, заработало после того, как:
    1) Убрал провод Enable
    2) Крутя в руках контроллер, случайно замкнул два контакта пальцем - ШД заработал. Это позволило заметить, что контакты SLEEP и RESET должны быть замкнуты

    PS код программы приведен целиком
    upload_2016-11-28_22-47-30.png
     
    Tomasina нравится это.
  5. Onkel

    Onkel Гуру

    Да, важно - в этом драйвере никакие входы не должны висеть, или gnd, или vcc (через резисторы), о чем написано в даташите на чип.
     
    Tomasina нравится это.