Hoe je met weinig geld een robotarm bouwt

Afbeelding van het uiteindelijke resultaat van de robotarmVelen van jullie hebben vast wel in sciencefictionfilms gezien hoe de wetenschapper of nerd een robotarm heeft die alles bestuurt en die voorwerpen kan oppakken of functies kan uitvoeren alsof het een menselijke persoon is. Iets dat dankzij Free Hardware en het Arduino Project steeds meer mogelijk wordt. Maar wat is een robotarm? Welke functies heeft deze gadget? Hoe wordt een robotarm gebouwd? Vervolgens gaan we al deze vragen beantwoorden.

Wat is een robotarm

Een robotarm is een mechanische arm met een elektronische basis waardoor hij volledig programmeerbaar is. Bovendien kan dit type arm een ​​enkel element zijn, maar het kan ook onderdeel zijn van een robot of ander robotsysteem. De kwaliteit van een robotarm in vergelijking met andere soorten mechanische elementen is dat een robotarm is volledig programmeerbaar, terwijl de rest van het apparaat dat niet is. Deze functie stelt ons in staat om een ​​enkele robotarm te hebben voor verschillende bewerkingen en om verschillende en verschillende activiteiten uit te voeren, activiteiten die kunnen worden uitgevoerd dankzij elektronische borden zoals Arduino-borden.

Functies van een robotarm

Misschien wel de meest basale functie van een robotarm is de hulparmfunctie. Bij sommige operaties hebben we een derde arm nodig die een bepaald element ondersteunt, zodat iemand iets kan bouwen of creëren. Voor deze functie is geen speciale programmering nodig en hoeven we alleen het apparaat zelf uit te schakelen.

Robotarmen kunnen worden gebouwd met verschillende materialen waardoor ze kunnen worden gebruikt als vervanging voor gevaarlijke operaties zoals de manipulatie van vervuilende chemische elementen. Een robotarm kan ons ook helpen bij het uitvoeren van zware taken of taken die voldoende druk vereisen, zolang deze maar is gemaakt van sterk en bestendig materiaal.

Materialen die nodig zijn voor de constructie

Vervolgens gaan we je leren hoe je op een snelle, eenvoudige en economische manier voor iedereen een robotarm kunt bouwen. Deze robotarm zal echter niet zo krachtig of nuttig zijn als de armen die we in de films zien, maar zal dienen om meer te weten te komen over de werking en constructie ervan. Zodat, de materialen die we nodig hebben om dit apparaat te bouwen zijn:

  1. Een bord  Arduino UNO REV3 of hoger.
  2. Twee ontwikkelborden.
  3. Twee assige servo's parallel
  4. Twee microservo's
  5. Twee analoge controles parallel
  6. Startkabels voor ontwikkelborden.
  7. band
  8. Karton of schuimkarton voor op de standaard.
  9. Een cutter en een schaar.
  10. Veel geduld.

bijeenkomst

De montage van deze robotarm is vrij eenvoudig. Eerst moeten we met het schuim twee rechthoeken uitsnijden; elk van deze rechthoeken zal deel uitmaken van de robotarm. Zoals u in de afbeeldingen kunt zien, moeten deze rechthoeken de gewenste grootte hebben, hoewel dat wordt aanbevolen de afmeting van een ervan is 16,50 x 3,80 cm. en de tweede rechthoek heeft de volgende afmeting 11,40 x 3,80 cm.
Plaatsing van de servomotor op de robotarm.

Zodra we de rechthoeken hebben, zullen we aan het ene uiteinde van elke rechthoek of strook elke servomotor afplakken. Nadat je dit hebt gedaan, we snijden een "U" van schuim. Dit zal dienen als een vasthouddeel of einddeel van de arm, wat voor een mens de hand zou zijn. We zullen dit stuk verbinden met de servomotor die zich in de kleinste rechthoek bevindt.

Samenvoegen met de delen van de robotarm

Nu moeten we het onderste deel of de basis maken. Hiervoor voeren we dezelfde procedure uit: we snijden een vierkant schuim uit en plaatsen de twee assige servomotoren parallel zoals in de volgende afbeelding:

Robotarm basis

Nu moeten we alle motoren op het Arduino-bord aansluiten. Maar eerst moeten we de verbindingen met het ontwikkelbord verbinden en dit met het Arduino-bord. We zullen de zwarte draad verbinden met de GND-pin, de rode draad zullen we verbinden met de 5V-pin en de gele draden met -11, -10, 4 en -3. We zullen ook de joysticks of bedieningselementen van de robotarm verbinden met het Arduino-bord, in dit geval zoals de afbeelding aangeeft:

robotarm aansluitschema

Zodra we alles hebben aangesloten en gemonteerd, moeten we het programma doorgeven aan het Arduino-bord, waarvoor we het Arduino-bord op de computer of laptop moeten aansluiten. Als we het programma eenmaal hebben doorgegeven aan het Arduino-bord, moeten we daar voor zorgen sluit de kabels aan op het Arduino-bord, hoewel we altijd door kunnen gaan met het ontwikkelbord en alles demonteren, het laatste als we het maar willen leren.

Software vereist voor gebruik

Hoewel het lijkt alsof we klaar zijn met het bouwen van een robotarm, is de waarheid dat er nog veel te wachten staat en het allerbelangrijkste. Een programma maken of ontwikkelen dat onze robotarm tot leven brengt, want zonder dit zouden de servomotoren niet ophouden eenvoudige klokmechanismen te zijn die zonder betekenis draaien.

Dit is opgelost door het Arduino-bord op onze computer aan te sluiten en we openen het programma Arduino IDE, we verbinden de computer met het bord en schrijven de volgende code in een leeg bestand:

#include <Servo.h>

const int servo1 = 3;       // first servo

const int servo2 = 10;      // second servo

const int servo3 = 5;       // third servo

const int servo4 = 11;      // fourth servo

const int servo5 = 9;       // fifth servo

const int joyH = 2;        // L/R Parallax Thumbstick

const int joyV = 3;        // U/D Parallax Thumbstick

const int joyX = 4;        // L/R Parallax Thumbstick

const int joyP = 5;        // U/D Parallax Thumbstick

const int potpin = 0;      // O/C potentiometer

int servoVal;           // variable to read the value from the analog pin

Servo myservo1;  // create servo object to control a servo

Servo myservo2;  // create servo object to control a servo

Servo myservo3;  // create servo object to control a servo

Servo myservo4;  // create servo object to control a servo

Servo myservo5;  // create servo object to control a servo

void setup() {

// Servo

myservo1.attach(servo1);  // attaches the servo

myservo2.attach(servo2);  // attaches the servo

myservo3.attach(servo3);  // attaches the servo

myservo4.attach(servo4);  // attaches the servo

myservo5.attach(servo5);  // attaches the servo

// Inizialize Serial

Serial.begin(9600);

}

void loop(){

servoVal = analogRead(potpin);

servoVal = map(servoVal, 0, 1023, 0, 179);

myservo5.write(servoVal);

delay(15);

// Display Joystick values using the serial monitor

outputJoystick();

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyH);

servoVal = map(servoVal, 0, 1023, 0, 180);     // scale it to use it with the servo (result  between 0 and 180)

myservo2.write(servoVal);                         // sets the servo position according to the scaled value

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyV);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo1.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyP);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo4.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

// Read the horizontal joystick value  (value between 0 and 1023)

servoVal = analogRead(joyX);

servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)

myservo3.write(servoVal);                           // sets the servo position according to the scaled value

delay(15);                                       // waits for the servo to get there

/**

* Display joystick values

*/

void outputJoystick(){

Serial.print(analogRead(joyH));

Serial.print ("---");

Serial.print(analogRead(joyV));

Serial.println ("----------------");

Serial.print(analogRead(joyP));

Serial.println ("----------------");

Serial.print(analogRead(joyX));

Serial.println ("----------------");

}

We bewaren het en daarna sturen we het naar het bord Arduino UNO. Voordat we eindigen met de code, zullen we de relevante tests uitvoeren om te controleren of de joysticks werken en dat de code geen fouten bevat.

Ik heb het al gemonteerd, wat nu?

Velen van jullie hadden dit type robotarm zeker niet verwacht, maar het is ideaal vanwege de basisprincipes van wat het is, de kosten die het heeft en de manier om te leren hoe je een robot moet bouwen. Vanaf hier behoort alles tot onze verbeelding. Dat wil zeggen, we kunnen de materialen, de servomotoren veranderen en zelfs de programmeercode voltooien. Dat behoeft geen betoog We kunnen het Arduino-bordmodel vervangen door een krachtigere en completere versie waarmee we een afstandsbediening kunnen aansluiten of werk met de smartphone. Kortom een ​​breed scala aan mogelijkheden van Free Hardware en robotarmen.

Meer informatie - Instructables


De inhoud van het artikel voldoet aan onze principes van redactionele ethiek. Klik op om een ​​fout te melden hier.

Een opmerking, laat de jouwe achter

Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   Jorge Garcia zei

    3D-printen is absoluut de deur naar geweldige dingen. Ik heb met een Lion 2 aan mijn eigen ontwerpen gewerkt en de resultaten hebben me gefascineerd. Omdat ik werd aanbevolen om erover te lezen in http://www.leon-3d.es Het trok al mijn aandacht en toen ik het probeerde en getuige was van de zelfnivellering en de details in het eindresultaat, wist ik wat een goede investering ik had gedaan.