CAFE

2014-2 입문설계

9주차 - 컵배달 로봇 - 집게 손 만들기

작성자한창호|작성시간14.09.30|조회수818 목록 댓글 0

출처: 고경철 교수님 블로그

(http://blog.joins.com/media/folderListSlide.asp?uid=kckohkoh&folder=207&list_id=13258356)

 

<< 컵배달 로봇 개요>>

1. 흰색바탕에 검은 테이프로 직선 주로 트랙을 만듭니다.
2. 스타트 라인과 엔드라인도 만듭니다.
3. 로봇은 스타트라인에 놓고 라인 중간 중간에는 여러개의 종이컵을 놓습니다.
4. 로봇을 리셋버튼을 눌러 출발시킵니다.
5. 트랙을 따라가다 컵을 감지하면 정지하고 컵을 집습니다.
6. 180도 회전하여 스타트 라인에 되돌아옵니다.
7. 스타트라인에 컵을 내려놓습니다.(두번째이상의 컵은 기존 컵위에 쌓습니다)
8. 다시 180도 회전하여 단계5를 반복합니다.(컵을 발견하지 못하고, 엔드라인에 도착하면 종료)

주의사항: 단계7에서 기존컵을 쓰러뜨리면 실격입니다.
평      가: 가장 많은 컵을 쓰러뜨리지 않고 쌓는 컵의 갯수(40), 그리고 컵을 집는 구조의 독창성(30), 발표(30)로 합니다.

 

 

 

 

 

---------------------------------------------------------------------------------------------------------------------

오늘 수업할 내용

1) 서보모터 동작하기

2) 집게손 만들기

3) 집게 손목 테스트 하기

 

---------------------------------------------------------------------------------------------------------------------

1) 서보모터 동작하기  (첨부파일 18ServoControl.zip )

 

서보모터_CM100.JPG 서보모터_CM100_자세히.JPG

 

서보모터는 회전각으로 제어되는 모터입니다. 따라서 명령값(30~300)을 주면, 기준각도를 중심으로, 30도에서 330도까지 움직입니다.

 

실행하면 다음과 같은 메뉴가 나오는데 j와 k를 눌러 테스트를 해본다.

If type 'j', then Ext Servo1 will be controlled!

If type 'k', then Ext Servo1 will be controlled!

 

Test CM-100 with Servo Module. Connect Servo on Port 3. Type position(30~300)=___

 

여기서 30에서 330 사이의 값을 입력한다. (현재위치를 고려하여, 절대편차가 30도 이상이도록 명령값을 주어야 한다. )

 

서보모터_30도.JPG 서보모터_90도.JPG

 

 

---------------------------------------------------------------------------------------------------------------------

2) 집게손 만들기

 

그리퍼원리1.JPG IMG_2500_2.PNG

IMG_2501_2.PNG IMG_2502.PNG

IMG_2501_2손목고정부.PNG IMG_2501_2손목고정부_서보모터.PNG

IMG_2501_2손목고정부_서보모터_몸체연결_완성.PNG IMG_2501_2손목고정부_서보모터_CLOSE&DOWN.PNG

 

 

---------------------------------------------------------------------------------------------------------------------

3) 집게 손 테스트  (첨부파일 FinalProject (2).zip)

 

다음 그림에서다시 CatchUpIt()함수와 DownInt()의 내용을 살펴보면, ServoControl()이란 함수를 호출하여, 순차적으로 집게와 손목의 위치의 명력각도값을 지령하는 것을 볼 수 있습니다.

#define  CLOSE 140   // 손 잡는 위치 값

#define  OPEN  30     // 손 여는 위치 값

#define  UP  180        // 팔 올리는 위치 값

#define  DOWN  260   // 팔 내리는 위치값

 

17.PNG

---------------------------------------------------------------------------------------------------------------------

 

If type 'i', then IR data will be indicated!
If type 'c', then robot will grip the cup and raise it!
If type 'd', then robot will down the cup and release it!
If type 'l', then robot will turn to left!
If type 'r', then robot will turn to right!

If type 'f', then robot will go forward!
If type 'b', then robot will go backward!

If type 't', then Now, line tracing mode!

 

'c'키를 치면 손목을 내리고, 집게로 컵을 잡고, 다시 손목을 들어 올리는 동작을 테스트하고,
'd'키를 치면 컵을 잡은 손목을 내리고, 집게를 벌려 컵을 놓고, 다시 손목을 들어올리는 동작을 테스트하도록 합니다.

't'를 누르면 정지 라인을 만나거나 가운데 IR센서에 의해 컵이 있을 경우 멈추고 180도 회전을 한다.

 

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼