Blog  /  28BYJ-48: 5 laidų, 5 V unipolinis žingsninis variklis

28BYJ-48: 5 laidų, 5 V unipolinis žingsninis variklis

Žingsniniai varikliai yra patogūs įrankiai įvairiuose įrenginiuose dėl jų padėties valdymo savybės. Ši savybė reiškia, kad bešepetėliniai varikliai gali padalyti visą savo sukimosi ciklą į lygias dalis arba žingsnius. Juose naudojamas krumpliaratinis ratas ir keli elektromagnetai, kad ratas būtų sukamas žingsnis po žingsnio. Vienas iš tokių variklių yra 28BYJ-48. Tai vienas pigiausių ir lengviausiai naudojamų žingsninių variklių, skirtų mokytis apie žingsninį sukimąsi. Išsamiai apžvelgsime šį variklį ir kaip jį valdyti naudojant ULN2003 tvarkyklę ir "Arduino" plokštes.

Turinys

Kas yra 28BYJ-48 žingsninis variklis?

28BYJ-48 žingsninio variklio techninės specifikacijos

ULN2003 tvarkyklė

28BYJ-48 žingsninio variklio valdymas naudojant ULN2003 tvarkyklę ir "Arduino" plokštę

Kuo žingsniniai varikliai skiriasi nuo standartinių nuolatinės srovės variklių?

Kuo skiriasi žingsniniai varikliai nuo servo variklių?

Kada galėčiau rinktis žingsninį variklį, o ne kitus tipus

Žingsninių variklių taikymo sritys

Santrauka

Kas yra 28BYJ-48 žingsninis variklis?

28BYJ-48 yra 4 fazių, 5 laidų vienpolis žingsninis variklis. Jo užduotis - elektrinius signalus diskretiškai paversti mechaniniu sukimu. Variklis sukasi tiksliais, fiksuotais žingsneliais po 5,625° kampu, kai jam perduodamas elektrinis impulsas. Jo žingsnio kampas pusės žingsnio režimu yra 5,625°/64, t. y. vienam apsisukimui atlikti reikia 64 žingsnių.

360°/5.625° = 64

Viso žingsnio režimu šis skaičius sumažėja perpus - iki 32.  

Variklis turi keturias rites, tolygiai išdėstytas aplink rotorių, kurios sudaro statinį, nejudantį statorių. Kiekviena iš jų turi +5 V vardinę įtampą, todėl ją lengva valdyti naudojant bet kurį 5 V toleruojantį mikrovaldiklį, pavyzdžiui, "Arduino".  

28BYJ-48 žingsninio variklio techninės specifikacijos

5 V nuolatinės srovės vardinė įtampa

Keturios fazės

300 gf. cm traukos momentas

600VAC/1mA/1s izoliuotas maitinimas

5,625°/64 žingsnio kampas

Vienpolė penkių laidų ritė

ULN2003 tvarkyklės plokštė

28BYJ-48 varikliai vartoja didelę srovę, todėl jiems reikia tokios tvarkyklės, kaip ULN2003, kaip sąsajos tarp jų ir "Arduino". Ją sudaro septynių Darlingtono tranzistorių porų masyvas, kur antroji stiprina pirmosios išėjimą.  

Kiekvienas tranzistorius gali valdyti iki 500 mA ir 50 V apkrovą.  

Jei maitinate ką nors, kas vartoja daugiau nei 80 mA esant 5 V įtampai, naudokite tvarkyklės plokštę. Tačiau, jei valdote bet kokio dydžio žingsninį variklį, visada naudokite ULN2003 tvarkyklių plokštę. Kodėl? Žingsninis variklis gali sukelti elektrinį triukšmą maitinimo linijose, o šis triukšmas gali sugadinti "Arduino" mikrovaldiklį.  

28BYJ-48 žingsninio variklio valdymas naudojant ULN2003 tvarkyklę ir "Arduino

Jums reikia šių komponentų:

28BYJ-48 žingsninio variklio

ULN2003 tvarkyklės plokštės

Arduino UNO R3

Jungiamųjų laidų nuo vyriškos iki moteriškos lyties

5 V maitinimo šaltinio (adapterio)

USB laidas

Arduino IDE

Laidai

Atlikite šias jungtis tarp "Arduino" ir tvarkyklės.

28BYJ-48

"Arduino UNO", ULN2003, žingsninio variklio schema

Taip pat prijunkite 5 V adapterį prie tvarkyklės plokštės ir mikrovaldiklio, kaip parodyta pirmiau pateiktoje grandinės schemoje.  

Kodas

Sukonfigūravę atidarykite "Arduino IDE" ir naudokite "Arduino" žingsninio variklio biblioteką žingsnių sekai tvarkyti. Valdymo biblioteka pateikiama kartu su IDE ir leidžia lengvai valdyti unipolinius ir bipolinius žingsninius variklius.

Parašykite toliau nurodytą kodą ir įkelkite jį į "Arduino" plokštę, kad variklis lėtai suktųsi pagal laikrodžio rodyklę, paskui prieš laikrodžio rodyklę.  

Paaiškinimas

Pirmoje eilutėje įtraukta "Arduino" žingsninių valdiklių biblioteka. Po jos apibrėžiame konstantą, nurodančią žingsnių skaičių, per kurį variklis atliks vieną apsisukimą.

Tada sukurkite žingsninio valdiklio klasės objektą, atitinkantį žingsnių seką IN1, IN3, IN2, IN4 (kaiščių seka 8, 10, 9, 11). Galite sukurti kelis objektus, kad vienu metu valdytumėte kelis variklius, tačiau nepamirškite laikytis tinkamos žingsnių sekos.

Bibliotekoje keturi įvesties / išvesties kaiščiai nustatomi kaip vidiniai išėjimai, todėl į sąrankos funkciją nereikia įtraukti jokio kodo. Galiausiai, ciklo funkcija nepertraukiamai suka variklį pagal laikrodžio rodyklę ir prieš laikrodžio rodyklę. Joje nustatomas greitis, žingsnių skaičius ir uždelsimas prieš perjungiant sukimosi funkciją. Neigiamo parametro perdavimas žingsnio funkcijai pakeičia sukimosi kryptį. 

Bibliotekos "AccelStepper" naudojimas

Nors galite naudoti žingsninių variklių biblioteką keliems varikliams valdyti, šiam darbui geriau tinka "AccelStepper" biblioteka. Be to, ji palaiko pusės žingsnio valdymą, greitėjimą ir lėtėjimą bei nepriklausomą, lygiagretų žingsniavimą kiekvienu žingsniniu valdikliu.

Tačiau pirmiausia turite įdiegti biblioteką, nes ji nėra IDE dalis. Eikite į Sketch > Include library > Manage libraries. Ieškokite "AccelStepper" bibliotekos ir ją įdiekite.

Po to IDE parašykite toliau nurodytą kodą ir įkelkite jį į "Arduino".

28BYJ-48

Paaiškinimas

Pradėkite nuo bibliotekos įtraukimo, tada apibrėžkite konstantą pusės žingsnio metodui arba viso žingsnio metodui (atitinkamai aštuoni ir keturi). Tada sukurkite žingsninį objektą / bibliotekos egzempliorių ir nustatykite kaiščių seką 8, 10, 9, 11.

Po to nustatykite didžiausią greitį 1 000 ir pagreičio koeficientą 50, kad būtų įtraukti pagreičio ir lėtėjimo judesiai. Toliau apribokite reguliarųjį greitį iki 200, o žingsnių skaičių vienam apsisukimui - iki 2038.

Ciklo funkcija suapvalina kodą ir keičia sukimosi kryptį, skaitydama atstumą, kurį reikia nueiti nuosavybė, kol pasiekia 2038 žingsnius. Pakeitus kryptį, funkcija if patikrina tą patį ir perjungia sukimąsi po neigiamų 2038 žingsnių. Funkcija paleisti yra labai svarbi, nes ji nurodo tvarkyklei paleisti žingsninį valdiklį.

Dviejų 28-BYJ48 žingsninių variklių valdymas

Pirmojo žingsninio valdiklio laidai nesikeis. Tačiau jums reikės papildomo tvarkytuvo ir jungiamųjų laidų varikliui sujungti su "Arduino" ir 5 V maitinimo adapteriu. 

"Arduino UNO", dviejų ULN2003, dviejų žingsninių variklių grandinės schema

Sujunkite juos taip.

Naudodami "AccelStepper" biblioteką, galite naudoti toliau pateiktą kodą, kad vienas variklis būtų valdomas puse žingsnio, o kitas - visu žingsniu.  

28BYJ-48

Įtraukę biblioteką, apibrėžkite viso žingsnio ir pusės žingsnio konstantas, tada sukurkite du žingsninio variklio objektus. Nepamirškite naudoti teisingą kaiščių seką, kaip paaiškinta anksčiau.

Sąrankos funkcija skirta nustatyti kiekvieno žingsninio variklio didžiausią greitį, pagreitį, įprastą greitį ir žingsnių per apsisukimą skaičių.

Baigdami funkciją loop (ciklas) palaikykite variklių veikimą, tada perjunkite jų sukimosi kryptį po to, kai jie atitinkamomis kryptimis žengs 2038 žingsnius.  

Kuo skiriasi žingsniniai ir standartiniai nuolatinės srovės varikliai?

Jei nežinote, kurį variklį naudoti savo projektui, čia pateikiamas išsamus standartinių nuolatinės srovės variklių ir žingsninių variklių palyginimas.

Kuo skiriasi žingsniniai ir servo varikliai?

Štai kaip žingsninis variklis dera su servo varikliu.

Kada galėčiau rinktis žingsninį variklį, o ne kitus tipus

28BYJ-48 žingsninis variklis turi šiuos privalumus, palyginti su standartiniais nuolatinės srovės ir servo varikliais.

: Vienas iš didžiausių žingsninių variklių privalumų - tikslus padėties nustatymas, nes jie sukasi pakopomis.

: Kontroliuojamas žingsninis judėjimas užtikrina tikslų greičio valdymą, todėl šis variklis idealiai tinka robotams, procesų automatizavimui ir pan.

: Variklis puikiai tinka naudoti mažais greičiais (mažiau nei 2000 aps./min.), nes esant tokiam greičiui jis pasižymi dideliu sukimo momentu.

: Žingsninių variklių valdymas naudojant "Arduino" ar bet kurį kitą mikrovaldiklį yra gana paprastas, o tai yra viena iš pagrindinių priežasčių, kodėl jie nuolat naudojami.

: Šie varikliai yra pigesni ir gali padėti sutaupyti daugiau lėšų įgyvendinant projektą

: Kaip ir nuolatinės srovės varikliai, šio tipo varikliai yra plačiai prieinami ir būna įvairių stilių ir dydžių

Žingsninių variklių taikymo sritys

CNC frezavimo staklės

Tikslaus valdymo mašinos

DVD grotuvai

3D spausdintuvai

28BYJ-48

3D spausdintuvas su žingsniniu varikliu

Automobilio šoninio vaizdo veidrodėlio pakreipimas

Apsaugos kameros

Prekybos automatai

Staliniai spausdintuvai

Santrauka

Apibendrinant galima teigti, kad 28BYJ-48 žingsninis variklis yra vienas iš pigiausių žingsninių variklių ir turi daugybę pritaikymo būdų transporto priemonėse, elektros prietaisuose ir keliose mašinose. Jį galite valdyti naudodami "Arduino" (kaip išsamiai paaiškinta anksčiau), o jei susidursite su kokiais nors sunkumais, kreipkitės dėl išsamesnių paaiškinimų.