Пристрої MAVLink (GCS/OSD/Супутник)
Станції земного контролю (GCS), екрани на екрані (OSD), супутні комп'ютери, отримувачі ADS-B та інші периферійні пристрої MAVLink взаємодіють з PX4 за допомогою окремих потоків MAVLink, які надсилаються через різні послідовні порти.
In order to configure that a particular serial port is used for MAVLink traffic with a particular peripheral, we use Serial Port Configuration, assigning one of the abstract "MAVLink instance" configuration parameters to the desired port. Потім ми встановлюємо інші властивості каналу MAVLink, використовуючи параметри, пов'язані з обраним екземпляром MAVLink, щоб вони відповідали вимогам нашого конкретного периферійного пристрою.
The most relevant parameters are described below (the full set are listed in the Parameter Reference > MAVLink).
Екземпляри MAVLink
In order to assign a particular peripheral to a serial port we use the concept of a MAVLink instance.
Кожен екземпляр MAVLink представляє певну конфігурацію MAVLink, яку ви можете застосувати до певного порту. At time of writing three MAVLink instances are defined, each represented by a parameter MAV_X_CONFIG, where X is 0, 1, 2.
Each instance has associated parameters that you can use to define the properties of the instance on that port, such as the set of streamed messages (see MAV_X_MODE below), data rate (MAV_X_RATE), whether incoming traffic is forwarded to other MAVLink instances (MAV_X_FORWARD), and so on.
INFO
MAVLink instances are an abstract concept for a particular MAVLink configuration. Число в назві нічого не означає; ви можете призначити будь-який екземпляр до будь-якого порту.
Параметри для кожного екземпляру є:
MAV_X_CONFIG - Set the serial port (UART) for this instance "X", where X is 0, 1, 2. It can be any unused port, e.g.:
TELEM2
,TELEM3
,GPS2
etc. For more information see Serial Port Configuration.MAV_X_MODE - Specify the telemetry mode/target (the set of messages to stream for the current instance and their rate). Значення за замовчуванням:
- Normal: Standard set of messages for a GCS.
- Custom or Magic: Nothing (in the default PX4 implementation). Режими можуть бути використані для тестування при розробці нового режиму.
- Onboard: Standard set of messages for a companion computer.
- OSD: Standard set of messages for an OSD system.
- Config: Standard set of messages and rate configuration for a fast link (e.g. USB).
- Minimal: Minimal set of messages for use with a GCS connected on a high latency link.
- ExtVision or ExtVisionMin: Messages for offboard vision systems (ExtVision needed for VIO).
- Iridium: Messages for an Iridium satellite communication system.
INFO
If you need to find the specific set of message for each mode search for
MAVLINK_MODE_
in /src/modules/mavlink/mavlink_main.cpp.
:::
TIP
The mode defines the default messages and rates. A connected MAVLink system can still request the streams/rates that it wants using MAV_CMD_SET_MESSAGE_INTERVAL.
MAV_X_RATE - Set the maximum data rate for this instance (bytes/second).
- Це комбінована ставка для всіх потоків окремого повідомлення (ставки для окремих повідомлень зменшуються, якщо загальна ставка перевищує це значення).
- За замовчуванням налаштування, як правило, буде прийнятним, але може бути зменшено, якщо телеметричний зв'язок стає насиченим і занадто багато повідомлень втрачається.
- Значення 0 встановлює швидкість передачі даних вдвічі менше теоретичного значення.
MAV_X_FORWARD - Enable forwarding of MAVLink packets received by the current instance onto other interfaces. Це може бути використано, наприклад, для передачі повідомлень між GCS та супутнім комп'ютером, щоб GCS міг спілкуватися з камерою, підключеною до супутнього комп'ютера, яка підтримує MAVLink.
Next you need to set the baud rate for the serial port you assigned above (in MAV_X_CONFIG
).
TIP
You will need to reboot PX4 to make the parameter available (i.e. in QGroundControl).
The parameter used will depend on the assigned serial port - for example: SER_GPS1_BAUD
, SER_TEL2_BAUD
, etc. Значення, яке ви використовуєте, буде залежати від типу підключення та можливостей підключеного периферійного пристрою MAVLink.
Порти MAVLink за замовчуванням
TELEM1
The TELEM 1
port is almost always configured by default for the GCS telemetry stream ("Normal").
To support this there is a default serial port mapping of MAVLink instance 0 as shown below:
- MAV_0_CONFIG =
TELEM 1
- MAV_0_MODE =
Normal
- MAV_0_RATE=
1200
Bytes/s - MAV_0_FORWARD =
True
- SER_TEL1_BAUD =
57600
TELEM2
The TELEM 2
port usually configured by default for a companion computer telemetry stream ("Onboard").
To support this there is a default serial port mapping of MAVLink instance 0 as shown below:
- 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:
On this hardware, there is a default serial port mapping of MAVLink instance 2 as shown below:
- 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)
For more information see: PX4 Ethernet Setup