cortocircuitando un pulsador de control remoto con GPIO y un transistor

Diagrama de circuito

Estoy tratando de controlar el control remoto de la puerta de mi garaje con un pin GPIO de mi Raspberry Pi. En lugar de controlar un relé, sería mucho más fácil cortocircuitar el botón del control remoto. ¿Es así como debo hacerlo? ¿Necesito un diodo de protección y, de ser así, dónde debería ir?

¿Importa que el pin GPIO de 3,3 V esté referenciado a una tierra diferente (tierra Raspberry Pi) que la tierra remota?

También agradecería orientación sobre el uso del transistor y el valor de la resistencia.

ACTUALIZAR; Más información de los comentarios de OP: después de verificar, tiene razón, el botón simplemente corta el circuito a la ruta de retorno de la batería de 9V. Mi principal preocupación es que se haga referencia a 3.3V a GND mientras todo en el control remoto está flotando.

Respuestas (4)

Para eliminar cualquier posibilidad de sorpresa y, en general, hacer las cosas más robustas, sugeriría usar un optoacoplador como 4N25 .

esquemático

simular este circuito : esquema creado con CircuitLab

Con este arreglo, no necesita preocuparse por cómo combinar las tierras separadas de los dos sistemas, porque sus tierras simplemente no están conectadas. Además, si hay un problema en cualquiera de los extremos, el optoacoplador puede aislar la falla a un lado y es barato de reemplazar, donde no lo es un Raspberry Pi o un control remoto de garaje.

Dependiendo de cuál sea exactamente el control remoto del garaje, es posible que deba agregar otro transistor para manejar la corriente adicional, ya que el 4N25 tiene un máximo absoluto de 50 mA. Q1 es una forma de hacerlo, y el transistor PNP general que puede encontrar funcionará en esta aplicación. Este arreglo formado por Q1 y el transistor de salida del 4N25 se llama par Sziklai .

Una desventaja potencial de esta solución es que cuando el transistor está encendido, el control remoto (representado aquí por U1) solo verá aproximadamente 8.2 V , donde habría visto el pleno 9 V si estos transistores hubieran sido reemplazados por un interruptor mecánico. Esto es porque pierdes 0.6 V de la caída emisor-base de Q1, y otra 0.2 V de la caída colector-emisor del 4N25. Sin embargo, dudo que esto sea un problema en la práctica.

Probablemente la solución más segura de todas (hasta ahora).
Gracias Phil, me gusta la solución del optoacoplador. La corriente máxima de RPi GPIO es de aproximadamente 50 mA, por lo que creo que no necesitaré Q1. Tengo disponible una resistencia de 130 ohmios y con 3,3 V que son aproximadamente 25 mA y tengo un opto MCT6 disponible con una corriente máxima de 60 mA en el lado del emisor (diodo). La relación de transferencia de corriente es del 20 %, lo que significa aproximadamente 5 mA en el lado del detector (transistor)... lo cual no estoy seguro de que sea suficiente para el control remoto, pero le daré una oportunidad y veré.

Idea correcta, ejecución incorrecta. Suponiendo que su diagrama del control remoto sea correcto (no tengo forma de verificarlo y podría haber muchas configuraciones diferentes), desea usar un transistor PNP. El NPN como seguidor de emisor que muestra no funcionará porque el bloque azul solo verá el nivel digital de 3.3V menos la caída de BE.

Eso deja un problema en cuanto a cómo encender el PNP. Aquí hay una manera simple:

Q2 se hundirá alrededor de 2,7 mA cuando la señal digital sea alta. Calcular Q1 debería tener una ganancia de al menos 50, lo que permitirá que el bloque consuma hasta 130 mA, lo que probablemente sea mucho más que un control remoto de garaje. Ajuste R1 en consecuencia si se necesita más corriente.

Sin embargo, ¿está realmente seguro de que el botón simplemente aplica energía a algún bloque? Eso podría tener sentido si hubiera un solo botón, pero probablemente sea incorrecto si hay dos botones, como abrir y cerrar. Mi primera suposición sería que siempre se aplica energía y el botón corta una línea a tierra, aunque podría haber muchas configuraciones diferentes.

Agregado:

Ahora dice que el botón pulsador no enciende la unidad, sino que corta una línea a tierra. Eso tiene más sentido. En ese caso, este circuito debería funcionar:

Los terrenos del control remoto y la computadora deben estar unidos, pero no hay problema con eso. El control remoto es un único dispositivo aislado, por lo que no hay nada de malo en vincular uno de sus nodos a alguna referencia externa. Veo que otros están dando mucha importancia a esto, pero eso es una tontería. Hay casos en los que desea aislar un interruptor como este, pero cuando el dispositivo en sí está flotando arbitrariamente como en este caso, agregar aislamiento es solo una reacción instintiva o para satisfacer creencias religiosas.

Después de verificar, tiene razón, el botón simplemente corta el circuito a la ruta de retorno de la batería de 9V. Mi principal preocupación es que se haga referencia a 3.3V a GND mientras todo en el control remoto está flotando.
@nummy: vea la adición a mi respuesta. No dejes que las supersticiones de otros te asusten acerca de conectar los terrenos. No hay ninguna razón eléctrica por la que no se puedan conectar.

La idea detrás de su circuito está bien, la implementación requiere algunas mejoras:

esquemático

simular este circuito : esquema creado con CircuitLab

Tienes dos opciones, me gusta más el circuito izquierdo:

  • IZQUIERDA : cortocircuite el interruptor y mueva el transistor NPN al lado bajo de la batería. Esta es la forma más común de controlar una carga desde un microcontrolador. La tierra de RPi y la tierra del control remoto se comparten.
  • DERECHA : Si realmente desea usar el contacto para el botón pulsador, que puede ser mecánicamente más fácil de implementar, entonces necesita un transistor PNP y desea que el Vcc de RPi y el Vcc del control remoto estén interconectados. Esto puede ser complicado si un RPi tiene un regulador de voltaje integrado. Necesita el riel de fuente de alimentación 3V3 del RPi aquí. También por eso yo iría por la izquierda; es más robusto, más simple de implementar. En realidad, también me gusta más la solución de Olin que el circuito correcto.

Cualquier transistor de señal pequeña de propósito general barato funcionará.

  • Para NPN izquierdo, por ejemplo: BC547, BC548, 2N3904, ...
  • Para PNP derecho ej.: BC557, BC558, 2N3906...

Realmente hay montones y montones para elegir. Dependiendo de su ubicación geográfica, otros números de parte pueden ser más comunes. Simplemente camine en una tienda y solicite un equivalente de los mencionados anteriormente.

  • h FE o β > 100

  • V CE, máx. > 15 V

  • yo C, máx. > 100 mamá
  • Supongo que desea un paquete TO-92 , con el que es razonablemente fácil experimentar.
  • ¿Indicación de precio en una tienda normal cuando se vende por pieza? Yo diría de nuevo 0,20 € dependiendo de la ubicación geográfica.

La resistencia puede ser prácticamente cualquier cosa alrededor de 1kΩ-10kΩ\$ y una película de carbón de 250mW o mejor. Precio similar al del transistor en el comercio minorista regular.

Ups, tienes razón!
Creo que corregí el error, revise @PhilFrost
parece razonable

Primero, sí, los terrenos deben estar conectados entre sí si está utilizando conexiones galvánicas directas como un transistor. Un optoacoplador es probablemente más seguro.

En segundo lugar, ¿por qué preocuparse por el control remoto? El abridor de la puerta del garaje debe tener un gatillo manual, que es solo un botón normal conectado a un cable. Puede manejar esto con un transistor o con un pequeño relé que a su vez maneja con un transistor u optoacoplador.

Hay muchas razones por las que alguien podría querer piratear un control en lugar del dispositivo principal. Accesibilidad, facilidad de reemplazo si lo fubar, portabilidad, tamaño, etc. Y, en mi experiencia, el abridor de la puerta del garaje en mi casa no tenía un botón manual.
Quería usar el control remoto porque el RPi está muy lejos del botón de la puerta del garaje.
Estoy de acuerdo en que puede haber razones válidas para usar el control remoto en lugar de una entrada de botón manual, pero la publicación original no habla de eso, así que me aseguré de sugerirlo. Los pulsadores de conexión (normalmente abiertos) se pueden cablear en paralelo; puede tener más de uno conectado al mismo abridor. Por lo tanto, si el RPi está lejos del botón actual, simplemente puede pasar un segundo cable al RPi y usarlo para abrirlo. Es probable que esto sea más sólido que manejar el control remoto, aunque la idea remota probablemente también funcione bien.