How to make a quadcopter using Arduino Uno?

How to make a quadcopter using an Arduino UNO? How to make a drone. The Arduino quadcopter.

How to make a quadcopter using arduino uno?


In this article, I will share How to make a quadcopter using Arduino UNO

When I was in college I got this task by one of our faculty to design a drone. I am an electronics engineer so I was very much interested to work on this project all though you will find lots of tutorials online I did a couple of research on design & rest I continued on my own. I failed many times my drone crashed lots of time while testing but there is a saying we learn from our failure. It took me the entire end semester of my college life to make this drone. I was excited and finally, after hard work, I came out with this quadcopter. 

Below I have explained how I made it on brief with code and schematics.

What is Quadcopter? 

An unmanned helicopter has four rotors where two motors rotate clockwise and two anti-clockwise.

Where we can use Quadcopters?

The quadcopter can be used for any purposes like surveillance, disaster management, healthcare agriculture, construction, photography, etc. In India few people know about drones and their uses, while I was making the drone I got many questions asked by my neighbor & other friends that what is this thing or how this thing fly etc. also you may have noticed quadcopter catches lot's of public attention in India especially, as they find something interesting or unique in it. I learned lots of stuff technically while making this drone. It was fun.

Technical description of this quadcopter

This quadcopter is based on Arduino Uno and it levels itself automatically. Auto leveling means that when you release the sticks the quad-copter levels itself. I used the Arduino as the flight controller to program and applied the PID algorithm to calculate the output values of motor commands by using input values from transmitters and sensors. 

I used the MPU6050 sensor for controlling angular velocities. This sensor is very important as it balances the quadcopter also guides the quadcopter to rotate & move left-right-forward-backward as per instructions sent by flyer using the transmitter.

Hardware Used

> Power Distribution Board.

> Wires.

> Quadcopter Frame.

> (4)-1000kV motor with ESC combo.

> (4)-Propellers.

> Lipo battery.

> Arduino Uno.

> MPU6050 Gyroscope. 

> Transmitter/Receiver.

> Lipo battery charger.

Steps for making Arduino Uno based quadcopter

> Assemble the frame you purchased.

> Place all the 4 motors with ESC and set it very tight, don't leave it loose. 

> Let all the wires meet at the center of the drone.

[ Remember use power distribution board as a power source, connect all the power input wires in it.]

> Place the Arduino & mpu6050 sensor carefully in the middle of the frame and connect the wires.

[Note: Use good quality].

>  Place the battery underneath the Arduino Uno, there is a ready-made compartment to place the battery & lock it with the belt provided so that battery doesn't move from its place.

Note: Use Good wires while connecting the battery with Power Distribution Board as lipo battery has a huge current flow which can burn the insulation of wires which are of pure quality. Make sure whatever wire you use can withstand high current.

Almost we are done. Connect parts properly so that it doesn't come out. If one wire becomes loose during flight it will crash as every connection is important also check the polarity of power sources as the wrong connection may damage your board or sensor.

Note: While placing MPU 6050 make sure you place it properly at the center of the quadcopter because the proper placement is necessary for auto-leveling the quadcopter. It should be placed parallel to the frame if not your quadcopter will not take off properly it will fall.

Brief connection & circuit explanation 

Click Here for the circuit diagram.

The ESC signal cable is connected to the digital outputs of the Arduino. Checked directions of the motors it should be right front-counter clockwise, right rear-clockwise, left front- counter-clockwise, left rear- clockwise. To make sure everything works properly, you need to run some basic checks. I removed the accessories, disconnected the flight battery, and loaded the ESC calibration program to the Arduino to check if everything was working perfectly. Make sure your props are removed before checking.

Well now balancing accessories is incredibly important! Without well-balanced motors and propellers, the gyroscope and accelerometer will produce noise, In that case, your quadcopter will not be stable. Also, stability depends on PID values, for that you need to understand the program I have given.

Note: Put some black tapes on the propellers to balance it, as propellers are not balanced properly so you need to apply this trick to reduce vibration in the frame while testing because it might create stability issues.

Also, stability depends on PID values, for that you need to understand the program I have given.

Programming the Quadcopter

I have done all the programming on Arduino UNO in C language. The Arduino code consists of a configuration part and a loop that runs continuously and contains the calculations part. The main part of the QuadCopter program was the PID algorithm. PID is used to minimize the error between the target position and the current position that the quadcopter can reach. The PID algorithm is a proportional-derived integral controller used for the loop feedback mechanism.

* Click here for the code for calibrating ESC.

* Click here for the Flight Controller code.

You have to code using Arduino IDE & upload it to the board in case of any issues faced in programming feel free to contact me.

1. First Calibrate your drone to check if everything is ok.


2. Upload the final program. ( Remember to check PID values it can vary it depends on which hardware you are using check thoroughly before uploading the program ).



How to make a quadcopter using Arduino Uno?

Building a drone on your own can be a complicated process. However, it is also guaranteed to arrive with its streaks of rewards and satisfactions. People who build a drone from scratch can learn & do lots of experiments with it. Trust Me you will have lots of fun while making it and yes you will face challenges too.

Also Read:

* Simple water level controller using Arduino with code.  

In case of any issues faced while making quadcopter leave comments below, I will reply.

An Engineer by passion and Technology Enthusiast.

Post a Comment

If you have any doubts, please let me know! Do not Post Any Spam Link!