Sisukord:
- Samm: StepDriveri kogu
- 2. samm: globaalsed muutujad
- Samm 3: Funktsioonid - juhi tihvtide seadistamine
- 4. samm: funktsioonid - juhi põhifunktsioonid
- 5. samm: funktsioonid - mootori astme seadistamine
- 6. samm: funktsioonid - mootori sammurežiimi seadistamine
- Samm 7: Funktsioonid - piirilülitite seadistamine
- 8. samm: funktsioonid - piirilülitite lugemine
- 9. samm: funktsioonid - liikumise seadistamine
- 10. samm: funktsioonid - liikumisfunktsioon
- 11. samm: funktsioonid - liikumisfunktsioon - muutujad
- 12. samm: funktsioonid - liikumisfunktsioon - kiirendus
- 13. samm: funktsioonid - liikumisfunktsioon - pidev kiirus
- 14. samm: funktsioonid - liikumisfunktsioon - aeglustus
- 15. samm: funktsioonid - liikumisfunktsioon - pidev kiirus
- 16. samm: funktsioonid - liigutusfunktsioon - pöörete liigutamine
- 17. samm: liikumisdiagramm - positsiooni kiirus
- 18. samm: liikumisdiagramm - positsioon vs. Asend
- 19. samm: liikumisskeem - kiirus vs. Hetk
Video: Arduino: täpsuslüliti samm -mootorile: 19 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Täna näitan teile raamatukogu täissammulisele mootorsõidukijuhile, millel on piirlülitid, ja mootori liikumist kiirenduse ja mikroastmega. See Lib, mis töötab nii Arduino Uno kui ka Arduino Mega peal, võimaldab mootoreid liigutada mitte ainult sammude arvu, vaid ka millimeetrite põhjal. Ja see on ka üsna täpne.
Selle raamatukogu oluline omadus on see, et see võimaldab teil luua oma CNC -masina, mis ei pruugi olla ainult X, Y, vaid ka näiteks sektsioonilüliti, sest see pole valmis GRBL, vaid pigem programmeerimine, mis võimaldab teil teha endale ideaalse masina.
Järgnev väide on aga oluline detail! See video on mõeldud ainult neile, kes on programmeerimisega juba harjunud. Kui te pole Arduino programmeerimisega tuttav, peaksite kõigepealt vaatama minu kanalil teisi tutvustavaid videoid. Selle põhjuseks on asjaolu, et ma arutan selles videos täpsemat teemat ja selgitan üksikasjalikumalt videos kasutatud libi: samm -mootor kiirenduse ja löögi lõpuga.
Samm: StepDriveri kogu
See teek hõlmab kolme kõige levinumat draiveritüüpi turul: A4988, DRV8825 ja TB6600. See konfigureerib draiverite nööpnõelad, võimaldades neil lähtestada ja lülitada puhkeolekusse, samuti aktiveerida ja deaktiveerida mootori väljundid, mis toimivad lubava tihvti järgi. See määrab ka juhi mikroastmeliste tihvtide sisendid ning piirab lüliteid ja nende aktiveerimistaset (kõrge või madal). Sellel on ka mootori liikumiskood pideva kiirendusega mm / s², maksimaalne kiirus mm / s ja minimaalne kiirus mm / s.
Neile, kes vaatasid video Step Motor with Acceleration and End of Stroke 1. ja 2. osa, laadige alla see täna saadaval olev kogu, sest tegin selles esimeses failis selle kasutamise hõlbustamiseks mõningaid muudatusi.
2. samm: globaalsed muutujad
Näitan täpselt, milleks iga globaalne muutuja on mõeldud.
Samm 3: Funktsioonid - juhi tihvtide seadistamine
Siin kirjeldan mõnda meetodit.
Määrasin väljundiks sätte Pinout ja Arduino tihvtid.
4. samm: funktsioonid - juhi põhifunktsioonid
Selles osas töötame draiveri konfiguratsiooni ja selle põhifunktsioonidega.
5. samm: funktsioonid - mootori astme seadistamine
Selles koodi etapis konfigureerime sammude arvu millimeetri kohta, mida mootor peab täitma.
6. samm: funktsioonid - mootori sammurežiimi seadistamine
See tabel näitab mootori sammurežiimi seadeid. Siin on mõned näidised.
Samm 7: Funktsioonid - piirilülitite seadistamine
Siin pean ma lugema terviklikke ja loogilisi väärtusi. Peate määrama, kas aktiivne võti on üles või alla, määrates samal ajal maksimaalse ja minimaalse piiri.
8. samm: funktsioonid - piirilülitite lugemine
See osa erineb sellest, mis Libis tehti eelmisel nädalal kättesaadavaks. Miks ma seda muutsin? Noh, ma lõin eReadi mõne teise asendamiseks. Siin loeb eRead LVL, digitalRead (pin) ja tagastab tõese. Seda kõike tuleb teha kõrgel tasemel. Järgmine töö aktiivse võtmega on madalal tasemel. Ma kasutan seda siin, et näidata teile tabelit "Tõde".
Koodipildile paigutasin diagrammi, mis aitab mõista, et selles lähtekoodi osas liigun tõusvas suunas ja pole veel kursuse lõppklahvi tabanud.
Nüüd, sellel pildil os koodi bool DRV8825, näitan mootorit, mis liigub endiselt kasvavas suunas. Maksimaalne piirlüliti on aga aktiveeritud. Mehhanism peab siis liikumise peatama.
Viimaseks näitan sama liikumist, kuid vastupidises suunas.
Siin on kursuse lõpplüliti juba aktiveeritud.
9. samm: funktsioonid - liikumise seadistamine
MotionConfig meetodi peamine kasulikkus on muuta millimeeter sekundis (CNC -masinates kasutatav mõõtmine) sammudeks, et vastata samm -mootori kontrollerile. Seetõttu näitan selles osas muutujaid, et mõista samme, mitte millimeetreid.
10. samm: funktsioonid - liikumisfunktsioon
Selles etapis käsitleme käsku, mis liigutab sammu soovitud suunas teatud aja jooksul mikrosekundites. Samuti määrasime juhi suunatihvti, viivitusaja ja piirlülitite suuna.
11. samm: funktsioonid - liikumisfunktsioon - muutujad
Selles osas konfigureerime kõik muutujad, mis hõlmavad muu hulgas maksimaalse ja minimaalse kiiruse perioode, trajektoori kaugust ja trajektoori katkestamiseks vajalikke samme.
12. samm: funktsioonid - liikumisfunktsioon - kiirendus
Siin esitan mõned üksikasjad selle kohta, kuidas jõudsime kiirendusandmeteni, mis arvutati Torricelli võrrandi kaudu, kuna see võtab arvesse kiirenduse töötamiseks vajalikke ruume, mitte aega. Kuid siin on oluline mõista, et kogu see võrrand hõlmab ainult ühte koodirida.
Ülaltoodud pildil tuvastasime trapetsi, sest esialgsed pöörlemiskiirused on enamiku samm -mootorite jaoks halvad. Sama juhtub aeglustusega. Seetõttu visualiseerime kiirenduse ja aeglustuse vahelisel perioodil trapetsi.
13. samm: funktsioonid - liikumisfunktsioon - pidev kiirus
Siin hoiame kiirenduses kasutatud sammude arvu, jätkame pideva kiirusega ja hoiame maksimaalse kiirusega, mida on näha alloleval pildil.
14. samm: funktsioonid - liikumisfunktsioon - aeglustus
Siin on meil veel üks võrrand, seekord negatiivse kiirendusväärtusega. See kuvatakse ka koodireal, mis kujutab alloleval pildil ristkülikut sildiga Aeglustus.
15. samm: funktsioonid - liikumisfunktsioon - pidev kiirus
Naaseme pidevale kiirusele, et töötada trajektoori teisel poolel, nagu allpool näha.
16. samm: funktsioonid - liigutusfunktsioon - pöörete liigutamine
Selles osas liigutame mootorit teatud arvu pöördeid soovitud suunas, teisendades pöörete arvu millimeetrites. Lõpuks liigutame mootorit soovitud suunas.
17. samm: liikumisdiagramm - positsiooni kiirus
Sellel graafikul on mul andmed, mis eraldati võrrandist, mida kasutasime kiirenduse osas. Võtsin väärtused ja mängisin Arduino sarjas ning läksin sellest Excelisse, mille tulemuseks oli see tabel. See tabel näitab sammu edenemist.
18. samm: liikumisdiagramm - positsioon vs. Asend
Siin võtame positsiooni, sammud ja kiiruse ning teisendame selle perioodiks mikrosekundites. Selles etapis märgime, et periood on pöördvõrdeline kiirusega.
19. samm: liikumisskeem - kiirus vs. Hetk
Lõpuks on meil kiirus hetke funktsioonina ja seetõttu on meil sirgjoon, kuna see on kiirus aja funktsioonina.
Soovitan:
Arduino auto tagurpidise parkimise hoiatussüsteem - Samm -sammult: 4 sammu
Arduino auto tagurpidise parkimise hoiatussüsteem | Samm-sammult: Selles projektis kujundan ma lihtsa Arduino auto tagurpidiparkimisanduri ahela, kasutades Arduino UNO ja ultraheli andurit HC-SR04. Seda Arduino -põhist auto tagasikäigu hoiatussüsteemi saab kasutada autonoomse navigeerimise, robotite liigutamise ja muude vahemike jaoks
Arduino jaoks kasutatav samm -kiiruse juhtimise menüü: 6 sammu
Arduino jaoks kasutatav samm -kiiruse juhtimise menüü: see SpeedStepperi raamatukogu on AccelStepperi kogu ümberkirjutatud, et võimaldada samm -mootori kiiruse juhtimist. SpeedStepperi teek võimaldab teil muuta määratud mootori pöörlemiskiirust ja kiirendada/aeglustada uuele määratud kiirusele sama algoritmi abil
Akustiline levitatsioon Arduino Unoga samm-sammult (8 sammu): 8 sammu
Akustiline levitatsioon Arduino Uno abil samm-sammult (8 sammu): ultraheliheli muundurid L298N DC-naissoost adapteri toiteallikas isase alalisvoolupistikuga Arduino UNOBreadboard ja analoogpordid koodi teisendamiseks (C ++)
RC jälgitav robot Arduino abil - samm -sammult: 3 sammu
RC jälgitav robot Arduino abil - samm -sammult: Hei, poisid, ma olen tagasi BangGoodist pärit laheda robotraamiga. Loodetavasti olete läbinud meie eelmised projektid - Spinel Crux V1 - žestidega juhitav robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms ja The Badland Braw
Mecanum Omni rataste robot koos GRBL samm -mootoritega Arduino kilp: 4 sammu
Mecanum Omni rataste robot koos GRBL samm -mootoritega Arduino Shield: Mecanum Robot - projekt, mida tahtsin ehitada alates sellest ajast, kui nägin seda Dejani gread -mehhatroonika ajaveebis: howtomechatronics.com Dejan tegi tõesti head tööd, hõlmates kõiki riistvara, 3D -printimise aspekte , elektroonika, kood ja Androidi rakendus (MIT