Indoor UAV - 3D position estimation

Watch on Dailymotion


I am currently working on 3D position and attitude etimation of my indoor drone. I use a 6 Dof IMU, a 3D magnetometer, and 4 sonars (Devantech).

The position estimation is not yet accurate (still bugs), but I am working to improve it. I also have lot of problems with the magnetometer. All the computation are done on the drone. I just use Matlab for visualization.

The drone is still manually piloted.

My intention is to make my drone navigate autonomously in a simple indoor environment.

A short demo video is above:

A quick description of my drone:

Leon - french hobbyist

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • You can use a precise (+-2cm) Indoor "GPS":

    Here is a couple of demos:

  • Patrice,
    First, I use a motherboard with a lot of RAM (8MByte) and Flash (4MB).
    About environment modelisation: In the future, I just plan to modelise the walls that the drone can use for precise position estimation. The drone needs to know the position of the wall, and the region of the wall that can be used for precise estimation (free of furnitures). The position estimation will only be possible in very simple indoor environments, where a lot of free walls are available. I will have to move some furnitures in my appartement!
    For the moment, I just use the rear wall and the window that you can see on the video.

  • I don't want to use remote computing. The on board ARM7 cannot afford Vision Computing. I will perhaps try thermopiles in the future, but I don't think that thermopiles are adequate for indoor navigation.

  • just wondering, what do you use to store the 3d environment indoor? EEPROM or some SD card addon?
  • Since magnetometers are used to correct cumulative error: Computer Vision, wireless communication, and colored LEDs may be an alternative means of feeding that information. Alternatively: thermopiles, or onboard cameras.
  • Merci Patrice pour ton appréciaion!

    I think that it is impossible to use SLAM algorithm with the poor sensors that I use. SLAM need acurate estimation of obstacles shape. Devantech sonars have a measurement beam of 30°! Furtheremore, my 4 sonars are fixed on the helicopter. SLAM algorithms usually require Laser range scanners that give several hundreds of measurements at each rotation!

    I have made a wheeled robot before that can map an indoor environment. Take a look here: (especially on the "algorithm" page).
    It was very accurate on position estimation with just the 2 wheel encoders sensors. That's why it worked fine. Precise position estimation is impossible to achieve with just the poor 6DOF IMU.

    I just plan to make my drone navigate autonomously in a 100% known environment. Even in a 'complex' environment made of several rooms. I think that this is complex enough!
    I need to work a lot before reaching this goal.

    BOBIII - Autonomous Robot
  • Have you planned to use SLAM? It is probably too computational heavy to do onboard the heli. Nice work!
  • Salut

    Beau travail. Travaille impressionnant! J'ai pas mal le mme projets, mais avec un quad. Cependant, je suis encore en train d'essayer de le faire voler stable. J'ai bien hate de suivre tes avancements!

    and for our English friend :)

    Great work, impressive work. I'm currently working on a project like your, but with a quad, I'm still trying to make it stable in fligth, so, can't wait to see your progress!
This reply was deleted.