docs: add flight logs article

This commit is contained in:
Oleg Kalachev
2018-06-13 16:29:55 +03:00
parent 874f206e2a
commit b50c34b19c
4 changed files with 53 additions and 0 deletions

View File

@@ -28,6 +28,7 @@
* [Подключение GPS](gps.md)
* [Использование 3G-модема](3g.md)
* [Устройство сети RPi](network.md)
* [Работа с логами PX4](flight_logs.md)
* Учебник
* [Уроки](lessons.md)
* [Учебно-методическое пособие](metod.md)

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 KiB

BIN
docs/assets/flightplot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 KiB

52
docs/flight_logs.md Normal file
View File

@@ -0,0 +1,52 @@
Логи и топики PX4
===
Для детального анализа поведения прошивки PX4 необходимо смотреть полетные логи. Полетные логи представляют собой PX4-топики ([uORB](https://dev.px4.io/en/middleware/uorb.html)), записанные в файл с раширением `.ulg`. Лог-файл можно скачать с помощью QGroundControl по Wi-Fi или USB во вкладке *Log Download*:
![](assets/download-log.png)
Также необходимые `.ulg`-файлы можно скопировать непосредственно с MicroSD-карты, находившейся в полетном контроллере.
Анализ
---
Лог-файл можно анализировать с помомщью программы FlightPlot. Актуальную версию программы можно [скачать](https://github.com/PX4/FlightPlot/releases) на GitHub.
В программе можно просмотр полный список записанных топиков (*Fields List*). В нем нужно выбрать необходимые топики, после чего они появятся на графике:
![](assets/flightplot.png)
Основные топики в PX4
---
Полный список топиков можно узнать в исходном коде проекта [в каталоге `msg`](https://github.com/PX4/Firmware/tree/master/msg).
Список некоторых топиков:
* **vehicle_status** состояние коптера (режим и т. д.);
* **vehicle_local_position** локальная позиция коптера;
* **vehicle_attitude** – ориентация коптера;
* **vehicle_local_position_setpoint**  целевая точка (setpoint) коптера по позиции;
* **vehicle_global_position** – глобальная позиция коптера;
* **vehicle_vision_position** – полученная визуальная позиция коптера, аналог MAVLink пакета `VISION_POSITION_ESTIMATE` или MAVROS-топика `/mavros/vision_position_estimate/pose`;
* **att_pos_mocap** – полученная MOCAP-позиция коптера, аналог MAVLink пакета `ATT_POS_MOCAP` или MAVROS-топика `/mavros/mocap/pose`;
* **actuator_controls** сигналы на моторы;
* **vehicle_land_detected** – статус Land-detector'а;
Мониторинг топиков в режиме реального времени
---
Для более новых версий платы PixHawk (`px4fmu-v3`), а также для плат PixRacer, в прошивку включен модуль `topic_listener`, который позволяет просматривать значения топиков в режиме реального времени (в том числе в полете).
Для ее использования нужно выбрать вкладку Mavlink Console в QGroundControl.
Команда `list_topics` выводит список топиков, доступных для просмотра.
Команда `listener <название топика>` выводит текущее значение топика либо ждет нового сообщения в нем в течение 2-х секунд. Существует третий опциональный параметр, который определяет количество сообщений, которые необходимо вывести.
Примеры:
`listener vehicle_local_position`
`listener vehicle_attitude 5`