본문 바로가기
메카넘 휠 로봇

메카넘 휠 로봇 - 블루투스 제어(mecanum wheel robot)

by 모빌리티키즈 2022. 12. 12.
728x90
반응형

메카넘 휠 로봇 플랫폼은 나에게 너무 비싸서 처음부터 로봇을 만들기로 결정했습니다.

다른 어떤 로봇과도 달리 메카넘 휠 로봇은 어려움 없이 이동할 수 있습니다. 이 기능은 독특하며 제자리에서 회전할 필요 없이 좁은 공간에서 쉽게 조작할 수 있습니다.

 

이 프로젝트에 필요한 부품:

  1. 아두이노 메가 2560 x1
  2. TB6612FNG 듀얼 모터 드라이버 캐리어 x2
  3. HC-06 블루투스 모듈 또는 이와 유사한 x1
  4. 브레드보드(최소 크기) x1
  5. Li-Po 배터리: 7.4V 2200mAh  11.1V 2800mAh x1
  6. SKYRC iMAX B6 미니 배터리 충전기 x1
  7. DC 모터 12V x4
  8. 메카넘 휠 x4
  9. 점퍼 및 케이블
  10. 볼트와 너트
  11. 플라스틱 섀시

1단계: 로봇 섀시 구축

가장 먼저 할 일은 플라스틱 판(153x260mm)을 자르는 것이었습니다. 다음 단계에서는 금속 튜브에 있는 DC 모터를 플라스틱 베이스에 나사로 고정했습니다. 금속 튜브 2개 대신 DC 모터용 금속 홀더 4개를 사용할 수도 있습니다. 로봇 섀시 구성의 마지막 단계는 바퀴를 맞추는 것이었습니다.

 

2단계: 메카넘 휠 장착

메카넘 휠은 올바른 방법으로 장착해야 합니다. 올바른 구성을 위해서는 4개의 메카넘 휠이 각각 위의 그림과 같은 방식으로 설정되어야 합니다. 각 바퀴의 상단 롤러 회전축은 로봇 섀시의 중심(지점 C)을 가로질러야 합니다.

3단계: 메카넘 로봇 회로 연결

시스템의 두뇌는 Arduino Mega 2560입니다. 모터 드라이버로 2개의 TB6612FNG 듀얼 모터 드라이버 캐리어를 사용했습니다. 이 모터 컨트롤러는 수용 가능한 입력 전압 범위(4.5~13.5V)와 연속 출력 전류(채널당 1A)가 충분합니다. 로봇은 Android 애플리케이션을 사용하여 블루투스를 통해 제어됩니다. 이 프로젝트에서는 인기 있는 저렴한 블루투스 모듈 HC-06을 사용했습니다. 전자 시스템에는 두 개의 전원이 장착되어 있습니다. 하나는 DC 모터(LiPo 배터리 11.1V, 1300mAh)를 공급하기 위한 것이고 다른 하나는 Arduino 및 블루투스 모듈(LiPo 배터리 7.4V, 1800mAh)을 공급하기 위한 것입니다.

전자 모듈의 모든 연결은 다음과 같습니다.

  1. 블루투스(예: HC-06)-> 아두이노 메가 2560
    • TXD - RX1 (19)
    • RXD - TX1 (18)
    • VCC - 5V
    • 접지 - 접지
  2. TB6612FNG 듀얼 모터 드라이버 -> Arduino Mega 2560
    • RightFrontMotor_PWMA - 2
    • LeftFrontMotor_PWMB - 3
    • RightRearMotor_PWMA - 4
    • LeftRearMotor_PWMB - 5
    • RightFrontMotor_AIN1 - 22
    • RightFrontMotor_AIN2 - 23
    • LeftFrontMotor_BIN1 - 24
    • LeftFrontMotor_BIN2 - 25
    • RightRearMotor_AIN1 - 26
    • RightRearMotor_AIN2 - 27
    • LeftRearMotor_BIN1 - 28
    • LeftRearMotor_BIN2 - 29
    • STBY - Vcc
    • VMOT - 모터 전압(4.5~13.5V) - LiPo 배터리의 11.1V
    • Vcc - 논리 전압(2.7~5.5) - Arduino의 5V
    • 접지 - 접지
  3. TB6612FNG 듀얼 모터 드라이버 -> DC 모터
    • MotorDriver1_A01 - RightFrontMotor
    • MotorDriver1_A02 - RightFrontMotor
    • MotorDriver1_B01 - LeftFrontMotor
    • MotorDriver1_B02 - LeftFrontMotor
    • MotorDriver2_A01 - RightRearMotor
    • MotorDriver2_A02 - RightRearMotor
    • MotorDriver2_B01 - 왼쪽 후방 모터
    • MotorDriver2_B02 - 왼쪽 후방 모터

4단계: 아두이노 메가 코드

이 프로젝트의 전체 코드는:

Mecanum_wheel_robot.ino
0.24MB

Arduino 프로그램은 새 명령(문자)이 블루투스를 통해 Android 앱에서 전송되었는지 여부를 기본 루프인 "void loop()"에서 확인합니다. 블루투스 시리얼에서 들어오는 문자가 있으면 프로그램은 "void processInput()" 함수의 실행을 시작합니다. 그런 다음 문자에 따라 이 함수에서 특정 방향 제어 함수가 호출됩니다(예: "r" 문자 함수의 경우 "void moveRight(int mspeed)"가 호출됨). 지정된 방향 제어 기능에서 각 모터는 "void motorControl" 기능을 통해 원하는 속도와 회전 방향으로 설정되어 로봇이 원하는 방향으로 이동합니다.

음성 명령을 사용하여 메카넘 휠 로봇을 제어할 수 있는 Arduino Mega 2560에 대한 저의 다른 코드 예제를 사용할 수도 있습니다: link . 또한 Google Play에서 Arduino용 BT 음성 제어 앱 을 다운로드해야 합니다 .

5단계: 메카넘 휠 로봇 제어

모든 메카넘 휠에는 휠 축과 45도 각도를 이루는 프리 롤러가 있습니다. 이 바퀴 디자인은 로봇이 위의 그림과 같이 어떤 방향으로든 움직일 수 있게 합니다. 파란색과 녹색 화살표는 각 메카넘 휠에 작용하는 마찰력의 방향을 나타냅니다. 네 바퀴를 모두 같은 방향으로 움직이면 앞으로 또는 뒤로 움직일 수 있습니다. 한 대각선에 있는 두 개의 바퀴를 같은 방향으로 제어하고 다른 두 개의 바퀴를 반대 방향으로 제어하면 두 번째 그림과 같이 옆으로 이동합니다(오른쪽으로 이동).

Google Play에서 메카넘 휠 로봇을 제어할 수 있는 내 Android 앱을 다운로드할 수 있습니다. 링크

안드로이드 앱을 사용하는 방법:

  • 메뉴 버튼 또는 3개의 수직 점을 누릅니다(안드로이드 버전에 따라 다름).
  • "장치 연결" 탭을 선택합니다.
  • "HC-06" 탭을 탭하면 잠시 후 "HC-06에 연결됨" 메시지가 표시됩니다.
  • 연결 후 로봇을 제어할 수 있습니다.
  • 블루투스 장치 HC-06이 보이지 않으면 "장치 검색" 버튼을 탭하세요.
  • 처음 사용할 때 기본 코드 "1234"를 입력하여 블루투스 장치를 페어링합니다.
728x90
반응형