이번 시간에는 아두이노와 종이로 만드는 로보트를 소개합니다. 꽤 오래전에 만들어 봤던 로보트인데요. 아두이노와 블루투스 모듈 그리고 스마트폰을 이용해서 조정하는 로봇입니다.
Step 1: 디자인
디자인은 블렌더를 이용해서 했습니다. 블렌더는 무료로 사용할 수 있는 3d CG 프로그램입니다. 사용한 블렌더의 버전은 2.7입니다. 기본적인 다리의 움직임은 키네틱아티스트인 테오얀센 선생님의 strandbeest의 구조입니다.
- 다운로드 블렌더
- 테오얀센 스트렌드비스트
- 참고기사 무료로(도) 사용할 수있는 무료 CAD 와 CG 소프트웨어 리스트
Step 2: 사용한 부품
이번 프로젝트에서 사용한 부품은 아래와 같습니다.
- One Arduino UNO
- One HC-06 (Bluetooth module)
- Two DC motors
- One L298N (DC motor driver)
Step 3: CNC컷터를 이용해 커팅
CNC페이터 컷터인 실루엣을 이용해서 프리컷을 만들었습니다.
Step 4: 코딩
#include <SoftwareSerial.h>
SoftwareSerial BT(7,6);
void setup()
{
BT.begin(9600);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
}
char a;
void loop()
{
if (BT.available()) {
a = (BT.read());
if (a == '0') {
BT.println("Beast is stopping!");
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
if (a == '1') {
BT.println("Beast is forwarding!");
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
}
if (a == '2') {
BT.println("Beast is backwarding!");
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
}
if (a == '3') {
BT.println("Beast is turning left!");
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
}
if (a == '4') {
BT.println("Beast is turning right!");
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
}
}
}
아두이노의 IDE를 이용해 프로그램을 했습니다. 블루투스모듈(HC-06) 을 이용해서 스마트폰의 앱과 커뮤니케이션을 합니다.
Step 5: 조립
조립한 순서는 아래와 같습니다.
①다리 * 8
②모터박스 * 2
③연결 지지대 * 2
④센터박스
⑤아두이노 케이블연결
조립이 끝나면, 아두이노와 건전지 블루투스모듈 그리고 모터드라이버를 센터박스에 넣고 센터박스를 닫습니다. 다 끝나면 아두이노와 컴퓨터를 연결해서 프로그램을 넣어 줍니다.
자세한 방법은 아래 비디오를 참조해 주세요.