Partagez

Suivez moi

Twitter

Google+

LinkedIn

PiCheckVoltage - Surveillance du niveau de batterie

PiCheckVoltage est un projet pour le Raspberry Pi destiné à fournir un moyen de surveiller la tension d'un pack de batteries utilisé pour alimenter des montages électroniques, et exécuter des scripts en fonction du niveau de la batterie.

 

Ayant voulu faire fonctionner MovingRaspi sur batteries, j'ai été confronté à différents « défis » techniques, à savoir :

  • Fournir une alimentation en 5V relativement stable (devant alimenter l'électronique du montage et éventuellement le Raspberry Pi).
  • Surveiller le niveau des batteries afin de pouvoir stopper le serveur de MovingRaspi (et donc empêcher son déplacement), et éventuellement arrêter proprement le RasPi s'il est alimenté par la batterie, dans le cas où la batterie s'approche d'une tension en sortie trop basse.
  • PMettre en place un « kill switch » permettant de couper le régulateur de tension (donc l'alimentation complète en 5V) pour tirer encore moins sur la batterie quand sa tension descend vraiment trop bas.

De mes bidouillages, j'en ai sorti la solution PiCheckVoltage, un mix matériel + logiciel, qui fourni les fonctionnalités suivantes :

  • Un régulateur de tension avec une sortie en +5V / 2A (L78S05CV).
  • Un « kill switch » basé sur un transistor BCU81 (30V / 3A, gain minimal de 140).
  • Une mesure de tension basé sur un ADC MCP3008, avec un diviseur de tension par résistances.
  • Deux LED de statut pour savoir d'un coup d'œil si le niveau de batterie est correct ou bas.

À ce montage électronique est associé un logiciel de contrôle en Python, tournant en tâche de fond, surveillant en permanence la tension de la batterie avec les fonctionnalités suivantes :

  • Exécution de scripts en fonction du niveau de la batterie (débranchée, tension dangereuse, tension basse, tension correcte).
  • Pilotage des LED de statut en fonction du niveau de batterie (débranchée, tension basse, tension correcte).
  • Pilotage du « kill switch » en fonction du niveau de la batterie (tension dangereuse).
  • Possibilité d'interroger le niveau de batterie via le réseau.

Si jamais vous êtes intéressés par ce genre de fonctionnalités, le code et le schémas électroniques sont disponibles sur GitHub.

Télécharger sur GitHub



comments powered by Disqus