Mạch điều khiển bay của flycam: IMU, vòng PID, bộ lọc rung, chế độ bay, Betaflight, ArduPilot
Mạch điều khiển bay của flycam: MCU, IMU, cảm biến, vòng điều khiển nhiều tầng, bộ trộn động cơ, PID, bộ lọc rung, các chế độ bay, Betaflight, INAV, ArduPilot, PX4 và khả năng dùng ESP32.
Mạch điều khiển bay (flight controller) là bộ não của flycam. Nó đọc cảm biến để biết flycam đang nghiêng, quay ra sao, đọc lệnh từ tay điều khiển, rồi tính ra mức ga cho từng động cơ, lặp lại hàng nghìn lần mỗi giây. Bài này giới thiệu các thành phần trên mạch điều khiển bay, vòng điều khiển nhiều tầng, vai trò của PID và bộ lọc rung, các chế độ bay, các phần mềm điều khiển bay mã nguồn mở và khả năng dùng ESP32 làm mạch điều khiển bay.
1. Trên mạch điều khiển bay có gì

- Vi điều khiển (MCU): mạch cho flycam FPV thường dùng STM32F405, F722 hoặc H743, chạy 168–480 MHz.
- IMU: con quay hồi chuyển 3 trục đo tốc độ quay, gia tốc kế 3 trục đo hướng trọng lực. Con quay là cảm biến quan trọng nhất, nối qua SPI và đọc tới vài nghìn lần mỗi giây.
- Cảm biến thêm: khí áp kế để giữ độ cao, la bàn để biết hướng, GPS nối qua UART để giữ vị trí và tự quay về.
- Cổng UART: nối bộ thu (SBUS, CRSF), GPS, bộ phát hình (VTX) để đổi kênh từ xa.
- Ngõ ra động cơ: 4 pad M1–M4 hoặc một đầu cắm cho ESC 4 trong 1.
- Thêm: chip OSD in chữ lên hình FPV, bộ nhớ ghi dữ liệu bay (blackbox), mạch hạ áp 5 V và 3,3 V, cổng USB để cấu hình.
Mạch được bắt bằng 4 vít theo khoảng cách chuẩn 30,5 × 30,5 mm, 20 × 20 mm hoặc 25,5 × 25,5 mm, thường qua đệm cao su để giảm rung. Mũi tên trên mạch phải chỉ về đầu flycam; lắp xoay hướng thì phải khai báo lại trong phần mềm.

2. Vòng điều khiển nhiều tầng

- Vòng góc (chỉ ở chế độ tự cân bằng): so góc mong muốn với góc ước tính từ IMU, tính ra tốc độ quay cần có. Ví dụ đang nghiêng 10°, muốn về 0° thì cần quay ngược lại với tốc độ tỉ lệ với sai lệch.
- Vòng tốc độ góc: so tốc độ quay mong muốn với số đo con quay trên từng trục roll, pitch, yaw, dùng PID tính ra mức sửa cho từng trục. Vòng này chạy nhanh nhất, ở Betaflight thường 2–8 kHz.
- Bộ trộn: đổi mức ga và ba mức sửa thành mức ga riêng cho từng động cơ theo vị trí và chiều quay của động cơ.
Với quy ước của loạt bài này (động cơ 1 sau phải quay thuận chiều kim đồng hồ, 2 trước phải ngược chiều, 3 sau trái ngược chiều, 4 trước trái thuận chiều; roll dương là nghiêng phải, pitch dương là ngóc đầu lên, yaw dương là xoay đầu sang phải), bộ trộn của khung X như sau:
| Động cơ | Vị trí | Công thức |
|---|---|---|
| 1 | sau phải | ga − roll − pitch − yaw |
| 2 | trước phải | ga − roll + pitch + yaw |
| 3 | sau trái | ga + roll − pitch + yaw |
| 4 | trước trái | ga + roll + pitch − yaw |
Kiểm tra lại bằng bài cấu tạo flycam: muốn nghiêng phải thì hai động cơ bên trái (3, 4) tăng; muốn xoay đầu sang phải thì cặp quay ngược chiều kim đồng hồ (2, 3) tăng. Mỗi phần mềm có quy ước dấu riêng, nhưng nguyên tắc giống nhau.
3. PID: chỉnh để flycam bám lệnh

- P sửa theo sai lệch hiện tại: P nhỏ thì flycam ì, P lớn quá thì dao động nhanh, nghe rít.
- I cộng dồn sai lệch theo thời gian, sửa các lệch kéo dài như trọng tâm lệch, gió đều. I quá lớn làm flycam lắc chậm.
- D phản ứng theo tốc độ thay đổi, hãm lại để giảm vọt lố. D khuếch đại nhiễu rung nên phải đi cùng bộ lọc tốt.
Thông số mặc định của các phần mềm hiện nay bay được với đa số flycam cỡ phổ biến. Việc tinh chỉnh thường dựa trên dữ liệu blackbox ghi trong lúc bay, chỉnh từng nấc nhỏ. Nguyên lý PID giống với bài giữ tốc độ động cơ DC bằng PID trên ESP32.
4. Rung và bộ lọc tín hiệu con quay

Động cơ và cánh quạt quay hàng trăm vòng mỗi giây, tạo rung ở tần số cao. Con quay đo cả rung này, nếu đưa thẳng vào PID thì động cơ bị điều khiển theo nhiễu, nóng lên và flycam rung. Mạch điều khiển bay dùng bộ lọc thông thấp và bộ lọc chặn dải (notch). Betaflight còn có bộ lọc theo tốc độ động cơ: ESC dùng DShot hai chiều gửi tốc độ quay về, bộ lọc đặt đúng tần số rung của từng động cơ. Cái giá của lọc là độ trễ: lọc càng mạnh, flycam phản ứng càng chậm. Vì vậy giảm rung từ gốc (cánh không cong, động cơ không cong trục, mạch đặt trên đệm mềm) luôn tốt hơn lọc mạnh.
5. Các chế độ bay

Người mới nên tập ở chế độ Angle: buông cần là flycam tự về thăng bằng. Chế độ Acro cho phép nhào lộn nhưng người lái phải tự giữ góc. Chế độ giữ vị trí và tự quay về cần GPS, la bàn hoạt động đúng; nên bật tính năng quay về khi mất sóng (failsafe) cho flycam có GPS.
6. Phần mềm điều khiển bay

Các bước cấu hình cơ bản giống nhau ở mọi phần mềm, và luôn làm khi đã tháo cánh:
- Nạp firmware đúng loại mạch, chọn kiểu khung (Quad X).
- Kiểm tra hướng cảm biến: nghiêng flycam trên tay, hình 3D trên màn hình phải nghiêng cùng chiều.
- Khai báo cổng UART và giao thức của bộ thu; kiểm tra các kênh chạy đúng khi gạt cần.
- Thử từng động cơ: đúng thứ tự, đúng chiều quay; chọn giao thức ESC.
- Đặt công tắc mở khóa động cơ (arm), chế độ bay, cảnh báo pin và hành vi khi mất sóng.
7. ESP32 có làm mạch điều khiển bay được không
Được, ở mức học tập và flycam mini. ESP32 có hai lõi 240 MHz, đủ đọc cảm biến MPU-6050 và chạy vòng điều khiển vài trăm lần mỗi giây; Wi-Fi và ESP-NOW thay được bộ thu. Espressif có dự án mã nguồn mở ESP-Drone (dựa trên phần mềm Crazyflie) chạy trên ESP32-S2 và ESP32-S3. Tuy vậy, so với mạch chuyên dụng chạy Betaflight hay ArduPilot, một mạch tự làm thiếu bộ lọc tinh, thiếu cơ chế an toàn đã được kiểm chứng, nên chỉ nên thử với drone nhỏ, nhẹ, trên giá thử hoặc trong lưới. Loạt bài này có bài ESP32 đọc MPU-6050 tính góc nghiêng và bài ESP32 làm mạch điều khiển bay cho drone mini.
8. Lưu ý
- Tháo cánh mỗi khi cắm USB cấu hình: một số phần mềm cho phép quay động cơ từ máy tính.
- Kiểm tra hướng lắp mạch và hướng cảm biến trước lần bay đầu; sai hướng, flycam sẽ lật ngay khi cất cánh.
- Hiệu chuẩn gia tốc kế khi flycam đặt nằm ngang để chế độ Angle giữ thăng bằng đúng.
- Luôn cài và thử hành vi khi mất sóng: tắt động cơ (flycam mini, trong nhà) hoặc tự hạ cánh, tự quay về (flycam ngoài trời có GPS).
9. Xem thêm
- Cảm biến gia tốc: cấu tạo MEMS, áp điện và đo góc nghiêng bằng ESP32.
- Giữ tốc độ động cơ DC ổn định bằng PID trên ESP32: encoder, chỉnh Kp Ki Kd, Serial Plotter.
- Thực hành hiệu chuẩn tĩnh gia tốc kế MEMS bằng trọng trường.
- Các bài khác trong loạt flycam và ESP32: cấu tạo flycam và nguyên lý bay; tay điều khiển và FPV; ESP32 đọc MPU-6050 tính góc nghiêng; ESP32 làm mạch điều khiển bay cho drone mini.
Xem thêm