Page 1 sur 2

Détection perte alimentation

Posté : ven. 14 sept. 2018 16:35
par mfaroux
Bonjour à tous,
Je travaille sur un projet d'affichage dynamique dans un véhicule de tourisme.
Le RPI se lance au démarrage du véhicule et s'éteint à la coupure du contact.
Mon projet:
- Alimenter le micro usb ou le GPIO au + du contact avec une régulation entre (Olimex)
- Alimenter par batterie le micro usb ou le GPIO pour pallier à la perte d'alimentation le temps d'éteindre proprement le RPI

Mon problème:
Comment détecter la perte d'alimentation soit sur le micro usb ou sur le GPIO de manière à pouvoir envoyer la commande d'extinction au RPI (en python par exemple)

Votre aide sera la bienvenue, je galère un peu depuis plusieurs jours pour trouver la solution.

Merci à tous

Re: Détection perte alimentation

Posté : ven. 14 sept. 2018 18:44
par domi
Bonjour,

Je viens de regarder rapidement car ce sujet avait déjà été abordé.
Si je ne me trompe pas c'est ce post : https://forums.framboise314.fr/viewtopi ... usb#p16207

Peut-être un début de piste en détectant la coupure du + contact pour la commande d'arrêt du Rpi ;)

Re: Détection perte alimentation

Posté : ven. 14 sept. 2018 19:05
par mfaroux
Merci pour votre réponse,
C'est effectivement un début de piste.
La difficulté est réellement de détecter la perte d'alimentation.
Je ne trouve pas grand chose la dessus...

Re: Détection perte alimentation

Posté : ven. 14 sept. 2018 19:08
par destroyedlolo
A mon avis, tu t’embête pour pas grand chose ;)
  • si tes applies ne font aucune maj, tu n'a juste qu'a mettre les FS de la SD en read/only : une coupure brutale du PI ne lui fera ni chaud, ni froid.
  • sur les voitures, il y a un 12v "permanent" : la solution est d'alimenté le PI par cette broche et de le stoppé/l'allumer en détectant un changement d'état du +12 accessoire.
A+

Re: Détection perte alimentation

Posté : ven. 14 sept. 2018 19:23
par mfaroux
Merci destroyedlolo pour ta réponse,
J'ai effectivement la possibilité d'alimenter le RPI avec le 12V permanent et c'est surement ce que je fais faire, mais la grande question est "Comment détecter le OFF lorsque le chauffeur tourne la clé de contact" :?: :?: :?: :?:

Re: Détection perte alimentation

Posté : sam. 15 sept. 2018 09:05
par jelopo
Bonjour,

Le sujet n'a pas été abordé ici https://www.framboise314.fr/ordinateur- ... pberry-pi/ ?
D'autres pistes peuvent se trouver sur le net en cherchant du coté de ceux qui ont réalisé un onduleur pour Raspberry PI.

Sinon, pour détecter une coupure de tension, il faut alimenter une borne GPIO par le 12V Contact après avoir réduit à 3,3V cette tension.
Utiliser de préférence soit un montage à transistor, soit un optocoupleur.

A+

Re: Détection perte alimentation

Posté : sam. 15 sept. 2018 20:54
par mfaroux
Merci jelopo pour votre réponse.
Je ne suis pas un spécialiste de l'électronique, pouvez-vous me dire à quoi va me servir l'optocoupleur et comment dois je le brancher ?
Et comment, en python, détecter cette coupure ?

Re: Détection perte alimentation

Posté : dim. 16 sept. 2018 19:22
par jelopo
Bonjour,

Voir par exemple ici pour le montage à optcoupleur https://www.raspberrypi.org/forums/view ... p?t=177841
Pour le script Python rechercher sur le net "la bibliothèque "RPI.GPIO" se documenter du coté de "falling edge".
Par ici par exemple https://deusyss.developpez.com/tutoriel ... nEtLeGpio/

Bonne courage.

A+

Re: Détection perte alimentation

Posté : jeu. 20 sept. 2018 18:49
par mfaroux
Bonjour à tous,
Grâce à vos réponses j'ai bien avancé sur mon projet.
Pour résumer:
Je travaille sur une solution d'affichage dynamique embarqué dans du transport en commun.
Je me posais la question de pouvoir intercepter la perte d'alimentation après la coupure contact.
Ce que j'ai fais :
- je récupère du 5V en provenance d'un boitier lui même alimenté en 24V permanent pour alimenter mon Raspberry en passant par le GPIO.
- je récupère également l'info de coupure du contact sur le pin 13 du GPIO avec un script python et la fonction "GPIO.wait_for_edge" : permet de lancer mes commandes de MAJ et programmer l'arret du RPI
- Ce boitier à une tempo pour s'éteindre 30 mn après la coupure du contact --> parfait pour moi ! ça me laisse tout le temps d'effectuer 2-3 manips et mises à jour et d'arrêter proprement mon RPI

Donc j'ai pas mal avancé...
Par contre, je n'arrive qu'à récupérer l'info de perte d'alim mais lorsque le contact revient avant les 30mn je n'arrive pas à avoir cette info.

Une idée...

Re: Détection perte alimentation

Posté : ven. 21 sept. 2018 11:36
par destroyedlolo
Salut,

Je pense que tu ne détecte que les fronts descendant et non les fronts montants.
Du coup par la remise du contacte.
Par contre ... il faut faire attention a prendre en compte d'éventuels rebonts ...

A+