proposition de tuto : Notions d'électronique à connaitre / protection du Raspberry Pi

Bonjour à tous. 


Comme beaucoup ici, je me suis (re)mis à l'électronique pour pouvoir bidouiller mon Pi.

J'ai réappris plein de notions au fil de ces tutos et je propose ici un condensé de ce qui me semble important de connaitre. J'ai principalement travaillé dans l'optique "j'y connais rien mais je veux comprendre sans envoyer mon Pi au cimetière" 

J'ai essayé de faire le plus simple possible, sans m'encombrer d'explications inutiles.

Je suis loin d'avoir fini et je compléterai au fur et à mesure. Je poste pour avis d'ores et déjà pour avis, histoire de vérifier si je suis clair dans mes explications.

Commentaires

  • edited août 2014
    Sommaire :

    Pourquoi ce tuto ?
    Interaction du Rasberry Pi avec le monde extérieur : les ports GPIO
    Quelques notions d'électronique
    Protéger son Pi : 3,3V interne / alimentation externe

    Pourquoi ce tuto ?

    Avec l'arrivée sur le marché des ordinateurs monocarte type Arduino et Raspberry Pi, on a vu se développer de nombreux projets allant de la console de jeux aux robots, en passant par les box domotique et autres.

    De nombreux tutoriels sont proposés. Ils consistent souvent à reproduire des schémas électroniques pour donner telle ou telle capacité à son Pi.

    Cependant quand le tuto ne marche pas on sèche par manque de connaissance, on fait un mauvais branchement et on crame un composant (ou pire son Pi).

    Voici donc quelques notions à connaître pour éviter un drame, et apprendre à créer ses propres montages électroniques pour le Pi.

    Interaction du Rasberry Pi avec le monde extérieur : les ports GPIO

    Ce qui différencie un Pi d'un ordinateur classique est sa capacité à communiquer avec des objets extérieurs : lampes, appareils électriques, sondes (température, pression, infrarouge...), moteurs, interrupteurs...

    Cette communication passe principalement par ses ports GPIO qui sont branchés directement à un objet ou sont utilisés pour la transmission de données par infrarouge ou radiofréquence.

    Les GPIO ont deux modes de fonctionnement : IN (entrée) ou OUT (sortie).
    Comme ils ne tolèrent par de tensions supérieures à 3,3V, il faut les protéger contre les tensions plus élevées.

    GPIO - mode OUT

    Ce mode permet de commander des objets extérieurs. On peut par exemple allumer une lampe, commander un moteur, donner des ordres à des objets domotiques du commerce par radiofréquence (porte de garage, prises et douilles domotiques...)...

    GPIO - mode IN

    Ce mode permet de recevoir des données d'un objet extérieur. On peut par exemple recevoir les signaux d'une télécommande (infrarouge ou radiofréquence), lire un capteur d'ouverture de porte, connaître la température d'une pièce, le Ph de son aquarium...

  • edited août 2014
    Quelques notions d'électronique

    Sur les montages électroniques décrits dans les tutoriels, on retrouve principalement les composants suivants :
    - Raspberry Pi
    - résistance
    - LED
    - bouton poussoir
    - sonde (température, lumière, pression...)
    - émetteur / récepteur  (infrarouge, radiofréquence)
    - condensateur
    - transistor

    Le but ici n'est pas de décrire précisément ces composants, d'autres le feront mieux que moi, mais de montrer à quoi ils servent, et comment les utiliser en toute sécurité (surtout pour le Pi).

    Le Raspberry Pi

    contrainte : ne pas connecter un GPIO sur un circuit alimenté en plus de 3,3V !
    solution : suivre ce tuto ;)

    Résistance

    Une résistance est un composant qui absorbe de l'énergie. Elle permet en particulier de diviser les tensions selon la formule suivante :
    - tension_alimentation = somme des tensions du circuit : U = U1 + U2 + U(résistance) + ...

    On va donc l'utiliser pour protéger un composant ou le Pi quand il reçoit une tension trop forte.

    Sa valeur se calcule avec la formule 
    - tension_résistance = résistance x intensité : U = R x I

    On verra avec la LED comment utiliser ces deux formules.
  • edited août 2014
    LED

    La LED  émet de la lumière (visible / infrarouge). On l'utilise donc comme témoin lumineux ou émetteur infrarouge.

    Contraintes :
    Les LED ont une tension de fonctionnement spécifique à leur spectre d'émission :
    - rouge, vert, jaune : 2,2V en 0,02A
    - bleu, blanc : 3V en 0,02A
    - infrarouge : 1,6V

    Le Pi délivre du 3,3V ou du 5V. En branchant une LED directement dessus, la tension sera donc trop forte et la LED va griller.

    Solution :
    Pour ne pas griller la LED, on va diviser la tension fournie par le Pi à l'aide d'une résistance.
    Pour ça on va utiliser 2 formules:
    - tension_alimentation = somme des tensions du circuit : U = U1 + U2 + ...
    - tension_résistance = résistance x intensité : U = R x I

    Illustrons cela par un schéma
    image
    Pour trouver la valeur de la résistance, on calcule la tension que celle-ci va supporter (U2 = U-U1), puis on en déduit sa valeur (R=U2/I).

    On a donc : 
    - U(alim) = U1(LED) + U2(résistance) -> U2(résistance) = U(alim) - U1(LED)
    - U2(résistance) = R * I = R * 0,02
    -> R = [ U(alim) - U1(LED) ] / 0,02

    exercice :
    Pour commander une LED verte avec le Pi on va la brancher directement sur un GPIO, qui pour rappel envoie du 3,3V. 

    Remarque : si on veut alimenter avec plus de 3,3V volts (par exemple le 5V du Pi comme on le voit sur certains tutos) ou intégrer la LED dans un schéma plus complexe, il faudra utiliser un autre circuit décrit plus loin sous peine de cramer le GPIO !

    Le schéma de montage est le suivant :
    image
    Selon notre formule on a donc : 
    R = [ U(alim) - U1(LED) ] / 0,02
      = ( 3,3 - 2,2 ) / 0,02
      = 55 ohms
  • edited août 2014
    Bouton poussoir

    Il s'agit d'un interrupteur qui permet d'ouvrir ou de fermer un circuit électrique en appuyant dessus.
    Le bouton sert surtout à envoyer une information au Pi. On le branche pour cela sur un GPIO en mode IN. La position 1 ou 0 est déterminée par le courant qui rentre dans le GPIO.

    Contrainte : 
    Un bouton n'a aucune résistance et se comporte comme un fil quand il est en position fermée. Le circuit doit donc être protégé pour éviter des dommages au Pi.

    Solution : 
    Pour éviter un court-circuit, on va ajouter une résistance. On peut la brancher en mode pull-up ou pull-down (explication ici http://arduino103.blogspot.fr/2011/05/entree-bouton-resistance-pull-up-pull.html).

    Le schéma de montage est le suivant :


    Sonde (température, lumière, pression...)

    Le but ici n'est pas de décrire les différents capteurs. D'autres sites le font très bien (par exemple : http://forum.nextinpact.com/topic/165594-raspberry-pi-fabriquons-des-trucs/#entry2746179)

    On va plutôt s'intéresser à  leur utilisation en en décrivant les contraintes et les risques éventuels.

    Contraintes : 
    - certains capteurs ont besoin de plus de 3,3V -> danger pour le GPIO
    - une alimentation externe est recommandée, pour fournir suffisamment de tension d'une part, mais aussi pour éviter au Pi de fournir du courant en continu.

    Solution : on va diviser la tension de sortie du capteur pour envoyer moins de 3,3V sur le GPIO

    Le schéma est décrit plus loin dans la section « Protéger son Raspberry Pi »

    à venir :
    - émetteur / récepteur  (infrarouge, radiofréquence)
    - condensateur
    - transistor
  • edited août 2014
    Protéger son Raspberry Pi : 3,3V interne / alimentation externe

    Pour alimenter nos montages, on peut utiliser l'alimentation du Pi en 3.3V/5V, ou une alimentation externe.

    Cependant, le Pi n'étant pas conçu pour fournir du courant en permanence, il vaut mieux utiliser le plus souvent utiliser une alimentation externe.

    GPIO en mode OUT

    à venir : schéma transistors, mosfet, relais

    GPIO en mode IN

    Il s'agit ici de récupérer du courant sur un GPIO.

    On va prendre l'exemple d'une sonde qui fonctionne avec du 5V. La borne DATA de la sonde va envoyer un courant au Pi en fonction de ce qu'elle capte. Ce courant peut, selon le type de sonde, dépasser le 3.3V admis par le Pi. Il faut donc limiter cette tension grâce à un diviseur de tension constitué de 2 résistances. 
    image
    Pour calculer R1 et R2, on va utiliser les formule vues précédemment : U = U1 + U2 et U = R x I

    On obtient au final : U2 = U x R2/(R1+R2)

    donc il faut trouver R1 et R2 de telle sorte que U2/U = R2/(R1+R2)

    le reste à venir...
Sign In or Register to comment.