[RPI] Câblage RPI et module relai

Si vous souhaitez savoir quel programmateur ou thermostat choisir, rendre autonome votre terrarium via Arduino, ou expliquer comment vous pilotez à distance votre arrosage à l'aide d'un Raspberry Pi, cette rubrique est faite pour vous.
Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

[RPI] Câblage RPI et module relai

Message par Guttata »

Bonjour,

Tout d'abord merci à Vince81 d'avoir créé cette rubrique :-D

Je viens de recevoir mon relai : http://www.amazon.fr/Module-relais-cana ... al_qh_dp_i

Du coup je potasse le Web et forcément des questions me viennent :
- Vous me confirmez que cette carte est opto-isolée ? Du coup normalement pas de peur à avoir quand à cramer les GPIO du Rpi avec le 5V ? ==> Pas nécessité de faire du NPN transistor ... ?
- Concernant le câblage : je compte pour l'instant utiliser 5 relais sur les 8
* Est-il vraiment nécessaire d'utiliser une alimentation externe de 5V (entre 1 et 2A) pour alimenter la carte ?
- Comment gérez-vous ce fonctionnement "active LOW" (qui va à l'inverse de ce que j'avais en tête)
* Pas d'impact si mon matériel électrique est branché sur NC et COM
==> Mon Pi boot, les Pin sont sur 0 donc mon relai "active Low" switch sur NO et COM (circuit ouvert, appareil éteint). Quand je set mon Pin à 1, je rebascule sur mon état initial NC et COM mon appareil électrique s'allume. Mes diodes sur mon relai par contre sont dans l'état opposé de mon équipement ?

* Vous avez fait un montage pour inverser ce mode de fonctionnement ?
* Vous initialisez tous les GPIO utilisés sur le relai en HIGH au boot et si souhait d'allumer l'élément électrique vous mettez le GPIO correspondant à LOW ?
==> Question bête mais : est-ce que ça ne fatigue pas plus le raspberry de mettre du 3,3V dans les GPIO à maintenir inactif ?

Merci de m'éclairer un peu :)



Avatar du membre
Vince81
Administrateur
Administrateur
Messages : 4147
Enregistré le : 23 sept. 2007 20:16
Localisation : Paris

Re: [RPI] Câblage RPI et module relai

Message par Vince81 »

Bon, j'espère qu'il y aura des gens compétents en la matière pour te répondre mieux que mes connaissances empiriques et glanées de-ci de-là. Je ne suis pas électronicien, et malheureusement, je ne suis pas capable de théoriser forcément ce que j'ai pu faire...
Guttata a écrit :Je viens de recevoir mon relai : http://www.amazon.fr/Module-relais-cana ... al_qh_dp_i

Du coup je potasse le Web et forcément des questions me viennent :
- Vous me confirmez que cette carte est opto-isolée ? Du coup normalement pas de peur à avoir quand à cramer les GPIO du Rpi avec le 5V ? ==> Pas nécessité de faire du NPN transistor ... ?
Elle est opto-isolée. Par contre, cela ne signifie pas ce que tu as écrit si je ne me trompe pas. Opto-isolée signifie qu'il n'y aura pas de connexion électrique entre la commande basse tension et les hautes tensions des relais.
Pour continuer à bénéficier de l'isolation, il faut du coup avoir une alimentation séparée pour les commandes et les relais.

Personnellement, j'ai fait ce schéma (sauf que j'ai rajouté par la suite un réseau de résistance de tirage en sortie du ULN2803A, et que j'avais eu la flemme de faire le MCP23017):
Image

J'avais posé la question ICI.

Après, je me dis que tu as déjà du voir ce lien là, mais je le mets en cas, ICI.
- Concernant le câblage : je compte pour l'instant utiliser 5 relais sur les 8
* Est-il vraiment nécessaire d'utiliser une alimentation externe de 5V (entre 1 et 2A) pour alimenter la carte ?
Je pense que si tu n'as besoin que des 5 sur les 8, ça passe (en fonction d'avec quoi tu alimentes ton RPI).
Cf. cette phrase :
The Raspberry pi requires up to about 500mA, and each relay requires about 72mA (total: ~1.1A for 8 relays), so be sure to chose a supply capable of 1.5A or more to leave a little headroom.
Mais du coup, tu n'es pas isolé électriquement entre le RPI et les relais si tu n'utilises pas une alim externe.
- Comment gérez-vous ce fonctionnement "active LOW" (qui va à l'inverse de ce que j'avais en tête)
* Pas d'impact si mon matériel électrique est branché sur NC et COM
==> Mon Pi boot, les Pin sont sur 0 donc mon relai "active Low" switch sur NO et COM (circuit ouvert, appareil éteint). Quand je set mon Pin à 1, je rebascule sur mon état initial NC et COM mon appareil électrique s'allume. Mes diodes sur mon relai par contre sont dans l'état opposé de mon équipement ?

* Vous avez fait un montage pour inverser ce mode de fonctionnement ?
* Vous initialisez tous les GPIO utilisés sur le relai en HIGH au boot et si souhait d'allumer l'élément électrique vous mettez le GPIO correspondant à LOW ?
==> Question bête mais : est-ce que ça ne fatigue pas plus le raspberry de mettre du 3,3V dans les GPIO à maintenir inactif ?

Merci de m'éclairer un peu :)
Je ne me suis pas posé la question, vu que je souhaitais simplement que cela marche. Je n'utilise pas les GPIO, mais les pins de la MCP23017. Du coup, quand je mets la pin à 1, j'active le relais. Quand je la mets à 0, je désactive.
Avec ma nouvelle install', je ne sais pas si c'est encore le cas, mais sinon, le MCP23017 (avec ses résistances internes si je ne m'abuse) fait que je conserve l'état au démarrage en fonction de comment je l'avais éteint. Donc, je n'ai jamais regardé à mettre les GPIO en high ou pas au boot.

Désolé de ne pas pouvoir t'éclairer plus que ça :(.
Vince
Mes plantes
Mon terrarium highland
Liste de culture

"Il n'y a pas de plante difficile, il faut juste trouver les bonnes conditions"

Aide-toi et le ciel forum t'aidera.

Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

Re: [RPI] Câblage RPI et module relai

Message par Guttata »

Merci pour ton aide précieuse Vincent. Je ne suis pas très familier avec tous ces composants électroniques :? Mais ca va rentrer :wink:

Peux-tu m'éclairer sur le rôle de l'ULN2803a et du MCP23017 dans ta configuration ?

ULN20803
  • C'est un grid de transistors NPN, il permet d'inverser ton instruction pour la gestion du low active ?
  • Exemple :Tu lui dis 1, il convertit en 0
MCP23017 'ajoute des "GPIO" et mémorise leur état ?

Les quelques liens qui m'ont bien aidé ici (et surtout la partie "More Complex System")et

Pour être au top de l'isolation et ne pas avoir à mettre en place d'autres composants entre le Pi et le module relai:
  • Un module relay opto-isolé
  • Une alim externe dédiée pour le module relay
  • Ne pas mettre en commun les GRD Pi et module relay
Un avis concernant :
==> Question bête mais : est-ce que ça use plus vite le raspberry de mettre du 3,3V dans les GPIO à maintenir inactif ?

Merci :)

Avatar du membre
Vince81
Administrateur
Administrateur
Messages : 4147
Enregistré le : 23 sept. 2007 20:16
Localisation : Paris

Re: [RPI] Câblage RPI et module relai

Message par Vince81 »

Haha, je ne me suis pas fait avoir avec l'édit ce coup-ci :razz:.
Guttata a écrit :Merci pour ton aide précieuse Vincent. Je ne suis pas très familier avec tous ces composants électroniques :? Mais ca va rentrer :wink:
Je pense que tu es plus familier que moi dans l'immédiat. Encore une fois, malheureusement, je n'ai pas cherché à théoriser tout ce qui a fonctionné, dans la mesure où quand j'ai affronté mes problèmes de relais il y a quelques mois, je ne les attendais pas, et ils n'étaient pas les bienvenus. Du coup, je n'avais pas pu "geeker" en amont pour tout comprendre.
J'ai peut-être fait des trucs superflus, mais je ne me plains pas vu que tout fonctionne désormais. Mais c'est effectivement pas très subtil.
Peux-tu m'éclairer sur le rôle de l'ULN2803a et du MCP23017 dans ta configuration ?
Je vais essayer.
ULN20803
  • C'est un grid de transistors NPN, il permet d'inverser ton instruction pour la gestion du low active ?
  • Exemple :Tu lui dis 1, il convertit en 0
Je pense que oui, vu que c'est le cas chez moi (ouais, empirique, pas théorique).
Par exemple, j'ai mis l'éclairage en "ouvert pas défaut", donc, éclairage éteint par défaut. Je dois mettre la pin de mon MCP à 1 (high) pour avoir le relais qui claque, et l'éclairage qui s'allume.
Cela me permet aussi d'avoir du 5V pour faire fonctionner la carte relais, qui est censé fonctionner avec 5V, et d'interfacer avec le 3V du Raspberry.
Ca va bien avec ça aussi
The ULN2003AN Darlington Transistor Array was selected because it is amiable in an easy to solder, relatively cheap, DIP package. Further advantages of using these transistors include inverting the logic so a high bit turns the relays on, and interfacing between the 3.3V port expanders and the 5V really boards. Darlington pairs are not strictly required for this circuit (see “How to wire a Raspberry Pi to a Sainsmart 5v Relay Board” in the references) however the ULN2003AN is a nice alternative to purchasing individual transistors and resistors. Unfortunately it only providers 7 transistor pairs per chip so three ULN2003AN’s are required to cover 16 channels.
Récupéré d'ICI.
MCP23017 'ajoute des "GPIO" et mémorise leur état ?
Pour l'ajout des GPIO, oui. J'ai un MCP23017 pour les relais, et un autre "pour le reste". Pour les leds rgb, des gpio de rab, et un en input pour l'effet hall.
Pour les états, j'ai un gros doute désormais, car, je ne retrouve pas le lien que je voulais, je trouve même l'opposé. Donc, pour le moment, oublie l'histoire de la mémorisation, j'ai peut-être dit une ineptie.
Les quelques liens qui m'ont bien aidé ici (et surtout la partie "More Complex System")et
Je me souviens bien de ces liens. J'avais envoyé un email au type, je vais le coller ici, à la fin du message.
Pour être au top de l'isolation et ne pas avoir à mettre en place d'autres composants entre le Pi et le module relai:
  • Un module relay opto-isolé
  • Une alim externe dédiée pour le module relay
  • Ne pas mettre en commun les GRD Pi et module relay
En fait, j'ai ça, et trois composants en plus entre RPI et relais du coup.
Un avis concernant :
==> Question bête mais : est-ce que ça use plus vite le raspberry de mettre du 3,3V dans les GPIO à maintenir inactif ?

Merci :)
Aucune idée.


Pour l'email à Terry, j'avais notamment demandé 1) j'avais pas compris qu'il disait de relier la masse à la terre du bâtiment.
1) connecting the Arduino or RPi ground to building ground is to try to keep it from begin stopped by electrical interference caused by the loads going on and off. You do this seperately from the power connection for your DC supplies, you run a seperate wire, and connect it to building wiring ground. You can do this by using a replacement grounded mains plug and connecting to only the grounding terminal, or any other way that is convenient to connect to ground.

2) When you are using the relay board with the isolation jumper out, then there are three power supplies to think about.

One is the controller (RPi) power, it powers the RPi, and the trigger circuit through the optocoupler. The +3.3 has to go to the + side of the opto trigger circuit which is the "Vcc" pin on the relay board. Connect each control signal to its relay input (like IN1). When the control signal is an output set LOW, then the trigger circuit sees 3.3V at Vcc and ground at IN1, which turns it on. When your signal is high, both sides of the trigger circuit are 3.3V, so it is off. That is why there is no ground needed from the RPi to the relay board.

The second supply powers the relay coils when the trigger circuit is turned on by the RPi. This is your added +5 supply. It is on the "hot" side (the relay side) of the isolation, so it has no ground or power in common with the RPi, it is connected from JDVcc (where the jumper was) to the input GND pin. When the trigger circuit is turned on by the RPi, the relay coil is powered by this supply.

Then finally, when the relay coil is powered, the relay closes and switches on your "big" power load, with its power supply (maybe line voltage).
Effectivement, j'ai pas eu l'air de suivre sa partie deux avec l'ULN2803A du coup...

Quand tu auras tout compris, je veux bien que tu m'expliques :razz:.
Vince
Mes plantes
Mon terrarium highland
Liste de culture

"Il n'y a pas de plante difficile, il faut juste trouver les bonnes conditions"

Aide-toi et le ciel forum t'aidera.

Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

Re: [RPI] Câblage RPI et module relai

Message par Guttata »

Bonjour,

OK c'est clair pour moi. Je pensais initialement que tu avais le montage suivant :
Pi ---- ULN2803A ----- MCP23017 ---- Relai

Mais en fait tu as le montage suivant :
Pi ---- MCP23017 ----- ULN2803A ---- Relai

Je ne suis pas à cours de GPIO et effectivement il apparait que l'initialisation de la MCP23017 soit tout aussi problématique.
Apparemment par défaut tous les PIN sont en INPUT. Mais quelle est la valeur : 0 ou 1 ?
Toujours apparemment :lol: , pour se prémunir des statut fluctuant pendant le boot il faut faudrait mettre des pull-ups resistors.

Je pense en revanche que le ULN2803A peut être un bon achat pour inversé le signal. En aurais-tu à la revente par hasard (si jamais tu en as acheté un lot de 5pieces...) ?

Ce qui m'embête c'est que j'ai un petit breadboard qui se voit presque entièrement bouffé par le breakout ==> Je n'aurai pas la place de connecter ULN2803A et mes différentes sondes.

Existent-ils des breadboards de 700 points avec deux rails (de chaque côté) + / - ? Tout ceux que je vois ont uniquement le rail + et du coup ne seraient pas compatible avec mon breakout

Avatar du membre
Vince81
Administrateur
Administrateur
Messages : 4147
Enregistré le : 23 sept. 2007 20:16
Localisation : Paris

Re: [RPI] Câblage RPI et module relai

Message par Vince81 »

Guttata a écrit :Bonjour,

OK c'est clair pour moi. Je pensais initialement que tu avais le montage suivant :
Pi ---- ULN2803A ----- MCP23017 ---- Relai

Mais en fait tu as le montage suivant :
Pi ---- MCP23017 ----- ULN2803A --[résistances pull-up]-- Relai
C'est bien ça :wink:.
Je décris mon install' et le schéma ce we normalement.
Je ne suis pas à cours de GPIO et effectivement il apparait que l'initialisation de la MCP23017 soit tout aussi problématique.
Apparemment par défaut tous les PIN sont en INPUT. Mais quelle est la valeur : 0 ou 1 ?
Toujours apparemment :lol: , pour se prémunir des statut fluctuant pendant le boot il faut faudrait mettre des pull-ups resistors.
Je n'ai toujours pas vérifié, désolé.
Je pense en revanche que le ULN2803A peut être un bon achat pour inversé le signal. En aurais-tu à la revente par hasard (si jamais tu en as acheté un lot de 5pieces...) ?
J'ai ça :wink: (puis c'était un lot par 10 :razz:).
Ce qui m'embête c'est que j'ai un petit breadboard qui se voit presque entièrement bouffé par le breakout ==> Je n'aurai pas la place de connecter ULN2803A et mes différentes sondes.

Existent-ils des breadboards de 700 points avec deux rails (de chaque côté) + / - ? Tout ceux que je vois ont uniquement le rail + et du coup ne seraient pas compatible avec mon breakout
J'avais tout fait avec une full-sized breadboard, et deux small breaboard d'adafruit.
Vince
Mes plantes
Mon terrarium highland
Liste de culture

"Il n'y a pas de plante difficile, il faut juste trouver les bonnes conditions"

Aide-toi et le ciel forum t'aidera.

Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

Re: [RPI] Câblage RPI et module relai

Message par Guttata »

Je viens de trouver mon bonheur sur eBay grâce à ton mot clé magique : full sized breadboard

Avatar du membre
Vince81
Administrateur
Administrateur
Messages : 4147
Enregistré le : 23 sept. 2007 20:16
Localisation : Paris

Re: [RPI] Câblage RPI et module relai

Message par Vince81 »

Guttata a écrit :Je viens de trouver mon bonheur sur eBay grâce à ton mot clé magique : full sized breadboard
Ne la prends pas, elle part dans la lettre demain :wink:.
Vince
Mes plantes
Mon terrarium highland
Liste de culture

"Il n'y a pas de plante difficile, il faut juste trouver les bonnes conditions"

Aide-toi et le ciel forum t'aidera.

Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

[RPI] Câblage RPI et module relai

Message par Guttata »

C'est noël après l'heure dis donc
Un grand merci.
Je vais demander au vendeur s'il veut bien me rembourser.

Édit: remboursement effectué.

Guttata
Messages : 1069
Enregistré le : 23 janv. 2005 19:46
Localisation : 78
Contact :

[RPI] Câblage RPI et module relai

Message par Guttata »

J'ai testé hier soir ma carte relai avec mes lumières, ça marche nickel hormis le fait que les commandes soient inversées avec le Active Low. Mais l'ULN2803 arrive en renfort :)

Par contre fonctionnement bizarre :
- je démarre le Pi
- le relai reste inactif
- je teste en input le GPIO connecté au relai => 1
- je lui envoie 0 le relai s'active, la lumière s'allume
- si je fais un input pour avoir sa valeur, il me ferme le relai et me retourne 1 => BIZZARRE ?? Pourquoi se met il à 1 alors que je fais un input ?

Édit: j'ai trouvé ma bizarrerie en regardant un peu plus sérieusement le mode input
Image

Actuellement, pour lire le statut de mon PIN (qui est en output) je faisais un GPIO.setup(pin.GPIO.IN) puis GPIO.input(pin).

Pas bien ! Il faut uniquement faire le GPIO.input !

Répondre