Internet Rzeczy w pomiarach środowiskowych (23). UPS do Raspberry Pico/Pico 2

Internet Rzeczy w pomiarach środowiskowych (23). UPS do Raspberry Pico/Pico 2

Podtrzymanie zasilania płytki RPi Pico/Pico 2 można zrealizować na kilka sposobów. Firma Pimoroni oferuje gotowe rozwiązania: małą płytkę Li-Po SHIM for Pico oraz większy moduł Pico-UPS-A. Również Raspberry Pi, producent płytki Pico/Pico 2, w dokumentacji płytki proponuje sposoby dołączania zewnętrznego zasilania. W artykule zostały sprawdzone wszystkie wymienione opcje.

Autor dziękuje Panu Maciejowi Michnie z Centrum Badań i Rozwoju Nordic Semiconductor w Krakowie za udostępnienie zestawów sprzętowych Power Profiler Kit II (PPK2).

Opracowanie dobrego rozwiązania zasilania układu IoT nie jest łatwe. W zasadzie pomysł jest prosty, ale jego realizacja wymaga starannego wyboru poszczególnych elementów i ich testowania w docelowych warunkach pracy. Zasilanie odgrywa istotną rolę w zapewnieniu poprawnej pracy czujników oraz przetworników analogowo-cyfrowych. Bez czystego ich zasilania otrzymamy „jakieś” rezultaty, ale ich poprawność może być wątpliwa. W ramach opisywanego projektu zostało przetestowanych kilka płytek ładowarek akumulatorów. Prawie wszystkie wprowadzały zakłócenia na szyny zasilania, niektóre bardzo silne.

Płytka Li-Po SHIM for Pico

Płytka Li-Po SHIM for Pico firmy Pimoroni [3] jest małą i tanią nakładką na płytkę Pico/Pico 2. Umożliwia ona podłączenie akumulatora Li-Po/Li-Ion do zestawu z możliwością jego ładowania z gniazdka USB płytki Pico.

Na płytce Li-Po SHIM znajdują się:

  • układ scalonej ładowarki MCP73831 (Microchip),
  • układ zabezpieczenia baterii XB6096I2S (XySemi),
  • przycisk zasilania,
  • 2-biegunowe złącze JST PH z zaznaczoną polaryzacją na płytce,
  • wskaźniki LED zasilania i ładowania.

Ładowarka MCP73831 zapewnia automatyczne ładowanie z trybami stałego prądu (ustawionym na 215 mA) i stałego napięcia (4,20 V). Wejście jest na stałe dołączone do szyny VBUS płytki Pico (z gniazdka USB), a wyjście do gniazdka JST oraz szyny VBAT. Wyjście STAT układu, podłączone do czerwonej diody LED, sygnalizuje ładowanie. Układ monitoruje napięcie akumulatora i po jego obniżeniu automatycznie przechodzi do ładowania.

Układ XB6096I2S zabezpiecza przed odwrotnym podłączeniem zasilania lub akumulatora Li-Po/Li-Ion, a także chroni przed przeładowaniem, nadmiernym rozładowaniem i zwarciem ogniwa. Układ jest włączony pomiędzy ujemny zacisk akumulatora a masę.

Białą diodę LED dołączono do szyny 3V3 płytki Pico – sygnalizuje ona działanie zestawu.

Przycisk zasilania, dołączony do układów logiki cyfrowej, włącza/wyłącza sygnał POWER_EN, podpięty do wejścia 3V3_EN płytki Pico. Umożliwia to włączanie i wyłączanie przetwornicy DC/DC 3,3 V zasilającej procesor. Po pierwszym dołączeniu zasilania USB płytka Li-Po SHIM ładuje akumulator, ale utrzymuje wyłączone zasilanie 3V3 procesora. Uruchomienie całości wymaga naciśnięcia przycisku zasilania. Potem podtrzymywanie zasilania z akumulatora i kontynuowanie pracy po podłączeniu USB odbywa się automatycznie.

Dwa tranzystory MOSFET dołączone do tego sygnału umożliwiają automatyczne podłączanie szyny VBAT do szyny VSYS w celu podtrzymania zasilania płytki Pico.

Płytka Li-Po SHIM jest nakładana na moduł główny Pico od spodu, tak aby przycisk zasilania znajdował się po tej samej stronie, co port USB. Oznacza to konieczność wlutowania do płytki Li-Po SHIM żeńskich gniazd goldpin, najlepiej z długimi pinami od góry. Do podłączenia najwygodniej jest zastosować ekspander szyny Pico Omnibus (PIM556) lub Pico Decker (PIM555) (fotografia 1).

Fotografia 1. Płytka Li-Po SHIM dołączona do ekspandera Pico Decker

Płytka Li-Po SHIM nie wymaga oprogramowania. Producent udostępnia natomiast przykładowy program w języku Python do pomiaru napięcia akumulatora – wymaga on dołączenia wyświetlacza, np. Pico INKY (fotografia 1). Program sprawdza obecność napięcia na szynie VBUS zasilanej z gniazdka USB poprzez odczyt stanu wejścia GP24 z dzielnika rezystancyjnego (1/2), dołączonego do szyny VBUS. Wykonuje też odczyt podzielonego napięcia (1/3) szyny VSYS z wejścia ADC3 (GP29). Odczyt ten jest niedokładny ze względu na bardzo zaszumione zasilanie wewnętrznego przetwornika ADC procesora.

Moduł zasilania Pico-UPS-A

Pico-UPS-A to moduł UPS w postaci nakładki na płytkę Pico/Pico 2 [4]. Jest wyposażony w koszyk na pojedyncze ogniwo akumulatora Li-Ion typu 14500.

Specyfikacja techniczna modułu UPS [4]:

  • rodzaj modułu: nakładka do Raspberry Pi Pico,
  • napięcie ładowania: 5 V,
  • interfejs komunikacyjny: magistrala I²C,
  • liczba miejsc na akumulator: 1,
  • typ akumulatora: litowo-jonowy (Li-Ion) w rozmiarze 14500,
  • wymiary nakładki: 60×21 mm.
Rysunek 1. Moduł Pico-UPS-A [4]

Rozmieszczenie elementów na płytce Pico-UPS-A (rysunek 1):

  1. układ ładowania akumulatorów Li-Ion ETA6003,
  2. układ monitorowania napięcia/natężenia prądu INA219,
  3. układ zabezpieczający akumulator litowo-jonowy S8261,
  4. układ zabezpieczenia przeciążeniowego akumulatora litowo-jonowego FS8205,
  5. układ zabezpieczenia przed odwrotnym podłączeniem akumulatora AO3400,
  6. układ zapobiegający prądowi wstecznemu SI2305,
  7. złącza do bezpośredniego podłączenia do Raspberry Pi Pico,
  8. włącznik zasilania UPS,
  9. przycisk aktywacji, który włącza obwód zabezpieczający po wymianie akumulatora,
  10. uchwyt akumulatora 14500.

Dodatkowo na płytce są zamontowane trzy diody LED sygnalizujące: odwrotne podłączenie akumulatora, ładowanie akumulatora (niebieska) oraz zasilanie 3V3 płytki Pico.

Ładowarka ETA6003 zapewnia automatyczne ładowanie z trybami stałego prądu (ustawiony na 215 mA) i stałego napięcia 4,20 V. Wejście jest na stałe dołączone do szyny VBUS płytki Pico (z gniazdka USB) z ograniczeniem poboru prądu do 2 A. Wyjście SYS jest dołączone poprzez wyłącznik zasilania i tranzystor MOSFET do szyny VSYS. Wyjście STAT układu, dołączone do diody LED, sygnalizuje ładowanie. Układ monitoruje napięcie akumulatora i po jego nadmiernym obniżeniu automatycznie przechodzi do trybu ładowania.

Wejście IN- układu INA219 jest bezpośrednio podłączone do dodatniego bieguna akumulatora, a IN+ – do wejścia BAT ładowarki.

Płytka Pico-UPS-A nie wymaga oprogramowania do pracy. Producent udostępnia sterownik układu INA219 umożliwiający pomiar napięcia akumulatora w językach Python oraz C.

Zbudowany układ pomiarowy składa się z płytki Pico 2, Pico-UPS-A, ekspandera Pico Omnibus, wyświetlacza Pico INKY, płytki z czujnikiem BME688 oraz akumulatora XTAR 18650 2600 mAh (fotografia 2). Do obsługi układu INA219 został opracowany program pomiarowy w języku Python, opisany poniżej.

Fotografia 2. Płytka Pico-UPS-A dołączona do ekspandera Pico

Cyfrowy miernik zużycia energii z układem INA219

Układ scalony INA219 firmy Texas Instruments to bocznik prądowy i monitor mocy z interfejsem zgodnym z I²C. Urządzenie monitoruje zarówno spadek napięcia na boczniku, jak i napięcie zasilania magistrali, z programowalnymi czasami konwersji i filtrowaniem.

Moduł cyfrowego miernika mocy I²C Digital Wattmeter (SEN0291) firmy DFRobot [5] zawiera tylko układ INA219 z zewnętrznym rezystorem bocznikującym 0,01 Ω oraz złącza: zasilania i komunikacji I²C oraz pomiarowe.

Układ INA219 odczytuje napięcie szyny zasilania mierzonego obwodu (wyprowadzenie IN–) względem potencjału swojej masy (wyprowadzenie GND). Jeśli masa mierzonego obwodu nie będzie połączona z wyprowadzeniem GND układu INA219, to mierzona wartość napięcia szyny zasilania będzie niepoprawna. Napięcie na boczniku mierzone jest pomiędzy wyprowadzeniami IN+ oraz IN–, czyli prąd płynący od IN+ do IN– jest odczytywany jako dodatni.

Specyfikacja modułu miernika mocy INA219:

  • napięcie zasilania: 3,3…5 V,
  • zakres pomiaru napięcia: 0…26 V,
  • rozdzielczość napięcia: 4 mV,
  • błąd pomiarowy napięcia: do 0,2% (typowy),
  • zakres pomiaru prądu: 0…8 A (dwukierunkowy),
  • rozdzielczość prądu: 1 mA,
  • błąd pomiarowy prądu: do 2% (typowy, wymagana ręczna kalibracja),
  • zakres pomiaru mocy: 0…206 W,
  • rozdzielczość mocy: 20 mW (sprzętowa)/4 mW (programowa),
  • prąd spoczynkowy: 1 mA (maks.),
  • pobór prądu w trybie power down: 15 μA (maks.),
  • adresy I²C: 0x40, 0x41, 0x44, 0x45,
  • wymiary: 30×22 mm.

Udostępniany na stronie producenta schemat modułu SEN0291 wersji V1.0 zawiera układ LDO, jednak w aktualnej wersji płytki V2.1.0 nie jest on obecny.

INA219 można używać bez żadnego programowania, jeśli konieczne jest jedynie odczytanie spadku napięcia bocznika i napięcia magistrali z domyślną rozdzielczością 12-bitową, pełnym zakresem skali bocznika ±320 mV (PGA=8), pełnym zakresem skali magistrali 32 V i ciągłą konwersją napięcia bocznika i magistrali (co 532 μs, bez uśredniania).

Płytka RPi Pico2 firmy Raspberry Pi

Nowe płytki Pico2 i Pico 2W firmy Raspberry Pi z procesorem RP2350 są zgodne elektrycznie z płytkami Pico pierwszej serii (Pico/Pico W) [1]. Na płytkach zostały zastosowane układy pamięci NOR Flash serii W25Q (Winbond) o częstotliwości taktowania do 133 MHz (przepustowość do 66 MB/s). Dokładny opis jest zamieszczony w artykule „Płytka Raspberry Pi Pico 2/2W z procesorem RP2350” [2].

Płytka Pico 2 zawiera przetwornicę buck-boost, która dostarcza napięcie 3,3 V (do zasilania RP2350 i obwodów zewnętrznych) z szerokiego zakresu napięć wejściowych (od 1,8 do 5,5 V). Takie rozwiązanie daje znaczną elastyczność w zasilaniu urządzenia z różnych źródeł, takich jak pojedyncze ogniwo litowo-jonowe lub 3 ogniwa AA połączone szeregowo. Najprostszym sposobem zasilania Pico 2 jest podłączenie kabla do umieszczonego na płytce gniazdka micro-USB. W dokumentacji płytki pokazano, jak poprzez dodanie tranzystora P-MOSFET (np. IRF7425) można zrealizować podtrzymanie bateryjne zasilania płytki [2].

Pico Inky Pack – moduł z wyświetlaczem e-Paper

Pico Inky Pack (PIM634) firmy Pimoroni to moduł z czarno-białym wyświetlaczem e-Paper o przekątnej 2,9” i rozdzielczości 296×128 px, przeznaczony do płytek z serii Raspberry Pi Pico. Ma wbudowany kontroler, który realizuje komunikację za pomocą interfejsu SPI. Pico Graphics to zunifikowana biblioteka grafiki i wyświetlania firmy Pimoroni umożliwiająca sterowanie wyświetlaczami z Pico w języku MicroPython [8].

Moduł ładowarki akumulatora Li-ion z układem TP4056

Układ TP4056 to ładowarka ogniwa litowo-jonowego lub litowo-polimerowego, chroniąca je przed nadmiernym i niedostatecznym ładowaniem [6]. Układ ma dwa wyjścia stanu wskazujące ładowanie w toku (LED czerwona) i ładowanie zakończone (LED niebieska) oraz programowalny prąd ładowania do 1 A. Obsługuje ładowanie w trybie stałego prądu (CC) oraz stałego napięcia 4,2 V (CV). Obsługuje automatyczne przejście do stanu uśpienia.

Właściwości modułu ładowarki TP4056:

  • wbudowane diody sygnalizujące proces ładowania i pełne naładowanie,
  • napięcie zasilania: 4,8 V DC z zewnętrznego zasilacza lub 5 V poprzez złącze micro USB,
  • maksymalne napięcie ładowania: 4,2 V,
  • maksymalny prąd ładowania: 1 A,
  • pobór prądu bez obciążenia: 2 mA,
  • pobór prądu z dołączonego ogniwa (po odłączeniu zasilania ładowarki): max. 6 μA,
  • pola lutownicze THT do podłączenia ogniwa i zasilania,
  • wymiary: 23×17×4 mm.

Akumulator Li-Ion

Akumulator Li-Ion XTAR 18650 ma nominalne napięcie 3,7 V i pojemność 2600 mAh [9]. Ogniwo posiada wbudowane zabezpieczenie przed przeładowaniem, nadmiernym rozładowaniem, przeciążeniem i zwarciem.

Właściwości akumulatora XTAR 18650:

  • akumulator Li-Ion (litowo-jonowy)
  • typ: 18650
  • napięcie nominalne: 3,7 V
  • pojemność minimalna: 2600 mAh
  • maksymalny prąd ładowania: 2 A
  • maksymalne napięcie ładowania: 4,2 V
  • maksymalny prąd rozładowania: 5 A
  • próg zadziałania zabezpieczenia prądowego: 6,2 A
  • wbudowana ochrona PCM zapobiega spadkowi napięcia poniżej 2,5 V i przeładowaniu powyżej 4,25 V.

Akumulator jest oparty na oryginalnym ogniwie marki Samsung.

Ekspander szyny Pico

Ekspandery szyny Pico firmy Pimoroni są przeznaczone do płytek z serii Raspberry Pi Pico. Wyposażone zostały w jedno standardowe złącze żeńskie do bezpośredniego wpięcia RPi Pico oraz zestawy męskich listew 2×20 pinów, które umożliwiają podłączenie dodatkowych modułów rozszerzeń. Etykiety pinów umieszczone na górnej stronie płytki znacznie ułatwiają prototypowanie. Ekspander Pico Decker (Quad Expander) (PIM555) ma cztery zestawy męskich listew, a Pico Omnibus (Dual Expander) PIM556 – dwa zestawy.

Niestandardowa konfiguracja pomiarowa

Własną konfigurację podtrzymania zasilania płytki Pico/Pico 2 można zrealizować według dokumentacji płytki [2]. W opisywanym projekcie zostały dodatkowo zastosowane: obwody pomiaru prądu i napięcia, ładowarka akumulatorów, czujnik parametrów środowiska i wyświetlacz.

Rysunek 2. Konfiguracja pomiarowa

Układ pomiarowy (fotografia tytułowa) został skompletowany w następującej konfiguracji (rysunek 2):

  • płytka Raspberry Pi Pico 2 [1],
  • wyświetlacz Pico Inky Pack (PIM634),
  • ekspander Pico Decker (PIM555),
  • czujnik środowiskowy BME688 [10],
  • DFRobot Gravity v2.1.0 (INA219) [5],
  • akumulator Li-Ion 18650 XTAR 2600 mAh [9],
  • ładowarka Li-Po TP4056 [6],
  • tranzystor PMOSFET IRF7425.

Ponieważ zastosowany akumulator ma wbudowane zabezpieczenia, to nie jest potrzebny żaden dodatkowy układ zewnętrzny.

Zastosowana ładowarka akumulatorów wprowadza stosunkowo niewielkie zakłócenia w fazie ładowania, a po naładowaniu praktycznie się wyłącza. Wejście ładowarki jest na stałe dołączone do szyny VBUS. Po naładowaniu akumulatora wyjście jest dezaktywowane, zaś przy braku napięcia na szynie VBUS wyjście ładowarki pozostaje odłączone i (praktycznie) nie pobiera ona prądu. Jedyny sposób określania stanu ładowania/naładowania to obserwacja diod LED, gdyż procesor nie ma możliwości ich odczytania.

Układ INA219 jest na stałe dołączony do akumulatora, lecz pracuje tylko wtedy, gdy obecne jest zasilanie na szynie 3V3. Nawet gdy płytka z INA219 nie ma zasilania, prąd z akumulatora nadal może zasilać resztę obwodów.

W projekcie został zastosowany tranzystor MOS o niskiej rezystancji. Tranzystor pozostaje wyłączony, gdy na szynie VBUS jest obecne napięcie – szyna VBAT ładowarki jest wtedy odłączona. Przy braku napięcia na szynie VBUS, tranzystor zostanie włączony i napięcie z akumulatora jest praktycznie bezpośrednio (poprzez rezystancję RDS(on) równą około 18 mΩ) podawane na szynę VSYS płytki Pico 2.

Istnieje możliwość komunikacji układu z innym systemem komputerowym za pośrednictwem łącza UART. Przy zastosowaniu płytki Raspberry Pi Pico 2W dochodzi do tego także możliwość komunikacji bezprzewodowej poprzez Wi-Fi lub Bluetooth.

Przygotowanie środowiska programistycznego

Interpreter MicroPython firmy Pimoroni dla Pico 2 [7] zawiera dodatkowo sterowniki wielu czujników oraz wyświetlaczy, w tym Pico Inky Pack [8].

  • Najpierw zmontuj elementy zgodnie z opisem.
  • Następnie pobierz najnowszy interpreter MicroPythona w pliku rpi_pico2-v1.26.1-micropython.uf2 ze strony firmy Pimoroni [7].
  • Trzymając wciśnięty biały przycisk BOOTSEL podłącz płytkę Raspberry Pi Pico2 do komputera kablem microUSB. Jest ona widoczna jako dysk RP2350 w Eksploratorze plików Windows.
  • Skopiuj pobrany plik .uf2 na Raspberry Pi Pico2.
  • W komputerze zainstaluj najnowszą wersję programu Thonny.
  • Uruchom program Thonny.
  • Kliknij na ikonkę trzech linii w prawym dolnym rogu i wybierz Configure interpreter.
  • Ustaw typ interpretera na MicroPython (Raspberry Pi Pico).
  • Z menu w prawym dolnym rogu wybierz MicroPython (Raspberry Pi Pico) · Board CDC @COMxx.
  • Interpreter w polu Shell wyświetli informację o wersji:
  • MicroPython pico2_w_2025_04_09, on 2025-04-15; Raspberry Pi Pico2 with RP2350
  • Pobierz folder code z kodem aplikacji z repozytorium https://ep.com.pl/files/rpr/13762-internet_rzeczy_w_pomiarach_srodowiskowych_23._ups_do_raspberrypico-pico2.zip.
  • Otwórz w oknie Files folder code.
  • Kliknij prawym klawiszem myszy plik main.py i wybierz Upload to.
  • Tak samo załaduj do płytki Pico 2 drugi plik ina219.py z tego folderu.

Oprogramowanie

Oprogramowanie zrealizowane w języku MicroPython wykorzystuje płytkę Raspberry Pi Pico 2, wyświetlacz Pico Inky Pack, czujnik środowiskowy BME688, płytkę miernika prądu z układem INA219, akumulator Li-Ion i ładowarkę. Całość jest wzorowana na firmowym programie dla modułu Li-Po SHIM for Pico firmy Pimoroni.

W projekcie zastosowano programowy sterownik układu INA219 firmy Waveshare (udostępniany dla płytki Pico-UPS-A) [4]. Został on lekko zmodyfikowany (dodano ustawianie zakresu 16 V). Program wykonuje w pętli nieskończonej pomiar z użyciem układu INA219. Dane wysyła łączem UART do komputera. Następnie wykonuje pomiar czujnikiem BME688 i także przesyła dane do komputera.

Dalej wszystkie dane są prezentowane na wyświetlaczu. Wyniki pomiarów prądu i napięcia są zapisywane w pliku. Taki log bardzo ułatwia pomiary układu w trakcie długich eksperymentów z zasilaniem.

W przypadku wystąpienia problemów z obsługą układu na szynie I²C program sygnalizuje problem na wyświetlaczu, a gdy komunikacja z układem powróci, ponownie podejmuje normalną pracę.

Ocena poziomu naładowania akumulatora zakłada liniową zmianę napięcia pomiędzy 4,2 V (maksimum) oraz 2,8 V (przyjęte jako minimum). Jest to bardzo zgrubne oszacowanie. Dla zastosowanego akumulatora XTAR okazuje się jednak wystarczająco zgodne z firmową charakterystyką rozładowania.

Program identyfikuje podłączenie zasilania USB przez odczyt stanu pinu GP24. Odczytuje też napięcie na szynie VSYS z użyciem wejścia GP29 dołączonego na płytce Pico 2 do wewnętrznego przetwornika ADC. Ze względu na dużą wariancję odczytów ADC zastosowano selekcję sekwencji danych z uśrednianiem szesnastu wartości. Zdecydowanie poprawiło to stabilność pomiaru, jednak wynik wciąż był trochę zawyżony, nawet pomimo zastosowania w dzielniku rezystancyjnym VSYS precyzyjnych rezystorów 100 kΩ o dokładności 1%.

Pomiary

Do dynamicznego pomiaru prądu zasilania bardzo dobrze nadaje się zestaw Power Profiler Kit II (PPK2) firmy Nordic Semiconductor. Jest to samodzielny układ, który bez zewnętrznego sprzętu może mierzyć i dostarczać prądy od poniżej 1 μA do 1 A. Praktyka pokazuje, że zakres pracy rozciąga się do ok. 2 A, wymaga to jednak dołączenia dodatkowego portu USB do drugiego gniazdka PPK2. Bardzo przydatne jest osiem kanałów cyfrowych próbkowanych synchronicznie z odczytem prądu. Dokładny opis PPK2 jest zamieszczony w artykule „Profilowanie mocy z zastosowaniem Power Profiler Kit II” [10].

Na listingu 1 pokazano zapis z okna Thonny po uruchomieniu aplikacji. Układ jest zasilany z akumulatora i pobiera ok. 16 mA. Po drugim pomiarze zostało włączone zasilanie USB i rozpoczęto ładowanie akumulatora prądem 98 mA. Widać wyraźne zmiany poziomu napięcia. Napięcie mierzone na akumulatorze podczas ładowania ma zawyżoną wartość.

MPY: soft reboot
Scan i2c bus...
i2c devices found: 2
Decimal address: 69
| Hexa address: 0x45
Decimal address: 118
| Hexa address: 0x76

USB not connected VSYS: 3.860571 V
INA219 intialisation
Config register: 0x1EEF CONFIG
Calibration register: 0x1000 CAL
Current LSB: 0x1 100uA
bus_voltage_range: 0x0 Voltage range to 16V
gain: 0x3 Gain set to /8, 320 mV range
bus_adc_resolution: 0xF 12bit, 32 samples, 68.10ms
shunt_adc_resolution: 0xF 12bit, 32 samples, 68.10ms
mode: 0x7 Shunt and bus voltage continuous

INA219: Bat Voltage: 3860.000mV, Shunt Voltage: -0.170mV, Current: -17.000mA, Battery level: 75.7 %
BME68x: Temperature: 22.62°C, Pressure: 101048.88Pa, Humidity: 67.42%

USB not connected VSYS: 3.86116 V
INA219: Bat Voltage: 3856.000mV, Shunt Voltage: -0.170mV, Current: -17.000mA, Battery level: 75.4 %
BME68x: Temperature: 22.62°C, Pressure: 101048.81Pa, Humidity: 67.20%

USB-Connected VSYS: 4.585127 V
INA219: Bat Voltage: 4044.000mV, Shunt Voltage: 0.230mV, Current: 23.000mA, Battery level: 88.9 %
BME68x: Temperature: 22.63°C, Pressure: 101048.84Pa, Humidity: 66.91%

USB-Connected VSYS: 4.584686 V
INA219: Bat Voltage: 4040.000mV, Shunt Voltage: 0.230mV, Current: 23.000mA, Battery level: 88.6 %
BME68x: Temperature: 22.63°C, Pressure: 101048.91Pa, Humidity: 66.73%

Listing 1. Praca aplikacji pomiarowej

Próba zastosowania PPK2 w trybie miernika do pomiaru prądu akumulatora nie powiodła się. Po podaniu zasilania z ogniwa poprzez miernik procesor nie był w stanie się uruchomić. Pico2 ma duży prąd rozruchowy rzędu 0,6 A. Prawdopodobnie problem jest spowodowany zbyt dużą rezystancją wewnętrzną PPK2 na początku pomiaru (automatyka zakresów). W tej sytuacji PPK2 został zastosowany w trybie zasilacza i dołączony do układu w miejsce akumulatora, podając napięcie 4,076 V. Dynamiczny pomiar prądu zasilania układu z „akumulatora” został pokazany na rysunku 3. W okresie pracy procesora w trybie sleep pobór prądu wynosi ok. 16 mA i ta wartość zgadza się z pomiarem dokonanym przez INA219. Wartość średnia jest trochę wyższa.

Rysunek 3. Pomiar prądu akumulatora

Przy uruchamianiu układu bardzo przydatny okazał się kabel USB z wyłącznikiem szyny zasilania.

Podsumowanie

Dodanie do płytki RPi Pico 2 kilku tanich elementów umożliwia autonomiczną pracę układu IoT ze skutecznym podtrzymaniem zasilania.

Średni pobór prądu przez układ można drastycznie zmniejszyć poprzez zastosowanie głębokiego uśpienia procesora RP2340. Jednak dalej nie jest to możliwe w języku MicroPython. Można również na czas pomiędzy pomiarami wprowadzić układ INA219 w tryb power down.

Należy upewnić się, że każdy projekt z wykorzystaniem akumulatorów Li-Po/Li-Ion jest odpowiednio zabezpieczony przed ich wgnieceniem, zgięciem oraz przebiciem.

Henryk A. Kowalski
Instytut Informatyki
Politechnika Warszawska

Literatura:
[1] Raspberry Pi Pico 2 https://www.raspberrypi.com/products/raspberry-pi-pico-2/
[2] RP2350 Datasheet, 2024-10-16, Raspberry Pi https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.pdf
[3] Li-Po SHIM for Pico, PIM557, Pimoroni https://shop.pimoroni.com/products/pico-Li-Po-shim?variant=32369543086163
[4] UPS Module for Raspberry Pi Pico, Uninterruptible Power Supply, Waveshare https://www.waveshare.com/pico-ups-a.htm
[5] Gravity: I²C Digital Wattmeter, SEN0291, DFRobot https://www.dfrobot.com/product-1827.html
[6] Moduł ładowarki akumulatora Li-ion z układem TP4056 i złączem microUSB, Kamami https://kamami.pl/ladowarki-li-po-moduly/562280-modul-ladowarki-akumulatora-li-ion-z-ukladem-tp4056-i-zlaczem-microusb-5906623455461.html
[7] Pimoroni Pico MicroPython for RP2350/Pico2 boards https://github.com/pimoroni/pimoroni-pico-rp2350
[8] Pico Graphics, Pimoroni https://github.com/pimoroni/pimoroni-pico/tree/main/micropython/modules/picographics
[9] Akumulator Li-Ion Xtar 18650 3,7 V 2600 mAh z zabezpieczeniem, Kamami https://kamami.pl/akumulatory/579126-akumulator-li-ion-xtar-18650-37v-2600mah-z-zabezpieczeniem-6952918340263.html
[10] Profilowanie mocy z zastosowaniem Power Profiler Kit II, Henryk A. Kowalski, EP5/2022 https://ep.com.pl/kursy/15267-systemy-dla-internetu-rzeczy-60-profilowanie-mocy-z-zastosowaniem-power-profiler-kit-ii

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2025

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2025

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2025

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2025

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich grudzień 2025

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów