Elektroda.pl
Elektroda.pl
X
TermopastyTermopasty
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Prosty, jednopunktowy wskaźnik poziomu naładowania baterii

ghost666 30 Maj 2020 09:50 3498 4
  • Wraz z szybkim rozwojem systemów wbudowanych, a zwłaszcza urządzeń Internetu Rzeczy (IoT), rośnie zapotrzebowanie na ulepszenia systemów akumulatorowych, które je zasilają. W szczególności wiele aplikacji może zyskać na opłacalnym, ale dokładnym mierniku poziomu naładowania akumulatora. Podczas gdy większość zastosowań ogniw w motoryzacji, medycynie czy wojsku wymaga zastosowania kompletnego systemu zarządzania baterią (BMS), wiele innych, prostszych produktów radzi sobie doskonale z prostym wskaźnikiem poziomu naładowania, który informuje użytkownika tylko ogólnie, ile energii jest dostępne do zasilania urządzenia.

    Prosty, jednopunktowy wskaźnik poziomu naładowania baterii
    Rys.1. Jednopunktowy wyświetlacz słupkowy
    stanowi kompaktową i energooszczędną
    alternatywę dla zwykłego wskaźnika baterii
    z wykresem słupkowym.
    Pomysł na opisany poniżej projekt streścić można w jednym zdaniu - wskaźnik poziomu naładowania, który wykorzystuje tylko jedną diodę LED. Ciężko wyobrazić sobie wyświetlacz słupkowy ([i]bar-graph[/b]) wykorzystujący tylko jeden punkt, ale zaprezentowana konstrukcja stanowi prostą, kompaktową, tanią i energooszczędną alternatywę dla zwykłego, zazwyczaj czteropunktowego wskaźnika słupkowego baterii. Układ składa się z pojedynczej diody LED RGB sterowanej przez mały mikrokontroler - w tym przypadku PIC10F220 lub PIC10F222 firmy Microchip, dostępny w kompaktowej, 6-pinowej obudowie. Cały układ udało się zaimplementować na płytce drukowanej o wielkości zaledwie 3,1 mm x 3,2 mm. Dzięki czemu łatwo go zintegrować z istniejącą konstrukcją (patrz rysunek 1).

    Niewielki rozmiar płyty z prototypem układu ułatwia dodawanie konstrukcji do istniejących już produktów, które obecnie nie posiadają miernika stanu baterii. W tym przykładzie jest on zamontowany w obudowie powerbanku z ogniwami litowo-jonowymi.

    Zasada działania konstrukcji jest bardzo prosta. Mikrokontroler PIC mierzy napięcie akumulatora (wykrywane na jego własnym pinie zasilania - VDD) za pomocą wewnętrznego źródła napięcia odniesienia (0,6 V). Pomiar wykonany za pomocą wbudowanego przetwornika ADC wyrażany jest w liczbie opisującej, jaką częścią mierzonego napięcia jest wartość odniesienia 0,6 V. Z uwagi na to, że pomiar zwracany jest jako stosunek 0,6 V do VDD, to wraz ze wzrostem napięcia zasilającego, wynik pomiaru będzie się zmniejszać i odwrotnie - jest to typowa zależność typu 1/x. W nocie aplikacyjnej Microchipa (AN1072) opisano w pełni, w jaki sposób z tej wartości uzyskać napięcie VDD.

    Podobnie jak w przypadku każdego miernika stanu naładowania akumulatora, konstrukcja ta również musi uwzględniać nieliniową krzywą napięcia względem stanu naładowania wykazywaną przez akumulatory litowo-jonowe przy wyborze napięć progowych, przy których mikrokontroler wyświetli kolejny kolor, który odpowiada stanowi naładowania akumulatora (czerwony, żółty i zielony lub niebieski). Aby uniknąć trudności związanych z używaniem ograniczonych możliwości matematycznych PIC do obliczania stanu naładowania za każdym razem, gdy mierzone jest VDD, autor stworzył tabelę odnośników, która może być przechowywana w pamięci programu PIC. Tabela (dostępna jest na stronie z projektem - link na dole) została utworzona za pomocą Excela i obejmuje jedynie zakres napięć oczekiwanych od prawidłowo działającego akumulatora, w tym przypadku są to napięcia od 2,9 V do 4,3 V. Zmierzone za pomocą 8-bitowego ADC wbudowanego w PICa, napięcia te dadzą wartości wyjściowe między 52 a 35.

    Prosty, jednopunktowy wskaźnik poziomu naładowania baterii
    Rys.2. Korzystanie z tabeli przeglądowej może uprościć obliczenia stanu naładowania akumulatora.


    Aby zminimalizować zużycie energii, w projekcie zastosowano diodę LED RGB o wysokiej jasności. Mikrokontroler skonfigurowany jest do pozostawania w trybie uśpienia, dopóki nie otrzyma okresowego przerwania od timera nadzorującego (mniej więcej raz na sekundę). Po przebudzeniu z trybu uśpienia kontroler mierzy napięcie obecne na pinie VDD i krótko mruga odpowiednią diodą LED (1 ms przez około 0,25 s), ustawiając piny diody związane z kolorem odpowiadającym wartości ostatniego pomiaru.

    Do pobrania ze strony z projektem dostępne są dwie wersje kodu źródłowego asemblera dla mikrokontrolera, dzięki czemu można sterować diodami LED RGB ze wspólną anodą lub katodą. Listingi są w pełni pokomentowane, a kod zoptymalizowany pod względem wielkości. Firmware używa makr, aby ułatwić odczyt napięcia. Oprogramowanie zajmuje tylko 85 słów kodu i 3 bajty danych, co ułatwia wdrożenie go w dowolnej aplikacji i niemalże w każdym układzie. Co więcej, dzięki temu kompaktowemu rozwiązaniu, podobne zaaplikować można na dowolnym innym małym mikrokontrolerze.

    Źródło: https://www.edn.com/simplify-the-battery-gauge-with-a-1-dot-bar-graph-display/

    Od redaktora: Postanowiłem tutaj od razu odpowiedzieć na kwestie, które - jak znam użytkowników naszego Forum - na pewno zostaną poruszone. Układ ten da się zrealizować na kilku komparatorach i ew. bramkach logicznych. Rozwiązanie to będzie jednak droższe i zajmie więcej miejsca na PCB niż pojedynczy mikrokontroler w obudowie SOT23 czy podobnej. Nie mówiąc już o tym, że w takim uC da się zawrzeć ciut więcej logiki sterującej, jeśli się chce. Zwiększając odrobinę układ można zrobić np. zabezpieczenie przed zbyt głębokim rozładowaniem ogniwa itp.

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    ghost666
    Tłumacz Redaktor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    ghost666 napisał 9836 postów o ocenie 8049, pomógł 157 razy. Mieszka w mieście Warszawa. Jest z nami od 2003 roku.
  • TermopastyTermopasty
  • #2
    omin172
    Poziom 13  
    ghost666 napisał:
    jednopunktowy


    To nie jest najszczęśliwsze określenie w tym przypadku. I wprowadzające w błąd.
  • TermopastyTermopasty
  • #3
    vodiczka
    Poziom 43  
    omin172 napisał:
    To nie jest najszczęśliwsze określenie w tym przypadku. I wprowadzające w błąd.
    Dokładnie. Różnica podobna jak pomiędzy zdjęciem czarnobiałym i kolorowym ;)
  • #5
    SylwekK
    Poziom 31  
    Parę lat tremu na attiny13 zrobiłem sobie wskaźnik napięcia na jednej led (żółtej), który odzwierciedla 7 stanów akumulatora poprzez odpowiednie miganie i wbrew pozorom nie trzeba liczyć 7 mignięć :) Szybko wiadomo jaki jest stan aku, a całość jest bardziej ergonomiczna niż by się mogło wydawać :) Mam to zamontowane przy dodatkowym akumulatorze od aparatu, którym filmuję.