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 :

Lire une Tension variable Arduino


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2020
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2020
    Messages : 19
    Par défaut Lire une Tension variable Arduino
    Bonjour tout le monde
    J’ai une question, pour mon travail, j’ai besoin de mesurer la tension de batteries certaines en 12v et d'autre en 24v et d’envoyer ces données avec un Webservice. (Donc il me faut un arduino avec connexion WiFi)

    L'histoire du WebService est réglé mais je ne vois pas comment faire avec des tensions dont je ne connais pas à l'avance la valeurs maximum

    Quelqu’un a une idée pour faire ce petit système ?

    Bien à vous Benjamin.

  2. #2
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    Est-ce que les batteries peuvent être déchargées ?

    Sinon vous dimensionnez la capteur pour 24v (ou un peu plus) et si vous voyez le Max c’est une 24V si vous voyez près de la moitié c’est une 12v

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 282
    Par défaut
    Bonsoir et bienvenue sur DVP

    C'est facile ou pas en fonction de ce que l'on veut.

    Il faut dimensionner un pont diviseur de mesure pour la tension la plus élevée qui est prévue. Selon la précision du convertisseur ADC et de celle que l'on souhaite, il peut être possible de faire toutes les mesures. Par exemple avec un Arduino Uno et un circuit dimensionné pour des batteries de 24V nominal, il reste une précision de presque 1% sur des batteries de 6V nominal.
    En cas de risque de branchement de batterie dépassant la tension maximale prévue, il faut dimensionner une protection de surtension, par exemple avec une diode zener de 5.1V en sortie du diviseur de tension (si réf à 5V). Dans ce cas le courant circulant dans les résistances et la Zener devront être calculés pour s'assurer de ne pas dépasser les puissances maximales de ces composants. Par exemple, on pourrait ainsi dimensionner une protection jusqu'à 60V (batterie de 48V) ou 120V (batterie de 96V) pour un 24V nominal.

    Si la précision de cette manière n'est pas suffisante, il faut faire un ampli à gain variable. Le plus simple (mais pas forcement le plus précis) c'est un ampli op et des résistances commutées à la masse par l'Arduino. Ou mettre plusieurs diviseurs de tension pour entrer sur les différentes voies de l'ADC (entrée 1 nominal de 24V, entrée 2 nominal de 12V, entrée 3 nominal de 6V, etc...), mais attention à dimensionner proprement toutes les protections de surtension, car elles serviront en fonctionnement normal !

    Et il y a probablement encore d'autres pistes...

    Ah j'oublie un truc, avec cela on quitte le monde simplifié d'Arduino et on rentre dans la réalité de la conception électronique.

    Bonne suite

    Delias

  4. #4
    Membre chevronné Avatar de electroremy
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juin 2007
    Messages
    996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 996
    Par défaut
    Bonjour,

    La mesure de tension d'une batterie est particulière...

    Elle doit être précise (cela dépend de la technologie de la batterie)

    Un Arduino a un ADC sur 10 bits, il peut théoriquement mesurer quelque chose sur une échelle de 1024 points, ce n'est pas terrible.

    Sur ces 10 bits le ou les bits de poids faible peuvent être "non significatif" et en pratique on peut avoir une résolution exploitable (c'est à dire fiable) de 8 bits, soit 256 points. C'est peu pour une mesure digne de ce nom.

    Il faut un circuit analogique précis pour "dilater l'échelle".

    Autrement dit, pour la batterie 24V il faut mesurer une tension entre 22V et 30V, ainsi, les 256 points de mesure seront répartis entre 22V et 30V et pas entre 0V et 30V. La précision sera meilleure.

    Si la tension est sous 22V ou au dessus de 30V la batterie a un gros problème, ça ne sert à rien de mesurer au delà, il suffit de savoir que les valeurs mini ou maxi sont dépassées.

    Pour la batterie 12V, il faut viser une plage de mesure allant de 11V à 15V

    A bientôt

  5. #5
    Membre Expert
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 017
    Par défaut
    Bonjour elecrtoremy

    Pourquoi ne pas "manger" le maximum de volts "inutiles" avec des diodes zenner, respectivement 22V et 11V.
    Pour la batterie de 24 V, il resterai 8V à traiter, qui seraient recalibrés au moyen d'un diviseur résistif de 0 à 5V.
    Pour la batterie de 12V, il resterai 4V à traiter, donc "dans les cordes" Arduino.
    Pour augmenter la précision à 16 bits, il y a ces petits modules i2C a base de ADS1115.

    Cordialement
    jpbbricole

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2020
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2020
    Messages : 19
    Par défaut
    Merci à vous tous pour vos réponses plus pertinante les unes que les autres, je continu de creuser en attendant de mieux comprendre certains termes.
    Bien à vous, Percroy

  7. #7
    Membre chevronné Avatar de electroremy
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juin 2007
    Messages
    996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 996
    Par défaut
    Citation Envoyé par jpbbricole Voir le message
    Bonjour elecrtoremy

    Pourquoi ne pas "manger" le maximum de volts "inutiles" avec des diodes zenner, respectivement 22V et 11V.
    Pour la batterie de 24 V, il resterai 8V à traiter, qui seraient recalibrés au moyen d'un diviseur résistif de 0 à 5V.
    Pour la batterie de 12V, il resterai 4V à traiter, donc "dans les cordes" Arduino.
    Pour augmenter la précision à 16 bits, il y a ces petits modules i2C a base de ADS1115.

    Cordialement
    jpbbricole
    Attention à la précision...

    Il vaudrait mieux un circuit à base d'AOP et d'une référence de tension stabilisée en température. Ces composants ne coûtent presque rien aujourd'hui

    Méfiance pour les ADC 16 bits, les bits de poids faible sont-ils significatifs ? Et surtout, le circuit analogique qui va alimenter l'entrée de l'ADC devrait être de bonne qualité. Bien éplucher la datasheet

    Il existe pas mal de circuits spécialisés pour la mesure de tension, à chercher de ce côté là.
    Il y a même des circuits spécialisés pour la mesure de tension de batterie.

    Si le but final est de surveiller la santé des batteries, il faudrait mesurer :
    - la tension
    - le courant (avec sonde à effet hall, pas besoin de shunt)
    - la température de la batterie
    - la température ambiante

    Seule la tension demande une très bonne précision.

    Si le courant consommé peut varier très rapidement c'est un peut plus ennuyeux car pour que les mesures soient pertinentes il faut une fréquence de mesure élevée ou bien un circuit capable de faire une moyenne. Sinon les résultats seront complètements farfelus et aléatoires (typiquement mesure de tension pile au moment où la batterie subit un pic de courant)

    La mesure des températures ne posera pas de problème car l'inertie thermique des capteurs et des objets mesurés fait déjà office de filtre passe bas.
    Pour la mesure de tension et de courant, il faudra un passe bas qui fera une moyenne, la fréquence de coupure devra respecter le théorème de Shannon (fréquence de coupure du passe bas au maximum 2 fois inférieure à la fréquence de mesure, ne pas hésiter à prendre un facteur plus élevé comme 10)

    Avec tous ces paramètres on peut estimer le niveau de charge, la durée de vie restante de la batterie, anticiper une panne, mais aussi évaluer précisément les besoins de l'appareil alimenté par la batterie, c'est fort instructif pour avoir un retour d'expérience et améliorer un produit.

    A bientôt

  8. #8
    Membre Expert

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 624
    Par défaut Simplifier
    Bonjour,

    Le WIFI en roulant, sauf à équiper chaque camion d'un téléphone portable portable déclaré en point d'accès, il vaut mieux oublier.

    Ça tombe bien car le niveau de parasites d'un véhicule en marche et, comme l'a fait remarquer Vincent, les variations de tensions imposées par l'alternateur sont plutôt dissuasifs et incitent à attendre l'arrêt du véhicule.

    Il faudra quand même protéger l'animal durant la chevauchée sauvage (déconnexion par relais ? Comme dans un frigo allumé quand c'est éteint).

    Pour la mesure, on peut doter le microcontrôleur d'un convertisseur 16 bits et ne pas avoir à imaginer des adaptations (automatiques ?) à des batteries de diverses tensions pour avoir une précision suffisante.

    Il faudra prévoir également la localisation précise du montage pour éviter des dérives dues à des conditions thermiques extrêmes (cabine à l'ombre par exemple).

    Je présume qu'il y a une phase d'identification du camion (soit côté microcontrôleur soit côté application).

    Encore un problème apparemment simple qui mérite réflexions.

    Bon courage

  9. #9
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    A quoi doit servir le programme ? dire si la batterie connectée est une 24V ou une 12V ? est-ce la seule information que vous souhaitez avoir en sortie ? ou alors juste dire la tension lue ?

    (un petit article à lire éventuellement, ou encore ici le web en regorge de similaires)

    on trouve sinon aussi des composants tout faits de mesure de la tension
    Nom : voltageSensor.png
Affichages : 3216
Taille : 713,8 Ko

  10. #10
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2020
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2020
    Messages : 19
    Par défaut
    Hello, en fait, ce programme doit pouvoir mesurer la tension d'une batterie de camion, ce module sera connecter à la batterie, et, dès que je détecte un signal WiFi, j'envoi la donnée mesurée à un WebService.
    Cela permettrai de récupérer la donnée de plusieurs dizaines de camions qui rentre au dépôt chaque soir dans un de mes logiciels.
    Je suis parti sur un pont diviseur de tension mais cela m'inquiète car l'intensité d'une telle baterie atteint de haute valeur (Intensité au démarrage 1000A ou Capacité total 200Ah), je me demande si un simple pont diviseur de tension suffirais ?

    Bien à vous, Percroy

  11. #11
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 252
    Par défaut
    Bonjour,
    C'est un poil plus complexe qu'un pont diviseur.

    Quand l'alternateur va être en fonction la tension sera bien supérieure à celle de la batterie (sur une voiture on monte facilement à un peu plus de 14V). Il peut y avoir des pics de tension dépassant les 40V voir 60V sur une voiture, par exemple lors d'une réparation dans l'atelier où on déconnecte rapidement la batterie avec le moteur en route ; l'alternateur se retrouve à vide est la tension peut montrer très fortement. Si jamais c'est le "moins" de la batterie qu'on a retiré le pauvre pont diviseur dimensionné pour 24V va se demander ce qu'il se passe avec 60V.

    Peut être que mesurer la tension batterie une fois le moteur éteint ?

    Mettre des protections plus élaborés dans le hardware ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/02/2011, 19h19
  2. Lire une variable d'application depuis une classe
    Par bossun dans le forum ASP.NET
    Réponses: 2
    Dernier message: 26/10/2007, 11h55
  3. [JSP/javascript] lire une variable dans un infobulle
    Par maniolo dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 20/10/2006, 14h50
  4. Réponses: 3
    Dernier message: 02/10/2006, 21h20
  5. lire une donnée dans une variable de session
    Par pblb62 dans le forum Langage
    Réponses: 8
    Dernier message: 21/03/2006, 14h23

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