Az Arduino egy sokoldalú mikrokontroller, amely képes mérni a feszültséget a beépített analóg-digitális konverter (ADC) segítségével. Ez a képesség elengedhetetlen az olyan alkalmazásokhoz, mint az akkumulátorok megfigyelése, a bemeneti jelek érzékelése és az érzékelő kimenetek mérése. Ez az oktatóanyag végigvezeti Önt az Arduino -val végzett feszültség mérésének folyamatán.
Mire lesz szüksége
- Arduino Board (például Uno, Mega, Nano)
- Feszültségválasztó (Ha az 5 V -nál magasabb feszültség mérése)
- Kenyérlemez és jumper vezetékek
- Feszültségforrás mérni (például akkumulátor, érzékelő vagy állítható tápegység)
- Egy számítógép, amelyen az Arduino IDE telepített
1. lépés: A feszültségmérés megértése az Arduino -n
Az Arduino ADC analóg feszültségeit (a legtöbb táblán 0 V-ról 5 V-ra) konvertálja 10 bites digitális értékre. Ez azt jelenti, hogy az ADC értéket biztosít 0 és 1023 között, ahol 0 0 V -nak felel meg, és 1023 -nak felel meg az 5 V -nak (vagy a referencia feszültségnek).
Kulcsképlet
A bemeneti feszültség kiszámításához:
Voltage = (ADC_Value / 1023.0) * Reference_Voltage
Jegyzet: A legtöbb Arduino táblán az alapértelmezett referenciafeszültség 5 V. A 3.3 V -os változat használatakor állítsa be a képletet ennek megfelelően.
2. lépés: Közvetlen feszültségmérés
5 V -os feszültség esetén a feszültségforrást közvetlenül csatlakoztathatja egy analóg tűhöz.
Vezeték
Összetevő | Arduino Pin |
---|---|
Feszültségforrás (+) | A0 |
Feszültségforrás (-) | GND |
Példakód
#define analogPin A0
void setup() {
Serial.begin(9600);
}
void loop() {
int adcValue = analogRead(analogPin); // Read ADC value
float voltage = (adcValue / 1023.0) * 5.0; // Convert to voltage
Serial.print("Voltage: ");
Serial.print(voltage, 2); // Print voltage with 2 decimal places
Serial.println(" V");
delay(1000); // Update every second
}
3. lépés: A nagyobb feszültségek mérése feszültségválasztóval
Az 5 V -nél magasabb feszültség méréséhez használja a feszültségválasztó A bemeneti feszültség méretezéséhez.
Feszültség elválasztó képlet
A feszültségválasztó két ellenállással skálázza a bemeneti feszültséget:
Vout = Vin * (R2 / (R1 + R2))
Például, hogy legfeljebb 12 V -ig mérje:
- R1 = 10K ohm
- R2 = 10K ohm
- Skálázási faktor = 0,5 (vout = vin / 2)
Vezeték
Összetevő | Kapcsolat |
---|---|
Feszültségforrás (+) | Feszültség elválasztó R1 bemenet |
R1/r2 feszültség elválasztó csomópont | Arduino A0 |
Feszültségforrás (-) | GND |
Példakód
#define analogPin A0
const float R1 = 10000.0; // Resistor R1 value in ohms
const float R2 = 10000.0; // Resistor R2 value in ohms
void setup() {
Serial.begin(9600);
}
void loop() {
int adcValue = analogRead(analogPin); // Read ADC value
float voltage = (adcValue / 1023.0) * 5.0; // Voltage at A0
// Scale up to actual input voltage
float inputVoltage = voltage * ((R1 + R2) / R2);
Serial.print("Input Voltage: ");
Serial.print(inputVoltage, 2); // Print with 2 decimal places
Serial.println(" V");
delay(1000); // Update every second
}
4. lépés: Külső referencia feszültség használata
A pontosabb mérésekhez használhat egy külső referenciafeszültséget, ha csatlakoztatja azt az AREF PIN -hez.
Lépések a külső referencia beállításához
- Csatlakoztasson egy stabil referenciafeszültséget (például 3.3 V) az AREF PIN -hez.
- A kódban állítsa be a referenciafeszültséget:
analogReference(EXTERNAL);
- Állítsa be a számításokat az új referenciafeszültség kódjában.
5. lépés: A pontos mérések legjobb gyakorlatai
- Kerülje a zajt: Használjon rövid vezetékeket és megfelelő földelést az elektromos zaj csökkentéséhez.
- Kalibrálja a beállítást: A pontosság biztosítása érdekében ellenőrizze a multiméterrel rendelkező olvasmányokat.
- Védje az Arduino -t: Használjon ellenállást vagy diódákat az analóg bemeneti csap védelmére a túlfeszültségtől.
- Szűrő zajos jelek: Adjon hozzá egy kondenzátort a bemeneten keresztül a feszültség ingadozásainak simításához.
Feszültségmérés alkalmazása
- Az akkumulátor szintjének ellenőrzése
- Analóg jelek érzékelése az érzékelőktől
- A tápegység feszültségeinek mérése
- DIY multiméteres projektek
Hibaelhárítás
-
Helytelen olvasmányok:
- Ellenőrizze a vezetékeket és biztosítsa a feszültség -elválasztó megfelelő ellenállási értékeit.
- Ellenőrizze a referenciafeszültséget a számításokban.
-
Ingadozó értékek:
- Adjon hozzá egy kondenzátort (10 µF vagy 100 µF) a bemeneten.
-
Túlfeszültség védelme:
- Ellenőrizze, hogy a bemeneti feszültség nem haladja meg a feszültség elválasztó kiszámított határértékeit.
Következtetés
A feszültség mérése Arduino -val egyértelmű és nagyon hasznos számos elektronikai projekthez. Függetlenül attól, hogy figyelemmel kíséri az akkumulátor szintjét, akár az érzékelőkkel való kapcsolatfelvételt, a feszültségmérés megértése számos lehetőséget nyit meg. Kísérletezzen különböző beállításokkal, és integrálja a feszültségmérést a projektekbe!