Xe điều khiển từ xa với ESP32
Cơ bản3/6/2026

Xe điều khiển từ xa với ESP32

Chế tạo xe điều khiển từ xa qua Wi-Fi bằng ESP32, nâng cao kiến thức về động cơ và mạch điều khiển.

0 lượt thích1 người đã làm1 giờ7 bước6 linh kiện
← Quay lại dự án
Hướng dẫn chi tiết

Phần 3: Lập trình ESP32 để điều khiển động cơ

1. Giới thiệu về lập trình động cơ với ESP32, 2. Viết mã điều khiển động cơ (điều hướng, tốc độ...), 3. Giới thiệu thư viện điều khiển động cơ, 4. Kiểm tra mã trên mô hình xe, 5. Khắc phục lỗi phổ biến trong lập trình.

Cập nhật 09/06/2026

Phần 3: Lập trình ESP32 để điều khiển động cơ

1. Giới thiệu về lập trình động cơ với ESP32

ESP32 là một vi điều khiển mạnh mẽ với khả năng kết nối Wi-Fi và Bluetooth, rất phù hợp cho các dự án IoT như xe điều khiển từ xa. Để điều khiển động cơ, bạn cần sử dụng mạch điều khiển động cơ, thường là L298N hoặc L293D, nhằm điều chỉnh hướng và tốc độ quay của động cơ.

2. Viết mã điều khiển động cơ (điều hướng, tốc độ...)

Để điều khiển động cơ, bạn cần xác định chân GPIO trên ESP32 kết nối đến mạch điều khiển. Dưới đây là một ví dụ mã điều khiển động cơ với các chức năng tiến, lùi, rẽ trái, rẽ phải và dừng lại.


#define IN1 25
#define IN2 26
#define IN3 27
#define IN4 14

void setup() {
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

void loop() {
  // Tiến
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  digitalWrite(IN3, HIGH);
  digitalWrite(IN4, LOW);
  delay(2000); // Chạy 2 giây

  // Lùi
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, HIGH);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4, HIGH);
  delay(2000); // Chạy 2 giây

  // Dừng
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4, LOW);
  delay(2000); // Dừng 2 giây
}

3. Giới thiệu thư viện điều khiển động cơ

Các thư viện như AccelStepper hoặc AFMotor không hỗ trợ trực tiếp cho ESP32. Để điều khiển servo, bạn có thể sử dụng thư viện ESP32Servo. Đối với động cơ DC, bạn có thể viết mã điều khiển PWM trực tiếp để điều chỉnh tốc độ.

4. Kiểm tra mã trên mô hình xe

Sau khi viết mã, tải lên ESP32 và kiểm tra chức năng điều khiển động cơ. Đảm bảo rằng các kết nối giữa ESP32 và mạch điều khiển động cơ được thực hiện chính xác. Kiểm tra từng chức năng: tiến, lùi, rẽ trái, rẽ phải, và dừng lại.

Cảnh báo: Không cấp nguồn động cơ qua ESP32. Nên dùng nguồn riêng cho động cơ và nối mass chung với ESP32 để tránh hỏng hóc.

5. Khắc phục lỗi phổ biến trong lập trình

  • Động cơ không quay: Kiểm tra kết nối dây và nguồn điện.

  • Động cơ quay ngược chiều: Đổi chân IN1 và IN2 hoặc IN3 và IN4.

  • Không nhận lệnh từ ESP32: Kiểm tra mã và xác nhận rằng ESP32 đã kết nối với mạng Wi-Fi.