GPIO sur Raspberry Pi : les composants essentiels à connaître

Si vous cliquez sur nos liens et effectuez un achat, nous pouvons recevoir une commission d'affiliation. En savoir plus

Lorsque vous branchez des fils sur les broches GPIO de votre Raspberry Pi, cela semble excitant, presque magique. Jusqu’à ce que vous compreniez que vous ne savez pas vraiment ce qu’il se passe. À quoi sert cette résistance ? Pourquoi cette LED a-t-elle grillé ? Ne vous inquiétez pas, nous sommes tous passés par là. Si vous avez déjà voulu construire des circuits simples mais que vous vous êtes vite senti perdu, ce guide est fait pour vous.

Les composants typiques des projets GPIO du Raspberry Pi incluent des plaques de prototypage, résistances, LED, boutons poussoirs, diodes et transistors. Chacun joue un rôle spécifique dans le contrôle du courant, la gestion des entrées ou des sorties, et la protection de la carte contre les dommages.

Dans ce guide, nous allons voir ce que font ces pièces, à quoi elles ressemblent et comment les utiliser en toute sécurité avec le Raspberry Pi. Vous verrez des exemples réels, des conseils de câblage et des erreurs courantes à éviter. Une fois que vous aurez terminé, vous aurez tout ce qu’il vous faut pour commencer à construire des circuits en toute confiance.

Si, comme moi, vous mélangez parfois la syntaxe entre différents langages de programmation, j’ai exactement ce qu’il vous faut. J’ai créé une fiche mémo Python avec toute la syntaxe essentielle au même endroit, pour que vous puissiez l’avoir sous la main et éviter toute confusion. Téléchargez-la gratuitement ici !

Comprendre les bases

Avant de plonger dans les différents types de composants, il y a quelques fondamentaux que nous devons d’abord comprendre. Ne vous inquiétez pas, je ne vais pas entrer dans trop de détails techniques. Nous avons juste besoin de comprendre quelques bases.

Vous pouvez sauter ces parties si vous êtes déjà à l’aise avec ces sujets.

GPIO

La première chose que nous devons comprendre est ce que sont les broches GPIO.

GPIO signifie General Purpose Input Output. Les GPIO sont un ensemble de broches (40 au total) disponibles sur votre Raspberry Pi qui peuvent être utilisées pour communiquer/interfacer avec des composants externes électriquement.

gpio pins raspberry pi

Il existe de nombreux protocoles de communication que le GPIO peut prendre en charge, et la plupart des broches ont des fonctions secondaires spécialisées.

Vous pouvez lire notre guide sur les GPIO du Raspberry Pi (en anglais) pour une compréhension approfondie.

Pour l’instant, tout ce que vous devez comprendre est que chaque GPIO est un bit binaire ; il peut être soit 1 soit 0 (haut ou bas). Quand un GPIO spécifique est réglé sur 1 (haut), la tension à cette broche est de 3,3 V ; quand il est réglé sur 0 (bas), la tension est de 0 V ou Gnd.

De plus, chaque GPIO peut être configuré comme Input ou Output (via un logiciel).

  • Output : le logiciel règle la broche sur haut ou bas, et la tension (3,3 V ou 0 V) est appliquée à cette broche ; les composants externes peuvent alors interagir avec cette tension.
  • Input : Le composant/circuit externe applique une tension à la broche, que le logiciel lit et traduit en soit haut (3,3 V) soit bas (0 V).

Plaque de prototypage

La prochaine chose que nous devons comprendre est la plaque de prototypage. Une plaque de prototypage maintient et connecte différents composants ; elle est composée de rangées et de colonnes de trous interconnectés.

Il y a deux parties principales dans une plaque de prototypage : les rails d’alimentation et la bande de terminaison.

Les rails d’alimentation consistent en deux colonnes de chaque côté de la plaque de prototypage. Tous les trous de chaque colonne d’un rail d’alimentation sont connectés. Les rails d’alimentation sont couramment utilisés pour distribuer les alimentations Vcc (3,3 V ou 5 V) et Gnd au reste du circuit.

Conventionnellement, le Vcc est connecté à la colonne marquée en rouge (+), et le Gnd est connecté à la colonne marquée en bleu (-). Cependant, ce n’est pas une règle fixe, et vous pouvez les connecter comme vous le souhaitez.

La bande de terminaison est la zone centrale où la plupart des composants sont placés. Chaque rangée de la bande de terminaison est composée de deux ensembles de cinq trous connectés de chaque côté du canal central.

Le canal central de la bande de terminaison est idéal pour placer plusieurs CI ou composants afin que leurs broches ne se court-circuitent pas.

Si vous êtes un débutant complet en électronique et que vous vous demandez quelle est l’importance d’avoir des trous connectés, tout ce que vous devez comprendre pour ce tutoriel est qu’en électronique, les signaux sont communiqués par la connectivité.

Ce que cela signifie, c’est que si les pattes de deux composants sont connectées, alors ils auront tous les deux le même niveau de tension/signal. Ce concept peut être utilisé pour communiquer un signal (niveau de tension) d’un composant (source) à un autre composant (receveur).

Si vous n’avez pas encore de plaque de prototypage, vous pouvez en obtenir une ici.

Voir aussi : À la recherche d'un défi sympa ? Construisez votre premier robot Raspberry Pi !

Télécharger mon antisèche !
Si comme moi, vous avez tendance à mélanger les langages, téléchargez mon antisèche pour Python au format PDF.
Télécharger maintenant

Alimentation

Le dernier concept que nous devons comprendre avant de pouvoir commencer à examiner les composants est l’alimentation du Raspberry Pi.

Un adaptateur mural alimente généralement le Raspberry Pi. Cet adaptateur convertit le 220 V ou 115 V AC de l’alimentation principale de votre maison en 5 V à l’extrémité USB. Le Raspberry Pi prend ce 5 V de son connecteur USB, et un régulateur IC à bord le convertit en 3,3 V pour un usage interne.

Par conséquent, les GPIO de votre Raspberry Pi s’attendent à recevoir 3,3 V comme signal haut. Si vous appliquez une tension supérieure à 3,3 V à un GPIO, cela peut endommager définitivement votre Raspberry Pi.

Pour ce guide, nous pouvons garantir que notre Raspberry Pi reste en sécurité en utilisant 3,3 V de son régulateur à bord comme Vcc en connectant la broche 3,3 V du GPIO au rail d’alimentation rouge de la plaque de prototypage, et la broche Gnd du GPIO au rail d’alimentation bleu.

Résistances

Contrôler le flux.

Le premier composant que nous allons aborder est la résistance. Les résistances sont le bloc de construction de base pour tout circuit électronique. Les résistances limitent le flux de courant, et la loi d’Ohm régit la quantité de courant qui circule dans un circuit : I = V/R.

Les résistances existent en différentes tailles. Cependant, les résistances à travers les trous les plus courantes ressemblent à des perles allongées avec un code couleur sous forme de bandes circulaires.

Chaque résistance a une résistance nominale (R) qu’elle fournit au courant. La valeur de résistance peut être mesurée avec un ohmmètre ou un multimètre, ou calculée manuellement en utilisant le code couleur.

Image de EEPower.com

La fonction principale d’une résistance est de limiter le flux de courant, et le principe clé (loi d’Ohm) stipule que plus la résistance est grande, moins le courant est élevé.

Cependant, pour une compréhension plus facile, j’aime les considérer comme des ressorts mécaniques. Lorsqu’une force (tension) est appliquée à un ressort (résistance), il s’étire à une déformation spécifique (courant) en fonction de la rigidité du ressort (résistance).

Cette analogie peut aider à comprendre des circuits plus complexes impliquant des résistances également.

Les résistances sont rarement utilisées comme composants seuls. La plupart du temps, elles sont connectées en série avec d’autres éléments pour limiter le courant qui les traverse.

Un exemple unique d’un circuit qui utilise des résistances seules est le circuit diviseur de tension.

Ce circuit réduit la tension. Par exemple, nous pouvons utiliser ce circuit pour connecter un composant/senseur qui produit 5 V ou plus, et le réduire à 3,3 V pour le GPIO de notre Raspberry Pi.

Cependant, nous devons soigneusement calculer les valeurs de résistance pour un rapport de tension d’entrée à sortie spécifique. La formule générale pour un diviseur de tension est : Tension de sortie = R1/(R1 + R2) x Tension d’entrée.

Une expérience amusante : essayez de visualiser le circuit diviseur de tension en utilisant l’analogie du ressort que nous avons utilisée plus tôt.

Les résistances sont les blocs de construction fondamentaux de tout circuit, et nous continuerons à voir des exemples de leur utilisation avec d’autres composants tout au long de ce guide.

Vous pouvez acheter un kit de 1 000 résistances à partir de ce lien Amazon.

Lié : Comment connecter et programmer un capteur de mouvement avec Raspberry Pi (en anglais)

LED

Les éclairer.

Le prochain composant que nous allons discuter est la LED. Les LED sont le principal stimulus de sortie utilisé dans tout circuit électronique. Les LED peuvent être dans deux états : allumées (Haut) ou éteintes (Bas).

Les LED ressemblent à de petites ampoules qui ont deux pattes qui sortent du bas. Chaque LED a deux pattes, la longue (Anode ou Positive) et la courte (Cathode ou Négative). Elles existent en plusieurs couleurs différentes.

La LED s’allume lorsque vous appliquez une tension à ses bornes dans la bonne polarité. La bonne polarité signifie connecter la patte longue de la LED à la tension positive, comme 3,3 V, et la patte courte à Gnd.

La luminosité d’une LED dépend de sa couleur et du courant qui la traverse. Comme nous l’avons appris précédemment, les résistances peuvent être utilisées pour restreindre et contrôler le flux de courant. Par conséquent, nous pouvons utiliser des résistances pour limiter le courant à travers une LED également.

Vous pouvez essayer d’utiliser des résistances de différentes valeurs et observer comment la luminosité de la LED varie. Vous pouvez ensuite choisir une valeur de résistance qui vous convient.

Pour contrôler ce simple circuit LED-résistance avec votre Raspberry Pi, connectez-le à une broche GPIO, puis utilisez la bibliothèque GPIO Zero (Python) pour régler cette broche sur haut ou bas.

Si vous n’êtes pas sûr de la façon d’écrire un programme Python pour cela, consultez ce tutoriel sur la programmation des GPIO avec la bibliothèque GPIO Zero. Alternativement, si vous souhaitez programmer en C++, vous pouvez suivre ce tutoriel sur le contrôle des GPIO avec C++ sur un Raspberry Pi (en anglais).

Les LED sont le principal moyen par lequel les circuits électroniques communiquent avec nous. Par exemple, le Raspberry Pi indique son statut de démarrage via sa LED intégrée. C’est l’un des composants électroniques les plus basiques que vous devez savoir utiliser avec votre Raspberry Pi.

Vous pouvez acheter un kit de 500 LED sur Amazon.

Boutons poussoirs et interrupteurs

Entrée pour le Pi.

Télécharger mon antisèche !
Si comme moi, vous avez tendance à mélanger les langages, téléchargez mon antisèche pour Python au format PDF.
Télécharger maintenant

Après avoir compris comment faire communiquer notre Raspberry Pi avec nous, l’étape suivante est d’apprendre à communiquer avec lui. Cela peut se faire via des boutons poussoirs et des interrupteurs.

Les boutons poussoirs et les interrupteurs existent en différents formats. Les plus courants incluent l’interrupteur DIP, le bouton poussoir et l’interrupteur à bascule.

Rappelez-vous quand nous parlions de la plaque de prototypage, et nous avons discuté de la façon dont, en électronique, tout est communiqué par la connectivité. Les interrupteurs contrôlent essentiellement cette connectivité.

Un interrupteur a deux états : allumé et éteint. Lorsque l’interrupteur est allumé, ses deux contacts, broches ou pattes sont dans un état continu, et vice versa.

La façon la plus simple d’utiliser un interrupteur est de connecter une de ses pattes à un signal haut (Vcc ou 3,3 V) et l’autre à un GPIO sur le Raspberry Pi. De plus, la deuxième patte (connectée au GPIO) doit également être connectée à Gnd via une résistance.

De cette façon, lorsque le bouton est en position allumée, les 3,3 V seront appliqués à travers la résistance, tirant le GPIO vers un état haut. Cependant, lorsque le bouton est éteint, le GPIO sera tiré vers Gnd (bas). Cette configuration est communément appelée configuration pull-down.

Vous pouvez également inverser cette configuration en connectant la première patte de l’interrupteur à Gnd et l’autre patte au GPIO, avec une résistance de tirage vers 3,3 V. Cette configuration est communément appelée configuration pull-up.

Cependant, la configuration pull-down est plus intuitive puisque l’état allumé se traduit par un état haut et vice versa. Alors que dans une configuration pull-up, l’inverse est vrai.

Maintenant, vous pouvez écrire un programme Python en utilisant la bibliothèque GPIO Zero pour lire l’entrée de la broche que vous avez connectée à votre bouton poussoir.

Les boutons poussoirs et les interrupteurs sont également disponibles dans des formats plus avancés, certains offrant plusieurs pôles. Par exemple, un interrupteur avec divers états et connexions, pas seulement allumé et éteint.

Si vous prévoyez de construire un circuit électronique, les boutons poussoirs et les interrupteurs sont les méthodes principales et les plus couramment utilisées pour fournir une entrée à votre Raspberry Pi. Pensez-y, le clavier et la souris que nous utilisons tous les jours ne sont que des boutons poussoirs sophistiqués.

Vous pouvez trouver des boutons poussoirs momentaires compatibles avec les plaques de prototypage à partir de ce lien Amazon.

Diodes

Protéger les circuits contre la tension inverse.

Le prochain composant (la diode) est un peu difficile à comprendre. Les diodes, comme les résistances, forment la colonne vertébrale de tous les circuits électroniques avancés. En fait, les LED que nous avons étudiées ci-dessus sont des Diodes électroluminescentes.

Les diodes ressemblent visuellement aux résistances. Cependant, contrairement aux résistances, elles n’ont pas de bandes circulaires colorées. Les diodes n’ont qu’une seule bande, qui indique leur polarité.

Les diodes sont analogues à des vannes de contrôle de flux en ce sens qu’elles permettent au courant de circuler dans une seule direction, c’est-à-dire de l’anode à la cathode (le côté avec la petite bande argentée).

Les diodes sont rarement utilisées comme composant autonome. Elles sont plutôt utilisées dans des circuits complexes pour contrôler le flux de courant.

Un exemple simple de la façon dont les diodes peuvent être utilisées avec votre Raspberry Pi est de connecter des diodes à vos GPIO pour les protéger contre le flux de courant inverse ou les connexions d’alimentation incorrectes.

Ce type de protection est conventionnel lors de l’utilisation de toute charge inductive (comme un moteur), car lorsque le champ magnétique du moteur s’effondre, un courant inverse peut circuler, endommageant vos broches GPIO. Cependant, une telle protection n’est pas nécessaire lorsque la charge est de simples LED.

En général, les moteurs ne sont pas connectés directement aux broches GPIO du Raspberry Pi, comme montré ci-dessus. Le circuit est montré uniquement comme une démonstration pour comprendre l’objectif d’une diode.

Les diodes forment la colonne vertébrale de tous les circuits électroniques. Il y a une raison pour laquelle tous les appareils électroniques complexes sont généralement classés comme semi-conducteurs — le matériau exact à partir duquel les diodes sont fabriquées.

Bien qu’elles ne soient pas utilisées dans une configuration autonome, nous verrons une configuration dans la section suivante qui les combine avec des transistors pour contrôler une charge analogique ou inductive en toute sécurité.

Vous pouvez trouver un assortiment de diodes avec différentes valeurs sur Amazon.

Transistors

Agir comme un interrupteur électronique.

Le dernier composant que nous allons discuter dans ce guide est le transistor.

Petite correction sur ce que j’ai dit plus tôt, en fait, les transistors forment la colonne vertébrale de tous les circuits électroniques avancés. Mais l’affirmation précédente n’était pas fausse non plus, puisque les transistors eux-mêmes sont une combinaison de diodes.

Les transistors sont des composants à trois pattes. Les trois pattes sont nommées Collecteur, Émetteur et Base. Ils existent en différents formats. Cependant, les deux types les plus courants sont TO-92 et TO-220.

Le pinout exact du transistor varie selon le type et le fabricant. La meilleure façon de déterminer le pinout est de lire le numéro de pièce de l’IC et de consulter sa fiche technique.

De plus, les transistors existent en deux configurations : NPN et PNP.

Image de Byjus.com

Nous n’allons pas entrer dans les détails de ce qu’un transistor peut faire, car cela deviendrait trop complexe pour ce guide. Dans ce guide, nous allons seulement voir comment un transistor NPN peut être utilisé comme un interrupteur.

Vous voyez, l’une des propriétés clés du transistor est que lorsqu’un courant est appliqué entre sa Base et son Émetteur, l’impédance entre le Collecteur et l’Émetteur devient nulle.

Ce que cela signifie, c’est que chaque fois que vous appliquez une tension haute (3,3 V ou 5 V) à la broche de Base du transistor et que le Collecteur est tiré vers le bas (Gnd), la connexion entre l’Émetteur et le Collecteur devient continue (comme lorsque nous avons poussé un interrupteur).

En utilisant cette propriété du transistor, nous pouvons résoudre un problème courant avec les broches GPIO de notre Raspberry Pi : comment alimenter des charges qui nécessitent plus de 3,3 V et/ou un courant plus élevé.

Pour cela, vous pouvez utiliser le circuit comme montré ci-dessous :

Comme vous pouvez le voir, nous pouvons utiliser les 3,3 V des GPIO du Raspberry Pi et les appliquer à la base du transistor pour activer son commutateur, complétant ainsi le circuit pour le moteur.

De plus, remarquez comment nous avons intelligemment placé la diode pour protéger le circuit contre le courant de retour du moteur.

Ce circuit n’est pas limité à l’alimentation des moteurs ; vous pouvez utiliser un transistor comme un interrupteur contrôlé numériquement pour alimenter des charges que les GPIO 3,3 V du Raspberry Pi ne peuvent pas alimenter directement.

Dans l’ensemble, les transistors sont des composants utiles qui peuvent effectuer une large gamme de tâches. Cependant, le cas d’utilisation le plus courant pour interfacer avec un Raspberry Pi est de l’utiliser comme un interrupteur pour connecter des appareils qui fonctionnent à différents niveaux de tension.

Vous pouvez trouver un assortiment de transistors sur Amazon.

Télécharger mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Vous comprenez l'anglais et en voulez encore plus ? Je publie une nouvelle leçon chaque mois, réservée à mes abonnés premium. Rejoignez la communauté dès maintenant pour y avoir accès !

Aller plus loin

Maintenant que vous savez ce que fait chacun de ces composants de base, il est temps de commencer à les combiner pour construire quelque chose d’utile. Vous pouvez le voir comme apprendre des mots avant de former des phrases : les résistances, les LED, les boutons, les diodes et les transistors sont vos blocs de construction, et ensemble, ils peuvent créer des circuits complets.

Un excellent exemple pour débutants est de construire un circuit simple de contrôle de moteur. Vous pouvez utiliser un bouton poussoir comme entrée, un transistor comme interrupteur électronique, une diode pour la protection, et bien sûr, une résistance pour limiter le courant de base entrant dans le transistor.

Lorsque vous appuyez sur le bouton, le transistor s’active, le courant passe à travers le moteur et il tourne. Lorsque vous relâchez le bouton, la diode gère en toute sécurité le retour de courant de la bobine du moteur.

Vous pouvez utiliser ce code Python pour activer ce circuit, ou écrire le vôtre :

from gpiozero import LED, Button, OutputDevice
from signal import pause

# Configuration des broches
led = LED(16)             # LED connectée à GPIO 16
button = Button(12)       # Bouton connecté à GPIO 12 (tiré vers le bas)
motor = OutputDevice(18)  # Moteur (via transistor) contrôlé par GPIO 18

# Définir le comportement
def start_motor():
    led.on()
    motor.on()
    print("Bouton pressé : Moteur et LED ALLUMÉS")

def stop_motor():
    led.off()
    motor.off()
    print("Bouton relâché : Moteur et LED ÉTEINTS")

# Lier les actions du bouton
button.when_pressed = start_motor
button.when_released = stop_motor

print("Système prêt. Appuyez sur le bouton pour allumer le moteur et la LED.")
pause()

Avec juste quelques éléments et un petit programme Python, vous avez créé un système fonctionnel qui prend une entrée, effectue une action et se protège contre les dommages.

Une fois que vous êtes à l’aise avec ces bases, vous pouvez passer à des modules et capteurs préfabriqués. Ceux-ci incluent souvent les mêmes éléments que vous venez d’apprendre (résistances, transistors et diodes) mais emballés proprement avec des connecteurs et des circuits de contrôle.

Ils facilitent l’ajout de fonctionnalités comme la détection de mouvement, la mesure de température ou l’entrée sonore à vos projets Raspberry Pi. Si vous êtes curieux au sujet des capteurs, consultez notre guide dédiée à l’utilisation des capteurs avec Raspberry Pi pour plus d’idées et des exemples étape par étape.

À ce stade, vous avez appris comment chaque composant électronique de base fonctionne et comment les utiliser en toute sécurité avec votre Raspberry Pi. Avec ces blocs de construction, vous pouvez commencer à expérimenter, combiner des pièces et explorer des circuits et capteurs plus avancés dans vos projets futurs.

Télécharger mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Ressources supplémentaires pour votre Raspberry Pi

Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant

Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici

Maîtrisez Python sur Raspberry Pi
Pas besoin d’être un génie pour coder quelques lignes pour votre Raspberry Pi.
Je vous apprends juste ce qu’il faut sur Python afin de réaliser n’importe quel projet. La seconde partie du livre est d’ailleurs consacrée à des exemples de projets où je vous guide pas à pas.
Ne perdez pas de temps, apprenez le strict nécessaire et économisez 10% avec ce lien :
Télécharger maintenant

Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources


Ce tutoriel ne marche plus à 100%? Prévenez-moi pour que je le mette à jour!

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *