Bonjour,
J'ai fait un autre plan pour mes batteries:
Voici la datasheet du transistor NPN PBSS302NZ 20V, 5.8A:
www.nxp.com/documents/data_sheet/PBSS302NZ.pdf
Dans mon plan supposons que l'arduino est plein de capteur et qu'en tout l'arduino consomme 500mA et la petite boite à coté de l'arduino consomme 4A.
En tout le montage consomme 4.5A.
Si mon montage consomme environ 4.5A, ma batterie de 5000mAh va durer 1 heure et 6 minutes.
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.
J'ai décidé de mettre un transistor NPN en commutation (c'est comme un interrupteur) pour protéger la batterie.
Un interrupteur 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.
Voici mes calcule:
L'intensité du collecteur du transistor IC = 4.5A
// l'intensité de la basse du transistor (IB) = IC / hfe.
IB = 4.5 / 200 = 0.0225 ampères.
//La règle à suivre pour que le transistor soit saturé est (IB > IC / hfe).
// Pour trouver la valeur de la résistance pour la basse du transistor (R = Vcc / IB).
R = 8.6 / 0.0225 = 382 ohms // la valeur en ohms pour 8.6 volts.
// Si je met à la place une Résistance 300 ohms et je fais (I = U/R):
// quand la batterie va avoir une tension de 8.6 volts:
8.6 / 300 = 0.286 Ampères (IB) // IB (0.286) est plus grand que IC / hfe (0.0225) alors le transistor est saturé.
// quand la batterie va avoir une tension de 6 volts:
6 / 300 = 0.020 Ampères (IB) // IB (0.020) est plus petit que IC / hfe (0.0225) alors le transistor est bloqué.
J'ai aussi rajouté un Interrupteur à Bascule pour ouvrir et fermer le circuit manuellement.
Voici mon plan:
Pour mon code:
Pour avertir si la batterie doit être rechargé.
Si la batterie fait 7.2 volts la broche analogique 0 va recevoir 4.186 volts et si la batterie fait moins que 7.2 volts la broche analogique 0 va recevoir moins que 4.186 volts.
int test_voltage_pin = 0;
int valeur_voltage;
void setup()
{
}
void loop(){
valeur_voltage = analogRead(test_voltage_pin); // Lire le voltage sur la broche analogique 0.
if(valeur_voltage < 856) // si la tension est plus petite que 4.186 volts.
{
// la batterie doit être rechargé.
}
delay(1000); // pause 1 seconde.
}
Mon plan est-il correcte?
Qu'en pensez-vous?
Merci