Stepper motor și Arduino - relația dintre ele

Stepper motor și Arduino - relația dintre ele


Producție Mașini folosite uneori CNC (pult). Unitățile permit tăiate piese plate, pentru a face sculpturi din lemn frumoase și mai mult. Astăzi, în vogă 3D-imprimantă, și este mai mult și mai mult câștigă popularitate. Recent am aflat că oamenii de știință din Statele Unite, pentru prima dată în lumea coloanei vertebrale umane imprimate de biomateriale. Aici tehnologia este în creștere rapidă. Și în toate aceste dispozitive nu este posibilă fără motor pas cu pas (SM). Cu toate acestea, o grămadă - un motor pas cu pas și Arduino - acest lucru nu este ideal (nu pentru proiecte serioase). Dar totuși eu atrag atenția.







În acest articol vă va învăța:

Funcționarea conducătorului auto și descrierea motor pas cu pas

Cum shagovik?

Pentru probleme practice cu mișcarea precisă a obiectului este absolut necesar pentru SD. Acesta este motorul care se misca un arbore, în funcție de setul de etape din programul PLC. Cel mai adesea, acestea sunt utilizate în CNC mașini-unelte, robotică, manipulatoare, 3D-imprimante.

Stepper motor și Arduino - relația dintre ele

Modul 4-pas, el poate face pași în 2048, un 8-pas 4096 pași. Sursă de alimentare 5 V, 160 mA curent. 1:64 raportului de transmisie. adică, un pas el se angajează să 5,625 grade. Cuplul este de 34 mN.m. Viteza medie de 15 rot / min, cu ajutorul codului software-ul poate fi accelerat până la 35 rot / min, dar trebuie să înțelegem că suntem în același timp, a pierde puterea și precizia.

Dimensiunile motorului sunt specificate de la sursa - fișa tehnică a producătorului Kiatronics.

Stepper motor și Arduino - relația dintre ele

Asta e cum arată din interior:

Stepper motor și Arduino - relația dintre ele

Pentru proiectele tehnice mici - 28BYj-48 este ideal. Principalul avantaj este costul redus și simplitatea. Atasez caietul de sarcini:

Stepper motor și Arduino - relația dintre ele






intrări de control IN1, IN2, IN3, IN4 sunt conectate la orice ieșire digitală Arduino Uno. Dacă sunteți interesat, puteți citi articolul aici. LED-urile indica ce pas a făcut motorul. Oportunitati pentru conectarea unei surse de alimentare externă. Vă recomandăm alimentarea o baterie separată, deoarece sarcina poate fi crescută până la 1 A. Doar amintiți-vă pentru a repoziționa jumper-ul pe puterea externă a motorului.

Conducerea Fritzing de asamblare

Pentru utilizare în proiecte educaționale, recomand Arduino Uno. Schemă de conexiuni I prezint în două versiuni: Schema fundamentală și vizuală.

Stepper motor și Arduino - relația dintre ele

Stepper motor și Arduino - relația dintre ele

Descriere bibliotecă AccelStepper

Să ne trecem la partea distractivă a acestui articol. Această descriere a celor două biblioteci pentru a lucra cu motoare și myStepper AccelStepper. Mai mult va acorda o atenție la biblioteca AccelStepper, deoarece are mai multe caracteristici, și anume:

  • este posibil să se controleze viteza,
  • suport pentru diferite shagovikov
  • sprijini motoarele concurente

Determinarea configurației motorului

AccelStepper mystepper (1, pinStep, pinDirection);

Pentru a controla motor pas cu pas.

AccelStepper mystepper (2, PINA, pinB);

motor pas cu pas bipolar controlat de H-pod.

AccelStepper mystepper (4, pinA1, pinA2, pinB1, pinB2);

Motor unipolar controlat tranzistori cu patru paturi.

Viteza maximă a motorului. Viteza este cu siguranță scăzută. În primul rând, un motor este accelerat la această viteză, și apoi se reduce

accelerare Shagovika în trepte pe secundă.

control al poziției

Mutați într-o poziție complet specificată. Mișcarea a început să ruleze funcția ().

Mutare în ceea ce privește poziția a spus. Mișcarea a început să ruleze funcția (). Valoarea distanței poate fi mai mare sau mai mică decât zero.

Întoarcere poziția absolută curentă.

Reveniți distanța până la poziția specificată. Poate fi utilizat pentru a verifica dacă motorul a atins punctul final a spus.

Începe să se miște. Pentru a continua mișcarea motorului ar trebui să apela funcția în mod repetat.

Și așteptați să înceapă să se miște atunci când motorul ajunge la un punct specificat. Funcția nu se întoarce până când se oprește.

de control al vitezei

Setați viteza în metri pe secundă. Procesul in sine este rulat funcția runSpeed ​​().

Începe să se miște. Pentru a continua mișcarea motorului ar trebui să apela funcția în mod repetat.

După cum puteți vedea funcțiile de control nu sunt suficient de complexe pentru a sta pentru câteva nopți în principiu.

Descrierea cod de program

Listarea de management al SM

Toate un salut mare! Ajutor pentru a insera două butoane, apăsarea primul declanșează o mișcare într-o direcție și apoi motorul se oprește, și apăsați butonul de-al doilea începe procesul în storonu.Esli inversă să apese un buton și mai strâns de fiecare dată când motorul începe să se miște în aceeași direcție.

#define HALFSTEP 8

// Definirea pini pentru controlul motorului

// Initializare cu secvența de concluzii IN1-IN3-IN2-IN4

// pentru utilizare cu AccelStepper 28BYJ-48

AccelStepper stepper1 (HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4);

configurare void ()

// schimba directia daca shagovik atinge o poziție predeterminată

if (stepper1.distanceToGo () == 0)