Our team has been working on a project to enable a vertical take-off and landing drone to take off and land on a moving ship deck. In the first phase, we successfully achieved autonomous take-off and landing on a moving platform. However, we still face two major technical challenges:
The drone tends to drift during landing, resulting in limited precision.
We’ve currently only simulated the platform’s forward motion, but in reality, a ship’s motion is more complex—affected by waves and wind, it can cause multi-directional displacement.
Can anyone share their experience with these issues?
For example, how to use PX4 to improve precision landing on a moving platform?
Test Platform (for reference):
Type: Vertical Take-Off and Landing Drone
Dimensions: 3964 × 1916 × 791 mm (including propellers)
While I don’t have experience precision landing on a ship, I have a lot of experience doing precision landing with PX4 and ArduPilot on stationary platforms.
I’m the developer of the Landmark Precision Landing System. This system uses a camera and fiducial markers (AprilTags) to perform landings with centimeter-level accuracy.
I’m not sure how your system is acquiring the landing target position, but from my experience, this loop needs to be very accurate and low latency. I spent a lot of time tuning the camera in the Landmark system to capture at a high frame rate with low motion blur.
This method of visual precision landing seems to work really well. It might be worth a shot for your platform.
With regards to landing on a ship that’s rocking back and forth, a well tuned, agile UAV should be able to track a moving landing target and land on it using PX4’s precision landing logic.
Given the size of your UAV, it may not be agile enough to track a rocking ship using PX4’s precision landing logic. You may need to implement custom landing logic that predicts the rocking motion of the ship.