Wygląd aplikacji pokazano na rysunku 1. Jest to program dla systemu Windows, który sposobem obsługi nawiązuje do współczesnych oscyloskopów cyfrowych. W górnej części wirtualnego ekranu pokazano najważniejsze nastawy urządzenia, czyli aktualną wartość napięcia wyjściowego (Voltage), prądu odbiornika (Current) oraz nastawę wbudowanego ogranicznika prądowego (Current Limit). Główna część tegoż wirtualnego ekranu przeznaczona jest do wyświetlania różnorakich informacji, których to znaczenie zależne jest od trybu, w którym pracuje urządzenie.
Przyjrzyjmy się dokładniej przyciskom funkcyjnym zgrupowanym w polu System. Ich funkcjonalność przedstawia się następująco:
- Power – służy do zamykania aplikacji powerLab.
- Ext Mode – włącza/wyłącza rozszerzony (tutaj podstawowy) tryb aplikacji powerLab. W trybie uproszczonym aplikacja jest pomniejszana i pokazuje wyłącznie bieżące napięcie i prąd odbiornika, jak na rysunku 2.
- Top Most – włącza/wyłącza opcję pozostawania „zawsze na wierzchu” aplikacji powerLab.
- Sett – włącza menu konfiguracyjne aplikacji powerLab.
W trybie tym możemy za pomocą myszki zdefiniować dowolny przebieg napięciowy złożony maksymalnie z 40 punktów określonych wartością napięcia (minimalny krok 10 mV) i czasu jego osiągnięcia (minimalny krok 10 ms), po czym wysłać go do zasilacza (przycisk RUN/SEND) lub zapisać do późniejszego użycia. Definiując parametry przebiegu arbitralnego należy mieć na uwadze fakt, iż stosowna regulacja napięcia, czyli jego przebieg pomiędzy kolejnymi punktami, odbywa się w sposób dyskretny, więc przy dużych różnicach napięcia pomiędzy kolejnymi punktami i krótkich czasach napięcie wyjściowe zasilacza będzie regulowane w sposób, nazwijmy to, bardzo „skokowy”, gdyż wielkość kroku regulacji obliczana jest na podstawie wyrażenia DV=|Vn-Vn-1|/Tn ,przy czym dla kroku pierwszego Vn-1=VSET (bieżące napięcie).
Przesłaniu zdefiniowanego przebiegu arbitralnego do zasilacza powerBank (użycie przycisku RUN/SEND) towarzyszy automatyczne przejście zasilacza do trybu „Wave”, czyli wyświetlenie stosownego ekranu w ramach graficznego interfejsu użytkownika urządzenia. Należy także zauważyć, że uruchomienie funkcji „Wave” w zasilaczu powoduje dezaktywację wybranych funkcji i pokręteł w ramach interfejsu użytkownika programu powerLab, gdyż w tym czasie (w czasie generowania przebiegu) zasilacz standardowo wyłącza odbiornik interfejsu USART, czyli nie jest w stanie odbierać żadnych danych regulacyjnych. Przycisk Clear służy do wyczyszczenia ekranu i jest aktywny zarówno dla funkcji „Store” (kasuje przebieg napięcia i prądu odbiornika), jak i funkcji „Wave” (kasuje zdefiniowany przebieg napięciowy) aplikacji. Ostatnim z ekranów, jakie nie zostały jeszcze opisane jest ekran ustawień aplikacji powerLab wywoływany po naciśnięciu przycisku Set (rysunek 5).
- Data – to pole pozwala na wybór portu szeregowego (COM), pod jakim został zainstalowany nasz zasilacz (a dokładnie, wbudowany weń układ FT232RL) oraz wybór liczby próbek napięcia i prądu (dla funkcji „Store”) jakie będą rejestrowane.
- Waveform: to pole pozwala na definicję „skoku” siatki dla funkcji Wave w zakresie kroku czasu i napięcia.
- Display: to pole pozwala na wybór kolorów dla poszczególnych elementów interfejsu użytkownika (Voltage, Current, Foreground, Backgroung) aplikacji powerLab.
- Device: to pole pozwala na uruchomienie funkcji autodetekcji podłączenia zasilacza do interfejsu COM komputera PC. Po odłączenia zasilacza od portu COM komputera lub problemów z komunikacją odpowiednie kontrolki i wartości w ramach aplikacji powerLab są automatycznie dezaktywowane.
Uważny czytelnik po lekturze artykułu poświęconego zasilaczowi powerBank, z pewnością dostrzeże nieścisłość, a mianowicie fakt, iż powerBank w tamtejszym „wydaniu” nie mógłby współpracować z opisywana aplikacją, ponieważ nie wspierał pełnej funkcjonalności w ramach interfejsu COM. Innymi słowy, niezbędna stała się drobna modyfikacja obsługiwanych i wysyłanych rozkazów sterujących, by w pełni sprostać wymaganiom aplikacji powerLab. W tej chwili aplikacja programu obsługi urządzenia powerBank obsługuje poniższe, wysyłane przez oprogramowanie powerLab, ramki danych:
- Uxxxx – ustawia wartość napięcia wyjściowego zasilacza –> (jednostka 10 mV, zakres 0...2500).
- Ixxx – ustawia wartość prądu ogranicznika prądowego zasilacza –> (jednostka 10 mA, zakres 0...500).
- S? – zapytanie o nastawy zasilacza. W odpowiedzi zasilacz wysyła ramkę bieżących nastaw urządzenia.
- WppLuUxxxxTxxxx – definiuje napięciowy przebieg arbitralny. Znaczenie poszczególnych pól: pp – liczba zdefiniowanych punktów krzywej napięcia (zakres 1...40), u – wskaźnik zapętlenia generacji krzywej napięcia (wartość 0/1), Uxxxx – napięcia poszczególnych punktów krzywej –> (jednostka 10 mV, zakres 0...2500), Txxxx – czasy poszczególnych punktów krzywej –> (jednostka 1ms, zakres 1...1000).
Z kolei budowa ramek danych wysyłanych przez zasilacz do aplikacji powerLab przedstawia się następująco:
- TxxxxUxxxxIxxxx – urządzenie wysyła taką ramkę cyklicznie, po uruchomieniu funkcji Store. Odstęp czasowy tego typu ramki mieści się w zakresie 10...1000 ms, z krokiem 10 ms (wartość występująca po znaku „T”). Oprócz znacznika czasu, wysyłane są wartości: napięcia wyjściowego (jednostka 10 mV, zakres 0...2500) i prądu obciążenia odbiornika (jednostka 1 mA, zakres 0...5000).
- uxxxxixxx – urządzenie wysyła taką ramkę, jeśli lokalnie zmieniane są jego nastawy lub też w odpowiedzi na wysłane wcześniej przez aplikację powerLab zapytanie o nastawy zasilacza (ramka „S?”). Są to dane nastaw urządzenia: wartość napięcia wyjściowego (jednostka 10 mV, zakres 0...2500) i wartość prądu ogranicznika prądowego (jednostka 10 mA, zakres 0...500).
- W1 – urządzenie wysyła taką ramkę w przypadku uruchomienia funkcji „Wave”, więc wtedy, gdy zaczyna generować zaprogramowany wcześniej arbitralny przebieg napięciowy. W ten sposób informuje oprogramowanie powerLab, że nie jest w stanie przyjmować żadnych danych.
- W0 – urządzenie wysyła taką ramkę po wyłączeniu funkcji „Wave”, jak wyżej.
Jak widać, wprowadzono nieznaczne, acz ważne zmiany w stosunku do założeń pierwotnych (projektu z 2015 roku), gdyż okazało się to niezbędne w celu realizacji całej, oczekiwanej funkcjonalności. Dzięki takiemu tandemowi dostajemy do rąk całkiem potężne narzędzie warsztatowe o rzadkiej funkcjonalności, co – mam nadzieję – zrekompensuje czas oczekiwania na finalny produkt, o czym była mowa wcześniej. Jako prawie dwuletni użytkownik tego urządzenia szczerze mogę je polecić każdemu elektronikowi, gdyż poza funkcjonalnością jest ono użyteczne i łatwe w obsłudze, przez co „bije na głowę” nawet urządzenia komercyjne.
Robert Wołgajew, EP