Mätström med Arduino

Measuring Current with the Arduino

Att mäta ström i elektroniska kretsar är ett vanligt krav för projekt som involverar sensorer, motorer, lysdioder och andra komponenter. Även om Arduino inte direkt kan mäta ström, kan du använda externa komponenter som en strömsensor eller ett shuntmotstånd för att indirekt mäta det. Denna handledning kommer att vägleda dig genom processen att mäta ström med en Arduino.


Vad du behöver

  1. Arduinstyrelse (t.ex. Uno, Mega, Nano)
  2. Nuvarande sensor (t.ex. ACS712, INA219) eller Shuntmotstånd
  3. Breadboard och jumpertrådar
  4. Lastanordning (t.ex. LED, motor eller någon komponent du vill mäta ström för)
  5. Strömförsörjning (5V eller 12V beroende på din last)
  6. En dator med Arduino Ide installerad

Metod 1: Använda en aktuell sensor

Nuvarande sensorer som ACS712 eller INA219 förenklar strömmätningen genom att tillhandahålla en analog eller digital utgång proportionell mot strömmen.

1. Använda ACS712 nuvarande sensor

ACS712 -sensorn mäter både AC- och DC -ström och matar ut en analog signal som är proportionell mot strömmen som strömmar genom den.

Kabeliagram
ACS712 -stift Förbindelse
Vcc Arduino 5v
Gard Arduino
UT Arduino Analog Pin (t.ex. A0)
Ip+ Positiv lastanslutning
Ip- Negativ belastningsanslutning
Exempelkod
#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. Använda INA219 nuvarande sensor

IRA219 är en strömsensor med hög precision som kommunicerar med Arduino via I2C och erbjuder både ström- och spänningsmätningar.

Kabeliagram
Ina219 stift Förbindelse
Vcc Arduino 5v
Gard Arduino
SDA Arduino SDA (t.ex. A4 på UNO)
SCL Arduino SCL (t.ex. A5 på UNO)
Vin+ Positiv lastanslutning
Vin- Negativ belastningsanslutning
Exempelkod

Installera Adafruit ina219 bibliotek via Arduino Library Manager.

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

Metod 2: Använda ett shuntmotstånd

Ett shuntmotstånd är ett lågresistensmotstånd placerat i serie med lasten. Genom att mäta spänningsfallet över shuntmotståndet kan du beräkna strömmen med Ohms lag:

I = v / r

Kabeliagram

Komponent Förbindelse
Shuntmotstånd I serie med lasten
Arduino analog stift Över shuntmotståndet
Ladda Ansluten till strömförsörjning
Exempelkod
#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);
}

Bästa metoder för exakta mätningar

  1. Välj rätt sensor: Välj en aktuell sensor eller shuntmotstånd som är lämplig för ditt förväntade nuvarande intervall.
  2. Kalibrera din installation: Justera koden för din specifika sensor eller shuntmotstånd för att säkerställa exakta avläsningar.
  3. Minimera brus: Använd korta, tjocka ledningar och undvik bullriga miljöer för att minska mätfelen.
  4. Övervaka strömgränser: Se till att sensorn eller shuntmotståndet kan hantera den maximala strömmen utan överhettning.

Tillämpningar av aktuell mätning

  1. Övervakning av batterikonsumtion i IoT -enheter
  2. Mätning av nuvarande drag i motorer
  3. Testlysdioder och andra komponenter
  4. Krafthantering i inbäddade system

Felsökning

  • Felaktiga avläsningar: Dubbelkontrollsensorledningar och kalibreringsvärden.
  • Ingen utgång: Se till att lasten är ansluten och strömmen flyter.
  • Fluktuerande värden: Lägg till en kondensator över sensorns strömförsörjning för att stabilisera avläsningarna.

Slutsats

Att mäta ström med en Arduino är enkelt när du använder rätt verktyg som nuvarande sensorer eller shuntmotstånd. Genom att följa den här guiden kan du övervaka strömmen i dina kretsar exakt, vilket möjliggör bättre krafthantering och systemdiagnostik. Experimentera med olika sensorer för att hitta den bästa passformen för dina projekt!

Lämna en kommentar

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.