Virran mittaus sähköisissä piireissä on yleinen vaatimus anturit, moottorit, LEDit ja muut komponentit. Vaikka Arduino ei voi suoraan mitata virtaa, voit käyttää ulkoisia komponentteja, kuten nykyistä anturia tai šunttivastusta, mitata sitä epäsuorasti. Tämä opetusohjelma opastaa sinua ajan mittausprosessin kanssa Arduinon kanssa.
Mitä tarvitset
- Arduino -lautakunta (esim. UNO, Mega, Nano)
- Nykyinen anturi (esim. ACS712, INA219) tai Sidonvastus
- Leipälevy- ja hyppyjohdot
- Latauslaite (esim. LED, moottori tai mikä tahansa komponentti, jonka haluat mitata virran)
- Virtalähde (5 V tai 12 V kuormasta riippuen)
- Tietokone, jossa Arduino IDE on asennettu
Menetelmä 1: Virta -anturin käyttäminen
Nykyiset anturit, kuten ACS712 tai INA219, yksinkertaistavat virran mittausta tarjoamalla analoginen tai digitaalinen lähtö verrannollinen virtaan.
1.
ACS712 -anturi mittaa sekä AC- että DC -virtaa ja tuottaa analogisen signaalin, joka on verrannollinen sen läpi virtaavaan virtaan.
Kytkentäkaavio
ACS712 -nasta | Yhteys |
---|---|
VCC | Arduino 5V |
Hölynpöly | Arduino gnd |
Ulkona | Arduino -analoginen tappi (esim. A0) |
IP+ | Positiivinen kuormitusliitäntä |
IP- | Negatiivinen kuormitusliitäntä |
Esimerkkikoodi
#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. INA219 -virta -anturin käyttäminen
INA219 on tarkkaan virrananturi, joka kommunikoi Arduinon kanssa I2C: n kautta, tarjoamalla sekä virran että jännitteen mittauksia.
Kytkentäkaavio
Ina219 -nasta | Yhteys |
---|---|
VCC | Arduino 5V |
Hölynpöly | Arduino gnd |
SDA | Arduino SDA (esim. A4 UNO: lla) |
SCL | Arduino SCL (esim. A5 UNO: lla) |
Vin+ | Positiivinen kuormitusliitäntä |
Vin- | Negatiivinen kuormitusliitäntä |
Esimerkkikoodi
Asenna Adafruit INA219 -kirjasto Arduino -kirjastopäällikön kautta.
#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);
}
Menetelmä 2: Shunt -vastuksen käyttäminen
Shunt-vastus on matalan vastusvastus, joka on sijoitettu sarjaan kuorman kanssa. Mittaamalla jännitteen pudotus Shunt -vastuksen poikki, voit laskea virran Ohmin laki käyttämällä:
I = v / r
Kytkentäkaavio
Komponentti | Yhteys |
---|---|
Sidonvastus | Sarjassa kuorman kanssa |
Arduino -analoginen nasta | Šuntin vastuksen poikki |
Ladata | Kytketty virtalähteeseen |
Esimerkkikoodi
#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);
}
Parhaat käytännöt tarkkoihin mittauksiin
- Valitse oikea anturi: Valitse nykyinen anturi tai shunttivastus, joka sopii odotetulle virta -alueelle.
- Kalibroi asetukset: Säädä tiettyjen anturi- tai šunttivastuksen koodi tarkkojen lukemien varmistamiseksi.
- Minimoi melu: Käytä lyhyitä, paksuja johtoja ja vältä meluisia ympäristöjä mittausvirheiden vähentämiseksi.
- Seuraa voimarajoituksia: Varmista, että anturi tai shunttivastus pystyy käsittelemään maksimivirran ilman ylikuumenemista.
Nykyisen mittauksen sovellukset
- Akun kulutuksen seuranta Internet -laitteissa
- Virta -arvon mittaus moottoreissa
- LEDien ja muiden komponenttien testaaminen
- Sulautettujen järjestelmien virranhallinta
Vianetsintä
- Virheelliset lukemat: Kaksinkertainen anturin johdotus- ja kalibrointiarvot.
- Ei lähtöä: Varmista, että kuorma on kytketty ja virta virtaa.
- Vaihtelevat arvot: Lisää kondensaattori anturin virtalähteen läpi lukemien vakauttamiseksi.
Johtopäätös
Arduinon virran mittaaminen on suoraviivaista, kun käytetään oikeita työkaluja, kuten nykyisiä antureita tai šunttivastuksia. Seuraamalla tätä opasta, voit seurata piireissä tarkasti virtaa, mikä mahdollistaa paremman virranhallinnan ja järjestelmän diagnostiikan. Kokeile erilaisia antureita löytääksesi parhaiten sopivuuden projekteihisi!