Solarna ładowarka akumulatorów z MPPT (1)

Solarna ładowarka akumulatorów z MPPT (1)

Inwertery solarne to urządzenia, które odbierają energię z ogniw fotowoltaicznych i przekształcają ją w bardziej użyteczną formę, na przykład napięcie przemienne 230 V. Zaprezentowana ładowarka powstała po to, aby energią z ogniw PV ładować akumulatory o napięciu do 50 V. Akumulatory te mogą być podstawą domowego magazynu energii, dzięki któremu efektywniej wykorzystamy energię słoneczną. Dodatkowo zaprezentowany projekt wyróżnia się tym, że realizuje algorytm śledzenia punktu mocy maksymalnej (MPPT), co gwarantuje uzyskiwanie maksymalnej ilości energii z ogniw PV.

W ramach artykułu opisano, w jaki sposób zbudować kontroler ładowania akumulatorów z ogniwa słonecznego, który wyposażony jest w komunikację poprzez Wi-Fi i realizuje algorytm MPPT. Kontroler ten działa z mocą do 1 kW, wyposażony jest w systemy telemetryczne rejestrujące dane dotyczące parametrów pracy urządzenia w aplikacji telefonu (kompatybilne z systemem Android oraz iOS).

Ładowarka jest kompatybilna z panelami słonecznymi w konfiguracji 80 V, 30 A i wszystkimi rodzajami akumulatorów o napięciu do 50 V. Projekt bazuje na module ESP32 oprogramowanym za pomocą Arduino IDE, w którym autor opracował otwarte oprogramowanie Fugu MPPT. Całkowity koszt projektu to około 25 dolarów (jeśli kupujemy elementy i moduły prosto z Azji, poprzez popularne portale sprzedażowe). Jest to znacznie tańsze niż kupowanie gotowych przetwornic z MPPT do ładowania akumulatorów, których ceny zaczynają się od 200 dolarów.

Celem projektu było zbudowanie ładowarki DIY z obsługą MPPT, której autor mógłby na stałe używać w swojej instalacji solarnej off-grid (niezależnej od sieci). System miał za zadanie zapewnić najlepsze parametry i najwyższą niezawodność, dlatego też, podczas procesu projektowania, układ rozbudowany został o szereg dodatkowych funkcji, czy też zwiększono parametry niektórych układów (np. zastosowano specjalny, 16-bitowy przetwornik analogowo-cyfrowy (ADC) do precyzyjnych pomiarów z czujników). Układ korzysta z naprawdę szybkiego, dwurdzeniowego, 32-bitowego mikrokontrolera do szybkich obliczeń systemowych, implementuje wysokiej rozdzielczości sterowanie PWM oraz ma szeroki zakres wybieralnych częstotliwości PWM w celu optymalizacji przełączania kluczy w sekcji impulsowej. Realizuje również szereg opcji telemetrycznych do zastosowań w systemach IoT i oprogramowanie układowe typu open source, które będzie kompatybilne z przyszłymi kompilacjami oprogramowania MPPT tego autora.

Działający synchroniczny projekt MPPT

Społeczność DIY podjęła kilka prób zbudowania w pełni synchronicznej przetwornicy Buck zintegrowanej ze sterowaniem MPPT, ale często spotykała się z poważnymi problemami. Jak twierdzi autor, zaprezentowany projekt to układ, który jako pierwszy zaimplementował poprawki do wszystkich odwiecznych problemów, które nękały projeky układów DIY MPPT o dużej mocy. Aby udowodnić, że istotnie układ ten działa poprawnie, autor przed opublikowaniem tego projektu testował układ w wersji beta przez 6 miesięcy.

Specyfikacja techniczna

Funkcje i cechy układu są następujące:

  • algorytm perturbacyjny dla MPPT z działaniem w trybie CC-CV (stałego prądu – stałego napięcia po stronie wtórnej),
  • wejście do 80 V, do 30 A (ogniwa fotowoltaiczne, turbiny wiatrowe itd.),
  • wyjście do 50 V, do 35 A (akumulatory litowo-jonowe (Li-Ion), akumulatory litowo-żelazowo-fosforanowe (LiFePO4), akumulatory kwasowo ołowiowe itp.),
  • szczytowa wydajność przetwarzania równa 98%,
  • telemetria aplikacji poprzez Wi-Fi i Bluetooth z użyciem Blynk,
  • tryb ładowarki lub zasilacza (może działać jako programowalna przetwornica Buck),
  • precyzyjne pomiary dzięki ADC o rozdzielczości 16 bitów i 12 bitów (odpowiednio ADS1115 i ADS1015),
  • automatyczna kalibracja czujnika prądu ACS712-30 A,
  • protokół ochrony przed odłączeniem baterii i/lub napięcia wejściowego,
  • interfejs w postaci menu wyświetlanym na LCD (z ustawieniami i 4 układami wyświetlacza),
  • pamięć Flash do zapisywania ustawień w sposób nieulotny,
  • ustawiana rozdzielczość PWM (od 16 do 8 bitów),
  • ustawiana częstotliwość przełączania PWM (w zakresie od 1,2 kHz do 312 kHz),
  • opcje zasilania:
    • wyjście 12 V/akumulator – 420 W przy 35 A,
    • wyjście 24 V/akumulator – 840 W przy 35 A,
    • wyjście 36 V/akumulator – 1000 W przy 35 A (a przy odblokowanym zabezpieczeniu 1260 W),
    • wyjście 48 V/akumulator – 1000 W przy 35 W (a przy odblokowanym zabezpieczeniu 1680 W),
    • wyjście 60 V/akumulator (wymagana modyfikacja układu),
    • wyjście 72 V/akumulator (wymagana modyfikacja układu),
    • wyjście 80 V/akumulator (wymagana modyfikacja układu).

Uwagi:

  • wejście 80 V odnosi się do bezwzględnego VOC panelu słonecznego. Nawet nieznaczne przekroczenie tego napięcia może potencjalnie uszkodzić układ;
  • ograniczenie prądu do 30 A wynika z tego, że projekt został przetestowany tylko na stanowisku laboratoryjnym przy wyjściu 48 V 20 A w trybie zasilacza;
  • jeśli chodzi o tryby ładowania akumulatora, system został przetestowany tylko przy ciągłym napięciu 22...27 V i prądzie 23...19 A z akumulatorem 8S LiFePO4 podczas szczytowych godzin nasłonecznienia;
  • oprogramowanie układowe jest zablokowane na 1 kW, niezależnie od teoretycznej mocy znamionowej elementów mocy. To zabezpieczenie zaimplementowano z uwagi na brak równoległych tranzystorów MOSFET i grubość drutu cewki w tej wersji układu. Autor zamierza przeprowadzić w przyszłości testy, mające zaowocować odblokowaniem limitu 1 kW w kolejnej wersji;
  • projekt jest ograniczony maksymalnym zakresem pomiarowym prądu wejściowego do 30 A. Niezależnie od tego moc wyjściowa jest ograniczona do prądu wyjściowego 35 A ze względu na konstrukcję przetwornicy Buck, a z przyczyn bezpieczeństwa prąd wyjściowy jest ograniczony w systemie do 30 A,
  • co wynika z prądu nasycenia cewki w przetwornicy. Przyjęto założenie, że prąd nasycenia musi być dwukrotnie większy niż prąd w obwodzie ze względu na charakterystykę miękkiego nasycenia rdzenia proszkowego.

Co to jest MPPT i dlaczego jest ważne dla paneli słonecznych?

Śledzenie maksymalnego punktu mocy (MPPT) to technika stosowana ze źródłami energii o zmiennej mocy, takimi jak panele słoneczne, turbiny wiatrowe, ale także bardziej egzotyczne źródła energii, takie jak układy do zbierania energii z otoczenia z użyciem modułów Peltiera czy generatorów tryboelektrycznych. Zadaniem algorytmu MPPT jest maksymalizacja ilości pozyskiwanej energii ze źródeł o zmiennej charakterystyce, zależnej od warunków otoczenia (np. od nasłonecznienia w przypadku ogniw fotowoltaicznych).

Kontroler MPPT jest niezbędnym urządzeniem w systemie ładowarki solarnej. MPPT to w zasadzie inteligentna przetwornica DC-DC (lub DC/AC). W przypadku omawianego projektu przetwornica ta stabilizuje prąd i napięcie po stronie wtórnej, aby bezpiecznie ładować akumulatory. Po stronie pierwotnej natomiast układ zawiera sprytny algorytm MPPT, który przeznaczony jest do śledzenia maksymalnego punkt mocy panelu słonecznego.

Właściwe wyjaśnienie działania algorytmu MPPT wymaga pewnej wiedzy technicznej. Konieczność stosowania MPPT wynika z faktu, że charakterystyka I/U ogniwa fotowoltaicznego zmienia się w zależności od natężenia padających promieni słonecznych, temperatury itp. Na rysunku 1 pokazano przykładową rodzinę charakterystyk I/U – dla ogniwa PV dla różnego nasłonecznienia.

Rysunek 1. Rodzina krzywych I/U ogniw fotowoltaicznych dla różnych poziomów nasłonecznienia

Wraz ze zwiększaniem się nasłonecznienia zmienia się położenie punktu maksymalnej mocy (granatowa, schodkowa linia na rysunku 1). Ogniwa PV mają złożony związek między środowiskiem a mocą, którą generują. Tak zwany współczynnik wypełnienia (FF) charakteryzuje nieliniowe zachowanie ogniwa. Współczynnik wypełnienia jest definiowany jako stosunek maksymalnej mocy generowanej przez ogniwo do iloczynu napięcia na wyjściach ogniwa w stanie rozwartym (VOC) i prądu zwarciowego (ISC). Dane tabelaryczne są często stosowane do oszacowania maksymalnej mocy, którą ogniwo może dostarczyć przy optymalnym obciążeniu w określonych warunkach:

W większości przypadków informacje dotyczące współczynnika wypełnienia (FF), napięcia na zaciskach w stanie otwartym (VOC) i prądu zwarciowego (ISC) są wystarczające do uzyskania przybliżonego obrazu zachowania elektrycznego ogniwa w typowych warunkach. Jest to jednak przybliżony punkt maksymalnej mocy, jeśli chcemy zmaksymalizować uzyskiwaną moc w systemie, konieczne jest zastosowanie algorytmu, który aktywnie optymalizuje punkt pracy ogniwa.

Ogniwo fotowoltaiczne, w większej części swojego użytecznego zakresu, działa jako źródło prądowe. W obszarze maksymalnej mocy (MPP) charakterystyka ogniwa ma przybliżoną odwrotnie wykładniczą zależność między prądem a napięciem. Żeby nie wchodzić w nadmiernie techniczne dywagacje, wystarczy wskazać, że optymalny punkt mocy to ten, gdzie pochodna dP/dU=0, co odpowiada maksimum krzywej P(U). Znając równania ogniwa PV, można zapisać równanie dla napięcia optymalnej mocy, jednak nie ma ono analitycznych rozwiązań, co oznacza, że napięcie to i tak musi być znalezione eksperymentalnie.

Przy zmianie rezystancji obciążenia ogniwa PV zmienia się jego punkt pracy. Układ MPPT jest przetwornicą DC-DC z możliwością regulacji parametrów pracy. Zmieniając wypełnienie sygnału PWM kluczującego pracę przetwornicy, zmieniamy jej impedancję, a więc także punkt pracy. Najprostszym zobrazowaniem tego procesu jest eksperyment z użyciem przetwornicy Buck z regulowanym wyjściem (za pomocą potencjometru) podłączonej do ogniwa fotowoltaicznego. Przetwornicę należy podłączyć do stałego obciążenia (autor zastosował tutaj grzałkę). Pomiędzy wejście przetwornicy a ogniwo PV podłączony zostaje watomierz. Wraz ze zmianą położenia gałki potencjometru zmieniała się pobierana moc. Do pewnego momentu rosła ona, aż osiągnęła maksimum. Dalsze obracanie potencjometrem – zwiększanie napięcia na wyjściu, zwiększanie wypełnienia sygnału sterującego kluczami, powodowało spadek mocy, aż do niemal zera (rysunek 2).

Rysunek 2. Krzywe P/U dla ogniwa fotowoltaicznego dla dwóch różnych poziomów natężenia promieniowania słonecznego na ogniwie

Gdy słońce podnosiło się wyżej, moc zaczęła się zmieniać, więc konieczne było ponowne obracanie potencjometrem, aby znaleźć punkt maksymalnej mocy panelu. Kiedy intensywność światła słonecznego się zmienia, trzeba regulować punkt pracy, aby zawsze uzyskać największą moc z danego panelu. Tak właśnie działa algorytm MPPT. Zmieniając pozycję potencjometru, reguluje się wypełnienie sygnału PWM kontrolującego pracę przetwornicy Buck. W tym czasie konieczny jest pomiar mocy pobieranej z panelu (pomiar napięcia i prądu), aby utrzymywać punkt najwyższej mocy z paneli.

Potencjometr reprezentuje kontrolę wypełnienia przetwornicy Buck w MPPT. Miernik mocy i człowiek kręcący potencjometrem reprezentują sprzężenie zwrotne systemu MPPT. Algorytm w docelowym urządzeniu działa w podobny sposób, ale zamiast człowieka obracającego potencjometrem zastosowany jest mikrokontroler. W ten sposób można zawsze uzyskać maksymalną moc wyjściową z danych ogniw fotowoltaicznych.

W MPPT ten rodzaj śledzenia punktu mocy jest nazywany algorytmem perturbacyjnym, znanym również jako algorytm wspinaczkowy. Są to ogólnie algorytmy związane z tzw. błądzeniem losowym. Tego rodzaju procesy można analizować na wiele sposobów. Autor urządzenia wybrał, nie bez powodu, najprostszy sposób sterowania swojej inteligentnej przetwornicy Buck. Układ zmienia cały czas wypełnienie sygnału PWM w obie strony (zwiększa i zmniejsza je), porównując moc pozyskiwaną, dzięki czemu cały czas może znajdować się blisko najwyższej możliwej mocy, którą można pozyskać z paneli słonecznych – punktu MPP.

Wysokowydajna synchroniczna przetwornica typu Buck

Synchroniczne rozwiązania MPPT bazujące na przetwornicach Buck są układami, które charakteryzują się najwyższą gęstością mocy i największą sprawnością przetwarzania energii. Większość komercyjnych modułów MPPT wysokiej klasy korzysta właśnie z tej architektury. Dlaczego tylko wysokiej klasy, skoro koszty różnych topologii przetwornic są do siebie dosyć zbliżone? Jak wskazuje autor, głównym kosztem są tutaj prace badawcze i rozwojowe – opracowanie odpowiedniego projektu takiej przetwornicy wymaga dużo pracy. Przyjrzyjmy się, na czym głównie skupiła się ta praca – jakie były kluczowe problemy po stronie sprzętowej i programowej układu.

Synchroniczne przetwornice Buck są wydajniejszą wersją zwykłych, asynchronicznych układów o tej samej topologii. Pod względem projektu i kosztów są one dosyć proste i tanie, ale ich zaprojektowanie jest istotnie trudniejsze. Przyjrzyjmy się kluczowym różnicom pomiędzy tymi topologiami. W tabeli 1 podsumowano kluczowe różnice.

Na rysunku 3 pokazano uproszczone schematy ideowe kluczowej części przetwornicy asynchronicznej (a) i synchronicznej (b). Dalsza analiza skupia się na kluczowych różnicach w działaniu obu układów, dlatego też wymagana jest przynajmniej podstawowa wiedza na temat tego, jak działa przetwornica w topologii Buck.

Rysunek 3. Przetwornica typu Buck asynchroniczna (a) i synchroniczna (b)

Przetwornice Buck to stabilizatory, które przekształcają napięcie wejściowe na niższe napięcie wyjściowe. W przeciwieństwie do stabilizatorów liniowych, układ Buck nie wytraca napięcia, zamieniając część energii w ciepło. Mimo to, stabilizator impulsowy nigdy nie osiągnie sprawności równej 100% i nadal obserwować będziemy niewielkie straty. Ponadto stabilizator Buck pozwala na zwiększenie prądu – gdy napięcie na wyjściu jest niższe od wejściowego, prąd, który może dostarczyć układ na wyjściu, może być większy niż prąd dostarczany na wejściu. Przetwornica ta generuje sygnał PWM do sterowania tranzystorem kluczującym prąd cewki indukcyjnej oraz układ sprzężenia zwrotnego (niepokazany na rysunku 3) do regulowania napięcia lub prądu wyjściowego.

Moduły takie, jak np. popularna płytka z układem LM2596, realizują mniej wydajną topologię asynchroniczną. Tranzystor zintegrowany z kontrolerem PWM w układzie scalonym jest uzupełniony diodą umieszczoną na płytce. Moduły te zwykle osiągają średnią sprawność na poziomie 75...85%. Z uwagi na relatywnie niską sprawność moduły te łatwo się nagrzewają, nawet gdy są używane z rekomendowanymi wartościami prądu. To nagrzewanie jest skutkiem rozpraszania ciepła spowodowanym stratami przy przełączaniu i stratami przewodzenia na elementach układu. Moduły te mają oczywiście wyższą sprawność niż stabilizatory liniowe, ale możliwe jest uzyskanie znacznie wyższej sprawności. Powodem, dla którego asynchroniczne przetwornice Buck nie są w stanie osiągnąć sprawności na poziomie 98%, są przede wszystkim straty wydzielane w diodzie. Dioda jest niezbędna dla przetwornicy Buck, ponieważ umożliwia przepływ prądu tylko w jednym, wymaganym kierunku. Element ten charakteryzuje się pewnym stałym spadkiem napięcia w kierunku przewodzenia. Większość diod krzemowych charakteryzuje się spadkiem w zakresie od 0,4 V do 0,7 V. Nie wydaje się to wielką wartością, jednak gdy wejdzie się w świat elektroniki dużej mocy, to okazuje się, że taki spadek napięcia przy dużych prądach powoduje straty i redukcje sprawności.

Odpowiedzią na niską sprawność układów asynchronicznych jest niewielka modyfikacja – zastąpienie diody tranzystorem MOSFET. Dlaczego MOSFET? W przeciwieństwie do tranzystorów bipolarnych, tranzystor polowy nie ma spadku napięcia, gdy jest aktywowany. Kiedy MOSFET przewodzi, obserwuje się jedynie pewną niewielką rezystancję kanału – RDS(ON). Jest to opór podczas przewodzenia i dla typowych nowoczesnych tranzystorów mocy jest bardzo niski – na poziomie mΩ. Dodatkowo stosuje się tranzystory MOSFET z kanałem N, zamiast z kanałem P. Tranzystory N-MOSFET mają znacznie niższą rezystancję kanału w stanie włączenia w porównaniu z tranzystorami P-MOSFET. W rezultacie straty są znacznie niższe.

Sterowanie takiego układu jest proste – gdy Q2 się włącza, Q3 się wyłącza, a kiedy Q3 się włącza, Q2 się wyłącza (rysunek 3). Oczywiście trzeba zaimplementować czas martwy, aby zapobiec jednoczesnemu przewodzeniu Q2 i Q3, ale nie wydaje się to problematyczne. Nic bardziej mylnego – wymiana diody na drugi tranzystor pociągnie za sobą dwa poważne problemy, które trzeba rozwiązać w projekcie układu.

Sterowanie dolnym tranzystorem w przetwornicy

Dodanie drugiego tranzystora do układu pociąga za sobą konieczność jego precyzyjnego wysterowania. Dioda, bez żadnego wymyślnego obwodu czy oprogramowanego sterownika, automatycznie blokuje przepływ prądu w kierunku zaporowym. Tranzystory MOSFET w synchronicznej przetwornicy Buck muszą być przełączane w zsynchronizowany ze sobą sposób, w przeciwnym razie mogą ulec uszkodzeniu. Stąd określenie synchroniczna w opisie tej topologii.

Jednak nie tylko sterowanie Q3 stanowi wyzwanie. Ten tranzystor steruje się relatywnie łatwo, ponieważ źródło jest dołączone bezpośrednio do masy układu. Wystarczy prosty sterownik, aby przełączyć bramkę, dostarczając napięcie między bramką a źródło tranzystora Q3. Z drugiej strony Q2 znajduje się powyżej, a jego źródło dołączone jest do drenu Q3. Ta konfiguracja nazywana jest półmostkiem. Aby poprawnie przełączyć Q2, należy zastosować odpowiedni sterownik ze zintegrowaną pompą ładunkową. Pompa ta zawiera kondensator ładowany w określonych momentach czasu, który osiąga napięcie wyższe od zasilającego, potrzebne do całkowitego włączenia tranzystora Q2. Jeżeli napięcie to będzie zbyt niskie, MOSFET będzie działał w zakresie liniowej części swojej charakterystyki, więc będzie zachowywał się jak rezystancja sterowana napięciem bramka-źródło. Rezystancja kanału istotnie wzrośnie, a wraz z nią również straty całego układu. Kolejnym problemem jest wysokie ryzyko uszkodzenia tranzystora Q3, jeśli nie będzie on odpowiednio sterowany. Tranzystor MOSFET Q3 nie może w pełni emulować diody, którą zastąpił w układzie asynchronicznym.

Implementacja układu jest dość łatwa, ale właściwy proces bezawaryjnego działania już nie jest tak prosty. Zanim jednak przejdziemy do rozwiązania tego problemu, trzeba wyjaśnić, jak działają typowe sterowniki tranzystorów MOSFET. Popularne układy scalone typu IR2101 i IR2110 to sterowniki z tzw. surową logiką. Mają one dwa wejścia logiczne HIN i LIN do sterowania przełączaniem tranzystora po stronie, odpowiednio, wysokiej i niskiej – Q2 i Q3. Kiedy HIN przyjmuje stan wysoki, Q2 jest włączony, a kiedy przyjmuje stan niski, Q2 jest wyłączony. Kiedy LIN jest w stanie wysokim, Q3 jest włączony, a kiedy LIN jest w stanie niskim, Q3 jest w stanie wyłączonym. Wymaga to dwóch komplementarnych sygnałów PWM do działania przetwornicy Buck. Zapewnia to większą kontrolę nad przełączaniem, ale wymaga zapewnienia czasów martwych w przebiegach PWM. Autor stosował go w prototypowej wersji przetwornicy, ale zaprzestał z uwagi na konieczność programowego ustalenia i generowania czasów martwych, co wymaga oprogramowania liczników itp. w mikrokontrolerze i generalnie nie jest zbyt przyjazne dla aplikacji pisanych w Arduino IDE.

Zanim przejdziemy dalej, konieczne jest wyjaśnienie pewnych kwestii dotyczących czasów martwych. W sterowaniu półmostkiem takim, jak w synchronicznej przetwornicy Buck, termin „czas martwy” odnosi się do krótkiego czasu, w którym wszystkie tranzystory w układzie są wyłączone, aby zapobiec równoczesnemu otwarciu dwóch tranzystorów, co może doprowadzić do zwarcia i uszkodzenia układu. Czas martwy jest wprowadzany między wyłączeniem jednego tranzystora a włączeniem drugiego, aby umożliwić spadek napięcia na cewce i zagwarantować odpowiedni czas na wyłączenie pierwszego tranzystora. Na rysunku 4 pokazano, czym są czasy martwe w sterowaniu układem tego rodzaju.

Rysunek 4. Schematycznie zaprezentowane przebiegi sterujące na bramkach tranzystorów w synchronicznym układzie Buck

W przypadku synchronicznej przetwornicy Buck czas martwy jest również stosowany w celu poprawy sprawności układu (redukuje straty przy przełączaniu) oraz redukcji poziomu generowanych zakłóceń elektromagnetycznych, które powstają na szybkich zboczach podczas przełączania, gdy płynie przez nie duży prąd. Czas martwy jest dokładnie kontrolowany i zdefiniowany w układach sterowania, aby zapewnić bezpieczne i sprawne działanie przetwornicy. Odpowiednie ustawienie czasu martwego jest istotne dla zapewnienia prawidłowej pracy układu. Jego długość zależna jest od zastosowanych tranzystorów, cewki i częstotliwości kluczowania. W szczególności zależy on od tempa otwierania i zamykania kluczy MOSFET, które z kolei uzależnione jest od wydajności prądowej sterownika i ładunku bramek tranzystorów... Z uwagi na tak wiele czynników, najprościej jest dobrać czasy martwe eksperymentalnie, obserwując przebiegi na oscyloskopie.

Najłatwiejszym w użyciu sterownikiem MOSFET jest układ IR2104, dlatego autor wybrał go do docelowej konstrukcji. Schemat z zastosowaniem tego układu pokazano na rysunku 5. Układ ma wbudowaną funkcję generowania czasu martwego, co znacznie upraszcza oprogramowanie przetwornicy. Układ IR2104 ma wejścia logiczne o nazwach IN i SD. IN to logika wejściowa dla sygnału PWM do przełączania, a SD to wejście włączające, które steruje dwoma tranzystorami – w stanie niskim, Q2 i Q3 wyłączają się niezależnie od tego, czy na IN jest obecny sygnał PWM. Kiedy SD jest w stanie wysokim, włącza się albo Q2, albo Q3, w zależności od stanu logicznego pinu IN. Kiedy IN jest w stanie wysokim, Q2 jest włączony, a Q3 wyłączony i odwrotnie, gdy IN jest w stanie niskim (Q2 wyłączony, Q3 włączony). Dzięki temu do sterowania układem potrzebny jest tylko jeden sygnał PWM (nie ma potrzeby generowania dwóch komplementarnych sygnałów z czasem martwym). Co więcej, driver ten ma zaimplementowane obwody generujące czasy martwe.

Rysunek 5. Fragment schematu synchronicznej przetwornicy Buck ze sterownikiem tranzystorów MOSFET typu IR2104

Niestety sterownik ten nie rozwiązuje wszystkich problemów. Sterowanie pojedynczym przebiegiem PWM obu tranzystorów oznacza, że im wyższe wypełnienie sygnału PWM, tym na dłużej Q2 włącza się, a Q3 na krócej się włącza. Analogicznie, im niższe wypełnienie, tym Q3 włącza się na dłużej, a Q2 na krócej. Powoduje to, że MOSFET Q3 nie może skutecznie emulować diody, którą zastąpił, gdy wypełnienie będzie zbyt niskie. W pewnym momencie Q3 działa jako efektywne zwarcie w układzie. Oznacza to, że istnieje pewna określona dolna wartość dla wypełnienia sygnału PWM, której nie można przekroczyć, w przeciwnym razie Q3 zacząłby się nadmiernie nagrzewać i mógłby ulec uszkodzeniu.

Istnieją dwa rozwiązania tego problemu – sprzętowe i programowe. Można zastosować scalony kontroler synchronicznej przetwornicy Buck, który będzie zawierał odpowiednie obwody sterowania. Można też zastosować driver IR2104, a o problem zadbać programowo. Autor wybrał drugie rozwiązanie, ponieważ IR2104 jest tani, a wyspecjalizowane kontrolery kosztują ponad 10 dolarów za sztukę.

Istnieje określona dolna wartość wypełnienia przebiegu PWM, która nigdy nie powinna wynosić zero. Prosty sposób estymacji pokazano na równaniu 2. Jest równy stosunkowi napięcia wyjściowego VOUT do wejściowego VIN. Najniższe wypełnienie w układzie nie powinno być niższe niż ten współczynnik:

Kiedy sygnał PWM ma niższe wypełnienie niż PWMMIN, prąd płynie w odwrotnym kierunku i powoduje, że Q3 przewodzi, gdy nie powinien. W takiej sytuacji zamiast ładować akumulatory, tak naprawdę układ je rozładowuje. W miarę zmniejszania wypełnienia sygnału sterującego PWM poniżej obliczonego limitu prąd wsteczny Q3 staje się coraz wyższy, powodując finalnie jego uszkodzenie. W oprogramowaniu pin SD kontrolera IR2104 jest ustawiany w stan niski, gdy PWM spada poniżej obliczonego limitu, aby zapewnić, że Q2 i Q3 nigdy nie włączą się w tym stanie. Wartość ta w kodzie zapisywana jest, jako PPWM. Dodatkowo w kodzie dodano również PPWM_margin * pwmMax, co miało na celu ograniczenie maksymalnego dopuszczalnego wypełnienia sygnału PWM, ponieważ sterownik MOSFET, taki jak IR2104, nie może działać przy 100% wypełnieniu.

Przepływ prądu przez diodę w tranzystorze MOSFET

Tranzystory MOSFET mają w swojej strukturze pasożytniczą diodę. Jest ona widoczna na schemacie w symbolu tego elementu i łączy dren ze źródłem. Jej obecność jest wynikiem konstrukcji struktury półprzewodnikowej tego elementu. Dioda ta może mieć wpływ na działanie układu, w którym zastosowany jest tranzystor i zawsze trzeba uwzględnić ją przy analizie układu.

Kiedy MOSFET Q3 jest wyłączony na czas nieokreślony, przetwornica zachowuje się jak asynchroniczna przetwornica Buck. Ale kiedy zostanie załączony w sposób synchroniczny, MOSFET Q3 przewodzi i zapewnia ścieżkę o niższej rezystancji w układzie, dzięki czemu układ zachowuje się teraz jak synchroniczna przetwornica Buck (korzystająca z efektów niższego spadku napięcia).

Istnieje coś, co nazywa się upływem prądu diody zarówno w topologiach synchronicznych, jak i asynchronicznych przetwornic Buck. Ten problem był obecny w większości synchronicznych przetwornic Buck stosowanych w układach MPPT DIY do tej pory. Niezależnie od tego, czy Q2 jest włączony, czy wyłączony, obecność diody wewnątrz tego tranzystora powoduje przepływ prądu z akumulatorów z powrotem do paneli słonecznych, gdy napięcie wejściowe jest niższe niż napięcie wyjściowe (UPV < UAKU). Dzieje się tak, gdy panele słoneczne wytwarzają niższe napięcie, np. o zmierzchu, świcie czy w nocy.

Jeśli chcemy zmaksymalizować sprawność układu, to dodawanie diod na wejściu układu będzie ostatnim rozwiązaniem, jaki warto wziąć pod uwagę. Potrzebne jest inne podejście, do wyboru są dwa sposoby.

Drogie rozwiązanie

Można zastosować specjalny sterownik tranzystora MOSFET z kanałem typu N do pracy po wysokiej stronie lub jakiś układ kilku tranzystorów. To technicznie dobre rozwiązanie, jednak, jak zauważa autor konstrukcji, układy, które je realizują, są trudno dostępne i drogie.

Tańsze rozwiązanie

Można dodać diodę na wejściu układu (przed Q2), aby zapobiec przepływowi prądu w odwrotnym kierunku. Ma to zastosowanie we wszystkich topologiach typu Buck, ale diody powodują spadki napięcia, które prowadzą do strat energii! Więc znowu trzeba wymienić diodę wejściową na inny MOSFET z kanałem typu N, tym razem podłączony odwrotnie niż Q2. Nazywa się to konfiguracją MOSFET z blokowaniem wstecznym. Pokazano ją na rysunku 6.

Rysunek 6. Układ z dodanym tranzystorem Q1, mającym redukować problem upływu prądu przez wbudowaną diodę tranzystora MOSFET Q2

W drugim rozwiązaniu, gdy tranzystory Q1 i Q2 mają przeciwstawnie ustawione do siebie diody, prąd upływu nie jest już obserwowany, chyba że włączone będą oba tranzystory Q1 i Q2. Teraz wyzwaniem jest prawidłowe włączanie i wyłączanie tego nowo dodanego tranzystora (Q1). Oczywiście nie można po prostu przyłożyć napięcia do pinu bramki Q1, ponieważ jest on umieszczony po wysokiej stronie i znacznie nad masą. Aby rozwiązać ten problem, do układu dodana musi być dodatkowa, izolowana przetwornica DC-DC, wybrana do projektu izolowana przetwornica to B1212S firmy EVsun. Przy koszcie 2 dolarów za sztukę jest to tańsze niż zakup specjalnego sterownika MOSFET do pracy po stronie wysokiej. Chociaż można użyć kolejnego drivera IR2104 lub IR2101, izolowana przetwornica DC-DC i MOSFET mają zaletę w postaci tego, że mogą działać ze 100% wypełnieniem impulsów sterujących PWM.

Izolowana przetwornica DC-DC tworzy różnicę potencjałów między źródłem a bramką tranzystora Q1. Rezystor R37 jest rezystorem rozładowującym bramkę bramki Q1, gdy na wejściu U2 nie jest dostarczane zasilanie. Blok zabezpieczenia przed przepływem zwrotnym PV jako całość jest przełączany przez Q4. Kiedy GPIO27 ustawia stan wysoki, Q4 przewodzi i zapewnia ścieżkę dla prądu do zasilania U2 (izolowana przetwornica DC-DC). Kiedy wejście U2 jest zasilane, wyjście U2 zapewnia izolowane napięcie 12 V i jest dostarczane do bramki i źródła Q1, zasilając w ten sposób Q1 i zamykając ścieżkę od styku VIN i drenu Q2. Zmiana GPIO27 na stan niski działa odwrotnie i wyłącza Q1.

Pokazana implementacja jest dosyć uproszczona. Czas reakcji na włączenie Q1 nie został zmierzony, ale jak zapewnia autor, jest on z pewnością wystarczająco szybki. Niezależnie od tego, upływ prądu z powrotem z paneli nie jest tak duży. Ta funkcja była potrzebna, aby zapobiec rozładowaniu akumulatora np. w nocy. Istnieją najpewniej lepsze rozwiązania tego problemu, jednak autor uznał to rozwiązanie za dostateczne.

Pierwszą część artykułu poświęciliśmy teoretycznym i praktycznym zagadnieniom związanym z działaniem algorytmu śledzenia punktu mocy maksymalnej (MPPT) i działaniem przetwornicy w topologii Buck. W kolejnym wydaniu EP skupimy się na konstrukcji tytułowej ładowarki oraz na oprogramowaniu sterującym.

Nikodem Czechowski, EP

Artykuł ukazał się w
Elektronika Praktyczna
sierpień 2023

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio maj - czerwiec 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje kwiecień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich maj 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów