Drone là gì? Các bộ phận chính
Drone (máy bay không người lái) mà chúng ta học là loại quadcopter — có 4 cánh quạt. Drone dùng trong cuộc thi ADC là CoDrone EDU: nhỏ, nhẹ, có khung bảo vệ cánh, lập trình được bằng khối lệnh và Python.
Bấm vào từng bộ phận
Chạm hoặc bấm vào hình bên trái (hoặc các nút bên dưới) để xem bộ phận đó làm nhiệm vụ gì.
Drone bay như thế nào?
Mỗi cánh quạt đẩy không khí xuống dưới để tạo lực nâng. Bộ điều khiển bay thay đổi tốc độ từng động cơ để drone lên, xuống, nghiêng và xoay. Có 4 kiểu điều khiển cơ bản: Ga (throttle), Tiến/lùi (pitch), Nghiêng ngang (roll), Xoay mũi (yaw).
Mỗi cánh quạt khi quay sẽ "đẩy ngược" thân drone theo chiều kia (gọi là mô-men xoắn). Nếu cả 4 cánh cùng chiều, drone sẽ tự quay tròn. Hai cặp cánh quay ngược nhau làm lực xoắn triệt tiêu — và khi muốn xoay mũi, drone chỉ cần cho một cặp quay nhanh hơn cặp kia.
An toàn bay — kiểm tra trước khi cất cánh
Luật thi ADC (mục 2.4) bắt buộc kiểm tra trước mỗi lượt bay, đeo kính bảo hộ và luôn giữ quyền điều khiển drone. Hãy đánh dấu đủ các mục dưới đây như khi chuẩn bị bay thật.
- Chỉ bay trong vùng bay được chỉ định; không bay qua đầu người.
- Nếu drone mất kiểm soát: dùng dừng khẩn cấp (
drone.emergency_stop()hoặc nút trên tay cầm). - Khi trọng tài yêu cầu dừng, drone phải hạ cánh ngay (luật 2.4.5).
Toạ độ và lệnh lập trình drone
Các lệnh di chuyển tính theo hướng mũi drone lúc đó: move_forward là đi về phía mũi, move_left là sang bên trái của drone. Khoảng cách tính bằng cm. Lệnh xoay (turn_left, turn_right) chỉ quay mũi tại chỗ — nhưng sau đó "phía trước" đã đổi hướng!
drone.takeoff() # bay lên ~80 cm drone.move_forward(100) # tiến 100 cm drone.move_left(50) # sang trái 50 cm drone.move_distance(0, 0, 0.3) # lên 30 cm (mét) drone.turn_right(90) # quay mũi sang phải drone.move_forward(100) # giờ là đi sang phải! drone.land()
turn_right(90) rồi move_forward(100) — drone sẽ ở đâu? Đáp án: cách chỗ cũ 1 m về phía Đông.Bay hình vuông cạnh 1 m cần lặp lại 4 lần "tiến 100 cm, quay phải 90°":
for i in range(4):
drone.move_forward(100)
drone.turn_right(90)Kiểm tra nhanh
8 câu hỏi ôn lại kiến thức. Đúng từ 6 câu trở lên là bạn đã sẵn sàng sang phần thi Fast Track!