Пристрої MAVLink (GCS/OSD/Супутник)
Станції земного контролю (GCS), екрани на екрані (OSD), супутні комп'ютери, отримувачі ADS-B та інші периферійні пристрої MAVLink взаємодіють з PX4 за допомогою окремих потоків MAVLink, які надсилаються через різні послідовні порти.
Для налаштування того, щоб конкретний послідовний порт використовувався для трафіку MAVLink з певним периферійним пристроєм, ми використовуємо Конфігурацію послідовного порту, призначаючи один з абстрактних параметрів конфігурації "екземпляр MAVLink" в потрібний порт. Потім ми встановлюємо інші властивості каналу MAVLink, використовуючи параметри, пов'язані з обраним екземпляром MAVLink, щоб вони відповідали вимогам нашого конкретного периферійного пристрою.
Найбільш актуальні параметри описані нижче (повний набір перераховано в Посилання на параметри > MAVLink).
Екземпляри MAVLink
Для того щоб призначити певний периферійний пристрій до послідовного порту ми використовуємо концепцію екземпляру MAVLink.
Кожен екземпляр MAVLink представляє певну конфігурацію MAVLink, яку ви можете застосувати до певного порту. На момент написання визначено три екземпляри MAVLink, кожен з яких представлений параметром MAV_X_CONFIG, де X - 0, 1, 2.
Кожен екземпляр має пов'язані параметри, які ви можете використовувати для визначення властивостей екземпляра на цьому порту, таких як набір переданих повідомлень (див. MAV_X_MODE нижче), швидкість передачі даних (MAV_X_RATE), чи пересилається вхідний трафік до інших екземплярів MAVLink (MAV_X_FORWARD), тощо.
INFO
Інстанції MAVLink - абстрактне поняття для конкретної конфігурації MAVLink. Число в назві нічого не означає; ви можете призначити будь-який екземпляр до будь-якого порту.
Параметри для кожного екземпляру є:
MAV_X_CONFIG - Встановлює послідовний порт (UART) для цього екземпляру "X", де X - 0, 1, 2. Це може бути будь-який не використаний порт, наприклад:
TELEM2
,TELEM3
,GPS2
тощо. Для отримання додаткової інформації дивіться Конфігурація послідовного порту.MAV_X_MODE - Вкажіть режим телеметрії / ціль (набір повідомлень для поточного екземпляра та їхню швидкість). Значення за замовчуванням:
- Звичайний: Стандартний набір повідомлень для GCS.
- Спеціальний або Магія: Нічого (у типовій реалізації PX4 за замовчуванням). Режими можуть бути використані для тестування при розробці нового режиму.
- На борту: Стандартний набір повідомлень для компаньйонного комп'ютера.
- OSD: Стандартний набір повідомлень для системи OSD.
- Конфігурація: Стандартний набір повідомлень та конфігурація швидкого зв'язку (наприклад, USB).
- Мінімальний: Мінімальний набір повідомлень для використання з GCS, підключеним через високолатентне з'єднання.
- ExtVision або ExtVisionMin: Повідомлення для зовнішніх систем візуалізації (ExtVision необхідний для VIO).
- Іридій: Повідомлення для супутникової комунікаційної системи Iridium.
Якщо вам потрібно знайти конкретний набір повідомлень для кожного режиму, виконайте пошук
MAVLINK_MODE_
у /src/modules/mavlink/mavlink_main.cpp.
:::
TIP
Режим визначає типові повідомлення та тарифи. Підключена система MAVLink все ще може запитувати потоки/швидкості, які вона хоче, використовуючи MAV_CMD_SET_MESSAGE_INTERVAL.
- MAV_X_RATE - Встановіть максимальну швидкість передачі даних для цього екземпляра (байт/секунду).
- Це комбінована ставка для всіх потоків окремого повідомлення (ставки для окремих повідомлень зменшуються, якщо загальна ставка перевищує це значення).
- За замовчуванням налаштування, як правило, буде прийнятним, але може бути зменшено, якщо телеметричний зв'язок стає насиченим і занадто багато повідомлень втрачається.
- Значення 0 встановлює швидкість передачі даних вдвічі менше теоретичного значення.
- MAV_X_FORWARD - Увімкніть пересилання пакетів MAVLink, отриманих поточним екземпляром, на інші інтерфейси. Це може бути використано, наприклад, для передачі повідомлень між GCS та супутнім комп'ютером, щоб GCS міг спілкуватися з камерою, підключеною до супутнього комп'ютера, яка підтримує MAVLink.
Далі вам потрібно встановити швидкість передачі для послідовного порту, який ви призначили вище (у MAV_X_CONFIG
).
TIP
Потрібно перезавантажити PX4, щоб параметр став доступним (тобто в QGroundControl).
Використовуваний параметр буде залежати від призначеного послідовного порту - наприклад: SER_GPS1_BAUD
, SER_TEL2_BAUD
і т. д. Значення, яке ви використовуєте, буде залежати від типу підключення та можливостей підключеного периферійного пристрою MAVLink.
Порти MAVLink за замовчуванням
TELEM1
Порт TELEM 1
майже завжди налаштовується за замовчуванням для потоку телеметрії GCS ("Нормальний").
Для підтримки цього існує типове відображення послідовного порту екземпляра MAVLink 0, як показано нижче:
- MAV_0_CONFIG =
TELEM 1
- MAV_0_MODE =
Normal
- MAV_0_RATE=
1200
Bytes/s - MAV_0_FORWARD =
True
- SER_TEL1_BAUD =
57600
TELEM2
Порт TELEM 2
зазвичай налаштовується за замовчуванням для потоку телеметрії супутнього комп'ютера ("На борту").
Для підтримки цього існує типове відображення послідовного порту екземпляра MAVLink 0, як показано нижче:
- MAV_1_CONFIG =
TELEM 2
- MAV_1_MODE =
Onboard
- MAV_1_RATE=
0
(Half maximum) - MAV_1_FORWARD =
Disabled
- SER_TEL2_BAUD =
921600
ETHERNET
Пристрої Pixhawk 5x (і пізніші), які мають порт Ethernet, за замовчуванням налаштовані на підключення до GCS:
На цьому обладнанні є типове відображення послідовного порту екземпляра MAVLink 2, як показано нижче:
- MAV_2_CONFIG =
Ethernet
(1000) - MAV_2_BROADCAST =
1
- MAV_2_MODE =
0
(normal/GCS) - MAV_2_RADIO_CTL =
0
- MAV_2_RATE =
100000
- MAV_2_REMOTE_PRT=
14550
(GCS) - MAV_2_UDP_PRT =
14550
(GCS)
Для отримання додаткової інформації див. : Налаштування Ethernet PX4