Вращение шагового двигателя по программе из массива Arduino

Цель: Заставить вращаться 2 шаговых двигателей по программе: вращение - остановка - пауза - вращение - остановка - пауза. Программа движения шаговых двигателей записана в массив.

Материалы и компоненты:

Схема подключения шагового двигателя от CD ROM к Arduino

Внимание! Шаговый двигатель от CD ROM нужно питать от 5В!

На схеме типовое подключение дарайвера шагового двигателя и ардуино, внешнее питание должно быть 5В!

driver stepper motor a4988 podklyuchenie3

 

Скетч управления двумя шаговыми двигателя по программе из массива

***********************************************************

// Шаговый двигатель вращается по программе из массива с паузой в точках из второго массива
#include "GyverStepper2.h"
GStepper2<STEPPER2WIRE> stepper(20, 2, 3);

void setup()

{
// устанавливаем ускорение и скорость
stepper.setAcceleration(200);
stepper.setMaxSpeed(100);
stepper.setTarget(0);
//stepper.setSpeed(100);
}

byte count = 0;
//Массив с количеством оборотов шагового двигателя
int16_t path[] = {0, -70, 0, 70};
//Массив с паузами в точках
int16_t vremya[] = {1000, 500, 1500, 0};
//int16_t vremya[] = {0, 0, 0, 0};

void loop()

{
// здесь происходит движение мотора, вызывать как можно чаще
stepper.tick();

// вернёт true, если все моторы доехали

if (stepper.ready())

{
stepper.setTarget(path[count]); // загружаем новую точку (начнётся с 0)
stepper.brake(); //остановка ШД
delay (vremya[count]); //пауза
stepper.resume(); //включение ШД
if (++count >= sizeof(path) / 2) count = 0;
}

}

*************************************************************

You have no rights to post comments