적은 돈으로 로봇 팔을 만드는 방법

로봇 팔의 최종 결과 이미지

확실히 많은 분들이 SF 영화에서 과학자나 괴짜가 모든 것을 제어하고 마치 인간인 것처럼 물건을 집거나 기능을 수행할 수 있는 로봇 팔을 가지고 있는 모습을 본 적이 있을 것입니다. 무료 하드웨어와 Arduino 프로젝트 덕분에 점점 더 가능해지는 일입니다. 그런데 로봇 팔이란 무엇입니까? 이 가젯에는 어떤 기능이 있나요? 로봇 팔은 어떻게 만들어지나요? 아래에서 우리는 이 모든 질문에 답할 것입니다.

로봇 팔이란?

로봇 팔은 완전히 프로그래밍 할 수있는 전자베이스가있는 기계식 팔입니다.. 또한 이러한 유형의 암은 단일 요소 일 수 있지만 로봇 또는 기타 로봇 시스템의 일부일 수도 있습니다. 다른 유형의 기계 요소와 비교할 때 로봇 팔의 품질은 로봇 팔은 완전히 프로그래밍 할 수 있지만 나머지 장치는 그렇지 않습니다. 이 기능을 통해 우리는 다양한 작업을위한 단일 로봇 팔을 가질 수 있고, Arduino 보드와 같은 전자 보드 덕분에 수행 할 수있는 다양하고 다양한 활동, 활동을 수행 할 수 있습니다.

로봇 팔의 기능

아마도 로봇 팔의 가장 기본적인 기능은 보조 팔 기능입니다. 어떤 작업에서는 사람이 무언가를 만들거나 만들 수 있도록 일부 요소를 지원하는 세 번째 팔이 필요합니다. 이 기능을 위해 특별한 프로그래밍이 필요하지 않으며 장치 자체를 끄면됩니다.

로봇 팔은 위험한 작업의 대체물로 사용할 수 있도록 다양한 재료로 만들 수 있습니다. 오염 된 화학 원소를 조작하는 것과 같습니다. 로봇 팔은 또한 견고하고 저항력이있는 재질로 제작 된 한 적절한 압력이 필요한 무거운 작업이나 작업을 수행하는 데 도움이 될 수 있습니다.

건축에 필요한 재료

다음으로 모든 사람을 위해 빠르고 간단하며 경제적 인 방법으로 로봇 팔을 만드는 방법을 알려 드리겠습니다. 그러나이 로봇 팔은 영화에서 보는 팔만큼 강력하거나 유용하지는 않지만 작동 및 구성에 대해 배우는 데 도움이됩니다. 그래서, 이 장치를 만드는 데 필요한 재료는:

  1. 접시  Arduino UNO REV3 이상.
  2. 두 개의 개발 보드.
  3. 병렬로 연결된 XNUMX 축 서보
  4. 두 개의 마이크로 서보
  5. 병렬로 연결된 두 개의 아날로그 컨트롤
  6. 개발 보드 용 점퍼가있는 케이블.
  7. 마스킹 테이프
  8. 스탠드 용 판지 또는 폼 보드.
  9. 커터와 가위.
  10. 많은 인내심.

어셈블리

이 로봇 팔의 조립은 아주 간단합니다. 먼저 거품으로 두 개의 직사각형을 잘라 내야합니다. 각 직사각형은 로봇 팔의 일부가됩니다. 이미지에서 볼 수 있듯이이 직사각형은 우리가 원하는 크기 여야합니다. 그중 하나의 크기는 16,50 x 3,80cm입니다. 두 번째 직사각형의 크기는 11,40 x 3,80cm입니다..
로봇 팔에 서보 모터 배치.

직사각형이 있으면 각 직사각형 또는 스트립의 한쪽 끝에 각 서보 모터를 테이프로 붙입니다. 이 후 우리는 거품의 "U"를자를 것입니다. 이것은 인간의 손이 될 팔의 고정 부분 또는 끝 부분 역할을합니다. 이 조각을 가장 작은 직사각형의 서보 모터에 결합합니다.

로봇 팔 부분 결합

이제 우리는 하부 또는베이스를 만들어야합니다. 이를 위해 동일한 절차를 수행합니다. 다음 이미지와 같이 거품 사각형을 잘라 내고 XNUMX 축 서보 모터를 병렬로 배치합니다.:

로봇 팔베이스

이제 모든 모터를 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. 코드를 완료하기 전에 조이스틱이 작동하는지 확인하기 위해 관련 테스트를 수행합니다. 코드에 오류가 없음을 확인합니다.

이미 장착되어 있습니다. 이제 어떻게합니까?

확실히 많은 분들이 이런 유형의 로봇 팔을 기대하지 않으 셨지만, 그것이 무엇인지에 대한 기본, 비용 및 로봇을 만드는 방법을 가르치는 방법 때문에 이상적입니다. 여기에서 모든 것은 우리의 상상력에 속합니다. 즉, 재료, 서보 모터를 변경하고 프로그래밍 코드를 완성 할 수도 있습니다. 그것도 말할 것도없이 Arduino 보드 모델을 더 강력하고 완전한 모델로 변경하여 원격 제어를 연결할 수 있습니다. 아니면 스마트폰으로 작업하세요. 즉, 무료 하드웨어와 로봇 팔이 제공하는 광범위한 가능성입니다.

추가 정보 - Instructables