Napędzasz silniki prądu stałego za pomocą tranzystorów MOSFET i mikrokontrolera?

13

Zajmuję się opracowywaniem quadkoptera nano przy użyciu mikrokontrolera Atmega328, zasilanego napięciem 3,3 V i bardzo małych szczotkowanych silników prądu stałego. Średni prąd wykorzystywany przez te silniki wynosi około 800 mA przy 3,7 V.

Początkowo do ich napędzania użyłem sterownika silnika L293D, ale ten komponent był dość nieefektywny. Prąd zmierzony, gdy silniki pracowały z maksymalną mocą, wynosił około 500 mA, a zatem siła ciągu była znacznie niższa niż powinna.

Teraz, aby rozwiązać ten problem, zamieniłbym ten sterownik silnika na 4 tranzystory MOSFET na poziomie logicznym. Po długich poszukiwaniach znajduję to (2SK4033).

Czy wiesz, czy to powinno działać? Czy muszę go używać w połączeniu z diodą? Jeśli odpowiedź brzmi „tak”, a co z tym (MBR360RLG)?

Wybrałem te elementy również dlatego, że mogę je kupić w tym samym sklepie internetowym.

supergiox
źródło
2
Andy odpowiedział na część MOSFET-u twojego pytania, ale nikt nie wspomniał o bardziej fundamentalnym pytaniu: jak zamierzasz zastąpić L293D 4 N MOSFETAMI? Umieszczenie N MOSFET na stronie wyższej może spowodować problemy z wydajnością. Rysunek schematu może pomóc w wyjaśnieniu Twojego pomysłu.
Laszlo Valko
Co masz na myśli przez „high-side”? W tej chwili jedynym schematem, który mam, jest ten z L293D. Jeśli to może pomóc, mogę to opublikować. Mój pomysł jest taki, że każdy silnik jest napędzany przez mosfet (4 ogólnie), a jeśli to konieczne, także diodę. Co może być bardziej wydajnym rozwiązaniem?
supergiox
Każde wyjście L293D zawiera tranzystor „high-side” (między Vcc a wyjściem) i tranzystor „low-side” (między GND a wyjściem). Jeśli zastąpisz tranzystor „high-side” na N MOSFET, potrzebujesz zasilacza, który może zapewnić Vgs (co najmniej 2..3..4V) powyżej napięcia wyjściowego. Lub maks. napięcie wyjściowe będzie Vcc - Vgs ...
Laszlo Valko
Vgs musi wynosić 3,3 V, a moc wyjściowa (Vds) musi wynosić 3,7 V (to samo napięcie akumulatora, które jest unikalne). Więc jeśli występuje ten problem, jak mogę to zrobić? Czy możesz zasugerować inne rozwiązanie?
supergiox
2
Masz następujące opcje: a) użyj P MOSFET dla wysokiej strony; b) użyć oddzielnego podwajacza napięcia lub obwodu przetwornicy DC-DC, aby zapewnić 2 * Vcc do sterowania wysokostronnymi bramkami MOSFET; c) użyć obwodu ładowania początkowego, aby zapewnić odpowiednie napięcie Vout + Vcc do sterowania wysokostronnymi bramkami MOSFET. Każda z nich ma swoje wady i / lub ograniczenia.
Laszlo Valko

Odpowiedzi:

17

MOSFET-y powinny bardzo dobrze działać w tej aplikacji. Oto kilka rzeczy do rozważenia:

1:

Korzystając z FET do sterowania ładunkiem, możesz wybrać konfigurację strony wysokiej lub niskiej. Strona wysoka umieszcza FET między szyną zasilającą a ładunkiem, a druga strona ładunku jest podłączona do ziemi. W konfiguracji niskiego poziomu jeden przewód obciążenia jest podłączony do szyny zasilającej, a FET jest umieszczony między ładunkiem a ziemią:

HighVsLow

Najprostszym sposobem na sterowanie silnikiem (lub innym obciążeniem) jest użycie N-kanałowego MOSFET-a w konfiguracji dolnej. N-FET zaczyna przewodzić, gdy jego napięcie bramki jest wyższe niż jego źródło. Ponieważ źródło jest podłączone do ziemi, bramę można napędzać normalną logiką włączania / wyłączania. Istnieje próg, przez który napięcie bramki musi przekroczyć („Vth”), zanim FET przewodzi. Niektóre tranzystory polowe mają V w dziesiątkach woltów. Chcesz N-FET „na poziomie logicznym” z progiem znacznie niższym niż Vcc.

Istnieją dwie wady konfiguracji niskich częstotliwości FET:

  • Uzwojenie silnika jest podłączone bezpośrednio do szyny zasilającej. Gdy FET jest wyłączony, całe uzwojenie jest „gorące”. Zmieniasz uziemienie, a nie połączenie zasilania.

  • Silnik nie będzie miał prawdziwego odniesienia masy. Jego najniższy potencjał będzie wyższy niż masa przez napięcie przewodzenia FET.

Żadne z nich nie powinno mieć znaczenia w twoim projekcie. Mogą być jednak problematyczne, jeśli się ich nie spodziewasz! Zwłaszcza z obwodami o większej mocy :)

Aby rozwiązać te problemy, możesz użyć P-FET w konfiguracji high-side. Obwód napędowy staje się jednak nieco bardziej złożony. Przełącznik P-FET zwykle ma bramę podciągniętą do szyny zasilającej. Ta szyna zasilania jest wyższa niż Vcc uC, więc nie można podłączyć styków we / wy uC bezpośrednio do bramki. Częstym rozwiązaniem jest użycie mniejszego N-FET od strony dolnej, aby pociągnąć w dół bramę P-FET od strony wysokiego:

DualFet

R1 i R3 istnieją, aby utrzymać FET wyłączone do momentu uruchomienia Q2. Będziesz potrzebował R3 nawet w konfiguracji niskiego poziomu.

W twoim przypadku myślę, że prosty niski N-FET (z R3) będzie ci lepiej służył.


2:

Zwróć uwagę na R2 na ostatnim schemacie. Bramka MOSFET działa jak kondensator, który musi się naładować, zanim zacznie płynąć prąd drenu. Podczas pierwszego zasilania może wystąpić znaczny prąd rozruchowy, dlatego należy ograniczyć ten prąd, aby zapobiec uszkodzeniu sterownika wyjściowego sterownika uC. Czapka będzie przez chwilę wyglądać jak krótka, więc nie trzeba mieć dużego marginesu błędu. Twój konkretny Atmel może na przykład pobierać 40 mA. 3,3 V / 35 mA => 94,3 Ohm Rezystor 100 Ω będzie działał świetnie.

Jednak ten opornik spowolni czasy włączania i wyłączania FET, co nałoży górny limit na częstotliwość przełączania. Wydłuża także czas, w którym FET znajduje się w liniowym obszarze działania, co marnuje energię. Jeśli zmieniasz wysoką częstotliwość, może to stanowić problem. Jednym ze wskaźników jest to, że FET staje się zbyt gorący!

Rozwiązaniem tego problemu jest użycie sterownika FET. Są to skutecznie bufory, które mogą wytwarzać więcej prądu, a zatem mogą szybciej ładować bramę bez potrzeby stosowania rezystora ograniczającego. Ponadto większość sterowników FET może korzystać z szyny zasilającej wyższej niż typowy Vcc. To wyższe napięcie bramki zmniejsza rezystancję FET, oszczędzając dodatkową moc. W twoim przypadku możesz zasilać sterownik FET 3,7 V i sterować nim za pomocą 3,3 V.

FetDriver


3:

Wreszcie, będziesz chciał użyć diody Schottky'ego do ochrony przed skokami napięcia spowodowanymi przez silnik. Zrób to za każdym razem, gdy przełączasz obciążenie indukcyjne:

LowSideWithDiode

Uzwojenie silnika jest dużym cewką indukcyjną, więc jest odporne na wszelkie zmiany przepływu prądu. Wyobraź sobie, że prąd płynie przez uzwojenie, a następnie wyłączasz FET. Indukcyjność spowoduje, że prąd będzie nadal płynął z silnika, gdy pola elektryczne zanikają. Ale nie ma miejsca dla tego prądu! Więc przebija FET lub robi coś równie destrukcyjnego.

Schottky, umieszczony równolegle do obciążenia, zapewnia bezpieczną ścieżkę przepływu prądu. Skok napięcia osiąga maksimum przy napięciu przewodzącym diody, które wynosi tylko 0,6 V przy 1 A dla podanego.

Poprzedni obraz, konfiguracja od strony dolnej z diodą flyback, jest łatwa, niedroga i dość skuteczna.


Jedynym innym problemem, jaki widzę podczas korzystania z rozwiązania MOSFET, jest to, że jest on z natury jednokierunkowy. Twój oryginalny L293D to sterownik z wieloma mostkami. Umożliwia to napędzanie silnika w obu kierunkach. Obrazowanie podłączenia silnika między 1 a 2 lata. L293D może wykonać 1Y = Vdd i 2Y = GND, a silnik obraca się w jednym kierunku. Lub może sprawić, że 1Y = GND i 2Y = Vdd, a silnik obróci się w drugą stronę. Bardzo przydatny.

Powodzenia i miłej zabawy!

bitsmack
źródło
Ładny! Czy potrzebuję rezystora między mikro przewodem a bramą? Czy 220 Ohm to dobra wartość? (3,3 V / 0,02 A = 170 Ohm ~ 220 Ohm)
supergiox
1
Dobre pytanie. W idealnym świecie brama w ogóle nie zatopi żadnego prądu. To jedna z zalet FET w porównaniu z BJT. Ale w prawdziwym świecie bramka działa jak mały kondensator, który musi się naładować, zanim zacznie płynąć prąd drenu. Chcesz, aby ładował się szybko, aby szybko włączyć FET. Po pierwszym włączeniu styku uC pojemność bramki pojawia się jako zwarcie. ATmega328 może pobierać 40mA na pin. Czapka przez chwilę będzie wyglądać jak krótka, więc nie zawracałbym sobie głowy zbyt dużym marginesem błędu. Powiedz, 3,3 V, 35 mA: ~ 100 Ohm. Połączę to później, dzisiaj!
bitsmack,
1
Aha, a jeśli przełączasz silnik na wysokie częstotliwości, rezystancja staje się problemem. Spowalnia ładowanie i rozładowywanie bramy, co spowalnia częstotliwość przełączania. Wydłuża także czas, w którym FET znajduje się w liniowym obszarze działania, co marnuje energię. Jeśli okaże się, że jest to problem, użyj „Sterownika FET” lub innego bufora, który jest przeznaczony do pobierania / odbierania znacznie większego prądu do / z bramki. Następnie możesz zminimalizować (lub wyeliminować) opór.
bitsmack,
Myślę, że częstotliwość przełączania to częstotliwość PWM, więc powinna ona wynosić około 500 Hz.
supergiox
1
Fajnie :) Jestem zazdrosna; Od dłuższego czasu chciałem zbudować quadter! Daj nam znać ...
bitsmack
12

Oto, na co mógłbym spojrzeć dla każdego MOSFETU. To jest z arkusza danych 2SK4033 przy okazji: -

wprowadź opis zdjęcia tutaj

Mówisz, że 800mA to średni prąd, ale czy może wzrosnąć do ponad 1A pod obciążeniem? W każdym razie, przy 1A i przy napięciu sterującym bramą 3,3 V, MOSFET spada o około 0,15 V na swoich zaciskach podczas zasilania obciążenia 1A. Czy możesz żyć z tą utratą mocy (150 mW), a co ważniejsze, gdy napięcie akumulatora spadnie poniżej 3 V, możesz żyć z utratą wydajności, gdy napięcie bramki spadnie nieuchronnie.

Tylko Ty możesz odpowiedzieć na to pytanie. Są lepsze MOSFETY niż ten, ale musisz obliczyć rzeczywiste prądy obciążenia dla silnika, którego oczekujesz.

EDYCJE

Oto proces, na który natknąłem się, który mógłby być całkiem przydatny zamiast MOSFET-ów. To DRV8850 od TI. Zawiera dwa mostki połówkowe, co oznacza, że ​​może niezależnie napędzać dwa z 4 silników bez potrzeby stosowania diod flyback (w efekcie górny FET działa jako prostownik synchroniczny, co oczywiście zmniejsza straty). Rezystancja włączenia dla każdego tranzystora polowego wynosi 0,045 oma i jest oszacowana na 5A (rozproszenie mocy wynosi około 1,1 wata), ale biorąc pod uwagę, że OP chce około 1A, staje się to bardzo trywialne. Zakres napięcia zasilania wynosi od 2 V do 5,5 V, więc ponownie jest to bardzo odpowiednie:

wprowadź opis zdjęcia tutaj

Andy aka
źródło
Wielkie dzięki. Tak, silniki mogą zwiększyć prąd do wartości nieco powyżej 1A, ale tylko przez krótki czas. Praktyczną zasadą, którą znam, jest wzięcie pod uwagę prądu, który jest dwukrotnością średniej (1,6A). Myślę, że utrata mocy 150 mW nie jest dużym problemem.
supergiox
A co z niższymi napięciami akumulatora, gdy napęd bramy jest gorszy, a strata staje się większa. Oczywiście gram w adwokata diabłów!
Andy aka
O napięciu akumulatora spada poniżej 3 V, nie wiem, czy rozumiem, co masz na myśli. W każdym razie używam regulatora napięcia (LE33CZ) do zasilania ATmega przy 3,3 V. Czy to nie znaczy, że napięcie wynosi „zawsze” 3,3 V? Jeszcze jedno pytanie. Co z diodą?
supergiox
1
Gdy napięcie akumulatora spadnie do 3,4 V, zacznie również spadać moc wyjściowa regulatora, co oznacza, że ​​napięcie napędowe do bramki zaczyna spadać, a fety stają się mniej wydajne. Zajmij się tym scenariuszem przed diodami. W porównaniu diody są trywialne.
Andy aka
1
Czy potrzebujesz jednego Fet do sterowania każdym silnikiem lub dwoma. Laszlo zakłada, że ​​potrzebujesz 2, ponieważ pierwotnie używałeś L293.
Andy alias
6

Ponieważ używany jest szczotkowany silnik prądu stałego, niekoniecznie potrzebujesz H-Bridge jako napędu. Tylko dwa przypadki naprawdę wymagają H-Bridge; trzeba zewnętrznie komutować silnik (na przykład bezszczotkowe silniki PM) lub odwrócić wirowanie. Żadne z nich nie wydają się mieć tutaj zastosowania. Użycie napędu jednokierunkowego lub napędu pojedynczego kwadrantu (SQD) znacznie uprości to, co próbujesz zrobić.

FET, o którym myślisz (2SK4033), nie pasuje idealnie do dostępnego napięcia napędowego (Andy już wyjaśnił dlaczego), a my zajmiemy się więcej szczegółów na temat wybierania FETs później.

Napęd szczotkowanych silników prądu stałego za pomocą napędu Single Quadrant (SQD)

Vth

wprowadź opis zdjęcia tutaj

VωRwindRgRpdVbVdrv

ImIdpkIdrmsIcr-ave

  • IdpkIm
  • Id-rms2Im2
  • Icr-aveIm

Podstawowe kryteria wyboru FET (rodzaj ABC wyboru FET):

  • VDS1.5VB-max

VDS

  • Vth-maxVDrv-min3

    Vth-maxRds

  • ΔTJA

    Wzrost ciepła jest bardzo ważny. Uwzględnia wszystkie straty ... straty przewodzenia, straty bramki i straty przełączania.

Wybór części próbki na podstawie 3 kryteriów:

VB-maxVDrv-minVDSVth-maxRDS

  • VDSVth-max

Rth

PTPcondPsw

gdzie

PcondRdsIm2

Psw12ImVbFPWM(τf+τr)

VgsVdsVgsVmpVds

wprowadź opis zdjęcia tutaj

QmpVmpVdrvRgVmpVdrv

QmpτVdrv2Rgτ2RgQmpVdrv2(100Ohms)(4nC)3.3V

ImRdsRds

PT0.9(33mOhm)(1.2A)2(3.3V)(1.2A)(242nSec)(20kHz)

Im

Luźne końce

  • Umieść obwód napędowy i przełączniki blisko silnika.

  • Chociaż mikro może bezpośrednio sterować FET, dobrym pomysłem jest sterownik do ochrony mikro (coś takiego jak NC7WZ16 ).

  • Ciss

  • Im

gsills
źródło