A multi-uav formation flight system
This project is a subsystem of the industry-university collaborative research project "Intelligent Networking Cooperative Control Method Research".The project is primarily responsible for developing a Multi-UAV system with multi-target allocation and goal-oriented formation flight capabilities.It would be used for further in-depth research, method validation, and demonstration of research results.
The UAV flight platform is composed of a DJI Matrice 100 (M100) equipped with DJI Guidance and an NVIDIA Jetson TX2 module. In the actual test system, there is one target aircraft and three formation UAVs. The ground station consists of a laptop and an AP Station.
Below are the architecture diagrams of the system's hardware.
The entire software architecture is designed and developed based on ROS (Robot Operating System), where the ground station is responsible for centralized target assignment and formation generation, while the onboard system handles formation tracking and UAV control. Target position or velocity command data are transmitted via ROS Topics.
Below are the architecture diagrams of the system's software.
The figure shows the workflow diagram of the algorithm modules and provides input-output schematic diagrams for each algorithm module. Among them, Target Allocation performs M-to-N target assignment between multiple UAVs and multiple targets, associating each UAV with its corresponding targets. Formation Creation generates the desired target-oriented formation for UAVs, which is then translated into the actual formation structure through Formation Generation. Finally, Formation Maintenance handles the tracking and maintenance of the formation.
During the formation generation process, each UAV needs to move to its desired position while avoiding mutual collisions. We decompose this problem into two sub-problems: target assignment and local collision avoidance. First, the target assignment ensures that each UAV is assigned to the closest formation target point while maintaining non-intersecting paths between drones. This approach enhances formation generation efficiency and reduces collision risks. Subsequently, a local collision avoidance velocity planning algorithm is implemented to prevent potential collisions during movement.
We utilize the heuristic optimization algorithm based on Particle Swarm Optimization (PSO) to search for non-intersecting movement paths between UAVs and target poses.
Below is a schematic diagram of the PSO algorithm.
By constructing a 1×N target assignment matrix as the fundamental particle (e.g., for N=3, the matrix could be represented as [1,2,3] or [3,2,1]), we simulate particle behaviors influenced by swarm intelligence. Specifically:
Through iterative optimization of these operations, we aim to minimize the total path length while getting non-intersecting paths according to the minimum path sum theorem. Subsequently, the Optimal Reciprocal Collision Avoidance (ORCA) algorithm is employed for local obstacle avoidance during movement.
Below is a pseudo-code of the PSO-based Target Assignment.
Below are images of the actual flight platform and some clips from the debugging process on the icy surface of the school's river channel, where the UAVs demonstrated the ability to track the target aircraft in a V-shaped formation.
Under the guidance of advisor Prof. HE Fenghua and the leadership of senior lab members HAO Ning, WANG Ningyuan, and XU Zhongyan as system leads, this subsystem successfully achieved its predefined functions and objectives, earning client approval during the project's phase acceptance review. We are deeply grateful for the mentorship of our professor and seniors, as well as the relentless efforts of collaborating team members throughout the system's design and development.