Elektroda.pl
Elektroda.pl
X
Computer ControlsComputer Controls
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterownik BLDC 30A ESC - schemat

24 Maj 2016 00:21 2643 10
  • Poziom 7  
    Witajcie,

    od pewnego czasu projektuję sterownik BLDC na prąd maksymalny 30A do sterowania silnikiem modelarskim od quadrocoptera.

    Schemat prezentuje się następująco:
    Sterownik BLDC 30A ESC - schemat

    Klucze górne będą sterowane za pomocą PWM, klucze dolne odpowiednio sygnałem stałym.
    Wszystkie rezystory mają 0.25W - z wyjątkiem tych trzech jedno watowych na bramy mosfetów kluczy górnych.

    Całość będzie zasilana z pakietu 3S

    Bardzo prosiłbym o sprawdzenie schematu, czy wartości wszystkich elementów są odpowiednie. Mam również wątpliwości odnośnie obwodu do pomiaru Back EMF. Wszelkie uwagi mile widziane.

    Dziękuję i pozdrawiam
    Elektro_maniak
  • Computer ControlsComputer Controls
  • Poziom 11  
    A co tu sprawdzać.
    Schemat ściągnięty ze strony
    Link

    Zamieszczony jest cały opis od początku tworzenia układu, więc..

    A przy okazji sam to składałem i działa.
  • Computer ControlsComputer Controls
  • Poziom 7  
    Tak, właśnie na tym m.in. też się wzorowałem. Jednakże, zaprezentowany tam sterownik jest na dużo mniejsze prądy.

    Moja koncepcja jest trochę bardziej rozbudowana, zakłada prądy do 30A i sterowanie poważnym silnikiem modelarskim. Stąd moje pytanie do bardziej doświadczonych kolegów, odnośnie optymalnego doboru wartości poszczególnych elementów.

    Pozdrawiam i dziękuję.
  • Użytkownik usunął konto  
  • Poziom 7  
    Dziękuję za ostrzeżenia.

    Oczywiście doskonale zdaję sobie sprawę z tego, jak mocno może skaleczyć rozpędzone śmigło.
    Bezpieczeństwo to jest najważniejszy aspekt, mam nadzieję, że ślad żaden nie pozostał :)

    Śmigła będą zabudowane dookoła odpowiednim stelażem.

    Zdaję sobie sprawę ze złożoności problemu. Wiem, że mógłbym kupić gotowe, ale głównym moim celem nie jest sama chęć latania quadrocopterkiem, ale realizacja swojego hobby oraz nauka i zbieranie doświadczenia w zabawie z elektroniką.

    Po prostu chcę spróbować własnych sił, jak mi nie wyjdzie, to ostatecznie kupię gotowy ESC.

    Sterowanie z odbiornika będzie. Głównie zależy mi teraz na ocenie schematu sterowania mosfetami oraz BEMF.

    Pozdrawiam
  • Użytkownik usunął konto  
  • Poziom 7  
    Dziękuję za rady, tym już się będę martwił podczas zabawy w programowanie :)

    Tak, sekwencja startowa jest mi znana.

    Co do warstwy sprzętowej, rozumiem, że nikt żadnych zastrzeżeń nie ma?

    Pozdrawiam
  • Użytkownik usunął konto  
  • Poziom 7  
    Witam, schemat przerobiony trafnie, kolega wyzej nieco za bardzo trywializuje zagadnienie 30 A, silnik BLDC o takim pradzie nie jest juz zabawka, sa tutaj bardzo duze du/dt, wymaga to znacznego oddalenia czesci analogowej od cyfrowej na PCB.
    Nie biora koledzy rowniez pod uwage ze schemat macierzysty byl projektowany do silnikow o bardzo niskich pradach i numer z sterowaniem bramka dolnych kluczy prosto z mikrokontrolera przy takich tranzystorach (nawet logic level jak twoje) to bardzo zly pomysl, chocby z powodu tego wzoru na ladowanie bramki:

    t=C*U/I
    gdzie C to pojemnosc bramki w nF, U docelowe napiecie bramki a I to prad ladowania bramki.
    Przy zasilaniu z pinu mikrokontrolera 5V czas ten bedzie rzedu okolo 800 ns czyli dosyc sporo, mimo tego ze te klucze nie sa sterowane PWM musisz pamietac ze przy 30A ten silnik bedzie krecil sie bardzo dynamicznie ze wzgledu na olbrzymi moment i przy sterowaniu bezczujnikowym z uzyciem zwyklego komparatora do estymacji polozenia moze to byc zgubne.
    Z datasheet twojego mosfeta dolnego wynika ze napiecie 5V wystarczy mu do przewodzenia duzych pradow, jednak i tak na twoim miejscu zadbalbym o jego przeladowywanie do tych 10V, chocby ze wzgledu na zwiekszenie w ten sposob szybkosci ladowania bramki.

    Generalnie przy tak duzych pradach sterowanie przy uzyciu tego komparatora moze sie okazac katastrofa, glownie przez fakt ze moment dokonania komutacji zwieksza sie wraz ze zmieniajacym se SEM nieaktywnej cewki ktore porownojesz z SUM BEMF.

    Prosciej: przy malych pradach silnik wybaczy bledy ze wzgledu na bezwladnosc smigla ktora zamaskuje wszystkie niedoskonalosci, jednak przy 30 A wyjda wszystkie najdrobniejsze niedociagniecia.
    Radze sie zapoznac z tym http://cache.nxp.com/files/32bit/doc/ref_manual/DRM144.pdf
    szczegolnie strona 8 i dalej
    i pokombinowac z calkowaniem narastajacego/opadajacego napiecia po przecieciu z zerem.

    Swoja droga koniecznosc obecnosci kondensatorow C12 C13 i C14 jest watpliwa, nie moglem znalezc nigdzie w profesjonalnych projektach takiego rozwiazania, w literaturze zreszta tez. C15,16,17 rowniez bym zakwestionowal ich rozmiar gdyz wprowadzaja spore opoznienie do tego newralgicznej czesci ukladu.

    Akurat sam koncze budowe drona jako moja prace inzynierska i jestem wlasnie na etapie wykanczania projektu dla sterownikow BLDC

    Tak na marginesie, robienie takich sterownikow we wlasnym zakresie od podstaw to swietny trening oraz oszczednosc gdyz sterownik o takim zakresie pradowym jak u kolegi kosztuje w okolicach 80 zl wzwyz
  • Poziom 7  
    Witam po małej przerwie w tym temacie.

    Udało mi się skonstruować kilka tych sterowników i chciałbym się podzielić wnioskami. Dla porównania nabyłem również oryginalny sterownik ESC SimonK 30A.

    Testowałem następujące obwody pomiarowe Back-EMF:

    Sterownik BLDC 30A ESC - schemat

    Silnik EMAX XA2212 820KV sterowany PWM o częstotliwości 31.25Khz. Program na mikrokontroler bazujący na obszernych artykułach dostępnych na konkurencyjnym blogu (ze słowem "mikrokontrolery" w nazwie)

    Oryginalny ESC: Bez obciążenia max. pobór prądu 0.53A. Minimalne obroty silnika 2700-3000obr/min (od tych startuje), Maksymalne obroty około 9200obr/min (820KV * 12V = 9840 czyli by się zgadzało). Bardzo płynna regulacja obrotów, brak jakichkolwiek trzasków.

    Obwód 1)
    Obwód z wcześniejszego schematu. Dosyć dobrze się sprawuje. Silnik bez obciążenia z maksymalnym wypełnieniem PWM pobiera 0,53A(czyli tak jak oryginał). Przy PWM < 130-150 słychać trzaski, mimo że silnik kręci się dosyć dobrze. Układ pomiarowy nadal nie jest idealny, gdyż przy niskich prędkościach komutacja nie następuje w optymalnych momentach. (Zakładam, że stąd te trzaski)
    Prędkość 2700-3000obr/min (minimalna dla oryginalnego ESC) osiąga przy wypełnieniu PWM około 15-20. Słychać trzaski. Powyżej 150 PWM jest OK. Silnik osiąga swoją maksymalną prędkość już przy PWM = 230. od 230-255 nie widać zmian w prędkości silnika.

    Obwód 2)
    Dosyć często się z nim spotykam w Internecie. Uważam jednak, że jest on błędny. Różni się tylko tym od układu 1, że układ rezystorów po lewej stronie i na dole (zwierających do masy) jest odwrócony. Rezystory te pełnią rolę dzielnika napięcia. Dzięki temu, przy wysterowaniu np. fazy U za pomocą 12V obniżają one napięcie by nie przekraczało bezpiecznego 5V na linii BEMF_U podpiętej bezpośrednio do mikokontrolera. W tym układzie jednak rezystory te są odwrócone rolami, przez to na linii BEMF_U przy wysterowaniu U na 12V pojawi się napięcie wyższe niż 5V i uszkodzi mikrokontroler. Tego układu nie testowałem, ale nie mogę zrozumieć dlaczego bardzo często się z nim spotykam.

    Obwód 3)
    Jest to najprawdopodobniej obwód pomiarowy zastosowany w moim oryginalnym ESC SimonK 30A. Doszedłem do niego analizując ścieżki na PCB, mierząc elementy miernikiem i tym podobne rzeczy. Działa dosyć dobrze, ale przy niskich prędkościach (PWM < 60) gubi bardzo synchronizację i nierównomiernie pracuje.

    Obwód 4)
    Działa dokładnie tak samo jak obwód 1. Może ciutkę lepiej.

    Obwód 5)
    Mniej trzasków niż w obwodach 1 i 4, lecz nadal one występują. Bez obciążenia przy max. prędkości pobiera aż do 5A czyli jednak jest w nim coś nie tak.


    Na chwilę obecną myślę, że najlepiej działa obwód numer 4 jednak nie jest to ideał. Do pracy zbliżonej do oryginalnego ESC jeszcze mu dużo brakuje. Byłbym bardzo zadowolony, jeżeli udałoby się pozbyć trzasków już od PWM = 15-20 (prędkość silnika wtedy to 3000obr/min - tak jak minimalna prędkość oryginalnego ESC, więc jest to do zrobienia).

    Niestety nie posiadam w domu oscyloskopu. Jeżeli ktoś ma jakieś rady co można jeszcze zmienić, by polepszyć pracę sterownika to chętnie wysłucham.

    Pozdrawiam i szczęścia w Nowym Roku :)
  • Poziom 7  
    Dzień dobry ponownie :)

    Od razu przepraszam, że post pod postem, ale chciałbym zostać zauważony. Mam nadzieję, że nie zostanę przez to ukarany. Edycji postów mało kto widzi, szczególnie jak temat już leży gdzieś tam głęboko :)

    Zamieszczam trzy filmy prezentujące pracę sterownika i omawiane wyżej zgrzyty.

    film 1)

    https://www.youtube.com/watch?v=FIl3eyC_I_o

    Film ten przedstawia pracę silnika na układzie pomiarowym Back-EMF numer 4. Jak widzimy pobór prądu bez obciążenia nie przekracza 0.6A, co zgadza się z oryginalnym sterownikiem. Układ w pracy zachowuje się bardzo podobnie jak numer 1. Dobrze słychać zgrzyty, których chciałbym się pozbyć.

    film 2)

    https://www.youtube.com/watch?v=1z-_QXk1hkA

    Tutaj już widzimy pracę silnika na układzie numer 5. Mniej trzeszczy, ale trzaski mimo to występują. Dobrze są słyszalne w 01:08.
    Układ ten pobiera jednak bardzo dużo prądu bez obciążenia.

    film 3)

    https://www.youtube.com/watch?v=5G_jadybMGs

    Tutaj widzimy pracę na układzie numer 3. Jest to układ, który podpatrzyłem z oryginalnego sterownika BLDC. Brak w nim kondensatorów filtrujących. Jak widzimy, powyżej pewnej prędkości (PWM>60) działa cudownie (może minimalnie gorzej niż oryginał). Przy prędkościach mniejszych komutacja się psuje, gdyż sygnał back-emf jest pewnie za niski. Procedura startu silnika wymaga poprawy. Przypomnę też, to co wcześniej wspomniałem. Oryginalny ESC startuje od około 3000obr/min co odpowiada u mnie PWM ustawionemu na 15-20. Taką wartość PWM chciałbym uznać za minimalną, pozbywając się przy tym trzasków przy PWM w przedziale od 15 do 60. Musi być to możliwe, gdyż w tym przedziale silnik osiąga prędkość większą niż 3000obr/min a oryginalny ESC bardzo dobrze sobie z tym już radzi wyłapując odpowiednie momenty komutacji. Zależy mi na jak najlepszym przybliżeniu pracy z oryginalnego sterownika.

    Jeżeli ktoś ma pomysł jak można polepszyć pracę sterownika to byłbym wdzięczny.
    We wszystkich układach program sterujący jest identyczny.

    Serdecznie pozdrawiam :)