Domov / Správy / Správy z priemyslu / BLDC motor s Arduino: Sprievodca zapojením, kódom a ovládaním
Správy z priemyslu
Naša stopa pokrýva celý svet.
Zákazníkom poskytujeme kvalitné produkty a služby z celého sveta.

BLDC motor s Arduino: Sprievodca zapojením, kódom a ovládaním

Ako ESC umožňuje Arduinu ovládať BLDC motor

Arduino nemôže priamo poháňať tri fázy motora BLDC – nemá zabudovanú prúdovú kapacitu alebo komutačnú logiku. Táto úloha spadá do ESC (Electronic Speed Controller), ktorý je umiestnený medzi Arduino a motorom a premieňa jednoduchý PWM signál na časované trojfázové spínanie, ktoré v skutočnosti otáča rotor.

Z pohľadu Arduina vyzerá ESC presne ako štandardné RC servo. Očakáva impulz medzi približne 1 000 a 2 000 mikrosekundami, ktorý sa opakuje každých 20 milisekúnd, pričom šírka impulzu sa mapuje do polohy škrtiacej klapky. Preto to isté Servo knižnica používané pre hobby servá fungujú na ovládanie ESC - Arduino vôbec nehovorí s motorom, hovorí s integrovaným mikrokontrolérom ESC, ktorý sa stará o skutočnú komutáciu.

Zapojenie Arduina k BLDC motoru cez ESC

Tri silné vodiče motora sa pripájajú z motora BLDC priamo k trojfázovým výstupom ESC – poradie konektorov v tejto fáze nezáleží na smere, pretože výmena akýchkoľvek dvoch vodičov iba obráti rotáciu. Napájanie motora (zvyčajne LiPo batéria zodpovedajúca menovitému napätiu motora) sa pripája k vstupným vodičom ESC, nie k Arduinu.

Signálová strana je jednoduchšia: jeden PWM vodič z digitálneho kolíka Arduino na vstup signálu ESC, plus zdieľaná zem medzi Arduino a ESC. Väčšina ESC obsahuje na tomto signálovom konektore BEC (Battery Eliminator Circuit), ktorý dodáva regulovaných 5V späť do Arduina – čo znamená, že samostatné napájanie dosky zvyčajne nie je potrebné, pokiaľ je výstup BEC ESC dimenzovaný na odber prúdu Arduina.

Arduino kód pre základné ovládanie rýchlosti

Keď je zapojené vedenie, samotný kód je krátky. Knižnica servopohonov zaobchádza s ESC ako so servomotorom a mapuje rýchlosť na rovnaký rozsah 0-180, ktorý knižnica používa pre uhol:

  • Pripojte signálny kolík ESC pomocou ESC.attach(9, 1000, 2000) , explicitné nastavenie rozsahu šírky impulzu
  • Prečítajte si potenciometer na analógovom kolíku pre manuálne ovládanie rýchlosti
  • Namapujte analógové čítanie 0-1023 na rozsah 0-180, ktorý ESC očakáva
  • Napíšte túto namapovanú hodnotu pomocou ESC.write(rýchlosť) vnútri hlavnej slučky

Tento vzor funguje, pretože základný formát signálu je identický s hobby servami, ako je zdokumentované v Odkaz na knižnicu Arduino Servo , ktorá vysvetľuje časovanie impulzov a obmedzenia pinov, na ktoré sa knižnica spolieha.

Zapnutie a kalibrácia ESC

Väčšina ESC neroztočí motor ihneď po zapnutí – najskôr očakávajú sekvenciu zapnutia, ktorá sa zvyčajne spustí podržaním signálu plynu na minime na sekundu alebo dve po spustení. Preskočenie tohto kroku je najčastejším dôvodom, prečo sa zdá, že sa motor pri zapnutí nakrátko spustí a potom sa zastaví: ESC čaká na platný signál nízkej škrtiacej klapky, kým prijme príkazy.

Kalibrácia nastavuje chápanie minimálnej a maximálnej šírky impulzu ESC tak, aby zodpovedalo tomu, čo Arduino skutočne vysiela. Zapnite ESC so signálom škrtiacej klapky už na maximum, počkajte na potvrdzovacie pípnutie, potom znížte na minimum a počkajte znova – tým sa ESC naučí presné koncové body, ktoré vytvára váš kód, namiesto toho, aby ste sa spoliehali na továrenské nastavenia, ktoré nemusia zodpovedať mapovanému rozsahu vášho potenciometra.

Sensored vs. Sensorless BLDC: Prečo to mení vaše nastavenie Arduina

Všetko vyššie predpokladá bezsenzorový motor BLDC spárovaný s bežne dostupným ESC – najbežnejšie nastavenie pre nadšencov a dôvod, prečo ho väčšina návodov predvolí. ESC deteguje polohu rotora zo spätného EMF generovaného v nenapájanej fáze, čo funguje dobre, keď sa motor roztočí, ale znamená to, že motor potrebuje krátku štartovaciu rampu s otvorenou slučkou, kým sa ESC zablokuje na časovanie BEMF.

Senzorovaný BLDC motor pridáva tri senzory s Hallovým efektom, ktoré hlásia polohu rotora priamo, dokonca aj pri nulových otáčkach. To eliminuje nábehovú rampu a poskytuje plynulejšie nízkorýchlostné ovládanie, ale tiež to znamená, že ESC alebo ovládač musí mať vstupy Hallovho snímača – obyčajný ESC bez snímača pre ne nemá vôbec žiadnu kabeláž. Ak projekt vyžaduje presný krútiaci moment pri nízkych otáčkach alebo časté štarty a zastavovania, získanie snímača motora a Hallovho regulátora od začiatku zabráni neskoršiemu prepracovaniu nastavenia riadenia.

R5 Fast response Brushless DC Motor Controller

Od prototypu Arduino po riadenie motorov na úrovni výroby

ESC riadený PWM je tým správnym nástrojom na preukázanie konceptu – je lacný, dobre zdokumentovaný a nepotrebuje konfiguračný softvér. Má však aj skutočné limity: žiadna prúdová spätná väzba pre Arduino, minimálna ochranná logika a rozlíšenie ovládania viazané na 1000-2000 mikrosekundové impulzné okno, ktoré sa neškáluje dobre, keď sa stane požiadavkami riadenie krútiaceho momentu, regulácia rýchlosti v uzavretej slučke alebo hlásenie porúch.

Keď projekt prechádza cez prototypovanie smerom k produktu v teréne, obvyklým ďalším krokom je ovládač, ktorý komunikuje cez digitálnu zbernicu a nie cez jednu PWM linku. ladiace rozhranie UART-TTL používané na konfiguráciu sériových ovládačov motora hrá tu úlohu podobnú sériovému monitoru Arduino – umožňuje vám čítať parametre a ladiť správanie priamo, namiesto hádania iba zo šírky impulzov.

Pre tímy, ktoré prevyšujú hobby ESC, vstupný bod do ovládačov motora BLDC programovateľných cez CAN zbernicu APT ponúka druh konfigurovateľného obmedzenia prúdu a diagnostiky, ktoré základný ESC jednoducho neodhalí. Aplikáciám, ktoré vyžadujú prísnejšiu odozvu – robotické ramená, ovládané mechanizmy, čokoľvek s rýchlo sa meniacou záťažou – sa lepšie regulátor BLDC s rýchlou odozvou vytvorený pre aplikácie s uzavretou slučkou v reálnom čase skôr ako hobby ESC s otvorenou slučkou.

Keďže špecifikácie regulátora a motora musia byť v súlade s kompatibilitou napätia, prúdu a Hallovho snímača, stojí za to si to preštudovať návod na párovanie ovládača a motora na prispôsobenie elektroniky pohonu špecifikáciám motora predtým, ako sa zaviažete k hardvéru na produkčnú sériu. Tiež to stojí za pochopenie ako softvérové vrstvy pretvárajú moderné riadenie motora , pretože ladenie na úrovni firmvéru je stále viac tým, čo oddeľuje dobrý produkčný kontrolér od iba adekvátneho.



Máte záujem o spoluprácu alebo máte otázky?
  • Odoslať požiadavku {$config.cms_name}