산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

다블(Dabble) 앱으로 제어하는 4륜 아두이노 로봇 만들기

부품 및 소모품

부품 수량
아두이노 우노 (Arduino UNO) 1
브레드보드 1
DC 모터 4
HC-05 블루투스 모듈 1
점퍼 와이어 1
L293D 듀얼 H-브리지 모터 드라이버 (TI) 1
DC 터미널 블록 1
모터 마운트 1세트
바퀴 1세트

앱 및 온라인 서비스

프로젝트 개요

아두이노 우노와 L293D 모터 드라이버, HC-05 블루투스 모듈을 사용하여 스마트폰 앱(Dabble)으로 무선 제어하는 4륜 로봇을 제작합니다. Dabble의 게임패드 모듈을 이용해 직관적인 조작이 가능합니다.

제작 단계

1단계: 차체 조립

  1. 섀시를 뒤집고 모터 마운트 4개를 M3 볼트/너트로 고정
  2. DC 모터 4개를 마운트에 M2 볼트/너트로 장착
  3. 각 모터 축에 바퀴 장착
  4. 조립체 뒤집기 → 차체 완성

2단계: 브레인 장착 및 배선

아두이노 우노를 차체에 고정하고 브레드보드로 회로 구성:

3단계: 블루투스 모듈 연결

4단계: 외부 배터리 연결

DC 터미널 블록 또는 DC 잭을 통해 모터 구동용 외부 배터리 연결. 아두이노와 GND 공통 필수.

아두이노 코드

#define CUSTOM_SETTINGS
#define INCLUDE_GAMEPAD_MODULE
#include <Dabble.h>

#define motor1_en 10
#define motor2_en 11
#define motor1_dir1 4
#define motor1_dir2 5
#define motor2_dir1 6
#define motor2_dir2 7

void setup() {
  Serial.begin(9600);
  Dabble.begin(38400);  // HC-05 보드레이트 (UNO는 38400 이하 권장)
  for (unsigned int i = 4; i < 8; i++) {
    pinMode(i, OUTPUT);
  }
  pinMode(motor1_en, OUTPUT);
  pinMode(motor2_en, OUTPUT);
}

void loop() {
  Dabble.processInput();
  
  if (GamePad.isUpPressed()) {
    Serial.print("UP");
    forward();
  } else if (GamePad.isDownPressed()) {
    Serial.print("DOWN");
    backward();
  } else if (GamePad.isLeftPressed()) {
    Serial.print("Left");
    left();
  } else if (GamePad.isRightPressed()) {
    Serial.print("Right");
    right();
  } else {
    Serial.println("stop");
    Stop();
  }
}

void forward() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, HIGH);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, HIGH);
  digitalWrite(motor2_dir2, LOW);
}

void backward() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, HIGH);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, HIGH);
}

void left() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, HIGH);
  digitalWrite(motor2_dir1, HIGH);
  digitalWrite(motor2_dir2, LOW);
}

void right() {
  analogWrite(motor1_en, 255);
  analogWrite(motor2_en, 255);
  digitalWrite(motor1_dir1, HIGH);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, HIGH);
}

void Stop() {
  analogWrite(motor1_en, 0);
  analogWrite(motor2_en, 0);
  digitalWrite(motor1_dir1, LOW);
  digitalWrite(motor1_dir2, LOW);
  digitalWrite(motor2_dir1, LOW);
  digitalWrite(motor2_dir2, LOW);
}

다블(Dabble) 앱 사용법

  1. 구글 플레이에서 "Dabble" 설치
  2. 앱 실행 → 블루투스 연결 (HC-05 페어링 후 연결)
  3. 모듈 메뉴에서 "Gamepad" 선택
  4. 디지털 모드에서 좌측 방향키 사용:
    • 위: 전진
    • 아래: 후진
    • 좌: 좌회전
    • 우: 우회전

확장 아이디어

Dabble은 게임패드 외에도 조이스틱, 가속도계, 음성 제어, LED 제어, 핀 모니터링, 데이터 로깅 등 다양한 모듈을 제공합니다. 이를 활용해 로봇 기능을 확장할 수 있습니다.

제조공정

  1. 블루투스 제어 라즈베리 파이 로봇 만들기 - 오디오 피드백 포함
  2. 아두이노 & 라즈베리 파이로 인터넷 제어 영상 스트리밍 로봇 만들기
  3. 파이썬으로 와이파이 제어 라즈베리파이 로봇 만들기 – 단계별 가이드
  4. 아두이노 메가에서 푸시 버튼으로 PWM을 이용해 LED 밝기 제어하기
  5. 라즈베리파이 모터 쉴드로 만드는 안드로이드 제어 원격 주행 로봇
  6. 서보 모터 구동 장애물 회피 로봇: 아두이노 & HC-SR04로 제작하기
  7. 아두이노 우노로 자율 주행 라인 트레이서 로봇 만들기
  8. 아두이노 메가 기반 닌텐도 눙크 컨트롤 6자유도 로봇 암 키트
  9. 아두이노 나노로 만드는 음성 제어 로봇 - 블루투스와 안드로이드 앱 활용
  10. MobBob: 아두이노 로봇 직접 만들기, 안드로이드 스마트폰으로 매끄럽게 제어