auto-coupure de l'alimentation de l'arduino temporisée par programme

Bonjour
J'ai un clone chinois d'arduino Mega 2560 que j'alimente directement (sur ses broches +5V et masse) à partir d'une source 12V au travers d'un module Buck convertisseur CC à base de LM2596 .

J'ai coupé la patte 5 du LM2596 afin de pouvoir gérer l'alimentation par programme.

L'idée est de permettre à l'arduino de couper lui même son alimentation pour redémarrer proprement après plantage, notamment suite à des problèmes de liaison internet.
Sur le plan soft, je sais faire, pas de problème.

Pour éviter les états hasardeux, il me semble que le mieux serait que l'arduino envoie un 0 sur une sortie donnée, par exemple la pin 12, lequel 0 appliqué à la base d'un transitor relierait la patte 5 à un +3V qui couperait donc la sortie 5V du module LM2596.
Avec un condensateur pour maintenir l'alimentation coupée pendant un petit délai, par exemple 1 seconde.

Comme il n'y aura plus de 5V en sortie, j'ai donc pensé à brancher le transistor en amont du module LM2596, c'est à dire sur le 12V qui lui ne serait pas coupé.

Je n'arrive pas à trouver les bonnes valeurs des résistances pour gérer correctement les 3 tensions 12V, 5V et 3V avec le délai.
Notamment, j'ai beaucoup de mal à avoir un 0 sur la broche 5 lorsque la commande est au +5V et un +3V lorsque la commande est à la masse.

En résumé, en temps "normal" la pin12 de l'arduino est à 1 (+5V) la broche 5 du module CC LM2596 est à la masse et sa sortie à +5V.

En cas de problème, l'arduino met sa pin12 à 0, ce qui devrait mettre la broche 5 à +3V et donc couper l'alimentation de sortie 5V pendant un petit délai, puis le transistor se mettrait au repos en remettant la broche 5 à la masse et donc rétablissant la sortie 5V pour que l'arduino redémarre.

Je souhaiterais un montage simple si possible avec peu de composants car je dois le répéter sur plusieurs arduinos.

Je joins mon schéma mais suis tout à fait prêt à l'abandonner au profit d'un meilleur.

Merci d'avance pour tout conseil et suggestion.

PS : si en plus je pouvais gérer une limitation d'intensité de sortie autour de 400 ma, ce serait le top ...

Je compte aussi insérer une résistance de 1 Ohm entre le +12V et l'entrée + du module CC afin d'appliquer (avec un pont diviseur) la tension sur une entrée analogique de l'arduino qui mesurera ainsi l'intensité qu'il consomme.
Mais ça c'est plutôt facile à faire.

??

L'idée est de permettre à l'arduino de couper lui même son alimentation pour redémarrer proprement après plantage, notamment suite à des problèmes de liaison internet.
Sur le plan soft, je sais faire, pas de problème.

Si l'arduino veut redémarrer pourquoi passer par une coupure de l'alimentation plutôt que de faire un reset soft? Pas de composants à rajouter!

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.