Perte de tension avec la batterie
✔ Ce sujet est résolu
frangipane
42 Messages
Le samedi 30 janvier 2021 à 10:48:12
Bonjour,
Je me suis renseigner je me suis rendu compte que les batterie lipo c'est très dangereux et très fragile.
D'après ce que j'ai lu, il ne faut pas tomber en dessous de 3.2V par
cellule pour que tout ce passe bien. Moi j'ai 3 cellules ce qui me fait
9,6V.
J'ai testé le petit programme qu'il y a dans "asservissement chapitre 8"
pour faire un drone qui doit compenser la baisse de tension de la
batterie. (Je l'ai adapté pour qu'il marche et qu'il me renvoie "pulse_length_escX")
Mais en faite j'ai rien compris. C'est quoi toutes les valeurs (en gras) ?
Je veux aussi que le drone stop les moteurs quand la tension se rapproche de 9,6V. Et peut-être avant, que le drone descend tout seul
quand il voit le danger venir.
En faisant un pont diviseur de tension, et en utilisant analogRead(0), c'est suffisamment précis ? Est-ce que c'est une bonne idée de couper
les moteurs. Quel piste je peux utiliser pour faire descendre mon drone tout seul ? (je le ferait peut-être plus tard, mais je veux quelque
chose qui coupe les moteurs par sécurité ou un retour que je peux avoir via par ex ma télécommande (fs-I6X avec son récepteur fs-x6b)
Merci d'avance pour vos réponses !
Je me suis renseigner je me suis rendu compte que les batterie lipo c'est très dangereux et très fragile.
D'après ce que j'ai lu, il ne faut pas tomber en dessous de 3.2V par
cellule pour que tout ce passe bien. Moi j'ai 3 cellules ce qui me fait
9,6V.
J'ai testé le petit programme qu'il y a dans "asservissement chapitre 8"
pour faire un drone qui doit compenser la baisse de tension de la
batterie. (Je l'ai adapté pour qu'il marche et qu'il me renvoie "pulse_length_escX")
void compensateBatteryDrop() {
if (isBatteryConnected()) {
int coeff = ((1240 - battery_voltage) / (float) 3500); pulse_length_esc1 += pulse_length_esc1 * coeff;
pulse_length_esc2 += pulse_length_esc2 * coeff;
pulse_length_esc3 += pulse_length_esc3 * coeff;
pulse_length_esc4 += pulse_length_esc4 * coeff;
}
}
bool isBatteryConnected() {
// On applique un simple filtre passe-bas pour filtrer le signal (Fc ≈ 10Hz et gain de ~2.5dB dans la bande passante)
battery_voltage = battery_voltage * 0.92 + (analogRead(0) + 65) * 0.09853; return battery_voltage < 1240 && battery_voltage > 800;}
Mais en faite j'ai rien compris. C'est quoi toutes les valeurs (en gras) ?
Je veux aussi que le drone stop les moteurs quand la tension se rapproche de 9,6V. Et peut-être avant, que le drone descend tout seul
quand il voit le danger venir.
En faisant un pont diviseur de tension, et en utilisant analogRead(0), c'est suffisamment précis ? Est-ce que c'est une bonne idée de couper
les moteurs. Quel piste je peux utiliser pour faire descendre mon drone tout seul ? (je le ferait peut-être plus tard, mais je veux quelque
chose qui coupe les moteurs par sécurité ou un retour que je peux avoir via par ex ma télécommande (fs-I6X avec son récepteur fs-x6b)
Merci d'avance pour vos réponses !
frangipane
42 Messages
Le samedi 30 janvier 2021 à 10:49:26
Et comment faire pour que le code soit joli sur ce site, j'ai cherché j'ai pas trouvé
Le samedi 30 janvier 2021 à 12:27:56
Salut fragipane,
En effet, les cellules des LiPo ne doivent pas descendre en dessous d'une certaine tension sans quoi il te seras impossible de recharger la batterie.
Il existe des modules à 5€ que tu branche directement sur la LiPo et qui bip trèèès fort quand la tension devient trop basse.
Le code qui tu as mis en gras est un filtr enumérique de type apsse-bas avec une fréquenc de coupure à 10Hz et avec un gain de ~2.5dB dans la bande passante.
Tu peux soit les calculer en fonction de ton besoin soit utiliser des outils qui le fpont à ta place. Matlab fait ça très bien.
Je ne pense pas que ce soit une bonne idée que le drone descende tout seul. il suffit que ça arrive au dessus d'un plan d'eau ou d'une route
et c'est la catastrophe.
Pour mettre en forme ton code sur le forum, il faut le mettre entre balises :
Bonne journée !
En effet, les cellules des LiPo ne doivent pas descendre en dessous d'une certaine tension sans quoi il te seras impossible de recharger la batterie.
Il existe des modules à 5€ que tu branche directement sur la LiPo et qui bip trèèès fort quand la tension devient trop basse.
Le code qui tu as mis en gras est un filtr enumérique de type apsse-bas avec une fréquenc de coupure à 10Hz et avec un gain de ~2.5dB dans la bande passante.
Tu peux soit les calculer en fonction de ton besoin soit utiliser des outils qui le fpont à ta place. Matlab fait ça très bien.
Je ne pense pas que ce soit une bonne idée que le drone descende tout seul. il suffit que ça arrive au dessus d'un plan d'eau ou d'une route
et c'est la catastrophe.
Pour mettre en forme ton code sur le forum, il faut le mettre entre balises :
[code=arduino]
ton code ici
[/code]
Bonne journée !