Go Down

Topic: Batteries en série et paralelle (Read 4 times) previous topic - next topic

demss

#30
Mar 27, 2010, 10:36 pm Last Edit: Mar 27, 2010, 11:34 pm by userid3456789 Reason: 1
Bonjour,

J'ai fait un autre plan.
Pour simplifier l'explication de mon plan c'est une batterie 5000mAh à 7.2V qui alimente un projet qui a besoin de 4.5A et 7V pour fonctionner.

Mon but est d'avoir 2 interrupteurs:
1) un interrupteur à bascule pour ouvrir le circuit quand j'ai pas besoin de faire fonctionner mon projet.
     Pour pas que la batterie ce décharge.

2) un interrupteur intelligent qui s'ouvre quand la batteries est rendu à 6 volts pour quelle ne se décharge pas plus.
      Pour pas descendre sous la tension critique pour pas endommager la batterie.
     Quand la batteries 7.2 volts est pleine disons quelle fourni 8.6 volts.
      Et plus la batterie travaille plus elle s'épuise et diminue en tension vers le 0 volt.
   
Pour ça j'ai utiliser un AtMega328 et un relais 3Vcc:
http://www.robotshop.ca/atmega328-chargeur-initial-arduino-sfe.html
http://radiospares-fr.rs-online.com/web/search/searchBrowseAction.html?method=searchProducts&searchTerm=Relais+CI+1NO-NO+%C3%A0+accrochage+3V+16A&x=0&y=0

Pour alimenter l'AtMega et le relais j'ai utiliser un régulateur de tension LM7833 pour que c'est composant soit alimenté à 3.3V.
http://www.sparkfun.com/commerce/product_info.php?products_id=526

Pour vérifier combien de volt la batterie envoie, j'ai fait un pont diviseur avec une première résistance 400 ohms et une deuxième résistance 250 ohm. Et j'ai relier ça sur la broche 5 analogique de l'AtMega.
http://www.electronique-radioamateur.fr/elec/schema/calcul-diviseur-tension.php

Pour le code de l'AtMega:
Pour ouvrir le relais si la batterie envoie moins que 6V.
Si la batterie fait 6 volts la broche analogique 5 va recevoir 2.304 volts et si la batterie fait moins que 6 volts la broche analogique 5 va recevoir moins que 2.304 volts.
Code: [Select]
int test_voltage_pin = 5;
int valeur_voltage;

void setup()
{
pinMode(10, OUTPUT);
digitalWrite(10, LOW);
}

void loop(){

     valeur_voltage = analogRead(test_voltage_pin); // Lire le voltage sur la broche analogique 5.

     if(valeur_voltage < 714)  // si la tension est plus petite que 2.304 volts.   (1023 = 3.3 Volts)
     {
           digitalWrite(10, LOW);    // le relais s'ouvre.
     }
      else
     {
             digitalWrite(10, HIGH);   // le relais se ferme.
     }
 delay(1000);  // pause 1 seconde.
}



Pour le transistor j'ai pris un transistor NPN 2N2222.
Voici mes calcule:

La bobine du relais consomme une intensité de (3.3 volts / 21 ohms = 0.157 ampères) (c'est l'intensité du collecteur du transistor IC)
Pour la résistance du relais c'est environ 21 ohms pour 3.3V.

Il y a 2 formules à faire pour trouver la valeur de la résistance entre la basse du transistor et la broche de l'atMega.

// l'intensité de la basse du transistor (IB) = IC / hfe.
IB = 0.157 / 75 = 0.0021 ampères.

// La résistance = 3.3 volts / IB.
R = 3.3 / 0.0021 = 1571 ohms        // Moi j'ai mit une résistance de 1500 ohms à la place.

Voici le plan de l'Atmega:


Voici mon plan:


Qu'en pensez-vous?

Dois je mettre une batterie plus forte que celle que j'ai mise sur mon plan pour que ça fonctionne bien pour un projet de 4.5A à 7V?

Merci

fdufnews

L'ATmega 328 ne fonctionne pas à 16MHz en 3,3V. En 3,3V la doc constructeur, donne une fréquence max de 12MHz

ekaki

Ok, je comprends mieux maintenant -.^

Concernant tes questions à propos de la batterie; je ne sais pas quelle autonomie tu cherches à avoir, mais tirer 4.5A sur une batterie de 5A cela ne va pas durer longtemps (en fonction du type de batterie et de la température ambiante) et c'est assez violent pour la batterie de l'utiliser à quasiment C1 (sa durée de vie va être raccourcie et cela va chauffer sous la couette si je puis dire ^.^).
Il faudrait avoir les caractéristiques de la batterie mais il y des chances que 5A soit donné pour C20 ou au mieux C10, et donc qu'à C1 elle ne puisse réellement délivrer que 2 ou 3A.

Et comme je te le disais aussi, il faudrait voir quelle type de batterie serait le plus adapté car avec l'effet Peukert (lié à la résistance interne de la batterie) il risque d'y avoir une chute de tension notable avec une telle charge.

A titre de comparaison, avec une batterie gel 12V 7A, à C2 (donc 3.5A de charge) on a à peu près 75% des 7A réellement disponibles à ~20°C et une chute de tension de l'ordre de ~0.3V.
Certes, il y a des batteries plus "adaptés" aux grosses charges, mais c'est déjà un beau petit camion -.^ (batteries pour onduleurs à la base)

Autre point; j'ai vu dans ton programme que tu considérais qu'à Vbatt. = 2.3V il faut arrêter de tirer dessus, mais _sous réserve d'un type de batterie "spécial"_ à 5.7V elle sera déjà complètement à plat. Donc il y a des chances de ne jamais atteindre cette condition ou si elle est atteinte que la batterie soit morte.

demss

#33
Mar 28, 2010, 05:06 am Last Edit: Mar 28, 2010, 06:39 am by userid3456789 Reason: 1
Merci fdufnews pour ton aide!  :)

Alors quand on alimente un AtMega328 sur 3.3V ça prend un cristal à 12Mhz.
Et quand on alimente un AtMega328 sur 5V ça prend un cristal à 16Mhz.


Merci ekaki pour ton explication sur les batteries!  :)

Les seule batteries que j'ai trouvé pour alimenter mon projet sont ceux la:
http://www.robotshop.ca/batterie-7v-3800mah-li-mn-duralite.html

J'en ai besoin de 2 batteries 3800mAh à 7.4V pour avoir une batterie de 7600mAh à 7.4V.
230$ USD c'est couteux.

Avec ces 2 batteries, pour C1 j'ai 7.6A.
Et je peux alimenter mon projet seulement 1 heure et 40 minutes.

Très important, je veux que la batterie soit suffisamment légère pour être porté sur une ceinture.
Les batteries gel 12V 7A c'est trop lourd.

Il y a surement des batteries moins couteuse que 230$ pour alimenter mon projet durant au moins 3 heures?

Quote
Autre point; j'ai vu dans ton programme que tu considérais qu'à Vbatt. = 2.3V il faut arrêter de tirer dessus,

Non 2.3V sur la broche 5 analogique = 6V pour la batterie à cause du pont diviseur de tension. (et 3.3V sur la broche analogique 5 = 8.6V pour la batterie)
Il faut arrêter de tirer dessus quand Vbatt. < 6V.
Regarde sur ce site http://www.electronique-radioamateur.fr/elec/schema/calcul-diviseur-tension.php et écrit VCC = 6, R1 = 400 et R2 = 250 tu vas voir.
Au début j'avais écrit R1 = 401 c'est pour ça que ça donnait 2.304. Je voulais pas mettre 3 résistances pour 401 ohms.

Merci

demss

J'ai trouver cette batterie 5200mAh à 7.4V.  (C1 = 5.2A)
https://duraliteflightsystems.com/index.php?route=product/product&product_id=168

Pour $72.95 USD
Cette batterie dure 1 heure et 9 minutes.

Pour 2 batteries en parallèle = $145.90 USD
Cette batterie dure 2 heures et 18 minutes.

Pour 3 batteries en parallèle = $218.85 USD
Cette batterie dure 3 heures et 27 minutes.

C'est mieux que l'autre batterie mais c'est toujours très couteux.

Connaissez-vous mieux?

Merci

fdufnews

Quote
Alors quand on alimente un AtMega328 sur 3.3V ça prend un cristal à 12Mhz.
Et quand on alimente un AtMega328 sur 5V ça prend un cristal à 16Mhz.

C'est pas que ça prenne une fréquence ou l'autre en fonction de la tension. C'est que c'est la fréquence maximum à laquelle on peut faire fonctionner le processeur pour telle ou telle tension.

demss

Merci fdufnews pour ton explication!  :)

ekaki

Quote
C'est mieux que l'autre batterie mais c'est toujours très couteux.

Connaissez-vous mieux?

C'est clair qu'il va être difficile de trouver des batteries "optimisées" pour une décharge à C1 et pas cher... -.-

demss

#38
Mar 29, 2010, 11:21 pm Last Edit: Mar 29, 2010, 11:39 pm by userid3456789 Reason: 1
Si j'alimente un AtMega328 sur 3.3V, dois je changer le bootloader de l'atmega et changer le code du programme Arduino 0018?
Pour que l'atmega fonctionne avec un cristal de 12Mhz?

Ce serais tu plus simple de mettre un cristal de 8Mhz et dans la sélection de la carte de mettre l'option Arduino Pro or Pro Mini(3.3V, 8MHz) w/ ATmega328?



Merci

Go Up