-
-
-
Tổng tiền thanh toán:
-
Thương hiệu: (Đang cập nhật ...) Loại: (Đang cập nhật ...)
Sau 7 bài học, chúng ta đã từng bước xây dựng từng khối chức năng của hệ thống Drone:
Bài 1 → Tổng quan hệ thống
Bài 2 → Tay cầm ESP32
Bài 3 → Phần cứng Drone ESP32
Bài 4 → Điều khiển Motor
Bài 5 → ESP-NOW
Bài 6 → Joystick → Drone
Bài 7 → MPU6050 + Motor Mixing
Ở Bài 8, chúng ta sẽ tích hợp toàn bộ hệ thống thành một Drone hoàn chỉnh và thực hiện quy trình kiểm tra trước khi bay.
Mục tiêu của bài này không phải chỉ là “cho motor quay”, mà là xây dựng một quy trình hoàn chỉnh: kiểm tra → hiệu chỉnh → tích hợp → thử nghiệm → cất cánh có kiểm soát.
Sau bài học, học viên có thể hiểu quy trình:
Tay cầm
↓
Joystick
↓
ESP32 Controller
↓
ESP-NOW
↓
ESP32 Drone
↓
MPU6050
↓
Control Algorithm
↓
Motor Mixing
↓
4 Motor
↓
Drone
Đồng thời kiểm tra:
Hệ thống cuối cùng gồm hai phần chính.
┌─────────────────────┐
│ Joystick │
│ Nút nhấn │
└──────────┬──────────┘
↓
ESP32
↓
ESP-NOW
ESP-NOW
↓
ESP32
↓
MPU6050
↓
Control
↓
Motor Mixing
↓
┌───┬───┬───┬───┐
M1 M2 M3 M4
Hai hệ thống kết hợp lại:
CONTROLLER
│
│ ESP-NOW
↓
DRONE
│
┌─────┴─────┐
↓ ↓
MPU6050 Motor
│ │
└─────┬─────┘
↓
CONTROL
Trước khi chạy firmware, kiểm tra toàn bộ phần cứng.
Kiểm tra:
Không chạm chập
Không hàn nhầm
Không ngược cực nguồn
Không có linh kiện lỏng
Nguồn là một trong những nguyên nhân phổ biến khiến Drone hoạt động không ổn định.
Kiểm tra:
Battery
↓
Power Circuit
↓
ESP32
↓
MPU6050
↓
Motor Driver
Cần xác nhận điện áp phù hợp với từng phần của mạch.
Đặc biệt:
Không được cấp một mức điện áp trực tiếp vào ESP32 hoặc MPU6050 chỉ vì nó đang có sẵn trên pin. Phải kiểm tra thiết kế nguồn của PCB.
Cấp nguồn cho Drone khi chưa gắn cánh quạt.
Kiểm tra:
ESP32 boot
↓
Serial
↓
Firmware
Serial Monitor nên hiển thị trạng thái tương tự:
Drone ESP32
-----------
System Boot
MPU6050 OK
ESP-NOW OK
System Ready
Đây là ví dụ về thông tin debug; nội dung thực tế phụ thuộc firmware.
Sau khi ESP32 khởi động:
ESP32
↓
I2C
↓
MPU6050
Kiểm tra:
Đặt Drone đứng yên:
Roll ≈ 0
Pitch ≈ 0
Gyro ≈ 0
Các giá trị thực tế có thể dao động nhỏ.
Calibration nên được thực hiện khi Drone:
Đặt trên mặt phẳng
+
Không bị rung
+
Không bị di chuyển
Quy trình:
Power ON
↓
Đặt Drone nằm yên
↓
Calibration
↓
Lưu/áp dụng Offset
↓
System Ready
Không nên calibration khi đang cầm Drone hoặc đang di chuyển.
Bật Controller.
Kiểm tra:
Joystick X
Joystick Y
Button
ESP32
ESP-NOW
Serial Monitor có thể hiển thị:
Throttle : 0
Roll : 0
Pitch : 0
Yaw : 0
Khi joystick ở vị trí trung tâm, Roll/Pitch/Yaw nên gần giá trị trung tâm đã thiết kế.
Hai ESP32 phải kết nối được:
Controller
│
ESP-NOW
│
↓
Drone
Kiểm tra:
Ví dụ:
TX Packet: 1001
RX Packet: 1001
Nếu Counter tăng liên tục, đường truyền đang hoạt động.
Đây là bước rất quan trọng.
Ví dụ:
Joystick trái
X → Yaw
Y → Throttle
Joystick phải
X → Roll
Y → Pitch
Đây chỉ là ví dụ.
Firmware thực tế phải sử dụng đúng cách bố trí joystick của tay cầm.
Kiểm tra từng hướng:
↑
↓
←
→
và xác nhận:
Throttle
Roll
Pitch
Yaw
đúng chiều.
Drone không nên tự động chạy motor ngay khi cấp nguồn.
Cần có trạng thái:
DISARM
↓
ARM
↓
FLIGHT
và:
FLIGHT
↓
DISARM
Khi DISARM:
Motor Output = 0
hoặc trạng thái an toàn theo thiết kế firmware.
Tháo cánh quạt trước khi thực hiện bước này.
Kiểm tra từng motor:
M1
M2
M3
M4
Xác nhận:
M1 → đúng motor
M2 → đúng motor
M3 → đúng motor
M4 → đúng motor
Không được để firmware nhầm vị trí motor.
Sau khi xác định đúng M1–M4, kiểm tra chiều:
M1 → CW / CCW
M2 → CW / CCW
M3 → CW / CCW
M4 → CW / CCW
Chiều quay phải phù hợp với:
Nếu motor quay sai chiều, cần xử lý ngay trước khi lắp propeller.
Đây là lỗi rất phổ biến ở Drone DIY.
Cần phân biệt:
CW Propeller
CCW Propeller
Không được chỉ nhìn hình dáng bên ngoài mà lắp ngẫu nhiên.
Cánh quạt phải phù hợp với:
Motor Direction
+
Motor Position
Nếu lắp sai, motor vẫn quay nhưng Drone có thể không tạo lực nâng đúng.
Sau khi xác nhận chiều motor và cánh quạt, kiểm tra phản ứng Roll/Pitch/Yaw.
Ví dụ:
Roll Command
↓
Motor Mixing
↓
M1 M2 M3 M4
Kiểm tra các motor thay đổi theo đúng hướng thiết kế.
Nếu phản hồi ngược:
Không cố chỉnh PID ngay.
Trước tiên kiểm tra:
IMU Axis
Motor Mapping
Motor Direction
Mixing Sign
Đây là một trong những bước bắt buộc.
Quy trình:
Controller ON
↓
Drone ON
↓
ESP-NOW Connected
↓
System Ready
Sau đó:
Tắt Controller
↓
Mất ESP-NOW
↓
Timeout
↓
Failsafe
Drone phải chuyển sang trạng thái an toàn theo thiết kế.
Ngoài mất sóng, cần xem xét:
Battery yếu
Battery ngắt
ESP32 reset
Firmware crash
Hệ thống phải có hành vi an toàn nhất có thể trong từng trường hợp.
Đặc biệt, không nên để lệnh motor cuối cùng tiếp tục được sử dụng vô thời hạn khi mất dữ liệu điều khiển.
Đặt Drone ở trạng thái an toàn và tháo cánh quạt.
Nghiêng Drone sang phải:
Drone
↘
Kiểm tra:
MPU6050
↓
Roll
↓
Controller
↓
Motor Mixing
Correction phải có xu hướng chống lại sai lệch, không làm sai lệch lớn hơn.
Tương tự:
Nghiêng trước
↓
Pitch thay đổi
↓
Controller
↓
Motor Mixing
Nếu hệ thống phản ứng ngược:
DỪNG TEST
và kiểm tra lại dấu của Pitch.
Yaw cần kiểm tra:
Gyro Z
↓
Yaw Rate
↓
Yaw Controller
↓
Motor Mixing
Đặc biệt kiểm tra:
CW Motor
+
CCW Motor
vì Yaw phụ thuộc vào sự chênh lệch moment giữa các nhóm motor quay ngược chiều nhau.
Sau khi toàn bộ hệ thống đã được kiểm tra khi tháo cánh:
Controller
↓
ESP-NOW
↓
Drone
↓
MPU6050
↓
Control
Tiếp tục kiểm tra phản ứng của motor ở mức thấp và trong điều kiện kiểm soát.
Không nên tăng công suất đột ngột.
Khi chuyển sang thử bay, nên chọn:
Người thử nên giữ khoảng cách an toàn với cánh quạt.
Không nên ngay lập tức cố bay cao.
Trình tự:
1. Arm
↓
2. Tăng throttle từ từ
↓
3. Quan sát phản ứng
↓
4. Nếu bất thường → Disarm
Nếu Drone có xu hướng:
nghiêng mạnh
quay mạnh
rung
lật
thì phải giảm ga và ngắt hệ thống.
Không cố “giữ” Drone bằng tay hoặc tiếp tục tăng throttle để xem chuyện gì xảy ra.
Có thể kiểm tra theo thứ tự:
MPU6050 Axis
↓
Calibration
↓
Motor Mapping
↓
Motor Direction
↓
Propeller Direction
↓
Motor Mixing
↓
PID
Không nên bắt đầu bằng việc thay đổi PID ngẫu nhiên.
Kiểm tra:
Rung cơ khí có thể truyền trực tiếp vào MPU6050 và làm hệ thống điều khiển phản ứng liên tục.
Kiểm tra:
CW / CCW
↓
Propeller
↓
Motor Mixing
↓
Yaw Control
Đặc biệt cần kiểm tra xem các cặp motor quay ngược chiều có thực sự tạo moment cân bằng khi throttle tăng hay không.
Kiểm tra:
Battery
↓
Motor
↓
Propeller
↓
Motor Direction
↓
Propeller Direction
↓
Throttle
Một nguyên nhân rất đơn giản nhưng thường gặp là lắp nhầm loại hoặc chiều cánh quạt.
Một dự án Drone nên có bảng ghi lại từng lần thử.
| Lần thử | Nội dung | Kết quả | Nguyên nhân | Xử lý |
|---|---|---|---|---|
| 01 | Kiểm tra MPU6050 | Đạt | - | Hoàn thành |
| 02 | Kiểm tra ESP-NOW | Đạt | - | Hoàn thành |
| 03 | Motor Mapping | Lỗi | M2 sai vị trí | Sửa firmware |
| 04 | Motor Direction | Đạt | - | Hoàn thành |
| 05 | Test Roll | Lỗi | Sai dấu | Sửa axis |
| 06 | Test Hover | Đang thử | - | Tiếp tục |
Việc ghi lại kết quả giúp quá trình R&D dễ dàng hơn rất nhiều.
Sau 8 bài, học viên đã đi qua toàn bộ quá trình:
BÀI 1
Tổng quan Drone Mini ESP32
↓
BÀI 2
Tay cầm ESP32
↓
BÀI 3
Phần cứng Drone ESP32
↓
BÀI 4
ESP32 + Motor
↓
BÀI 5
ESP-NOW
↓
BÀI 6
Joystick → Drone
↓
BÀI 7
MPU6050 + Motor Mixing
↓
BÀI 8
Hoàn thiện + Thử bay
┌─────────────────┐
│ TAY CẦM ESP32 │
│ │
│ Joystick │
│ Button │
└────────┬────────┘
│
ESP-NOW
│
↓
┌─────────────────┐
│ DRONE ESP32 │
│ │
│ MPU6050 │
│ │
│ Control System │
│ │
│ Motor Mixing │
└────────┬────────┘
│
┌───────────┼───────────┐
↓ ↓ ↓
M1 M2 M3 M4
└───────────┴───────────┴───────────┘
Sau khi hoàn thành khóa học, học viên không chỉ biết lắp một Drone.
Quan trọng hơn, học viên hiểu được cách xây dựng một hệ thống nhúng hoàn chỉnh:
INPUT
↓
Joystick
↓
ADC
↓
ESP32
↓
Wireless Communication
↓
ESP-NOW
↓
Embedded Processing
↓
Sensor
↓
Control Algorithm
↓
Motor Driver
↓
Actuator
Đây chính là tư duy quan trọng khi phát triển các hệ thống:
Drone Mini ESP32 là một dự án thực hành giúp người học kết nối nhiều kiến thức trong cùng một hệ thống:
ESP32 + Joystick + ESP-NOW + MPU6050 + Motor Driver + Motor Mixing + Điều khiển vòng kín.
Điểm quan trọng nhất của khóa học là không chỉ làm cho Drone “bay được”, mà giúp người học hiểu:
Tại sao Drone bay được, dữ liệu được truyền như thế nào, cảm biến phản hồi ra sao và phần mềm điều khiển 4 motor như thế nào.
Từ nền tảng này, người học có thể tiếp tục phát triển:
Học phần cứng
↓
Học ESP32
↓
Học cảm biến
↓
Học ESP-NOW
↓
Học điều khiển motor
↓
Học Control
↓
Tích hợp hệ thống
↓
THỬ NGHIỆM DRONE
Từ một PCB → hiểu nguyên lý → lập trình → điều khiển → tích hợp → thử nghiệm.
Đó chính là mục tiêu của khóa học Lập trình & Điều khiển Drone Mini ESP32.