MAVLink () — комунікаційний протокол безпілотного апарату із наземною станцією.
Він розроблений як бібліотека маршалінгу повідомлень, яка складається лише з файлів-заголовків. Протокол MAVLink був уперше випущений на початку 2009 Лоренцом Майєром під ліцензією LGPL.
Застосування Протокол застосовується в основному для комунікації між наземною станцією керування і безпілотним апаратом, а також для внутрішнього спілкування між підсистемами апарату. Він може використовуватись для передачі даних про орієнтацію засобу, його GPS координати і швидкість.
Структура пакету У версії 1.0 структура пакету така: Назва поля Індекс позиції (в байтах) Призначення Start-of-frame 0 Помічає початок передачі фрейму (v1.0: 0xFE) Payload-length 1 Довжина корисного навантаження (поля payload) Packet sequence 2 Кожен компонент підраховує порядковий номер відправлених пакетів у послідовності. Дозволяє відслідковувати втрату пакету System ID 3 Ідентифікатор системи, що відсилає дані. Дозволяє відрізняти різні системи в одній мережі. Component ID 4 Ідентифікатор компонента, що відсилає дані. Дозволяє відрізняти різні компоненти однієї системи, наприклад, інерційний вимірювальний пристрій (IMU) та автопілот. Message ID 5 Ідентифікатор типу повідомлення — повідомляє як дані в полі payload треба розуміти і як їх правильно декодувати. Payload 6 до (n+6) Дані повідомлення, залежать від ідентифікатору повідомлення — message id. CRC (n+7) до (n+8) Контрольна сума всього пакету, включаючи стартовий символ (LSB, MSB)
Екосистема MAVLink MAVLink використовується як протокол комунікації в багатьох проектах, це може означати, що є певна сумісність між ними. Деякі відомі проекти, що використовують MAVLink:
Автопілоти Parrot AR.Drone (з Flight Recorder) Ardupilot PX4FMU pxIMU SmartAP MatrixPilot Armazila 10dM3UOP88 Hexo+
Обладнання Sky Drone FPV — Digital FPV System with HUD/OSD using MAVLink
Програмне забезпечення Andropilot (Android) APM Planner 2.0 (Windows/Mac/Linux) DroidPlanner (Android) MAVProxy Mission Planner (Windows) QGroundControl (Windows/Mac/Linux, official reference implementation for MAVLink)
Див. також NMEA 0183
Примітки
Посилання