[RYA 2017] Tổng hợp buổi training ardupilot

Sang Trần

Gà con
Staff member
Chào các bạn mình xin tóm tắt nội dung buổi training ardupilot ngày 28/11/2017 như sau:

1. Giới thiệu hệ thống source code ardupilot.
2. Các file quan trọng sẽ dùng đến, cách tạo 1 schedule task với tần số chạy xác định, tạo biến cho project và nơi để bỏ code của mình vào.
3. Tạo flightmode mới dựa vào ALT_HOLD
http://ardupilot.org/dev/docs/apmcopter-adding-a-new-flight-mode.html
4. Config MissionPlanner để chạy mode vừa tạo.
5. Parameter là gì? Mục đích? Cách tạo parameter mới
http://ardupilot.org/dev/docs/code-overview-adding-a-new-parameter.html
6. Giải thích mode ALT_HOLD. 2 cách thức control trục roll và pitch phục vụ cho lái theo xử lý ảnh.
7. Cách đưa dữ liệu vào bên trong ardupilot
-A -B -C -D -E -F tương ứng với cổng UART tương ứng trong ardupilot
-A udp:127.0.0.1:11234 // Tạo một kết nối UDP data trao đổi qua uartA
-B tcp:127.0.0.1.1234 // Tạo một TCP Server data trao đổi qua uartB
-C /dev/ttyO2 // Tạo kết nối uart từ uart 2 của beaglebone đến uartC của ardupilot
8. Mavlink là gì? Cách encode, decode một gói msg có sẵn.

Bài tập:
- Tạo flightmode dựa trên ALT_HOLD cấu hình mission planner để run mode. Xuất ra terminal giá trị target_roll, target_pitch để debug hướng khi điều chỉnh bằng tay cầm.
- Tạo 5 parameter mới và tập thay đổi giá trị trên MissionPlanner.
- Trao đổi dữ liệu với ardupilot theo 3 kiểu nêu trên. Giá trị đọc vào sẽ đọc trong userhook_fastloop trong UserCode.cpp. Xuất ra terminal dữ liệu đọc được. cliSerial->printf(...).
- Dùng thư viện mavlink encode message msg_attitude_t và gửi vào ardupilot sẽ decode bằng cách đọc data bài tập trên sau đó encode ra các giá trị và xuất lên terminal.

Chúc các bạn thi tốt.
 
Top