3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.


RC Quadrotor Helicopter

RC Quadrotor Helicopter
«
  • DSC07445 (Medium).JPG
  • propellerdirections.png
  • main.png
  • sys-diagram.png
  • generalwiringdiagram.png
  • DSC07411 (Small).JPG
  • circuit-overview.PNG
  • r4c64.png
  • last photo ←
»
This project is a RC quadrotor helicopter (quadrocopter, quadcopter, quadricopter, etc). It's a RC helicopter that uses 4 rotors.




Watch it in 720p

You need some pre-requisite skills:
  • How to use Arduino, enough to get started
  • Soldering, wiring, basic electronic skills
  • Basic hand tool operation
A quadrotor helicopter flies with 4 spinning propellers on a + shaped frame.

When one rotor spins faster than the rotor on the opposing side, the faster side will have more lift, and thus the helicopter will tilt. When the helicopter is tilted, the air is being blown slightly sideways instead of directly down, and the helicopter will move.

The propellers also need to be in counter-rotating pairs, two spin clockwise and two spin counter-clockwise. This way, the helicopter does not spin on the vertical axis since the rotational enertia is cancelled out. But when the pair that's spinning in one direction is faster than the other pair, the helicopter will spin on the vertical axis. This is how the helicopter controls its direction.

We will be building a flight controller circuit that contains an accelerometer and gyroscope sensor so that a microcontroller can detect undesired changes in the helicopter's angle, and adjust each rotor's speed accordingly to counter the variation. This microcontroller will do this hundreds of times per second, keeping the helicopter stable in the air.

The flight controller is a completely open source circuit. The circuit schematic and PCB files are provided. The flight controller is completely Arduino compatible. The source code is a modified version of AeroQuad (open source Arduino based quadrocopter control code). The flight characteristics can be adjusted using AeroQuad's configurator utility.

Attached is a diagram that shows you the direction of spin for each motor, remember this diagram! You won't be able to fly if your setup does not follow this diagram.

This microcontroller will also take input from a RC radio receiver, so you can control the helicopter from the ground using a RC radio transmitter.

This helicopter will use four brushless motors. Each motor will be controlled by an ESC (Electronic Speed Controller). The ESCs will be controlled by the microcontroller.

A lithium polymer battery will power the entire contraption.

Summary of Downloads:
  • Over 100 pictures in all the steps
  • Step 9 contains flight controller circuit and PCB files
  • Step 10 contains bootloader and core for microcontroller
  • Step 12, 13, 14 contains demo Arduino sketches
  • Step 26 contains the flight control software
 
Remove these adsRemove these ads by Signing Up
 

Step 1Parts

Parts
RC radio transmitter and receiver
You need 4 channels minimum but I am begging you to get one with 6 channels. Also get one that uses 2.4 GHz technology if you can. Turnigy has a 9 channel model that is actually very inexpensive, and it runs on an AVR microcontroller that you can put custom firmware on. Personally, I have a old $25 radio that uses 75 MHz FM but I've converted it into a 2.4 GHz radio using a conversion kit.

Four brushless outrunner motors are needed. I used hexTronics 20-22L (this number represents the diameter and coil winding configuration of the motor, there's also a kv value that relates speed and power, higher kv = more powerful faster motor (thanks to the correction from slick8086, I was incorrect to relate power to Kv, it's the RPM that's faster if Kv is higher), 800 to 1200 is acceptable motors. They come with a ton of parts (the bullet connectors, heatshrink, propeller adapter, the screws you need, mounting plate, spare shaft and spare C-clip, all included). Get extras just in case one gets damaged in a crash.

Four brushless motor electronic speed controllers (ESC) are needed. One that is rated for 18 amps is enough. I have heard good things about the Turnigy Plush ESCs because they support high update frequencies (more frequent adjustments means more stable flight). I got the HobbyKing brand clones of the Turnigy Plush ESCs because they are cheaper.

Some ESCs are "card programmable", meaning you can change their configuration using a cheap ($6) programming card, which is really convenient. Buy the programming card that is compatible with the ESCs you've chosen. I got the Turnigy ESC programming card because they are compatible with my ESCs.

You'll obviously need a battery. You will use a 3S1P lithium polymer battery that is rated at least 20C (this is the discharge rating). 3S means 3 cells in series, 1P means one set in parallel. This will give you a combined 11.1 volts. I suggest a 2500 mAH capacity battery (or more). A general rule of thumb is doubling the capacity of the battery means 50% increase in flight time (due to the extra weight).
More info on batteries here: http://www.rcgroups.com/forums/showpost.php?p=1315199&postcount=1

Make sure you pay attention to the type of connector that comes attached to your battery. You're going to need to get the matching connector. I've personally built my entire helicopter using bullet connectors. 4.0mm bullet connectors for the battery and 3.5mm bullet connectors for everything else (the motors come with 3.5mm bullet connectors). (You can get other connectors such as XT-60 connectors, just watch your polarities, also note that all my pictures show bullet connectors)

You need a lot of heat-shrink tubing to act as insulation when using the 3.5mm bullet connectors. Get different colours so you can tell which wire is which.

You need 12 gauge stranded core wire. It must be 12 gauge or thicker to handle the current. It must be stranded core so that it is flexible. Get different colours so you know which wire is which polarity. The best wire is fine stranded copper wire with silicon insulation, but this is expensive.

Get a good battery charger, it must be able to balance and charge multi-cell lithium polymer batteries. I have one of these Turnigy chargers that have many settings, a LCD, and cooling fan, very nice. I also use a laptop power brick to power the charger since an ordinary wall adapter won't be able to handle the current required.

Get a battery monitor so you know when your battery is low. A lithium battery will become permanently damaged if you drain it below a certain threshold. Having a monitor will prevent you from damaging your battery. I have one of these that reports the status of each cell.

The quadcopter's frame I use is this one from HobbyKing. For $15, you get every part you need, plus every screw and nut you need. In comparison, a stick of aluminum would cost me $10 from Home Depot, which is not economical in comparison. I suggest you buy several frames so you have plenty of spare "arms" if you crash (plus plenty of spare screws and nuts).

The propellers must be in counter-rotating pairs (a "pusher" and a "puller"). I use 10x4.7 APC slow-fly propellers. 10 indicates diameter in inches and 4.7 indicates pitch. Larger diameter means more lift but requires more powerful motors. 10 inches is about right for the frame size I am using.

You'll need a entire flight controller circuit (meaning another entire bill of material), I will talk about this in detail later. Meanwhile, you'll need a USB-to-serial cable (FTDI cable) and an AVR programmer.

Plenty of servo cables are required to connect stuff. A minimum of 6 female-to-female cables is required for the 6 channels from the RC radio receiver to the flight controller.

Velcro tape and double sided velcro strapping will be useful as a lightweight way of mounting things and strapping in the battery.

Get a bubble/spirite level (like this one) to help with sensor calibration.

Make sure you get plenty of extras, stock pile on wire, cables, connectors, heat-shrink tubing, electrical tape, glue, screws, etc.
« Previous StepDownload PDFView All StepsNext Step »
167 comments
1-40 of 167next »
May 12, 2012. 7:09 PMvinothwin86 says:
in the arduino022 there is an option for boot loading..........u r using this one or the avrdude............
May 12, 2012. 6:57 PMvinothwin86 says:
hi frank, i need u r help to flash the boot loader file in to the atmega644p with the help of avrdude.i am having my own avr programmer with rs232 port only ,it s not having the isp header.is it possible to program the boot loader file with my programmer.i need any video tutorial for the boot loading.........
Dec 10, 2011. 6:21 PMenesmentese says:
hey Frank
thanks for posting your designs.
I've started building my own quadrocopter following your instructable.
I'm currently building the microcontroller and i was wondering if the SJ1-18 were switches? I am assuming they are but just wanted to get some more info about that from you. Also there were no surface mount switches included in your BOM.
Maybe you were intending readers to just solder a piece of striped wire? that would be more permanent but it would also eliminate the danger or switching between 3.3v and 5v accidentally. Thanks for you help
Dec 18, 2011. 4:52 PMenesmentese says:
Thanks.

So I got my micro controller ready go but I am not too familiar with flashing the boodloader. I also do not have an AVR programmer, do I even need one?

If you could give me some more info about this step or direct me to somewhere where i can get the info i would be grateful
May 10, 2012. 8:46 PMvinothwin86 says:
hi frank, i need u r help to flash the boot loader file in to the atmega644p with the help of avrdude.i am having my own avr programmer with rs232 port only ,it s not having the isp header.is it possible to program the boot loader file with my programmer.i need any video tutorial for the boot loading.........
Apr 20, 2012. 10:52 PMevantkaufman says:
When you flash the bootloader for the first time, does the circuit require power or is power provided through the AVR programmer?
Apr 12, 2012. 3:56 AMashakya1 says:
which cam is best to attach with this
Mar 31, 2012. 4:18 AMlinkstatic says:
hi frank,
im extemely interested in making a quadcopter but i dont know anything about it . can u please tell me where should i start. i mean you have explained everything nicely but is there any place i can learn the basics ?
Mar 6, 2012. 4:30 AMgaurav_sharma132 says:
Thank for your reply.

What if I want to program my ATmega328 through Atmel AVR Studio ?

Mar 3, 2012. 11:00 AMCamWarder says:
i like the project overall. Great Work!!! the only problem i am having is that i dont want to build the board, and would rather just use my arduino uno. is this possible? if yes, how do i do that, and if not, why?
thanks in advance
Mar 1, 2012. 9:00 PMarvind. says:
Hello, How are you going to control your quadrotor's motor speed using the pwm code you set up? can you give me an example? Is it using analogWrite?? Why did you use those "for" loops?
Mar 1, 2012. 11:25 PMarvind. says:
Can you give me an example how you set the motor to a particular speed using that command?
Feb 28, 2012. 12:08 PMgaurav_sharma132 says:
Thanks for such post really great help.
My question: will arduino Diecimila (ATmega168 or ATmega328) enough for this application ?

Feb 28, 2012. 12:50 PMgaurav_sharma132 says:
Why we need Bootloader. We can burn it using serial port as it has ISP. Please elaborate.

I know it is very basic question. But please answer.

Thank you very much
Feb 11, 2012. 10:34 AMsteveo625c6 says:
I am actually in the design and research phase of building one of these. I've been all over the AeroQuad forums and wiki searching and searching and searching. This has been a great help.

I am actually in school for Manufacturing Engineering and have a machine shop at my disposale with manual mills/lathes, CNCs, Wire EDM and more. Plus a stock room with all the free metal I want.

Now I must ask, the biggest price tag on my parts list was the controller. A Spektrum DX7 runs apx $290. But I see in your instructable you used the VEX robotics controller, which I have!

Is the range any less with that controller? The modification you did with the spring, was it just unclipping it or did you actually modify the internals?

Thanks for posting and I may be nit picking your brain about some stuff as my knowledge is manufacturing based and not so much messing with the Arduino and calibration.
Feb 11, 2012. 9:18 PMsteveo625c6 says:
How much work was it and how much was it to convert it to a 2.4GHz controller and is it reversible?

As for range, does the Aeroquad loose reception within lets say a few hundred feet or could it ultimately go outside you ability to see it before it looses reception?
Feb 6, 2012. 8:39 PMevantkaufman says:
Thanks for the instructable! It's awesome. I have a few questions though. First, for the "AREF-SEL", do you recommend using 3V3 or 5V? Second, how did you mount the accelerometer and gyroscope? Can these breakout boards just pop back out if you want to use these sensors for other projects?
Feb 8, 2012. 8:05 PMevantkaufman says:
Thanks for the quick and thorough response! I only have one more question. Now that I have connected AREF to 5V, do I need to connect any of the terminals of SJ15 and SJ17 (either side of Port A Auxiliary GPIOs)?
Jan 21, 2012. 7:30 AMjanzaib says:
i friend i need some information about how to make a remote control.
Jan 12, 2012. 3:27 PMGreasetattoo says:
http://www.instructables.com/id/Wooden-Remote-Control-Quadrocopter-Build/
Jan 20, 2012. 3:38 AMmuhammadalam says:
this is very great
Dec 30, 2011. 8:02 PMlesizz says:
Supremely cool project!
When it takes off it seems to jump up almost uncontrollably. Wouldn't it be possible to increase the prop speed gradually at takeoff so that it lifts off gently?
Dec 19, 2011. 2:27 AMAkash.C.A says:
Hey can u give me the schematics or design template for the main metal base and the side arms........?
please send them to djakashanand@gmail.com
Dec 15, 2011. 7:55 AMasocial says:
super
Dec 9, 2011. 8:50 PMayadav9 says:
What are the use of sensors/accelerometer and gyro?
Is it necessary???
Dec 9, 2011. 2:03 AMseriari3 says:
haw dawnloud pdf
Dec 8, 2011. 9:50 AMfernana says:
It's VERY nice the site, now i'm very interested.

Fernando 
Dec 7, 2011. 10:32 AMmahsa arian says:
its VERY nice
kiss

i think it is can fly 5min!
or
4min..
Dec 6, 2011. 2:39 PMtgardiner2 says:
In this diagram, you only have power going to the ESCs. What is your wiring for powering the flight controller and Rx unit.
1-40 of 167next »

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
176
Followers
12
Author:frank26080115(Frank's Projects)
I'm an electrical engineering student at the University of Waterloo.