Az áram mérése az Arduino -val

Measuring Current with the Arduino

Az elektronikus áramkörök áramának mérése az érzékelők, motorok, LED -ek és más alkatrészek bevonásával foglalkozó projektek általános követelménye. Noha az Arduino nem tudja közvetlenül mérni az áramot, használhat külső alkatrészeket, például egy áramérzékelőt vagy egy söntállóságot, hogy közvetett módon mérje. Ez az oktatóanyag végigvezeti Önt az áram mérésének folyamatán egy Arduino -val.


Mire lesz szüksége

  1. Arduino Board (például Uno, Mega, Nano)
  2. Aktuális érzékelő (például ACS712, INA219) vagy Sönt ellenállás
  3. Kenyérlemez és jumper vezetékek
  4. Betöltési eszköz (például LED, motor vagy bármely olyan alkatrész, amelyre az áramot mérni szeretné)
  5. Tápegység (a terheléstől függően 5 V vagy 12 V)
  6. Egy számítógép, amelyen az Arduino IDE telepített

1. módszer: Aktuális érzékelő használata

Az olyan áramérzékelők, mint az ACS712 vagy az INA219, egyszerűsítik az árammérést az árammal arányos analóg vagy digitális kimenet biztosítása révén.

1. Az ACS712 áramérzékelő használatával

Az ACS712 érzékelő mind az AC, mind a DC áramot méri, és analóg jelet ad ki, amely arányos az rajta áramló árammal.

Bekötési rajz
ACS712 PIN Kapcsolat
VCC Arduino 5V
GND Arduino GND
KI Arduino analóg tű (például A0)
IP+ Pozitív terhelési csatlakozás
IP- Negatív terhelési csatlakozás
Példakód
#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. Az INA219 áramérzékelő használatával

Az INA219 egy nagy pontosságú áramérzékelő, amely az Arduino-val az I2C-n keresztül kommunikál, mind az áram, mind a feszültségméréseket kínálva.

Bekötési rajz
INA219 PIN Kapcsolat
VCC Arduino 5V
GND Arduino GND
SDA Arduino SDA (például A4 az UNO -n)
SCL Arduino SCL (például A5 az UNO -n)
Vin+ Pozitív terhelési csatlakozás
Vin- Negatív terhelési csatlakozás
Példakód

Szerelje be a ADAFruit Ina219 könyvtár Az Arduino könyvtári menedzserén keresztül.

#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);
}

2. módszer: Shunt ellenállás használata

A shunt ellenállás egy alacsony ellenállású ellenállás, amelyet sorba helyeznek a terheléssel. A feszültségcsökkenés mérésével a sönt ellenálláson kiszámíthatja az áramot az Ohm törvényének felhasználásával:

I = v / r

Bekötési rajz

Összetevő Kapcsolat
Sönt ellenállás Sorban a terheléssel
Arduino analóg tű A shunt ellenálláson keresztül
Terhelés Csatlakoztatva az áramellátáshoz
Példakód
#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);
}

A pontos mérések legjobb gyakorlatai

  1. Válassza ki a megfelelő érzékelőt: Válassza ki az aktuális érzékelőt vagy a shunt ellenállást, amely alkalmas a várt áramtartományra.
  2. Kalibrálja a beállítást: A pontos leolvasások biztosítása érdekében állítsa be a kódot az adott érzékelőhöz vagy a shunt ellenálláshoz.
  3. Minimalizálja a zajt: Használjon rövid, vastag vezetékeket, és kerülje a zajos környezetet a mérési hibák csökkentése érdekében.
  4. Figyelemmel kíséri a teljesítménykorlátozásokat: Győződjön meg arról, hogy az érzékelő vagy a sönt ellenállás képes kezelni a maximális áramot túlmelegedés nélkül.

Az árammérés alkalmazása

  1. Az akkumulátor fogyasztásának ellenőrzése az IoT eszközökön
  2. Az áramlást mérni a motorokban
  3. A LED -ek és más alkatrészek tesztelése
  4. Energiagazdálkodás beágyazott rendszerekben

Hibaelhárítás

  • Helytelen olvasmányok: Duplán ellenőrizze az érzékelő huzalozását és a kalibrációs értékeket.
  • Nincs kimenet: Győződjön meg arról, hogy a terhelés csatlakoztatva van, és az áram áramlik.
  • Ingadozó értékek: Adjon hozzá egy kondenzátort az érzékelő tápellátásához a leolvasások stabilizálásához.

Következtetés

Az áram mérése Arduino -val egyértelmű, ha a megfelelő szerszámokat, például az áramérzékelőket vagy a shunt ellenállókat használja. Az útmutató követésével pontosan figyelemmel kíséri az áramköröket, lehetővé téve a jobb energiagazdálkodást és a rendszerdiagnosztikát. Kísérletezzen különböző érzékelőkkel, hogy megtalálja a legmegfelelőbb projekteket!

Hagyj egy megjegyzést

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.