Drive e Motor de Passo

Olá,
Estou desenvolvendo o sistema de automação de uma máquina em que o motor de passo deve rotacionar duas voltas no sentido horário e logo em seguida (sem pausas) duas voltar no sentido anti-horário em um loop sem fim com alta velocidade. Escrevi um código com a biblioteca stepper porém não consigo atingir altas velocidades. Dei uma olhada na biblioteca accelstepper porém as funções move() e moveTo() nã foram capazes de enviar as rotações em ambos os sentidos. Estou utilizando um motor ws23, um drive wd24-04 e um arduino mega. Alguém teria alguma ideia de código que poderia atender a esses requisitos?

Me ajudaria muito.

Segue o código utilizado até agora:

#include <Stepper.h>

const int stepsPerRevolution = 200; // change this to fit the number of steps per revolution
// for your motor

// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 2, 3, 4, 5);

void setup() {

Serial.begin(74880);
myStepper.setSpeed(700);
}

void loop() {
estadobotao = digitalRead(botao);

// step one revolution in one direction:
myStepper.step(200);
//delay(50);

// step one revolution in the other direction:
myStepper.step(200);
// delay(50);

}

Motores de passo não são conhecidos por atingirem altas velocidades. Que valores experimentaste nesta função:

myStepper.setSpeed(700);

?

Foi apenas um teste o valor de 700. Consegui que o motor funcionasse até 300, após isso o mesmo começa a vibrar e não funciona.

Que é que sabes acerca de motores de passo?