WeMos auto-apagado con MOSFET de canal N

0

Estoy tratando de construir un botón conectado a internet. Cuando se presiona el botón, WeMos D1 se enciende, hace una llamada a la red y luego corta la alimentación tirando de la puerta irlb8721 a LOW .

Vídeo: enlace

Aquí está el programa que uso actualmente para la prueba:

void setup() {
  pinMode(2, OUTPUT);
  digitalWrite(2, LOW); // Turn on built-in LED

  pinMode(5, OUTPUT);
  digitalWrite(5, HIGH); // Keep ourselves powered after button is released
  delay(5000); // Do the work, e.g. make a network call
  digitalWrite(5, LOW); // Cut off the power
}

void loop() {}

El problema es que después de que se apaga la alimentación, todavía hay una fuga de corriente de ~ 20 mA, lo que es un factor decisivo para un botón de alimentación por batería. Desconectando el pin 5 ( D1 ) se deshace de eso por alguna razón.

La resistencia entre la puerta y la fuente es 676kOhm , entre D1 y la puerta - 10kOhm . Gracias por tu ayuda!

    

2 respuestas

1

Creo que, debido a que está utilizando el WeMos para apagarse, lo que está sucediendo es que cuando el MOSFET se apaga, el voltaje en el pin que lo impulsa aumenta.

O para decirlo de otra manera, el controlador de pines está parado en el suelo que está tratando de levantar.

Esto es lo que estás tratando de hacer ...

simular este circuito : esquema creado usando CircuitLab

Sin estudiar las especificaciones en el dispositivo, ese pull-up interno puede o no estar presente y ser controlable.

En algún momento se convertirá en algún tipo de regulador lineal u oscilar.

Puedes tener más éxito usando

pinMode(5, INPUT);

en lugar de

digitalWrite(5, LOW);

Eso permitirá que el desplegable haga su trabajo, asumiendo que el pull-up no existe o se puede desactivar.

Si existe y no se puede apagar, debe reducir significativamente el valor desplegable y la resistencia de la puerta y agregar otra a la línea de conmutación y comerse la pérdida actual a través del divisor.

simular este circuito

Sin embargo, de cualquier manera, cortar su propia garganta puede ser problemático, ya que el dispositivo puede reiniciarse durante el apagado o la caída.

    
respondido por el Trevor_G
0

Esto se debe a una fuga a través de los circuitos de su MCU. Incluso cuando su MOSFET está apagado, la MCU permanece conectada a 3.3V. Parte de la corriente puede fluir desde la entrada de 3.3V, a través del pin D1, a través de la resistencia de 10k, a través de la resistencia de 676k, a tierra. Esto levanta la compuerta del MOSFET, lo que permite que fluya más corriente (pero debido a la caída de tensión directa del diodo, la tensión de la compuerta permanece limitada y tal vez el MOSFET no se enciende lo suficiente para que la MCU arranque). p>

Una posible solución sería utilizar un interruptor de lado alto en su lugar (utilizando un MOSFET de canal P), cuya puerta se abre con un segundo MOSFET (canal N). Esto se ilustra en una respuesta a otra pregunta en este sitio .

    
respondido por el Tom van der Zanden

Lea otras preguntas en las etiquetas