Circuito para apagar con seguridad Pi

29

Quiero usar mi Pi como servidor XBMC en el automóvil. Los documentos de XBMC dicen que siempre debe usar el comando de apagado antes de desconectar la alimentación.

He estado pensando que debería ser posible crear un circuito simple con un condensador y probablemente un diodo para detectar cuándo se desconectó la fuente de alimentación (y generar una interrupción en uno de los pines GPIO), pero el condensador proporcionaría corriente lo suficiente para que el sistema se apague correctamente.

primer borrador

¿Esto parece correcto y suficiente?

... En realidad, creo que probablemente sería más así:

segundo borrador

¿Qué tipo de condensador necesitaría para almacenar suficiente carga para mantener el Pi funcionando lo suficiente como para que XBMC se apague correctamente?


Para el registro, esta pregunta también se hizo en SE Electrical Engineering .

Nicholas Albion
fuente
¿Qué pasa con el "GPIO 3.3V"? En el primer circuito, simplemente bajará el riel de 3.3V con la resistencia inferior, y el segundo que conecta la salida de un amplificador operacional que funciona desde un suministro de 5v de un solo extremo a GPIO con las entradas configuradas tendrá la conducción del amplificador operacional su salida cerca de 5V tan fuerte como sea posible, lo que no ayudará al suministro de 3.3V al Pi ( puede matar al Pi ). El uso de un regulador de potencia lineal (7805) solo va a desperdiciar la carga limitada en el? condensador. Yo "-1" esto, pero la pregunta es buena, incluso si sus sugerencias son pobres.
SlySven
No creo que haga ningún tipo de condensador, ya que puede tomar hasta 30 segundos apagar un Pi. Es posible que deba mirar un pequeño sistema UPS en su lugar. O no puedes probar esto, pero es un proyecto de 90 USD. instructables.com/id/…
Piotr Kula

Respuestas:

13

Proyectos para agregar funcionalidad de apagado y arranque a Pi :

También hay una solución para encender / apagar Pi, pero no corta la energía, por lo que no es adecuado para un automóvil:

avra
fuente
ACTUALIZACIÓN: lowpowerlab.com/atxraspi
Avra
4

La mejor solución en mi opinión es usar el UPS Pico , un UPS especialmente diseñado para Raspberry Pi, que ofrece muchas otras características.

Es de bajo costo, incluye batería, no necesita ningún cable adicional, solo colóquelo encima de RPi.

Corriendo en un auto, y apagado automático, también corriendo en XBMC.

Alejandro
fuente
3

La salida del comparador va al pin GPIO (en este circuito hay un multímetro colocado) para que Raspberry pueda verificar si el encendido del automóvil todavía está encendido. Todo lo demás lo explica el orador anterior. "S2" es un botón de reinicio, por si acaso. En la imagen puedes ver XMH4, XMM1, .. No te preocupes por eso. Lo he usado solo para verificar parámetros interesantes al probar el circuito en Multisim. Mi única pregunta es la reacción al aumento de la temperatura. Quizás, habrá necesidad de cambiar los valores de las resistencias en los divisores de voltaje.

Editar: Me he dado cuenta de que a pesar del hecho de que el circuito es seguramente correcto en la teoría, es inútil. El costo de un condensador tan grande (1F, 12V) es inaceptablemente alto. Otra solución podría ser conectar el regulador de voltaje directo al acumulador y usar un comparador de voltaje entre el encendido del automóvil y la batería.

ingrese la descripción de la imagen aquí

swojczak
fuente
44
¡Hola y bienvenido! Gracias por tu contribución. ¿Te importaría explicar el funcionamiento de tu circuito?
Ghanima
1

Es posible diseñar un circuito adecuado con un conjunto de "supercondensadores", artículo de Batteryuniversity.com y entrada de Wikipedia, y algo como lo que obtienes de un sitio de subastas en línea si buscas un "3V a 5V 1A DC- Convertidor DC Boost "- usted haría otro convertidor (digamos 5-25V a 5V 2A (?) Salida Buck-Boost") para dejar caer el suministro de automóvil de 12V (pozo 13.8V) a los 3 a 5 voltios necesarios para mantener los condensadores cargados - entonces el primer convertidor lo usa para alimentar el Pi.

Desea monitorear los 12V entrantes para detectar que se está apagando y decirle al Pi que se apague (¡como lo hacen los dispositivos UPiS en la otra respuesta!)

También necesitaría algo de prevención de irrupción en el circuito, ya que las súper tapas recibirán una gran sobretensión (del convertidor de 12 V) cuando se les aplica voltaje y se descargan.

Para el registro: las súper tapas individuales generalmente tienen un voltaje máximo de menos de 5 V, pero ahora puede comprar unidades que tienen dos en serie para operar con voltios de 5 V, sin embargo, no es un buen ideal para poner más de 2 o 3 en series sin circuitos adicionales de "equilibrio de voltaje" que solo hacen que el diseño sea más complejo: la razón para usar un convertidor de "impulso" es que seguirá produciendo 5V cuando el voltaje de los condensadores caiga por debajo de eso ...

SlySven
fuente
1

Hazlo simple y prueba que tu proyecto vale la pena el esfuerzo de un UPS.

Simplemente agregue un interruptor momentáneo para acortar un par de GPIO que desencadenan un apagado. El Pi se encenderá la próxima vez que arranque el automóvil. Tenga cuidado de que su suministro solo se entregue después de que el motor haya arrancado, para evitar una caída durante el proceso de encendido.

Crea un script:

$ nano shutdown.py

Ingrese el texto;

import RPi.GPIO as GPIO
import os
channel=11
GPIO.setmode(GPIO.BOARD)
#Pin 11 & Gnd
GPIO.setup(channel, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.wait_for_edge(channel,GPIO.FALLING)
os.system("sudo shutdown -h now")

Agregue la siguiente línea a /etc/rc.local

Python /home/pi/shutdown.py

Conecte un cable al pin 11 y un cable a un pin Gnd.

No estoy seguro de qué tan bien juega Kodi con los interruptores GPIO, por lo que puede tener que estar dentro de Raspbian.

Andy Anderson
fuente