Description

This project focuses on designing the software and algorithms that enable a quadcopter to land on a sea vessel that is experiencing non-negligible movement. In particular, the sea vessel is likely to experience predominant heaving and rolling motion due to deep-sea waves, both at lower and higher frequecies.

To accomplish such a landing, the quadcopter platform must have some knowledge of the sea state, and then be able to use this information to synchronize its motion when landing. Additionally, the quadcopter must be able to reject external forces acting upon it during this landing sequence, for example wind conditions expected of a non-calm marine environment.

The quadrotor is expected to orient iteself relative to the sea platform using fiducial markers (for example AprilTags) and a camera mounted underneath the drone. The proposed test platform for the project is a Holybro X500 drone, able to be equipped with additional cameras, sensors and companion computer hardware as needed, and a Stewart Platform to simulate the movement of the ocean platform with full 6 degrees of freedom.

This setup is currently being investigated in simulation using MatLab’s Simulink workspace, due to its versatility, wide use in the UCT mechanical engineering department, and ability to compile hardware code straight from a Simulink model. This allows quick and easy verification of algorithms in simulation, without overhead for manual implementation on hardware.

Points of progress so far

Simulink based environment for dynamic visualisation and computer vision testing

Stewart platform inverse kinematics and visualisation

Drone and Stewart Platform in simulation environment

Drone and Stewart Platform in simulation environment

AprilTag pose estimation using MatLab libraries

Distance estimation between drone and four AprilTags during simulated flight

Distance estimation between drone and four AprilTags during simulated flight

Model Predictive Control (MPC) for 1 and 2 D.O.F drone models from first principles

Perfect sinusoidal trajectory tracking using MPC with reference trajectory prediction

Drone following sinusoidal reference trajectory, bottom graph shows necessary motor input

Drone following sinusoidal reference trajectory, bottom graph shows necessary motor input

Key skills/interests:

Dynamic modelling, predictive control design, trajectory generation, pose estimation, MATLAB and Simulink hardware integration.

Expected outputs:

1x MSc (Eng), 1x Journal/Conference paper in a leading publication.

Student:

Dylan Fanner