14 авг. 2025

28BYJ-48 5В пример кода для управления шаговым двигателем для 3D принтера

Простой пример как с помощью ARDUINO управлять шаговым двигателем.

#include "GyverStepper2.h"

GStepper2<STEPPER4WIRE> stepper(2048, 2, 4, 3, 5); // in1 in2 in3 in4

//GStepper2<STEPPER2WIRE> stepper(2048, 2, 5);

#define VERSION "0.01"


void setup() {

  Serial.begin(115200); // Иницилизация  сериала

  Serial.setTimeout(10); // Ограничиваем время  конца приема

  stepper.setMaxSpeed(64); // Скорость  шагов,  более 512 начинает пропускать  шаги

  //stepper.setSpeed(64); // Скорость  врещения

}


void loop() {

  // здесь происходит движение моторов, вызывать как можно чаще

  stepper.tick(); //Вертим  пока есть куда


  // управляем скоростью

  if (Serial.available() > 0)

  {

    int val = Serial.parseInt();

    Serial.print("Enter number: ");

    Serial.println(val);

    //stepper.setSpeed(val);

    stepper.setTarget(val);

  }


  static uint32_t tmr;

  if (millis() - tmr >= 1000) {

    tmr = millis();

    Serial.println(stepper.pos);

  }

}

Схема обмоток двигателя, от нее зависит порядок подключения.

Craftum Конструктор сайтов Craftum