Safecopter: Developing a Collision Avoidance System Based on an Array of Time-of-Flight 3D Cameras
CSEF · 2017 Computational Systems & Analysis
Overview
Objectives/Goals Multicopters have a wide range of applications from surveillance to package delivery and medical support. Although growing in popularity, they are not used yet on an industrial scale for safety reasons. The goal of Safecopter is to develop a modular collision detection and avoidance system that would make flying a multicopter in autonomous or tele operated mode completely safe. Integrating an array of time of flight 3D cameras, the algorithm uses coordinate transformations to convert point clouds provided by each camera into one main one, creating a 360° snapshot of the environment within a six meter radius. The challenge is to develop an algorithm fast enough to provide collision avoidance decisions in real time. Methods/Materials To be able to process the point cloud produced by the 3D cameras, I use a compact onboard computer running the Ubuntu Linux operating system. The software system is programmed in C++ using ROS (Robot Operating System) as a development platform. My project uses the Gazebo 3D physics simulator to test in various situations. Results Based on the research of multiple collision detection algorithms, the octree spatial partitioning system proved to be the most efficient. In comparison to the point cloud based algorithm, it was more than 320 times faster. Developed in C++, it was able to achieve this level of performance by organizing the data into tree like hierarchies and performing binary operations. A key element of developing an advanced collision avoidance algorithm is the ability to simulate complex indoor and outdoor environments. Safecopter was modeled in 3D and, using the Gazebo physics simulator, I was able to test different scenarios, without running the risk of causing an expensive crash. Conclusions/Discussion Based on the testing performed, the system can reliably detect and avoid collisions in real time and route the multicopter to a collision free path in order to reach a specific motion goal.
Summary statement
The goal of my project is to create a multicopter that doesn't collide with nearby objects. It is based on a modular collision avoidance system which includes an array of 3D cameras to detect and avoid objects in the way.
Help received
None. I designed, built, and programmed the system myself.
Competition history
- CSEF 2017
Resources
Related projects
CSEF · 2016
Safecopter: Developing a Collision Avoidance System Based on an Array of Time-of-Flight 3D Cameras
ISEF · 2017
Safecopter: Developing a Collision Avoidance System Based on an Array of Time-of-Flight 3D Cameras
ISEF · 2016
Safecopter: Developing a Collision Avoidance System Based on an Array of Time-of-Flight 3D Cameras
ISEF · 2018
Safecopter: Developing a Collision Avoidance and Mapping System Based on an Array of Time-of-Flight 3D Cameras
ISEF · 2017
UAV Obstacle Avoidance and Collision Prevention System
CSEF · 2017
Developing a Sentry Drone for Area Protection
CSEF · 2017
Prototyping an Omnidirectional Drone Collision Avoidance System with Sweeping Ultrasonic Sensors
CSEF · 2016
Prototyping a Quadrotor Collision Avoidance System Using Ultrasonic Rangefinding with NodeJS and Arduino Platforms
Closest projects by meaning, across every fair and year in the corpus.
Browse more like this
Source: California Science & Engineering Fair public projects