Quadrotor Landing on an Unstable Mobile Platform
In the realm of robotics, navigating uncertain real-world environments presents significant challenges. Uncertainties occur in the form of rough seas, turbulent winds, etc. This project addresses these uncertainties in operating aerial vehicles in such unpredictable conditions. While existing autopilot systems can manage stable environments, they falter in windy conditions and on unstable landing platforms, requiring human intervention. To address these challenges, a novel algorithm was developed to land a quadrotor (the CrazyFlie) on a two-wheeled platform (the Tumbller) while the latter follows a trajectory, mimicking the difficulties of landing on a ship in rough seas.
Tumbller with the small landing pad (left) and the CrazyFlie (right)
The controller divided the CrazyFlie’s maneuver into two phases - the search and land phase. Each of the search and land phases operated individual high-level model predictive controllers to track the landing platform. Selecting the appropriate phase and generating the objectives was handled by a finite state machine. A secondary disturbance-rejection controller was implemented on the Tumbller to implement trajectory-following. The position of the Tumbller during its trajectory was made available to the CrazyFlie via a global positioning system. Since the trajectory was not made known to the CrazyFlie in advance, a “trajectory-prediction” subroutine was built in allowing the CrazyFlie to make anticipatory maneuvers.
The test above shows the Tumbller moving in a circular trajectory of radius 0.8m at 0.38m/s. The CrazyFlie takes off from a random location, navigates to the origin and then starts to track the Tumbller.
The control algorithm was tested with two landing pads mounted on the Tumbller. The smaller landing pad offered a 50% greater tolerance for error but caused 30% lower platform instability compared to the larger landing pad. The implemented control algorithm achieves a 100% rate of landing success with the smaller landing pad as long as the Tumbller is stable and moving slower than 0.25m/s. When the Tumbller is moving at its highest speed of 0.38m/s, the drone completed a successful landing in 5.6s with a position error of 2.5cm. However, challenges arose when confronting larger landing pads, as heightened platform instability caused fluctuation in position estimates, compromising controller performance.
Smaller landing pad (left) and the larger landing pad (right)
The test above shows the Tumbller with a large landing pad executing a circular trajectory of radius 0.8m at a speed of 0.18m/s. The Tumbller exhibits significant instability in operation affecting the CrazyFlie's accuracy
Read the full report below: