Usando MOSFET para encender / apagar un sensor controlado por ESP8266

1

Quiero alimentar una MCU (ESP8266, 3.3V) y un sensor ultrasónico (HC-SR04, requiere > = 3.7V) usando baterías AA. Al utilizar un LDO eficiente (MCP1700T-3302E) y pasar mucho tiempo en el modo de suspensión profunda, el consumo de corriente promedio de la propia MCU se mantiene por debajo de 0,1 mA. Sin embargo, dado que el sensor ultrasónico parece atraer una corriente de reposo (relativamente alta) de alrededor de 1,5 mA, me gustaría controlar su Línea VCC por el ESP y enciéndala solo cuando sea necesario. Hacer esto de una manera eficiente en energía parece ser ¿Se hace mejor usando un MOSFET, tal vez como en el siguiente esquema?

simular este circuito : esquema creado usando CircuitLab

¿Tiene sentido este plan, qué modelo sería óptimo para M1 (especialmente considerando la batería / baja potencia)? ¿Contexto) y la puerta requiere un desplegable adicional o un resistor en serie?

    
pregunta martin

2 respuestas

6

El uso de un MOSFET de canal P para cambiar la alimentación es razonable, pero la forma en que propones conducir la puerta no lo es.

El microcontrolador puede conducir la puerta básicamente a tierra, por lo que encender el FET no es un problema. Sin embargo, el micro solo puede conducir la compuerta a 3.3 V, no a su fuente, por lo que no puede apagar el FET completamente. Desea que la puerta oscile el rango completo de 0 a 4,5 V.

Una forma de hacerlo es usar otro transistor:

Cuando la salida digital sube, Q1 se enciende. Eso baja la compuerta de Q2, encendiéndola. Cuando la salida digital es baja, Q1 se mantiene desactivado. R1 luego tira de la compuerta hacia arriba, apagando la Q2.

El apagado no será rápido (puede ser de unos pocos ms), pero eso no debería importar si se enciende y apaga ocasionalmente el sensor ultrasónico.

Se eligió

R1 para ser tan alto para minimizar la corriente a través de él cuando se enciende el dispositivo. Normalmente, habría usado alrededor de 10 kΩ, pero en este caso eso consumiría alrededor del 30% de la potencia del dispositivo que se está cambiando. Hacer que R1 10 veces más grande hace que use 1/10 de la potencia, o solo alrededor del 3% de la corriente del dispositivo. La desventaja es que la constante de tiempo RC de R1 y la capacitancia de la compuerta es mayor, tomará más tiempo apagar el FET una vez que Q1 deje de bajar la compuerta. Sin embargo, unos pocos ms no deberían importar en esta aplicación como lo describe.

R2 se hizo simplemente R1 x 10. Eso generará una pequeña cantidad de corriente de la salida digital, pero es suficiente para encender cualquier transistor NPN de señal pequeña que pueda encontrar, dado que la carga del colector es de 100 kΩ.

    
respondido por el Olin Lathrop
3

Puede que haya un problema con la unidad de compuerta de su MOSfet de lado alto: ESP8266 no puede llevar la compuerta de M1 hasta 4.5V. Esto significa que M1 puede no apagarse por completo.

Debido a que su carga es de baja corriente, es posible que pueda usar una compuerta lógica CMOS de alta velocidad estándar como interruptor. Utilice una compuerta compatible con TTL (HCT en lugar de HC) para igualar mejor el nivel de salida lógica de ESP8266. Tienes muchas opciones, un 74HCT2G34 es un ejemplo. En el siguiente esquema, los dos buffers de 74HCT2G34 son "BUF1" y "BUF2". Ambos se alimentan desde el lado de 4.5 V del regulador de voltaje de baja caída U2. Se puede recomendar a un divisor de voltaje que convierta la salida "ECHO" de 4.5v del ultrasonido a un nivel lógico más bajo compatible con ESP8266. Una resistencia simple en serie puede ser suficiente protección para la sobretensión de la E / S de ESP8266.
Los condensadores de derivación de alimentación se omiten solo por claridad.

simular este circuito : esquema creado usando CircuitLab

Esta solución puede ser marginal, ya que la especificación de voltaje de suministro para compuertas lógicas HCT tiene un mínimo de 4.5 V, por lo que se debe probar que la condición de batería baja es correcta.

    
respondido por el glen_geek

Lea otras preguntas en las etiquetas