Налаштування послідовного порту
PX4 визначає типові функції для багатьох портів керування польотом, тому ви можете підключити модуль GPS до порту з позначкою GPS 1
, приймач RC до RC IN
, або модуль телеметрії до TELEM 1
, і, в цілому, вони просто працюватимуть.
Функції, призначені для портів, повністю конфігуруються за допомогою відповідних параметрів (у більшості випадків). Ви можете призначити будь-який не використаний порт для будь-якої функції або перепризначити порт, щоб використовувати його для іншої цілі.
Конфігурація дозволяє легко (наприклад):
- Виконайте MAVLink на іншому порту, змініть потокові повідомлення або перемкніть порт TELEM на використання ROS 2/XRCE-DDS.
- Змініть швидкість передачі даних на порту або встановіть UDP-порт
- Налаштування подвійного GPS.
- Увімкніть датчики, які працюють через послідовний порт, такі як деякі датчики відстані.
INFO
- Деякі порти не можуть бути налаштовані, оскільки вони використовуються для дуже конкретної цілі, наприклад, для системної консолі.
- Відображення конкретних пристроїв на назви портів на контролері польоту пояснено в Відображення послідовного порту.
Налаштування параметрів
Параметри конфігурації послідовного порту дозволяють вам призначити певну функцію або підтримку певного обладнання для конкретного порту. Ці параметри слідують за шаблоном найменування *_CONFIG
або *_CFG
QGroundControl показує лише параметри для служб/драйверів, які присутні в прошивці.
На момент написання поточний набір:
- Налаштування GPS: GPS_1_CONFIG, GPS_2_CONFIG
- Iridium Satellite radio: Конфігурація ISBD
- Порти MAVLink: MAV_0_CONFIG, MAV_1_CONFIG, MAV_2_CONFIG
- VOXL ESC: VOXL_ESC_CONFIG
- MSP OSD: MSP_OSD_CONFIG
- Порт RC: RC_PORT_CONFIG
- FrSky Телеметрія: TEL_FRSKY_CONFIG
- HoTT Телеметрія: TEL_HOTT_CONFIG
- uXRCE-DDS порт: UXRCE_DS_CFG
- Датчики (оптичний потік, датчики відстані): SENS_CM8JL65_CFG, SENS_LEDDAR1_CFG, SENS_SF0X_CFG, SENS_TFLOW_CFG, SENS_TFMINI_CFG, SENS_ULAND_CFG, SENS_VN_CFG,
- Водій введення CRSF RC: RC_CRSF_PRT_CFG
- Sagetech MXS: MXS_SER_CFG
- Датчик позиції з ультраширокосмуговим зв'язком: UWB_PORT_CFG
- Драйвер DShot: DSHOT_TEL_CFG
Деякі функції / можливості можуть визначати додаткові параметри конфігурації, які будуть містити схожий шаблон іменування до префіксу конфігурації порту. Наприклад, MAV_0_CONFIG
дозволяє використовувати MAVLink на певному порту, але вам також може знадобитися встановити MAV_0_FLOW_CTRL, MAV_0_FORWARD, MAV_0_MODE та інше.
Як налаштувати порт
Всі послідовні драйвери/порти налаштовані однаковим чином:
- Встановіть параметр конфігурації для сервісу/периферійного пристрою на порт, який він буде використовувати.
- Перезавантажте апарат, щоб побачити додаткові параметри конфігурації.
- Set the baud rate parameter for the selected port to the desired value (e.g. SER_GPS1_BAUD)
- Налаштуйте параметри, специфічні для модуля (тобто. Потоки та конфігурація швидкості передачі даних MAVLink).
GPS/Compass > Secondary GPS розділ надається практичний приклад налаштування порту QGroundControl (показує як використовувати GPS_2_CONFIG
щоб запускати додатковий GPS на TELEM 2
).
Аналогічно Налаштування Ethernet PX4 > Конфігурація послідовного порту PX4 MAVLink пояснює налаштування послідовних портів Ethernet, а Периферійні пристрої MAVLink (OSD/GCS/Супутникові комп'ютери тощо) пояснює конфігурацію послідовних портів MAVLink.
Розконфліктовування портів
Конфлікти портів вирішуються під час запуску системи, що забезпечує, що на конкретному порту запускається не більше однієї служби. Наприклад, неможливо запустити екземпляр MAVLink на конкретному послідовному пристрої, а потім запустити драйвер, який використовує той самий послідовний пристрій.
WARNING
На момент написання немає відгуків користувачів про конфліктуючі порти.
Налаштування послідовного порту за замовчуванням
TIP
Ці зображення портів можуть бути вимкнені, встановивши пов'язаний параметр конфігурації на Вимкнено.
Наступні порти зазвичай відображаються на конкретні функції на всіх платах:
GPS 1
налаштований як порт GPS (використовуючи GPS_1_CONFIG).The default baud rate is set in the gps driver by the value of SER_GPS1_BAUD, which has a default rate of Auto. With this setting a GPS will automatically detect the baudrate — except for the Trimble MB-Two, which you will need to explicitly set to 115200 baud rate.
RC IN
налаштовано як вхід RC (використовуючи RC_PORT_CONFIG).TELEM 1
налаштований як послідовний порт MAVLink, придатний для підключення до GCS через модуль телеметрії.Конфігурація використовує MAV_0_CONFIG для встановлення порту, MAV_0_RATE для встановлення швидкості передачі даних на 57600 та MAV_0_MODE для встановлення потокових повідомлень на "Normal". Для отримання додаткової інформації див. : MAVLink Периферійні пристрої (OSD/GCS/Компаньйон Комп'ютери/тощо).
TELEM 2
налаштований за замовчуванням як послідовний порт MAVLink, придатний для підключення до комп'ютера на борту/другорядного комп'ютера через провідне підключення.Конфігурація використовує MAV_1_CONFIG для встановлення порту, MAV_1_RATE для встановлення швидкості передачі даних на , та MAV_1_MODE для встановлення потокових повідомлень на "Onboard". Для отримання додаткової інформації див.: MAVLink Периферійні пристрої (OSD/GCS/Компаньйон Комп'ютери/тощо).
Етернет
відображається як порт MAVLink на пристроях Pixhawk, які мають порт Ethernet.Конфігурація використовує MAV_2_CONFIG та відповідні налаштування для UDP-порту тощо. Для отримання додаткової інформації див. Налаштування Ethernet PX4 > Конфігурація послідовного порту PX4 MAVLink та Периферійні пристрої MAVLink (OSD/GCS/Компаньйони тощо).
Інші порти, як правило, за замовчуванням не мають призначених функцій (вимкнені).
Вирішення проблем
Відсутній параметр конфігурації в QGroundControl
QGroundControl показує лише параметри для служб/драйверів, які присутні в прошивці. Якщо параметр відсутній, то можливо вам потрібно додати його в прошивку.
Програмне забезпечення PX4 включає більшість драйверів за замовчуванням на платах серії Pixhawk-series. Дошки з обмеженням Flash можуть закоментувати/пропустити драйвер (на момент написання цього це стосується лише дошок на основі FMUv2).
Ви можете включити відсутній драйвер у вбудоване програмне забезпечення, увімкнувши драйвер у файлі конфігурації default.px4board, який відповідає до платі, для якої ви хочете зібрати. Наприклад, щоб увімкнути драйвер SRF02, ви додасте наступний рядок до px4board.
CONFIG_DRIVERS_DISTANCE_SENSOR_SRF02=y
Простіший метод полягає в використанні boardconfig, який запускає GUI, де ви можете легко шукати, вимикаючи та увімкнюючи модулі. Для запуску типу boardconfig введіть:
make <vendor>_<board>_<label> boardconfig
Потім вам потрібно буде скомпілювати прошивку для вашої платформи, як описано в Building PX4 Software.