Completely Autonomous (Onboard Processing) Palm-sized Quadcopter

Hi, drone developers. I am a master student at department of Aeronautics and Astronautics, University of Tokyo.

Let me share our ‘Completely Autonomous (Onboard Processing) Palm-sized Quadcopter’, developed in our lab.

 

PERFORMANCE

Check out <video1> to see how it flies without any control by external equipments. All the processing required to maintain stable flight is done inside the onboard computer.

 

<video1>

This performance is realized by processing images obtained by the camera attached at the bottom of quadcopter and by real-time self localization. As mentioned above, all these calculation is processed onboard. So it needs no external system to fly stably. (Actually the quadcopter is communicating with PC only to transmit flight log. It receives no signal.)

 

STRUCTURE

Here is the list of components.

- frame (3D printer)

- motor + motor driver + propeller(x4)

- main board

  - MCU(Cortex-M4)

  - FPGA(Spartan-6)

  - DDRSDRAM(64MB)

  - IMUs

     -- KXRB5-2050( 3 axis accelerometer)

     -- LPR4150AL (roll, pitch gyro)

     -- LY3100ALH (yaw gyro)

     -- HMC5883L (3 axis compass)

- battery (x2)

- camera

- sonar sensor

Circuit Overview

Back Side

Side View

The quadcopter in the top picture and the video is an old version. The current version has two cameras - one horizontal and the other downward.

 

current version of prototype 

Length(motor to motor): 120mm (4.7inches)

Weight: 70g

 

SYSTEM

The system consists of a CPU(ARM), FPGA and a memory. FPGA enables the very fast onboard processing. 

For further information, please leave comments. (We are now writing more detailed technical description. I hope you will enjoy.)

 

 

Horiken engineering,

 

Views: 9096

Tags: 3Dprinter, DIY, FPGA, autonomous, image-processing, onboard, palm-sized, quadcopter, quadrotor

Comment by Phenox Lab on January 10, 2014 at 1:37am

*This post vanished three days ago for unknown reason and has been reposted on January 10. There were these comments before the post vanished. 

- - - 

Comment by Hugues 16 hours ago

Incredible. What kind of algorithms are you using to convert a monocular view with an inertial 3 axis reference ?

Comment by Mustafa TULU 14 hours ago

Hi nice project. What is the max altitude you can reach with this setup? I gues you are using flow camera method for localization and the object below as markers. The image detail should lost as you increase your altitude and this can effect the stabilization and position hold.

Lastly, does this setup require training?


MODERATOR
Comment by Mark Harrison 11 hours ago

Very Nice!

Please keep us updated on your project. I'm especially interested in learning moure about your FPGA processing of your video input.


DEVELOPER
Comment by Randy 10 hours ago

That's really impressive especially considering how small it is.  I guess it needs that little plate with the special picture on it below the copter?

I do a lot of the arducopter coding and I'm also based in Japan by the way...Karuizawa to be more precise.

Comment by Horiken engineering 9 hours ago

Hi All, Thank you for comments!

>>Hugues

Camera view  is used to calculate self translation using attitude calculated by 9-DOF IMUs. I will post the detail lator.

>>Mustafa

If enough corner points (FAST-corner) exist in the scene,  altitude is not problems though travelling long distance cumulates error. And no training method is required.

>>Mark

Yes, of course!!

>>Randy

The robot only detect corner in image, so no special landmark is requied.

Comment by elad orbach on January 12, 2014 at 8:54am

excellent work

kudos

Comment by MHefny on January 12, 2014 at 12:45pm

Why the use of different gyros ... why didnt u use  imu650 ... is there a particular reason?

could u let me know info about motor & props ...

Comment by Kensho Miyoshi on January 13, 2014 at 2:33am

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2014   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service