- konstrukcja: liniowa z szeregowym tranzystorem MOSFET i sterowaniem cyfrowym,
- napięcie wyjściowe: 1...24 V z rozdzielczością 500 mV,
- prąd wyjściowy: 50...1000 mA z rozdzielczością 50 mA,
- sprzętowe zabezpieczenie nadprądowe sterowane cyfrowo,
- obsługa za pomocą dwóch enkoderów obrotowych i wyświetlacza THT 128×160 px,
- wbudowany przycisk do szybkiego załączania i wyłączania wyjścia.
Interfejs użytkownika – sterownik mikroprocesorowy
Druga, po torze analogowym, część zasilacza to sterownik mikroprocesorowy. Spełnia on dwie podstawowe funkcje:
- ustawia napięcie wyjściowe i wartość ograniczenia prądowego przez podawanie napięć z przetworników cyfrowo-analogowych na wejścia USet i ISet oraz mierzy napięcie wyjściowe UMeter i prąd wyjściowy IMeter za pomocą przetworników analogowo-cyfrowych;
- realizuje funkcje interfejsu użytkownika z obsługą kolorowego wyświetlacza LCD-TFT, impulsatorów nastawczych i klawisza START. Wbudowana nieulotna pamięć EEPROM zapamiętuje bieżące nastawy i odtwarza je po włączeniu zasilania.
Schemat sterownika został pokazany na rysunku 12.
Układ zasilania modułu sterownika
Moduł sterownika jest zasilany napięciem +12 V, pochodzącym z modułu sekcji analogowej, przez 8-pinowe złącze goldpin oznaczone POWER. Stabilizator U4 typu 7805 jest zasilany napięciem +12 V i dostarcza napięcie +5 V, które zasila dwa kolejne stabilizatory o napięciu wyjściowym +3,3 V: U3 typu 1117 oraz U2 typu MIC5207. Stabilizator U3 obsługuje część cyfrową sterownika, czyli mikrokontroler i pamięć EEPROM (U2 typu 24C32) z interfejsem I²C. Drugi stabilizator U2 (MIC5207) jest źródłem napięcia +3,3 V dla obwodów analogowych sterownika, które poprzez pin AVDD zasila także wewnętrzne bloki analogowe mikrokontrolera: przetworniki DAC i PADC, komparatory, wzmacniacze operacyjne i źródło napięcia odniesienia. Wbudowany 16-bitowy przetwornik ADC typu delta-sigma (tu nie wykorzystywany) jest natomiast zasilany przez wyprowadzenie SVDD. Napięcie +3,3 V ze stabilizatora U2 jest również odniesieniem dla przetwornika analogowo-cyfrowego PADC oraz zasila układ czujnika prądu INA250 na płytce sekcji analogowej zasilacza.
Jak się łatwo domyślić, zastosowanie dodatkowego, niskoszumnego stabilizatora zasilającego tylko układy analogowe, ma na celu znacząco ograniczyć przenikanie impulsowych zakłóceń przenoszonych po liniach zasilania z części cyfrowej urządzenia do obwodów analogowych.
Mikrokontroler modułu sterownika
W projekcie zastosowano 16-bitowy mikrokontroler PIC24FJ128GC006. Podstawowym kryterium wyboru tego układu były jego analogowe układy peryferyjne, konieczne do budowy opisanego poprzednio, analogowego toru zasilacza. Producent – firma Microchip – chwali się dobrymi parametrami analogowymi tego układu:
- 12-bitowym, szybkim przetwornikiem analogowo-cyfrowym PADC z zaawansowanymi funkcjami akwizycji, takimi jak auto-accumulate czy Threshold Detect,
- 16-bitowym przetwornikiem analogowo-cyfrowym ADC z modulatorem delta-sigma,
- dwoma 10-bitowymi przetwornikami cyfrowo-analogowymi DAC,
- dwoma wzmacniaczami operacyjnymi Rail-to-Rail o paśmie przenoszenia 2,5 MHz,
- trzema komparatorami Rail-to-Rail,
- wbudowanym programowalnym źródłem napięcia odniesienia.
W układzie zasilacza zastosowano 12-bitowy przetwornik analogowo-cyfrowy PADC do pomiaru napięcia wyjściowego zasilacza i do pomiaru prądu wyjściowego. Dwa przetworniki cyfrowo-analogowe zostały użyte do ustawiania napięcia wyjściowego zasilacza i do ustawienia poziomu ograniczenia prądowego. Pierwotnie planowano wykorzystanie zewnętrznych przetworników ADC i DAC o dobrej dokładności i liniowości, ale ostatecznie wybór padł na wbudowane moduły. Parametry przetworników znajdujących się w mikrokontrolerach są zazwyczaj gorsze w porównaniu do zewnętrznych układów tego typu. Założono jednak, że w przypadku niewystarczającej dokładności konwersji wprowadzone zostaną korekty programowe, a zastosowanie wbudowanych modułów znacznie upraszcza projekt. Należy też pamiętać, że nie budujemy tutaj przyrządu pomiarowego, ale zasilacz warsztatowy, zatem nie będą potrzebne bardzo dokładne pomiary.
Jak wiemy, w sekcji analogowej zasilacza zostały użyte wzmacniacze operacyjne pełniące funkcje wzmacniacza błędu i wzmacniacza napięcia stałego. Są to podwójne wzmacniacze typu OP296. Podstawowym powodem, dla którego nie zostały użyte wzmacniacze wbudowane w mikrokontroler, jest zbyt duży offset wejściowy, wynoszący typowo 2 mV, a maksymalnie nawet 14 mV. To mogło powodować problemy z poprawnym działaniem (dokładnością) układu regulacji, jak i układu pomiarowego. Zastosowany ostatecznie wzmacniacz operacyjny ma typowy, katalogowy offset na poziomie ok 30 μV, a maksymalny na poziomie 300 μV. Ponadto jest on przystosowany do pracy z pojedynczym napięciem zasilania +12 V, co upraszcza układ zasilania.
Oprócz bardzo istotnej sekcji analogowej, mikrokontroler sterujący graficznym wyświetlaczem TFT z interfejsem SPI powinien być stosunkowo szybki. Niestety, z tym nie jest najlepiej. Niezbyt szybki, 16-bitowy rdzeń PIC24F taktowany częstotliwością 16 MHz to istotne ograniczenie i dlatego zastosowano ekran o relatywnie małej rozdzielczości 128×160 pikseli, niewymagający przesyłania przez SPI dużych ilości danych przeznaczonych do wyświetlania. Chodziło o to, by interfejs użytkownika był w miarę responsywny. Lepszym wyborem byłby mikrokontrolery z rdzeniem ARM, np. STM32F4 lub ESP32, ale autorowi zależało na dobrej jakości sekcji analogowej zintegrowanej w jednym mikrokontrolerze. Ostatecznie, po zastosowaniu zabiegów optymalizacyjnych, PIC24F poradził sobie z tym zadaniem.
Przetwornik analogowo-cyfrowy
Microchip wbudował w mikrokontroler nietypowy, 12-bitowy przetwornik nazwany High Speed Pipeline A/D Converter, czyli przetwornik analogowo-cyfrowy z przetwarzaniem potokowym. W typowym konwerterze SAR faza próbkowania to czas, w którym kondensator próbkujący (S/H) konwertera analogowo-cyfrowego jest podłączony do analogowego wyprowadzenia wejściowego. Proces próbkowania jest uruchamiany przez obwody przetwornika analogowo-cyfrowego na przykład poprzez programowe wymuszenie konwersji. Dla każdego konwertera jest zdefiniowany minimalny czas próbkowania, który gwarantuje, że kondensator S/H zapewni wystarczającą dokładność konwersji analogowo-cyfrowej. Zdarzenie wyzwalające konwersję A/C rozpoczyna odliczanie czasu próbkowania. Po upływie tego czasu układy sprzętowe przetwornika automatycznie rozpoczynają konwersję, a jej czas jest potrzebny przetwornikowi analogowo-cyfrowemu na przekonwertowanie napięcia utrzymywanego przez kondensator S/H na postać cyfrową. Sekwencja czasowa konwersji A/C typu SAR została pokazana na rysunku 13.
Główną różnicą między przetwornikami analogowo-cyfrowymi z przetwarzaniem potokowym, a przetwornikami z rejestrem aproksymacji sukcesywnej (SAR) jest szybkość. W typowej konwersji opartej na SAR, cyfrowa część procesu generowania wyników odbywa się szeregowo i zazwyczaj tylko jeden komparator analogowy jest używany do konwersji jednego bitu danych wynikowych na cykl zegara analogowo-cyfrowego. Konwerter potokowy używa wielu wewnętrznych komparatorów analogowych pracujących równolegle, aby umożliwić przetwarzanie wielu wyników na kilku różnych etapach konwersji. Umożliwia to wykonywanie jej w sposób „potokowy” (tj. każda konwersja jest ściśle etapowana, jedna po drugiej). W rezultacie układ może generować jeden wynik konwersji na każdy okres zegara analogowo-cyfrowego (TAD).
Duża szybkość to podstawowa zaleta, ale główną wadą przetwornika analogowo-cyfrowego typu pipeline jest wyższy poziom szumów w porównaniu z przetwornikami SAR. W praktyce, aby uzyskać pożądane rezultaty, pobiera się i uśrednia wiele próbek. W naszym urządzeniu nie potrzebujemy dużej szybkości, ale przydałby się niski poziom szumów. Zgodnie z sugestią, w programie obsługującym konwersję zastosowałem uśrednianie 32 próbek.
Przetworniki cyfrowo-analogowe
Mikrokontroler ma wbudowane dwa niezależne moduły przetworników cyfrowo-analogowych: DAC1 i DAC2. Każdy z modułów ma rozdzielczość 10 bitów, czyli dane wejściowe mają postać 10-bitowej wartości cyfrowej, zapisywanej w formacie wyrównania do lewej lub prawej strony. Sygnał wyjściowy to napięcie analogowe, proporcjonalne do cyfrowej wartości wejściowej. Moduł może generować napięcia wyjściowe między napięciem AVSS a skonfigurowanym dodatnim napięciem odniesienia DAC. U nas odniesieniem jest napięcie AVDD (+3,3 V) podane na port RB0 (DVREF+). Wyzwolenie konwersji następuje po zapisaniu nowej wartości do rejestru danych modułu.
