mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-26 09:26:25 +08:00
Move PX4 Guide source into /docs (#24490)
* Add vitepress tree * Update existing workflows so they dont trigger on changes in the docs path * Add nojekyll, package.json, LICENCE etc * Add crowdin docs upload/download scripts * Add docs flaw checker workflows * Used docs prefix for docs workflows * Crowdin obvious fixes * ci: docs move to self hosted runner runs on a beefy server for faster builds Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: don't run build action for docs or ci changes Signed-off-by: Ramon Roche <mrpollo@gmail.com> * ci: update runners Signed-off-by: Ramon Roche <mrpollo@gmail.com> * Add docs/en * Add docs assets and scripts * Fix up editlinks to point to PX4 sources * Download just the translations that are supported * Add translation sources for zh, uk, ko * Update latest tranlsation and uorb graphs * update vitepress to latest --------- Signed-off-by: Ramon Roche <mrpollo@gmail.com> Co-authored-by: Ramon Roche <mrpollo@gmail.com>
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
# Розширені функції
|
||||
|
||||
Цей розділ містить теми, пов'язані з деякими більш розширеними функціями автопілота PX4:
|
||||
|
||||
- [Уникнення повітряного трафіку: ADS-B/FLARM/UTM](../peripherals/adsb_flarm.md)
|
||||
- [Комп'ютерний зір](../computer_vision/index.md)
|
||||
- [Попередження зіткнень](../computer_vision/collision_prevention.md) (може використовувати комп'ютер-компаньйон або датчики на польотному контролері)
|
||||
- [Захоплення руху (MoCap)](../computer_vision/motion_capture.md)
|
||||
- [Візуальна інерційна одометрія (VIO)](../computer_vision/visual_inertial_odometry.md)
|
||||
- [Система супутникового зв'язку Iridium/RockBlock](../advanced_features/satcom_roadblock.md)
|
||||
- [Точна посадка](../advanced_features/precland.md)
|
||||
- [RTK GNSS (GPS)](../gps_compass/rtk_gps.md)
|
||||
@@ -0,0 +1,215 @@
|
||||
# Точна посадка
|
||||
|
||||
PX4 підтримує точне приземлення для _Multicopters_ на стаціонарних або рухомих цілях.
|
||||
Ціль може бути надана вбудованим ІЧ-датчиком та приземленням, або зовнішньою системою позиціонування.
|
||||
|
||||
Пристрій для точного приземлення може бути [запущений/ініційований](#initiating-a-precision-landing) як частина [місії](#mission), у режимі [повернення](#return-mode-precision-landing) на посадку або при вході у режим польоту [_Точна посадка_](#precision-landing-flight-mode).
|
||||
|
||||
:::info
|
||||
Точна посадка можлива лише з дійсною глобальною позицією (через обмеження в поточній реалізації контролера позиції).
|
||||
:::
|
||||
|
||||
## Загальний огляд
|
||||
|
||||
### Режими посадки
|
||||
|
||||
Точну посадку можна налаштувати як "обов'язкову" або "вигідну".
|
||||
Вибір режиму впливає на те, як виконується точна посадка.
|
||||
|
||||
#### Необхідний режим
|
||||
|
||||
У _Required Mode_ транспортний засіб буде шукати ціль, якщо нічого не видно під час початку посадки.
|
||||
Транспортний засіб виконає точну посадку, якщо ціль буде знайдена.
|
||||
|
||||
Процедура пошуку полягає у підйомі на висоту пошуку ([PLD_SRCH_ALT](../advanced_config/parameter_reference.md#PLD_SRCH_ALT)).
|
||||
Якщо мішень все ще не видно на висоті пошуку після закінчення часу пошуку ([PLD_SRCH_TOUT](../advanced_config/parameter_reference.md#PLD_SRCH_TOUT)), то ініціюється звичайна посадка на поточному місці.
|
||||
|
||||
:::info
|
||||
Якщо використовується позамежна система позиціонування, PX4 передбачає, що ціль буде видима, коли отримує повідомлення MAVLink [LANDING_TARGET](https://mavlink.io/en/messages/common.html#LANDING_TARGET).
|
||||
:::
|
||||
|
||||
#### Опортуністичний режим
|
||||
|
||||
У режимі _Opportunistic Mode_ транспортний засіб використовуватиме точну посадку, _якщо_ (і тільки якщо) ціль буде видима, коли розпочинається посадка.
|
||||
Якщо ціль не видно, транспортний засіб негайно виконує _звичайну_ посадку на поточному місці.
|
||||
|
||||
### Фази посадки
|
||||
|
||||
Режим Точної посадки має три етапи:
|
||||
|
||||
1. **Горизонтальний підхід:** Транспортний засіб підходить до цілі горизонтально, утримуючи свою поточну висоту.
|
||||
Як тільки положення цілі відносно транспортного засобу опускається нижче порогового значення ([PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD)), відбувається вхід до наступної фази.
|
||||
Якщо ціль втрачається під час цієї фази (не видно довше, ніж [PLD_BTOUT](../advanced_config/parameter_reference.md#PLD_BTOUT)), ініціюється процедура пошуку (під час необхідної точної посадки) або транспортний засіб робить звичайну посадку (під час можливої точної посадки).
|
||||
|
||||
2. **Спуск над ціль:** Транспортний засіб спускається, залишаючись при цьому над ціллю.
|
||||
Якщо ціль втрачається під час цієї фази (не видно довше, ніж `PLD_BTOUT`), ініціюється процедура пошуку (під час необхідної точної посадки) або транспортний засіб робить звичайну посадку (під час можливої точної посадки).
|
||||
|
||||
3. **Останній підхід:** Коли транспортний засіб знаходиться близько до землі (ближче, ніж [PLD_FAPPR_ALT](../advanced_config/parameter_reference.md#PLD_FAPPR_ALT)), він спускається, залишаючись при цьому над ціллю.
|
||||
Якщо ціль втрачається під час цієї фази, спуск продовжується незалежно від виду точної посадки.
|
||||
|
||||
Процедури пошуку ініціюються на перших і других етапах і виконуються не більше [PLD_MAX_SRCH разів](../advanced_config/parameter_reference.md#PLD_MAX_SRCH).
|
||||
Діаграма потоку фаз посадки
|
||||
|
||||
Діаграма потоку, що показує фази, може бути знайдена на [діаграмі потоку фаз посадки](#landing-phases-flow-diagram) нижче.
|
||||
|
||||
## Початок точної посадки
|
||||
|
||||
Точне приземлення можна використовувати у місіях, під час фази посадки у режимі _Повернення_, або ввійшовши в режим _Точна посадка_.
|
||||
|
||||
<a id="mission"></a>
|
||||
|
||||
### Місія Точна посадка
|
||||
|
||||
Точне приземлення може бути запущено як частина [місії](../flying/missions.md), використовуючи [MAV_CMD_NAV_LAND](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_LAND) з відповідно встановленим `param2`:
|
||||
|
||||
- `0`: нормальне приземлення без використання цілі.
|
||||
- `1`: [Opportunistic](#opportunistic-mode) режим точної посадки.
|
||||
- `2`: [Required](#required-mode) режим точної посадки.
|
||||
|
||||
### Режим повернення з точною посадкою
|
||||
|
||||
Точна посадка може бути використана у фазі посадки у [режимі повернення](../flight_modes/return.md).
|
||||
|
||||
Це вмикається за допомогою параметра [RTL_PLD_MD](../advanced_config/parameter_reference.md#RTL_PLD_MD), який приймає такі значення:
|
||||
|
||||
- `0`: Точна посадка вимкнена (посадка як зазвичай).
|
||||
- `1`: [Опортуничний](#opportunistic-mode) режим точної посадки.
|
||||
- `2`: [Вимагається](#required-mode) режим точної посадки.
|
||||
|
||||
### Режим польоту з точною посадкою
|
||||
|
||||
Точна посадка може бути ввімкнена, переключившись у режим польоту з _точною посадкою_.
|
||||
|
||||
Ви можете перевірити це, використовуючи [консоль MAVLink _QGroundControl_](../debug/mavlink_shell.md#qgroundcontrol-mavlink-console) для введення наступної команди:
|
||||
|
||||
```sh
|
||||
commander mode auto:precland
|
||||
```
|
||||
|
||||
:::info
|
||||
При переході до режиму таким чином, точна посадка завжди "вимагається"; немає способу вказати тип посадки.
|
||||
:::
|
||||
|
||||
:::info
|
||||
На момент написання немає _зручного_ способу безпосередньо викликати точну посадку (окрім командування режимом повернення):
|
||||
|
||||
- QGroundControl_ не надає його як параметр користувальницького інтерфейсу.
|
||||
- Команда [MAV_CMD_NAV_LAND](https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_LAND) працює лише в місіях.
|
||||
- Команда [MAV_CMD_DO_SET_MODE](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_SET_MODE) має працювати, але вам потрібно визначити відповідні базові і користувацькі режими, які використовує PX4 для представлення режиму точної посадки.
|
||||
|
||||
:::
|
||||
|
||||
## Налаштування програмного забезпечення
|
||||
|
||||
### Налаштування IR Сенсора/Бікона
|
||||
|
||||
Рішення з інфрачервоним датчиком/посадковим маяком потребує датчика [IR-LOCK](https://irlock.com/products/ir-lock-sensor-precision-landing-kit) та напрямленого донизу [датчика відстані](../sensor/rangefinders.md), підключеного до автопілота, а також інфрачервоного маяка в якості цілі (наприклад, [IR-LOCK MarkOne](https://irlock.com/collections/markone)).
|
||||
Це дозволяє приземлитися з точністю приблизно 10 см (в той час як точність GPS може бути в декілька метрів).
|
||||
|
||||
Встановіть датчик IR-LOCK, слідуючи [офіційному посібнику](https://irlock.readme.io/v2.0/docs).
|
||||
Переконайтеся, що ось x сенсора вирівняна з осью y транспортного засобу, а ось y сенсора вирівняна з напрямком -x транспортного засобу (це відбувається, якщо камера нахилена вниз на 90 градусів від напрямку вперед).
|
||||
|
||||
Установіть [датчик дальності/відстані](../sensor/rangefinders.md) (виявлено, що _LidarLite v3_ працює добре).
|
||||
|
||||
:::info
|
||||
Багато датчиків дальності на основі інфрачервоного випромінювання погано працюють в присутності маяка IR-LOCK.
|
||||
Зверніться до посібника з IR-LOCK для інших сумісних датчиків.
|
||||
:::
|
||||
|
||||
## Позабортне позиціонування
|
||||
|
||||
Для позабортового рішення потрібна система позиціонування, яка реалізує [Landing Target Protocol](https://mavlink.io/en/services/landing_target.html) MAVLink.
|
||||
Це може використовувати будь-який механізм позиціонування для визначення місця посадки, наприклад комп'ютерного зору та візуального маркера.
|
||||
|
||||
Система повинна публікувати координати цілі в повідомленні [LANDING_TARGET](https://mavlink.io/en/messages/common.html#LANDING_TARGET).
|
||||
Зверніть увагу, що PX4 _вимагає_, щоб `LANDING_TARGET.frame` був [MAV_FRAME_LOCAL_NED](https://mavlink.io/en/messages/common.html#MAV_FRAME_LOCAL_NED) і заповнював лише поля `x`, `y`, та `z`.
|
||||
Початок локальної системи NED [0,0] - це домашня позиція (ви можете відобразити цю домашню позицію на глобальні координати, використовуючи [GPS_GLOBAL_ORIGIN](https://mavlink.io/en/messages/common.html#GPS_GLOBAL_ORIGIN)).
|
||||
|
||||
PX4 does not explicitly require a [distance sensor](../sensor/rangefinders.md) or other sensors, but will perform better if it can more precisely determine its own position.
|
||||
|
||||
## Конфігурація прошивки
|
||||
|
||||
Для точної посадки потрібні модулі `irlock` та `landing_target_estimator`.
|
||||
Ці модулі включені до прошивки PX4 за замовчуванням для більшості польотних контролерів.
|
||||
|
||||
Вони не включені за замовчуванням на контролерах, що базуються на FMUv2.
|
||||
На цих та інших платах, де вони не включені, ви можете додати їх, встановивши наступні ключі на 'y' у відповідному конфігураційному файлі для вашого автопілота (наприклад, як зроблено тут для FMUv5: [PX4-Autopilot/boards/px4/fmu-v5/default.px4board](https://github.com/PX4/PX4-Autopilot/blob/main/boards/px4/fmu-v5/default.px4board)):
|
||||
|
||||
```
|
||||
CONFIG_DRIVERS_IRLOCK=y
|
||||
CONFIG_MODULES_LANDING_TARGET_ESTIMATOR=y
|
||||
```
|
||||
|
||||
## Конфігурація PX4 (параметри)
|
||||
|
||||
Датчик IR-Lock вимкнено за замовчуванням.
|
||||
Увімкніть його, встановивши [SENS_EN_IRLOCK](../advanced_config/parameter_reference.md#SENS_EN_IRLOCK) на `1` (true).
|
||||
|
||||
[LTEST_MODE](../advanced_config/parameter_reference.md#LTEST_MODE) визначає, чи припускається, що ціль є нерухомою або рухливою.
|
||||
Якщо параметр `LTEST_MODE` встановлено на значення moving (наприклад, він встановлений на транспортний засіб, на який має сісти багтроплан), вимірювання цілі використовуються лише для генерації цілейових точок позиції в контролері точної посадки.
|
||||
Якщо параметр `LTEST_MODE` встановлено на значення stationary, вимірювання цілі також використовуються оцінювачем позиції транспортного засобу (EKF2 або LPE).
|
||||
|
||||
Інші важливі параметри перераховані в посиланнях на параметри в референсі параметрів під [Landing_target estimator](../advanced_config/parameter_reference.md#landing-target-estimator) та [Precision land](../advanced_config/parameter_reference.md#precision-land).
|
||||
Деякі з найбільш корисних перераховані нижче.
|
||||
|
||||
| Параметр | Опис |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| <a id="SENS_EN_IRLOCK"></a>[SENS_EN_IRLOCK](../advanced_config/parameter_reference.md#SENS_EN_IRLOCK) | IR-LOCK Sensor (зовнішній I2C). Disable: `0` (default): Enable: `1`). |
|
||||
| <a id="LTEST_MODE"></a>[LTEST_MODE](../advanced_config/parameter_reference.md#LTEST_MODE) | Landing target is moving (`0`) or stationary (`1`). За замовчуванням - рухома. |
|
||||
| <a id="PLD_HACC_RAD"></a>[PLD_HACC_RAD](../advanced_config/parameter_reference.md#PLD_HACC_RAD) | Горизонтальний радіус прийняття, всередині якого транспортний засіб почне спускатися. За замовчуванням - 0,2 м. |
|
||||
| <a id="PLD_BTOUT"></a>[PLD_BTOUT](../advanced_config/parameter_reference.md#PLD_BTOUT) | Таймаут цілі посадки, після якого припускається, що ціль втрачена. За замовчуванням - 5 секунд. |
|
||||
| <a id="PLD_FAPPR_ALT"></a>[PLD_FAPPR_ALT](../advanced_config/parameter_reference.md#PLD_FAPPR_ALT) | Висота останнього підходу. Висота останнього підходу. За замовчуванням - 0,1 метра. |
|
||||
| <a id="PLD_MAX_SRCH"></a>[PLD_MAX_SRCH](../advanced_config/parameter_reference.md#PLD_MAX_SRCH) | Максимальна кількість спроб пошуку у вимаганій посадці. |
|
||||
| <a id="RTL_PLD_MD"></a>[RTL_PLD_MD](../advanced_config/parameter_reference.md#RTL_PLD_MD) | Режим точної посадки RTL. `0`: disabled, `1`: [Opportunistic](#opportunistic-mode), `2`: [Required](#required-mode). |
|
||||
|
||||
### Масштабування ІЧ-маяка
|
||||
|
||||
Масштабування вимірювань може бути необхідним через спотворення об'єктива датчика IR-LOCK.
|
||||
|
||||
[LTEST_SCALE_X](../advanced_config/parameter_reference.md#LTEST_SCALE_X) та [LTEST_SCALE_Y](../advanced_config/parameter_reference.md#LTEST_SCALE_Y) можуть бути використані для масштабування вимірів маяка, перед тим як вони будуть використані для оцінки позиції та швидкості маяка відносно транспортного засобу.
|
||||
Зверніть увагу, що `LTEST_SCALE_X` та `LTEST_SCALE_Y` вважаються в рамках датчика, а не в рамках транспортного засобу.
|
||||
|
||||
Щоб калібрувати ці параметри масштабу, встановіть `LTEST_MODE` на значення moving, підніміть свій багатокоптер вище за маяк і виконайте рухи вперед-назад та ліворуч-праворуч з транспортним засобом, під час цього [записуючи](../dev_log/logging.md#configuration) дані з `landing_target_pose` та `vehicle_local_position`.
|
||||
Потім порівняйте `landing_target_pose.vx_rel` та `landing_target_pose.vy_rel` з `vehicle_local_position.vx` та `vehicle_local_position.vy` відповідно (обидва виміри у системі координат NED).
|
||||
Якщо оцінювані швидкості маяка завжди менші або більші за швидкості транспортного засобу, налаштуйте параметри масштабування для компенсації.
|
||||
|
||||
Якщо ви спостерігаєте повільні бокові коливання літального апарата під час точної посадки з параметром `LTEST_MODE`, встановленим на стаціонарний, ймовірно, вимірювання маяка занадто високі, і вам слід зменшити параметр масштабування у відповідному напрямку.
|
||||
|
||||
## Симуляція
|
||||
|
||||
Точне приземлення з датчиком IR-LOCK та маяком може бути симульоване в [Gazebo Classic](../sim_gazebo_classic/README.md).
|
||||
|
||||
Щоб запустити симуляцію зі світом, що містить маяк IR-LOCK та транспортний засіб із датчиком дальності та камерою IR-LOCK, виконайте наступну команду:
|
||||
|
||||
```sh
|
||||
make px4_sitl gazebo-classic_iris_irlock
|
||||
```
|
||||
|
||||
Ви можете змінити розташування маяка або перемістивши її в Gazebo Classic GUI або змінивши її місце в [Gazebo World](https://github.com/PX4/PX4-SITL_gazebo-classic/blob/main/worlds/iris_irlock.world#L42).
|
||||
|
||||
## Принцип дії
|
||||
|
||||
### Оцінювач цілей посадки
|
||||
|
||||
`landing_target_estimator` бере вимірювання з драйвера irlock, а також оцінює висоту місцевості для оцінки позиції маяка відносно транспортного засобу.
|
||||
|
||||
The measurements in `irlock_report` містять тангенс кутів від центру зображення до маяка.
|
||||
Іншими словами, вимірювання - це компоненти x та y вектора, що вказує на маяк, де компонент z має довжину "1".
|
||||
Це означає, що масштабування вимірювання за відстанню від камери до маяка призводить до вектора від камери до маяка.
|
||||
Ця відносна позиція потім повертається у зіставлений з півночі, рівномірний корпусний каркас за допомогою оцінки польоту засобами повітряного судна.
|
||||
Обидва компоненти x та y відносного вимірювання позиції фільтруються в окремих фільтрах Калмана, які діють як прості фільтри згладжування з низькою пропускною спроможністю, що також генерують оцінку швидкості та дозволяють відкидати викиди.
|
||||
|
||||
`landing_target_estimator` публікує приблизну відносну позицію і швидкість щоразу, коли новий звіт про `irlock_report` об'єднується в оцінку.
|
||||
Нічого не публікується, якщо маяк не бачиться або вимірювання маяка відхиляються.
|
||||
Оцінка посадкової цілі публікується в повідомленні uORB `landing_target_pose`.
|
||||
|
||||
### Покращена оцінка положення транспортного засобу
|
||||
|
||||
Якщо ціль вказана як стаціонарна за допомогою параметра `LTEST_MODE`, оцінку положення/швидкості транспортного засобу можна покращити за допомогою вимірів цілі.
|
||||
Це виконується шляхом злиття швидкості цілі як вимірювання від'ємної швидкості транспортного засобу.
|
||||
|
||||
### Діаграма потоку фаз посадки
|
||||
|
||||
Це зображення показує [фази посадки](#landing-phases) у вигляді діаграми потоку.
|
||||
|
||||

|
||||
@@ -0,0 +1 @@
|
||||
<Redirect to="../gps_compass/rtk_gps" />
|
||||
@@ -0,0 +1,280 @@
|
||||
# Система супутникового зв'язку Iridium/RockBlock
|
||||
|
||||
Система супутникового зв'язку може використовуватись для забезпечення високого діапазону між наземною станцією та транспортним засобом.
|
||||
|
||||
Ця тема описує спосіб налаштування системи, яка використовує RockBlock як постачальника послуг для системи зв'язку зі супутниковими системами SBD.
|
||||
З огляду на хорошу якість сигналу, користувачі можуть очікувати затримки від 10 до 15 секунд.
|
||||
|
||||
## Загальний огляд
|
||||
|
||||
Для посилання на супутникове зв'язку потрібні наступні компоненти:
|
||||
|
||||
- Модуль [Супутникового модему RockBlock 9603 Iridium](https://www.iridium.com/products/rock-seven-rockblock-9603/), підключений до Pixhawk, спалахнув за допомогою автопілота PX4.
|
||||
- Сервер повторного повідомлення працює Ubuntu Linux.
|
||||
- Автономний комп'ютер запущено _QGroundControl_ на Ubuntu Linux
|
||||
|
||||
Нижче показана вся архітектура системи:
|
||||
|
||||

|
||||
|
||||
:::info
|
||||
The setup was tested with the current release of _QGroundControl_ running on Ubuntu 14.04 and 16.04.
|
||||
|
||||
- Можливо, можна запустити систему на інших наземних станціях і операційних системах, але це не було перевірено (і не гарантовано працює).
|
||||
- Також можна використовувати модуль [RockBlock MK2](https://www.groundcontrol.com/us/product/rockblock-9602-satellite-modem/).
|
||||
Модуль RockBlock 9603 рекомендується оскільки він є меншим та легшим, одночасно забезпечує той самий функціонал.
|
||||
|
||||
:::
|
||||
|
||||
## Витрати
|
||||
|
||||
Посилання на посилання, що працює в Великобританії, складається з вартості оренди лінії та витрат на повідомлення:
|
||||
|
||||
- Кожен модуль повинен бути активований, який коштує 10,00 в місяць
|
||||
- Кожне повідомлення, передане через систему, коштує один _кредит_ за 50 байт.
|
||||
Пакети кредитів можна купити від RockBlock за £0.04-£0.11 за кредит, в залежності від розміру пакета.
|
||||
|
||||
Звертайтесь до [документації RockBlock](https://docs.rockblock.rock7.com/docs) для детального пояснення модулів, оперативних витрат та _RockBlock_ загалом.
|
||||
|
||||
## Налаштування транспорту
|
||||
|
||||
### Підключення
|
||||
|
||||
Підключіть модуль RockBlock до послідовного порту Pixhawk.
|
||||
Через вимоги до живлення модуля його можна живити лише через високопотужний послідовний порт, оскільки для роботи необхідно максимум 0,5 А при 5 В.
|
||||
Якщо жоден з них недоступний або вільний, то інший джерело живлення, яке має той самий рівень землі, що й Pixhawk і може забезпечити необхідну потужність, повинно бути налаштоване.
|
||||
Деталі щодо [роз'ємів](https://docs.rockblock.rock7.com/docs/connectors) та вимог до [живлення](https://docs.rockblock.rock7.com/docs/power-supply) можна знайти в документації RockBlock.
|
||||
|
||||
### Модулі
|
||||
|
||||
Модуль може використовувати як внутрішню антену, так і зовнішню, підключену до роз'єму SMA.
|
||||
Для [перемикання між двома режимами антен](https://docs.rockblock.rock7.com/docs/switching-rockblock-9603-antenna-mode) потрібно змінити положення невеликого кабелю RF.
|
||||
Якщо використовується зовнішня антена, завжди переконуйтеся, що антена підключена до модуля перед включенням живлення, щоб уникнути пошкодження модуля.
|
||||
|
||||
Стандартна швидкість передачі даних модуля - 19200. However, the PX4 _iridiumsbd_ driver requires a baud rate of 115200 so it needs to be changed using the [AT commands](https://www.groundcontrol.com/en/wp-content/uploads/2022/02/IRDM_ISU_ATCommandReferenceMAN0009_Rev2.0_ATCOMM_Oct2012.pdf).
|
||||
|
||||
1. Connect to the module with using a 19200/8-N-1 setting and check if the communication is working using the command: `AT`.
|
||||
Відповідь має бути: `OK`.
|
||||
|
||||
2. Змінити швидкість передачі:
|
||||
|
||||
```
|
||||
AT+IPR=9
|
||||
```
|
||||
|
||||
3. Знову підключіться до моделі з параметрами 115200/8-N-1 і збережіть конфігурацію за допомогою:
|
||||
|
||||
```
|
||||
AT&W0
|
||||
```
|
||||
|
||||
Модуль тепер готовий до використання з PX4.
|
||||
|
||||
### Програмне забезпечення
|
||||
|
||||
[Налаштуйте послідовний порт](../peripherals/serial_configuration.md), на якому буде працювати модуль RockBlock, використовуючи [ISBD_CONFIG](../advanced_config/parameter_reference.md#ISBD_CONFIG).
|
||||
Немає потреби встановлювати швидкість передачі для порту, оскільки це налаштовано драйвером.
|
||||
|
||||
:::info
|
||||
Якщо параметр конфігурації недоступний у _QGroundControl_, можливо, вам знадобиться [додати драйвер до мікропрограми](../peripherals/serial_configuration.md#parameter_not_in_firmware):
|
||||
|
||||
```
|
||||
drivers/telemetry/iridiumsbd
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
## Налаштування RockBlock
|
||||
|
||||
При придбанні першого модуля на RockBlock спочатку потрібно створити обліковий запис користувача.
|
||||
|
||||
Увійдіть у [зобліковий запис](https://rockblock.rock7.com/Operations) та зареєструйте модуль RockBlock в розділі `Мої RockBLOCKs`.
|
||||
Активуйте оренду лінії для модуля та переконайтеся, що на обліковому записі є достатньо кредитів для очікуваного часу польоту.
|
||||
Якщо використовуються налаштування за замовчуванням, з апаратури відправляється одне повідомлення на хвилину на наземну станцію.
|
||||
|
||||
Створіть групу доставки для реле-сервера повідомлень та додайте модуль до цієї групи доставки:
|
||||
|
||||

|
||||
|
||||
## Налаштування сервера станції
|
||||
|
||||
Сервер relay має бути запущений або на Ubuntu 16.04 або 14.04 OS.
|
||||
|
||||
1. Сервер, який працює як ретранслятор повідомлень, повинен мати статичну IP-адресу та два загальнодоступних відкритих TCP-порти:
|
||||
|
||||
- `5672` для брокера повідомлень _RabbitMQ_ (можна змінити в налаштуваннях _rabbitmq_)
|
||||
- `45679` для інтерфейсу HTTP POST (можна змінити у файлі **relay.cfg**)
|
||||
|
||||
2. Встановіть необхідні модулі python:
|
||||
|
||||
```sh
|
||||
sudo pip install pika tornado future
|
||||
```
|
||||
|
||||
3. Встановіть брокер повідомлень `rabbitmq`:
|
||||
|
||||
```sh
|
||||
sudo apt install rabbitmq-server
|
||||
```
|
||||
|
||||
4. Налаштуйте облікові дані брокера (змініть PWD на ваш бажаний пароль):
|
||||
|
||||
```sh
|
||||
sudo rabbitmqctl add_user iridiumsbd PWD
|
||||
sudo rabbitmqctl set_permissions iridiumsbd ".*" ".*" ".*"
|
||||
```
|
||||
|
||||
5. Клонувати репозиторій [SatComInfrastructure](https://github.com/acfloria/SatComInfrastructure.git):
|
||||
|
||||
```sh
|
||||
git clone https://github.com/acfloria/SatComInfrastructure.git
|
||||
```
|
||||
|
||||
6. Перейдіть до розташування репозиторію _SatComInfrastructure_ і налаштуйте черги брокера:
|
||||
|
||||
```sh
|
||||
./setup_rabbit.py localhost iridiumsbd PWD
|
||||
```
|
||||
|
||||
7. Перевірте налаштування:
|
||||
|
||||
```sh
|
||||
sudo rabbitmqctl list_queues
|
||||
```
|
||||
|
||||
Це повинно дати вам список із 4 черг: `MO`, `MO_LOG`, `MT`, `MT_LOG`
|
||||
|
||||
8. Edit the `relay.cfg` configuration file to reflect your settings.
|
||||
|
||||
9. Запустіть скрипт реле в режимі відокремленого виконання:
|
||||
|
||||
```sh
|
||||
screen -dm bash -c 'cd SatcomInfrastructure/; ./relay.py
|
||||
```
|
||||
|
||||
Інші інструкції включають:
|
||||
|
||||
- Від’єднати від екрану:
|
||||
|
||||
```sh
|
||||
ctrl+a d
|
||||
```
|
||||
|
||||
- Припиніть виконання сценарію:
|
||||
|
||||
```sh
|
||||
ctrl+a :quit
|
||||
```
|
||||
|
||||
- Знову приєднати до екрана:
|
||||
|
||||
```sh
|
||||
screen -dr
|
||||
```
|
||||
|
||||
## Наземна станція
|
||||
|
||||
Для налаштування наземної станції:
|
||||
|
||||
1. Встановіть необхідні модулі python:
|
||||
|
||||
```sh
|
||||
sudo pip install pika tornado future
|
||||
```
|
||||
|
||||
2. Клонуйте репозиторій SatComInfrastructure:
|
||||
|
||||
```sh
|
||||
git clone https://github.com/acfloria/SatComInfrastructure.git
|
||||
```
|
||||
|
||||
3. Відредагуйте конфігураційний файл **udp2rabbit.cfg**, щоб відображати ваші налаштування.
|
||||
|
||||
4. [Встановить _QGroundControl_](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/getting_started/download_and_install.html) (щоденна збірка).
|
||||
|
||||
5. Додавайте UDP з'єднання в QGC з параметрами:
|
||||
|
||||
- Порт прослуховування: 10000
|
||||
- Цільові хости: 127.0.0.1:10001
|
||||
- Висока затримка: позначено
|
||||
|
||||

|
||||
|
||||
### Перевірка
|
||||
|
||||
1. Відкрийте термінал на комп'ютері наземної станції та перейдіть до розташування репозиторію _SatComInfrastructure_.
|
||||
Потім запустіть скрипт **udp2rabbit.py**:
|
||||
|
||||
```sh
|
||||
./udp2rabbit.py
|
||||
```
|
||||
|
||||
2. Надішліть тестове повідомлення з облікового запису [RockBlock](https://rockblock.rock7.com/Operations) до створеної групи доставки на вкладці `Тестові групи доставки`.
|
||||
|
||||
Якщо в терміналі, де запущений скрипт `udp2rabbit.py`, протягом кількох секунд можна спостерігати підтвердження для повідомлення, то група доставки RockBlock, реле-сервер та скрипт udp2rabbit налаштовані правильно:
|
||||
|
||||

|
||||
|
||||
## Запуск системи
|
||||
|
||||
1. Запустіть _QGroundControl_.
|
||||
Спочатку вручну підключіть високо запізнюваний зв'язок, а потім звичайний телеметрійний зв'язок:
|
||||
|
||||

|
||||
|
||||
2. Відкрийте термінал на комп'ютері наземної станції та перейдіть до розташування репозиторію _SatComInfrastructure_.
|
||||
Потім запустіть скрипт **udp2rabbit.py**:
|
||||
|
||||
```sh
|
||||
./udp2rabbit.py
|
||||
```
|
||||
|
||||
3. Увімкніть транспортний засіб.
|
||||
|
||||
4. Дочекайтеся, доки на QGC не буде отримано перше повідомлення `HIGH_LATENCY2`.
|
||||
Це можна перевірити за допомогою віджету _Інспектора MAVLink_ або на панелі інструментів за допомогою _індикатора зв'язку(LinkIndicator)_.
|
||||
Це можна перевірити за допомогою віджету _Інспектора MAVLink_ або на панелі інструментів за допомогою _індикатора зв'язку(LinkIndicator)_:
|
||||
|
||||

|
||||
|
||||
Індикатор зв'язку завжди показує назву пріоритетного зв'язку.
|
||||
|
||||
5. Супутникова система зв'язку тепер готова до використання.
|
||||
Пріоритетний зв'язок, через який надсилаються команди, визначається наступними способами:
|
||||
|
||||
- Якщо користувач не вказав зв'язок, звичайний радіо телеметрійний зв'язок віддається перевагу перед високозапізнюваним зв'язком.
|
||||
- Автопілот та QGC перехоплюватимуть звичайний радіо телеметрійний зв'язок на високозапізнюваний зв'язок, якщо транспортний засіб зброєний, а радіо телеметрійний зв'язок втрачений (не отримано жодного повідомлення MAVLink протягом певного часу).
|
||||
Як тільки радіо телеметрійний зв'язок відновлюється, QGC та автопілот повертаються до нього.
|
||||
- Користувач може вибрати пріоритетний зв'язок через індикатор зв'язку на панелі інструментів.
|
||||
Це посилання зберігається як пріоритетне посилання, поки воно активне або користувач вибирає інше пріоритетне посилання:
|
||||
|
||||

|
||||
|
||||
## Усунення проблем
|
||||
|
||||
- Повідомлення з супутникового зв'язку від літака отримуються, але команди не можуть бути передані (транспортний засіб не реагує)
|
||||
- Перевірте налаштування реле-сервера і переконайтеся, що вони правильні, особливо IMEI.
|
||||
|
||||
- Повідомлення з супутникового зв'язку від літака не надходять на наземну станцію:
|
||||
|
||||
- Перевірте за допомогою системної консолі, чи запущено драйвер _iridiumsbd_, і якщо так, чи приймається сигнал від будь-якого супутника модулем:
|
||||
|
||||
```sh
|
||||
iridiumsbd status
|
||||
```
|
||||
|
||||
- Впевніться за допомогою перевірочних кроків вище, що реле-сервер, група доставки і скрипт `udp2rabbit.py` налаштовані правильно.
|
||||
|
||||
- Перевірте, чи з'єднання активне, і чи налаштування в ньому правильні.
|
||||
|
||||
- Драйвер IridiumSBD не запускається:
|
||||
|
||||
- Перезапустіть транспортний засіб.
|
||||
Якщо це допомагає, збільште час затримки в `extras.txt`, перед тим як драйвер буде запущений.
|
||||
Якщо це не допомагає, переконайтеся, що Pixhawk і модуль мають одинаковий рівень ґрунту. Підтвердіть також, що швидкість передачі даних модуля встановлена на 115200.
|
||||
|
||||
- Перше повідомлення отримане на землі, але як тільки транспортний засіб літає, жодне повідомлення не може бути передане, або затримка значно збільшується (в розмірах хвилин)
|
||||
- Перевірте якість сигналу після польоту.
|
||||
Якщо вона зменшується під час польоту, і ви використовуєте внутрішню антену, розгляньте можливість використання зовнішньої антени.
|
||||
Якщо ви вже використовуєте зовнішню антену, спробуйте віддалити антену якнайдалі від будь-якої електроніки або будь-якого обладнання, яке може перешкоджати сигналу.
|
||||
Також переконайтеся, що антена не пошкоджена.
|
||||
@@ -0,0 +1 @@
|
||||
<Redirect to="../peripherals/adsb_flarm" />
|
||||
@@ -0,0 +1 @@
|
||||
<Redirect to="../peripherals/adsb_flarm" />
|
||||
Reference in New Issue
Block a user