const int ledPin1 = 2;
const int buttonPin = 4;
int pos = 0;
int lluvia = 0;
int pos_guardada = 0;
int cambio = 0;
int tiempo_lluvia = 10000;
int tiempo_altolluvia = 20000;
int t1 = 0;
int t2 = 0;

void setup() { 
  pinMode(ledPin1, OUTPUT);
  pinMode(buttonPin, INPUT);
}
void loop() {
  pos = digitalRead(buttonPin);
  if (pos != pos_guardada) 
  { 
    pos_guardada = pos;
    cambio++;
    Serial.print("NĂºmero de cambios: ");
    Serial.println(cambio);
    t1 = millis();
  }
  if (millis()-t1>tiempo_lluvia)  {      cambio = 0;
  }
  if (cambio>2)  {
    lluvia = 1;
    t2 = millis();
  }
  else  {    lluvia = 0;
  }
  if (lluvia==1)  {    digitalWrite(ledPin1, HIGH);
  }
  else { digitalWrite(ledPin1, LOW);
  }
  delay(1000);
}