
Sadržaj:
- Korak 1: StepDriver biblioteka
- Korak 2: Globalne varijable
- Korak 3: Funkcije - Postavljanje upravljačkih pinova
- Korak 4: Funkcije - osnovne funkcije upravljačkog programa
- Korak 5: Funkcije - Postavljanje koraka motora
- Korak 6: Funkcije - Postavljanje načina rada motora korak
- Korak 7: Funkcije - Postavljanje graničnih sklopki
- Korak 8: Funkcije - Očitavanje graničnih sklopki
- Korak 9: Funkcije - Postavljanje pokreta
- Korak 10: Funkcije - Funkcija kretanja
- Korak 11: Funkcije - Funkcija kretanja - Varijable
- Korak 12: Funkcije - Funkcija kretanja - Ubrzanje
- Korak 13: Funkcije - Funkcija kretanja - Kontinuirana brzina
- Korak 14: Funkcije - Funkcija kretanja - Usporavanje
- Korak 15: Funkcije - Funkcija kretanja - Kontinuirana brzina
- Korak 16: Funkcije - Funkcija premještanja - Pokreti se okreće
- Korak 17: Karta kretanja - Brzina položaja
- Korak 18: Grafikon kretanja - Pozicija vs. Pozicija
- Korak 19: Grafikon kretanja - Velocity vs. Momenat
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-23 14:37



Danas ću vam pokazati biblioteku za vozača motora s punim korakom s krajnjim prekidačima i kretanje motora s ubrzanjem i mikrokorakom. Ovaj Lib, koji radi i na Arduino Uno i na Arduino Mega, omogućuje vam pomicanje motora ne samo po broju koraka, već i po milimetrima. I prilično je tačan.
Važna značajka ove biblioteke je ta što vam omogućuje da napravite vlastitu CNC mašinu, koja nije nužno samo X, Y, već i prekidač sekcija, na primjer, jer to nije spreman GRBL, već programiranje koje omogućava vam da napravite idealnu mašinu za sebe.
Međutim, sljedeća izjava važan je detalj! Ovaj video je samo za one koji su već navikli na programiranje. Ako niste upoznati s Arduino programiranjem, prvo biste trebali pogledati druge uvodne videozapise na mom kanalu. To je zato što u ovom videu raspravljam o naprednoj temi i detaljnije objašnjavam Lib koji se koristi u videu: Koračni motor s ubrzanjem i završetkom hoda.
Korak 1: StepDriver biblioteka
Ova biblioteka pokriva tri najčešće vrste upravljačkih programa na tržištu: A4988, DRV8825 i TB6600. On konfigurira pinove upravljačkih programa, dopuštajući im da izvrše resetiranje i prelazak u stanje mirovanja, kao i da aktivira i deaktivira izlaze motora koji djeluju na pin za omogućavanje. Također postavlja ulaze mikrokoračnih pinova upravljačkog programa i ograničava prekidače i njihovu razinu aktiviranja (visoki ili niski). Takođe ima kôd kretanja motora sa kontinuiranim ubrzanjem u mm / s², najvećom brzinom u mm / s i minimalnom brzinom u mm / s.
Za one koji su gledali dijelove 1 i 2 videa Step Motor with Acceleration and End of Stroke, preuzmite ovu novu biblioteku dostupnu danas, jer sam napravio neke izmjene u toj prvoj datoteci kako bih joj olakšao upotrebu.
Korak 2: Globalne varijable
Pokazujem čemu tačno služi svaka od globalnih varijabli.
Korak 3: Funkcije - Postavljanje upravljačkih pinova

Ovdje opisujem neke metode.
Postavio sam Pinout postavku i Arduino pinove kao izlaz.
Korak 4: Funkcije - osnovne funkcije upravljačkog programa

U ovom dijelu radimo s konfiguracijom upravljačkog programa i njegovim osnovnim funkcijama.
Korak 5: Funkcije - Postavljanje koraka motora


U ovom koraku koda konfiguriramo količinu koraka po milimetru koju motor mora izvršiti.
Korak 6: Funkcije - Postavljanje načina rada motora korak



Ova tablica prikazuje postavke za način rada koraka motora. Evo nekoliko primjera.
Korak 7: Funkcije - Postavljanje graničnih sklopki

Ovdje moram pročitati cijele i logičke vrijednosti. Potrebno je postaviti da li je aktivni ključ gore ili dolje, a pritom postaviti maksimalnu i minimalnu granicu završetka.
Korak 8: Funkcije - Očitavanje graničnih sklopki



Ovaj dio se razlikuje od onog u Libu koji sam stavio na raspolaganje prošle sedmice. Zašto sam to promijenio? Pa, stvorio sam eRead kako bih zamijenio neke druge. Ovdje će eRead čitati LVL, digitalRead (pin) i vratiti TRUE. Sve ovo treba izvesti na visokom nivou. Sljedeći rad s aktivnim ključem bit će na niskom nivou. Koristit ću ga ovdje da vam pokažem tabelu "Istine".
Na sliku koda postavio sam dijagram koji će mi pomoći da shvatim da se u ovom dijelu izvornog koda krećem prema Uzlaznom i da još nisam pritisnuo tipku kraja kursa.
Sada, na ovoj slici, kod bool DRV8825, pokazujem kako se motor i dalje kreće u smjeru rasta. Međutim, maksimalni granični prekidač je aktiviran. Mehanizam, dakle, mora zaustaviti kretanje.
Za kraj, pokazujem isti pokret, ali u suprotnom smjeru.
Ovdje ste već aktivirali prekidač za kraj kursa.
Korak 9: Funkcije - Postavljanje pokreta

Glavna korisnost metode motionConfig je pretvaranje milimetara u sekundi (mjerenje koje se koristi u CNC strojevima) u korake, kako bi se zadovoljili kontroler koračnog motora. Stoga u ovom dijelu instanciram varijable kako bih razumio korake, a ne milimetre.
Korak 10: Funkcije - Funkcija kretanja

U ovom koraku obrađujemo naredbu koja pomiče korak u željenom smjeru u razdoblju u mikrosekundama. Također smo postavili pin za usmjeravanje vozača, vrijeme kašnjenja i smjer krajnjih prekidača.
Korak 11: Funkcije - Funkcija kretanja - Varijable

U ovom dijelu konfiguriramo sve varijable koje uključuju periode maksimalne i minimalne brzine, udaljenost putanje i korake potrebne za prekidanje putanje, između ostalih.
Korak 12: Funkcije - Funkcija kretanja - Ubrzanje


Ovdje iznosim neke detalje o tome kako smo došli do podataka o ubrzanju, koji su izračunati pomoću Torricellijeve jednadžbe, jer se u obzir uzimaju prostori za rad na ubrzanju, a ne vrijeme. Ali, ovdje je važno razumjeti da se cijela ova jednadžba sastoji samo od jedne linije koda.
Identificirali smo trapez na gornjoj slici, jer su početni okretaji loši za većinu koračnih motora. Ista stvar se događa sa usporavanjem. Zbog toga vizualiziramo trapez u razdoblju između ubrzanja i usporavanja.
Korak 13: Funkcije - Funkcija kretanja - Kontinuirana brzina


Ovdje zadržavamo broj koraka koji se koriste pri ubrzanju, nastavljamo kontinuiranom brzinom i držimo se maksimalne brzine, što se može vidjeti na donjoj slici.
Korak 14: Funkcije - Funkcija kretanja - Usporavanje


Ovdje imamo drugu jednadžbu, ovaj put s negativnom vrijednošću ubrzanja. Također se prikazuje u retku koda, koji na donjoj slici predstavlja pravokutnik s oznakom Usporavanje.
Korak 15: Funkcije - Funkcija kretanja - Kontinuirana brzina


Vraćamo se na kontinuiranu brzinu kako bismo radili drugu polovicu putanje, kao što se vidi dolje.
Korak 16: Funkcije - Funkcija premještanja - Pokreti se okreće

U ovom dijelu pomičemo motor u određenom broju okreta u željenom smjeru, pretvarajući broj okretaja u milimetre. Konačno, pomaknemo motor u željenom smjeru.
Korak 17: Karta kretanja - Brzina položaja

Na ovom grafikonu imam podatke koji su izvučeni iz jednadžbe koju smo koristili u dijelu Ubrzanje. Uzeo sam vrijednosti i igrao na Arduino seriji, a od ovoga sam prešao u Excel, što je rezultiralo ovom tablicom. Ova tablica prikazuje napredak koraka.
Korak 18: Grafikon kretanja - Pozicija vs. Pozicija

Ovdje uzimamo položaj, u koracima, i brzinu i pretvaramo ga u period, u mikrosekundi. U ovom koraku primjećujemo da je period obrnuto proporcionalan brzini.
Korak 19: Grafikon kretanja - Velocity vs. Momenat

Konačno, imamo brzinu u funkciji trenutka, pa zbog toga imamo ravnu liniju, budući da je to brzina u funkciji vremena.
Preporučuje se:
Koračni motor upravljanim koračnim motorom - Koračni motor kao rotacijski davač: 11 koraka (sa slikama)

Koračni motor upravljanim koračnim motorom | Koračni motor kao rotacijski davač: Imate li nekoliko koračnih motora koji leže i žele nešto učiniti? U ovom Instructableu, upotrijebimo koračni motor kao rotacijski davač za kontrolu položaja drugog koračnog motora pomoću Arduino mikrokontrolera. Pa bez odlaganja, idemo
DIY Easy držač za slušalice držač: 6 koraka

DIY Jednostavna vješalica za držače slušalica: Napravite vlastitu jednostavnu vješalicu za držače za slušalice od jeftinih materijala. Kao učitelj, dosadilo mi je od neurednih slušalica posvuda u računarskoj laboratoriji i trebalo mi je rješenje. Nadajmo se da će vam ovo pomoći da uštedite glavobolje i novac
Koračni motor sa svjetlosnom kontrolom + zidni držač/postolje: 6 koraka

Koračni motor sa svjetlosnim upravljanjem + zidni držač/postolje: Ovo postolje se koristi za postavljanje koračnog motora s Arduino kontrolom, dizajniranog za automatsko upravljanje zavjesom prema nivou svjetlosti u prostoriji. Takođe možete dodati LCD ekran za štampanje nivoa svetlosti. 3D oprema služi samo za demonstraciju, a
Držač fleš diska za USB palac-NAPRAVITE DRŽAČ ZA POVEZANJE: 5 koraka

Držač fleš diska za USB palac-NAPRAVITE DRŽAČ ZA POVEZIVANJE: Umorni ste od toga da imate USB memorijski pogon sve vreme oko vrata? Budite moderni tako što ćete napraviti držač za pojaseve od sportskog upaljača za cigarete
Besplatni Diy Zune, IPod, IPhone, PDA, držač za mobitel ili gadžet/držač/stalak: 6 koraka

Besplatni Diy Zune, IPod, IPhone, PDA, držač za mobitel ili gadžet/držač/stalak: Rečeno je da je nužnost majka izuma. Često sam otkrivao da je to istina. Prošla sedmica nije bila izuzetak. Provodio sam neumjereno mnogo vremena na svom računaru u potrazi za poslom. Budući da sam nedavno zamijenio svoj računar poslužiteljem