GetBatteryVoltage() {FR}

Objectif

Lire la différence de potentiel entre les bornes 12V et GND du terminal vert (le voltage de la batterie).

Quand l’utiliser

Si vous souhaitez connaitre le voltage de la batterie du robot durant l’exécution.

Où l’utiliser

Probablement dans la partie void loop() de votre fichier .ino, puisque cette valeur serait typiquement utile pour une surveillance active.

Cliquer ici pour en apprendre plus sur les circuits de source de puissance du CRCduino.

Cette fonction requiert l’utilisation des fonctions suivantes dans votre programme:

Valeur de retour

Cette fonction retourne une valeur de type float qui représente le voltage de la batterie en volts (V).

Prototype principal

static float CrcLib::GetBatteryVoltage(float correction)

Les paramètres suivants sont requis par la fonction:

  • correction: Le facteur de correction unique au diviseur de tension de votre CRCduino, de type float. Voir ci-dessous pour plus d’information.

Overloads

#1: Sans facteur de correction

static float CrcLib::GetBatteryVoltage()

Les paramètres suivants sont requis par la fonction:

  • Aucun paramètre requis. Un facteur de correction de 1.0 sera utilisé par défaut.

Examples

#include <CrcLib.h> void setup() { CrcLib::Initialize(); // Ouvrir la communication avec la console à un rate de 2000000 Serial.begin(2000000); /* Le reste du code d'initialisation ... */ } void loop() { CrcLib::Update(); // Enregistrer le voltage dans la variable voltage float voltage = CrcLib::GetBatteryVoltage(); // Afficher la valeur dans la console Serial.println(voltage); /* Le reste de la boucle principale ... */ }
#include <CrcLib.h> // Donnons un surnom à notre broche #define DelBatterieFaible CRC_DIG_6 void setup() { CrcLib::Initialize(); // La broche qui contrôle la batterie est une sortie CrcLib::SetDigitalPinMode(DelBatterieFaible, OUTPUT); /* Reste du code d'initialisation ... */ } void loop() { CrcLib::Update(); if(CrcLib::GetBatteryVoltage(1.0235) <= 11.96) { CrcLib::SetDigitalOutput(DelBatterieFaible, HIGH); } else { CrcLib::SetDigitalOutput(DelBatterieFaible, LOW); } /* Reste de la boucle principale ... */ }

Plus à propos de cette fonction

Comment fonctionne-t’elle? ?

Le CRCduino utilise une entrée analogue connectée directement à un diviseur de tension entre les terminaux verts 12V et GND. Le diviseur de tension réduit le 12V à une valeur qui peut être lue par le micro-contrôleur.

Pour en apprendre plus sur les diviseurs de tension, lisez ceci! (en anglais)

Comment déterminer le facteur de correction de votre CRCduino?

  1. Écrivez un programme qui affiche le voltage de la batterie sur la console. Commencez avec un facteur de correction de 1.0. Envoyez ce programme sur le CRCduino et le voltage devrait s’afficher à l'écran.

  2. Connectez un multimètre aux bornes de la batterie

  3. Divisez la valeur réelle par la valeur affichée à l'écran. Utilisez cette valeur comme facteur de correction, envoyez ce nouveau programme sur le CRCduino et vérifiez que les valeurs correspondent.

Related articles