ArduPilot

ArduPilot
ТипВбудована програма і структура[d]
РозробникиArduPilot Development Team and Community
Версії3.5.6 (15 квітня 2018)[1] і 4.2.1 (23 травня 2022)[2]
ПлатформаSTM32d
Операційна системаCross-platform
Мова програмуванняC++[3]
ЛіцензіяGPLv3
Онлайн-документаціяardupilot.org/ardupilot/
Репозиторійgithub.com/ArduPilot/ardupilot
Вебсайтardupilot.org

Ardupilot — система керування безпілотними апаратами з відкритим кодом. Спершу розроблялась ентузіастами як хобійна система, згодом її розпочали використовувати і в промислових масштабах. Перший реліз відбувся в 2009 році.

Структура

Загалом екосистема Ardupilot включає системи керування такими апаратами:

Програмне забезпечення

Набір програмного забезпечення ArduPilot складається з навігаційного програмного забезпечення (зазвичай називається «прошивка»), що працює на безпілотному засобі, а також програмного забезпечення для керування наземною станцією, включаючи Mission Planner, APM Planner, QGroundControl, MavProxy, Tower та інші.

Апаратне забезпечення

Програмне забезпечення для різних типів безпілотних апаратів працює на широкому спектрі вбудованого обладнання (включно з повномасштабними комп'ютерами з Linux), яке зазвичай складається з одного чи кількох мікроконтролерів або мікропроцесорів, підключених до периферійних датчиків, які використовуються для навігації. Ці датчики включають як зокрема MEMS-гіроскопи та акселерометри, необхідні для багатороторного польоту та стабілізації БПЛА. Датчики зазвичай включають ще один або кілька компасів, висотомірів (барометричних) і GPS-навігаторів, а також додаткові датчики, такі як оптичні датчики потоку, індикатори повітряної швидкості, лазерні або сонарні висотоміри або далекоміри, монокулярні, стереоскопічні або RGB-D камери. Датчики можуть бути на одній електронній платі або зовнішні.

Програмне забезпечення наземної станції доступне для Windows, Linux, macOS, iOS і Android.

Функції ПЗ

Загальні

  • Повністю автономний, напівавтономний і повністю ручний режими польоту, програмовані місії з 3D-точками маршруту, додаткове геозонування.
  • Параметри стабілізації, що позбавляють потреби стороннього другого пілота.
  • Симуляція за допомогою різноманітних симуляторів, включаючи ArduPilot SITL.
  • Підтримується велика кількість навігаційних сенсорів, включаючи кілька моделей RTK GPS, традиційних L1 GPS, барометрів, магнітометрів, лазерних і сонарних далекомірів, оптичних потоків, транспондерів ADS-B, інфрачервоних датчиків, датчиків повітряної швидкості та пристроїв комп’ютерного бачення/захоплення руху.
  • Зв'язок датчиків через SPI, I²C, шину CAN, послідовний зв'язок, SMBus.
  • Відмовостійкість при втраті радіозв'язку, GPS і порушення попередньо встановленої межі, мінімальний рівень заряду батареї.
  • Підтримка навігації в зонах із забороною GPS із позиціонуванням на основі бачення, оптичного потоку, SLAM, ультрашироким діапазоном позиціонування.
  • Підтримка приводів, таких як парашути та магнітні захвати.
  • Підтримка безщіткових і щіткових двигунів.
  • Підтримка та інтеграція фото- та відеопідвісу.
  • Інтеграція та зв'язок з потужними вторинними, або "супутніми", комп'ютерами
  • Багата документація через ArduPilot wiki.
  • Підтримка та обговорення через форум ArduPilot, канали чату Gitter, GitHub, Facebook.

Для коптерів

  • Режими польоту: Stabilize, Alt Hold, Loiter, RTL (Return-to-Launch), Auto, Acro, AutoTune, Brake, Circle, Drift, Guided (і Guided_NoGPS), Land, PosHold, Sport, Throw, Follow Me, Simple , Super Simple, Avoid_ADSB.[9]
  • Автонагаштування
  • Підтримується широкий вибір типів рам, включаючи трикоптери, квадрокоптери, гексакоптери, плоскі та со-осні октокоптери, а також спеціальні конфігурації двигунів
  • Підтримка традиційних електричних і ДВЗ-вертольотів, монокоптерів, тандемних вертольотів.

Для літаків

  • Режими Fly By Wire («проксі», віддалене місце керування пілота), баражування, авто, акробатичні режими.
  • Варіанти зльоту: ручний старт, банджі, катапульта, вертикальний зліт (для літаків VTOL).
  • Варіанти посадки: регульована глісада, гвинтова, зворотна тяга, сітка, вертикальна посадка (для літаків VTOL).
  • Автоналаштування, моделювання за допомогою симуляторів JSBSIM, X-Plane і RealFlight.
  • Підтримка великої різноманітності архітектур VTOL: квадропланів, поворотних крил, поворотних гвинтів, хвостових ситтерів, орнітоптерів.
  • Оптимізація 3 або 4 канальних літаків.

Для наземних

  • Режими роботи «Ручний», «Навчання/Запам'ятовування», «Авто», «Кермування», «Утримання смуги» та «З провідником».
  • Підтримка колісної та гусеничної архітектур.

Для підводних

  • Утримання фіксованої глибини за допомогою сенсорів тиску.

Примітки

  1. Release 3.5.6 — 2018.
  2. Release 4.2.1 — 2022.
  3. The ardupilot Open Source Project on Open Hub: Languages Page — 2006.
    d:Track:Q124688

Посилання

  • ArduPilot.org [Архівовано 23 вересня 2018 у Wayback Machine.]
  • Ardupilot Wiki [Архівовано 23 вересня 2018 у Wayback Machine.]