- Būtinas komponentas
- NEMA17 žingsninis variklis
- A4988 „Stepper Driver“ modulis
- Grandinės schema
- Kodo paaiškinimas
Žingsninis variklis yra nuolatinės srovės variklis, veikiantis atskirais žingsniais ir naudojamas visur nuo stebėjimo kameros iki sudėtingų robotų ir mašinų. Žingsniniai varikliai užtikrina tikslų valdymą ir gali būti diferencijuojami pagal sukimo momentą, žingsnius per apsisukimą ir įėjimo įtampą. Savo ankstesniame projekte mes valdėme 28-BYJ48 žingsninį variklį naudodami „Arduino“. 28-BYJ48 sukimo momentas yra santykinai mažesnis nei kitų žingsninių variklių, tokių kaip NEMA 14, NEMA17.
Šioje pamokoje mes valdysime NEMA17 žingsninį variklį naudodami „Arduino Uno“ ir „A4988“ žingsninio tvarkyklės modulį. „Nema17“ žingsninio variklio sukimo momentas ir didesnė darbinė įtampa nei 28-BYJ48. Čia taip pat bus pritvirtintas potenciometras, skirtas valdyti žingsninio variklio kryptį.
Būtinas komponentas
- „Arduino UNO“
- NEMA17 žingsninis variklis
- A4988 „Stepper Driver“ modulis
- 47 µf kondensatorius
- Potenciometras
NEMA17 žingsninis variklis
„Nema17“ veikimas yra panašus į įprastus „Stepper Motors“. NEMA 17 žingsninis variklis turi 1,7 x 1,7 colio priekinę plokštę ir paprastai turi didesnį sukimo momentą nei mažesni variantai, pavyzdžiui, NEMA 14. Šis variklis turi šešis laidus, o vardinė įtampa yra 12 voltų. Jį galima valdyti esant mažesnei įtampai, tačiau sukimo momentas sumažės. Žingsniniai varikliai nesisuka, jie žengia, o NEMA17 variklio žingsnio kampas yra 1,8 laipsnio. reiškia, kad kiekviename žingsnyje jis apima 1,8 laipsnio. Žemiau pateikiama NEMA17 prijungimo schema.
Kaip matote, šis variklis turi „ Unipolar“ šešių laidų išdėstymą. Šie laidai yra sujungti dviem padalintomis apvijomis. Juodos, geltonos, žalios spalvos laidai yra pirmojo apvijos dalis, kur juoda yra centrinis čiaupas, o geltona ir žalia yra ritės galas, o raudona, balta ir mėlyna yra antrosios apvijos dalis, kurioje balta yra centrinė, o raudona ir mėlyna yra ritė. galiniai laidai. Paprastai centriniai čiaupo laidai paliekami atjungti.
Žingsniai per NEMA17 per revoliuciją
Tam tikro žingsninio variklio žingsniai per apsisukimą apskaičiuojami naudojant to žingsnio variklio žingsnio kampą. Taigi, NEMA 17 žingsnio kampas yra 1,8 laipsnio.
Žingsniai per apsisukimą = 360 / žingsnio kampas 360 / 1,8 = 200 žingsnių per apsisukimą
NEMA17 specifikacijos
- Nominali įtampa: 12V DC
- Žingsnio kampas: 1,8 laipsnio.
- Fazių skaičius: 4
- Variklio ilgis: 1,54 colio
- 4 laidų, 8 colių švinas
- 200 žingsnių per apsisukimą, 1,8 laipsnio
- Darbinė temperatūra: nuo -10 iki 40 ° C
- Unipolinis laikymo momentas: 22,2 oz
Čia taip pat patikrinkite įvairius su varikliais susijusius projektus, kurie ne tik sukuria pagrindinę sąsają su įvairiais mikrovaldikliais, bet ir robotikos projektus, susijusius su žingsniniu varikliu.
A4988 „Stepper Driver“ modulis
„Stepper“ vairuotojo modulis kontroliuoja žingsninio variklio darbą. „Stepper“ vairuotojai srovę siunčia į žingsninį variklį per įvairias fazes.
„ A4988 Nema 17“ laiptelių tvarkyklė yra mikropaketinis tvarkyklės modulis, naudojamas valdyti bipolinius žingsninius variklius. Šis tvarkyklės modulis turi įmontuotą vertėją, o tai reiškia, kad žingsninį variklį galime valdyti naudodami labai nedaug mūsų valdiklio kaiščių.
Naudodami šį „ Nema 17“ variklio tvarkyklės modulį, žingsninį variklį galime valdyti naudodami tik du kaiščius, ty „STEP“ ir „DIRECTION“. STEP kaištis naudojamas žingsniams valdyti, o DIRECTION kaištis - variklio krypčiai valdyti. A4988 tvarkyklės modulis suteikia penkias skirtingas žingsnių skiriamąsias gebas : viso, keturių, ketvirčių, aštuonių ir šešioliktų . Skirtingas skiriamąsias gebas galite pasirinkti naudodami skiriamosios gebos parinkiklio kaiščius ((MS1, MS2 ir MS3). Toliau pateikiama šių kaiščių tiesos lentelė:
MS1 | MS2 | MS3 | „Microstep“ skiriamoji geba |
Žemas | Žemas | Žemas | Visas žingsnis |
Aukštas | Žemas | Žemas | ½ žingsnis (pusė žingsnio) |
Žemas | Aukštas | Žemas | ¼ žingsnis (ketvirčio žingsnis) |
Aukštas | Aukštas | Žemas | 1/8 žingsnis (aštuntas žingsnis) |
Aukštas | Aukštas | Aukštas | 1/16 žingsnis (šešioliktas žingsnis) |
A4988 specifikacijos
Maks. Darbinė įtampa: 35V
Min. Darbinė įtampa: 8V
Maks. Srovė per fazę: 2A
„Microstep“ skiriamoji geba: visas žingsnis, ½ žingsnis, ¼ žingsnis, 1/8 ir 1/16 žingsnis
Apsauga nuo atvirkštinės įtampos: Ne
Matmenys: 15,5 × 20,5 mm (0,6 ″ × 0,8 ″)
Grandinės schema
Grandinės schema, skirta valdyti „ Nema 17“ žingsninį variklį su „Arduino“, pateikta aukščiau pateiktame paveikslėlyje. Kadangi A4988 modulis turi įmontuotą vertėją, tai reiškia, kad prie „Arduino“ reikia prijungti tik „Step and Direction“ kaiščius. Pakopos kaištis naudojamas žingsniams valdyti, o krypties kaištis - krypčiai valdyti. „Stepper“ variklis maitinamas naudojant 12 V maitinimo šaltinį, o „A4988“ modulis - per „Arduino“. Potenciometras naudojamas variklio krypčiai valdyti.
Jei pasuksite potenciometrą pagal laikrodžio rodyklę, žingsnis pasuks pagal laikrodžio rodyklę, o jei pasuksite prieš laikrodžio rodyklę, jis pasuks prieš laikrodžio rodyklę. Norėdami apsaugoti plokštę nuo įtampos šuolių, naudojamas 47 µf kondensatorius. „MS1“, „MS2“ ir „MS3“ kaiščiai liko atjungti, o tai reiškia, kad vairuotojas veiks viso veiksmo režimu.
Užbaigti „ Arduino Nema 17 A4988“ ryšius, pateiktus žemiau esančioje lentelėje.
S.NO. |
A4988 kaištis |
Ryšys |
1 |
VMOT |
+ daugiau nei akumuliatorius |
2 |
BND |
-ve akumuliatoriaus |
3 |
VDD |
5 V „Arduino“ |
4 |
BND |
Arduino BND |
5 |
STP |
3 „Arduino“ kaištis |
6 |
DIR |
2 „Arduino“ kaištis |
7 |
1A, 1B, 2A, 2B |
Žingsninis variklis |
Kodo paaiškinimas
Pilnas kodas su veikiančiu vaizdo valdymu „Nema 17“ su „Arduino “ pateikiamas šios pamokos pabaigoje. Čia mes paaiškiname visą programą, kad suprastume projekto veikimą.
Pirmiausia pridėkite „Stepper Motor“ biblioteką prie „Arduino IDE“. Čia galite atsisiųsti „stepper motor“ biblioteką.
Po to nustatykite NEMA 17 žingsnių skaičių. Kaip apskaičiavome, ne. žingsnių per apsisukimą NEMA 17 yra 200.
# įtraukti
Po to nurodykite kaiščius, prie kurių prijungtas tvarkyklės modulis, ir apibrėžkite variklio sąsajos tipą kaip „ Type1“, nes variklis yra prijungtas per vairuotojo modulį.
Stepper stepper (ŽINGSNIAI, 2, 3); #define motorInterfaceType 1
Tada nustatykite žingsninio variklio greitį naudodami „ stepper.setSpeed“ funkciją. Maksimalus NEMA 17 variklio greitis yra 4688 aps./min., Tačiau jei važiuojame greičiau, nei 1000 aps / min sukimo momentas greitai sumažėja.
negaliojanti sąranka () { stepper.setSpeed (1000);
Dabar į pagrindinį kilpa, mes skaityti potenciometras vertę A0 kaiščiu. Šioje grandinėje yra dvi funkcijos, viena yra potVal , kita - Pval . Jei dabartinė vertė, ty potVal, yra didesnė už ankstesnę vertę, ty Pval, nei ji judės dešimčia žingsnių pagal laikrodžio rodyklę ir jei dabartinė vertė bus mažesnė nei ankstesnė vertė, nei ji judės dešimt žingsnių prieš laikrodžio rodyklę.
potVal = žemėlapis (analogRead (A0), 0,1024,0 500); if (potVal> Pval) stepper.step (10); jei (potVal
Dabar prijunkite „Arduino“ su nešiojamuoju kompiuteriu ir įkelkite kodą į „Arduino UNO“ plokštę naudodami „Arduino IDE“, pasirinkite plokštės ir prievado numerį, tada spustelėkite mygtuką „Įkelti“.
Dabar naudodamiesi potenciometru galite valdyti „Nema17“ žingsninio variklio kryptį. Visas projekto darbas parodytas žemiau esančiame vaizdo įraše. Jei turite abejonių dėl šio projekto, paskelbkite juos toliau pateiktame komentarų skyriuje.