# MAVLink Основная документация: https://mavlink.io/en/. MAVLink – это протокол для организации связи между автономными летательными и транспортными системами (дронами, самолетами, автомобилями). Проктол MAVLink лежит в основе взаимодействия между PixHawk и Raspberry Pi. В Клевер включено 2 обертки над этим протоколом: [MAVROS](mavros.md) и [simple_offboard](simple_offboard.md). Код для отправки произвольного MAVLink сообщения можно найти в [примерах](snippets.md). ## Основные концепции ### Канал связи Протокол MAVLink может быть использован поверх следующих каналов связи: * последовательное соединение (UART, USB и др.); * UDP (Wi-Fi, Ethernet, 3G, LTE); * TCP (Wi-Fi, Ethernet, 3G, LTE). ### Сообщение MAVLink-сообщение это отдельная "порция" данных, передаваемая между устройствами. Отдельное MAVLink-сообщение содержит информацию о состоянии дрона (или другого устройства) или команду для дрона. Примеры MAVLink-сообщений: * `ATTITUDE`, `ATTITUDE_QUATERNION` – ориентация квадрокоптера в пространстве; * `LOCAL_POSITION_NED` – локальная позиция квадрокоптера; * `GLOBAL_POSITION_INT` – глобальная позиция квадрокоптера (широта/долгота/высота); * `COMMAND_LONG` – команда для квадрокоптера (взлететь, сесть, переключить режим и т. д.). Полный список MAVLink-сообщений можно посмотреть в [документации MAVLink](http://mavlink.org/messages/common). ### Система, компонент системы Каждое устройство (дрон, базовая станция и т. д.) имеет ID в сети MAVLink. В PX4 MAVLink ID менятся с помощью параметра `MAV_SYS_ID`. Каждое MAVLink сообщение содержит поле с ID системы-отправителя. Кроме того, некоторые сообщения (например, `COMMAND_LONG`) содержат также ID системы-получателя. Помимо ID систем, сообщения могут содержать ID компонента-отправителя и компонента-получателя. Примеры компонентов системы: полетный контроллер, внешняя камера, управляющий бортовой компьютер (Raspberry Pi в случае Клевера) и т. д.