Sadržaj:

UStepper Robot Arm 4: 5 koraka
UStepper Robot Arm 4: 5 koraka

Video: UStepper Robot Arm 4: 5 koraka

Video: UStepper Robot Arm 4: 5 koraka
Video: uStepper Robot Arm 4th generation 2024, Prosinac
Anonim
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4
Roka UStepper Robot 4

Ovo je četvrta iteracija moje robotske ruke, koju sam razvio kao aplikaciju za našu uStepper upravljačku ploču koraka. Budući da robot ima 3 koračna motora i servo za aktiviranje (u svojoj osnovnoj konfiguraciji), nije ograničen na uStepper, već se može koristiti sa bilo kojom upravljačkom pločom koraka.

Dizajn se temelji na industrijskom robotu za paletiziranje - i relativno je jednostavan. Uz to rečeno, proveo sam nebrojene sate osmišljavajući dizajn i optimizirajući ga radi lakšeg sastavljanja, ali i jednostavnosti ispisa dijelova.

Dizajnirao sam s lakoćom ispisa i jednostavnošću montaže na umu. Nije da nema načina da se poboljšaju ta dva parametra, ali mislim da sam daleko dogurao. Nadalje, želio bih spustiti industrijsku robotiku na razinu na kojoj je hobisti mogu slijediti pokazujući da se može učiniti relativno jednostavnom - također matematikom kojom se njome upravlja!

Slobodno ostavite komentar s konstruktivnim povratnim informacijama o dizajnu, ali ponajviše o tome kako ja to činim dostupnim svima (osobito matematici).

Korak 1: Potrebni dijelovi, 3D ispis i montaža

Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža
Potrebni dijelovi, 3D ispis i montaža

U osnovi sve što trebate znati nalazi se u priručniku za montažu. Postoji detaljna specifikacija s kupljenim i ispisanim dijelovima i detaljna uputa za montažu.

3D ispis vrši se na 3D pisaču razumne kvalitete (FDM) s visinom sloja od 0,2 mm i ispunom od 30 %. Najnoviju iteraciju dijelova i uputa možete pronaći ovdje:

Korak 2: Kinematika

Kinematika
Kinematika
Kinematika
Kinematika

Da biste učinili da se ruka pomiče na predvidljiv način, morate izračunati: OI su tražili mnogo mjesta za relativno jednostavan opis kinematike vezane za ovu vrstu robota, ali nisam našao onu za koju vjerujem da je bila na razini na kojoj je većina ljudi to mogla razumjeti. Napravio sam vlastitu verziju kinematike koja se temelji isključivo na trigonometriji, a ne na matričnim transformacijama koje mogu djelovati prilično zastrašujuće ako nikada prije niste radili na tim stvarima - međutim, vrlo su jednostavne za ovog robota jer ima samo 3 DOF.

Ipak mislim da je moj pristup u priloženom dokumentu napisan na relativno lako razumljiv način. Ali pogledajte i vidite ima li vama smisla!

Korak 3: Kodiranje kinematike

Kinematiku je teško shvatiti čak i uz izračune koje sam naveo u prethodnoj. Dakle, ovdje je prije svega implementacija Octave - Octave je besplatan alat s mnogim istim značajkama koje se nalaze u Matlabu.

L1o = 40; Zo = -70; L_2 = 73,0; Au = 188,0; Al = 182,0; Lo = 47,0; GORNJE = Au; LOWERARMLEN = Al; XOFFSET = Lo; ZOFFSET = L_2; AZOFFSET = Zo; AXOFFSET = L1o; disp ('Implementacija koda') disp ('Ulazni kutovi:') rot = deg2rad (30); desno = deg2rad (142,5); lijevo = deg2rad (50); rad2deg (truljenje) rad2deg (desno) rad2deg (lijevo) T1 = truljenje;#baza T2 = desno;#rame T3 = lijevo;#koljena#FW kinematika za dobivanje XYZ iz kutova: disp ('Izračunato X, Y, Z:') z = ZOFFSET + sin (desno)*LOWERARMLEN - cos (lijevo - (pi/2 - desno))*UPPERARMLEN + AZOFFSET k1 = sin (lijevo - (pi/2 - desno))*UPPERARMLEN + cos (desno)* LOWERARMLEN + XOFFSET + AXOFFSET; x = cos (trulež)*k1 y = sin (truljenje)*k1 ## inverzna kinematika za dobivanje kutova iz XYZ: rot = atan2 (y, x); x = x - cos (trulež)*AXOFFSET; y = y - sin (trulež)*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); desno = (atan2 (a, sqrt (1-a*a)) + atan2 (sqrt (1-b*b), b)); lijevo = atan2 (sqrt (1-c*c), c); ## izlaz izračunati kutovi disp ('Izlazni kutovi:') rot = rad2deg (rot) desno = rad2deg (desno) lijevo = rad2deg (lijevo)

S gornjom skriptom u osnovi imate kod za implementaciju spreman za kinematiku naprijed i natrag.

Proslijeđena kinematika koju koristite za izračunavanje gdje ćete završiti s datim skupom kutova motora. Inverzna kinematika će tada (učiniti obrnuto) izračunati koje kutove motora trebate završiti na željenom položaju x, y, z. Tada se moraju umetnuti ograničenja kretanja motora, poput npr. rotacijska baza može ići samo od 0 do 359 stupnjeva. Na ovaj način osiguravate da nećete ići na pozicije koje nisu izvedive.

Korak 4: Provjerite stvar

Image
Image

Nismo baš tu s implementacijom kinematičke knjižnice pa vam to još ne mogu pružiti. Ali mogu vam pokazati video kako to radi. Prilično je stabilan i gladak zbog upotrebe ležajeva i remenskog pogona, osim razumne kvalitete pogona što su ovdje uStepper S ploče.

Korak 5: Dodatni krajnji efekti

Dodatni krajnji efekti
Dodatni krajnji efekti
Dodatni krajnji efekti
Dodatni krajnji efekti

Dizajnirao sam 3 dodatna krajnja efektora. Jedan je jednostavno vodoravni hvatač, drugi odgovara običnoj europskoj limenci piva ili sode, a na kraju postoji i sustav vakuumskog hvataljke koji vam omogućuje da postavite na vakuumsku čašu, pumpu i ventil.

Sve će biti ili je dostupno ovdje (3D STL datoteke i upute):

Preporučeni: