¿Cómo puedo detectar electrónicamente el estado de un LED en otro dispositivo con un Arduino?

4

Estoy trabajando en un proyecto para integrar un monitor de la puerta del garaje del estante con un Arduino. La estación base tiene un par de LED que parpadean en diferentes patrones para indicar el estado del sensor remoto, y mi idea es que puedo leerlos conectándolos a los pines de entrada, sin embargo, tengo algunos obstáculos que cruzar. He progresado un poco, pero acabo de comenzar con la electrónica y no estoy seguro de si voy en la dirección correcta o si voy a freír cosas por un valor de $ 70.

Esto es lo que sé:

  1. La estación base tiene una fuente de alimentación de 100 mA 12 V.
  2. El Arduino puede usar una fuente de alimentación de hasta 12V, pero es más feliz con 9V.
  3. El voltaje en los cables de la estación base es de aproximadamente 1.9V cuando están encendidos.
  4. Los arduinos usan la lógica de 5V, y leen algo más alto que 3V.

Mi plan es obtener una fuente de alimentación de 12 V que pueda alimentar fácilmente ambas fuentes, alimentar la estación base directamente y utilizar este convertidor para dar el Arduino 9V. Supongo que comparten el mismo nivel de suelo.

Dado que el voltaje en el LED es de solo 2 V, lo que no es suficiente para que el Arduino pueda leer, actualmente estoy pensando en utilizar una variación de este circuito a continuación, que muestra el estado de ENCENDIDO como 1 V y el estado de APAGADO como 5V en la entrada. La diferencia será que solo pasaré un cable desde el lado positivo de uno de los LED de la estación base a la base del transistor.

simular este circuito : esquema creado usando CircuitLab

Entonces, ¿estoy en el camino correcto? ¿Hay una mejor manera de leer estos LED usando un Arduino?

    
pregunta Kaypro II

4 respuestas

7

El problema se está abordando con soluciones innecesariamente complejas . El quid de la cuestión es una afirmación incorrecta: " Dado que el voltaje en el LED es solo de 2V, lo que no es suficiente para que Arduino lea, ... ".

Las entradas analógicas de Arduino son de alta impedancia y pueden leer felizmente una señal de 2 voltios. De hecho, AnalogRead() devolvería un valor de alrededor de 1024 x 2 / 5 = ~ 400 to 420 para una señal de aproximadamente 2 voltios.

Entonces, asumiendo que los dos circuitos tienen sus bases interconectadas, simplemente enganche los ánodos de los LED para separar los pines ADC del Arduino , y use AnalogRead() en cada uno. La alta impedancia de entrada garantiza que el funcionamiento de los LED no se vea afectado de manera importante, incluso un seguidor de voltaje o un búfer no son necesarios.

    
respondido por el Anindo Ghosh
2

Puede usar un seguidor de voltaje para poder leer el voltaje del LED sin cambiar la impedancia del circuito de lectura.

simular este circuito : esquema creado usando CircuitLab

Bueno, no sé mucho sobre tu proyecto, pero esta podría ser una solución rápida. ; D

    
respondido por el Chirry
2

¿Por qué molestarse en modificar el control remoto? Utilice un fototransistor / fotodiodo. Es un transistor basado en la luz. Péguelo en caliente sobre el led o péguelo con cinta adhesiva, y listo.

Esto todavía requiere una entrada analógica en el arduino.

    
respondido por el Passerby
1

El voltaje a través de los LED puede ser demasiado pequeño para la entrada de arduino pero podría encender fácilmente un transistor. Cualquier pequeña señal de transistor NPN haría por Q1 y Q2. Los valores de resistencia no son tan críticos.

    
respondido por el JIm Dearden

Lea otras preguntas en las etiquetas