Obsah:

Měření proudového snímače ACS724 s Arduino: 4 kroky
Měření proudového snímače ACS724 s Arduino: 4 kroky

Video: Měření proudového snímače ACS724 s Arduino: 4 kroky

Video: Měření proudového snímače ACS724 s Arduino: 4 kroky
Video: Arduino návody | Proudový snímač INA219 2024, Listopad
Anonim
Image
Image
obraz
obraz

V tomto pokynu budeme experimentovat s připojením proudového senzoru ACS724 k Arduinu a provádět měření proudu. V tomto případě je proudový senzor odrůda +/- 5A s výstupem 400 mv/A.

Arduino Uno má 10bitový ADC, takže dobré otázky zní: Jak přesné je aktuální čtení, které můžeme získat, a jak stabilní je?

Začneme připojením senzoru k voltmetru a měřiči proudu a provedeme analogové měření, abychom zjistili, jak senzor funguje, a poté jej připojíme ke kolíku Arduino ADC a uvidíme, jak dobře funguje.

Zásoby

1 - Breadboard2 - Stolní napájecí zdroje2 - DVM1 - Senzor ACS724 +/- 5A1 - Arduino Uno1 - LM78053 - 10 ohmů, 10W odpory 1 - 1nF cap1 - 10nF cap1 - 0,1uF cap

Krok 1:

Zkušební obvod je zobrazen na obrázku. Připojení z 5V pinu Arduino na lištu LM7805 +5V je volitelné. S touto propojkou na místě můžete dosáhnout lepších výsledků, ale dávejte si pozor na kabeláž, pokud ji používáte, protože Arduino je připojeno k vašemu počítači a druhý napájecí zdroj překročí 5V, když ho zapnete, abyste zvýšili proud přes senzor.

Pokud spojíte napájecí zdroje dohromady, pak napájecí zdroj senzoru a napájecí zdroj Arduino budou mít přesně stejný referenční bod +5V a očekávali byste konzistentnější výsledky.

Udělal jsem to bez tohoto připojení a viděl jsem vyšší hodnotu nulového proudu na proudovém senzoru (2 530 V místo očekávaných 2 500 V) a nižší než očekávané čtení ADC v bodě nulového proudu. Dostával jsem digitální odečet ADC asi 507 až 508 bez proudu přes čidlo, pro 2 500 V byste měli vidět odečet ADC asi 512. Opravil jsem to v softwaru.

Krok 2: Testování měření

Testovací měření
Testovací měření

Analogová měření voltmetrem a ampérmetrem naznačila, že senzor je velmi přesný. Při testovacích proudech 0,5 A, 1,0 A a 1,5 A to bylo přesně správné na milivolt.

Měření ADC s Arduinem nebyla zdaleka tak přesná. Tato měření byla omezena 10bitovým rozlišením Arduino ADC a problémy s hlukem (viz video). Kvůli šumu čtení ADC přeskakovalo v nejhorším případě až do 10 nebo více kroků bez proudu skrz snímač. Vzhledem k tomu, že každý krok představuje přibližně 5 mv, jedná se o fluktuaci 50 mv a se snímačem 400 mv/amp představuje fluktuaci 50 mv/400 mv/amp = 125 ma! Jediným způsobem, jak jsem mohl získat smysluplné čtení, bylo vzít 10 čtení za sebou a poté je zprůměrovat.

S 10bitovými ADC nebo 1024 možnými úrovněmi a 5V Vcc můžeme vyřešit přibližně 5/1023 ~ 5mv na krok. Výstup senzoru dává 400 mv/Amp. V nejlepším případě tedy máme rozlišení 5 mv/400 mv/amp ~ 12,5 ma.

Kombinace fluktuací způsobených šumem a nízkým rozlišením tedy znamená, že tuto metodu nemůžeme použít k přesnému a důslednému měření proudu, zejména malých proudů. Tuto metodu můžeme použít k získání představy o aktuální úrovni při vyšších proudech, ale není to tak přesné.

Krok 3: Závěry

Závěry
Závěry

Závěry:

-Analogové hodnoty ACS724 jsou velmi přesné.

-ACS724 by měl velmi dobře fungovat s analogovými obvody. např. ovládání proudu napájecího zdroje pomocí analogové zpětnovazební smyčky.

-Při používání ACS724 s 10bitovým ADC Arduino jsou problémy s hlukem a rozlišením.

-Dostatečné pouze pro sledování průměrného proudu pro obvody s vyšším proudem, ale ne dost dobré pro řízení konstantního proudu.

-Pro lepší výsledky může být nutné použít externí 12bitový nebo více čipů ADC.

Krok 4: Arduino kód

Zde je kód, který jsem použil k jednoduchému měření hodnoty ADC na Arduino A0 pin a kód pro převod napětí senzoru na proud a průměrné hodnoty 10 naměřených hodnot. Kód je poměrně vysvětlující a komentovaný pro kód převodu a průměrování.

Doporučuje: