Siguiendo con mi pregunta anterior , estoy tratando de crear un controlador de apagado para mi Raspberry Pi. El Raspberry Pi necesita ser alimentado por la batería, pero debería apagarse después de que el Pi detecte que el encendido se ha apagado.
El Pi tomará una alimentación de 3.3V de la línea ACC (tengo otros componentes que tomarán 5V de la línea ACC a través de un 7805, por lo que bajaré a 3.3V usando un divisor de voltaje a menos que alguien tenga una mejor sugerencia: yo ' También conduciré un uPD6708 que toma E / S CMOS de 5V, por lo que tendrá que bajar de 5V a 3.3V en otras 2 líneas).
El software que se ejecuta en el RPi establecerá uno de los pines GPIO en alto, presumiblemente cuando el RPi apaga los pines GPIO se quedarán bajos. Por lo tanto, Q1 debería encender el relé, manteniendo la alimentación del RPi siempre que el encendido esté activado o el pin GPIO esté alto.
Tengo 3 kits de fusibles con una tapa de 1000uF y algún tipo de transformador / inductor, así que también puedo usar uno de ellos en cada batería de 12V y línea de accesorios de 12V.
Este controlador apagado afirma que solo consume 50uA en modo de espera; si usara una puerta OR CMOS 4071, eso sería un comienzo, pero por lo que he leído, necesitaría más corriente de la puerta OR para saturar el transistor. ¿ese derecho?
Teniendo en cuenta que necesito cambiar de nivel 5 líneas de 3.3V a 5V y 2 de 5V a 3.3V además de los requisitos de este subcircuito, ¿alguien puede recomendar componentes / alternativas para OR1, Q1, RLY1 y / o alguna modificación?
simular este circuito : esquema creado con CircuitLab
Aquí está mi intento de seguir la sugerencia de @Connor Wolf.
- Es necesario elegir R1 y C3 para permitir que el RPi se apague correctamente
- Agregué C1 porque imagino que tomará un breve momento antes de que el relé se active después de que se apague el encendido. No tengo idea de cuánto tiempo es eso, pero supongo que el RPi tomará aproximadamente 700 mA de el condensador, además del 555 y el relé
@Nick sugiere que podría ser más simple, ¿tal vez así? Traté de quitar los diodos para poder usar una fuente de alimentación USB estándar de 12V-5V 1A (o un par de ellas). La hoja de datos 555 dice que produce 3.3V (¿fuente máxima 100mA? Esta página dice 200mA). El RPi leerá la línea ACC a 3.3V para determinar cuándo cerrar.
fuente
Respuestas:
Si bien usar un circuito de temporizador de un solo disparo funcionará, creo que se puede usar una solución más fácil. Echa un vistazo a este circuito.
Para aclarar, "VBAT" es una fuente de 12V que siempre está encendida mientras la batería esté conectada. Sin embargo, "ACC" es una fuente de 12V que solo está encendida cuando el encendido está activado o la llave está configurada en "accesorio". En lugar de usar un relé de 5V solo para controlar la potencia del RPi, ¿por qué no usar un relé automático de 12V estándar como se muestra? De esta manera, no se desperdicia energía (excepto la corriente de la bobina mientras la alimentación está encendida) porque todo se desconectará de la batería.
Un lado de la bobina siempre está conectado a 12V. El lado opuesto está conectado a tierra (chasis) a través de un FET de canal N (Q1). Mientras se usa un MOSFET en el diagrama, se puede usar cualquier FET capaz de hundir la corriente de la bobina. Cuando se enciende "ACC", Q1 se encenderá, conectando la bobina a tierra y accionando el interruptor. Esto, a su vez, alimentará cualquier circuito de regulación de 5V que planee usar (un simple regulador 7805 con disipador de calor, un convertidor DC-DC de conmutación, los suministros USB mencionados, etc.).
El diodo D2 está ahí para garantizar que el condensador solo pueda descargarse en Q1 y pueda ser regular o Shottky. Probablemente deberían usarse otros métodos para la protección contra sobretensión y corriente de la batería.
El voltaje "ACC" se puede pasar a través de un divisor de voltaje para crear una señal de 3.3V para el RPi. Tenga cuidado con este nivel de voltaje, teniendo en cuenta que una batería automática de 12V puede ser más como 14V DC. Mientras esta señal sea HI, el RPi sabe que la alimentación está encendida. Obviamente, este pin GPIO debe establecerse como una entrada con cualquier pullup interno deshabilitado. Cuando "ACC" está apagado, el RPi debería ver la señal LO en el pin y comenzar su apagado.
Cuando se apaga el voltaje "ACC", el condensador C1 retendrá la carga durante tanto tiempo, descargándose a través de la resistencia R1. Una vez que el voltaje del condensador cae por debajo del umbral de la puerta de Q1, se APAGARÁ, desconectando la bobina del relé de tierra y eliminando la energía del circuito periférico. Si se utiliza un "MOSFET de nivel lógico" para Q1, permanecerá encendido hasta que el voltaje de C1 sea bastante bajo. Probé este circuito usando un NTD4960 ( Hoja de datos ), y permaneció encendido durante unos 15 segundos, hasta que C1 fue de alrededor de 2V. Para aumentar el tiempo, aumente el valor de capacitancia.
fuente
Honestamente, creo que estás pensando demasiado en esto.
Personalmente, solo usaría un disparo con un período de uno o dos minutos, activado por el apagado del automóvil.
Cuando apaga el automóvil, el disparo único dispara, manteniendo el relé cerrado hasta que se agota el tiempo. Todo lo que necesitaría hacer sería asegurarse de que su raspberry pi se apague en un minuto o dos después de que el automóvil se apague. Esto debería ser lo suficientemente fácil al monitorear una entrada de la energía conmutada del automóvil.
La mayor ventaja de un sistema como este es que cuando su software falla (cuando, no si), se apagará de todos modos, por lo que no terminará con una batería descargada. El one-shot debe ser bastante simple. Podrías usar un 555, o un pequeño microprocesador (como sugerirá Olin).
Otra cosa buena es que, si hace el diseño correctamente, el sistema puede desconectarse de la batería del automóvil, asegurando que el consumo de corriente de reposo sea absolutamente 0.
fuente
Cualquier método de retraso fijo sufre el problema de no saber cuánto tiempo realmente necesita apagar el RPi. Sería mejor presionar un botón que le indica al Pi que se apague, luego podría hacer lo que necesita para un apagado ordenado y limpio, tomar el tiempo que sea necesario, y luego emitir una señal GPIO al circuito del botón pulsador que apaga el poder. Eso le da al RPi tanto tiempo como necesita para hacer cosas como apagar de forma segura la tarjeta SD. El circuito no tiene que ser demasiado complicado. Puedes ver un circuito simple en
http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/on-off-power-controller
El sitio web describe el funcionamiento del circuito.
fuente
Utilice 4 pilas recargables AA. Encienda el Pi de ellos y cárguelos con la batería del automóvil.
Use 1 GPIO para decirle a Pi si el encendido está activado o desactivado.
Apagar cuando esté listo.
fuente