Page 1 sur 2

Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 15:11
par hastaluego05
Bonjour à tous,
Heureux possesseur d'un RPI3, je cherche à utiliser mais avant tout comprendre le fonctionnement des connecteurs gpio. J'ai bcp lus de documentation mais ce n'est tjs pas très clair. Pour commencer, je cherche déjà à savoir pourquoi il y a 2 connecteurs 5v? et un autre de 3.3v? peuvent-ils tous être utilisés en meme temps? combien d'éléments (sonde, etc) puis-je connecter simultanéement aux ports gpio sans soucis? par exemple, je veux connecter 1 PIR sensor, 2 ventilateurs 12V (via des resistances et transistors) et 1 button pressoir pour arrêter la RPI de manière physique et sûr. Est-ce que cela est possible? une mauvaise idée? etc

Un grand grand merci à tous pour votre aide/explications! (je ne veux pas faire de bétisses par manqué d'information) :o

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 16:20
par dyox
Bonjour,

Déjà, mettez ce site en favori pour les gpio. Je n'ai pas trouvé aussi complet et simple.
Pour info, les gpio fournissent 3.3V pour un montant GLOBAL de 50mA ou alors chaque port GPIO peut piloter une charge de 2 à 16 mA !
Il y a des relais (commandés par gpio) à la place des transistors si vous préférez. Il faut prendre ceux compatibles arduino (marqué 5V mais ils fonctionnent en 3.3V)
Il existait sur les précédentes versions de pi un "hack" pour faire un reset et je viens de trouver sur cette recherche pour l'arrêt, donc c'est possible.
Pour votre info, il est possible à partir du 3 de s'affranchir de la µSD en bootant sur clé ou DD et d'utiliser un driver d'accélération matériel openGL (je vous laisse chercher sur le site).

En clair tout est possible dans la limite du hardware :D .

Je serai intéressé par le schéma pour faire fonctionner 2 ventilateurs 12V via des résistances et transistors. L'électronique n'est pas mon domaine :)

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 18:28
par spourre
Bonjour,

Vous avez bien raison de vous intéresser au GPIO car, AMHA, c'est ce qui fait tout l'intérêt du Raspberry.
En complément de la réponse de dyox, j'ajouterais:

- Le port GPIO est en prise directe avec le SOC (coeur du Rasperry) donc prudence dans les manipulations.
- Les broches (sauf celles d'alimentation et de masse) peuvent être paramétrées en entrée ou en sortie, une par une, de manière indépendante.
Elles ne fonctionnent qu 'en binaire (0 ou 1) et ne supportent pas plus de 3.3 V (tension d'alimentation du SOC.
- Certaines ont des fonctions pré-définies dans certains protocoles de bus série (I2C,UART, SPI..). N'activez donc ces interfaces que si vous en avez besoin.
- Si vous voulez manipuler des données analogiques (température, pression, humidité, tension ...), il faut utiliser une interface dédiée. De même si vous souhaitez piloter un ou des moteurs, pas à pas ou à courant continu. (il y a un nombre incroyable de convertisseurs à faible prix).
- Les premiers essais d'utilisation du GPIO peuvent se faire en ligne de commande. Pour aller plus loin, il faut investir du temps pour se familiariser avec Perl python voire avec des langages compilés comme C ou C++. Je vous invite à lire, sur la partie blog, les excellents articles sur les saga clignoter une LED et Bouton Poussoir:
http://www.framboise314.fr/la-saga-blin ... r-une-led/

D'une façon générale, le blog regorge d'articles très bien écrits (de ou sous contrôle de François) et qui répondent à beaucoup de questions que se posent les utilisateurs du Raspberry. Il y en a pour tous les niveaux.
Si vous préférez une documentation "papier", il y a le livre du même François (pub gratuite ), en français.
Bon amusement (vous pourriez même utiliser le Lego de vos enfants ).

Sylvain

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 19:49
par hastaluego05
Merci bcp dyox et Sylvain d'avoir répondu si vite :) et avec plein d'explications, j'espère que vous verrais ce message car je n'ai pour le moment pas trouver la fonctionnalité pour répondre au deux en même temps.

Toute vos informations et liens sont les bienvenus, pertinentes et intéressantes mais justement pour moi (novice en électronique) certain aspects sont paradoxale et tjs pas clair.. comme par exemple, vous dites que le SOC ne supporte pas plus de 3.3v alors pourquoi il y a 2x pins a 5v? je ne comprends pas cela. Est-ce que ces 2 pins ne sont pas reliés au SOC directement? Par ailleurs, s'il y a 2 pins 5v j'en déduis que chacun d'entre eux peuvent utilisé indépendamment?
Également, lorsque j'écris que je fais tourner 2 ventilateurs de 12v/0.30a, cela n'a pas l'air de vous choquer ? :D :shock: mais il me semble que 12v est bien au-dessus des 5 ou 3.3v.. du coup je suis tout perdu :(

@dyox: c'est drôle je suis tombé sur le même site auj! effectivement il est très complet pour les gpio. C'est très volontiers que je partage mon schéma pour les ventilateurs :) mais encore une fois je ne vois pas comment uploader mon schéma fritzing (.jpg) dans mon post.. une idée??

Pour info : je fais actuellement tourner les 2 ventilateurs + 1 PIR sensor sans souci "visible" mais je me demande très très fortement si c'est une bonne chose à long terme..

Merci encore pour votre aide et disponibilité! c'est très apprécié :)

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 20:09
par dyox
Le pi est alimenté en 5V et cette tension est redistribuée en 5V et en 3.3V pour par exemple alimenter le touchscreen officiel de la fondation. Cela évite de multiplier les sources extérieurs, économiser des cordons usb...
Je dirais que les pins 5V viennent directement de l'alimentation et le 3V d'un régulateur.

Également, lorsque j'écris que je fais tourner 2 ventilateurs de 12v/0.30a, cela n'a pas l'air de vous choquer ?
=> si, c'est pourquoi j'ai demandé le schéma et ai parlé des relais à la place :D (je m'en sors bien ;) )

Je complèterai que les gpio peuvent être aussi programmés en front montant et descendant.
hop, en favori aussi le site et sa page http://raspi.tv/2013/rpi-gpio-basics-7- ... -tutorials

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 20:20
par guillaume9344
Bonsoir,
12v et transistors ne me choc pas ca été inventé pour ca :D , si c'est bien réalisé cela peut fonctionner trés longtemps. de la meme facon il est possible de commander plein d'autres charges .

Re: Comprendre les connecteurs GPIO

Posté : lun. 5 déc. 2016 22:31
par hastaluego05
Merci guillaume9344 pour votre input :) du coup je comprends dans votre phrase que brancher "plein" d'élément (avec ou sans transistors) sur les gpio ne pose pas de problèmes?

@Dyox: merci pour le favori! "mathématiquement" il a un truc qui cloche hihi comment 5v peuvent être redistribuer en 5v ET 3.3v.. :roll: mais comme mes connaissance en électronique sont plus que limité.. c'est ptetre possible.. je trouvais cela juste pas logique. Je pense aussi que le 5v est directement relié à l'alim mais de nouveau, comment 1x 5v de l'alimentation principale peut fournir à travers les gpio => 2x => 5v.. c'est pas logique pour moi :lol:

redites moi si vous arrivez à voir l'image de mon schéma :) avec plaisir ;) => https://i.imgsafe.org/5dae1c6954.jpg
(les piezos représentent les ventilo ;-))

Re: Comprendre les connecteurs GPIO

Posté : mar. 6 déc. 2016 00:36
par spourre
hastaluego05 a écrit : ...
comme par exemple, vous dites que le SOC ne supporte pas plus de 3.3v alors pourquoi il y a 2x pins a 5v? je ne comprends pas cela. Est-ce que ces 2 pins ne sont pas reliés au SOC directement? Par ailleurs, s'il y a 2 pins 5v j'en déduis que chacun d'entre eux peuvent utilisé indépendamment?
Également, lorsque j'écris que je fais tourner 2 ventilateurs de 12v/0.30a, cela n'a pas l'air de vous choquer ? :D :shock: mais il me semble que 12v est bien au-dessus des 5 ou 3.3v.. du coup je suis tout perdu :(
...
L'alimentation en 5 V, c'est pour rester compatible avec le standard USB. Ces 5 V sont ramenés à 3.3 V pour alimenter le SOC grâce à un convertisseur (à découpage donc très petit et peu de pertes). Ce n'est pas une simple addition/soustraction des tensions. Ce genre de montage peut même produire une tension de sortie supérieure à la tension d'alimentation (ex: alimentation d'un flash électronique); Ce qui est conservé, aux rendement près, c'est la puissance..
Il n'y a rien de choquant d'alimenter un moteur en 12 V à travers un transistor. C'est un montage très classique d'utiliser un transistor en commutation, qui fonctionne comme un interrupteur. Le GPIO commande la base du transistor et ne voit pas le 12 V.

Nota: j'ai édité ma première réponse car j'ai commis un lapsus en écrivant perl à la place de python.

Sylvain

Re: Comprendre les connecteurs GPIO

Posté : mar. 6 déc. 2016 00:54
par hastaluego05
[quote="spourre"][quote="hastaluego05"]
...
comme par exemple, vous dites que le SOC ne supporte pas plus de 3.3v alors pourquoi il y a 2x pins a 5v? je ne comprends pas cela. Est-ce que ces 2 pins ne sont pas reliés au SOC directement? Par ailleurs, s'il y a 2 pins 5v j'en déduis que chacun d'entre eux peuvent utilisé indépendamment?
Également, lorsque j'écris que je fais tourner 2 ventilateurs de 12v/0.30a, cela n'a pas l'air de vous choquer ? :D :shock: mais il me semble que 12v est bien au-dessus des 5 ou 3.3v.. du coup je suis tout perdu :(
...
[/quote]

L'alimentation en 5 V, c'est pour rester compatible avec le standard USB. Ces 5 V sont ramenés à 3.3 V pour alimenter le SOC grâce à un convertisseur (à découpage donc très petit et peu de pertes). Ce n'est pas une simple addition/soustraction des tensions. Ce genre de montage peut même produire une tension de sortie supérieure à la tension d'alimentation (ex: alimentation d'un flash électronique); Ce qui est conservé, aux rendement près, c'est la puissance..
Il n'y a rien de choquant d'alimenter un moteur en 12 V à travers un transistor. C'est un montage très classique d'utiliser un transistor en commutation, qui fonctionne comme un interrupteur. Le GPIO commande la base du transistor et ne voit pas le 12 V.

Nota: j'ai édité ma première réponse car j'ai commis un lapsus en écrivant perl à la place de python.

Sylvain[/quote]

merci pour la note.
du coup pouvez vous m'informer sur les 2 pins de 5v svp?
ca serait cool d'avoir un avis sur mon schéma/montage :) que pensez-vous ?

Re: Comprendre les connecteurs GPIO

Posté : mar. 6 déc. 2016 07:17
par guillaume9344
Alors , pour pouvoir comprendre un peut tout ca , voici le schema electrique d'un pi 3 :
https://www.raspberrypi.org/documentati ... EDUCED.pdf
on voit sur la ligne du haut au millieu, le circuit de régulation de la tension qui sort du 5v et du 3.3v et sur le schémat du gpio expansion , les pin 2et 4 (5v) reliées entre elles
pour lire le schémat correctement , les letrre et chiffres en rouge en bout de fils sont des éiquettes, il faut comprendre que deux étiquettes de meme nom sont reliées phisiquement ensemble, mais pour plus de clareté, la liaison n'est pas dissinée, donc toutes les étiquettes 5v sont reliées ensemble de meme pour gpio5 gpio8, sda, slc......tec. par contre 5v et 5vcore sont différent et ne sont donc pas reliés, ils ont des fonctions différentes.