- zakres pomiarowy mierzonego napięcia: 0…34 V, z rozdzielczością 10 mV,
- zakres pomiarowy mierzonego prądu: 0…10 A, z rozdzielczością 1 mA,
- zakres pomiarowy mierzonej mocy: 0…340 W, z rozdzielczością 100 mW,
- zakres pomiarowy dostarczonego ładunku: 0…100 Ah, z rozdzielczością 10 mAh,
- liczba punktów rejestracji: 100, z interwałem czasowym ustawianym w zakresie 1…10 s,
- możliwość generowania alarmów po przekroczeniu ustawionych progów wartości,
- prezentowanie wyników w postaci graficznej,
- średni pobór prądu ze źródła napięcia zasilającego: 13 mA.
Zgodnie z założeniami ma się charakteryzować następującymi cechami użytkowymi:
- pomiar napięcia na zaciskach odbiornika,
- pomiar prądu i mocy pobieranej przez odbiornik,
- pomiar ładunku przekazanego do odbiornika,
- możliwość generowania alarmów po przekroczeniu konfigurowalnych parametrów, niezależnie dla każdej z wielkości elektrycznych (alarm powyżej i poniżej ustawionej wartości),
- graficzna prezentacja wybranych wielkości w funkcji czasu (rysowanie charakterystyk).
Kluczowym problemem z jakim się zmierzyłem stając przed tym wyzwaniem implementacyjnym był wybór odpowiedniego przetwornika, przy pomocy którego udałoby się zrealizować wyznaczone cele. Jako że we wcześniejszym projekcie zasilacza arbitralnego pod postacią projektu powerBank, którego opis ukazał się w naszym miesięczniku w wydaniu EP07/15 poznałem dość dobrze specjalizowany przetwornik pomiarowy INA226 zdecydowałem się na jego użycie również w niniejszym urządzeniu.
Budowa i działanie
Nie wdając się w tej chwili w szczegóły implementacyjne, przejdźmy do schematu ideowego urządzenia powerMonitor. Jest to bardzo prosty system mikroprocesorowy, którego sercem jest niewielki mikrokontroler firmy Microchip (dawniej Atmel) typu ATtiny84 taktowany wewnętrznym generatorem RC o częstotliwości 8 MHz, odpowiedzialny za programową implementację interfejsu I²C, przy użyciu którego mikrokontroler realizuje obsługę układu INA226 będącego specjalizowanym, bardzo dokładnym, 16-bitowym, różnicowym przetwornikiem ADC oraz obsługę niewielkiego acz bardzo efektownego wyświetlacza OLED o rozdzielczości 128×32 piksele stanowiącego element graficznego interfejsu użytkownika. Ponadto mikrokontroler nasz odpowiedzialny jest za obsługę 2 switchy UP i DOWN wykorzystując w celu eliminacji drgań wbudowany układ czasowo-licznikowy Timer0 i stosowne przerwanie systemowe oraz obsługę BUZZER-a piezoelektrycznego (bez wewnętrznego generatora), co realizowane jest z kolei z użyciem układu czasowo-licznikowego Timer1 pracującego w trybie PWM i generującego przebieg prostokątny o częstotliwości 4 kHz na wyprowadzeniu OC1B zasilający nasz BUZZER.
Wspomniany wcześniej, specjalizowany przetwornik ADC mierzy spadek napięcia na rezystorze szeregowym R1 (10 mΩ), dzięki czemu możliwe jest wyznaczenie prądu pobieranego przez badane urządzenie. Nie jest to jednak zwykły, zewnętrzny przetwornik ADC jakich wiele na rynku a specjalizowany układ przeznaczony do pomiaru prądu, napięcia i mocy urządzeń zasilanych napięciem stałym. Jako że jest to element dość wyjątkowy warto choćby skrótowo zaznajomić się z jego specyfikacją. Tak, jak napisano wcześniej, układ INA226, produkcji firmy Texas Instruments, jest specjalizowanym, bardzo dokładnym, 16-bitowym, różnicowym przetwornikiem pomiarowym ADC przeznaczonym do zastosowania w układach pomiaru prądu i mocy z użyciem bocznika rezystancyjnego.