Estado de lectura desde LED en otro circuito

0

Para un proyecto actual, tengo que leer el estado de un LED en otro circuito con una Raspberry Pi.

Mi esquema actual es este:

simular este circuito : esquema creado usando CircuitLab

Todo lo que se encuentra dentro del cuadro de puntos no es físicamente accesible para mí en la versión final del proyecto, por lo que solo puedo conectar los cables al lado del botón. (El LED sigue siendo visible)

Ahora, cuando comienzo mi código para leer el estado del Pin 12 con la resistencia interna desplegable, solo obtengo 0s como salida.

Código para leer el Pin (con menú desplegable):

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(12, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

for i in range (5):
    print GPIO.input(12)
    time.sleep(.01)
GPIO.clear

Salida (desplegable):

0
0
0
0
0

Mi idea aquí es que la corriente podría atravesar la resistencia y no el pin, pero no estoy seguro de eso.

Entonces, si elimino el menú desplegable y vuelvo a intentar lo mismo, obtendré un patrón alternativo de 1s y 0s.

Código para leer el Pin (sin menú desplegable):

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(12, GPIO.IN)

for i in range (10):
    print GPIO.input(12)
    time.sleep(0.01)
GPIO.clear

Salida (no desplegable):

0
1
0
1
0
1
0
1

Según tengo entendido, esto se debe a la falta de resistencia desplegable ya que la corriente no tiene a dónde ir, por lo que está creando esta interferencia.

¿Ahora quería preguntar cómo sería posible para mí obtener el estado actual del LED con las circunstancias dadas y de dónde viene este patrón alternativo? (Tal vez sea un malentendido de las resistencias desplegables).

Solución:

Gracias @Transistor

  

el Pi necesita una ruta de retorno para la corriente de detección.

El esquema final es este:

simular este circuito

Ahora la salida es:

  • LED apagado: 1
  • LED encendido: 0
pregunta Ironlors

2 respuestas

1

Sí, el Pi necesita una ruta de retorno para la corriente de detección.

simular este circuito : esquema creado usando CircuitLab

Figura 1. El Pi necesita una referencia de tierra al circuito original.

Si el cuadro de LED está completamente aislado, puede hacer esto:

simular este circuito

* Figura 2. Para unidades aisladas, la tensión de contacto se puede controlar como se muestra. "

Con el interruptor abierto, Pi GPIO leerá 'alto' y con el contacto cerrado leerá 'bajo'.

    
respondido por el Transistor
1

Una mejor solución es un sensor óptico conectado a través del led. Puede monitorearlo sin conectarse electrónicamente al circuito. Nada más que grabar un ldr o un fotodiodo sobre el led.

    
respondido por el Passerby

Lea otras preguntas en las etiquetas