SECUENCIA DE MOTORES STEPPERS

Cordial y respetuoso saludo, arduineros. Solicito de su valiosa colaboración para que a bien tengan de ayudarme en la corrección del código que a continuación transcribo. Se trata de hacer prender do motores en forma alterna pero las diferentes variaciones que he realizado producen su funcionamiento simultáneo.

//MOTORES EN SECUENCIA //ENE. 04/2016.

int motor1 = 1; int motor2 = 2; int BOBINA1MOTOR1 = 3; int BOBINA2MOTOR1 = 4; int BOBINA3MOTOR1 = 5; int BOBINA4MOTOR1 = 6; int BOBINA1MOTOR2 = 7; int BOBINA2MOTOR2 = 8; int BOBINA3MOTOR2 = 9; int BOBINA4MOTOR2= 10;

int motorPin5 = 13; int delayTime = 1; int cuentaPasosDados=0; int cuentaPasosDeseados= 513/3; // número de pasos deseados

void setup() {

pinMode(motor1, OUTPUT); pinMode(motor2, OUTPUT); pinMode(BOBINA1MOTOR1, OUTPUT); pinMode(BOBINA2MOTOR1, OUTPUT); pinMode(BOBINA3MOTOR1, OUTPUT); pinMode(BOBINA4MOTOR1, OUTPUT); pinMode(BOBINA1MOTOR1, OUTPUT); pinMode(BOBINA2MOTOR1, OUTPUT); pinMode(BOBINA3MOTOR1, OUTPUT); pinMode(BOBINA4MOTOR1, OUTPUT);

}

void loop() {

digitalWrite(motor1, HIGH); giro(); digitalWrite(motor1, LOW); digitalWrite(motor2, HIGH); giro(); digitalWrite(motor2, LOW);

} void giro() { digitalWrite(BOBINA1MOTOR1, LOW); digitalWrite(BOBINA2MOTOR1, LOW); digitalWrite(BOBINA3MOTOR1, LOW); digitalWrite(BOBINA4MOTOR1, HIGH);//bobina1-1 delay(delayTime);

////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, LOW); digitalWrite(BOBINA2MOTOR1, LOW); digitalWrite(BOBINA3MOTOR1, HIGH); digitalWrite(BOBINA4MOTOR1, HIGH);//bobina2-1 delay(delayTime);

///////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1,LOW ); digitalWrite(BOBINA2MOTOR1,LOW ); digitalWrite(BOBINA3MOTOR1,HIGH ); digitalWrite(BOBINA4MOTOR1,LOW );//bobina3-1 delay(delayTime);

////////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, LOW); digitalWrite(BOBINA2MOTOR1, HIGH); digitalWrite(BOBINA3MOTOR1, HIGH); digitalWrite(BOBINA4MOTOR1, LOW);//bobina4-1 delay(delayTime);

/////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, LOW); digitalWrite(BOBINA2MOTOR1, HIGH); digitalWrite(BOBINA3MOTOR1, LOW); digitalWrite(BOBINA4MOTOR1, LOW);//bobina1-2 delay(delayTime);

////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, HIGH ); digitalWrite(BOBINA2MOTOR1, HIGH); digitalWrite(BOBINA3MOTOR1, LOW); digitalWrite(BOBINA4MOTOR1, LOW);//bobina2-2 delay(delayTime);

//////////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, HIGH ); digitalWrite(BOBINA2MOTOR1, LOW); digitalWrite(BOBINA3MOTOR1, LOW); digitalWrite(BOBINA4MOTOR1, LOW);//bobina3-2 delay(delayTime);

///////////////////////////////////////

digitalWrite(BOBINA1MOTOR1, HIGH); digitalWrite(BOBINA2MOTOR1, LOW); digitalWrite(BOBINA3MOTOR1, LOW); digitalWrite(BOBINA4MOTOR1, HIGH);//bobina4-2 delay(delayTime);

/////////////////////////////////////////////////

if(digitalRead(BOBINA4MOTOR1) == HIGH)

{ cuentaPasosDados ++ ; }

//////////////////////////////////////////////////

if(cuentaPasosDados == cuentaPasosDeseados)

{ cuentaPasosDados =0 ; delay(2000); } /////////////////////////////////////////////////// }

Agradezco de antemano la ayuda que puedan prestarme.