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 канальних літаків.

Для наземних

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

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

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

Примітки

[ред. | ред. код]

Посилання

[ред. | ред. код]