요즘 베이블레이드라는 팽이 놀이가 아이들 사이에서 인기인가 보더군요.
[아이들 사이에서 인기라는 고테크 팽이 놀이 - 베이블레이드]
우리 아들 녀석도 어찌나 보채던지... 결국 하나 사주고, 뮤지컬도 다녀오고 그래도 성에 안차서 베이블레이드 경기장 - 베이스타디움도 하나 사왔더라구요.
그런데 베이스타디움이란 녀석이, 가격이 무색하게도 밋밋하고 볼품없는 플라스틱 쪼가리라...
[이거랑 팽이 합쳐서 몇 만원... 스티커라도 좀 주던가...]
그래도 아들 녀석은 좋다고 갖고 놉니다만, 제 성에 차질 않아서 살짝 개조를 해줬습니다. 이 참에 아들한테도 마느님한테도 점수 좀 따야죠.
아두이노 이용해서 조명 효과부터 넣어보겠습니다.
일단 남는 아두이노는 집에 널려 있고, 예전에 갖고 놀던 부품들을 뒤져보니 RGB LED Strip(APA102) 이 있네요.
[화려한 맛을 더해주는데 이만한게 없죠]
아두이노에 아래처럼 APA102 를 연결해 줬습니다.
- APA102 ==> 아두이노
- 빨간색 선 ==> Vin
- 검은색 선 ==> GND
- 파란색 선 ==> D11 (데이터 선)
- 녹색 선 ==> D12 (클럭 선)
아두이노용 APA102 라이브러리는 아래에서 받을 수 있습니다.
귀찮으시면 [스케치 - 라이브러리 포함하기 - 라이브러리 관리] 메뉴에서 apa102 검색하심 됩니다. APA102 항목에서 설치버튼 누르면 끝.
예제 폴더에 쓸만한 컬러 효과 내는 코드가 많네요.
RGB LED Strip 자체는 잘 동작합니다. 그런데 계속 같은 패턴으로 컬러만 변화하니까 재미가 없네요.
다행이 예전에 쓰고 남은 진동 센서가 있어서, 베이블레이드 팽이의 움직임을 감지해서 컬러 패턴과 밝기가 바뀔 수 있도록 만들어 줬습니다.
[진동센서. 알리에서 1~2$ 정도였던걸로...]
진동 센서는 아래처럼 연결해줍니다.
- 진동센서 ==> 아두이노
- + ==> 5V
- OUT ==> D7
- - ==> GND
연결이 완료된 모습입니다.
이제 소스코드 작성. 평소에는 Normal 모드로 은은한 무지개 빛 광채를 발산하다가 진동이 감지되면 BurstMode 로, 밝기도 상승하고 더 빠르고 화려하게 컬러가 변하도록 설정했습니다.
본문에 코드 넣기가 좀 그러네요. 필요하신 분은 아래 참고하세요.
http://www.hardcopyworld.com/gnuboard5/bbs/board.php?bo_table=project_hardcopy&wr_id=335
테스트는 성공적. 팽이가 경기장에 들어왔을 때 모드가 바뀔 수 있도록 진동 센서의 감도만 실험하면서 맞춰주면 됩니다.
이제 베이스타디움에 장착
APA102 RGB LED String - 1m 짜리면 딱 맞게 베이스타디움을 두를 수 있더군요.
베이스타디움 측면 2군데에 구멍을 내서 RGB LED Strip 만 외부에 보일 수 있도록 설치했습니다.
아두이노와 진동센서를 적당한 곳에 위치시키고, 글루건 떡칠. USB 케이블을 연결할 수 있도록 구멍을 내줬습니다.
베이블레이드 팽이 진동에 반응 잘하도록 진동 센서의 감도를 다시 한 번 조절해 주면 끝!!
아빠표 베이스타디움 - 빛의 경기장입니다.
플레이 영상은 여기
능력 있는 아빠를 둔 아들이 부럽습니다. 제 아들도 베이블레이드 팬인지라 남다르네요^^
저 정도는 5v 2a 보조배터리로도 충분합니다 ㅎㅎ
SR, 0B,Br / HS, 0B, AT 등등 들고 이번 주말도 마트에 대회나갑니다..