- Nepieciešamie materiāli
- Izpratne par BLDC Motors
- Kāpēc bezpilota lidaparāti un citi kopteri izmanto BLDC Motors?
- Kāpēc mums nepieciešama ESK un kāda ir tā funkcija?
- Daži kopīgi termini ar BLDC un ESC:
- Arduino BLDC motora vadības ķēdes shēma
- Programma BLDC ātruma kontrolei, izmantojot Arduino
- Arduino BLDC motora vadība
Veidot lietas un panākt, lai tās darbotos, kā mēs vēlamies, vienmēr ir bijis ļoti jautri. Lai gan par to vienojas, celtniecības materiāli, kas varētu lidot, izaicinoši izraisītu mazliet lielāku satraukumu starp hobijiem un aparatūras meistariem. Jā! Es runāju par planieriem, helikopteriem, lidmašīnām un galvenokārt daudzkopteriem. Šodien tiešsaistē pieejamā kopienas atbalsta dēļ ir kļuvis ļoti viegli izveidot tādu patstāvīgi. Viena kopīga lieta ar visām lidojošajām lietām ir tā, ka viņi izmanto BLDC motoru, kas tad ir šis BLDC motors? Kāpēc mums tas ir vajadzīgs, lai lidotu ar lietām? Kas tajā ir tik īpašs? Kā nopirkt pareizo motoru un savienot to ar savu kontrolieri? Kas ir ESC un kāpēc mēs to izmantojam? Ja jums ir šādi jautājumi, šī apmācība ir jūsu vienas pieturas risinājums.
Tātad šajā apmācībā mēs ar Arduino kontrolēsim motoru bez sukām. Šeit A2212 / 13T BLDC sensora sensora motors tiek izmantots ar 20A elektronisko ātruma regulatoru (ESC). Šo motoru parasti izmanto dronu izgatavošanai.
Nepieciešamie materiāli
- A2212 / 13T BLDC motors
- ESC (20A)
- Barošanas avots (12V 20A)
- Arduino
- Potenciometrs
Izpratne par BLDC Motors
BLDC motors nozīmē Brush Less DC motoru, to vienmērīgi izmanto dēļ griestu ventilatoriem un elektriskajiem transportlīdzekļiem. BLDC motoru izmantošana elektriskajos transportlīdzekļos iepriekš ir detalizēti paskaidrota. Atšķirībā no citiem motoriem, BLDC motoriem no tiem iziet trīs vadi, un katrs vads veido savu fāzi, tādējādi mums dodot trīsfāžu motoru. Pagaidi, ko!!??
Jā, kaut arī BLDC motori tiek uzskatīti par līdzstrāvas motoriem, tie darbojas ar impulsu viļņu palīdzību. Elektroniskā ātruma regulators (ESC) pārveido līdzstrāvas spriegumu no akumulatora, lai impulsiem un nodrošina to ar 3 vadu no motora. Jebkurā brīdī tiks darbināta tikai divas motora fāzes, tā ka strāva iekļūst vienā fāzē un atstāj caur citu. Šī procesa laikā spole motora iekšpusē tiek aktivizēta, un rotora magnēti līdzinās spriegumam. Pēc tam nākamos divus vadus baro ESC, šis process tiek turpināts, lai motors grieztos. Motora apgriezienu skaits ir atkarīgs no tā, cik ātri spole tiek aktivizēta, un motora virziens ir atkarīgs no tā, kādā secībā spoles tiek barotas. Mēs uzzināsim vairāk par ESC vēlāk šajā rakstā.
Pieejami daudzi BLDC motoru veidi, apskatīsim visbiežāk sastopamās klasifikācijas.
BLDC motors skrējienā un ārpus tā: Skrējienā BLDC motori darbojas tāpat kā jebkurš cits motors. Tas ir vārpsta motora iekšpusē, kamēr korpuss paliek fiksēts. Kamērārējā skrējēja BLDC motori ir tieši pretēji, motora ārējais apvalks griežas kopā ar vārpstu, kamēr spole iekšpusē paliek fiksēta. Elektrisko velosipēdu ārējie skrējēju motori ir ļoti priekšrocības, jo pats ārējais apvalks (tas, kas rotē) tiek izgatavots par riepu disku, un tādējādi tiek novērsts sakabes mehānisms. Arī ārējie skrējēju motori mēdz dot lielāku griezes momentu nekā skrējēju tipos, tāpēc tas kļūst par ideālu izvēli EV un Drones. Tas, ko mēs šeit izmantojam, arī ir ārpus skrējēja tips.
Piezīme: Ir vēl viens motora veids, ko sauc par bezkorpusa BLDC motoriem, kurus izmanto arī kabatas droniem, tiem ir atšķirīgs darbības princips, taču tagad mēs to izlaidīsim šīs apmācības labad.
Sensors un sensora nesaturošs BLDC motors: lai BLDC motors grieztos bez jebkāda rāviena, nepieciešama atgriezeniskā saite. Tas nozīmē, ka ESC ir jāzina rotora magnētu stāvoklis un pols, lai atbilstoši aktivizētu statoru. Šo informāciju var iegūt divos veidos; viens ir, ievietojot zāles sensoru motora iekšpusē. Zāles sensors noteiks magnētu un nosūtīs informāciju ESC, šāda veida motorus sauc par Sensord BLDC motoriem un izmanto elektriskajos transportlīdzekļos. Otrā metode ir izmantot aizmugurējo EML, ko ģenerē spoles, kad magnēti tos šķērso, tam nav nepieciešama papildu aparatūra vai vadi, kurus pati fāzes vads tiek izmantots kā atgriezeniskā saite, lai pārbaudītu EMF aizmuguri. Šo metodi izmanto mūsu motorā, un tā ir izplatīta bezpilota lidaparātiem un citiem lidojošiem projektiem.
Kāpēc bezpilota lidaparāti un citi kopteri izmanto BLDC Motors?
Ir daudz dažādu foršu bezpilota lidaparātu veidu, sākot no četrriteņu kopēja līdz helikopteriem un planieriem, visam ir viena kopīga aparatūra. Tie ir BLDC motori, bet kāpēc? Kāpēc viņi izmanto BLDC motoru, kas ir nedaudz dārgāks, salīdzinot ar DC Motors?
Tam ir diezgan daudz pamatotu iemeslu, viens no galvenajiem iemesliem ir tas, ka šo motoru sniegtais griezes moments ir ļoti augsts, kas ir ļoti svarīgi, lai ātri iegūtu / atbrīvotu vilci, lai paceltos vai nolaižos bezpilota lidaparātā. Arī šie motori ir pieejami kā skrējēji, kas atkal palielina motoru vilci. Vēl viens iemesls izvēlētajam BLDC motoram ir tā vienmērīga vibrāciju mazāka darbība, kas ir ļoti ideāli piemērota mūsu dronam, kas stabils gaisā.
Jaudas un svara attiecība ir BLDC motoru, ir ļoti augsts. Tas ir ļoti svarīgi, jo bezpilota lidaparātiem izmantotajiem motoriem jābūt ar lielu jaudu (lielu ātrumu un lielu griezes momentu), bet tiem jābūt arī ar mazāku svaru. Līdzstrāvas motors, kas varētu nodrošināt tādu pašu griezes momentu un ātrumu kā BLDC motors, būs divreiz smagāks nekā BLDC motors.
Kāpēc mums nepieciešama ESK un kāda ir tā funkcija?
Kā mēs zinām, katram BLDC motoram ir nepieciešams sava veida kontrolieris, lai pārveidotu līdzstrāvas spriegumu no akumulatora impulsos, lai darbinātu motora fāzes vadus. Šo kontrolieri sauc par ESC, kas apzīmē elektronisko ātruma kontrolieri. Regulatora galvenā atbildība ir BLDC motoru fāzes vadu strāvas padeve tādā secībā, lai motors grieztos. Tas tiek darīts, no katra stieples uztverot aizmugurējo EML un aktivizējot spoli tieši tad, kad magnēts šķērso spoli. Tāpēc ESC ir daudz aparatūras spožuma, kas neietilpst šīs apmācības darbības jomā. Bet, pieminot dažus, tam ir ātruma regulators un akumulatora atdalītāja ķēde.
PWM balstīta ātruma kontrole: ESC var kontrolēt BLDC motora ātrumu, nolasot PWM signālu, kas norādīts uz oranžas stieples. Tas darbojas ļoti līdzīgi servomotoriem, sniegtajam PWM signālam jābūt 20ms periodam, un darba ciklu var mainīt, lai mainītu BLDC motora ātrumu. Tā kā loģika attiecas arī uz servomotoriem, lai kontrolētu pozīciju, mēs varam izmantot to pašu servo bibliotēku mūsu Arduino programmā. Uzziniet šeit Servo ar Arduino lietošanu.
Bateriju atdalītāja ķēde (BEC): gandrīz visām ESC ir pievienota akumulatora atdalītāja ķēde. Kā norāda nosaukums, šī ķēde novērš atsevišķa akumulatora nepieciešamību mikrokontrollerim, šajā gadījumā mums nav nepieciešams atsevišķs barošanas avots, lai darbinātu mūsu Arduino; ESC pati nodrošinās regulētu + 5V, ko var izmantot mūsu Arduino barošanai. Ir daudz veidu ķēdes, kas regulē šo spriegumu, tas parasti ir lineārs regulējums lētajām ESC, bet jūs varat atrast arī tos ar komutācijas ķēdēm.
Programmaparatūra: katram ESC ir programmaparatūras programma, kuru tajā ir ierakstījuši ražotāji. Šī programmaparatūra lielā mērā nosaka jūsu ESC reakciju; dažas populārās programmaparatūras ir Traditional, Simon-K un BL-Heli. Šī programmaparatūra ir arī lietotāja programmējama, taču šajā apmācībā mēs to daudz neiekļausim.
Daži kopīgi termini ar BLDC un ESC:
Ja esat tikko sācis strādāt ar BLDC motoriem, iespējams, ka esat saskāries ar tādiem noteikumiem kā Bremzēšana, Mīkstā palaišana, Motora virziens, Zemspriegums, Reakcijas laiks un Iepriekšējs. Apskatīsim, ko nozīmē šie termini.
Bremzēšana: bremzēšana ir BLDC motora spēja pārtraukt griešanos, tiklīdz droseļvārsts tiek noņemts. Šī spēja ir ļoti svarīga daudzkopteriem, jo viņiem biežāk jāmaina apgriezieni minūtē, lai manevrētu gaisā.
Mīkstais sākums: Mīkstais sākums ir svarīga iezīme, kas jāņem vērā, ja jūsu BLDC motors ir saistīts ar pārnesumu. Kad motoram ir iespējota mīkstā iedarbināšana, tas pēkšņi nesāks griezties ļoti ātri, tas vienmēr pakāpeniski palielinās ātrumu neatkarīgi no tā, cik ātri tika iedarbināts droseļvārsts. Tas mums palīdzēs samazināt ar motoriem (ja tādi ir) piestiprinātu pārnesumu nodilumu.
Motora virziens: BLDC motoros motora virziens darbības laikā parasti netiek mainīts. Bet, saliekot, lietotājam, iespējams, būs jāmaina motora griešanās virziens. Vieglākais veids, kā mainīt motora virzienu, vienkārši mainot jebkurus divus motora vadus.
Zema sprieguma apturēšana: pēc kalibrēšanas mums vienmēr vajadzēs, lai mūsu BLDC motori darbotos ar tādu pašu ātrumu noteiktai droseļvārsta vērtībai. Bet to ir grūti panākt, jo motori mēdz samazināt ātrumu par tādu pašu droseļvārsta vērtību, kā samazinās akumulatora spriegums. Lai to izvairītos, mēs parasti ieprogrammējam ESC pārtraukt darbību, kad akumulatora spriegums ir sasniedzis zem sliekšņa vērtību, šo funkciju sauc par zema sprieguma apturēšanu un tā ir noderīga bezpilota lidaparātos.
Reakcijas laiks: motora spēju ātri mainīt ātrumu, pamatojoties uz droseļvārsta izmaiņām, sauc par reakcijas laiku. Jo mazāks reakcijas laiks, jo labāka būs kontrole.
Advance: Advance ir problēma vai drīzāk kā kļūda ar BLDC motoriem. Visiem BLDC motoriem ir neliels progress. Tas ir tad, kad statora spoles tiek iedarbinātas, un rotors tiek pievilkts pret to pastāvīgā magnēta dēļ. Pēc pievilināšanas rotors mēdz mazliet vairāk virzīties uz priekšu tajā pašā virzienā, pirms spole atvienojas un pēc tam nākamā spole aktivizējas. Šo kustību sauc par “Advance”, un tā radīs tādas problēmas kā nervozēšana, sakaršana, trokšņošana utt. Tāpēc tas ir kaut kas, no kā labai ESC vajadzētu izvairīties.
Labi, pietiek ar teoriju, ļaujiet mums sākt darbu ar aparatūru, savienojot motoru ar Arduino.
Arduino BLDC motora vadības ķēdes shēma
Zemāk ir shēma, lai kontrolētu bezkontakta motoru ar Arduino:
Savienojums BLDC motora saskarnei ar Arduino ir diezgan taisns uz priekšu. ESC ir nepieciešams vismaz 12 V un 5 A strāvas avots. Šajā apmācībā es izmantoju savu RPS kā enerģijas avotu, bet jūs varat arī izmantot Li-Po akumulatoru, lai darbinātu ESC. ESC trīs fāžu vadiem jābūt savienotiem ar motoru trīs fāžu vadiem, nav nekāda rīkojuma, lai savienotu šos vadus, jūs varat tos savienot jebkurā secībā.
Brīdinājums: Dažos ESC nebūs savienotāju, tādā gadījumā pārliecinieties, vai savienojums ir stabils, un aizsargājiet atklātos vadus, izmantojot izolācijas lenti. Tā kā caur fāzēm būs liela strāva, jebkura īssavienojums novestu pie pastāvīgiem ESC un motora bojājumiem.
BEC (akumulators šķirotājs ķēde), kas pašas ESP būs regulēt + 5V, ko var izmantot, lai varas up Arduino padome. Visbeidzot, lai iestatītu BLDC motora ātrumu, mēs izmantojam arī potenciometru, kas savienots ar Arduino A0 tapu
Programma BLDC ātruma kontrolei, izmantojot Arduino
Mums ir jāizveido PWM signāls ar mainīgu darba ciklu no 0% līdz 100% ar frekvenci 50Hz. Darba cikls jākontrolē, izmantojot potenciometru, lai mēs varētu kontrolēt motora ātrumu. Kods, lai to izdarītu, ir līdzīgs servomotoru vadībai, jo arī tiem nepieciešams PWM signāls ar 50Hz frekvenci; tāpēc mēs izmantojam to pašu servo bibliotēku no Arduino. Pilnīga kodu var atrast pie šīs lapas apakšā vēl tālāk es izskaidrot kodu nelieliem fragmentiem. Un, ja esat jauns Arduino vai PWM lietotājs, vispirms izmantojiet PWM ar Arduino un kontrolējiet servo, izmantojot Arduino.
PWM signālu var ģenerēt tikai uz tapām, kuras ar aparatūru atbalsta PWM, šīs tapas parasti tiek pieminētas ar simbolu ~. Arduino UNO tapas 9 var ģenerēt PWM signālu, tāpēc mēs savienojam ESC signāla tapu (oranžu vadu) ar tapu 9, kā arī pieminējam to pašu krodziņa kodu, izmantojot šādu rindu
ESC. Piestiprināt (9);
Mums ir jāveido PWM signāls ar dažādu darba ciklu no 0% līdz 100%. 0% darba ciklam POT rādīs 0V (0) un 100% darba ciklam POT 5V (1023). Šeit katls ir savienots ar tapu A0, tāpēc mums ir jālasa analogais spriegums no POT, izmantojot analogās lasīšanas funkciju, kā parādīts zemāk
int droseļvārsts = analogRead (A0);
Tad mums ir jāpārvērš vērtība no 0 līdz 1023 uz 0 līdz 180, jo vērtība 0 radīs 0% PWM un vērtība 180 radīs 100% darba ciklu. Jebkurām vērtībām virs 180 nebūs jēgas. Tātad mēs kartējam vērtību līdz 0-180, izmantojot kartes funkciju, kā parādīts zemāk.
droseļvārsts = karte (droseļvārsts, 0, 1023, 0, 180);
Visbeidzot, mums šī vērtība ir jānosūta servo funkcijai, lai tā varētu ģenerēt PWM signālu uz šīs tapas. Tā kā mēs esam nosaukuši servo objektu kā ESC, kods turpmāk izskatīsies šādi, kur mainīgais droseļvārsts satur vērtību no 0 līdz 180, lai kontrolētu PWM signāla darba ciklu
ESC.write (droseļvārsts);
Arduino BLDC motora vadība
Veiciet savienojumus saskaņā ar shēmu un augšupielādējiet kodu Arduino un ieslēdziet ESC. Pārliecinieties, ka esat uzmontējis BLDC motoru, jo, rotējot, motors leks visapkārt. Kad iestatīšana ir ieslēgta, jūsu ESC atskaņos apsveikuma signālu un turpinās pīkstēt, līdz droseļvārsta signāls būs sliekšņa robežās, vienkārši pakāpeniski palieliniet POT no 0V un pīkstošs signāls apstāsies, tas nozīmē, ka tagad mēs nodrošinām PWM signālu virs zemākās sliekšņa vērtības un, palielinoties tālāk, jūsu motors sāks lēnām griezties. Jo lielāku spriegumu jūs nodrošināsiet, jo lielāks būs motora ātrums, visbeidzot, kad spriegums sasniegs augšējo sliekšņa robežu, motors apstāsies. Pēc tam jūs varat atkārtot procesu.
Pilnīgu šī Arduino BLDC kontroliera darbību var atrast arī zemāk esošajā video saitē. Ja esat saskāries ar kādu problēmu, lai tas darbotos, izmantojiet komentāru sadaļu vai forumus, lai iegūtu tehniskāku palīdzību.