Có thể. Về bản chất, bạn đang muốn làm một xe RC Bluetooth có chế độ “follow me” (đi theo người cầm điện thoại).
Tuy nhiên, có một điểm quan trọng:
- Bluetooth thường không cung cấp vị trí chính xác, chỉ cho biết cường độ tín hiệu (RSSI).
- Nếu chỉ dùng Bluetooth, xe chỉ có thể “ước lượng” điện thoại đang gần hay xa.
- Để xe thực sự bám theo người một cách ổn định, thường cần thêm cảm biến khác như camera, siêu âm, GPS hoặc UWB.
Phương án 1: Đơn giản nhất (Bluetooth RSSI Follow)
Linh kiện
- 1 × Espressif Systems ESP32
- 2 × động cơ DC
- 1 × driver động cơ như L298N hoặc TB6612FNG
- Khung xe 2 bánh hoặc 4 bánh
- Pin Li-ion/LiPo
- Điện thoại Android
Nguyên lý
ESP32 kết nối Bluetooth với điện thoại.
ESP32 liên tục đo RSSI:
| RSSI | Ý nghĩa |
|---|---|
| -40 dBm | rất gần |
| -60 dBm | gần |
| -80 dBm | xa |
| -90 dBm | rất xa |
Logic:
Nếu RSSI < -75
xe tiến lên
Nếu RSSI > -55
xe dừng
Nhược điểm:
- Xe chỉ biết “gần hơn” hoặc “xa hơn”.
- Không biết người đang ở bên trái hay bên phải.
Phương án 2: Bluetooth + nhiều anten
Dùng:
- 2 hoặc 3 ESP32
- Bluetooth Direction Finding
Xe có thể ước lượng hướng của điện thoại.
Ưu điểm:
- Biết điện thoại lệch trái hay phải.
- Có thể tự xoay theo người.
Nhược điểm:
- Lập trình khá phức tạp.
- Không phải mọi ESP32 đều hỗ trợ Bluetooth Direction Finding.
Phương án 3: Bluetooth + Camera AI (khuyên dùng)
Phần cứng
- ESP32 hoặc Raspberry Pi Foundation Raspberry Pi
- Camera
- Driver động cơ
- Điện thoại
Cách hoạt động
- Điện thoại kết nối Bluetooth với xe.
- Camera nhận diện người đang cầm điện thoại.
- Xe khóa mục tiêu đó.
- Xe dùng AI để bám theo người.
Hiện nay đây là cách được dùng phổ biến nhất cho robot theo người.
Phương án 4: Điện thoại gửi GPS cho xe
Cần
- Điện thoại Android
- ESP32
- GPS module trên xe hoặc Wi-Fi/Bluetooth
Điện thoại gửi:
{
"lat": 21.0285,
"lon": 105.8542
}
Xe tính khoảng cách tới điện thoại:
d=R\arccos\left(\sin\phi_1\sin\phi_2+\cos\phi_1\cos\phi_2\cos(\lambda_2-\lambda_1)\right)
Sau đó tự lái tới vị trí đó.
Nhược điểm:
- GPS ngoài trời mới tốt.
- Sai số thường 2–10 m.
Phương án 5: Tốt nhất cho Follow-Me (UWB)
Dùng:
- 2 module UWB như DWM3000 hoặc DW1000
- ESP32
Người cầm điện thoại mang theo một thẻ UWB nhỏ.
Ưu điểm:
- Độ chính xác khoảng 10–30 cm.
- Xe theo người rất mượt.
- Hoạt động trong nhà tốt hơn GPS.
Sơ đồ cơ bản với ESP32
Điện thoại
|
Bluetooth
|
ESP32
|
Motor Driver
|
Động cơ
|
Xe
Ví dụ thuật toán đơn giản
if (RSSI < -75)
{
moveForward();
}
else if (RSSI > -55)
{
stopMotor();
}
Nếu bạn muốn tự chế với chi phí thấp (khoảng 300.000–800.000 VNĐ), tôi có thể hướng dẫn chi tiết từng bước từ:
- danh sách linh kiện,
- sơ đồ đấu dây ESP32 + L298N,
- code Arduino cho ESP32,
- ứng dụng Android để kết nối Bluetooth,
- thuật toán follow-me bằng RSSI.
