Simple Quadcopter using Arduino Uno? Answered


Author Options:

Hello guys

I am making a quadcopter using Arduino uno.
My first simple aim is to lift and hover the quadcopter. 
To achieve this aim  I have connected the signal Wire of all the ESC's to arduino Pin 9 and giving throttle via node server using bluetooth module and johnny five library. 
My quadcopter lifts from 2 sides (flips) and sometimes little bit from 3rd side also. 

Can anyone suggest me anything ? The thing which I am doing giving equal throttle to all motor, Is it right ? or 
should I give more throttle to clockwise and little less throttle to counter clock wise motors.

I will be very thankful, if you guys help me to lift my quadcopter


There is no way you can make it seamlessly hover without a gyro that adjusts the throttle. Unless your weighting is absolutely perfect and not even 1/2 a milligram off.

You will need to buy a gyro or a flight controller or make your own with an mpu6050 or other IMU.

Thank you very much for the response. :)

Can you please tell me how gyro will help ? How to use gyro data with throttle in arduino ?

a gyro will take raw values about position of the copter and will stabilise the system. The code is very complicated. Here is something that will help it not only hover but also fly.

yes thats what the code does. Minute stabilisations and about 100 corrections per second helps the quadcopter a wobble free flight.

If you are new to quadcopters buy the kk board (kk2 is quiet good).

There are plenty of guides on how to set it up.

I have kk2 multicopter board and I have been looking into it yesterday.

With kk2 board I will be needing a receiver and transmitter But I want to control it from a web interface or from laptop not from remote control transmitter.

Is there a way I can connect to receiver using arduino nrf24l01 transciever? so that I can control it from arduino and then from node server using bluetooth module.

then connect everything to the kk2.

All but the receiver inputs.

Then use your arduino to read the values from your laptop by the communication you are using.

After which you can make the arduino convert the values received into the pulses from the transmitter.

These pins can be then connected to the kk2's receiver inputs so the kk2 does what it always does.

What you do is you use the arduino as a receiver that works off whatever platform you want and converts it to what your control board needs to work.

(I made a cheap autopilot the same way using arduino and my own multiwii only i couldnt test it.)

I got you.

Like in this video on you tube

Thanks a lot man. Thanks a lot.

Appreciate a lot.

Hey robobot3112.

I was trying the same way you told me but the major problem I am facing is How to ARM and DISARM the kk2 board using arduino code.

I have done the initialization and receiver test.

Can you help me regarding this ?

read the kk2 manual.

find out what transmitter command arms the control board.

then replicate the command with the arduino.

A gyro sensor can detect changes rotation, while an accelerometer can detect changes in acceleration and "feel" gravity. (for instance, something that is completly still will always feel the 9.8 m/s^2 of gravity, plus any acceleration in the X, Y, or Z direction superimposed on that.)

Multiwii is a open source flight controller that uses arduino. I built a multiwii flight controller using a MEGA clone and it works pretty well. The uno should also work well, since the common multiwii SE is based off of a ATmega328 chip.

If you want to program a PID control loop yourself, go for it! But I couldent help you there, I'd recommend looking at a really early version of multiwii, as it used to be pretty simple, but has grown a LOT recently.