Régulation de tension vers ESP32

Bonjour bonjour,

Je reprend après un temps mes petits projets à la c*n ^^
J'avais pris du temps à réparer une machine à café, maintenant je reprend plus calmement et doucement.

Alors, voici ma situation :

J'ai une batterie Bosch, 12v 3.0 Ah Li-Ion, elle alimente un ESP32 via Vin et GND.
Ce ESP32 à en sortie GPIO : Un Buzzer, 2 LEDs et j'aimerais bien rajouter un indicateur de charge de la dite batterie, mais ce dernier points je ne sais pas comment faire.

Première question, dois-je réguler ma tension d'entrée ? 12V est acceptable mais pour du long termes et pour un gain en fiabilité, ne vaudrais t'il pas mieux passer le 12V en 9 ou 5V ???

Ensuite ce ESP 32 Communique via ESP-NOW (toujours pour tester des possibilités avec ce protocole pour bien me familiariser avec) avec un autre ESP 32.
Ce deuxième ESP32 fonctionne lui aussi avec une batterie 12V Bosch à les mêmes sorties.
Ce qui diffère de mes deux Cartes (appelons les A et B) est la suivante :

  • Ma carte A à un pont en sortie de batterie, le 12V va vers Vin et également vers une pointe de test, un peu comme les pointes de test des multimètres.
  • Ma carte B, elle à une pointe de test qui va vers ses entrées (à réguler pour du 3,3V il me semble)

L'idée est donc de tester si un fil va bien d'un point 1 à un point 2 sur des longues distances, la carte A envoie donc du 12V dans un fil, la carte B attend une arrivée électrique sur une de ses pin (12V régulé en 3,3V pour pas tout faire griller) une fois quelle reçoit cette arrivée électrique, la carte B fait bip sur son buzzer et envoie un message à ma carte A en mode : "vas y bip aussi ! j'ai bien tout reçu" et la carte A une fois ce message reçu bip elle aussi.

Pourquoi ESP32 et ESP NOW c'est que je veux tester des projets avec cette carte et ce protocole
Une LED pour indicateur ON/OFF du système
Une autre LED quand la communication est établie entre les deux cartes
J'aimerais bien rajouter un indicateur de l'état de charge mais ça je ne sais pas encore faire mais je ne me suis pas encore renseigné d'ailleurs.
Un buzzer pour faire un bip

L'intérêt du projet est faible, c'est pas vraiment un gros projet avec cahier des charges, c'est plus des idées pour que je passe du temps à découvrir des idées et possibilité avec cette carte. Même si ça paraît bête car un multimètre avec des long fil et test de continuité c'est cool...

Ah et pourquoi batterie bosch 12V, c'est que j'en ais plusieurs et j'ai des adaptateurs comme ceux ci : FEMSIS For Bosch 10.8-12V batterie au Lithium connecteur d'alimentation adaptateur support de quai 14AWG fils outils électriques accessoires : Amazon.fr: Bricolage

ensuite pour la régulation je me suis penché sur le LM1117T 3.3 : https://fr.rs-online.com/web/p/regulateurs-de-tension/5359256?gb=s
est ce que prendre celui ci pour réguler l'entrée GPIO serait correct ?
Et est ce que le LM1117T 9V pourrait être bien pour l'alimentation de mes ESP au besoin si nécessaire ?

Désole si mon message est soit mal écrit soit un peu brouillon

Il y a un régulateur de tension linéaire à l'entrée Vin de l'ESP.
la puissance dissipée par ce régulateur dépend de la cute de tension (ici 8,7 V) mais aussi de l'intensité du courant.

Donc tout dépends de ce que tu « tires » sur les sorties de ton ESP32. Limitée de toute façon à 120 mA ça peut quand même faire 1 W pour ce petit régulateur.

donc réguler Vin, inutile car déjà fait et ma batterie peut alimenter mon ESP32, (chaque ESP32 à 2 LED, un indicateur de charge de batterie, un buzzer et utilise ESPNOW c'est tout)

mais pour réguler mon 12V (sortie de batterie) pour le faire rentrer dans une broche GPIO d'un autre ESP32 en 3,3V, ici le LM1117T 3.3 devrais être sufisant

Si tu régules le 12V, tu ne pourras pas avoir

Tu auras un indicateur de la régulation (assez peu pertinent)

l'indicateur est optionnel pour le moment (je me perd peut peut être dans des détails désolé)m

mais pour faire rentrer la sortie de ma batterie dans une entrée GPIO je peux réguler ma tension avec le LM1117T ?

Si tu veux mesurer l'état de la batterie il ne faut pas utiliser un régulateur qui te délivrera 3.3V tant que la batterie ne sera pas complètement morte.

Il faut utiliser un pont de résistances pour abaisser le 12V à 3.3V. Ainsi tu pourras connaitre l'état de la batterie en connectant la sortie du pont de résistances à une entrée analogique.

non non, mon système est :

deux ESP32 fonctionnant chacun indépendamment avec chacun leurs batterie Bosch 12V
L'un des ESP32 renvoie le 12V sur une pointe de test

l'autre ESP lui attend de recevoir ce 12v sur un de ses pin avant de biper et d'envoyer un message avec ESP-NOW au premier ESP qui bipe lui aussi.
Mais ce 12V en entrée d'ESP GPIO je ne peux pas le laisser comme ça, c'est lui qu'il faut rabaisser à 3.3V et je me demandais si le LM1117T était convenable

Ensuite je rajouterais à part de ceci un moyen de visualiser l'état de charge de la batterie, c'est en option pour le moment

En gros ce serrais ceci
Et je voudrais y rajouter dans un futur un indicateur de niveau de charge
Ce serais une sorte de testeur de continuité sans fil, ou du moins un moyen de savoir si une tension passe bien d'un point A à un point B

Et mes questions sont les suivantes :

  • Dois-je réguler l'entrée de mon ESP32 (pas que la batterie donne de trop en tension ou intensité)
  • est ce que le LM1117T 3.3 serais correct pour une entrée GPIO
  • est ce que ce système semble faisable et correctement imaginé

C'est un régulateur de tension. On l'utilise pour alimenter des circuits.
Pour abaisser une tension on utilise un pont diviseur à résistances.

  • il faut des résistances en série avec les LEDs pour limiter le courant.
  • il faut une liaison de masse entre les 2 équipements.

donc remplacer mon LM1117T 3.3 dans mon schéma par un pont diviseur de tension et dimensionner mes résistance pour faire passer mon 12V en 3.3.
Ne risque t'il pas d'y avoir une intensité trop grande malgré tout pour une entrée GPIO de mon ESP32 ?
Et pourquoi le régulateur ici ne pourrait pas fonctionner je suis curieux d'apprendre et m'améliorer en sachant plus tard pourquoi utiliser un régulateur ou un PDT

La résistance d'entrée du GPIO est (très) grande : quasiment aucun courant ne va y rentrer. Par contre, configuré en INPUT le GPIO va te permettre de mesurer la tension U2. Celle-ci étant proportionnelle à U, tu peux calculer U = U2 * (R1 + R2)/R2 et donc avoir une idée (approximative) de l'état de ta batterie.

Attention, le courant I sera prélevé en permanence sur la batterie et va donc la décharger... À toi de dimensionner R1 et R2 pour que cela n'impacte pas trop l'autonomie du montage. (ou faire plus compliqué si c'est critique)

encore une fois, ici l'indicateur d'état de charge est une option que je voudrais rajouter plus tard, j'aimerais juste savoir si faut mieux abaisser mon 12V en 3.3V avec un régulateur ou un pont diviseur de tension :sob:

Je dois faire rentrer une tension dans une broche GPIO mais c'est du 3.3V max, et ce que j'y envoie est du 12V (sortie de batterie bosch 12V)

Ce petit système est une sorte de testeur de continuité sans fil, je rajouterais une visualisation de mon état de charge pus tard

Sur mon schéma:

puis-je garder mon LM1117T 3.3 ou faire un PDT

Si tu veux mesurer la tension du 12V il faut un diviseur de tension qui "entre" sur une entrée GPIO analogique

Si tu veux alimenter l'ESP32, tu utilises un régulateur et tu alimentes par les bornes 3,3V et GND ou par la borne 5V et GND

Si tu mets une tension de 12 V entre une pin GPIO et GND, tu crames ton ESP32.

Edit, si sur ton GPIO 21 tu veux juste vérifier la présence d'un état haut (~ 3,3V) et faire la différence avec un état bas (~ 0V) il faut le configurer en entrée NUMÉRIQUE et pas analogique. Mais là ce n'est pas un régulateur type LM qu'il faut mettre mais une résistance et une zener 3,3V en série.


Pointe de test ----- résistance -----------------> GPIO
                                        |
                                        |
                                        |
                                      |____
                                        /\ |
                                       /__\
                                        |
                                        |
                                       GND

Et comme dit plus haut, relier les deux GND

ou encore plus simple, et ça fonctionne quelles que soient les tensions d'alim, à condition de "descendre" d'une tension élevée vers une plus basse :


sans oublier :

c'est indispensable

L'entré ne change d'état que pour des tensions inférieures à 3.3V, au dessus, l'entrée reste à "high".

Bonjour, déjà merci pour vos retours,

Donc, mon but étant de savoir si j'ai bien du 12V qui arrive (en numérique HIGH ou LOW), donc savoir si sur mon GPIO 21 il y à bien une arrivée d'un quelque chose, je dois changer mon montage.

J'avais ceci : (manque d'ailleurs les résistances 220 Ohm pour mes LEDs) :

Mais je dois changer de montage et ne pas mettre mon LM1117T 3.3 (pas sur d'avoir bien compris pourquoi cela ne fonctionnerais pas)

Et je dois le changer comme ceci, si j'ai bien tout suivi :

Je ne veux pas mesurer ce 12V mais le but est de savoir si il y à du 12V ou 0V, si il y à 0V (LOW) la carte ne fait pas de bip, si il y à 12V, régulé en 3.3 pour pas griller mon GPIO (HIGH) là ma carte émet un bip et un message ESP NOW pour que la carte qui à envoyé le 12V initialement, bipe aussi.
Je suis preneur d'explications pour savoir le pourquoi du comment dans le but de m'améliorer et même si le concept du projet est débile, je passe du temps libre sur des idées débiles pour comprendre mon matériel et les différentes possibilités, c'est plutôt marrant.

Comme ont dit de petits personnes de BD en 2D sur un monde où si tu es de l'autre coté de la planète tu tombe : "Pourquoi faire simple quand on peut faire compliquer"

j'ai trouvé ce schéma aussi...

                +12V
                  |
               [ R1 ]
                  |
                  +-----------> GPIO ESP32
                  |                 |
               [ R2 ]            [ Zener 3.3V ]
                  |                 | (anode)
                 GND               GND

avec R1 = 10kOhm et R2 = 2.7kOhm et Zener = 3.3V 5W
Après recherche j'ai mieux compris pourquoi le LM était une mauvaise idée

PS j'ai trouvé ceci aussi :


(dernier schéma c'est du chatgpt... je voulais tester mdr mais j'ai peur en la fiabilité du machin)

Le pont de résistance réduit la tension au point milieu à 12 * 2,7/(10+2,7) = 2,6 V. (calcul écrit sans les unités, ne dites pas ça à mes élèves)
Inférieur à la tension Zener, la diode n'a aucun intérêt.

Ce montage sert donc plutôt à mesurer la valeur de ce 12 V et à protéger l'ESP32 d'un tension supérieure à 15,5 V
Si j'ai compris ce n'est pas tout à fait ce que tu cherches : tu attends plutôt du « tout ou rien »

C et 2,7k sont manifestement inversés, la Zener est à l'envers et ... le circuit est du n'importe quoi.

(Pour le moment) ChatGPT ne sais absolument pas tracer ni comprendre des circuits électriques.

Ça peut fonctionner mais à cause des condensateurs, la vitesse de réaction au passage de 10 à 0V sera très lente. Si tu actives une résistance de pulldown (s'il y en a, pas vérifié) elle est de l'ordre de 50kΩ et avec le condensateur de 10µF cela te fait une constante de temps RC de 500 ms. C'est long.
En ne prenant en compte que l'impédance d'entrée, ce sera plutôt 10 s. C'est trèèèèèèès long

Et sinon, c'est totalement overkill.