hola gente quiero simular un bombeo, que vallan arrancando las bombas correlativas y que si una bomba lleva encendida X tiempo y si la boya de alto sigue en HIGH arranque otra, no se que estoy haciendo mal porque no hace nada bien.
muchas gracia a todos.
int bomba[] = { 6, 9, 10, 11 }; // pines digitales de las bombas
const int Boya_alto=7; // sensor alto
const int Boya_bajo=4; // sensor bajo
unsigned long tiempo;
int contador_bomba=0; // contador de la bomba q tiene q arrancarvoid setup(){
for (int i=0; i>3; i++)
{
pinMode(bomba*,OUTPUT);*
- }*
- pinMode(Boya_bajo,INPUT);*
- pinMode(Boya_alto,INPUT);*
}
void loop()
{- if(digitalRead(Boya_alto)==HIGH) // si la boya esta en alto entro en el bucle*
- {*
- tiempo = millis(); // cojo el tiempo para saber cuando ha empezado*
- while(digitalRead(Boya_bajo) != LOW) // mientras sea diferente a bajo dentro del bucle*
- {*
- digitalWrite(bomba[contador_bomba],HIGH); //enciendo la bomba que corresponda*
- if (digitalRead(Boya_alto == HIGH) && (millis() - tiempo == 3000)) // si el tiempo es superior al marcado.*
- {*
- contador_bomba++; // le sumo uno para arrancar la siguiente bomba*
- digitalWrite(bomba[contador_bomba],HIGH); // arranca la bomba de ayuda.*
- }*
- delay(100) *
- }*
- contador_bomba++; // aquí una vez se ha bajado el nivel de agua le sumo 1 a la bomba para la siguiente arrancada*
- }*
- for (int i=0; i>3;i++) *
- {*
_ digitalWrite(bomba*,LOW); // apago todas las bombas, no tengo q saber cual esta encendida*_
* delay(10);*
* }*
* if(contador_bomba > 3)
_ {_
contador_bomba=0; // si el contador es mayo de 3 se pone a cero*
* }*
}
[/quote]
muchas gracias a todos, puede ser que este fatal el código.
un saludo;
Fermg