Sustituyendo a Arduino por ESP8266 en un (¡Otro más!) Controlador de la puerta del garaje

0

Tengo un abridor de puerta de garaje con dos cables que activarán el motor si los cables están en cortocircuito. Conecté mi multímetro a los cables y medí ~ 24VDC y activé el motor ~ 50mA.

Usando un Arduino Nano v3 como fuente de alimentación, conecté un simple botón pulsador para acortar la salida 3v3 a través de una resistencia de 100 Ohmios (R1) al lado del emisor de un Optoaislante H11AA1M . El suelo de Arduino se dirige a la otra entrada del lado emisor del optoaislador.

En el lado del detector del optoaislador, conecté los cables del abridor de la puerta del garaje a través de otra resistencia de 100 ohmios (R2), y cuando presiono el botón, puedo controlar con éxito el abridor de la puerta del garaje. Podría estar recordando cosas incorrectamente, pero estoy bastante seguro de que medí entre 20-30 mA en R2 cuando la puerta se activa.

Cuando cambio el Arduino por una implementación de ESP8266 y cambio el botón por uno de los GPIO de ESP8266 , No puedo activar el abridor de la puerta del garaje cuando presiona gpio.HIGH a través de la conexión GPIO. También medí 20-30mA en R2.

Si cambio R1 o R2, veo diferentes valores actuales en R2, pero si estoy bastante seguro de que estoy dentro de la tolerancia para la corriente necesaria para activar el abridor de la puerta del garaje. En última instancia, quiero conducir mi controlador personalizado utilizando el GPIO y, por lo que sé, solo necesito activar el emisor del optoaislador para conducir el transistor en el lado del detector del detector a la saturación.

¿Qué está mal? Me encantaría saber cómo diagnosticar mejor mi problema. Tengo la sensación de que no estoy calculando algo correctamente en función de las especificaciones del optoaislador, pero Google no me ha llevado a un tutorial que no me ha dado la cabeza. Me encanta tener más información sobre cómo leer mejor las especificaciones del optoaislador y cómo se aplican a mis proyectos actuales y futuros.

(Por favor, no sugiera que cambie el optoaislador por un relé. Me doy cuenta de que los relés probablemente serán menos complicados, pero en este punto, estoy más interesado en saber por qué y cómo)

EDIT : eliminé R2 y confirmé con el multímetro que > 30mA corría por los cables del abrepuerta del garaje, y ahora, ¡el abridor de la puerta del garaje está correctamente activado!

    
pregunta sl33nyc

1 respuesta

1

El H11AA1M tiene un CTR (Ratio de transferencia de corriente) mínimo del 20%. Eso significa que si tiene 20 mA pasando por el emisor (LED), entonces el detector (transistor) solo podrá conmutar 20mA * 20% = 4mA.

Usted midió la corriente de 'disparo' de 50 mA cuando la entrada del abridor de la puerta del garaje estaba cortocircuitada, por lo que debería estar usando un optoacoplador que cambiará tanta corriente. ESP8266 Los GPIO solo pueden garantizar un máximo de 12 mA, por lo que su optoacoplador debe tener un CTR de al menos 50 mA / 12 mA = 4.2.

Entonces, ¿por qué funciona después de eliminar R2? Su ESP8266 en particular podría manejar 20mA en un 100 & ohm; la resistencia y el LED infrarrojo, y su unidad de optoacoplador individual podría lograr un CTR de > 1.5 a 20 mA. Sin embargo, el hecho de que no puede manejar un extra de 100 & ohm; en la salida sugiere que apenas funciona. Puede fallar en clima más frío o más caliente, o cuando el transistor optoacoplador se sobrecalienta porque está fuera de saturación.

Para mayor confiabilidad, debe aumentar el valor de R1 para extraer no más de 12 mA del GPIO del ESP8266, y cambiar el optoacoplador a uno con mayor CTR, por ejemplo. 4N33 o H11B3.

    
respondido por el Bruce Abbott

Lea otras preguntas en las etiquetas