Пишу скетч для управления 2 шаговыми двигателями, проблема в том, что один двигатель работает, другой нет.

NikitaAlphyn
Offline
Зарегистрирован: 03.03.2019

Плата Arduino Uno, двигатель step motor 28BYJ-48, драйвер для двигателя ULN2003.

Код:

#include <AccelStepper.h>

#include <MultiStepper.h>

#define HALFSTEP 8



#define motorPin1 0 

#define motorPin2 1 

#define motorPin3 2 

#define motorPin4 3 

#define motorPin5 4 

#define motorPin6 5 

#define motorPin7 6 

#define motorPin8 7 



AccelStepper stepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4);

AccelStepper stepper2(HALFSTEP, motorPin5, motorPin6, motorPin7, motorPin8);



void setup() 

{

stepper1.setMaxSpeed(1000.0);

stepper1.setSpeed(0);

stepper2.setMaxSpeed(1000.0);

stepper2.setSpeed(0);

}

void loop() 

{

int sensorReadingA0 = analogRead(A0);

if (sensorReadingA0 > 506 && sensorReadingA0 < 518) {

return;

}

int motorSpeedA0 = map(sensorReadingA0, 0, 1023, -1000, 1000);

stepper1.setSpeed(motorSpeedA0);

stepper1.runSpeed();

int sensorReadingA1 = analogRead(A1);

if (sensorReadingA1 > 506 && sensorReadingA1 < 518) {

return;

}

int motorSpeedA1 = map(sensorReadingA1, 0, 1023, -1000, 1000);

stepper2.setSpeed(motorSpeedA1);

stepper2.runSpeed();

}

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Попробуйте вставить программу по правилам форума, это совсем не сложно. Ну и уйти с 0 и 1 пина - тута посложнее будет.

Alexander
Offline
Зарегистрирован: 25.04.2010