Otthon / Hírek / Ipari hírek / BLDC motor Arduino-val: Bekötési, kód- és vezérlési útmutató
Ipari hírek
Lábnyomunk átíveli a világot.
Minőségi termékeket és szolgáltatásokat kínálunk ügyfeleinknek a világ minden tájáról.

BLDC motor Arduino-val: Bekötési, kód- és vezérlési útmutató

Hogyan vezérli az ESC az Arduino-t egy BLDC motort?

Egy Arduino nem tudja közvetlenül meghajtani a BLDC motor három fázisát – nincs beépített áramkapacitása vagy kommutációs logikája. Ez a feladat az ESC-re (Electronic Speed Controller) hárul, amely az Arduino és a motor között helyezkedik el, és egy egyszerű PWM jelet alakít át időzített háromfázisú kapcsolássá, amely ténylegesen megpörgeti a rotort.

Az Arduino szemszögéből az ESC pontosan úgy néz ki, mint egy szabványos RC szervó. Körülbelül 1000 és 2000 mikromásodperc közötti impulzusra számít, amely 20 ezredmásodpercenként ismétlődik, ahol az impulzusszélesség a fojtószelep helyzetéhez igazodik. Ezért ugyanaz Szervo könyvtár A hobbi szervókhoz használt ESC vezérléshez használható – az Arduino egyáltalán nem a motorhoz, hanem az ESC beépített mikrokontrolleréhez beszél, amely a tényleges kommutációt kezeli.

Arduino csatlakoztatása BLDC motorhoz ESC-n keresztül

A három nagy átmérőjű motorvezeték a BLDC motortól egyenesen az ESC három fáziskimenetéhez csatlakozik – a csatlakozók sorrendje ebben a szakaszban nem számít az irány szempontjából, mivel bármely két vezeték felcserélése csak megfordítja a forgást. A motor teljesítménye (általában a motor névleges feszültségéhez igazított LiPo akkumulátor) az ESC bemeneti vezetékeihez csatlakozik, nem az Arduinohoz.

A jeloldal egyszerűbb: egyetlen PWM vezeték az Arduino digitális tűjétől az ESC jelbemenetéhez, plusz egy megosztott földelés az Arduino és az ESC között. A legtöbb ESC tartalmaz egy BEC-et (Battery Eliminator Circuit) ezen a jelcsatlakozón, amely szabályozott 5 V-ot szolgáltat vissza az Arduino-hoz – ami azt jelenti, hogy általában nincs szükség külön tápegységre a kártyához, amíg az ESC BEC kimenete az Arduino áramfelvételére van méretezve.

Arduino kód az alapvető sebességszabályozáshoz

A bekötéssel maga a kód rövid. A Servo könyvtár az ESC-t szervomotorként kezeli, és a sebességet ugyanarra a 0-180 tartományra térképezi fel, amelyet a könyvtár a szögekhez használ:

  • Csatlakoztassa az ESC jel érintkezőjét a segítségével ESC.attach(9; 1000; 2000) , kifejezetten beállítja az impulzusszélesség-tartományt
  • Olvasson le egy potenciométert egy analóg tűn a kézi sebességszabályozáshoz
  • Leképezheti a 0-1023 analóg leolvasást az ESC által elvárt 0-180 tartományra
  • Írja be a leképezett értéket a -val ESC.write(sebesség) a főhurok belsejében

Ez a minta azért működik, mert az alapul szolgáló jelformátum megegyezik a hobbi szervóéval, amint azt a Arduino Servo könyvtár referencia , amely elmagyarázza az impulzusidőzítést és a pin-korlátozásokat, amelyekre a könyvtár támaszkodik.

Az ESC élesítése és kalibrálása

A legtöbb ESC nem pörgeti meg a motort azonnal a bekapcsolás után – először élesítési sorozatot várnak el, amelyet általában a fojtószelep jelének legalább egy-két másodpercig történő nyomva tartása vált ki. Ennek a lépésnek a kihagyása a leggyakoribb oka annak, hogy a motor bekapcsoláskor rövid időre beindul, majd leáll: az ESC érvényes alacsony fojtószelep jelre vár, mielőtt parancsokat fogadna.

A kalibráció beállítja, hogy az ESC megértse a minimális és maximális impulzusszélességet, hogy megfeleljen annak, amit az Arduino ténylegesen küld. Kapcsolja be az ESC-t úgy, hogy a fojtószelep már a maximumon van, várjon a megerősítő sípolásra, majd csökkenjen a minimumra, és várjon újra – ez megtanítja az ESC-nek a kód által előállított pontos végpontokat, ahelyett, hogy a gyári alapértékekre hagyatkozna, amelyek esetleg nem egyeznek a potenciométer leképezett tartományával.

Szenzoros vs érzékelő nélküli BLDC: Miért változtatja meg az Arduino beállításait?

A fentiek mindegyike egy érzékelő nélküli BLDC motort feltételez, amely egy készen kapható ESC-vel párosul – ez a legáltalánosabb hobbi-beállítás, és ez az oka annak, hogy a legtöbb oktatóanyag alapértelmezés szerint ezt használja. Az ESC érzékeli a forgórész helyzetét a tápfeszültség nélküli fázisban generált hátsó EMF-ből, ami jól működik, ha a motor forog, de azt jelenti, hogy a motornak rövid, nyitott hurkú indítási rámpára van szüksége, mielőtt az ESC a BEMF-időzítésre rögzülhet.

Az érzékelővel ellátott BLDC motor három Hall-effektus érzékelőt ad hozzá, amelyek közvetlenül jelzik a rotor helyzetét, még nulla fordulatszámon is. Ez kiküszöböli az indítási rámpát, és egyenletesebb, alacsony fordulatszámú vezérlést biztosít, de azt is jelenti, hogy az ESC-nek vagy a vezérlőnek Hall-érzékelő bemenetekkel kell rendelkeznie – a sima érzékelő nélküli ESC-nek egyáltalán nincs vezetéke. Ha egy projektnek precíz alacsony fordulatszámú nyomatékra vagy gyakori indításokra és leállításokra van szüksége, az érzékelővel ellátott motor és a Hall-kompatibilis vezérlő beszerzése a kezdetektől elkerüli a vezérlési beállítás későbbi átdolgozását.

R5 Fast response Brushless DC Motor Controller

Az Arduino prototípustól a gyártási fokozatú motorvezérlésig

A PWM-vezérelt ESC a megfelelő eszköz egy koncepció bizonyítására – olcsó, jól dokumentált, és nincs szüksége konfigurációs szoftverre. De vannak valódi korlátai is: nincs aktuális visszacsatolás az Arduino felé, minimális védelmi logika, és egy 1000-2000 mikroszekundumos impulzusablakhoz kötött vezérlési felbontás, amely nem skálázódik jól, ha a nyomatékszabályozás, a zárt hurkú fordulatszám-szabályozás vagy a hibajelentés követelménysé válik.

Amikor egy projekt túllép a prototípusgyártáson egy terepi termék felé, a szokásos következő lépés egy vezérlő, amely digitális buszon kommunikál, nem pedig egyetlen PWM vonalon. egy UART-TTL hibakereső interfész, amelyet az éles motorvezérlők konfigurálására használnak Az Arduino soros monitorhoz hasonló szerepet játszik itt – lehetővé teszi a paraméterek közvetlen kiolvasását és a viselkedés hangolását, nem pedig pusztán az impulzusszélesség alapján.

A hobbi ESC-t túlnőtt csapatok számára, belépési pont az APT CAN buszon programozható BLDC motorvezérlőibe olyan konfigurálható áramkorlátozást és diagnosztikát kínál, amelyet egy alap ESC egyszerűen nem tesz elérhetővé. A szigorúbb reakciót igénylő alkalmazások – robotkarok, működtetett mechanizmusok, bármi, ami gyorsan változó terhelésű – jobban megfelelnek egy gyors reagálású BLDC vezérlő, amely valós idejű zárt hurkú alkalmazásokhoz készült nem pedig egy nyílt hurkú hobbi ESC.

Mivel a vezérlő és a motor specifikációinak összhangban kell lenniük a feszültség, az áram és a Hall-érzékelővel való kompatibilitás szempontjából, érdemes áttekinteni vezérlő és motor párosítási útmutató a meghajtó elektronikának a motor specifikációihoz való igazításához mielőtt elkötelezi magát a hardver mellett egy gyártási futtatáshoz. Ezt is érdemes megérteni hogyan alakítják át a szoftverrétegek a modern motorvezérlést , mivel a firmware-szintű hangolás egyre inkább elválasztja a jó gyártásvezérlőt a pusztán megfelelőtől.



Érdekel az együttműködés vagy kérdése van?