Indholdsfortegnelse:
- Trin 1: Påkrævede dele, 3D -udskrivning og samling
- Trin 2: Kinematik
- Trin 3: Kodning af kinematikken
- Trin 4: Kør sagen
- Trin 5: Yderligere sluteffektorer
Video: UStepper Robot Arm 4: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Dette er den 4. iteration af min robotarm, som jeg har udviklet som en applikation til vores uStepper stepper kontrolkort. Da robotten har 3 trinmotorer og en servo til aktivering (i dens grundkonfiguration) er den ikke begrænset til uStepper, men kan bruges med ethvert trinbræt.
Designet er baseret på en industriel palleteringsrobot - og er relativt enkel. Når det er sagt, har jeg brugt utallige timer på at komme med designet og optimere det både for nem montering, men også for at udskrive delene.
Jeg lavede designet med let tryk og enkel montering i tankerne. Ikke at der ikke er nogen måde at forbedre disse to parametre på, men jeg tror, jeg er nået langt. Desuden vil jeg gerne trække industriel robotteknologi ned på et niveau, hvor hobbyist kan følge den ved at vise, at den kan laves relativt enkel - også matematikken til at styre den!
Efterlad gerne en kommentar med konstruktiv feedback på både designet, men mest af alt om, hvordan jeg gør med at gøre det tilgængeligt for alle (især matematikken).
Trin 1: Påkrævede dele, 3D -udskrivning og samling
Grundlæggende er alt, hvad du behøver at vide, i monteringsvejledningen. Der er en detaljeret stykliste med både købte og trykte dele og en detaljeret samlevejledning.
3D -udskrivning udføres på en rimelig kvalitet 3D -printer (FDM) med laghøjde på 0,2 mm og 30 % udfyldning. Du kan finde den nyeste iteration af dele og instruktioner her:
Trin 2: Kinematik
For at få armen til at bevæge sig på en overskuelig måde skal du regne: OI har kigget mange steder efter en relativt enkel beskrivelse af kinematikken relateret til denne type robot, men jeg har ikke fundet en, som jeg tror var på et niveau, hvor de fleste mennesker kunne forstå det. Jeg har lavet min egen version af kinematikken udelukkende baseret på trigonometri og ikke de matrixforandringer, der kan virke ganske skræmmende, hvis du aldrig har arbejdet med de ting før - de er dog ganske enkle for netop denne robot, da det kun er 3 DOF.
Ikke desto mindre tror jeg, at min tilgang i det vedhæftede dokument er skrevet på en relativt letforståelig måde. Men tag et kig og se om det giver mening for dig!
Trin 3: Kodning af kinematikken
Kinematikken kan være svær at forstå selv med de beregninger, jeg har givet i førstnævnte. Så her er først og fremmest en Octave -implementering - Octave er et gratis værktøj med mange af de samme funktioner, der findes i 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 ('Kodeimplementering') disp ('Inputvinkler:') rot = deg2rad (30); højre = deg2rad (142,5); venstre = deg2rad (50); rad2deg (rot) rad2deg (højre) rad2deg (venstre) T1 = råd; #base T2 = højre; #skuler T3 = venstre; #elbue #FW kinematik for at få XYZ fra vinkler: disp ('Beregnet X, Y, Z:') z = ZOFFSET + sin (højre)*LOWERARMLEN - cos (venstre - (pi/2 - højre))*UPPERARMLEN + AZOFFSET k1 = sin (venstre - (pi/2 - højre))*UPPERARMLEN + cos (højre)* LOWERARMLEN + XOFFSET + AXOFFSET; x = cos (rot)*k1 y = sin (rot)*k1 ## invers kinematik for at få vinkler fra XYZ: rot = atan2 (y, x); x = x - cos (rot)*AXOFFSET; y = y - sin (rot)*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); højre = (atan2 (a, sqrt (1-a*a)) + atan2 (sqrt (1-b*b), b)); venstre = atan2 (sqrt (1-c*c), c); ## output beregnede vinkler disp ('Outputvinkler:') rot = rad2deg (rot) højre = rad2deg (højre) venstre = rad2deg (venstre)
Med ovenstående script har du i bund og grund implementeringsklar kode til fremad og baglæns kinematik.
Fremadgående kinematik, du bruger til at beregne, hvor du ender med et givet sæt motorvinkler. Invers kinematik vil derefter (gør den inverse) beregne, hvilke motorvinkler du skal bruge for at ende i en ønsket x, y, z position. Begrænsninger for motorisk bevægelse skal derefter indsættes, som f.eks. rotationsbase kan kun gå fra 0 til 359 grader. På denne måde sikrer du, at du ikke vil gå til stillinger, der ikke er mulige.
Trin 4: Kør sagen
Vi er ikke helt der med kinematikbibliotekets implementering, så jeg ikke kan levere endnu. Men jeg kan vise dig en video af, hvordan det kører. Det er ret stabilt og glat på grund af brugen af lejer og remtræk, udover rimelig kvalitet af drev, som her er uStepper S -pladerne.
Trin 5: Yderligere sluteffektorer
Jeg har designet 3 ekstra sluteffekter. Den ene er ganske enkelt en vandret griber, en anden passer til en almindelig europæisk øl- eller sodavandsdåse, og endelig er der et vakuumgribersystem, der giver dig mulighed for at passe på en vakuumkop, pumpe og ventil.
Alle vil være eller er tilgængelige her (3D STL-filer og instruktioner):
Anbefalede:
Rotary Encoder Controlled Robot Arm: 6 trin
Rotary Encoder Controlled Robot Arm: Jeg besøgte howtomechatronics.com og så den bluetooth kontrollerede robotarm der. Jeg kan ikke lide at bruge bluetooth, plus jeg så, at vi kan styre servo med roterende encoder, så jeg redesigner det, så jeg kan styre robotten arm brug roterende encoder og optag det
Pocket Sized Robot Arm MeArm V0.4: 20 trin (med billeder)
Pocket Sized Robot Arm MeArm V0.4: MeArm er en Pocket Sized Robot Arm. Det er et projekt startet i februar 2014, som har haft en fantastisk hurtig rejse til sin nuværende tilstand takket være det Open Development som et Open Hardware -projekt. Version 0.3 blev vist på Instructables tilbage
Chess Robot Raspberry Pi Lynxmotion AL5D Arm: 6 trin
Chess Robot Raspberry Pi Lynxmotion AL5D Arm: Byg denne skakrobot og se den slå alle! Det er ret let at bygge, hvis du kan følge instruktionerne om, hvordan du bygger armen, og hvis du i det mindste har et elementært kendskab til computerprogrammering og Linux . Mennesket, der spiller hvidt, får
ARM ROBOT MEXICANO: 4 trin
ARM ROBOT MEXICANO: DESING ARM ROBOT WELD: s
Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM: 4 trin
Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM: