Pomiar napięcia źródła prądu Arduino za pomocą wejścia analogowego

9

Zasilam Arduino za pomocą baterii 5 V (3,7 V do modułu podwyższającego) i muszę zmierzyć napięcie. Powiedzmy, że bateria dostarcza wysoki prąd , czy bezpiecznie jest mierzyć napięcie za pomocą wejścia analogowego? Jak w tym:

wprowadź opis zdjęcia tutaj

Pytam dlatego, że niewiele wiem o architekturze i ograniczeniach ADC Arduino. Więc normalnie zrobiłbym to dla bezpieczeństwa:

wprowadź opis zdjęcia tutaj

Czy połączenia na pierwszym schemacie są bezpieczne dla ADC? Z góry dziękuję!

Uwaga: Podobne pytanie zostało zadane tutaj: ( Monitorowanie zużycia prądu stałego ), ale nie odpowiada na pytanie o wysokie natężenie prądu na akumulatorze.

Ahmed Farid
źródło
1
Skąd masz akumulator 5 V?
W rzeczywistości jest to bateria 3,7 V, która wchodzi w obwód podwyższającego napięcie regulatora. Rzeczywiście jestem zainteresowany pomiarem samej baterii 3,7 V, ale dla przykładu założyłem, że jej 5 V pokazuje, że Arduino działa.
Ahmed Farid,
Ach, ale to może coś zmienić. Prawdopodobnie nie: arduino nie będzie obchodziło, ile prądu pobiera bateria, o ile nie cały ten prąd przechodzi przez pin IO. Ale nie jestem pewien, nie znam arduino.
To prawda. Martwię się o obecne wejście na pin Analog In, jeśli podłączę go bezpośrednio do akumulatora.
Ahmed Farid,

Odpowiedzi:

6

Sprawdź w arkuszu danych prąd wejściowy na pinie I / O. Zależy to od dokładnego typu kontrolera w twoim Arduino. Prawdopodobnie jest to pin wejściowy we / wy prądu upływu i będzie zbliżony do 1 μA .

Oto typowy arkusz danych ATmega używany w Uno / Duemilanove / ... , parametr można znaleźć na stronie 304. Dokładne szczegóły znajdują się w arkuszu danych dla konkretnego sterownika .

Jeśli używasz baterii 3,7 V i konwertera podwyższającego napięcie do zasilania 5 V kontrolera, możesz podłączyć baterię bezpośrednio do wejścia analogowego kontrolera. Jednak gdy napięcie wyjściowe konwertera podwyższającego spadnie poniżej napięcia akumulatora (z jakiegokolwiek powodu), wtedy całe Arduino będzie zasilane przez analogowy pin wejściowy i to jest to, czego nie chcesz. Wszystkie piny wejściowe są zabezpieczone przed przepięciem, co umożliwia takie zachowanie, ale diody nie są przystosowane do prądów ciągłych. Podsumowując: najlepiej jest dołączyć rezystor szeregowy między baterią a pinem wejściowym.

Ale teraz twój pomiar opiera się na dokładności zasilacza 5 V. W zależności od tego, jaki dokładnie posiadasz kontroler, dostępne są różne wewnętrzne napięcia odniesienia, które są znacznie dokładniejsze niż napięcie zasilania. Jeśli dodasz dodatkowy rezystor do ziemi (R2), możesz użyć takiego odniesienia, aby dokładnie zmierzyć napięcie wejściowe. Nazywa się to (rezystancyjnym) dzielnikiem napięcia. Przy podanym stosunku napięcie na pinie wejściowym wyniesie 1 V, gdy napięcie akumulatora wynosi 3,7 V:

Vmeasurement=R2×VBATTR1+R2

schematyczny

symulacja tego obwodu - Schemat utworzony przy użyciu CircuitLab

jippie
źródło
1
Zasadniczo możliwe jest podłączenie go bezpośrednio do akumulatora, ale NIE jest to zalecane, jeśli zmienia się napięcie 5 V. Nawet jeśli 5v jest regulowane i stałe?
Ahmed Farid,
2
Powinno być bezpiecznie, jeśli 5 V jest stałe, ale wszystko idzie źle przez cały czas, więc: lepiej bezpiecznie niż przepraszać. Jeden lub dwa oporniki są znacznie tańsze niż nowy mikrokontroler. Inżynieria to nie tylko sprawianie, aby rzeczy działały, ale także sprawianie, by rzeczy działały zgodnie z wymaganiami.
jippie
Kolejne pytanie, jeśli mogę: Czy pojedynczy opór (1 K) równolegle do akumulatora nie jest wystarczająco dobry, aby zapobiec wprowadzeniu wysokiego prądu? (Zobacz moją drugą figurę)
Ahmed Farid,
Nie, nie robi nic poza pobieraniem baterii.
jippie
4

Inną opcją jest użycie wewnętrznego odniesienia napięcia pasmowego 1,1 V w Arduino w celu ustalenia wartości VCC bez użycia jakichkolwiek dodatkowych części zewnętrznych, jak opisano na tych dwóch łączach:

http://jeelabs.org/2012/05/04/measuring-vcc-via-the-bandgap/

i

http://arduino.cc/forum/index.php?topic=88935.0

Jedyną przeszkodą jest to, że musisz ustalić wartość kalibracji w stosunku do wewnętrznego pasma 1,1 V, ponieważ może być wyłączona nawet o 10%.

Ale to nie wymagałoby żadnych dodatkowych części i pozwoliłoby twojemu atmega określić napięcie jego źródła zasilania.

Wing Tang Wong
źródło
3
Oto kolejny artykuł, który omawia jak to zrobić. Kod, którego używa, jest nieco inny: dostarczyćyourown.com
ThomasW
@ThomasW nice! Kolejny świetny artykuł na temat korzystania z pasma częstotliwości 1.1v.
Wing Tang Wong