Alim solaire d'un esp8266 [Résolu]

Comme beaucoup je voudrais mettre mon esp8266 et ses parties dans un coin avec une batterie et une cellule solaire.

J'ai donc une cellule : 4,5W 6V qui est branchée sur un chargeur TP5000 (en configuration lifepo4) qui charge un accu Lifepo4 protégé par un BMS.

Dans cette configuration le soleil recharge la batterie et le bms protège d'une décharge trop profonde en cas de manque de soleil.

Parfait....

Sauf que si le soleil vient à manquer durant plusieurs jours l'esp va vider la batterie et le BMS coupera le circuit.
Encore parfait

Mais si le soleil revient, pas d'un seul coup, l'esp va redémarrer mais mal car l'accu est coupé et la cellule n'est pas encore capable de fournir assez d'intensité et il va faire n'importe quoi et surtout ne pas exécuter le programme seul un reset de l'esp permet de s'en sortir mais je ne serais pas là !

J'ai envisagé un circuit pour gérer le reset du microcontrôleur avec un circuit adapté mais bof...

Le TP5000 possède une led bicolore, une des couleurs est commandée par la mise à zéro d'une sortie du TP5000 quand la batterie est chargée.

Si on se branche sur cette patte on peut rendre passant un mosfet P quand l'accu est chargé et donc l'esp démarre.

C'est de la théorie personnelle : elle est-sensée ?

Ensuite comment maintenir le mosfet passant ? Je suis trop newbie pour savoir

Bonjour

l'ESP8266 pourrait, par un GPIO disponible, assurer l'auto maintien de la conduction du Mosfet après que celle-ci ait été amorcée par le TP5000 (sortie /STDBY)

voyant 'chargé' -> conduction initiale du MOSFET -> démarrage ESP8266 -> mise à zéro d'un GPIO -> conduction maintenue du MOSFET

Voir les effets du démarrage de l'ESP8266 sur la tension aux bornes de l'accu et un repassage éventuel en mode charge. Vérifier donc qu'une séquence complète amorçage/auto maintien a le temps de s'établir

Il manque à l'ESP8266 un circuit interne de supervision de la tension d'alimentation, au moins un 'brown out detector', ça implique de soigner l'établissement et le maintien de la tension d'alimentation.

J'ai sous la main ESP, TP5000, LifePo4 et pourrait faire quelques tests.
Le BMS est-il un modèle pour un élément LiFePo4 unique ?

Data Sheet TP5000 pour information : https://pdf.voron.ua/files/pdf/Microshema/TP5000_auto_translated_.pdf

Si l'ESP8266 est en sommeil la plupart du temps (est-ce le cas ?) je pense qu'une 18650 suffira pour plus de quelques jours.
Mais tout dépend de la batterie, de la carte et de la longueur des périodes d'éveil.

Le problème de l'activation d'un MOSFET à l'aide de la broche LED bleue est que cette LED s'allume lorsque la batterie est pleine. C'est dommage car l'ESP8266 peut fonctionner avec la tension nominale de la batterie, et par temps couvert le courant du panneau peut être suffisant (10%) pour recharger, même lentement.

As-tu fait un bilan des consommations sur une journée ?

Si l'ESP8266 est en sommeil la plupart du temps (est-ce le cas ?) je pense qu'une 18650 suffira pour plus de quelques jours.

Un 18650 en LiFePo4 convient tout à fait !!
l'IFR 18650 en 1500 mAh est mon accu préféré pour alimenter en direct entre 3,2 et 3,6V mes petits bidules. (sauf les cas particuliers où un régulateur 3V3 est préférable)
La disponibilité des TP5000 les rend faciles d'utilisation.

Après une longue période sans ensoleillement l'idée d'attendre une pleine charge pour démarrer parait intéresssante pour éviter un démarrage foireux de l'ESP8266.
(Ceux qui ont connu les débuts des ESP8266 se rappellent sans doute ce qui se passe en cas d'alimentation induffisante)

L'idéal serait un petit circuit intégré superviseur de tension maintenant en Reset l'ESP8266 tant que la tension d'alimentation n'est pas viable. (voir chez Maxim, Seiko...pour une référence consommant très peu de courant pour assurer la fonction)

Vous avez bien saisi le problème.
Théoriquement avec mon schéma l'esp ne fonctionne que quand l'accu est chargé et combien de temps le TP5000 va-t-il trouver que c'est le cas quand l'esp et ses dépendances va démarrer ? J'ai peur que cela soit très peu de temps et trop court.

Il faudrait que l'esp prenne le relais d'activer le mosfet...
Par une GPIO ? Je n'ai aucune idée du comportement d'une gpio durant l'initialisation de l'esp.
Est-elle à 0 ?
Et si c'est bon comment connecter la gpio sur la gate du mosfet : en direct ? cela devrait perturber le tp5000 ? Une diode entre le sortie /SDTBY et ?

Le BMS est pour un seul élément de lifepo4, lequel est suffisant pour l'esp.

Pour mon montage le temps de deep sleep sera calculé pour tenir même pour plusieurs jours mais on peut avoir beaucoup de jours sans soleil et les panneaux solaires ne peuvent pas être augmentés à l'infini... Ils prennent de la place et les accus sont lourds. En revanche une période d'arrêt exceptionnelle pour attendre la recharge complète suite à un accu à plat est envisageable. En revanche pas de reset manuel possible.

Un esp32 serait préférable ?

Pour mettre le rst de l'esp je n'ai pas trouvé de circuit facle à gérer et à provisionner

les GPIO sont pour la pluspart configurés en entrée sans pullup/down à la mise sous tension

le couplage des deux commandes de MOSFET peut se faire avec un 'OU' à diodes

ESP32 : consomme un peu moins en deepsleep (5µa pour un module nu , plus pour une carte avec régulateur et interface USB) MAIS la connection au point d'accès dure plus longtemps qu'avec l'ESP8266.
Au final le gain en autonomie dépend de la fréquence des réveils avec connection WiFi

Pour le petit CI de supervision de tension il faut chercher chez RS, Farnell, Mouser.....
Je pense à un MC34164-3 en mieux (moins de courant de repos, seuil de tension plus adapté)
Ce serait préférable à la gestion conjointe d'un MOSFET par TP5000 et ESP

Théoriquement avec mon schéma l'esp ne fonctionne que quand l'accu est chargé et combien de temps le TP5000 va-t-il trouver que c'est le cas quand l'esp et ses dépendances va démarrer ? J'ai peur que cela soit très peu de temps et trop court.

Cela risque effectivement d'être court, donc il faut un maintien.
J'ai un montage avec moteur alimenté par 18650 + TP4056. La LED rouge s'allume à la moindre rotation du moteur (100mA, donc inférieur à un réveil ESP8266).

Sinon un simple AOP monté en comparateur pour commander le MOSFET ?
Un MCP6141 consomme 600nA.
Alimentation 1.4V à 6.0V

J'ai l'impression que la référence KA75330 , proposée par Adafruit et ses renvendeurs, ferait l'affaire
Doc : https://cdn-shop.adafruit.com/product-files/3428/3428_Datasheet.pdf

description ici : Controleur de tension KA75330 3.3V - Boutique Semageek

On trouve ça pour 0,15 € environ chez Ali !!

pas de MOSFET à gérer avec ce type de solution !

En route donc !

TO92 en prime !!

je verrai bien une diode pour empêcher le retour de courant vers le panneau solaire quand sa tension est inférieure à celle de l'accu (courant ramené par la diode parasite du MOSFET interne du TP5000)

Mauvais pour le panneau et la conservation de la charge de l'accu en dehors des périodes d'ensoleillement.

diode.png

diode.png

Merci pour la solution du KA75330, et pour la diode... Je mettrais bien un mosfet P à la place
https://www.edn.com/wp-content/uploads/contenteetimes-images-edn-design-ideas-di5557-polarity-correcting-circuit-p-channel-mosfet-f1.png

Encore moins de chute de tension... Un FDD6637 que j'ai en stock serait un peu overkill... mais j'ai en stock...

la "diode" c'était pour amorcer la chose !!!

Mosfets canal N , canal P en protection de polatrité : une bonne vidéo

@hbachetti à détaillé sur cette page les utilisations inhabituelles des Mosfets :

y compris le monrage en 'diode idéale' à miroir de courant

Cela pourrait-il donner en carrément coupant l'alim de tout le montage en dessous de 3.3v

Ou bien vaut-il mieux mettre la sortie du KA75330 sur le reset du micro, je serais plus pour la solution ci-dessus mais je peux me tromper...

A vrai dire le KA75330 je ne le voyais pas là mais en forcage de Reset tant que l'alimentation n'est pas correcte.
L'ESP8266 serait en permence raccordé à la tension issue de l'accu via le BMS mais il ne démarrerait qu'avec une tension suffisante. (L'ESP8266 consomme très peu en Reset maintenu, un poil moisn qu'en deepsleep)

C'est comme cela que par le passé j'ai utilisé de manière satisfaisante des MC34164 de Motorola pour 'maîtriser' des microcontrolleurs 5V en cas d'alimentation trop faible .
reset forcé.png

J'ai commandé des KA75330 pour voir comment ils permettent de gérer les ESP lors des tensions trop faibles, au démarrage ou en cours de fonctionnement. Un Mega328 contient un 'brown out detector', pas un ESP8266.

reset forcé.png

Oui mais le reste des équipements vont consommer pour rien
Je mets à jour le schéma

OK, j'avais oublié ces composants complémentaires!

al1fch:
je verrai bien une diode pour empêcher le retour de courant vers le panneau solaire quand sa tension est inférieure à celle de l'accu (courant ramené par la diode parasite du MOSFET interne du TP5000)

Mauvais pour le panneau et la conservation de la charge de l'accu en dehors des périodes d'ensoleillement.

diode.png

Le TP5000 consomme 4µA sur la batterie si le panneau ne fournit rien, ce n'est pas grand chose.

Vérifier que la tension du panneau soit < 9V en plein soleil, sinon adieu TP5000.

Donc je vire les deux condos et le mosfet... Super !

Le panneau monte à 6v seulement

Avec ce que j'ai sous la main : petits panneaux 3V 120mA et 5V 60mA :
J'arrive à faire circuler un courant inverse élevé dans ces panneaux mis dans l'obscurité et par conséquent met une diode de protection en sortie (manips faite avec une alim de labo limitée en courant)