Arduino Uno 로 HC-06 블루투스 모듈과 L9110S 듀얼 모터 드라이버를 사용해서 스마트 카를 만들어
안드로이드 폰으로 아두이노 블루투스 컨트롤 어플을 사용해 무선으로 스마트카를 구동시켜 보는 프로젝트 입니다
아두이노 스마트카 차대 를 기본으로 해서 HC-06 블루투스 슬레이브 모듈, L9110S 듀얼모터 드라이버 그밖의 부품들을 사용해
아두이노 블루투스 스마트 카를 구성해 봅니다
(부품을 개별로 준비하기 번거롭다면 아두이노 블루투스 스마트 카 키트 도 손쉽게 구할 수 있습니다)
HC-06 블루투스 슬레이브 모듈
HC-06 블루투스 슬레이브 모듈은 다양한 무선 블루투스 프로젝트를 가능하게 합니다
Arduino(아두이노) 나 PC, 안드로이드 폰과 연결하여 다양한 프로젝트를 수행할 수 있습니다
무선이라 편리하며 Google 안드로이드 앱으로 다양하게 응용이 가능합니다
Arduino Uno 로 HC-06 블루투스 슬레이브 모듈을 사용해 LED 깜박이기
Arduino Uno 로 HC-06 블루투스 슬레이브 모듈을 사용해 AT커맨드 통신하기
Arduino Uno 로 HC-06 블루투스 슬레이브 모듈을 사용해 무선으로 코드 업로드 해보기
L9110S 듀얼 모터 드라이버
L9110 모터 컨트롤 드라이버 IC 가 2개 장착이 되어 있는 H-Bridge 듀얼 모터 드라이버 입니다
DC 2.5V-12V의 전압에서 동작이 가능하며, 2.5V-12V, 최대 0.8A 등급의 모터를 동작 시킬수 있습니다
아두이노 (Arduino) 등 다른 마이크로컨트롤러와 연결해서 간단하게 모터를 제어할수 있으며
두개의 DC 모터를 동시에 동작 시키거나, 한개의 2상 4선 스테핑 모터를 동작 시킬수 있습니다
사용된 부품
Arduino Uno R3
미니 브래드 보드
L9110S 듀얼 모터 드라이버
HC-06 블루투스 슬레이브 모듈
아두이노 스마트 카 차대
점퍼케이블
9V DC JACK
9V 배터리
AA배터리 4개
안드로이드 OS 스마트폰
사용된 키트
아두이노 블루투스 스마트 카 키트
구성 배선도
<연결방법>
L9110S드라이버의 `B-IA` -> 아두이노 우노R3의 '3번' 핀
L9110S드라이버의 `B-IB` -> 아두이노 우노R3의 '5번' 핀
L9110S드라이버의 `A-IA` -> 아두이노 우노R3의 '6번' 핀
L9110S드라이버의 `A-IB` -> 아두이노 우노R3의 '11번' 핀
HC-06의 'VCC' -> 아두이노 우노R3의 '5V'
HC-06의 'GND' -> 아두이노 우노R3의 'GND'
HC-06의 'TXD' -> 아두이노 우노R3의 '12번' 핀
HC-06의 'RXD' -> 아두이노 우노R3의 '13번' 핀
사용된 예제소스
Bluetooth_Smart_Car_HC-06_L9110S.zip
스마트폰 어플 설치 및 사용방법
스마트폰으로 블루투스를 사용해 스마트 카 를 제어하기 위해서 "Arduino Bluetooth Controller" 어플을 다운 받습니다
https://play.google.com/store/apps/details?id=eu.jahnestacado.arduinorc
위 링크에서 다운받거나 Google 플레이 스토어에서 "Arduino Bluetooth Controller" 로 검색해서 다운받아 설치합니다
설치가 끝나면 아이콘이 생깁니다
아이콘을 클릭해서 어플을 실행합니다 (어플을 실행하면 스마트폰 블루투스 기능을 실행하겠다는 메세지가 나옵니다, 실행하면 됩니다)
Proceed 를 눌러서 진행합니다
Scan for devices 를 눌러서 블루투스 모듈을 검색합니다 (null 이나 HC-06 이라는 이름으로 검색이 됩니다)
검색된 HC-06 디바이스를 선택하면 페어링을 시작합니다 (페어링시 초기 비밀번호는 0000 또는 1234 입니다)
페어링이 정상적으로 되면 전원만 공급되도 지속적으로 깜박이던 HC-06 블루투스 모듈의 동작 LED가 점등된 상태로 멈추게 됩니다
페어링이 끝나면 위 이미지 처럼 몇개의 메뉴가 나옵니다 스마트 카를 제어할 것이므로 "Controller Mode" 를 선택하면 됩니다
컨트롤 모드 실행 모습니다
(여기서 버튼 설정을 위해 세부메뉴를 눌러 줍니다, 스마트폰 마다 세부메뉴 버튼 위치가 다를수 있으니 잘 확인해 봅니다)
샘송 갤럭시 라서 하단 왼쪽을 눌러서 세부메뉴를 실행했습니다
세부메뉴 버튼을 누르면 위 이미지 처럼 세부 메뉴가 뜹니다, 버튼 설정을 위해 "Set Commands" 를 선택합니다
위 이미지 처럼 각각의 버튼 설정을 눌러서 방향 설정을 해줍니다
UP ARROW (전진) : f
DOWN ARROW (후진) : b
LEFT ARROW (좌회전) : l
RIGHT ARROW (우회전) : r
START BUTTON (정지) : s
편의상 START BUTTON 에다가 (정지) S 를 설정했습니다
테스트 하기 편한대로 세모나 네모 버튼에 정지 S를 선택해도 되고, 하고 싶은대로
f, b, l, r, s 가 버튼에 포함되도록 알파벳만 주의해서 설정하면 됩니다
주의사항
테스트 도중 갑자기 전원을 제거 한다거나 블루투스 모듈 통신이 끊어지면 HC-06 블루투스 모듈이 뻑이 날수 있습니다
뻑이나면 블루투스 연결도 안되고 동작 LED도 들어오지 않는 먹통 상태가 되버립니다
이 경우 블루투스 모듈의 VCC에 연결된 5V를 아두이노의 3.3V에 연결하면 다시 동작 LED가 깜박이면서 동작합니다
이때 다시 전원을 5V에 연결해 주고 스마트폰으로 다시 페어링을 해주면 됩니다
블루투스 모듈이 페어링이 되어 있는데 갑자기 전원을 제거해서 블루투스 모듈에 손상이 가지 않도록 각별히 주의 하도록 합시다
HC-06 블루투스 모듈은 여러가지 버전이 있고 버전에 따라서 위 프로젝트를 진행할 수 없는 경우도 있다는것을 알고 넘어 갑시다
프로젝트 동영상
동영상 처럼 전진, 후진, 좌회전, 우회전 정지 버튼을 눌러서 무선으로 스마트 카 를 간단하게 제어할 수 있습니다
HC-06 블루투스 모듈 자체가 그렇게 고사양의 블루투스 모듈이 아니라서 그런지 통신이 아주 깔끔하고 완벽하게 되지는 않지만
스마트폰을 사용해서 블루투스 통신 방식으로 스마트 카 를 제어해 보는 방식을 알아보고 테스트 해보는대는 크게 무리가 없는 것 같습니다
참고 포스팅
Arduino Uno 와 HC-SR04 초음파 센서, L298N 모터 드라이버 등을 사용한 장애물 회피 스마트 카 구성
'Arduino(아두이노) 활용 강좌' 카테고리의 다른 글
Arduino Uno 로 조이스틱 모듈을 사용해 마이크로 서보모터 2개를 제어해 보기 (0) | 2017.10.31 |
---|---|
Arduino Uno 로 MRP121 정전식 근접 터시센서 모듈과 스피커를 사용해 전자 피아노 만들어 보기 (0) | 2017.09.09 |
Arduino Uno 로 MAX7219 (8X8) 도트 매트릭스 모듈 2개를 사용해 눈동자 움직이는 모형 만들어 보기 (0) | 2017.08.10 |
Arduino Uno 로 GP2Y1014AU0F 광학먼지센서를 사용해서 실내 먼지(연기) 측정해 보기 (0) | 2017.08.05 |
Arduino Uno 로 1602 캐릭터 LCD를 사용해서 장애물 점프게임 만들어 보기 (0) | 2017.07.26 |
댓글