- Žingsninis variklis:
- ULN2003 žingsninio variklio tvarkyklė:
- Reikalingos medžiagos:
- Grandinės schema:
- Kodas ir darbo paaiškinimas:
Šioje pamokoje mes sąsajos žingsninį variklį naudosime MSP430. „ MSP-EXP430G2“ yra „ Texas Instruments“ sukurtas kūrimo įrankis, dar žinomas kaip „LaunchPad“, skirtas išmokti ir praktikuoti, kaip naudotis jų mikrovaldikliais. Ši plokštė priklauso „MSP430 Value Line“ kategorijai, kur galime užprogramuoti visus „MSP430“ serijos mikrovaldiklius. Jei dar nesinaudojote „MSP“, patikrinkite, kaip pradedate naudotis „MSP430“ mokymo programa.
Žingsninis variklis:
„Stepper Motor“ yra bešepetinis nuolatinės srovės variklis, kuris paverčia elektros impulsus į skirtingus mechaninius judesius. Žingsninio variklio velenas sukasi atskirais žingsniais. Mes galime gauti tikslius žingsnius ir greitį pagal savo poreikius.
Mes naudosime 35BYJ46 dvipolį žingsninį variklį, kuris yra pigiai prieinamas rinkoje. Jame yra 6 laidai, bet taip pat yra 5 laidai. Mūsų žingsniniame variklyje yra 2 ritės. Kiekviename iš jų išeina 3 laidai. Iš 3 laidų 1 yra nukreipta taip, kad likę 2 laidai būtų tiesiogiai sujungti su ritėmis. Iš viso turime 4 signalo laidus ir 2 centruotus belaidžius laidus, kurie yra prijungti prie 5-12 V maitinimo šaltinio.
Tuo atveju, jei iš variklio išeina 5 laidai, 4 laidai yra signalo laidai, o vienas yra centre pritvirtintas prie abiejų ritinių. Kaip šitas.
Norėdami patikrinti, kuris laidas yra centre, ar kuris yra signalo laidas, turite patikrinti laidų, išeinančių iš variklio, atsparumą. Taigi, tie laidai, kurie yra sujungti su ta pačia ritė, turi didelę pasipriešinimo vertę, lyginant su centrinio bakstelėjimo atsparumu.
Aukščiau pateiktoje diagramoje, jei mes patikrinome mėlynos ir geltonos spalvos laidų atsparumo vertę, o atsparumas tarp jų yra didesnis nei vertė tarp geltonos ir raudonos arba mėlynos ir raudonos. Taigi, raudona spalva yra centruota Viela.
Anksčiau mes sąsajome žingsninį variklį su kitais mikrovaldikliais:
- „Stepper“ variklio sąsaja su „Arduino Uno“
- Žingsninio variklio valdymas su „Raspberry Pi“
- Žingsninio variklio sąsaja su 8051 mikrovaldikliu
- Sąveikaujantis žingsninis variklis su PIC mikrovaldikliu
Žingsninį variklį taip pat galima valdyti be jokio mikrovaldiklio, žiūrėkite šią „Stepper“ variklio tvarkyklę.
ULN2003 žingsninio variklio tvarkyklė:
Dauguma žingsninių variklių veiks tik su vairuotojo modulio pagalba. Taip yra todėl, kad valdiklio modulis (mūsų atveju MSP) negalės tiekti pakankamai srovės iš jo įvesties / išvesties kaiščių, kad variklis galėtų veikti. Taigi kaip žingsninio variklio tvarkyklę naudosime išorinį modulį, pvz., ULN2003 modulį. Yra daugybė vairuotojo modulių tipų, o vieno įvertinimas pasikeis atsižvelgiant į naudojamo variklio tipą. Pagrindinis visų vairuotojo modulių principas bus tiekti / panardinti pakankamai srovės, kad variklis galėtų veikti.
Šiame projekte naudosime ULN2003 variklio tvarkyklę IC. IC kontaktinė schema pateikta žemiau:
Mes naudosime 4 įvesties ir 4 išvesties prievadus, jei IC.
Reikalingos medžiagos:
- MSP430
- 35BYJ46 arba 28-BYJ48 žingsninis variklis
- ULN2003 IC
- Laidai
- Bandomoji Lenta
Grandinės schema:
Aukščiau pateiktoje schemoje RED laiptelis nėra prijungtas prie IC PIN5. Jis turi būti prijungtas prie 5 V. „Stepper“ variklio spalvų kodas gali skirtis nuo grandinės schemoje nurodytų spalvų. Taigi, patikrinę teisingus signalo laidus, prijunkite laidus.
Parašysime savo kodą naudodami „ Energia IDE“. Tai tas pats, kas „Arduino IDE“, ir paprasta naudoti. „Stepper“ vairavimo kodo pavyzdį taip pat galite rasti „Arduino IDE“ meniu pavyzdyje.
Kodas ir darbo paaiškinimas:
Prieš pradėdami programuoti naudodami MSP430, supraskime, kas iš tikrųjų turėtų vykti programos viduje. Mes naudosime 4 pakopų sekos metodą, todėl turėsime atlikti keturis veiksmus, kad atliktume vieną pilną pasukimą. A, B, C ir D laikykite keturiomis ritėmis.
Žingsnis |
Kaištis įjungtas |
Ritės įjungtos |
1 žingsnis |
6 ir 7 |
A ir B |
2 žingsnis |
7 ir 8 |
B ir C |
3 žingsnis |
8 ir 9 |
C ir D |
4 žingsnis |
9 ir 6 |
D ir A |
Šioje pamokoje mes parašysime žingsninio variklio kodą MSP430. Visą programą rasite pamokos pabaigoje, keletas svarbių eilučių yra paaiškintos žemiau.
Apskaičiuota, kad mūsų žingsninio variklio žingsnių skaičius per apsisukimą yra 32; taigi mes įvedame tai, kaip parodyta žemiau esančioje eilutėje
const int ŽINGSNIAI = 32;
Tada turite sukurti egzempliorius, kuriuose nurodome kaiščius, prie kurių prijungėme „Stepper“ variklį.
„Stepper myStepper“ (ŽINGSNIAI, 6, 7, 8, 9);
Kadangi mes naudojame „Stepper“ biblioteką, mes galime nustatyti variklio greitį naudodami žemiau esančią eilutę. 35BYJ46 žingsninių variklių greitis gali svyruoti nuo 0 iki 200.
„Mystepper.setSpeed“ (200);
Dabar, kad variklis judėtų vienu žingsniu, galime naudoti šią eilutę.
myStepper.step (ŽINGSNIAI);
Kadangi mes turime 32 žingsnius ir 64 kaip pavaros santykį, turime judėti 2048 m. (32 * 64 = 2048), kad atliktume vieną pilną apsisukimą. Dabar įkelkite žemiau esantį kodą ir pakeiskite Nr. žingsnių pagal jūsų poreikius.
Štai kaip galite sąveikauti su žingsniniu varikliu su PIC mikrovaldikliu, dabar galite naudoti savo kūrybiškumą ir sužinoti tam pritaikytas programas. Yra daugybė projektų, kuriuose naudojamas žingsninis variklis.