ДОСЛІДЖЕННЯ МЕТОДІВ АВТОМАТИЧНОГО ПІЛОТУВАННЯ БЕЗПІЛОТНИХ ЛІТАЛЬНИХ АПАРАТІВ З КОРЕКЦІЄЮ МАРШРУТУ В РЕЖИМІ РЕАЛЬНОГО ЧАСУ

1
Національний університет «Львівська політехніка»
2
Національний університет «Львівська політехніка»

У статті досліджуються перспективи впровадження автоматичного управління безпілотними літальними апаратами (БПЛА), аналізуються результати сучасних досліджень та наявні реалізації в цій галузі. Окрему увагу приділено популярним програмним пакетам на предмет їх здатності забезпечувати функції автоматичного пілотування без потреби оснащення БПЛА додатковими модулями, а також розглянуто особливості такої реалізації при використанні стороннього обладнання та програмного забезпечення. Для збірки ArduPilot + Companion Computer розроблено тестовий алгоритм розширеного автоматичного пілотування БПЛА, який передбачає пілотування БПЛА по заданому маршруту, виконання БПЛА додаткових операцій в певних точках маршруту, корекцію маршруту в режимі реального часу в разі необхідності. Проаналізовано особливості підключення Companion Computer до політного контроллера, використання протоколу MAVLink для ArduPilot та використання відповідних бібіліотек для мов програмування, зокрема Pymavlink (mavgen) для Python. Відповідні етапи тестового алгоритму реалізовані з використанням мови Python та бібліотеки Pymavlink, зокрема етап встановлення з’єднання через протокол MAVLink, отримання від політного контроллера координат поточної позиції, розрахунок відстані до наступної точки маршруту, динамічна зміна маршруту шляхом встановлення координат наступної точки маршруту, виконання додаткових операцій в певних точках маршруту а також збір та обробка телеметричної інформації БПЛА. Збірка ArduPilot + Companion Computer дозволяє значно розширити функціональні можливості БПЛА та динамічно змінювати їх, проте використання таких збірок доцільне лише в випадках, які неможливо покрити за рахунок обчислювальних можливостей політного контроллера та стандартного програмного забезпечення БПЛА. В порівнянні з іншими пакетами програмного забезпечення, ArduPilot надає найкращий функціонал для реалізації автоматичного пілотування, як з використанням ArduPilot Mission Planer, так і в збірці ArduPilot + Companion Computer та стороннім програмним забезпеченням.

[1]     Stephen Lazzaro (2015), “Flying multiple drones from 1 remote controller”, available at: https://minds.wisconsin.edu/bitstream/handle/1793/72188/TR1818.pdf (Accessed 15 July 2025).

[2]     Yaroslav Sheyko, Nataliia Kryvko, Oleksandr Shefer (2025), “Enhancement Arduplane Radio Failsafe Algorithm by Extending with a New Delegation Action”, Electronics and Control Systems 2025. N 1(83): 42-49 doi: 10.18372/1990-5548.83.19873

[3]     Dmytro Sazonov (2025), “How to build the Eyes of an Autopilot for FPV Combat Drone”, available at: https://medium.com/illuminations-mirror/how-to-build-the-eyes-of-an-autopilot-for-fpv-combat-drone-bbf13d605a9f (Accessed 15 July 2025).

[4]     Dmytro Sazonov (2025), “How to build an Autopilot with Computer Vision and Target Following for FPV Combat Drone”, available at: https://ai.gopubby.com/how-to-build-an-autopilot-with-computer-vision-and-target-following-for-fpv-combat-drone-3544f482baae (Accessed 15 July 2025).

[5]     Dmytro Sazonov (2025), “FPV autonomous operation with Betaflight and Raspberry Pi”, available at: https://medium.com/illumination/fpv-autonomous-operation-with-betaflight-and-raspberry-pi-0caeb4b3ca69 (Accessed 15 July 2025).

[6]      “Betaflight - Pushing the Limits of UAV Performance”, available at: https://betaflight.com/ (Accessed 15 July 2025).

[7]      “INAV Remote Management, Control and Telemetry”, available at: https://github.com/iNavFlight/inav/wiki/INAV-Remote-Management%2C-Control-and-Telemetry (Accessed 15 July 2025).

[8]      “Flight Controller Firmware for FPV Drone: Choosing Between Betaflight, iNav, Ardupilot”, available at: https://oscarliang.com/fc-firmware/ (Accessed 15 July 2025).

[9]     Dmytro Sazonov (2024), “FPV Autonomous Flight with MAVLink and Raspberry Pi. Part I”, available at: https://blog.cubed.run/fpv-autonomous-flight-with-mavlink-and-raspberry-pi-part-i-f7dfa913f505 (Accessed 15 July 2025).

[10]  Dmytro Sazonov (2024), “FPV autonomous flight with MAVLink and Raspberry Pi. Part II”, available at: https://medium.com/illumination/fpv-autonomous-flight-with-mavlink-and-raspberry-pi-part-ii-2d55dcd8d659 (Accessed 15 July 2025).

[11]   “Companion Computers - dev documentation”, available at: https://ardupilot.org/dev/docs/companion-computers.html (Accessed 15 July 2025).

[12]   “Communicating with Raspberry Pi via MAVLink - dev documentation”, available at: https://ardupilot.org/dev/docs/raspberry-pi-via-mavlink.html (Accessed 15 July 2025).

[13]   “MAVLINK common message set, MAV_CMD_NAV_WAYPOINT – dev documentation”, available at: https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_WAYPOINT (Accessed 15 July 2025).

[14]   “Using MAVLink Libraries – dev documentation”, available at: https://mavlink.io/en/getting_started/use_libraries.html (Accessed 15 July 2025).

[15]   “Using Pymavlink Libraries (mavgen) – dev documentation”, available at: https://mavlink.io/en/mavgen_python/#using-pymavlink-libraries-mavgen (Accessed 15 July 2025).