Arduino & Module d'alimentation sur plaque d'expérimentation

:confused: je pense que j'ai pas suffisamment de base en électronique pour comprendre...

De tout ce que j'ai fait sur mon projet, j'ai suivi des tutoriels. La partie programmation, c'est mon boulot de tous les jours donc ça va, mais la partie électronique j'y connais pour ainsi dire rien, donc je puise les informations que je peux glaner de tuto en tuto.

Là, ça me dépasse... Je sais pas ce que c'est que ces modules et je vois pas à quoi ça sert et en quoi ça a un rapport avec le module d'alimentation de breadboard que j'utilise et/ou mon câblage. Je pige pas pourquoi j'ai besoin d'un truc qui transforme le 5v en 3.3v ou inversement puisque c'est le module d'alimentation qui doit délivrer les bonnes tensions...

Je n'utilise pas les pins de sortie 3.3v et 5v de l'arduino... J'utilise que le GND que je relie avec tous les autres GND comme qq'1 me l'a indiqué plus haut dans la conversation.

J'arrive pas à comprendre où je connecte du 5v sur du 3.3v. La nuit porte conseil, j'y verrai peut être plus clair demain...

J-M-L: votre USB va donner 5V mais le soucis sera qu'il ne fournit que 500mA. donc si vous alimentez tout à partir de la sortie 5v de votre arduino vous avez un soucis de puissance (outre possible soucis de chute de tension)

La pin 3.3v est aussi limitée il ne faut pas espérer tirer plus de 50ma sans entrer dans des soucis

souvent je prends un breadboard, avec une alimentation dédiée de ce genre par exemple

|500x500

et vous avez la possibilité d'avoir un rail (un côté de la breadboard) à 3.3V et l'autre à 5V par exemple (ou les 2 au même voltage) juste en bougeant les cavaliers, donc vous pouvez choisir comment vous alimentez vos composants.

--> tension d'entrée: 6,5 ~ 12 V (DC) ou alimentation USB et tension de sortie: 3.3V ou 5V commutable avec un courant de sortie maximum à 700 mA pour la totalité de la plaque - ça permet de faire pas mal de choses et ça vaut à peine plus d'un euro si vous achetez cela en asie

Bien sûr il faut partager le GND entre l'arduino et la breadboard et vous n'utilisez les pins de l'arduino que pour les parties commandes / lecture - en passant éventuellement par un adaptateur de tension si certains de vos composants ne prennent des commandes qu'en 3.3V

C'est cette dernière phrase qui m'interpelle :

"en passant éventuellement par un adaptateur de tension si certains de vos composants ne prennent des commandes qu'en 3.3V"

Ça doit être ça dont parle Leptro...

Je comprends pas... C'est quoi cette notion de "tension de commande". Si on considère un capteur à 3 pins, avec : - 1 pin Vcc (disons qu'il fonctionne en 5v) - 1 pin GND - 1 pin "data" de commande

Le GND doit être relié au GND global, le Vcc à l'alimentation 5v et le pin de commande à un des pins de l'arduino (qu'on peut configurer en output / input), non ?!

Et idem en connectant le Vcc à l'alimentation 3.3v si c'est un composant qui fonctionne sous cette tension ?

Je vois pas dans quel contexte je suis censé utiliser un adaptateur de tension... Si j'ai qu'une seule et unique alimentation de 5v et que je dois alimenter des composants en 3.3v, je veux bien...

Pufff, je suis largué... Ça m'énerve de pas comprendre !

L'électronique, c'est compliqué c'est sûr avec de bonnes bases ça va mieux comme pour tout. L'utilisation de l'ide arduino, et des modules tout fait ont rendus ces technologies un peu plus accessible.

Pour revenir à vos soucis, il y a plusieurs choses à prendre en compte.

Et en l'occurrence voici une des bases à avoir pour tout ceux qui se lancent dans l'aventure arduino sans connaissances en électricité et en électronique.

L'alimentation propre des modules: effectivement l'adaptateur d'alimentation va fournir les 5V et 3.3V qui vont servir à alimenter respectivement les modules en 5V et 3.3V.

L'arduino est alimenté en 5V via l'usb.

Jusque là tout va bien.

Maintenant, la communication entre l'arduino et les différents modules.

Entre arduino (en 5V) et un module en 5V (LCD par exemple) , jusque là aussi tout va bien car ils fonctionnent tout les deux en 5V.

Entre l'arduino (en 5V) et un module en 3.3V : deux cas se présentent

1 ) les entrées sorties du module sont "5V tolérant" c'est à dire qu'il supporte qu'on lui applique du 5V sur l'une des ces entrée : ok pas de soucis

2) les entrées sorties du module ne sont compatibles qu'avec du 3.3V : dans ce cas précis, on a besoin d'un module adaptateur de niveau qui transforme le 5V en sortie d'arduino en 3.3V pour le module et transforme donc les 3.3V du module en 5V pour l'arduino. Le plus problématique c'est effectivement quand une sortie de l'arduino envoi un niveau logique haut (1) c'est à dire 5V vers l'entrée du module en 3.3V . cette situation va détruire le module en 3.3V.

Fait nous un listing des modules avec références et liens nous évaluerons ensemble les précautions à prendre.

Non c’est simple pour la partie commande:

Vous êtes un gars du software pas du hardware - donc vous raisonnez juste avec des 0 et des 1. (Ce n’est pas une critique !)

Pour comprendre il suffit de se poser la question « par quoi sont représentés ces 0 et 1 physiquement”. La réponse ce sont des tensions. 0 est représenté par GND (ou proche de GND) et 1 par une tension plus élevée souvent 5V (ou proche de) mais parfois pour certains composants 3.3V

Avez vous déjà essayé de mettre votre langue sur une pile 9v ? Ça pique n’est-ce pas ? Et il ne vous viendrait pas à l’idée de metttre votre langue dans une prise 220v ( NE PAS ESSAYER RISQUE DE MORT DANS D’ATROCES SOUFFRANCES!)

Maintenant imaginez la communication entre un Arduino UNO ou mega et un de vos composant 3.3V.

Si vous voulez envoyer un 0 tout va bien. GND d'un côté et de l’autre, vous les avez reliés donc tout le monde est d’accord sur ce qu’est 0 et pas de soucis.

Mais si Vous voulez envoyez un 1... pour ce faire votre Arduino met la Pin de sortie à 5V. Mais voilà de l’autre côté le composant lui ne sait gérer des 1 qu’à 3.3V Seulement ... et là c’est la cata, c’est comme si vous lui mettiez la langue sur le 220v - il meurt dans d’atroces souffrances... ayez pitié de vos composants 3.3V et utilisez un adaptateur sur les fils de commandes - ces adaptateurs traduisent une entrée à 5V en une sortie à 3.3v pour que le composant cible vive une longue et belle vie heureuse... :)

Sinon certains composants sont dit « tolérants à 5V » même s’ils sont en 3.3 V ça veut dire que leur concepteur a pris soin de protéger « un peu leur langue » et que si vous balancez trop de jus (5V) il va supprimer la tension additionnelle pour juste laisser 3.3V passer et pas de mort dans d’atroces souffrances. En gros L’adaptateur de tension est intégré

Et si vous êtes curieux - vous comprendrez qu’un problème inverse peut se produire. Si vous avez un composant où le 1 est représenté par environ 3.3V qui veut envoyer son 1 à un composant qui travaille en 5V que va-t-il se passer ? La pin est mise à environ 3.3V et pour le composant lecteur cette tension est tout a fait acceptable - pas d’atroces souffrances puisqu’il supporte jusqu’à 5V - mais cette valeur est parfois trop loin des 5V pour qu’il reconnaisse un 1. Il va croire qu’il a reçu un 0 et là c’est votre programme qui foire.

Donc règle générale : assurez vous que les 1 envoyés arrivent comme des 1 et pas des 2 (atroces souffrances) ou des 0 (bug logiciel) . Le petit adaptateur de tension sert à cela

C’est clair ?

Oui c’est assez clair…

Ce qu’il y a de fou, c’est que de toutes les pages internet et tutoriels que j’ai épluché, y en a aucune qui parle de ça…

Chaque fois, c’est GND au GND de l’arduino, Vcc aux pins 5v ou 3.3v de l’arduino et le pins de commande au pin X de l’arduino… Mais nulle part j’ai vu passer une alerte sur le pin de commande et de devoir mettre un adaptateur de tension entre…

Une petite précision, c’est que tout de même, avant que je me mette à essayer d’utiliser une alimentation “externe” pour mes composants plutôt que les 2 sorties 3.3/5v, tout “fonctionnait”.
J’ai ajouté composants après composants et c’est seulement après avoir ajouté plusieurs composants 5v que l’on voyait que ça commençait un peu à manquer de pêche.

Mais bon l’information est bonne à prendre… Faut de coup que je creuse la question.

Je me doute qu’il y a sûrement une merde aux niveaux de mes composants… Mais comment expliquer le comportement de l’arduino du coup ?! Celui ci était tjrs relié au PC par l’usb et aux pins de commandes des composants via les pins de l’arduino et depuis que fais ces tests, il ne semble même plus marcher, je le branche au PC, il est reconnu 3 sec, semble démarrer puis s’éteint tout seul…

Du coup pour ce qui est des composants que j’utilise :

  • sur alim 3.3v : 1 lecteur RFID

https://www.amazon.fr/dp/B075FLJT4C/_encoding=UTF8?coliid=I16OUY6PXMR2DK&colid=6Y11IYEZL0SV&psc=0

  • sur alim 3.3v : 2 sondes de température DS18B20
  • sur alim 5v : 1 sonde DHT22
  • sur alim 5v : 1 relais 5v 4 channels
  • sur alim 5v avec interface i2c : 1 écran LCD 16x2
  • sur alim 5v avec interface i2c : 1 horloge RTC DS3231

https://www.amazon.fr/dp/B00K67X496/_encoding=UTF8?coliid=I1K7D0AANIN4Z1&colid=6Y11IYEZL0SV&psc=0

  • sur alim 5v : 1 module Bluetooth HC-05 (au niveau des pins de commande, lui je sais qu’i’ y a un mic mac avec l’alim 5v et des résistances au ratio 1:2 pour faire un pont diviseur de tension)
  • sur alim 5v : 1 servo moteur

J’ai aussi, mais il n’était pas connecté hier au moment de mes tests 1 solénoïde sur alim 12v via un transistor TIP120 NPN.

Voilà je pense avoir fait le tour…

Merci d'éditer votre poste et mettre les lien cliquable comme cela.

https://www.amazon.fr/dp/B075FLJT4C/_encoding=UTF8?coliid=I16OUY6PXMR2DK&colid=6Y11IYEZL0SV&psc=0

cela facilitera le lecteur et y aura plus de réponse.

Je pense que le modules suivants vont cramer très rapidement si ce n'est déjà le cas:

le lecteur rfid en 3.3V aucune info de tolérance du 5V

Le Ds18b20 car alimenté en 3.3V et communication avec arduino 5V

et le module Bluetooth car effectivement s'alimente en 5V (régulateur 5V -3.3V intégré) mais communication en 3.3V (un doute sur cette partie)

Ok, j'ai modifié.

Ce qu'il y a d'étonnant quand j'essaye d'alimenter mes composants avec le module d'alimentation et pas l'arduino, c'est qu'on "alerte" sur les composants alimentée en 3.3v alors que c'est ceux alimentée en 5v qui semblent poser problème :

  • si je connecte juste les composants 3.3v au module, le module semble fonctionner (la led verte s' allume et reste allumée)

  • si je fais pareil avec juste les composants en 5v, là... La diode du module d'alimentation s'éteint...

Tout ça sans même que l'arduino soit allumé et qu'on s'expose aux problèmes de tension de commande abordés précédemment...

Il ya forcément un des modules HS, Quand je disais étape par étape, on pouvait aussi entendre.

Connecter un module , le tester, et le retirer si fonctionnel.

Passer à un autre module et ainsi de suite.

On finira par poser la main sur un qui dysfonctionne. La led du module d'alimentation qui s'éteint, c'est très mauvais signe.

Oui c'est ce que je vais faire...

J'espère quand même ne pas avoir cramé l'arduino au passage !

Bon... Good news, déjà l'arduino n'est pas HS

J'ai donc débranché tous câbles reliés aux + et enlevé toit ce qui ne m'était plus utile (servo, nodeMCU).

Puis j'ai tout rebranché un par un...

Au final, vu que j'ai 2 composants sur alimentation 3.3v (sondes DS18B20 et lecteur RFID), j'ai laissé ceux-ci sur le pin de sortie 3.3v de l'arduino.

Du coup, j'utilise les 2 voies du module d'alimentation en 5v sur lesquels j'ai dispatché les autres composants (LCD + RTC via i2c sur une voie et le reste sur l'autre).

De ce que je pense être merdique, c'est déjà la planche d'expérimentation sur laquelle je branche le module d'alimentation, suivant où je la plugg, ça déconne... notamment avec ce problème de diode sur le module... Et y a peut-être aussi ma carte relais, mais comme lors du tes je l'ai branché sur cette même planche d'expérimentation, j'ai des doutes sur la qualité des connexions !

Avec cette configuration, tout remarche !!!

Oufff, je vais pouvoir passer mon week-end plus sereinement...

Je vais vite m'empresser d'ajouter à ma prochaine commande de nouvelles planches d'expérimentation et voir ces fameux modules d'adaptation de tension...