← Back to the hub
Skip the game

World 5 · Final-year project

Research lab

A drone that finds a printed marker and lands on it.

It was my idea. We were a team of four.

Scroll ↓

Why this project

Nobody in my branch was working with a drone or a moving rover. I wanted to grow in my field, so I wanted my final-year project on a drone.

This was my chance to actually build a drone from scratch and make it stable enough for autonomous flights.

A lot of drone delivery companies have started to use this kind of landing, and I really wanted to understand how something like this works.

The plan

A drone flies from point A to point B and finds an ArUco marker, a printed black and white square that a camera can recognise.

It lands exactly on the marker, drops the payload, takes off and goes back to A. Point A has its own marker, so it lands exactly there too.

Step by step

First we got the drone to fly. Then we got it stable, with a lot of test flights carrying the whole hardware stack and the payload.

We set up the link between the Raspberry Pi (a small computer on the drone) and the flight controller, and checked that simple commands from the Pi could move the drone.

Take-off and landing by a command from our laptops worked. Autonomous flights from the ground station worked.

Then the camera. We calibrated it, removed the distortion at the edges of the image, and flew. The pipeline detected the marker from the air.

The stack: an F450 frame, a Pixhawk 2.4.8 flight controller, a Raspberry Pi 5, OpenCV, MAVLink and Gazebo.

Where it stopped

The last step: take off by hand, then send a command so the drone finds the marker and lands on it, using X, Y, Z corrections.

We could send the corrections, but the drone did not take them. I was following older examples, and on my drone the Linux and the flight controller firmware were both new. The older versions had a different command from the newer ones. I really didn't understand that at the time.

Then the project report was due. The day after my final exams I went back to Bengaluru to start work, and I didn't have time after that.

What worked in simulation

In Gazebo, a robot simulator, the drone actually landed on the marker. We started from an existing open-source setup and modified it for ours.

So the idea works. On the real drone it never happened.

Did we solve autonomous landing perfectly? No.

My part

Nobody in the group knew how to build a drone, how to fly one, or how to make it talk to the Raspberry Pi. The Raspberry Pi side was the first time for me too.

My part was building the drone from scratch, tuning it, piloting it, and building the code for the detection pipeline.

I build systems and understand where to work on them. I learn from the code that is written, and then I change whatever is needed.

Paper and patent

I'm a co-author of a published paper on this work.

I'm also a co-inventor on an Indian patent application for autonomous precision landing. It is filed and published. It is not granted.

What came next

Denmark, to go deeper into robotics. It is the next island.

Back to the hub