2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-23 15:04
În acest instructable vom experimenta conectarea unui senzor de curent ACS724 la un Arduino pentru a efectua măsurători de curent. În acest caz, senzorul de curent este o varietate de +/- 5A care produce 400 mv / A.
Arduino Uno are un ADC de 10 biți, deci întrebările bune sunt: cât de exactă este citirea curentă pe care o putem obține și cât de stabilă este?
Vom începe prin conectarea senzorului la un voltmetru și un contor de curent și vom face citiri analogice pentru a vedea cât de bine funcționează senzorul și apoi îl vom conecta la un pin Arduino ADC și vom vedea cât de bine funcționează.
Provizii
1 - Breadboard2 - Surse de alimentare de pe bancă2 - DVM's1 - senzor ACS724 +/- 5A1 - Arduino Uno1 - LM78053 - 10 ohm, rezistențe 10W1 - capac 1nF1 - capac 10nF1 - capac 0.1uF
Pasul 1:
Circuitul de testare este așa cum se arată în diagramă. Conexiunea de la pinul Arduino 5V la șina LM7805 + 5V este opțională. S-ar putea să obțineți rezultate mai bune cu acest jumper, dar fiți atenți la cablare dacă îl utilizați, deoarece Arduino este conectat la computer și a doua sursă de alimentare va depăși 5V când îl porniți pentru a crește curentul prin senzor.
Dacă conectați sursele de alimentare împreună, sursa de alimentare a senzorului și sursa de alimentare Arduino vor avea exact același punct de referință + 5V și v-ați aștepta la rezultate mai consistente.
Am făcut asta fără această conexiune și am văzut o citire de curent zero mai mare pe senzorul de curent (2.530 V în loc de 2.500 V așteptată) și citire ADC mai scăzută la punctul curent zero. Primeam o citire digitală ADC de aproximativ 507 până la 508 fără curent prin senzor, pentru 2.500V ar trebui să vedeți o citire ADC de aproximativ 512. Am corectat acest lucru în software.
Pasul 2: Testați măsurătorile
Măsurătorile analogice cu un voltmetru și un ampermetru au indicat faptul că senzorul este foarte precis. La curenții de testare de 0,5A, 1,0A și 1,5A a fost exact corect la milivolți.
Măsurătorile ADC cu Arduino nu au fost la fel de exacte. Aceste măsurători au fost limitate de rezoluția de 10 biți a Arduino ADC și de problemele de zgomot (a se vedea videoclipul). Datorită zgomotului, citirea ADC sărea în jurul celui mai rău caz până la 10 sau mai mulți pași fără curent prin senzor. Având în vedere că fiecare pas reprezintă aproximativ 5 mv, aceasta este aproximativ o fluctuație de 50 mv și cu un senzor de 400mv / amp reprezintă o fluctuație de 50mv / 400mv / amp = 125ma! Singurul mod în care puteam obține o lectură semnificativă era să iau 10 lecturi la rând și apoi să le fac media.
Cu un ADC de 10 biți sau 1024 nivele posibile și 5V Vcc putem rezolva aproximativ 5/1023 ~ 5mv pe pas. Senzorul scoate 400mv / Amp. Deci, în cel mai bun caz, avem o rezoluție de 5mv / 400mv / amp ~ 12.5ma.
Deci combinația de fluctuații datorate zgomotului și rezoluției scăzute înseamnă că nu putem folosi această metodă pentru a măsura cu precizie și consecvență curentul, în special curenții mici. Putem folosi această metodă pentru a ne oferi o idee despre nivelul curent la curenți mai mari, dar nu este chiar atât de precis.
Pasul 3: Concluzii
Concluzii:
-Citirile analogice ACS724 sunt foarte precise.
-ACS724 ar trebui să funcționeze foarte bine cu circuitele analogice. de ex. controlul curentului de alimentare cu o buclă de feedback analogică.
-Există probleme cu zgomotul și rezoluția utilizând ACS724 cu Arduino 10 biți ADC.
-Destul de bun pentru a monitoriza doar curentul mediu pentru circuite de curent mai mare, dar nu suficient pentru controlul curentului constant.
-Pot fi nevoie să utilizați un cip extern ADC de 12 biți sau mai mult pentru rezultate mai bune.
Pasul 4: Cod Arduino
Iată codul pe care l-am folosit pentru a măsura pur și simplu valoarea ADC pin Arduino A0 și codul pentru a converti tensiunea senzorului în curent și pentru a lua media a 10 citiri. Codul este destul de explicativ și comentat pentru codul de conversie și mediu.
Recomandat:
Diferența dintre (curent alternativ și curent continuu): 13 pași
Diferența dintre (curent alternativ și curent continuu): Toată lumea știe că electricitatea este în mare parte curent continuu, dar ce zici de un alt tip de electricitate? Cunoști Ac? Ce înseamnă AC? Este utilizabil atunci DC? În acest studiu vom cunoaște diferența dintre tipurile de electricitate, surse, aplicații
Soft Starter (limitator de curent de intrare) pentru încărcări de curent alternativ și continuu: 10 pași
Soft Starter (limitator de curent de intrare) pentru încărcări de curent alternativ și continuu: curentul de intrare / supratensiunea de pornire este curentul maxim de intrare instantanee tras de un dispozitiv electric la prima pornire. Curentul de pornire este mult mai mare decât curentul stării de echilibru al sarcinii și aceasta este sursa multor probleme, cum ar fi siguranța bl
Elementele de bază ale senzorului de umiditate: 3 pași
Elementele de bază ale senzorului de umiditate: Acesta este un tutorial de bază despre modul de utilizare a modulului senzor DHT 11 cu o placă Arduino
Hydroponics IoT - Utilizarea Watson IBM pentru măsurători PH și EC: 7 pași (cu imagini)
Hydroponics IoT - Utilizarea Watson IBM pentru măsurători PH și EC: Această instrucțiune va arăta cum să monitorizați EC, pH și temperatura unei configurații hidroponice și să încărcați datele în serviciul Watson IBM. Watson este liber să înceapă. Există planuri plătite, dar planul gratuit este mai mult decât suficient pentru acest proiect
Măsurători de lumină și culoare cu Pimoroni Enviro: bit pentru Micro: bit: 5 pași
Măsurători de lumină și culoare Cu Pimoroni Enviro: bit pentru Micro: bit: Am lucrat anterior la unele dispozitive care permit măsurători de lumină și culoare și s-ar putea să găsiți multe despre teoria din spatele acestor măsurători, instructivele aici și aici. a lansat recent enviro: bit, un supliment pentru m