Mõõdame pinget ja voolu Arduinoga

Mõtetesse on jäänud pidama idee robotist, mida tuvastab kui laetud akud on ja vajadusel sõidab end laadima. Siit ka postituse põhjus, et kuidas Arduino UNOga pinget mõõta. Ja kui juba asja kallal oleme, siis mõõdame selle voolu ka juba ära.

Lihtne 5V mõõtmine

Arduino Uno suudab ise mõõta toiteallika kuni 5V (max) pinget. Ühendades positiivse klemmi mõne analoogsisendiga. Näiteks A0.

Analoogsisend teisendab pinge 0-5V osadeks 0-1023. See tähendab, et 5V/1023 teeb ühe ühiku suuruseks 0,00489V. Seega saame võtta mõõdetud väärtuse ja korrutada lõitud suurusega.

Mõõtes testriga üle, siis antud meetod valetab 50mV väiksemaks.

Mõõtmistulemuste parandamine ADS1115 abil

Kasutame analoog-digitaal muundurit ADS1115, et näha, kas mõõtmistulemused muutuvad paremaks.

Eelpool vaatasime, et analoogsignaal jagatakse 1024 tükiks. See tuleb sellest, et port on 10-bitine ning 210=1024. Antud seade ADS1115 on aga 16-bitine, mis tähendab, et saame analoogsignaali tükeldada väiksemateks tükkideks (resolutsioon). Tegelikult kasutatakse ühte bitti arvu kuvamiseks positiivsena või negatiivsena. Seega on saame kokku 215=32768 mõõtepunkti.

Ühendame mooduli Arduinoga:

V –> 5V
G –> GND
SCL –> SCL
SDA –> SDA
ADDR –> GND
A0 –> aku/patarei +
A1 –> aku/patarei –

Kasutame arvutamiseks Adafruit ADS1X15 Library’t, mille leiad siit: https://github.com/adafruit/Adafruit_ADS1X15

Antud juhul on tulemus juba palju ligilähedasem testri omale.

Voolu mõõtmine MAX471 mooduliga

Kasutame voolu mõõtmiseks MAX471 kiviga varustatud moodulit. See töötab 3-36V ja mõõdab kuni 3A voolu. Väljundis, ehk mõõtmistulemuseks, antakse pinge, mis vastab voolu väärtusele. Ehk kui vool on 1A, siis väljundis on 1V.

Voolu mõõtmiseks peame selle külge ühendama tarbija:

Sisend
RS+ –> aku +
RS- –> tarbija +
GND –> aku ja tarbija –

Väljund
GND –> Arduino GND
OUT –> Arduino GND

NB! Mootorit kasutades on hea ühendada klemmid omavahel 0,1 µF kondensaatoriga.

Ja mõõtmise kood on samasugune, nagu alguses pinge mõõtmisel kasutasime. Tegelikult ongi ju pinge mõõtmine :)

Voolu ja pinge mõõtmine INA219 abil

Viimaseks on mul jäetud moodul INA219, mis suudab mõõta nii voolu (3,2A) kui ka pinget (26V). Ja kui neid kahte saab mõõta, siis leiame ka võimsuse, mille lagi on P=UI=83,2W.

Ühendamine on alguses kenasti arusaadav:

Vcc –> Arduino +5V
Gnd –> Gnd
Scl –> SCL
Sda –> Sda

Vin+ ja Vin- ühendatakse koormus, mille pinget või voolu soovitakse mõõta ning toiteallikas. Vin+ tuleb ühendada toiteallikas ning Vin- tarbija pluss-klemmile. Kõigi maandused on samad.

Kood jaoks pead alla laadima INA219 library: https://github.com/adafruit/Adafruit_INA219.

Sama moodulit kasutame hiljem ka päikeseenergia arvutamisel.

veebruar 27, 2017

0 responses on "Mõõdame pinget ja voolu Arduinoga"

    Jäta sõnum/küsimus

    Meist

    metshein.com on pakkunud juba üle kümne aasta tasuta eestikeelseid infotehnoloogiaga seotud kursusi. Sama kurssi püütakse järgida ka edaspidi. Eesmärk muuta arvutiõpe võimalikult lihtsaks!

    metshein.com: parim eestikeelne koolitusportaal

    Autorist ja kontakt: kliki siia

    Kontrolli tunnistust

    Tööribale