Comprendre les connecteurs GPIO
Modérateur : Francois
-
- Messages : 5
- Enregistré le : lun. 5 déc. 2016 14:25
Comprendre les connecteurs GPIO
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)
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)
-
- Raspinaute
- Messages : 969
- Enregistré le : dim. 28 déc. 2014 15:28
- Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe
Re: Comprendre les connecteurs GPIO
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 .
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
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 .
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
Modifié en dernier par dyox le lun. 5 déc. 2016 19:52, modifié 1 fois.
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Comprendre les connecteurs GPIO
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
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
Modifié en dernier par spourre le mar. 6 déc. 2016 00:20, modifié 1 fois.
-
- Messages : 5
- Enregistré le : lun. 5 déc. 2016 14:25
Re: Comprendre les connecteurs GPIO
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 ? 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é
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 ? 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é
-
- Raspinaute
- Messages : 969
- Enregistré le : dim. 28 déc. 2014 15:28
- Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe
Re: Comprendre les connecteurs GPIO
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 (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
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 (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
Modifié en dernier par dyox le lun. 5 déc. 2016 20:23, modifié 1 fois.
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: Comprendre les connecteurs GPIO
Bonsoir,
12v et transistors ne me choc pas ca été inventé pour ca , 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 .
12v et transistors ne me choc pas ca été inventé pour ca , 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 .
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
-
- Messages : 5
- Enregistré le : lun. 5 déc. 2016 14:25
Re: Comprendre les connecteurs GPIO
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.. 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
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 )
@Dyox: merci pour le favori! "mathématiquement" il a un truc qui cloche hihi comment 5v peuvent être redistribuer en 5v ET 3.3v.. 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
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 )
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Comprendre les connecteurs GPIO
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..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 ? mais il me semble que 12v est bien au-dessus des 5 ou 3.3v.. du coup je suis tout perdu
...
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
-
- Messages : 5
- Enregistré le : lun. 5 déc. 2016 14:25
Re: Comprendre les connecteurs GPIO
[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 ? 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 ?
...
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 ? 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 ?
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: Comprendre les connecteurs GPIO
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.
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.
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam