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, Juli
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

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 osnovnoj konfiguraciji), on 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 paletiranje - i relativno je jednostavan. Uz to rečeno, proveo sam nebrojeno mnogo sati osmišljavajući dizajn i optimizirajući ga radi lakšeg sastavljanja, ali i lakšeg ispisa dijelova.

Dizajn sam radio s lakoćom ispisa i jednostavnošću montaže na umu. Nije da ne postoji način da se poboljšaju ta dva parametra, ali mislim da sam daleko dogurao. Nadalje, želio bih spustiti industrijsku robotiku na nivo na kojem je hobisti mogu slijediti pokazujući da se to može učiniti relativno jednostavnim - ujedno i matematikom za kontrolu!

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

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

Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža
Potrebni dijelovi, 3D štampanje i montaža

U osnovi sve što trebate znati nalazi se u priručniku za montažu. Postoji detaljna specifikacija sa kupljenim i štampanim dijelovima i detaljno uputstvo za montažu.

3D štampanje se vrši na 3D štampaču razumnog kvaliteta (FDM) sa visinom sloja od 0,2 mm i ispunom od 30 %. Najnoviju iteraciju dijelova i uputstava možete pronaći ovdje:

Korak 2: Kinematika

Kinematika
Kinematika
Kinematika
Kinematika

Da biste učinili da se ruka kreće na predvidljiv način, morate matematički proučiti: OI je tražio mnogo mjesta za relativno jednostavan opis kinematike vezane za ovu vrstu robota, ali nisam našao onu za koju vjerujem da je bila nivo na kojem bi 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 su samo 3 DOF.

Ipak mislim da je moj pristup u priloženom dokumentu napisan na relativno lako razumljiv način. No, pogledajte ima li smisla za vas!

Korak 3: Kodiranje kinematike

Kinematiku je teško shvatiti čak i uz prorač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; UPPERARMLEN = Au; LOWERARMLEN = Al; XOFFSET = Najniže; ZOFFSET = L_2; AZOFFSET = Zo; AXOFFSET = L1o; disp ('Implementacija koda') disp ('Ulazni uglovi:') 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 dobijanje uglova 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 uglovi disp ('Izlazni uglovi:') rot = rad2deg (trulež) desno = rad2deg (desno) lijevo = rad2deg (lijevo)

Sa gornjim skriptom u osnovi imate kod za implementaciju spreman za naprednu i nazadnu kinematiku.

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 da biste završili na željenoj poziciji x, y, z. Tada se moraju umetnuti ograničenja kretanja motora, poput npr. rotacijska baza može ići samo od 0 do 359 stepeni. Na ovaj način ćete osigurati da nećete ići na pozicije koje nisu izvodljive.

Korak 4: Provjerite stvar

Image
Image

Nismo baš tu s implementacijom kinematičke biblioteke, pa to još ne mogu pružiti. Ali mogu vam pokazati video kako radi. Prilično je stabilan i gladak zbog upotrebe ležajeva i remenskog pogona, pored razumnog kvaliteta pogona koji je 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 za pivo ili sodu, a na kraju postoji i sistem 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čuje se: