diff --git a/clever/launch/clever.launch b/clever/launch/clever.launch index 0b93b5b5..280f04ff 100644 --- a/clever/launch/clever.launch +++ b/clever/launch/clever.launch @@ -42,7 +42,9 @@ - + + + diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 918dd66a..d58a0337 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -12,6 +12,7 @@ * [Подключение по Wi-Fi](wifi.md) * [Работа с QGroundControl через Wi-Fi](gcs_bridge.md) * [Прошивка Pixhawk/Pixracer](firmware.md) +* [Параметры PX4](px4_parameters.md) * [Пилотирование со смартфона](rc.md) * [SSH-доступ](ssh.md) * [Устройство UART](uart.md) diff --git a/docs/assets/rqt.png b/docs/assets/rqt.png new file mode 100644 index 00000000..1ebdf93c Binary files /dev/null and b/docs/assets/rqt.png differ diff --git a/docs/assets/Снимок экрана 2017-11-28 в 23.50.36.png b/docs/assets/rviz.png similarity index 100% rename from docs/assets/Снимок экрана 2017-11-28 в 23.50.36.png rename to docs/assets/rviz.png diff --git a/docs/px4_parameters.md b/docs/px4_parameters.md new file mode 100644 index 00000000..9936ed82 --- /dev/null +++ b/docs/px4_parameters.md @@ -0,0 +1,70 @@ +# Параметры PX4 + +Основная статья: https://dev.px4.io/en/advanced/parameter_reference.html + +> **Note** Это описание некоторых, наиболее важных параметров PX4 по состоянию на версию 1.8.0. Полный список см. по ссылке выше. + +Для изменения параметров PX4 можно воспользоваться программой QGroundControl, [подключившись к Клеверу по Wi-Fi](gcs_bridge.md). + +## Основные параметры + +Наиболее важные параметры вынесены в этот параграф. + +`SYS_MC_EST_GROUP` – выбор модуля estimator'а. + +Это группа модулей, которая вычисляет текущее состояние (state) коптера, используя показания с датчиков. В состояние коптера входит: + +* угловая скорость коптера – pitch_rate, roll_rate, yaw_rate; +* ориентация коптера (в локальной системе координат) – pitch (тангаж), roll (крен), yaw (рысканье) (одно из представлений); +* позиция коптера (в локальной системе координат) – x, y, z; +* скорость коптера (в локальной системе координат) – vx, vy, vz; +* глобальные координаты коптера – lattitude, longitude, altitude; +* высота над поверхностью; +* другие параметры (дрейф гироскопов, скорость ветра и пр.). + +`SYS_AUTOCONFIG` – сброс всех параметров (при установке в значение 1). + +## EKF2 + +`EKF2_AID_MASK` – выбор датчиков, которые используются EKF2 для вычисления состояния коптера. + +`EKF2_HGT_MODE` – основной источник данных о высоте (z в локальной системе координт): + +* 0 – давление с барометра. +* 1 – GPS. +* 2 – дальномер (например, vl53l1x). +* 3 – данные с VPE. + +Вариант 2 является наиболее точным, но его корректно использовать, только если поверхность, над которой летает котер – плоская. В противном случае начало координат по Z будет двигаться вверх и вниз с изменением высоты поверхности. + +## Multicopter Position Control (полет по позиции) + +Данные параметры настраивают полет коптера по позиции (режимы POSCTL, OFFBOARD, AUTO). + +`MPC_THR_HOVER` – газ висения. Данный параметр наобходимо установить на примерный процент газа, необходимый для того, чтобы коптер удерживал высоту. Если коптер имеет тенденцию набирать или терять высоту в режиме удержания высоты – можно уменьшить или увеличить это значение. + +`MPC_XY_P` – коэффициент *P* регулятора по позиции. Этот параметр влияет на то, насколько резко коптер будет выполнять заданные команды по позиции. Слишком большое значение может вызвать перестрелы. + +`MPC_XY_VEL_P` – коэффициент *P* регулятора по скорости. Данный параметр также влияет на точность и резкость выполнения коптером заданной позиции. При слишком большом значении возможны перестрелы. + +`MPC_XY_VEL_MAX` – максимальная горизонтальная скорость в режимах POSCTL, OFFBOARD, AUTO. + +`MPC_Z_P`, `MPC_Z_VEL_P` – коэффициенты *P* регуляторов по вертикальной позиции и скорости. Влияют на удерживание коптером необходимой высоты. + +`MPC_LAND_SPEED` – вертикальная скорость посадки в режиме LAND. + +## LPE + Q attitude estimator + +Данные параметры настраивают поведение модулей `lpe` и `q`, которые вычисляют состояние (ориентацию, позицию) коптера. Эти параметры применяются **только** если параметр `SYS_MC_EST_GROUP` установлен в значение `1` (local_position_estimator, attitude_estimator_q) + +TODO + +## Commander + +Преарм-чеки, переключение режимов и состояний коптера. + +## Sensors + +Включение, выключение и настройка различных датчков. + +TODO diff --git a/docs/rviz.md b/docs/rviz.md index a549baf2..747d30bb 100644 --- a/docs/rviz.md +++ b/docs/rviz.md @@ -1,11 +1,13 @@ -Использование rviz +Использование rviz и rqt === -![](assets/Снимок экрана 2017-11-28 в 23.50.36.png) +![](assets/rviz.png) Инструмент [rviz](http://wiki.ros.org/rviz) позволяет в реальном времени визуализировать на 3D-сцене все компоненты роботехнической системы — системы координат, движущиеся части, показания датчиков, изображения с камер. -Для использования rviz необходим компьютер с ОС Ubuntu Linux (либо виртуальная машина, например [Parallels Desktop Lite](https://itunes.apple.com/ru/app/parallels-desktop-lite/id1085114709?mt=12) или [VirtualBox](https://www.virtualbox.org)). +[rqt](http://wiki.ros.org/rqt) – это набор GUI для анализа и контроля ROS-систем. Например, `rqt_image_view` позволяет просматривать топики с изображениями, `rqt_multiplot` – строить графики по значениям в топиках и т. д. + +Для использования rviz и rqt необходим компьютер с ОС Ubuntu Linux (либо виртуальная машина, например [Parallels Desktop Lite](https://itunes.apple.com/ru/app/parallels-desktop-lite/id1085114709?mt=12) или [VirtualBox](https://www.virtualbox.org)). На него необходимо установить пакет `ros-kinetic-desktop-full` или `ros-kinetic-desktop`, используя [документацию по установке](http://wiki.ros.org/kinetic/Installation/Ubuntu). @@ -24,14 +26,34 @@ ROS_MASTER_URI=http://192.168.11.1:11311 rviz export ROS_IP=192.168.11.1 ``` -Использование +Использование rviz --- В качестве reference frame рекомендуется установить фрейм `local_origin`. Для визуализации коптера можно добавить визуализационные маркеры из топика `/vehicle_markers`. Можно просмотреть картинку с дополненной реальностью из топика основной камеры `/main_camera/image_raw`. Axis или Grid настроенный на фрейм `aruco_map` будут визуализировать расположение [карты ArUco-меток](aruco.md). -Рекомендуется также установка набора дополнительных полезных плагинов [jsk_rviz_plugins](https://jsk-docs.readthedocs.io/en/latest/jsk_visualization/doc/jsk_rviz_plugins/index.html). Это набор позволяет визуализировать топики типа `TwistStamped` (скорость), `CameraInfo`, `PolygonArray` и многое другое. Для установки используйте команду: +Запуск инструментов rqt +--- + +![](assets/rqt.png) + +Для запуска rqt для мониторинга состояния Клевера используйте команду: + +```bash +ROS_MASTER_URI=http://192.168.11.1:11311 rqt +``` + +Пример запуск конкретного плагина (`rqt_image_view`): + +```bash +ROS_MASTER_URI=http://192.168.11.1:11311 rqt_image_view +``` + +jsk_rviz_plugins +--- + +Рекомендуется также установка набора дополнительных полезных плагинов для rviz [jsk_rviz_plugins](https://jsk-docs.readthedocs.io/en/latest/jsk_visualization/doc/jsk_rviz_plugins/index.html). Это набор позволяет визуализировать топики типа `TwistStamped` (скорость), `CameraInfo`, `PolygonArray` и многое другое. Для установки используйте команду: ```bash sudo apt-get install ros-kinetic-jsk-visualization