Pilotage d'une carte 16 relais avec arduino

Bonjour,

J'ai une carte 16 relais que j'aimerais piloter avec arduino .
Mon problème est que je ne comprends pas comment relier les sorties d'arduino aux entrées de la carte relais .
Sur la carte relais il y a trois rangées de pin en entrée , je suis perdu...
Ce sont des relais 12V .

Un petit coup de pouce serait pas de refus .

Ci joint les photos de la fameuse carte relais

Merci d'avance

Bonsoir;

Pour info,

1/ quelles sont les ref inscrites sur les composants à 4 pattes juste au dessus des 3 rangées de pins?
2/ est-ce possible d'avoir une photo de la carte électronique vue de dessous (face soudures), juste la partie avec les 3 rangées et les composants à 4 pattes, pour voir les pistes du CI?

Selon moi les entrées sont reliées à des optocoupleurs, lesquels et comment? (d'où ma demande de photos).

Sinon, il y a peut-être une ref sur la carte, en dessous, pour aller fouiller sur le Net?

A+

module elecfreaks

http://www.elecfreaks.com/wiki/index.php?title=16_Channel_Mini-Relay_Module

et la datasheet

C'est la première fois que je vois un "shield" aussi bien documenté, super.

Bonjour,
c'est des relais spéciaux, il me semble programmables, qui peut m'expliquer ?

Bonjour à tous,

merci pour vos réponses , c'est bien elle.

Grace a vos infos, je suis tombé sur ce post [SOLVED] 16 Channel 12 volt relayboard and Arduino UNO - General Electronics - Arduino Forum

Par contre je pense que je vais devoir changer de carte pour la réalisation de mon projet 220V .

Merci encore à tous :slight_smile:

Bonjour;

Le pilotage des relais est ce qu'il y a de plus simple.

Il faut envoyer 0V sur les entrées CH1, ..., CH16 pour piloter les relais en question.

Par contre, le VCC de ton shield doit être de 12V car tes relais sont alimentés en 12V.

ET les sortie arduino sont en 0 ou 5V ... mince alors, le problème est que si j'envois un niveau BAS en entrée shiels, parfait le relais en question est piloté, mais si à l'inverse c'est un niveau HAUT que tu envois en entrée c'est à dire 5V, alors le relais serra aussi activé.

Il va falloir "interfacer" tes sorties arduino si tu veux pilote ton shield avec, par exemple avec un pilotage par transistor monté en collecteur ouvert (facile à trouver sur le net et surement ici).

Si tu relis une des entrées sur les rangées jaune à la broche voisine sur la rangée rouge (par un petit cavalier du type de ceux que l'on trouve sur les cartes méres des PC), tu mets le signal CH correspond à la masse et tu pilote ainsi le relais correspondant, cest une commande manuelle si tu preferre.

PS: j'édite car j'ai répondu un poil trop tard.

On peut "piloter" du 230V, mais c'est fortement déconseillé de le faire sans un minimum de précautions.
C'est donc possible mais ... à voir selon ce dont il s'agit.

Re,

Je comprends pas . Je commence par envoyer du 12V dans la carte , toutes les led s'allument 4 secondes puis mon alim se met en protection.

J envoie alors du 5v dedant pour tester et j'obtient le meme résultat, toutes les led temoins des relais s'allument mais l alim ne se met plus en protection .

Bonjour;

J'ai fais une petite erreur dans ma lecture du schéma.

Pour ACTIVER un relais, il faut que l'entrée CH soit non connectée ou connectée à 12V.
Pour DESACTIVER un relais, il faut que son entrés CH soit connectée à 0V.

Les relais étant des relais 12V, pour les activer, il faut une tension d'alimentation du shield de 12V.

Conclusions (non hasardeuse):

  • si tu laisse en l'air toutes les entrées CH, tu vas activer tout tes relais et consommer un max sur ton 12V.
  • si tu alimente ton shield avec du 5V, les relais 12V auront du mal à s'activer voir ne s'activeront.
  • si tu veux piloter une entrée CH avec une sortie arduino, tu ne pourra envoyer que du 5V et non du 12V ...

de ceci découle cela.

l'interrupteur sert à quoi ?

A mon avis la datasheet est imprecise au niveau de l'inter en question. Je pense qu'il relie ou non a la masse la rangee rouge.

lever de doute : voir le schéma donné au message #2 par electrax, dont j'insère un extrait :
schema 1 entrée.jpg

la carte contient déjà les transistors de commande des relais, les diodes de roues libres ainsi que des optocoupleurs précédant les transistors.

En l'absence de signal au niveau zéro (masse) sur une entrée la led du photocoupleur est éteinte, le transistor de commande du relais est saturé ce qui provoque l'alimentation de la bobine du relais correspondante.

Avec les entrées 1 à 16 en l'air tous les relais sont collés ce qui produit alors la mise en sécurité de l'alimentation 12V si elle ne peut fournir le courant total demandé.

le BP permet effectivement de mettre à la masse une des lignes (la rouge ?) et, grâce à des cavaliers, de gérer manuellement certains relais.

Le schéma utilisé (optocoupleur) permet de gérer correctement les relais avec un signal 0 à 5V issu de la carte Arduino si Vcc=5V

A-t-on la certitude absolue que les relais sont des relais 12V ? Si oui il faut 12V pour Vcc.....mais alors les sorties numériques de la carte Arduino se trouveraient en présence d'une led alimentée en 12V..... pas terrible et plutôt risqué pour des sorties qui ne sont pas de type 'collecteur ouvert' (plus exactement 'drain ouvert')!!

Pourrait on avoir une photo de gros plan d'un relais ? en zoomant sur la photo de la carte (site ElectFreaks) je crois entrevoir DC 5V......

La description laisse du moins supposer une possibilité d'alimentation 5V avec signaux de commande 5V
(niveau haut du signal de commande égal à la tension d'alimentation de la partie 'puissance')
caract.jpg

al1fch:
A-t-on la certitude absolue que les relais sont des relais 12V ? Si oui il faut 12V pour Vcc.....mais alors les sorties numériques de la carte Arduino se trouveraient en présence d'une led alimentée en 12V..... pas terrible et plutôt risqué pour des sorties qui ne sont pas de type 'collecteur ouvert' (plus exactement 'drain ouvert')!!

On voit trés bien sur certaines photos que se sont des relais 12V.

Pour ce qui est des I/O arduino, à mon avis il n'y a pas de soucis à se faire, ca doit marcher.

Sauf que si la il y à 5V sur le signal CH et 12V en VCC, se serrat je pense le même effet que s'il y avait 0V sur le signal CH, à savoir que dans les 2 cas l'opto serrat passant et le relais INACTIF.

A tester de toute façon pour s'instruire, lever les doutes, déterminer quel est le meilleur remède s'il en faut un.

Pour ce qui est des I/O arduino, à mon avis il n'y a pas de soucis à se faire, ca doit marcher.

Peux tu, jeanfranlec développer ce point et justifier ton affirmation ?

Si , comme tu le pressens une sortie Arduino à 5V donnera un optocoupelur passant c'est donc que sa led émet de la lumière parce qu'elle est traversée par un courant significatif. Ou và ce courant ? Quel chemin prend-il dans le microcontrolleur Arduino ? S'agit-il d'un chemin normal pour le microcontrolleur ? Le microcontrolleur est-il conçu pour supporter durablement ce courant .

Perso : je déconseille fortement de faire fonctionner une sortie numérique d'AT Mega 328 avec une charge reliée à une tension supérieure à la tension d'alimentation..... parce que le courant injecté sur une sortie à l'état haut est susceptible de détruire la puce. Une sortie 'collecteur ouvert' ou 'drain ouvert' ne présenterait pas ce risque.
.

Bonjour;

J'ai perdu mon message de réponse, donc je recommence:

Les électroniciens parlent de "sink" et "source", dans l'esprit de beucoup, une sortie, comme dans un grand magasin, c'est pour sortir du courant, ça c'est si on raisonne courant.

Mais sin on raisonne tension, une sortie fournit un état HAUT ou un état BAS, et dans un cas comme dans l'autre, il vaut mieux que cette sortie puisse fournir (source) ou absorber (sink) du courant.

Et que dit arduino sur son site (je vous le donne en 1000):

"Pins Configured as Outputs

Pins configured as OUTPUT with pinMode() are said to be in a low-impedance state. This means that they can provide a substantial amount of current to other circuits. Atmega pins can source (provide current) or sink (absorb current) up to 40 mA (milliamps) of current to other devices/circuits. This makes them useful for powering LEDs because LEDs typically use less than 40 mA. Loads greater than 40 mA (e.g. motors) will require a transistor or other interface circuitry.

Pins configured as outputs can be damaged or destroyed if they are connected to either the ground or positive power rails. "

Donc OUI, dans notre cas de figure, nous pouvons, avec une sortie, absorber du courant.

Ensuite (j'appelle Messieurs Thevenin, Kirchoff et Ampéres, c'est mon côté j'aime bien les universitaires qui m'en ont appris sur ces gars, tout en restant un tantinnet franchouillard).

Cas general
Sortie arduino à l'état = Va, tension diode opto = Vd si Id>0, sinon = 0, Id = courant dans opto, R = résitance en serie avec diode opto

(Vcc - Vd - Va)R = Id

Si Va = VCC, Id < donc l'opto est bloqué

Si Va = 0, Id > 0 opto passant

Et si Vcc = 12V et Va = 5V Id > 0 donc passant?

Conclusion il n'y a aucun doute possible sur le fonctionnement quand Va= Vcc à l'état HAUT) ou Va = 0 à l'état bas dans les autres cas, il faut faire les calculs.

Ca ouvre une voie vers la suite à donner je crois.

Attention à ne pas oublier que :

-'source' s'applique exclusivement au courant que peut fournir (sortir) une sortie à l'état haut, courant issu de l'alimentation du microcontrolleur et ayant traversé un transistor PMOS interne.

-'sink' s'applique exclusivement au courant que peut recevoir , encaisser, une sortie à l'état bas, courant traversant un transistor NMOS interne et allant vers la borne GND du microcontrolleur.
sourc et sink.jpg

Les universitaires cotoyés m'ont appris qu'avant de parler de Kirchoff, Tehevenin.... encore faut-il , pour ne pas raisonner en l'air, identifier clairement la ou les mailles prises en considération. Maille complète.

Issu du 12V le courant dans la led de l'optocoupleur doit aller à la masse.
D'où ma question renouvellée : quel trajet prendrait,dans le microcontrolleur alimenté en 5V , un courant entrant dans une sortie à l'état haut, courant issu d'une source de tension à 12V ? Que penser de ce trajet du point de vue de la durée de vie du composant ?

Mon propos est de démontrer que si Vcc carte relais est différent du Vcc carte arduino, cela ne marche pas.

Et le votre que si Vcc carte relais différent de Vcc carte arduino, alors, que cela marche ou pas, cela casse ... probablement.

Mais comme cela ne marche pas, pas la peine en plus d'essayer de casser, qu'en pensez vous?

Ensuite, vous extrapolez une éventuelle sortie avec MOS N et MOS P, est-ce celle de l'ATMEGA que vous proposez?

Histoire de faire une maille exacte avec ce qu'il y a exactement (diode de protections ou pas en // aux MOS?, ce n'est pas proposé sur votre schéma), se serait tutile de creuser encore une fois le datasheet de ATMEGA sur le sujet.

PS: info trouvée page 67 figure 12-1 et commentaires sur les diodes de protection