3D проєктування та управління квадрокоптерами - Коваль, Марк Андрійович; Koval, Mark Andriiovych (Національний університет "Львівська політехніка", 2024)
Квадрокоптер — це різновид безпілотного літального апарата (БПЛА), що використовує чотири гвинти для стабілізації та керування польотом. [1] Зараз такі дрони стали дуже популярними в повсякденному житті - їх використовують для зйомки відео, контролю сільськогосподарських угідь, навіть влаштовують з ними змагання. Квадрокоптери легко керуються і можуть виконувати складні маневри, тому їх часто беруть для наукових експериментів, особливо коли потрібно дослідити, як технічні системи можуть працювати автоматично або взаємодіяти між собою групами. Сьогодні активно розвивається концепція ройових систем — це технологія, в основі якої лежить координація дій великої кількості дронів без прямого централізованого керування. Основна ідея полягає в тому, що кожен агент (дрон) діє автономно, реагує на сигнали сусідів і виконує глобальне завдання через локальні правила. Подібні принципи реалізовані в природніх роях птахів, риб чи комах і адаптовані для використання у штучних системах керування. [2] Ця тема мене зацікавила, бо зараз актуально створювати системи, які можуть працювати разом, в автоматичному режимі та пристосовуватися до різних ситуацій. Особливо це важливо для завдань типу пошуку людей, спостереження за територією, складання карт місцевості, патрулювання або рятувальних місій. Але на практиці виявляється багато складнощів. Треба зробити інтуїтивний інтерфейс, щоб можна було легко планувати завдання та щоб, всі ці роботи чи дрони могли між собою спілкуватися та координуватися. Постійно виникають ситуації, коли їхні маршрути перетинаються - треба якось це вирішувати. І найскладніше - зробити так, щоб вони синхронно працювали без постійного контролю ззовні. Автоматизовані системи ройового управління можуть базуватись на централізованій або децентралізованій архітектурі. [3] У першому випадку вся логіка координується одним сервером або провідним дроном. У другому — кожен елемент самостійно приймає рішення на основі локальної інформації. У роботі реалізовано змішаний підхід: збережено можливість централізованого коригування, але основна поведінка забезпечується за рахунок локальної автономності дронів. Проєктування місій реалізовано через тривимірне середовище, де можна відслідковувати траєкторії дронів та при необхідності коригувати точки маршрутів. Для симуляції поведінки БПЛА використовується ArduPilot SITL, а інтерфейс керування створено на базі бібліотеки customTkinter. [4] Зв'язок між агентами організовано через протокол MAVLink, який забезпечує передачу координат, інформації про стан дронів, команд та різних службових даних. [5] Об’єкт дослідження – автоматизована система ройового керування квадрокоптерами. Предмет дослідження – проєктування синхронізованого управління групою квадрокоптерів. 3D-середовища для Мета дослідження – створення архітектури системи для розробки польотних місій та синхронного управління декількома дронами з елементами автономної поведінки. В результаті вдалося створити концепт системи, яка дозволяє планувати маршрути в тривимірному просторі, керувати групою дронів та швидко реагувати на непередбачені ситуації. Розроблено зручний інтерфейс, налаштовано алгоритми для формування рою, проведено тестування в симуляторі SITL. Окремо перевірялися складні сценарії - що відбувається при збоях в роботі, втраті зв'язку або коли один з дронів виходить з ладу. Система виявилася досить гнучкою та масштабованою, тому її можна використовувати як основу для створення реальних ройових платформ у різних сферах застосування.

A quadcopter is a type of unmanned aerial vehicle (UAV) that uses four propellers for stabilization and flight control. [1] These drones have become very popular in everyday life—they are used for filming videos, monitoring agricultural land, and even competing in competitions. Quadcopters are easy to control and can perform complex maneuvers, so they are often used for scientific experiments, especially when it is necessary to investigate how technical systems can work automatically or interact with each other in groups. Today, the concept of swarm systems is actively developing — this is a technology based on the coordination of a large number of drones without direct centralized control. The main idea is that each agent (drone) acts autonomously, responds to signals from its neighbors, and performs a global task through local rules. Similar principles are implemented in natural swarms of birds, fish, or insects and adapted for use in artificial control systems. [2] This topic interests me because it is currently relevant to create systems that can work together, in automatic mode, and adapt to different situations. This is especially important for tasks such as searching for people, monitoring territory, mapping terrain, patrolling, or rescue missions. But in practice, there are many complications. An intuitive interface must be created so that tasks can be easily planned and so that all these robots or drones can communicate and coordinate with each other. Situations constantly arise where their routes intersect — this must be resolved somehow. And the most difficult thing is to make them work synchronously without constant external control. Automated swarm control systems can be based on centralized or decentralized architecture. [3] In the first case, all logic is coordinated by a single server or lead drone. In the second case, each element makes decisions independently based on local information. The work implements a mixed approach: the possibility of centralized correction is preserved, but the main behavior is ensured by the local autonomy of the drones. Mission design is implemented through a three-dimensional environment where you can track the trajectories of drones and, if necessary, correct route points. ArduPilot SITL is used to simulate UAV behavior, and the control interface is based on the customTkinter library. [4] Communication between agents is organized through the MAVLink protocol, which provides the transmission of coordinates, information about the status of drones, commands, and various service data. [5] The object of the study is an automated swarm control system for quadcopters. The subject of the study is the design of a 3D environment for synchronized control of a group of quadcopters. The purpose of the study is to create a system architecture for developing flight missions and synchronized control of several drones with elements of autonomous behavior. As a result, we managed to create a concept system that allows you to plan routes in three-dimensional space, control a group of drones, and quickly respond to unforeseen situations. A convenient interface was developed, algorithms for swarm formation were configured, and testing was carried out in the SITL simulator. Complex scenarios were tested separately—what happens in case of malfunctions, loss of communication, or when one of the drones fails. The system proved to be quite flexible and scalable, so it can be used as a basis for creating real swarm platforms in various fields of application.
3D design and control of quadcopters
Keywords: 6.122.00.00; квадрокоптер; ройове керування; автоматизована система; Ardupilot; MAVLink; 3D-планування місій; безпілотний літальний апарат (БПЛА); SITL симуляція; графічний інтерфейс (GUI); синхронізація польотів; мультиагентна система. Перелік використаних джерел: 1. Горбулін; В. П.; & Мосов; С. П. (2024b). Тенденції дронізації в Україні на сучасному етапі. Visnik Nacional noi academii nauk Ukrai ni; (12); 40–48. https://doi.org/10.15407/visn2024.12.040 2. Посвістак; В.; & Мірошниченко; Д. (2024). Архітектура системи автономного керування для fpv-дронів. Herald of Khmelnytskyi National University. Technical Sciences; 337(3(2)); 223–230. https://doi.org/10.31891/2307-5732-2024-337-3-33 3. Таршин; В.; Компанієць; О.; Котляренко; С.; & Дужий; Р. (2024). Розвиток методології управління роями БпЛА на основі ройового інтелекту. Збірник наукових праць Державного науково-дослідного інституту авіації; (19(26)); 109–115. https://doi.org/10.54858/dndia.2023-19-15 4. Pita; J. L.; & Saavedra; F. O. (2019). UAV Trajectory Management: Ardupilot Based Trajectory Management System. Proceedings; 21(1); 8. https://doi.org/10.3390/proceedings2019021008 5. Сорокопуд; В. І.; & Приставка; П. О. (2023). Інформаційна технологія обробки даних цільового навантаження безпілотних авіаційних комплексів. Problems of Informatization and Management; 2(74); 81–85. https://doi.org/10.18372/2073-4751.74.17886; quadcopter; swarm control; automated system; Ardupilot; MAVLink; 3D mission planning; unmanned aerial vehicle (UAV); SITL simulation; graphical user interface (GUI); flight synchronization; multi-agent system.List of sources used: 1. Gorbulin; V. P.; & Mosov; S. P. (2024b). Trends in drone use in Ukraine at the present stage. Visnik Nacional noi academii nauk Ukrai ni; (12); 40–48. https://doi.org/10.15407/visn2024.12.040 2. Posvistak; V.; & Miroshnychenko; D. (2024). Architecture of an autonomous control system for FPV drones. Herald of Khmelnytskyi National University. Technical Sciences; 337(3(2)); 223–230. https://doi.org/10.31891/2307 5732-2024-337-3-33 3. Tarshyn; V.; Kompaniets; O.; Kotlyarenko; S.; & Duzhyi; R. (2024). Development of a methodology for managing UAV swarms based on swarm intelligence. Collection of scientific papers of the State Research Institute of Aviation; (19(26)); 109–115. https://doi.org/10.54858/dndia.2023-19-15 4. Pita; J. L.; & Saavedra; F. O. (2019). UAV Trajectory Management: Ardupilot Based Trajectory Management System. Proceedings; 21(1); 8. https://doi.org/10.3390/proceedings2019021008 5. Sorokopud; V. I.; & Prystavka; P. O. (2023). Information technology for processing data on the payload of unmanned aerial vehicles. Problems of Informatization and Management; 2(74); 81–85. https://doi.org/10.18372/2073 4751.74.17886