Buenas noches intento hacer un proyecto de un alimentador de caballos, la idea es simple pero no puedo dar con el codigo, funciona así:
En un "Silo" estará la comida de los caballos, el operador coloca el código del caballo, (Por ahora via serial, mas adelante via NUMPAD) Arduino ve el código y pregunta si el nombre de caballo es "X" si esta correcto el operador aprieta el numero "1" y arduino mueve un servo que servira la cantidad definida para cada caballo (Esto será por el tiempo que estara abierto el servo).
Consegui colocar un caballo y funciona pero he intentado de muchas formas para colocar otros caballos y ha sido simplemente imposible para mi, AYUDA POR FAVOR!!!!
#include <Servo.h> // Incluye la libreria de servo
Servo myservo; // Define myservo como Servo
int posinicial = 15; // Define la posicion inicial del servo
int posmedia = 105; // Define la posicion en la que servira el alimento
int codigocaballo; // Define el codigo del Caballo
int tiempotrueno = 4000; // Define el tiempo que estara abierto el servo
int tiempoluna = 3500;
int confirmaciondelcaballo; // Define la confirmacion del Caballo
void setup() {
Serial.begin(9600); // Enciende el Serial
myservo.attach(12); // Define el Servo en el output 12
myservo.write(posinicial); // Coloca el Servo en 0
}
void loop() {
Serial.println("Codigo del Caballo"); // Preguntamos el codigo del Caballo
while (Serial.available()==0){} // Esperamos la respuesta
codigocaballo = Serial.parseInt (); // Leemos el codigo
if(codigocaballo == 001){ // revisamos si esta correcto
Serial.println("Caballo Trueno ? 1 = Si 2 = No"); // revisamos el Nombre del Caballo
while (Serial.available()==0){}
confirmaciondelcaballo = Serial.parseInt();}
else {
Serial.println("Error!!!");
Serial.println("Intente Nuevamente");
delay(1500);
return;
}
if(confirmaciondelcaballo == 1){
Serial.println ("Confirmado");
delay(1500);
myservo.write(posmedia);
delay(tiempotrueno);
myservo.write(posinicial);
delay(2000);
}
else{
return;
}
}
Tengo una imagen de mi idea, no es muy buena pero se entiende