2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
U ovom uputstvu ćemo eksperimentirati s povezivanjem ACS724 osjetnika struje na Arduino za mjerenje struje. U ovom slučaju trenutni osjetnik je varijacija +/- 5A koja daje 400 mv/A.
Arduino Uno ima 10 -bitni ADC, pa su dobra pitanja: Koliko je točno očitavanje koje možemo dobiti i koliko je stabilno?
Za početak ćemo samo spojiti senzor na voltmetar i mjerač struje te izvršiti analogna očitanja da vidimo koliko dobro senzor radi, a zatim ćemo ga spojiti na Arduino ADC pin i vidjeti koliko dobro radi.
Pribor
1 - Oglasna ploča2 - Napajanja za stolno računalo2 - DVM -ovi1 - Senzor ACS724 +/- 5A1 - Arduino Uno1 - LM78053 - 10 ohma, otpornici 10 W1 - 1nF kapa1 - 10nF kapa1 - 0,1uF kapa
Korak 1:
Ispitni krug je prikazan na dijagramu. Spajanje s Arduino 5V pina na LM7805 +5V tračnicu nije obavezno. S ovim kratkospojnikom možete postići bolje rezultate, ali budite oprezni pri ožičenju ako ga koristite jer je Arduino spojen na vaše računalo, a drugo napajanje će premašiti 5 V kad ga uključite kako biste povećali struju kroz senzor.
Ako spojite napajanje zajedno, napajanje senzora i Arduino napajanje imat će potpuno istu referentnu točku +5V i očekivali biste dosljednije rezultate.
Učinio sam to bez ove veze i vidio sam veće očitanje nulte struje na osjetniku struje (2.530 V umjesto očekivanih 2.500 V) i niže od očekivanog očitanja ADC -a na nultoj strujnoj točki. Dobivao sam digitalno očitanje ADC -a od oko 507 do 508 bez struje kroz senzor, za 2.500V trebali biste vidjeti očitanje ADC -a od oko 512. To sam ispravio u softveru.
Korak 2: Probna mjerenja
Analogna mjerenja s voltmetrom i ampermetrom pokazala su da je senzor vrlo precizan. Pri ispitnim strujama od 0,5A, 1,0A i 1,5A bilo je točno u milivoltu.
ADC mjerenja s Arduinom nisu bila ni približno točna. Ova su mjerenja bila ograničena 10 -bitnom rezolucijom Arduino ADC -a i problemima s bukom (pogledajte video). Zbog buke, očitanje ADC -a skakalo je u najgorem slučaju do 10 ili više koraka bez struje kroz senzor. Uzimajući u obzir da svaki korak predstavlja oko 5 mv, to je fluktuacija od 50 mv, a sa senzorom od 400 mv/amp predstavlja fluktuaciju 50 mv/400 mv/amp = 125 ma! Jedini način na koji sam mogao doći do smislenog čitanja bio je uzeti 10 čitanja zaredom i zatim ih prosječno izračunati.
S 10 bitnim ADC -om ili 1024 mogućih razina i 5 V Vcc možemo riješiti oko 5/1023 ~ 5mv po koraku. Senzorski izlaz daje 400mv/Amp. Dakle, u najboljem slučaju imamo rezoluciju od 5mv/400mv/amp ~ 12,5 ma.
Dakle, kombinacija fluktuacija zbog šuma i niske razlučivosti znači da ne možemo koristiti ovu metodu za točno i dosljedno mjerenje struje, posebno malih struja. Ovu metodu možemo upotrijebiti da bismo stekli predodžbu o trenutnoj razini pri većim strujama, ali jednostavno nije toliko točna.
Korak 3: Zaključci
Zaključci:
-Analog očitanja ACS724 vrlo su točni.
-ACS724 bi trebao vrlo dobro raditi s analognim krugovima. npr. upravljanje strujom napajanja analognom petljom povratne sprege.
-Postoje problemi sa šumom i razlučivošću pomoću ACS724 s Arduino 10 -bitnim ADC -om.
-Dovoljno dobro za samo praćenje prosječne struje za krugove veće struje, ali nedovoljno dobro za kontrolu konstantne struje.
-Možda je za bolje rezultate potrebno koristiti vanjski 12 -bitni ili više ADC čip.
Korak 4: Arduino kod
Evo koda koji sam koristio za jednostavno mjerenje Arduino A0 pin ADC vrijednosti i kod za pretvaranje napona senzora u struju i uzimanje prosjeka od 10 očitanja. Kôd je razumljiv sam po sebi i komentiran je za kôd za pretvorbu i usrednjavanje.
Preporučeni:
Dodavanje značajke trenutnog ograničenja Buck/Boost pretvaraču: 4 koraka (sa slikama)
Dodavanje značajke trenutnog ograničenja u Buck/Boost pretvarač: U ovom ćemo projektu pobliže pogledati zajednički pretvarač u obliku buck/boosta i stvoriti mali dodatni krug koji mu dodaje značajku ograničenja struje. S njim se pretvarač "buck/boost" može koristiti baš kao i varijabilno napajanje laboratorijske klupe. Le
Arduino laserski sustav mjerenja vremena: 6 koraka (sa slikama)
Arduino Laser-based Timing System: Kao dio mog učenja, trebao mi je sustav za točno mjerenje brzine modela vozila koje je prešlo 10 metara. U početku sam mislio da ću kupiti jeftin gotov sustav s eBaya ili Aliexpressa, ti su sustavi općenito poznati kao svjetlosna vrata, fo
Projekt mjerenja snage vlastitim rukama pomoću Arduino Pro Mini: 5 koraka
Projekt mjerača snage vlastitim rukama pomoću Arduino Pro Mini: Uvod Pozdrav, elektronička zajednica! Danas ću vam predstaviti projekt koji vam omogućuje mjerenje napona i struje uređaja i prikaz zajedno s vrijednostima snage i energije. Mjerenje struje/napona Ako želite mjeriti
IoT modul napajanja: Dodavanje značajke mjerenja IoT energije u moj solarni regulator punjenja: 19 koraka (sa slikama)
IoT Power Module: Dodavanje značajke IoT mjerenja energije u moj solarni regulator punjenja: Pozdrav svima, nadam se da ste svi super! U ovom uputstvu pokazat ću vam kako sam napravio IoT modul za mjerenje energije koji izračunava količinu energije koju generiraju moji solarni paneli, a koju koristi moj solarni regulator punjenja t
IoT Hydroponics - Korištenje IBM -ovog Watsona za PH i EC mjerenja: 7 koraka (sa slikama)
IoT Hydroponics - Korištenje IBM -ovog Watsona za PH i EC mjerenja: Ova instrukcija će pokazati kako nadzirati EC, pH i temperaturu postavljanja hidroponike i učitavati podatke u IBM -ovu Watson uslugu. Watson je slobodan za početak. Postoje plaćeni planovi, ali besplatni plan je više nego dovoljan za ovaj projekt