Skip to content

Drones working together for collective movement and flocking behavior written in ROS with python nodes (thesis project Participants: Kevin Gutierrez, Celeste Villaverde, Mariano Orozco).

License

Notifications You must be signed in to change notification settings

MarianoOG/FlockingBehavior-Swarm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swam

This thesis work shows an application in autonomous aerial robots (UAV) that behave like a flock following a swarm particle optimization algorithm (PSO) adaptation and Reynolds First Model for trajectory generation. The task to solve is a simultaneous localization and mapping (SLAM) technique for monocular vision using a digital camera and an inertial measurement unit (IMU) is used. This project is made on ROS and Gazebo using python to program the nodes of the software.

The drones have the following characteristics that make them act like a swarm: Autonomous, able to measure with sensors and act in the environment, control rules must allow a large number of robots, the robots must be homogeneous or very similar to each other. Each robot is inefficient to perform the mapping and we try to improve its performance when acting in a group.

In this project we: Design a movement control for each unit, implement recognition and communication protocols between robots, implement a simultaneous localization and mapping algorithm (SLAM) for monocular vision, implement the swarm particle algorithm, along other tasks.

The drones follow three main directives to act as a flock: short-range repulsion, to avoid collisions; alignment: to avoid oscillations; global position restriction, to keep individual robots together and act as a whole.

The general steps followed by the drones to the construction of the map are: the drones will start from a known position and orientation, after the μPSO algorithm is started, each of the drones will create an independent map until the nominal convergence condition is reached, the drones will be returned to the initial position to conclude the closing cycle of said maps, the process for the unification of the maps will begin, restart the herd in random positions that offer new information and that are known within the map, we continue with the algorithm μPSO updating the complete map to each internal cycle. It ends when the general detention condition is reached.

To carry out the simulations in Gazebo, the routines of the hector_quadrotor package of the Technical University of Darmstadt created at the end of 2008 were be adapted. At the moment, ORB-SLAM seems to be the best option to implement monocular SLAM, since it is based on the characteristics, it presents the invariance to the point of view and the changes in the illumination.

This project is still in progress since the physical drones are still not adapted completely and some of the parts in the algorithm must be adapted to fully interact with each other. However, this is a proof of concept on flocking behavior for mapping.

About

Drones working together for collective movement and flocking behavior written in ROS with python nodes (thesis project Participants: Kevin Gutierrez, Celeste Villaverde, Mariano Orozco).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •