IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Commande de batterie par Arduino et TP4056


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 15
    Points : 4
    Points
    4
    Par défaut Commande de batterie par Arduino et TP4056
    Bonsoir,

    Dans le cadre d'un projet je dois faire fonctionner une voiture télécommandée électrique avec deux batteries :
    L'une qui fait fonctionner normalement le moteur, servomoteur,etc..
    L'autre qui se recharge par induction (système non développé ici)

    L'idée est donc de pouvoir passer de l'une à l'autre en tant que source d'alimentation du moteur de la voiture :
    Lorsque celle qui alimente le moteur est trop déchargée pour le faire, celle qui se rechargeait prend le relais et ainsi les rôles sont inversés (la première se recharge alors).

    J'aimerai commander tout cela avec une Arduino, recharger les batteries avec un TP4056 par batterie (ou un autre composant si vous en connaissez) je sais que c'est faisable mais je vois pas à quoi le schéma électrique peut ressembler ni comment coder pour faire l'alternance entre les deux accus (d'ailleurs, quelle sorte d'accu prendre ?)

    Si vous avez des idées je suis preneur !
    Merci,
    Florian.

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 29
    Points : 24
    Points
    24
    Par défaut
    Bonjour,

    bon si je résumme to problèmme tu à des moteur "cc ?" et un (des) servo(s) (j'imagine que le(s) servo(s) sert(servent) à la direction) dans ta voiture, et tu souhaite avec deux accus (qui on toute les deux, une technologie différente ?) alimenter les moteur, et les contrôler (les accus comme les moteurs) par un arduino.

    Mais pour pouvoir trouver la méthode la plus simple pour toi il faut quelque précision :

    1- Quelle est l'intensité maximum que tu envoie au moteur en régime permanent et transitoire (intensité nominale et pic d'intensité) ?

    2- Le type de batterie utilisé (Li-PO, Li-ion, Pb, SuperCap...) ?

    3- La tension et la quantité d’énergie de tes batterie (tension en V, et Q d’énergie en mA.h ou A.h) ?

    4- le type de pilotage de moteur (TOR, MLI/PWM, ANALOGIQUE...), ainsi que la présence de diodes de roue libre pour tes moteur cc

    5- tension de ton arduino (5v ou 3.3v)

    6- par quoi l'arduinoest alimenter (Batterie 1/2/ autre...)

    Avec cela je devrai pouvoir t'aider

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    moteur "cc ?" et un (des) servo(s) (j'imagine que le(s) servo(s) sert(servent) à la direction) dans ta voiture, et tu souhaite avec deux accus (qui on toute les deux, une technologie différente ?) alimenter les moteur, et les contrôler (les accus comme les moteurs) par un arduino.
    Oui moteur CC avec servos pour la direction , deux accus Li On identiques.

    Mais pour pouvoir trouver la méthode la plus simple pour toi il faut quelque précision :

    1- Quelle est l'intensité maximum que tu envoie au moteur en régime permanent et transitoire (intensité nominale et pic d'intensité) ?
    Aucune idée

    3- La tension et la quantité d’énergie de tes batterie (tension en V, et Q d’énergie en mA.h ou A.h) ?

    3,7V 3Ah

    4- le type de pilotage de moteur (TOR, MLI/PWM, ANALOGIQUE...), ainsi que la présence de diodes de roue libre pour tes moteur cc

    Aucune idée mais bon but n'est pas de reprogrammer les commandes de direction


    5- tension de ton arduino (5v ou 3.3v)

    5V Clone UNO

    6- par quoi l'arduinoest alimenter (Batterie 1/2/ autre...)

    Pile 9V

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 605
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 605
    Points : 56 719
    Points
    56 719
    Billets dans le blog
    40
    Par défaut
    Bonjour,

    Fais des recherches sur les alimentations de secours et le principe de commutation par diodes.

    Il existe aussi des shields Arduino Seeed Energy Shield

  5. #5
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 189
    Points : 11 571
    Points
    11 571
    Par défaut
    Sinon il y a la solution McGyver, ultra simpliste, rapide à mettre en oeuvre et pas cher.
    C'est toujours pour ton TIPE ? Ou pour une CPGE ? Au quel cas à mon avis le but de ton projet c'est analyser les phénomènes physiques qui sont en jeux plutôt que l'aspect technique.

    Schéma de principe : 1 Arduino avec 4 sorties numérique et 2 entrées ADC, 1 module 4 relais et 1 TP4056
    Nom : im27.png
Affichages : 1563
Taille : 11,3 Ko

    A l'aide du Arduino tu fermes les relais RY2 et RY3
    Nom : im28.png
Affichages : 1411
Taille : 11,4 Ko

    Voici comment se comporte les courants avec la combinaison de fermeture des relais ci dessus. Les flèches rouges représentent le courant de la batterie du haut qui se décharge dans le(s) moteur(s). Les flèches bleues représentent le courant de charge du module TP4056.
    Nom : im29.png
Affichages : 1604
Taille : 26,8 Ko

    Comme tu l'as compris avec cette combinaison de relais c'est toi qui guide les courants de charges et décharges. Il faudra faire attention à l'ordre dans le quel tu fermes les relais pour ne pas détériorer les accus. Avec les entrées ADC de l'Arduino tu peux surveiller les tensions des batteries et dès que tu vois que batterie 1 se décharge de trop alors tu ouvres les relais RY2 et RY3 pour fermer à la place RY1 et RY4 ce qui va tout inverser (la batterie du haut se charge tandis que celle du bas alimente les moteurs)

    Tu vois le principe ?
    Evidemment dans une solution pro j'aurai fait différemment mais là je trouve que c'est le plus simple et le moins coûteux.

    Tu as même un mode baroud d'honneur en ouvrant RY1 et RY3 tu déconnectes le TP4056 et en fermant RY2 et RY4, les deux batteries se retrouvent en parallèle et donc la capacité/autonomie est doublée pour un dernier tour avec ta voiture
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    Merci Vincent pour cette solution simplement efficace !
    J'ai plusieurs solutions qui s'offrent à moi je verrai laquelle est faisable !

    Quelques précisions :
    • le chargeur TP4056 n'est utilisable que pour une batterie donc le circuit proposé devra être modifié un peu..
    • Quels relais me conseillez-vous ? Si j'ai bien compris juste le fait d'envoyer une tension va le fermer (tension variant selon le modèle sachant que l'arduino envoie en 0 ou 5 V)
    • Pour récupérer l'information de charge de la batterie à tout instant (quelle est la tension à ses bornes et l'intensité du courant qui circule dans la branche la rechargeant) un pont diviseur de tension suffit ou vous avez d'autres méthodes à me proposer ?
    Sachant que sur le TP4056 une diode s'allume lorsque l'accu est entièrement rechargé je pourrai bricoler pour détecter la fin de charge de la batterie mais pas d'infos pendant sa charge...

  7. #7
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 189
    Points : 11 571
    Points
    11 571
    Par défaut
    Citation Envoyé par gaboflo Voir le message
    • le chargeur TP4056 n'est utilisable que pour une batterie donc le circuit proposé devra être modifié un peu..
    Pourquoi ? Si tu regardes le schéma et avec la bonne combinaison des relais, le chargeur ne chargera qu'une seule batterie (j'entends par batterie, l'accu de 3.7V 3Ah cité plus haut, si tu as choisie cet accu j'imagine que c'est parce qu'il correspond au bon compromis consommation des moteurs vs autonomie souhaitée.)


    Citation Envoyé par gaboflo Voir le message
    • Quels relais me conseillez-vous ? Si j'ai bien compris juste le fait d'envoyer une tension va le fermer (tension variant selon le modèle sachant que l'arduino envoie en 0 ou 5 V)
    Ce genre de chinoiserie https://www.amazon.fr/dp/B00JGFF0QO/...vnetw=g&hvqmt=
    Oui, en envoyant une tension sur la bonne broche de cette carte, le relai se ferme.


    Citation Envoyé par gaboflo Voir le message
    • Pour récupérer l'information de charge de la batterie à tout instant (quelle est la tension à ses bornes et l'intensité du courant qui circule dans la branche la rechargeant) un pont diviseur de tension suffit ou vous avez d'autres méthodes à me proposer ?
    La tension pendant une charge est de 4.2V donc si ton Arduino est alimenté en +5V, tu n'as pas besoin de pont diviseur. L'impédance d'entrée de ton convertisseur analogique numérique (le courant que cette entrée consomme si tu préfères) ne gênera pas la charge. Pour mesurer le courant de charge, c'est beaucoup plus emmerdant ! Déjà tu réglera au préalable le courant de charge pour être entre C/3 et C/10 donc entre 1A et 300mA via la résistance connectée à la broche 2 du TP4056 ensuite il te faudra probablement un capteur non intrusif pour mesurer ce courant, comme un capteur a effet Hall car si tu inserts un résistance de shunt pour mesurer la tension, image du courant qui circule, à ses bornes alors tu n'auras plus tes 4.2V au niveau de la batterie et ça ce n'est pas possible avec des batteries Li-Ion ou Li-Po.

    Datasheet du TP4056 (très sommaire)
    https://dlnmh9ip6v2uc.cloudfront.net...ing/TP4056.pdf


    Citation Envoyé par gaboflo Voir le message
    Sachant que sur le TP4056 une diode s'allume lorsque l'accu est entièrement rechargé je pourrai bricoler pour détecter la fin de charge de la batterie mais pas d'infos pendant sa charge...
    Oui tu peux lire l'état d'une broche du TP4056 et en effet, ce chargeur étant 100% autonome les informations pendant la charge reste à l'intérieur du composant. Tu peux juste mesurer la tension de la batterie pendant la charge (4.2V comme expliqué plus haut) ce qui t'indiquera que ça charge mais c'est tout.
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    Les TP4056 étant vendus par 5 je vais plutôt en mettre 1 par accu ça me coûte rien.

    Merci pour ces réponses Vincent, je me demande, d'autres personnes m'avaient conseillé des Mosfet au lieu de relais pour diriger le courant. Quel est l'avantage/inconvénient des Mosfet par rapport aux relais (solution que je vais préférer je pense) ?

  9. #9
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 189
    Points : 11 571
    Points
    11 571
    Par défaut
    Citation Envoyé par gaboflo Voir le message
    Les TP4056 étant vendus par 5 je vais plutôt en mettre 1 par accu ça me coûte rien.
    Ok, je comprends mieux.

    Citation Envoyé par gaboflo Voir le message
    d'autres personnes m'avaient conseillé des Mosfet au lieu de relais pour diriger le courant. Quel est l'avantage/inconvénient des Mosfet par rapport aux relais (solution que je vais préférer je pense) ?
    En effet il est possible de remplacer les relais par les MOSFET mais c'est nettement plus compliqué, je m'explique.

    Voici a quoi peut ressembler un interrupteur MOSFET, tu as Q1 qui est un transistor P-MOSFET, R1 et R2 qui forme un pont diviseur de tension et Q2 qui lui est un transistor N-MOSFET "logique compatible", c'est à dire qu'il est conçu pour être piloté par des microcontrôleurs ou des portes logiques. Rappel : pour que Q1 soit fermée il faut un VGS négatif d'une part et qu'il dépasse un certain niveau d'autre part. Pour Q2 c'est l'inverse, pour qu'il soit fermé il faut un VGS positif, pour le niveau on ne s'en préoccupe pas puisqu'on aura choisi un transistor "logique compatible" (entendre par là +3.3V ou +5V)
    Nom : Capture53.PNG
Affichages : 1426
Taille : 13,4 Ko

    Hypothèse pour l'explication ci dessous le TP4056 délivre une tension de 4.2V

    En position Q1 ouvert ça fonctionne comme ceci
    • Tu envois 0V sur la grille de Q2, il est donc ouvert autrement dit c'est comme ci tu prends une gomme et que tu l'effaces du schéma.
    • R2 a une patte en l'air, donc elle ne sert plus à rien, idem on gomme.
    • Il ne reste plus que R1 de raccordée à la grille de Q1 qui rappelons le, ne consomme qu'un courant infiniment faible. Pas de courant qui passe dans R1 = pas de chute de tension donc la tension d'un côté de R1 et la même que de l'autre côté. Il y a donc 4.2V sur la grille de Q1
    • Le transistor est donc ouvert car VGS = 0V (on devrait dire VG = 4.2V et VS = 4.2V donc VG - VS qu'on appelle VGS = 0V)


    En position Q1 fermé ça fonctionne comme ceci
    • Tu envois 5V sur la grille de Q2, il est donc fermé autrement dit c'est comme ci tu prends une gomme et que tu le remplaces par un fil.
    • La broche inférieure de R2 sur le schéma est directement reliée au 0V au travers du fil que tu as dessiné juste au dessus.
    • La grille de Q1 se retrouve connectée sur le pont diviseur que forme R1 et R2. Si on pend pour exemple R1 = 10kΩ et R2 = 100Ω alors la tension sur la grille de Q1 est égale à 100/(100+10 000) * 4.2V soit 0.04V.
    • Le transistor est donc fermé car VGS = -4.16V (on devrait dire VG = 0.04V et VS = 4.2V donc VG - VS qu'on appelle VGS = -4.16V)



    Voici les points bloquants avec la solution MOSFET.
    - Est ce que le module TP4056 délivre constamment 4.2V ?
    - En fin de charge qu'elle est la tension et surtout qu'elle est l'impact sur les calculs si celle ci varie trop bas ? Est ce que la tension VGS peut encore être assez significativement négative pour fermer le transistor ?
    - Se pose la question du choix du transistor car il faut que son RDSon soit très petit pour ne pas voir apparaitre une chute de tension aux bornes du transistor lorsqu'il est fermé sinon on a plus les 4.2V de tension de charge.

    C'est donc peut être possible, je dis peut être car tous les calculs vont se faire en fonction de la tension que délivre le TP4056 (en charge, en fin de charge, hors charge). Pour peu que le TP4056 ne délivre pas de tension (ou un tension trop faible) alors il t'est impossible de fermer le transistor car le VGS ne sera pas suffisamment négatif. Généralement ce type de structure se comporte très bien lorsqu'on fait un interrupteur avec d'un côté une tension connue comme une batterie.
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  10. #10
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 15
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup d'avoir pris le temps d'expliquer le fonctionnement du mosfet et de ses inconvénients.
    Je conserve le relai dans mes schémas.

    Je dois à présent trouver le temps d'effectuer les manips et je reviens ici en parler.

Discussions similaires

  1. Contrôler le rechargement des batteries par l'arduino
    Par gaboflo dans le forum Arduino
    Réponses: 15
    Dernier message: 09/03/2019, 20h02
  2. Commander des relais par liaison 433mhz avec un arduino
    Par nico.pro dans le forum Arduino
    Réponses: 7
    Dernier message: 03/01/2017, 14h02
  3. Commander plusieurs moteurs par un seul port USB
    Par wolfjeremy dans le forum Windows
    Réponses: 6
    Dernier message: 11/06/2006, 14h52
  4. Réponses: 2
    Dernier message: 07/12/2005, 11h13
  5. [langage] Lancer une serie de commande en cmd par perl
    Par Ludo167 dans le forum Langage
    Réponses: 6
    Dernier message: 13/07/2004, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo