ESP8266 Xe ô tô
Một trong những điều thú vị nhất để thử khi bạn mới bắt đầu với ESP8266 là làm một chiếc xe robot. Trong hướng dẫn này, chúng ta sẽ học cách sử dụng ESP8266 để xây dựng một chiếc xe robot và điều khiển nó bằng điều khiển từ xa hồng ngoại (IR). Chúng ta sẽ học cách làm một chiếc xe robot Bluetooth trong một bài hướng dẫn khác.
IR
Phần cứng cần chuẩn bị
| 1 | × | ESP8266 NodeMCU ESP-12E | ||
| 1 | × | Recommended: ESP8266 NodeMCU ESP-12E (Uno-form) | ||
| 1 | × | USB Cable Type-A to Type-C (for USB-A PC) | ||
| 1 | × | USB Cable Type-C to Type-C (for USB-C PC) | ||
| 1 | × | RC Car | ||
| 1 | × | L298N Motor Driver Module | ||
| 1 | × | IR Remote Controller Kit | ||
| 1 | × | CR2025 Battery (for IR Remote controller) | ||
| 1 | × | 1.5V AA Battery (for ESP8266 and Car) | ||
| 1 | × | dây jumper | ||
| 1 | × | breadboard | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP8266 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP8266 Type-C |
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Xe rô-bốt
Trong ngữ cảnh ESP8266, xe robot thường được gọi bằng nhiều tên khác nhau như xe robot, RC car, xe điều khiển từ xa, xe thông minh hoặc xe DIY. Nó có thể được điều khiển từ xa mà không cần dây. Bạn có thể sử dụng một điều khiển từ xa đặc biệt dùng ánh sáng hồng ngoại hoặc một ứng dụng trên điện thoại thông qua Bluetooth hoặc WiFi. Xe robot có thể đi sang trái hoặc sang phải và cũng có thể tiến về phía trước hoặc lùi lại.
Xe 2 bánh dẫn động (Two-Wheel Drive) dành cho ESP8266 là một phương tiện robot nhỏ mà bạn có thể tự chế tạo và điều khiển bằng bo mạch ESP8266. Nó thường bao gồm các thành phần sau:
- Khung xe: Nền tảng hay khung gầm của xe, nơi mọi thành phần khác được gắn.
- Bánh xe: Hai bánh xe cung cấp khả năng di chuyển cho xe. Chúng được gắn với hai động cơ DC.
- Động cơ: Hai động cơ DC được sử dụng để điều khiển hai bánh xe.
- Bộ điều khiển động cơ: Bảng điều khiển động cơ là một thành phần thiết yếu kết nối giữa ESP8266 và động cơ. Nó nhận tín hiệu từ ESP8266 và cung cấp nguồn và điều khiển cần thiết cho động cơ.
- Bảng ESP8266: Bộ não của xe. Nó đọc các tín hiệu từ cảm biến và lệnh của người dùng, và điều khiển động cơ cho phù hợp.
- Nguồn cấp: Xe 2WD cần một nguồn cấp điện, thường là pin và giá đỡ pin, để cấp nguồn cho động cơ và bảng ESP8266.
- Bộ nhận không dây: một module hồng ngoại, Bluetooth hoặc WiFi để giao tiếp không dây với điều khiển từ xa hoặc điện thoại thông minh.
- Thành phần tùy chọn: Tùy thuộc vào mức độ phức tạp của dự án, bạn có thể thêm nhiều thành phần tùy chọn như cảm biến (ví dụ, cảm biến siêu âm để tránh vật cản, cảm biến theo đường), và nhiều hơn nữa.
Trong bài hướng dẫn này, để đơn giản, chúng ta sẽ sử dụng:
- Bộ kit ô tô dẫn động hai bánh (bao gồm khung xe, bánh xe, động cơ, giá đỡ pin)
- Bộ điều khiển động cơ L298N
- Bộ kit hồng ngoại (bao gồm điều khiển hồng ngoại và bộ nhận hồng ngoại)
Kiểm tra danh sách phần cứng ở đầu trang này.
Cách hoạt động

- ESP8266 kết nối với các động cơ DC của xe robot thông qua module điều khiển động cơ L298N.
- ESP8266 kết nối với một bộ nhận IR.
- Ắc quy cung cấp nguồn cho ESP8266, các động cơ DC, bộ điều khiển động cơ và bộ nhận IR.
- Người dùng nhấn các phím UP/DOWN/LEFT/RIGHT/OK trên điều khiển từ xa IR.
- ESP8266 nhận các lệnh UP/DOWN/LEFT/RIGHT/OK thông qua bộ nhận IR.
- ESP8266 điều khiển xe di chuyển về phía trước, lùi, rẽ trái, rẽ phải và dừng bằng cách điều khiển động cơ DC thông qua bộ điều khiển động cơ.
Sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image
Xem thêm Sơ đồ chân ESP8266 và Cách cấp nguồn cho ESP8266.
Thường thì nó cần hai nguồn năng lượng:
- Một dành cho động cơ (gián tiếp thông qua mô-đun L298N).
- Một dành cho bo mạch ESP8266, mô-đun L298N và bộ nhận IR.
Tuy nhiên, có một phương pháp để đơn giản hóa điều này bằng cách chỉ sử dụng một nguồn điện cho mọi thứ. Bạn có thể đạt được điều này bằng cách sử dụng bốn pin 1,5V (tổng cộng 6V). Dưới đây là cách bạn có thể làm điều đó:
- Kết nối các ắc quy với module L298N như hình vẽ.
- Đặt hai jumper nối các chân ENA và ENB với điện áp 5 V trên module L298N.
- Gỡ một jumper có nhãn 5VEN, được đánh dấu bằng vòng tròn màu vàng trên sơ đồ.
- Thực hiện các dây nối còn lại theo sơ đồ ở trên.
Mã ESP8266
Hướng dẫn từng bước
Để bắt đầu với ESP8266 trên Arduino IDE, hãy làm theo các bước sau:
- Xem hướng dẫn ESP8266 - Cài đặt phần mềm nếu đây là lần đầu bạn sử dụng ESP8266.
- Kết nối bo mạch ESP8266 với máy tính của bạn bằng cáp USB.
- Mở Arduino IDE trên máy tính của bạn.
- Chọn bo mạch ESP8266 đúng, ví dụ như NodeMCU 1.0 (ESP-12E Module), và cổng COM tương ứng của nó.
- Cài đặt thư viện DIYables_IRcontroller trên Arduino IDE bằng cách làm theo hướng dẫn này
- Hãy đấu dây theo sơ đồ ở trên đã hiển thị.
- Ngắt kết nối dây từ Vin trên ESP8266 vì chúng ta sẽ cấp nguồn cho ESP8266 bằng cáp USB khi tải mã.
- Lật ngược xe để bánh xe nằm ở phía trên.
- Sao chép mã được cung cấp và mở nó trong Arduino IDE.
- Nhấn nút Upload trong Arduino IDE để tải mã lên ESP8266.
- Sử dụng điều khiển IR để xe tiến tới, lùi, trái, phải hoặc dừng.
- Kiểm tra xem bánh xe có chuyển động đúng theo lệnh của bạn không.
- Nếu bánh xe di chuyển sai hướng, hãy đổi dây của động cơ DC trên module L298N.
- Bạn cũng có thể xem kết quả trên Serial Monitor trong Arduino IDE.
- Nếu mọi thứ diễn ra thuận lợi, hãy tháo cáp USB khỏi ESP8266, và sau đó kết nối lại dây vào pin Vin 5V. Điều này sẽ cấp nguồn cho ESP8266 từ pin.
- Đặt xe trở lại vị trí bình thường với bánh xe chạm đất.
- Chúc bạn điều khiển xe thật vui vẻ!
Giải thích mã nguồn
Bạn có thể tìm lời giải thích trong các dòng chú thích của mã Arduino ở phía trên.
Bạn có thể tìm hiểu thêm về mã bằng cách xem các hướng dẫn sau đây:
- ESP8266 - Điều khiển từ xa hồng ngoại hướng dẫn
- ESP8266 - Động cơ DC hướng dẫn
Bạn có thể mở rộng dự án này bằng cách:
- Thêm cảm biến tránh vật cản để lập tức dừng xe khi phát hiện vật cản.
- Thêm chức năng điều khiển tốc độ của xe (xem ESP8266 - Động cơ DC hướng dẫn). Mã được cung cấp điều khiển xe ở tốc độ tối đa.
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.