Кантип аз акчага робот колун жасоого болот

Робот колдун акыркы натыйжасынын сүрөтүСиздин көпчүлүгүңүз илимий фантастикалык кинолордо окумуштуунун же геектин робот колу бардыгын башкара тургандыгын, ал адамга окшош нерселерди көтөрүп же функцияларды аткара ала тургандыгын көргөнсүз. Free Hardware жана Arduino долбоорунун аркасында уламдан-улам мүмкүн болуп жаткан нерсе. Бирок роботтошкон кол деген эмне? Бул гаджеттин кандай функциялары бар? Роботтук кол кантип жасалат? Андан кийин биз ушул суроолордун баарына жооп беребиз.

Роботтошкон кол деген эмне

Роботтошкон кол - бул толугу менен программаланганга мүмкүнчүлүк берген электрондук негизи бар механикалык кол. Мындан тышкары, колдун бул түрү бир эле элемент болушу мүмкүн, бирок роботтун же башка роботтук системанын бөлүгү болушу мүмкүн. Механикалык элементтердин башка түрлөрүнө салыштырмалуу робот колунун сапаты ошол робот колу толугу менен программаланган, ал эми калган бөлүгү андай эмес. Бул функция ар кандай операциялар үчүн бир робот колго ээ болууга жана Arduino тактайлары сыяктуу электрондук тактайлардын жардамы менен жүзөгө ашырыла турган ар кандай жана ар кандай иш-аракеттерди жасоого мүмкүнчүлүк берет.

Роботтошкон колдун функциялары

Роботтошкон колдун эң негизги функциясы - бул жардамчы кол функциясы. Кээ бир операцияларда адам кандайдыр бир нерсени курушу же жасашы үчүн кандайдыр бир элементти колдогон үчүнчү кол керек болот. Бул функция үчүн атайын программалоонун кереги жок жана биз шайманды өзүбүз өчүрүшүбүз керек.

Роботтук куралдарды ар кандай материалдар менен курууга болот, бул аларды кооптуу операциялардын ордуна колдонууга мүмкүндүк берет. булгоочу химиялык элементтер менен иштөө сыяктуу. Роботтоштурулган кол күчтүү жана туруктуу материалдан турса, оор жумуштарды же жетиштүү басым талап кылган жумуштарды аткарууга жардам берет.

Анын курулушу үчүн керектүү материалдар

Андан кийин биз сизге робот колун тез, жөнөкөй жана үнөмдүү курууну баарына үйрөтөбүз. Бирок бул роботтошкон кол биз көргөн тасмалардай күчтүү же пайдалуу болбойт, тескерисинче, анын иштеши жана курулушу жөнүндө билүүгө кызмат кылат. Демек, биз бул шайманды куруу үчүн керек болот материалдар:

  1. Табак  Arduino UNO REV3 же андан жогору.
  2. Эки өнүгүү тактасы.
  3. Параллель эки огу сервос
  4. Эки микро сервос
  5. Параллель эки аналогдук башкаруу
  6. Өнүктүрүү такталары үчүн секиргичи бар кабелдер.
  7. скотч
  8. Стенд үчүн картон же пенопласт такта.
  9. Кескич жана кайчы.
  10. Чыдамдуулук.

Ассамблея

Бул роботтук колдун куралышы кыйла жөнөкөй. Алгач көбүк менен эки тик бурчтукту кесишибиз керек; бул тик бурчтуктардын ар бири робот колунун бөлүктөрү болот. Сүрөттөрдөн көрүнүп тургандай, бул тик бурчтуктар биз каалаган өлчөмдө болушу керек, бирок сунуш кылынат алардын биринин көлөмү 16,50 х 3,80 см. жана экинчи тик бурчтуктун көлөмү 11,40 х 3,80 см.
Сервомоторду роботтун колуна жайгаштыруу.

Бизде тик бурчтуктар болгондон кийин, ар бир тик бурчтуктун же тилкенин бир четине ар бир сервомоторду скотч менен чаптайбыз. Муну кылгандан кийин, биз "U" көбүгүн кесип салабыз. Бул адам үчүн кол боло турган колдун кармоочу бөлүгү же учу бөлүгү катары кызмат кылат. Биз бул бөлүктү эң кичинекей тик бурчтуктагы сервомоторго бириктиребиз.

Робот колунун бөлүктөрүн бириктирүү

Эми биз төмөнкү бөлүгүн же негизин жасашыбыз керек. Бул үчүн биз ушул эле процедураны жүргүзөбүз: биз көбүктүн квадратын кесип, эки огу серво кыймылдаткычтарын төмөнкү сүрөттөгүдөй параллель жайгаштырабыз:

Роботтук кол базасы

Эми биз бардык моторлорду Arduino тактасына туташтырышыбыз керек. Алгач, биз өнүгүү тактасына жана муну Arduino тактасына туташтыруубуз керек. Кара зымды GND пинге, кызыл зымды 5V пинге жана сары зымдарды -11, -10, 4 жана -3кө туташтырабыз. Ошондой эле биз робот колдун джойстиктерин же башкаруу элементтерин Arduino тактасына туташтырабыз, бул учурда сүрөттө көрсөтүлгөндөй:

робот колун туташтыруу схемасы

Баарын бириктирип, чогултуп алгандан кийин, биз Arduino тактасына программаны өткөрүп беришибиз керек, ал үчүн Arduino тактасын компьютерге же ноутбукка туташтыруу керек болот. Программаны Arduino тактасына өткөрүп бергенден кийин, буга ынануу керек кабелдерди Arduino тактасына туташтырыңыз, бирок биз ар дайым өнүгүү тактасын улантып, баарын бөлүп алабыз, эгерде биз аны үйрөнсөк гана болот.

Иштөө үчүн керектүү программа

Роботтошкон колубузду жасап бүтүргөндөй сезилгенибиз менен, чындык алдыда дагы көп нерсе бар жана эң негизгиси. Роботтошкон колубузга жашоо берген программаны түзүү же иштеп чыгуу, ансыз сервомоторлор жөнөкөй саат механизмдери болуп, маанисиз айланып кетишет.

Бул Arduino тактасын компьютерибизге туташтырып, программаны ачуу менен чечилет Ардуино IDE, биз компьютерди доскага туташтырып, бош файлга төмөнкү кодду жазабыз:

#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 ("----------------");

}

Биз аны сактап, андан кийин табакка жиберебиз Arduino UNO. Код менен бүтөөрдөн мурун, джойстиктердин иштешин текшерүү үчүн тиешелүү тесттерди өткөрөбүз жана коддо эч кандай ката жок экендигин.

Менде буга чейин эле орнотулган, эми эмне?

Силердин көпчүлүгүңөр роботтошкон колдун мындай түрүн күткөн эмессиңер, бирок анын негизи, чыгымдары жана роботту кантип жасоону үйрөтүү ыкмасы менен идеалдуу. Бул жерден баары биздин кыялга таандык. Башкача айтканда, биз материалдарды, серво кыймылдаткычтарын өзгөртүп, ал тургай программалоо кодун толуктай алабыз. Бул дагы айтпаса деле түшүнүктүү Ардуино тактасынын моделин алыстан башкарууну туташтыра турган кубаттуу жана толук моделге өзгөртө алабыз же смартфон менен иштөө. Кыскача айтканда, Free Hardware жана робот курал-жарактары сунуш кылган кеңири мүмкүнчүлүктөр.

Кошумча маалымат - Instructables


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

Комментарий, өзүңүз калтырыңыз

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.

  1.   Хорхе Гарсиа ал мындай деди:

    Албетте, 3D басып чыгаруу чоң нерселерге жол ачат. Мен өзүмдүн дизайным боюнча Lion 2 менен иштештим жана натыйжалар мени аябай суктандырды. Бул жөнүндө окуу сунушталгандан бери http://www.leon-3d.es Ал буга чейин эле менин көңүлүмдү буруп, аны сынап көрүп, өзүн-өзү тегиздеп, акыркы жыйынтыктагы деталдарга күбө болгондо, мен кандай жакшы инвестиция салганымды билдим.