const int pinControl = 2; // Elige el número de pin que estás utilizando
const unsigned long tiempoPausa = 10000; // 10 segundos de pausa
const unsigned long tiempoActivacion = 300; // 300 ms de activación
void setup() {
pinMode(pinControl, OUTPUT);
digitalWrite(pinControl, LOW); // Asegúrate de que la bobina no esté alimentada al inicio
Serial.begin(9600);
}
void loop() {
// Configura el pin como entrada para verificar la presencia de la bobina
pinMode(pinControl, INPUT_PULLUP);
delay(10); // Pequeña pausa para estabilizar la lectura
int estadoBobina = digitalRead(pinControl);
if (estadoBobina == LOW) {
// La bobina está presente, ahora puedes alimentarla
Serial.println("Bobina presente. Alimentando...");
// Configura el pin como salida antes de activar la alimentación
pinMode(pinControl, OUTPUT);
// Código para activar la alimentación de la bobina
digitalWrite(pinControl, HIGH); // Activar la alimentación (ajusta según tu configuración)
// Puedes agregar aquí otras acciones después de activar la alimentación
delay(tiempoActivacion); // Mantener la bobina alimentada durante el tiempo de activación
// Desactivar la alimentación después del tiempo de activación
digitalWrite(pinControl, LOW); // Desactivar la alimentación (ajusta según tu configuración)
} else {
// La bobina no está presente, muestra un mensaje de error
Serial.println("Error: Bobina no presente. No se puede alimentar.");
// Configura el pin como salida antes de desactivar la alimentación
pinMode(pinControl, OUTPUT);
// Desactivar la alimentación
digitalWrite(pinControl, LOW); // Desactivar la alimentación (ajusta según tu configuración)
}
// Espera el tiempo de pausa antes de volver a verificar
delay(tiempoPausa);
}