Mesurer le courant avec l'Arduino

Measuring Current with the Arduino

La mesure du courant dans les circuits électroniques est une exigence commune pour les projets impliquant des capteurs, des moteurs, des LED et d'autres composants. Bien qu'Arduino ne puisse pas mesurer directement le courant, vous pouvez utiliser des composants externes comme un capteur de courant ou une résistance de shunt pour le mesurer indirectement. Ce tutoriel vous guidera à travers le processus de mesure du courant avec un Arduino.


Ce dont vous aurez besoin

  1. Conseil d'administration d'Arduino (par exemple, uno, mega, nano)
  2. Capteur de courant (par exemple, ACS712, INA219) ou Résistance de shunt
  3. Fils de planche à pain et de cavalier
  4. Appareil de chargement (par exemple, LED, moteur ou tout composant pour lequel vous souhaitez mesurer le courant)
  5. Alimentation (5V ou 12V selon votre charge)
  6. Un ordinateur avec l'ide Arduino installé

Méthode 1: Utilisation d'un capteur de courant

Les capteurs de courant comme l'ACS712 ou l'inA219 simplifient la mesure du courant en fournissant une sortie analogique ou numérique proportionnelle au courant.

1. À l'aide du capteur de courant ACS712

Le capteur ACS712 mesure à la fois le courant AC et CC et produit un signal analogique proportionnel au courant qui le traverse.

Schéma de câblage
Pin ACS712 Connexion
VCC Arduino 5V
GND Arduino GND
DEHORS Pin analogique Arduino (par ex., A0)
Ip + Connexion de charge positive
Ip- Connexion de charge négative
Exemple de code
#define sensorPin A0
const float sensitivity = 0.185; // Sensitivity for ACS712-05B (mV per A)
const int zeroPoint = 512; // Zero current output in ADC counts

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(sensorPin);
  float voltage = (sensorValue / 1023.0) * 5.0; // Convert to voltage
  float current = (voltage - (zeroPoint / 1023.0) * 5.0) / sensitivity; // Calculate current

  Serial.print("Current: ");
  Serial.print(current, 3);
  Serial.println(" A");

  delay(1000);
}

2. En utilisant le capteur de courant Ina219

L'INA219 est un capteur de courant de haute précision qui communique avec Arduino via I2C, offrant à la fois des mesures de courant et de tension.

Schéma de câblage
PIN INA219 Connexion
VCC Arduino 5V
GND Arduino GND
SDA Arduino SDA (par exemple, A4 sur uno)
SCL Arduino SCL (par exemple, A5 sur uno)
Vin + Connexion de charge positive
Vin- Connexion de charge négative
Exemple de code

Installer le Bibliothèque Adafruit Ina219 via le directeur de bibliothèque Arduino.

#include <Wire.h>
#include <Adafruit_INA219.h>

Adafruit_INA219 ina219;

void setup() {
  Serial.begin(9600);
  if (!ina219.begin()) {
    Serial.println("Failed to find INA219 chip");
    while (1);
  }
}

void loop() {
  float current_mA = ina219.getCurrent_mA();

  Serial.print("Current: ");
  Serial.print(current_mA);
  Serial.println(" mA");

  delay(1000);
}

Méthode 2: Utilisation d'une résistance de shunt

Une résistance de shunt est une résistance de faible résistance placée en série avec la charge. En mesurant la chute de tension à travers la résistance de shunt, vous pouvez calculer le courant en utilisant la loi d'Ohm:

I = v / r

Schéma de câblage

Composant Connexion
Résistance de shunt En série avec la charge
Broche analogique arduino À travers la résistance de shunt
Charger Connecté à l'alimentation
Exemple de code
#define shuntPin A0
const float shuntResistance = 0.1; // Resistance in ohms

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(shuntPin);
  float voltage = (sensorValue / 1023.0) * 5.0; // Convert to voltage
  float current = voltage / shuntResistance; // Calculate current

  Serial.print("Current: ");
  Serial.print(current, 3);
  Serial.println(" A");

  delay(1000);
}

Meilleures pratiques pour des mesures précises

  1. Choisissez le bon capteur: Sélectionnez un capteur de courant ou une résistance de shunt adaptée à votre plage de courant attendue.
  2. Calibrez votre configuration: Ajustez le code de votre capteur ou de votre résistance de shunt spécifique pour assurer des lectures précises.
  3. Minimiser le bruit: Utilisez des fils courts et épais et évitez les environnements bruyants pour réduire les erreurs de mesure.
  4. Surveiller les limites de puissance: Assurez-vous que le capteur ou la résistance de shunt peut gérer le courant maximum sans surchauffe.

Applications de la mesure actuelle

  1. Surveillance de la consommation de batterie dans les appareils IoT
  2. Mesurer le tirage au courant des moteurs
  3. Tester les LED et autres composants
  4. Gestion de l'alimentation dans les systèmes intégrés

Dépannage

  • Lectures incorrectes: Valeurs de câblage et d'étalonnage du capteur à double revoir.
  • Pas de sortie: Assurez-vous que la charge est connectée et que le courant circule.
  • Valeurs fluctuantes: Ajoutez un condensateur à travers l'alimentation du capteur pour stabiliser les lectures.

Conclusion

La mesure du courant avec un Arduino est simple lors de l'utilisation des bons outils comme les capteurs de courant ou les résistances de shunt. En suivant ce guide, vous pouvez surveiller le courant dans vos circuits avec précision, permettant une meilleure gestion de l'alimentation et des diagnostics système. Expérimentez avec différents capteurs pour trouver le meilleur ajustement pour vos projets!

Laissez un commentaire

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.