프로젝트

원격 제어되는 로봇 손 저렴하게 만들기 - Make a Robotic Hand (Low Cost)

페이지 정보

작성자 버섯돌이 작성일17-04-08 00:41 조회6,260회 댓글0건

첨부파일

본문

 

 버섯돌이의 아두이노 기초

저렴하게 로봇 손 만들기 - 해외 영상

Created Date: 2017.04.06
Modified Date: 2017.04.06
revision 1

키워드 : 아두이노, 장난감, DIY, ROBOT, ROBOTIC HAND, 로봇 손

들어가며..
안녕하세요 버섯돌이 유재성입니다.

본문 수정 시 가급적 공유한 곳의 글 들도 함께 수정하려고 노력합니다만 누락되는 경우가 많습니다.^^;;;

잘 못된 내용의 수정도 있지만 틈틈이 내용을 다듬다 보니 최근에는 포스팅 후에도 수정이 잦네요.^^

작성한지 오래된 공유된 강좌는 가급적 원본 글도 함께 참고하시기 바랍니다.


오늘의 강좌는 좌측의 로봇 손을 센서가 장착된 장갑을 끼고 아두이노와 서보모터를 이용해서 제어하는 강좌입니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579
즉, 사진 우측처럼 생긴 장갑을 껴고 손가락을 움직이면 실제 로봇 팔도 같은 형태로 동작을 합니다.^^
개인적으로 오늘의 강좌가 좋은 이유는... 플랙서블 센서를 저렴하게 만들어서 활용하기 때문입니다.*^^*

지금까지 로봇 팔과 관련된 간단한 강좌를 몇 번 올렸었습니다.
특히나 아래의 골판지와 실로 만드는 로봇 팔 강좌의 경우 오늘의 강좌 원리를 이해하는데 많은 도움이 될 것입니다.
처음 보시는 분들은 먼저 읽어 본 후 간단하게 갖고 놀다가 아두이노로 응용해도 좋으리라 봅니다.
저도 간단하게 우유팩으로 따라서 만들었었는데 제 블로그에만 포스팅을 안 해놓은 것 같네요-_-;;;



아두이노로 제어되는 로봇 손 저렴하게 만들기..
아두이노로 제어되는 로봇 손을 만들기 위해 필요한 하드웨어 부품 목록입니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


제어의 가장 핵심이 되는 고가의 Flex Sensor를 저렴하게 만드는 방법은 아래 영상을 참고하시기 바랍니다.
출처 : https://youtu.be/b7zT94WV-Ek
Arduino Tutorial 30: Make a Flex Sensor for Robotic Hand (Cheap and Simple)


영상을 참고하셔서 스티로폼을 손가락 형태로 만든 후 낚싯줄로 묶어 줍니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


손가락 마디의 탄력을 위해서 만들어진 손가락 위에 고무줄을 글루건으로 접착합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


손가락 5개를 만든 후 스티로폼으로 자신의 손을 이용해서 손 모양의 틀을 만들어서 손가락을 연결합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579

 
클립을 이용해서 낚싯줄이 통과할 공간을 만들어 줍니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


골판지를 이용한 로봇 팔의 경우 사람이 직접 손으로 제어했지만...
오늘은 아두이노로 제어해야 하므로 팔목을 만들어서 각 실을 제어할 서보모터 5개를 장착합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


아두이노로 각 서보모터를 제어하면서 서보 혼의 위치 및 줄 길이 등을 적당히 튜닝합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


이제 원격에서 손을 제어하기 위해 착용할 장갑에 플렉스(휨 감지) 센서를 장착합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579


플렉스 센서는 구부려지는(휘어지는) 정도에 따라서 저항 값이 다르게 나옵니다.
그래서 주로 손가락의 구부림 등에 많이 사용되지만 가격이 만만하지 않습니다.^^;;
위에 나왔던 Flex 센서 만드는 강좌를 참고해서 저렴하게 만들거나 구매하시기 바랍니다.

각각의 휨 센서를 아두이노에 연결합니다.
b10e57c55b4bc074e54e8e8ab2851f49_1491579

 
간단한 제어 소스를 작성하고 튜닝하면 끝~
b10e57c55b4bc074e54e8e8ab2851f49_1491579
 

휨 센서가 없어서 사용해 보지 않았으나 기본적으로는 휨 센서의 저항값을 이용해서
서보모터를 제어하는 방식이기 때문에 다들 어렵지 않게 처리할 수 있으리라 봅니다.
 
보다 자세한 내용은 원본 영상을 보시기 바랍니다.

출처 : https://youtu.be/QOyghUxLdqE

Arduino Project 08 : Make a Robotic Hand (Low Cost)

 

 

아두이노 소스..

영상에 사용된 소스는 첨부 파일로 첨부했습니다.

#include <Servo.h>

Servo servo_1;
Servo servo_2;
Servo servo_3;
Servo servo_4;
Servo servo_5;

int flex_1 = 0;
int flex_2 = 1;
int flex_3 = 2;
int flex_4 = 3;
int flex_5 = 4;

void setup()  
{
  servo_1.attach(5);
  servo_2.attach(3);
  servo_3.attach(9);
  servo_4.attach(10);
  servo_5.attach(6);
}


void loop()
{
  int flex_1_pos;  
  int servo_1_pos;  
  flex_1_pos = analogRead(flex_1); 
  servo_1_pos = map(flex_1_pos, 1020, 1023, 180, 0); 
  servo_1_pos = constrain(servo_1_pos, 0, 180);  
  servo_1.write(servo_1_pos);

  int flex_2_pos;  
  int servo_2_pos;  
  flex_2_pos = analogRead(flex_2); 
  servo_2_pos = map(flex_2_pos, 1020, 1023, 180, 0); 
  servo_2_pos = constrain(servo_2_pos, 0, 180);  
  servo_2.write(servo_2_pos);
  

  int flex_3_pos;  
  int servo_3_pos;  
  flex_3_pos = analogRead(flex_3); 
  servo_3_pos = map(flex_3_pos, 1020, 1023, 0, 180); 
  servo_3_pos = constrain(servo_3_pos, 0, 180);  
  servo_3.write(servo_3_pos);
 

  int flex_4_pos;  
  int servo_4_pos;  
  flex_4_pos = analogRead(flex_4); 
  servo_4_pos = map(flex_4_pos, 1020, 1023, 180, 0); 
  servo_4_pos = constrain(servo_4_pos, 0, 180);  
  servo_4.write(servo_4_pos);
  

  int flex_5_pos;  
  int servo_5_pos;  
  flex_5_pos = analogRead(flex_5); 
  servo_5_pos = map(flex_5_pos, 1020, 1023, 180, 0); 
  servo_5_pos = constrain(servo_5_pos, 0, 180);  
  servo_5.write(servo_5_pos); 
}

 

구매정보..

아두이노 우노(UNO) 3.0 호환제품(CH340G USB 칩셋) - 헤더핀 + USB 케이블 포함

One set New 2016 - UNO R3 ATmega328P/CH340G MicroUSB. Compatible for Arduino UNO Rev 3.0

b10e57c55b4bc074e54e8e8ab2851f49_1491579
 

 

$1.40 - http://s.click.aliexpress.com/e/EUjufea

$1.40 - http://s.click.aliexpress.com/e/QrJaMNF

Free Shipping 1 pcs SG90 9g Mini Micro Servo for RC for RC 250 450 Helicopter Airplane Car

b10e57c55b4bc074e54e8e8ab2851f49_1491579
 

 

 

$1.82 - http://s.click.aliexpress.com/e/fyzv3Fi 

1pcs MG90S Metal gear Digital 9g Servo For Rc Helicopter plane boat car MG90 9G

b10e57c55b4bc074e54e8e8ab2851f49_1491579
 

 

마치며..

요즘 바쁜 것 같지 않은데 시간이 너무 빨리 지나가서 벌써 포스팅하려고 한지도 2달 이상이 흘러 버렸네요^^;;;

조금이라도 도움이 되었길 바랍니다.^^

 

 

[참고자료]
[목차] 버섯돌이와 함께하는 아두이노(Arduino) 기초 목차

[목차] 버섯돌이의 로봇관련 강좌 목록

http://blog.naver.com/dev4unet/220918519656


[목차] 버섯돌이와 함께하는 장난감 DIY 관련 목록

http://blog.naver.com/dev4unet/220947237692 


[목차] 버섯돌이와 함께하는 3D 프린터 기초

http://blog.naver.com/dev4unet/220881452573

 

[목차] 알리익스프레스 (AliExpress) 쇼핑 방법 정리


[목차] 버섯돌이의 최저가 전자 부품(제품) 목록(아두이노 / 전자 부품 / 완제품 등)

http://blog.naver.com/dev4unet/220948084984


[목차] 버섯돌이의 최저가 장난감 구매 정보 목록

[목차] 버섯돌이와 함께하는 전자 기초 관련 목록

http://blog.naver.com/dev4unet/220919577500 

 

[목차] 버섯돌이와 함께하는 드릴 등의 공구 관련 강좌 목록


End.


88x31.png

이 저작물은 크리에이티브 커먼즈 저작자표시-비영리 3.0 Unported 라이선스에 따라 이용할 수 있습니다.

댓글목록

등록된 댓글이 없습니다.


모바일 버전으로 보기