Crazymakers

Faites-le vous même!

Chinese (Simplified)EnglishFrenchGermanItalianRussianSpanish
SOUTENEZ-NOUS!
Déjà 28 personnes nous ont soutenu.
Nous vous en sommes très reconnaissants.
69.733333333333 %
RETROUVEZ NOUS SUR:
  • Youtube
  • facebook
  • Instagram
  • Twitter
Logo CrazyMakers

Un chargeur pour piles alcalines non rechargeables.

Fabrication d'un chargeur pour piles alcalines réputées non rechargeables. Les piles pourront être rechargées jusqu'à 10 fois.




La culture maker (de l'anglais make, lit. faiseur) est une culture (ou sous-culture) contemporaine constituant une branche de la culture Do it yourself (DIY) (qu'on peut traduire en français par « faites-le vous-même »).          (Source: Wikipedia)
les "Crazy Makers" sont les plus fous et les plus passionnés des makers...

Catégorie

High-Tech

Niveau de difficulté

temps nécessaire

5 à 6 Heures.


Resultat recherché

On doit réaliser 4 circuits régulateurs variables basés sur 4 LM317 qui produisent du 1.7V. Via l'arduino, on enverra ou non de la tension dans les piles via le pin D13. on pourra lire la tension aux bornes des piles via les entrées analogiques A0 à A3 du NANO. et on pourra piloter 4 Duoled via les Pins D4 à D11. La carte pourra être alimentée en 7-12V.

Matériel

  • 5x Régulateurs LM317
  • 4 Potentiomètres 100Ohms
  • 9 Diodes Type 1N4002
  • 5 Condensateurs céramiques 0.1uF
  • 4 Résistances 1/4W 220ohms
  • 5 Résistances 1/4W 1.5Kohms
  • 1 Résistance 1/4W 680ohms
  • 1 Condensateur Radial 1uF
  • 4 DuoLed
  • 1 Arduino Nano
  • Connecteurs type XH et connecteurs noirs sécables.
  • De la nappe de fils
  • Un vieux chargeur de piles

Conception électronique

Le chargeur est basé sur 4 régulateurs LM317de ce type pilotés par un arduino. Voici le schéma électronique du système. On retrouve nos 4 régulateurs pilotés par l'arduino Nano.

Circuit régulateur LM317

Schéma global du chargeur

Le routage du circuit... Il n'est pas très compact ni optimisé mais le PCB sera gravé par mes soins de manière artisanale. d'où le besoin de ce dimensionnement. Une vue 3D sous proteus de la carte de commande du chargeur... certains composants sont mal affichés car il s'agit de composants perso.

PCB (circuit imprimé) du chargeur de piles alcalines

Visualisation du circuit sous Proteus

Côté "porte piles", on raccorde le moins des piles au GND et chacune des 4 autres sorties du connecteur 5 points à une pile.

J'ai exporté deux types de fichiers Gerber:

Version complète pour fabrication Pro (Exemple: OSHPARK).

Version Light pour fabrication artisanale avec juste top et bottom copper.

Programmation de l'Arduino

Le programme est très simple; on teste la pile, on stocke les états des leds de status dans des tableaux, on lit ces tableau et active les leds nécessaires, on lance une charge, on affiche les tensions sur le port serie, on fait une pause, on affiche les tensions à vide sur le port série après avoir désactivé les Leds... On boucle...

Télécharger le programme Arduino (.ino)

float COEFFICIEN_VOLTS = 231.3529;

float TEMPS_CHARGE = 120;
float TEMPS_PAUSE = 5;
float TENSION_CONSIGNE = 1.60;
float TENSION_PILE_HS = 1.25;

int LED_ERREUR_PILE[] = {4,6,8,10};
int LED_CHARGE_PILE[] = {5,7,9,11};
int PIN_READ[]={3,2,1,0};
boolean CHARGE_OK[]={false,false,false,false};
boolean CHARGE_KO[]={false,false,false,false};

int PULSE_CHARGE = 13;

void setup() {
Serial.begin(9600);
//Pin d'impulsion de Charge
pinMode(13, OUTPUT);
//Pins de Charge 4,6,8,10
//Pins de défaut 5,7,9,11
for (int i = 4; i <=11; i++)
{pinMode(i, OUTPUT);}
}

//Fonction de lecture des Tensions
float TENSION_PILE_CHARGEUR(int pin)
{float value = 0.0; value = analogRead(pin); return value / COEFFICIEN_VOLTS;}

void loop() {

//------------ DEBUT DE TEST DES TENSIONS DES PILES ------------

for (int i = 0; i < 4; i++)
{
//Si la tension mesurée est inférieure à la limite PILE HS alors allumage des d'erreur.
if (TENSION_PILE_CHARGEUR(PIN_READ[i]) < TENSION_PILE_HS)
{CHARGE_KO[i]=true;} else {CHARGE_KO[i]=false;}
//Si la tension mesurée est inférieure à la consigne alors allumage des voyants de charge sinon Arrêt voyant de charge.
if (TENSION_PILE_CHARGEUR(PIN_READ[i]) < TENSION_CONSIGNE) {CHARGE_OK[i]=true;} else {CHARGE_OK[i]=false;}
}

for (int i = 0; i < 4; i++)
{
// Si il y a une erreur alors on allume la LED associée sinon on l'éteint.
if (CHARGE_KO[i]==true) {digitalWrite(LED_ERREUR_PILE[i],HIGH);}else {digitalWrite(LED_ERREUR_PILE[i],LOW);}
// Si pas d'erreur, allume le voyant de charge.
if (CHARGE_OK[i]==true) {digitalWrite(LED_CHARGE_PILE[i], HIGH);}
// Si pas d'erreur mais charge désactivée (Car pile chargée) on éteint les leds.
if (CHARGE_OK[i]==false and CHARGE_KO[i]==false) {digitalWrite(LED_CHARGE_PILE[i], LOW);}
}

//---------------- MISE EN ROUTE DE LA CHARGE ----------------

//Ecriture Serial Début de charge
Serial.println("Debut de charge de " + String(TEMPS_CHARGE) + " Secondes");

//Début de Charge
digitalWrite(PULSE_CHARGE, HIGH);
//Délai de charge
delay(TEMPS_CHARGE * 1000 - 500);

//Ecriture des tensions en fin de cycle charge:
Serial.print("Tensions de fin de charge:\n");
for (int i=0;i<4;i++){Serial.print(String(TENSION_PILE_CHARGEUR(PIN_READ[i]), 3) + "v ");}
Serial.print("\n");

//-------------------- ARRET DE LA CHARGE --------------------

//RESET des Leds
for (int i = 3; i >= 0; i--) {digitalWrite(LED_CHARGE_PILE[i], LOW);}
//Arrêt de la charge
digitalWrite(PULSE_CHARGE, LOW);

//Ecriture Serial Début de pause
Serial.println("Pause de " + String(TEMPS_PAUSE) + " Secondes");

//Pause de charge
delay(TEMPS_PAUSE * 1000 - 500);

//Ecriture des tensions à vide
Serial.print("Tensions a vide:\n");
for (int i=0;i<4;i++){Serial.print(String(TENSION_PILE_CHARGEUR(PIN_READ[i]), 3) + "v ");}
Serial.print("\n\n");


}

Fonctionnement

Au début du cycle de charge, le programme effectue une vérification de l'état des piles insérées... Si la tension mesurée est inférieure à 1.25V (Pas de pile ou pile HS), alors la led rouge associée est allumée. Si la tension mesurée est inférieure à la tension de consigne, alors on allume la led de charge. Si la pile est chargée les led rouge et bleue sont éteintes. La pile continue à recevoir une tension de charge tant qu'elle est dans le chargeur...

Projet terminé

Chargeur Piles alcalines terminé

Chargeur Piles alcalines terminé 2



Crazymakers le 2019-09-08 21:07:05
Non pas retrouvé les fichiers proteus!
Après, l'intégralité des circuits et programme sont à disposition!

lolo1878 le 2019-09-08 15:42:05
Bonjour,
Personne n'a retrouvé les sources de ce projets!!
C'est bien dommage !!!

lolo1878 le 2019-05-20 14:10:45
Merci beaucoup

Crazymakers le 2019-05-08 11:29:03
Je vais essayer de les retrouver...

lolo1878 le 2019-05-08 07:42:35
Bonjour,

Je souhaiterais réaliser ce projet, pouvez-vous remettre en ligne le fichiers Gerber.
Merci beaucoup
Laurent

Page de commentaires:
1 - 2
Commentaires par Page
5 - 10 - 20

Vos commentaires seront lus par d'autres visiteurs et seront affichés en page d'accueil.
Merci de bien vouloir soigner la rédaction de vos messages.



Attention, suite aux nombreux spams et messages anonymes, en postant un commentaire,
comme sur un forum,votre ip:35.173.233.176 sera stockée sur notre base de données.
En postant un commentaire, vous recevrez un message à chaque fois qu'un utilisateur y répondra.