ESP8266 - 자동차 | ESP8266 - Car
ESP8266을 처음 사용해 보는 경우 시도해 볼 수 있는 가장 멋진 것 중 하나는 로봇 자동차를 만드는 것입니다. 이 가이드에서는 ESP8266을 사용하여 로봇 자동차를 만들고 IR 리모컨으로 제어하는 방법을 배울 것입니다. 블루투스 로봇 자동차를 만드는 방법은 다른 튜토리얼에서 배울 것입니다.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | RC Car | 쿠팡 | Amazon | |
1 | × | L298N Motor Driver Module | 쿠팡 | Amazon | |
1 | × | IR Remote Controller Kit | Amazon | |
1 | × | CR2025 Battery (for IR Remote controller) | Amazon | |
1 | × | 1.5V AA Battery (for ESP8266 and Car) | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
로봇 자동차에 대하여
ESP8266 맥락에서, 로봇 자동차는 종종 로봇 자동차, RC 자동차, 리모컨 자동차, 스마트 자동차, 또는 DIY 자동차와 같은 다양한 이름으로 불립니다. 이는 어떤 선도 없이 멀리서 제어할 수 있습니다. 적외선을 사용하는 특별한 리모컨이나 Bluetooth 또는 WiFi를 통한 스마트폰 앱 중 하나를 사용할 수 있습니다. 로봇 자동차는 왼쪽이나 오른콱으로 이동할 수 있으며, 앞으로 또는 뒤로도 갈 수 있습니다.
ESP8266 보드를 사용하여 제작 및 제어할 수 있는 2WD(2륜 구동) 자동차는 작은 로봇 차량입니다. 일반적으로 다음과 같은 구성 요소로 이루어져 있습니다:
- 섀시: 차의 기본이나 틀로, 다른 모든 구성 요소가 장착되는 곳입니다.
- 바퀴: 자동차의 이동을 제공하는 두 개의 바퀴입니다. 이들은 두 개의 DC 모터에 연결되어 있습니다.
- 모터: 두 개의 바퀴를 구동하기 위해 사용되는 두 개의 DC 모터가 있습니다.
- 모터 드라이버: 모터 드라이버 보드는 ESP8266과 모터 사이를 인터페이스하는 필수 구성 요소입니다. 이는 ESP8266으로부터의 신호를 받아 모터에 필요한 전력과 제어를 제공합니다.
- ESP8266 보드: 자동차의 두뇌입니다. 센서와 사용자 명령어로부터 입력을 읽고 모터를 그에 따라 제어합니다.
- 전원원: 2WD 자동차는 모터와 ESP8266 보드에 전원을 공급하기 위해 주로 배터리와 배터리 홀더가 필요합니다.
- 무선 수신기: 리모컨이나 스마트폰과 무선 통신을 위한 적외선, 블루투스 또는 와이파이 모듈입니다.
- 선택 구성 요소: 프로젝트의 복잡성에 따라, 센서(예: 장애물 회피용 초음파 센서, 라인 추적 센서 등)와 같은 다양한 선택 구성 요소를 추가할 수 있습니다.
이 튜토리얼에서는 간단하게 하기 위해 다음을 사용할 것입니다:
- 2WD 자동차 키트 (샤시, 바퀴, 모터, 배터리 홀더 포함)
- L298N 모터 드라이버
- IR 적외선 키트 (IR 컨트롤러와 IR 리시버 포함)
이 페이지 상단의 하드웨어 목록을 확인하세요.
작동 방식
- ESP8266은 L298N 모터 드라이버 모듈을 통해 로봇 자동차의 DC 모터에 연결됩니다.
- ESP8266은 IR 수신기에 연결됩니다.
- 배터리는 ESP8266, DC 모터, 모터 드라이버 및 IR 수신기에 전력을 공급합니다.
- 사용자는 IR 원격 컨트롤러에서 UP/DOWN/LEFT/RIGHT/OK 키를 누릅니다.
- ESP8266은 IR 수신기를 통해 UP/DOWN/LEFT/RIGHT/OK 명령을 수신합니다.
- ESP8266은 모터 드라이버를 통해 DC 모터를 제어함으로써 FORWARD/BACKWARD/LEFT/RIGHT/STOP으로 자동차를 움직이도록 제어합니다.
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
보통, 두 가지 전원이 필요합니다:
- 모터용으로는 간접적으로 L298N 모듈을 통하여.
- 또 다른 하나는 ESP8266 보드, L298N 모듈, 그리고 IR 수신기용입니다.
그러나 모든 것에 단 하나의 전원만 사용하여 이를 단순화하는 방법이 있습니다. 여기서는 네 개의 1.5V 배터리(총 6V)를 사용하여 이를 달성할 수 있습니다. 방법은 다음과 같습니다:
- 다이어그램에 표시된 대로 L298N 모듈에 배터리를 연결하세요.
- L298N 모듈에서 ENA 및 ENB 핀을 5 볼트에 연결하는 두 개의 점퍼를 배치하세요.
- 다이어그램에 노란색 원으로 표시된 5VEN이라고 표시된 점퍼를 제거하세요.
- 위 다이어그램과 같이 나머지 배선을 하세요.
ESP8266 코드
사용 방법
Arduino IDE에서 ESP8266을 시작하는 방법을 알아보려면 다음 단계를 따르세요:
ESP8266을 Arduino IDE에서 설정하는 방법에 대한 자세한 내용은 ESP8266에 대한 환경 설정 방법 튜토리얼을 확인하세요. 이것이 처음이라면 특히 유용할 것입니다.
- USB 케이블을 사용하여 ESP8266 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드를 선택하세요, 예를 들어 NodeMCU 1.0 (ESP-12E Module)과 그에 해당하는 COM 포트를 선택하세요.
- 이 지침을 따라 Arduino IDE에 DIYables_IRcontroller 라이브러리를 설치하세요.
- 위에 표시된 대로 배선하세요.
- 코드를 업로드할 때 USB 케이블을 통해 ESP8266에 전원을 공급할 예정이므로 ESP8266의 Vin에서 와이어를 분리하세요.
- 차를 뒤집어서 바퀴가 위로 오도록 하세요.
- 제공된 코드를 복사하여 Arduino IDE에서 열세요.
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP8266으로 전송하세요.
- IR 원격 컨트롤러를 사용하여 차를 앞으로, 뒤로, 왼쪽, 오른쪽으로 이동시키거나 정지시키세요.
- 바퀴가 명령에 따라 올바르게 움직이는지 확인하세요.
- 바퀴가 잘못된 방향으로 움직이면 L298N 모듈의 DC 모터의 와이어를 바꾸세요.
- Arduino IDE의 시리얼 모니터에서도 결과를 볼 수 있습니다.
- 모든 것이 잘 진행되면, ESP8266에서 USB 케이블을 분리한 후 선을 다시 Vin 5V 핀에 연결하세요. 이렇게 하면 배터리에서 ESP8266으로 전력이 공급됩니다.
- 차를 바퀴가 땅에 닿도록 정상 위치로 뒤집으세요.
- 차를 조종하는 것을 즐기세요!
코드 설명
위의 아두이노 코드의 주석 줄에서 설명을 찾을 수 있습니다.
다음 튜토리얼을 확인함으로써 코드에 대해 더 많이 배울 수 있습니다:
- ESP8266 - Infrared Remote Control tutorial
- ESP8266 - DC motor tutorial
이 프로젝트를 다음 방법으로 확장할 수 있습니다:
- 장애물 감지 시 즉시 차를 정지시키는 장애물 회피 센서 추가.
- 차의 속도를 제어하는 기능 추가 (ESP8266 - DC 모터(BASE_URL/tutorials/esp8266/esp8266-dc-motor) 튜토리얼 참조). 제공된 코드는 차를 전속력으로 제어합니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.