Hola, tengo que detectar si en un determinado pin de un conector tengo 24V o no, lo que pasa es que la señal de 24V está siempre, lo que cambia es la masa de esos 24V, esto lo que hace es encender un led, pero quiero que Arduino me detecte el led encendido sin que esté físicamente, estoces siempre tengo 24V y aunque le pongo un divisor de tensión siempre habrá tensión, 5V después de divisor, gracias por vuestro tiempo, espero que esté clara mi duda.
Utiliza un optoacoplador en paralelo al led de 24V:
Cuando se cierre el interruptor el led de 24 se encenderá y el led del opto conducirá haciendo que el foto transistor conduzca también. Esto quiere decir que será lógica negativa: si el interruptor está cerrado led on, pin arduino vale 0 y viceversa.
Si pones la R en emisor (colector común o seguidor de emisor) y tomas la señal del emisor no se invierte la lógica.
@joseinsy si pones el divisor entre masa y el diodo (o sea en paralelo al interruptor) puedes detectar cuando este se cierra (y el LED se enciende) porque la tensión cae a 0V.
De todos modos la solución más segura (y elegante) es la que te propone @victorjam
Gracias a todos, al final lo solucione poniendo un transistor BC547 y a la salida un divisor de tensión para obtener un poco menos de 5V por si acaso por cualquier motivo la entrada sube de los 24V, lo del optoacoplador me parece muy buena idea, pero lo que tenia a mano es el BC547,
No es una cuestión de lo que tengas o no a mano.
Para una prueba esta bien, para obtener 5V tmb esta bien.
Un simple zener de 5.1V haría el trabajo, no me gusta del todo pero puede funcionar.
Ves, en el punto de salida si tienes 24V tendras 5 o algo menos.
Prefiero el opto.
