The goal of this project is to provide the basic tools to enable the possibility of building a team of autonomous UAVs that can operate in almost any unknown environment, whether it is indoors or outdoors. Therefore, the solutions we propose do not depend on sensors such as GPS, which would not work indoors, and do not rely on physical devices that must be placed around the drone for positioning (such as markers for indoors environment). We also avoid the usage of any use of ultrasonic or electromagnetic sensors that might cause interference since there might be a high number of UAVs flying at the same time at near distance.
All the solutions presented have been firstly studied and proposed, simulated to assess the viability and finally tested in a real application environment to confirm the effectiveness. The UAVs we propose to build are based on: * Pixhawk or Pixfalcon as a flight controller in charge of providing flight stabilization algorithms and movement control. The ArduPilot suite is the chosen firmware to run in these miniature flight controllers. * A Raspberry Pi or other companion computer of small size that can boot a Linux Operating system where python 3 can be installed. We have tested a Raspberry Pi 3 running both Ubuntu Server and Ubuntu Mate (minimal) versions. Python is needed because Dronekit-Python is used as the base for giving instructions to the flight controller from the companion computer.The sensors that we propose to enable a flight of a team of UAVs are: * A LiDAR for indoors obstacle avoidance, mapping and location by using adapted SLAM algorithms. * A rotating camera and two LED markers on each drone together with a Python and OpenCV based image processing algorithm capable of detecting the LED markers of neighbor drones and accurately calculate the distance to those drones as well as the relative position. * An optional communication device such as an Xbee. The project is still in a developing stage. The LED markers and the rotating camera setup has been tested and works, and it’s usable in its current state. The LiDAR based SLAM algorithms are still being developed.