samedi 22 juin 2013

Le Rabbity-Pi a trop de tension !


L'alimentation du Nabaztag fournit du 9V (plus proche de 8,2V), mais le Raspberry-Pi fonctionne avec du 5V. Si l'on veut pouvoir alimenter l'ensemble de notre lapinou à l'aide de l'alimentation originelle, il nous faut abaisser la tension. De plus d'autres composants à l'intérieur du Nabaztag ne fonctionnent pas à une tension de 9V, une tension de 5V sera donc nécessaire pour ces autres composants (les LED RGB et le pont infrarouge notamment).

Après de courtes recherche, la solution la plus simple que j'ai pu trouver est d'utiliser un régulateur linéaire de tension. Ce genre de régulateur existe en circuit intégré (mon choix s'est porté sur un LM7805), il est alors très simple de les mettre en œuvre et quasiment aucun autre composant n'est nécessaire.
Dans la pratique il est conseillé d'utiliser quelques condensateurs en entrée et en sortie afin d'avoir, si j'ai bien compris un peu de réserve d'énergie et de filtrer les perturbations éventuelles.

Le principe de fonctionnement d'un tel régulateur est assez simple, la différence de tension entre l'entrée et la sortie est évacuée sous forme de chaleur. Cela a plusieurs conséquences qu'il convient de prendre en considération :
  • Le composant va chauffer, la puissance dissipée peut se calculer facilement : P = (Vin-Vout) x I. Dans notre cas Vin = 9V et Vout = 5V, ce qui fait une chute de tension de 4V. Il faudra donc surveiller I afin de voir si on ne dépasse pas la puissance maximale dissipée par le composant (qui est, d'après la datasheet, environ 1,2W). Dans le cas où l'on risque de dépasser cette puissance, il suffira de visser le bon dissipateur thermique (compatible avec le boitier qui est de type TO220) sur le composant.
  • Une autre conséquence est le mauvais rendement, de cette méthode. Ici nous allons quasiment dépenser autant d'énergie à chauffer l'intérieur du lapin qu'à le faire fonctionner. Cela ne pose pas vraiment un problème écologique car nous parlons de quelques Watt, mais cela peut poser problème si nous atteignons les limites de notre alimentation.
Une alternative possible est d'utiliser un régulateur à découplage, mais ils sont plus cher et ont quelques autres inconvénients.

Voici le schéma que j'ai mis en place sur ma platine d'essai afin d'obtenir une tension régulée de 5V.

La valeur des composants:
C1 = 1 mF (électrochimique)
C2 = 220 nF (céramique)
C3 = 10 μF (électrochimique)
C4 = 100 nF (céramique)
D1 = diode électroluminescente rouge
R1 = 270 Ω

La diode me sert simplement de moyen visuel de m'assurer rapidement si le circuit est sous tension, elle est totalement facultative et ne sera certainement pas sur le montage final.
Les condensateurs devront être placés, sur le circuit final, à divers endroit. Le condensateur C1 devra être proche de l'alimentation, C2 et C4 proche du composant LM7805 et C3 au plus proche de la charge. Ceci permet d'assurer un courant de bonne qualité qui ne fluctue pas trop.

Je n'ai pour l'instant pas utilisé ce montage pour alimenter le Raspberry-Pi, car pour l'instant il est plus simple de dissocier le Raspberry-Pi du montage en cours afin de ne pas avoir à le redémarrer à chaque fois que l'on bidouille sur le montage, mais la solution serait de simplement relier notre montage aux bornes 0V et +5V du port GPIO.
Attention cependant, en passant par le port GPIO plutôt que par la prise microUSB du Raspberry-Pi, on ne passe plus par le fusible sensé protéger le Raspberry-Pi des surtensions éventuelles. Il faudra donc que je me documente sur les éventuelles protections à ajouter.

En quelques composants nous avons maintenant une alimentation stable de 5V disponible sur notre platine d'essai.

La prochaine étape à laquelle je me suis attelé est la gestion des 5 LED RGB, cela fera certainement l'objet du prochain message.