Cuprins:

UStepper Robot Arm 4: 5 Pași
UStepper Robot Arm 4: 5 Pași

Video: UStepper Robot Arm 4: 5 Pași

Video: UStepper Robot Arm 4: 5 Pași
Video: uStepper Robot Arm 4 - Demo 2024, Iulie
Anonim
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4
UStepper Robot Arm 4

Aceasta este a 4-a iterație a brațului meu Robotic, pe care am dezvoltat-o ca aplicație pentru placa noastră de control pas cu pas uStepper. Deoarece robotul are 3 motoare pas cu pas și un servo pentru acționare (în configurația de bază), nu este limitat la uStepper, ci poate fi utilizat cu orice placă de driver pas cu pas.

Proiectarea se bazează pe un robot industrial paletizator - și este relativ simplă. Acestea fiind spuse, am petrecut nenumărate ore venind cu designul și optimizându-l atât pentru ușurința de asamblare, cât și pentru a ușura imprimarea pieselor.

Am făcut proiectarea cu ușurință în imprimare și simplitatea asamblării în minte. Nu că nu există nicio modalitate de a îmbunătăți acei doi parametri, dar cred că am parcurs un drum lung. În plus, aș dori să trag robotica industrială la un nivel în care amatorii să o poată urmări arătând că se poate face relativ simplu - și matematica pentru a o controla!

Simțiți-vă liber să lăsați un comentariu cu feedback constructiv atât asupra designului, dar, mai ales, despre modul în care îl fac accesibil tuturor (în special matematicii).

Pasul 1: Piese necesare, imprimare 3D și asamblare

Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare
Piese necesare, imprimare 3D și asamblare

Practic tot ce trebuie să știți este în manualul de asamblare. Există un BOM detaliat, cu piese achiziționate și tipărite și o instrucțiune detaliată de asamblare.

Imprimarea 3D se face pe o imprimantă 3D de calitate rezonabilă (FDM) cu o înălțime a stratului de 0,2 mm și umplutură de 30%. Puteți găsi cea mai recentă iterație a pieselor și instrucțiunilor aici:

Pasul 2: Cinematică

Cinematică
Cinematică
Cinematică
Cinematică

Pentru a face brațul să se deplaseze într-o manieră previzibilă, trebuie să faceți matematică: Am căutat o mulțime de locuri pentru o descriere relativ simplă a cinematicii legate de acest tip de robot, dar nu am găsit una pe care cred că era pe un nivel în care majoritatea oamenilor îl puteau înțelege. Mi-am făcut propria versiune a cinematicii bazată exclusiv pe trigonometrie și nu pe transformările matricei care pot părea destul de înfricoșătoare dacă nu ați lucrat niciodată la acele lucruri înainte - totuși, acestea sunt destul de simple pentru acest robot special, deoarece este doar 3 DOF.

Cu toate acestea, cred că abordarea mea din documentul atașat este scrisă într-un mod relativ ușor de înțeles. Dar aruncă o privire și vezi dacă are sens pentru tine!

Pasul 3: Codificarea cinematicii

Cinematica poate fi greu de înțeles chiar și cu calculele pe care le-am furnizat în prima. Așadar, iată în primul rând o implementare Octave - Octave este un instrument gratuit cu multe dintre aceleași caracteristici găsite în Matlab.

L1o = 40; Zo = -70; L_2 = 73,0; Au = 188,0; Al = 182,0; Lo = 47,0; UPPERARMLEN = Au; LOWERARMLEN = Al; XOFFSET = Lo; ZOFFSET = L_2; AZOFFSET = Zo; AXOFFSET = L1o; disp ('Implementarea codului') disp ('Unghiuri de intrare:') rot = deg2rad (30); dreapta = deg2rad (142,5); stânga = deg2rad (50); rad2deg (rot) rad2deg (dreapta) rad2deg (stânga) T1 = putregai; #baza T2 = dreapta; #shoulder T3 = stânga; # cot #FW cinematică pentru a obține XYZ din unghiuri: disp ('Calculat X, Y, Z:') z = ZOFFSET + sin (dreapta) * LOWERARMLEN - cos (stânga - (pi / 2 - dreapta)) * UPPERARMLEN + AZOFFSET k1 = sin (stânga - (pi / 2 - dreapta)) * UPPERARMLEN + cos (dreapta) * LOWERARMLEN + XOFFSET + AXOFFSET; x = cos (rot) * k1 y = sin (rot) * k1 ## cinematică inversă pentru a obține unghiuri de la XYZ: rot = atan2 (y, x); x = x - cos (rot) * AXOFFSET; y = y - sin (putregai) * AXOFFSET; z = z - AZOFFSET-ZOFFSET; L1 = sqrt (x * x + y * y) - XOFFSET; L2 = sqrt ((L1) * (L1) + (z) * (z)); a = (z) / L2; b = (L2 * L2 + LOWERARMLEN * LOWERARMLEN - UPPERARMLEN * UPPERARMLEN) / (2 * L2 * LOWERARMLEN); c = (LOWERARMLEN * LOWERARMLEN + UPPERARMLEN * UPPERARMLEN - L2 * L2) / (2 * LOWERARMLEN * UPPERARMLEN); dreapta = (atan2 (a, sqrt (1-a * a)) + atan2 (sqrt (1-b * b), b)); left = atan2 (sqrt (1-c * c), c); ## ieșire calculată unghiuri disp ('Unghiuri de ieșire:') rot = rad2deg (rot) dreapta = rad2deg (dreapta) stânga = rad2deg (stânga)

Cu scriptul de mai sus aveți practic codul de implementare gata pentru cinematică înainte și înapoi.

Cinematica directă pe care o utilizați pentru a calcula unde veți ajunge cu un set dat de unghiuri motorii. Cinematica inversă va calcula (face inversul) ce unghiuri de motor aveți nevoie pentru a ajunge la poziția dorită x, y, z. Constrângerile asupra mișcării motorului trebuie apoi inserate, cum ar fi de ex. baza de rotație poate merge doar de la 0 la 359 de grade. În acest fel vă asigurați că nu veți merge la poziții care nu sunt fezabile.

Pasul 4: Rularea lucrului

Image
Image

Nu suntem chiar acolo cu implementarea bibliotecii cinematice, așa că nu pot furniza încă. Dar vă pot arăta un videoclip despre cum funcționează. Este destul de stabil și neted datorită utilizării rulmenților și transmisiei cu curea, pe lângă calitatea rezonabilă a unităților, care este aici plăcile uStepper S.

Pasul 5: efecte finale suplimentare

Efectori finali suplimentari
Efectori finali suplimentari
Efectori finali suplimentari
Efectori finali suplimentari

Am proiectat 3 efectoare suplimentare. Unul este pur și simplu un dispozitiv de prindere orizontal, altul se potrivește cu o cutie europeană obișnuită de bere sau sifon și, în cele din urmă, există un sistem de prindere cu vid care vă permite să vă încadrați pe o ceașcă de vid, pompă și supapă.

Toate vor fi sau sunt disponibile aici (fișiere 3D STL și instrucțiuni):

Recomandat: