Alimentación de una Raspberry Pi Zero a través de un MOSFET

Tengo una Raspberry Pi Zero que quiero poder encender/apagar mediante código, así que hice este circuito:

Esquemático

simular este circuito : esquema creado con CircuitLab

Me gustaría evitar alimentar la Raspberry Pi directamente a través de los pines GPIO, así que corté un cable micro USB y conecté sus 5 V a mi fuente de alimentación (más tarde será una batería, pero por ahora es un cargador de teléfono). El resto de mi circuito también se alimenta a través de la misma fuente de alimentación. La señal a la puerta se suministra desde otro microcontrolador que también funciona a 5 V. Agregué un LED solo para ayudar en la resolución de problemas.

Cuando aplico la señal de 5 V en la puerta, el LED se enciende, luego conecto el micro-USB en la ranura PWR de la Raspberry Pi y el LED se apaga. No hace falta decir que la Raspberry Pi no se enciende. Si lo dejo enchufado, después de unos 5 a 10 segundos, el LED parpadea muy rápido, y si desconecto la Raspberry Pi, el LED vuelve a brillar después del mismo período de tiempo.

Medí el voltaje de suministro en el circuito mientras la Raspberry Pi está enchufada y permanece en 5 V. También medí el voltaje en la puerta que es de 5 V sin la Raspberry Pi enchufada y cae a 0 V (20 mV a 150 mV , no sé si es un problema con mi multímetro o algo así) tan pronto como lo conecto.

La tierra de Raspberry Pi está conectada a la tierra del circuito solo a través del MOSFET, aunque hay conexiones I²C y SPI a otros dispositivos, que no estaba seguro de que funcionaran y era algo que esperaba probar, sin saber que no lo haría. incluso poder encender la Raspberry Pi. Lo menciono porque estoy tratando de ser lo más exhaustivo posible para ayudar a cualquiera que esté dispuesto a ayudarme.

¿Los 5V en R2 provienen de V1? Debe permanecer en 5V en todo momento. Mientras tanto, cambiar el lado bajo (tierra) para que la energía se rompa o siempre esté conectado, no funciona.
@jay sí, todo funciona con un solo suministro.
Cambiar GND no es una excelente manera de controlar la energía a las cosas aguas abajo. Aunque puede hacer que esto funcione, es como ir fuera de la carretera. En mi opinión, sería mucho mejor usar un FET de canal P y cambiar el VCC del lado alto. ¿Necesitas más detalles?
Exactamente, ahora veo, "la puerta va a cero". La posibilidad es, asumiendo que los terrenos son sólidos: R2 >> R1, micro-usb-gnd <-> a través de algún otro circuito <-> a tierra" Eso empujará la compuerta hacia abajo a través del diodo del cuerpo M1. Puede probar una resistencia en lugar de pi. Mientras tanto, una vez que apaga la tierra, la unidad de control pierde la referencia (gnd) con pi, se filtra a través del lado alto y la señal. Si se conectan a tierra, el interruptor no funciona en absoluto o es intermitente (AC /cap acoplamiento), No cambie la tierra.
@RandyNuss Estaba tratando de evitar el cambio de lado alto debido a la resistencia más alta (2x, 3x). Aparentemente voy a volver a eso, que sigue siendo mejor que los relés en términos de consumo de energía. Seguramente haré preguntas si me quedo atascado de nuevo. ¡Gracias!
@jay No entiendo esta parte <-> a través de algún otro circuito <-> a tierra , R1 está conectado directamente a GND, que también es usb-gnd. ¿No están R1 y R2 formando un divisor de voltaje que supuestamente alimentará 5v a la puerta en lugar de hacer un cortocircuito a tierra?
@php_nub_qq Eso fue para entender cómo se midió la puerta 0V. Asume múltiples factores, situación hipotética; R2 tenía que ser alto y la fuente de alimentación y la tierra M1 están sueltas, la carga (pi) tiene una conexión a tierra alternativa a la fuente de alimentación. Luego, R1, el diodo del cuerpo M1 y la carga establecen la ruta de corriente.
@RandyNuss Switching GND es perfectamente sensato cuando es posible, ¿no? Lo hacemos todo el tiempo. Sin embargo, para dispositivos complejos con muchas entradas y salidas, a menudo no es posible.
@user253751 Estoy 100 % de acuerdo con tu comentario. En este caso, se mencionaron otros buses y complejidades que no se explicaron por completo, por lo que simplemente estaba tratando de alejar a OP de la conmutación GND. Hay muchos MOSFET de canal P de baja RD ON disponibles, por lo que las pérdidas no deberían ser una preocupación al usar un interruptor lateral alto. Pero como usted dice, la conmutación GND es una forma perfectamente válida de cambiar una carga bien entendida.
¿Hay alguna razón por la que esté haciendo esto con un MOSFET y no con un relé de estado sólido?

Respuestas (3)

Estaba tratando de entender qué hace tu circuito, pero no pude. Entiendo lo que estás tratando de lograr aunque.

En primer lugar, debe conectar la tierra del suministro a la tierra de pi. Básicamente, independientemente de lo que conecte, las tierras deben conectarse directamente para que todos los demás voltajes sean relativos (ya que el voltaje en sí mismo es algo relativo y "relativo a tierra" es solo la interpretación predeterminada).

En segundo lugar, necesita un mosfet de canal p único como interruptor lateral alto.

El circuito se ve así:ingrese la descripción de la imagen aquí

Donde R es tu 10k/20k/100k; también tiene una pequeña resistencia a lo largo del control de la puerta, así que póngala allí también; La carga es tu Pi. Además, observe que el pullup R se alimenta desde el mismo micro usb de 5V.

Encontré otra imagen del circuito idéntico (+5V es su micro usb 5V, las tierras están conectadas entre sí como siempre; ignore el diodo flyback, es protección contra picos de voltaje para cargas inductivas, irrelevante para pi):

ingrese la descripción de la imagen aquí

Y puede alimentar el diodo LED desde antes o después del MOSFET; si lo alimenta desde 5V después del MOSFET, será un indicador de encendido/apagado, si es antes del mosfet, siempre estará encendido cuando el cable mismo esté alimentado.

EDITAR: si desea controlar el riel de alto voltaje con lógica de bajo voltaje, deberá usar 2 mosfets. Aquí hay un circuito estándar que puede encontrar en cualquier teléfono o computadora portátil que hace exactamente eso (el canal n controla la puerta del canal p sin conectar su 5V a 12V directamente; donde ve "5V" aquí, debe ser 12V y GPIO es, bueno, su GPIO, puede ser de 5V o 3.3V o cualquier cosa, siempre que se pueda operar un mosfet de canal N):

ingrese la descripción de la imagen aquí

No podía entender exactamente por qué no se enciende, pero está bien, voy a intentar cambiar el lado alto. Solo una pregunta rápida: si el voltaje de suministro es de 12v, no podría hundirlo directamente como se muestra en sus esquemas, ¿verdad?
Y otra pregunta rápida, ¿por qué necesito una resistencia pull-up? ¿Mi pin no se configurará como salida y proporcionará la señal de 5v (ALTA)?
En cuanto al pullup, sí, si activas el pin hacia arriba o hacia abajo, no necesitas pullup. Y si lo alimenta desde 12V, necesitará P-MOSFET+N-MOSFET (la señal de bajo voltaje controlará la señal de alto voltaje)
Ejemplo editado en
En cuanto a pullup, haré una pequeña adición, es posible que aún desee tener uno, ya que establece el estado predeterminado para la línea y evita que flote durante el inicio o simplemente si su GPIO que se supone que lo controla no está configurado para salida (todavía). Una buena práctica para establecer algún estado predeterminado. Apenas consume energía, pero si apunta a microamperios, incluso 100k debería funcionar bien.
Lo acabo de cablear y funciona perfectamente. Tengo un IRF9540 y ni siquiera se está calentando un poco, lo cual es asombroso. El pin uC no está hundiendo ninguna corriente, ¿verdad? ¿Debo tener esto en cuenta al calcular la corriente del disipador en todo el chip?
técnicamente hablando, cualquier cosa que se sumerja/fuente tiene que pasar por su resistencia pullup o pulldown, que probablemente no sea inferior a 10k, lo que significa que está muy por debajo de medio miliamperio o menos, puede ignorarlo con seguridad para estos cálculos. Si tiene un pullup, se hunde cuando la salida es baja, y cada vez que tiene un pulldown, genera cuando la salida es alta (ya que la resistencia conecta dos puntos con diferente voltaje, por lo tanto, debe haber corriente)

Cuando hay muchos terrenos compartidos con cables de E/S, alimentación y periféricos, necesita un interruptor lateral alto con más capacidad que su carga.

Esto puede ser un solo chip o el inverso de su diseño.

Creo que hay una discrepancia entre el esquema y el circuito real que ha construido, o su MOSFET está defectuoso. El apagado del LED cuando conecta el Pi sugiere que hay una caída de voltaje de 3+V en un MOSFET abierto, lo cual es prácticamente imposible.

También medí el voltaje en la puerta, que es de 5 V sin el Pi enchufado y cae a 0 V (20 mV ~ 150 mV, no sé si es un problema con mi medidor o algo así) tan pronto como lo conecto.

Aquí lo tiene: esto no puede suceder con su esquema, pero lo mide. Si no proporciona 5 V en la puerta, su MOSFET se cierra y el Pi no recibe alimentación.