아두이노 코딩-170: Pixy Camera 컬러 오브젝트 tracking RC카 프로토타입 당일치기 디자인

in #kr5 years ago (edited)

라즈베리 PiCamera 에 의한 컬러 tracking 밸런싱 로봇과 비슷한 방식의 RC카 를 디자인해보기로 한다.

noname01.png

이 디자인 차체의 정체는 샤프 그래픽 계산기의 커버를 사용했다. 이런 형태로 FOMAX 재료로 제작할까 생각도 해보았지만 사실 두께 문제가 있어서 이 정도로 만들기는 쉽지 않아 보인다. 주변에 잘 살펴보면 괜찮은 재활용 플라스틱 하우징이 있을 수 흔히 있으므로 찾아보도록 하자.

앞 바퀴는 스틸 볼을 사용하는 구조이다. 2개의 뒷바퀴는 시중에서 쉽게 구할 수 있는 DC 모터에 의해 구동된다.

현재 PiCamera 밸런싱 로봇과 Pixy 카메라 RC 카 둘 다를 진행 중이지만 Pixy RC카는 정말 마음에 쏙 드는 만족스러운 차체를 구했기에 1시간 가량의 양면 테이프 접착 작업을 통해 지금 상태의 Mockup을 쉽게 완성할 수 있었다.

Pixy 카메라와 아두이노의 배선 연결은 SPI 인터페이스나 I2C 인터페이스를 사용할 수 있다. 하지만 Adafruit 모터쉴드를 사용하게 되면 아두이노의 디지털 핀 3번부터 11번까지를 점유해서 사용하므로 SPI 인터페이스 핀들과 중복되는 핀들이 있어 사용이 곤란해지므로 I2C 인터페이스를 사용하기로 하자.
I2C 인터페이스 핀은 RC카에서 아두이노 우노 보드 설치 위치를 감안하면 A4 핀과 A5핀이 가까우므로 모터쉴드 상에 납땜 작업을 하여 0V, 5V, A0∼A5 핀을 대상으로 점퍼선 작업이 가능하도록 한다.

noname02.png

Pixy 카메라의 인터페이스 핀들과 암-암 점퍼선을 사용하여 I2C 배선을 하도록 한다.

PixyMon Configure Interface 에서 SPI 대신 I2C를 선택하자. 반드시 이 부분에 주의하도록 하자.

noname03.png

출력 결과는 SPI 인터페이스 사용할 때와 동일하다.

noname04.png

직경이 5.5cm 인 청색공을 5cm에서 Pixy카메라가 보았을 때 PixyMon에서 본 Signatue 값의 중심이 (159, 99) 이며 가로 세로 크기가 (148, 126)으로 파악된다. 거리가 10cm 로 멀어지면 Signature 크기가 (110, 80) 크기로 작아진다.

이 정도 파악이 되었으면 청색 공을 tracking 할 수 있는 RC카 초안 수준은 도달한듯하다.

커버의 동영상을 통해서 RC카의 청색 공 tracking을 관찰해 보자.
아두이노 코드는 청색공이 멀어져서 Signature 가 작아지면 두 바퀴 모두 전진시키고 청색공이 5cm 근방으로 너무 가까워지면 두 바퀴 모두 후진시키다.
한편 청색공이 Pixy 카레라 오른쪽으로 치우치면 우회전을 위해 좌측 바퀴만 전진 시키고 그 반대면 우측 바퀴만 회전 시킨다. 아주 단순하게 코딩하여 테스트 베드에서 시험하여 보았는데 대략 생각하는데로 동작은 하였으나 아직 좌우측으로 청색공이 움직임에 따라 RC카가 제대로 tracking 할 수 있도록 코드를 다듬어야 할 듯하다.

아울러 Pixy 카메라와 Pan/Tilt 메카니즘이 1.5A 가량 전류를 소모하기 때문에 배터리로 동작시키려면 밸런싱 로봇처럼 별도로 전원을 설계해서 넣어야 할 것이다. 만약 리튬폴리머 배터리를 사용한다면 크기 문제로 인해 RC카 바디를 다시 디자인해야 할지도 모르겠다.

Sort:  

jjm.jpeg
짱짱맨 호출에 응답하여 보팅하였습니다.

짱짱맨은 저자응원 프로그램입니다. 더 많은 저자 분들에게 더 큰 혜택을 드리고자 스파임대 스폰서를 받고 있습니다. 스폰서 참여방법과 짱짱맨 프로그램에 관해서는 이 글을 읽어 주세요. 기업형 예비증인 북이오(@bukio)가 짱짱맨 프로그램을 운영하고 있습니다. 여러분의 증인 보팅은 큰 힘이 됩니다. Vote for @bukio

Coin Marketplace

STEEM 0.32
TRX 0.11
JST 0.034
BTC 66004.40
ETH 3243.40
USDT 1.00
SBD 4.19