14 votos

Controlador de apagado para Raspberry Pi en un coche

Siguiendo con mi pregunta anterior Estoy intentando crear un controlador de apagado para mi Raspberry Pi. La Raspberry Pi necesita ser alimentada desde la batería, pero debe apagarse después de que la Pi detecte que el encendido se ha apagado.

La 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, así que bajaré a 3,3V usando un divisor de voltaje a menos que alguien tenga una sugerencia mejor - también estaré manejando un uPD6708 que toma 5V CMOS I/O, así que tendrá que bajar de 5V a 3,3V en otras 2 líneas).

El software que se ejecuta en la RPi pondrá uno de los pines GPIO en alto, presumiblemente cuando la RPi se apague los pines GPIO se pondrán todos en bajo. Así que Q1 debería encender el relé, manteniendo la alimentación de la RPi mientras el encendido esté activado, o el pin GPIO esté alto.

Tengo 3 kits de fusibles con un tapón de 1000uF y algún tipo de transformador/inductor, así que también puedo usar uno de ellos en cada línea de batería de 12V y de accesorios de 12V.

Este controlador de apagado afirma que sólo consume 50uA en reposo - si utilizara una puerta OR CMOS 4071 sería un comienzo, pero por lo que he leído, necesitaría más corriente de la puerta OR para saturar el transistor - ¿es así?

Teniendo en cuenta que necesito nivelar 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?

schematic

simular este circuito - Esquema creado con CircuitLab

Este es mi intento de seguir la sugerencia de @Connor Wolf.

  • Hay que elegir R1 y C3 para que la RPi se apague correctamente
  • He añadido C1 porque me imagino que pasará un breve momento antes de que el relé conmute después de apagar el encendido - no tengo ni idea de cuánto tiempo es, pero supongo que la RPi va a estar consumiendo unos 700mA del condensador, además del 555 y el relé

schematic

simular este circuito

@Nick sugiere que podría ser más sencillo, ¿así, tal vez? Intenté eliminar los diodos para poder utilizar una fuente de alimentación USB de 12V-5V 1A (o un par de ellas). La hoja de datos del 555 dice que da una salida de 3,3V (¿fuente máxima de 100mA? Esta página dice 200mA). La RPi tomará la lectura de la línea ACC a 3,3V para determinar cuándo se debe apagar.

schematic

simular este circuito

1 votos

Su 7805 va a conseguir REALMENTE CALIENTE como se dibuja su circuito. Con el consumo de 700 mA de la raspberry pi, a tu vDrop de 7V (12v-5v), vas a estar disipando 4,9 vatios (7V * 0,7A) en el regulador. Usted realmente necesita buscar un DC-DC para eso.

1 votos

Además, lo del "kit de fusibles" está mal dibujado. Ahora mismo, el diodo está simplemente cortocircuitando la entrada de 12V, y el inductor no está haciendo nada. Supongo que el inductor está en serie con la línea de alimentación, y el diodo está al revés (lo que le permitiría evitar la polarización inversa de la entrada).

2 votos

Los divisores de voltaje no son una buena forma de alimentar nada, ya que al variar la carga variará el voltaje. Utiliza un regulador de algún tipo, son bastante baratos y abundantes.

9voto

azhar Puntos 21

Aunque el uso de un circuito temporizador de un solo disparo funcionará, creo que se puede utilizar una solución más sencilla. Echa un vistazo a este circuito.

enter image description here

Para aclarar, "VBAT" es una fuente de 12V que está siempre encendida mientras la batería esté conectada. Sin embargo, "ACC" es una fuente de 12V que sólo está encendida cuando el encendido está en marcha o la llave está en "accesorio". En lugar de utilizar un relé de 5V sólo para controlar la alimentación de la RPi, por qué no utilizar un relé estándar de 12V para automóviles como se muestra. De esta manera, no hay energía desperdiciada (excepto por la corriente de la bobina mientras el encendido está en marcha) porque todo estará desconectado de la batería.

Un lado de la bobina está siempre conectado a 12V. El lado opuesto está conectado a tierra (chasis) a través de un FET de canal N (Q1). Aunque en el diagrama se utiliza un MOSFET, se puede utilizar cualquier FET capaz de absorber la corriente de la bobina. Cuando se enciende el "ACC", Q1 se pone en ON, conectando la bobina a tierra y accionando el interruptor. Esto, a su vez, alimentará cualquier circuito de regulación de 5V que planees utilizar (un simple regulador 7805 con disipador de calor, un convertidor DC-DC de conmutación, las fuentes USB mencionadas, etc).

El diodo D2 está ahí para asegurar que el condensador sólo pueda descargarse en Q1 y puede ser regular o Shottky. Probablemente haya que utilizar otros métodos para la protección contra la sobretensión y la corriente de la batería.

El voltaje "ACC" puede ser puesto a través de un divisor de voltaje para crear una señal de 3.3V para la RPi. Hay que tener cuidado con este nivel de voltaje, teniendo en cuenta que una batería de automóvil de 12V puede ser en realidad más bien de 14V DC. Mientras esta señal sea HI, la RPi sabe que la energía está encendida. Obviamente, este pin GPIO debe ser configurado como una entrada con cualquier pullup interno deshabilitado. Cuando "ACC" se apaga, la RPi debería ver la señal LO en el pin y comenzar su apagado.

Cuando la tensión "ACC" se apaga, el condensador C1 retendrá la carga durante tanto tiempo, descargándose a través de la resistencia R1. Una vez que la tensión del condensador caiga por debajo del umbral de la puerta de Q1, se apagará, desconectando la bobina del relé de tierra y eliminando la alimentación del circuito periférico. Si se utiliza un "MOSFET de nivel lógico" para Q1, éste permanecerá encendido hasta que la tensión de C1 sea bastante baja. He probado este circuito utilizando un NTD4960 ( Ficha técnica ), y permaneció encendida durante unos 15 segundos, hasta que C1 estuvo en torno a los 2V. Para aumentar el tiempo, aumentar el valor de la capacitancia.

0 votos

¿Cómo puedo seleccionar un FET adecuado? Ya tengo un relé de 12V - 621D012 (270ohm -> 44mA) La página web Catálogo Jaycar enumera lo siguiente: 2N7000, PN100, VN10KM, IRF540N, IRF1405 y más

1 votos

Creo que el 2N7000 sería una buena opción, pero esto es lo que está buscando... Tipo: FET de canal N (no un BJT NPN); Corriente de avance (I_d): Al menos 100mA - (el doble de 44mA); Tensión de umbral de puerta (V_gs o V_gth): No más de 3V; Capacitancia de puerta: No importa, ¡ponemos más externamente! Resistencia "ON" (R_ds): baja es buena, pero su disipación de energía será baja; Disipación de energía (P_d): 44mA ^2 * R_ds << al menos el doble de esto

0 votos

¿Se puede comprar en una tienda? Estoy tratando de hacer lo mismo que el OP pero no tengo idea de cómo crear mis propios circuitos. ¿Hay alguna solución comprada en una tienda para esto?

2voto

Stephen Denne Puntos 218

Sinceramente, creo que le estás dando muchas vueltas a esto.

Personalmente, utilizaría un único disparo con un periodo de un minuto o dos, activado por el apagado del coche.

Cuando se apaga el coche, se dispara el disparo único, manteniendo el relé cerrado hasta que se agote. Todo lo que tienes que hacer es asegurarte de que tu Raspberry Pi se apague en uno o dos minutos después de que el coche se apague. Esto debe ser bastante fácil mediante el control de una entrada de la energía conmutada del coche.

La mayor ventaja de un sistema como éste es que cuando el software se bloquea (cuando, no si), se apaga de todos modos, por lo que no acabas con la batería agotada. El disparo debe ser bastante simple. Puedes usar un 555, o un pequeño microprocesador (como Olin sugerirá).
Otra cosa buena es que, si se hace el diseño correctamente, el sistema puede desconectarse de la batería del coche, asegurando que el consumo de corriente de reposo es absolutamente 0.

0 votos

Suena muy bien - ¿cómo se hace?

0 votos

Suena un poco como el circuito que se utiliza para mantener encendidas las luces de cortesía, después de cerrar la puerta del coche. De memoria, un condensador se carga a 12V y se mantiene en un FET o similar. Si se quita la alimentación, el condensador se descarga lentamente, hasta que el FET se apaga.

0 votos

La RPi consume 5V a unos 700mA y creo que necesito unos 10 segundos para apagarse. Usar un condensador fue mi primera idea, pero eso implicaría unos 100 dólares en condensadores

0voto

Nick Cox Puntos 22819

Cualquier método de retardo fijo sufre el problema de no saber cuánto tiempo necesita realmente la RPi para apagarse. Sería mejor pulsar un botón que indique a la Pi que se apague, entonces podría hacer lo que necesita para un apagado limpio y ordenado, tomando el tiempo necesario, y luego emitir una señal GPIO de vuelta al circuito del botón que apaga la energía. Eso le da al RPi todo el tiempo que necesita para hacer cosas como apagar la tarjeta SD de forma segura. El circuito no tiene que ser demasiado complicado. Puedes ver un circuito sencillo en

http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/on-off-power-controller

El sitio web describe el funcionamiento del circuito.

0 votos

Tienes un buen punto, aunque no creo que nadie quiera tener que pasar por ese proceso cada vez que apaga su coche. Tendría más sentido que la RPi percibiera el apagado monitorizando el voltaje de la línea ACC (que sólo está encendida cuando el coche está en marcha), y luego apagara su propia energía desde la línea de 12V "siempre encendida" cuando estuviera preparada para hacerlo - automatizando el sistema.

-2voto

Francis Adams Puntos 1349

Utiliza 4 pilas recargables AA. Alimenta la Pi con ellas y tenlas en carga desde la batería del coche.

Usa 1 GPIO para decirle a la Pi si el encendido está encendido o apagado.

Apagar cuando esté listo.

4 votos

Creo que esta respuesta necesita más detalles para ser útil. Tal vez publicar un esquema o desciption sobre cómo crees que esto funcionaría y qué tipo de circuito de carga / dispositivo / control de potencia que propondría.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X