Autonomous Arduino Quadcopter Part 1: Introduction


Quadcopters are helicopters with four motors and four propellers. Quadcopters can be very agile, but they can also be very unstable. Unlike airplanes that can glide because of the aerodynamic lift force acting on their wings, quadcopters have no passive lift mechanism; a single motor failure or motor speed mismatch will lead to a violent crash. As a result, it’s extremely difficult for a human to fly a quadcopter by directly controlling each motor because this “classic” piloting method requires extreme reaction speed and attention. Modern quadcopter pilots rely on on-board sensors and microcontrollers that detect the machine’s dynamics and adjust motor speeds many times per second to self-stabilize. With dynamic stabilization handled by the machine itself, pilots are free to adjust a quadcopter’s throttle, pitch, roll, and yaw to semi-manually guide the quadcopter in a manner similar to a traditional aircraft. Our goal is to eventually build an autonomous quadcopter, one that not only balances itself but also guides itself. The self-balancing system described above makes flying quadcopters easier for pilots, but our goal is to replace pilots with artificial intelligence software.

I started working on an autonomous quadcopter because I got inspired by the Amazon’s Prime Air delivery system and by this incredible TED talk by Dr. Rafaello D’Andrea from ETH Zurich. My goal for the project is to build a quadcopter that can deliver a light package from one point to another. My plan is to construct a quadcopter using readily available hobby parts, configure those parts to interface with an Arduino board, and program the quadcopter to guide itself autonomously. To challenge myself, I want the start and end points to be hundreds of yards apart in order to reasonably simulate a local delivery. I live in Atlanta, and so the start and end points will be further separated by difficult obstacles such as tall buildings, trees, vehicles, etc.

I’m doing this project because I want to learn more about autonomous robotics and because I’m collaborating with Vergilis, a brilliant team at Atlanta Tech Village that has greater ambitions for my project. Vergilis is an Atlanta technology startup that plans to use autonomous drone technology to enable efficient local deliveries of fast food and other small items. Needless to say, this project has a long way to go before it achieves our ambition. One note I would like to make is that, unlike my previous rover project, this project is very much a work in progress. The code and assemblies I will post will be in very early stages of development and will likely contain many bugs; this is important to keep in mind especially due to the dangers of working with quadcopters. With that said, I hope these posts become an interesting and useful record of our progress.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s