Persönlicher Status und Werkzeuge

Home People Ross Kidson Quadrocopter- landing on a moving platform

Quadrocopter- landing on a moving platform

This project was conducted under the Computer Vision group at Technical University Munich The project involved using cameras to track and follow a marker on the ground as well as land on top of this marker when commanded. An android phone interface was also developed so that the quadrocoptor could be either be manually controlled or issued autonomous mode commands, such as “track” or “land”.

The quadrocopter platform for this project was the ardrone. It had a forward facing camera and a down facing camera, accelerometers for odometry data and communication was via WLAN. The codebased was developed using ROS and ran on a desktop computer, only the low level control and stabilization ran on the quadrocopter itself.

In order to autonomously track and land on a marker, a number of vision and control algorithms were implemented.

  • Visual tracking of the ground marker
  • Extended kalman filter to fuse the position of the marker from vision with odometry data to obtain an estimate of the world position of the quadrocopter
  • Height PD controller to maintain a desired height based on a downwards pointing distance sensor on the quadrocopter
  • Velocity PD controller for x and y
  • Position PD controller for the heading (yaw)

Flight and landing operation

  • Quadrocopter takes off and is controlled manually by the phone
  • After the marker has been sighted, it is possible to switch to tracking or landing mode
  • “Tracking” will command the quadrocopter to follow the marker based on visual and odometry data
  • “Landing” will start the landing procedure

Landing Procedure

  • Track and follow the marker until the quadrocopter is stable (marker stays in field of view for some time)
  • Begin descent by slowly decreasing height command, while continuing to track and follow the marker
  • When the marker is so large that it no longer fits in the camera's field of view, set x and y velocities to 0 and do the final descent.

The following videos show the tracking, landing, and smartphone control interface.

Final Presentation Slides

Get the code: svn checkout quadro-nav-code

Last edited 29.10.2012 14:12 by kidson