//sistema de tapa
#include <Button.h>
#include <AccelStepper.h>
Button botonRojo(A0);
#define IN5 8
#define IN6 7
#define IN7 6
#define IN8 5
int option; //para mandar mensajes
// STEPS DEL GIRO y sus pines . Revisar al montar.
const int stepsPerRevolution1 = 150;
AccelStepper MotorRojo(AccelStepper::FULL4WIRE, IN5, IN7, IN6, IN8);
int controlBoton = 0;
void setup() {
pinMode(A0, INPUT_PULLUP); // boton rojo
// VELOCIDAD DE CADA MOTOR
MotorRojo.setMaxSpeed(500);
MotorRojo.setAcceleration(20);
MotorRojo.setSpeed(100);
Serial.begin(9600);
}
void loop() {
// MOTOR 1
if (botonRojo.pressed()) {
controlBoton = 1 - controlBoton;
Serial.println(controlBoton ? "Boton ON" : "Boton OFF");
if (controlBoton) {
Serial.println("abriendo rojo");
MotorRojo.move(-stepsPerRevolution1 );
MotorRojo.runToPosition();
}
else {
Serial.println("cerrando rojo");
MotorRojo.move(stepsPerRevolution1 );
MotorRojo.runToPosition();
}
}
// para mandar la acción via serial
if (Serial.available() > 0) {
option = Serial.read();
if (option == 'a') {
Serial.println("abriendo rojo");
MotorRojo.move(-stepsPerRevolution1 );
MotorRojo.runToPosition();
}
if (option == 'b') {
Serial.println("cerrando rojo");
MotorRojo.move(stepsPerRevolution1 );
MotorRojo.runToPosition();
}
}
}