Necesito ayuda para terminar un proyecto que incluye el movimiento de una pinza mediante un motor bipolar, un integrado y arduino UNO. He aquí el avance:
#include <Stepper.h>
const int revoluciones = 32*64; // change this to fit the number of steps per revolution
// initialize the stepper library on pins 8 through 11:
Stepper myStepper(revoluciones, 8, 10, 9, 11);
//variables de los leds
int led_amarillo = 6;
int led_azul = 5;
void setup() {
// set the speed at 15 rpm:
myStepper.setSpeed(15);
// initialize the serial port:
Serial.begin(9600);
pinMode(led_amarillo, OUTPUT);
pinMode(led_azul, OUTPUT);
digitalWrite(led_amarillo, LOW);
digitalWrite(led_azul, LOW);
}
void loop() {
// step one revolution in one direction:
int modo = Serial.read();
if (modo == 49){
myStepper.setSpeed(5);
Serial.println(modo);
Serial.println("sentido reloj");
//myStepper.setSpeed(5);
myStepper.step(revoluciones);
digitalWrite(led_amarillo, HIGH);
digitalWrite(led_azul, LOW);
delay(500);
// step one revolution in the other direction:
Serial.println("sentido anti reloj");
myStepper.step(-revoluciones);
digitalWrite(led_amarillo, LOW);
digitalWrite(led_azul, HIGH);
delay(500);
}
else if ( modo == 50){
myStepper.setSpeed(10);
Serial.println(modo);
Serial.println("sentido reloj");
myStepper.step(revoluciones);
digitalWrite(led_amarillo, HIGH);
digitalWrite(led_azul, LOW);
delay(500);
// step one revolution in the other direction:
Serial.println("sentido anti reloj");
myStepper.step(-revoluciones);
digitalWrite(led_amarillo, LOW);
digitalWrite(led_azul, HIGH);
delay(500);
}
else if ( modo == 51){
myStepper.setSpeed(15);
Serial.println(modo);
Serial.println("sentido reloj");
myStepper.step(revoluciones);
digitalWrite(led_amarillo, HIGH);
digitalWrite(led_azul, LOW);
delay(500);
// step one revolution in the other direction:
Serial.println("sentido anti reloj");
myStepper.step(-revoluciones);
digitalWrite(led_amarillo, LOW);
digitalWrite(led_azul, HIGH);
delay(500);
}
else if ( modo == 120){
myStepper.setSpeed(0);
Serial.println(modo);
delay(500);
}
Serial.println("sentido reloj");
myStepper.step(revoluciones);
delay(500);
// step one revolution in the other direction:
Serial.println("sentido anti reloj");
myStepper.step(-revoluciones);
delay(500);
}
Proyecto_final.ino (2.29 KB)