Proposing New VTOL Auto-Landing Method for Moving platfroms in Strong-Wind Conditions

Hi,

[001 Operating Environment and Goals]

  • Current Operating Area: Sea
  • Aircraft Type: VTOL
  • Previous Landing Method: QStabilize or AltHold (manual) — landing on a moving ship in harsh conditions (e.g., strong winds, ship rolling)
  • Goal: Enable automatic landing on a moving ship

[002 Issues with Current System and Proposed Concept]

References:

The current ArduPilot moving platform landing system is a well-made and interesting concept. However, I have encountered several issues and would like to propose an alternative approach:

  • **[Proposed Landing Method Demo]

My proposal’s key point is utilizing the first and second hold-off positions, as shown in the video above. Below is a comparison of the operating modes and the reason why I proposed his method. :

(a) Advantages of QStabilize Mode:

  • I have previously used QStabilize mode for landing, with good results.
  • It is controllable in strong wind conditions (over 8 m/s) and provides responsive manual input.

(b) Disadvantages of PID Position-Controlled Auto landing Mode:

  • I am concerned that PID-based position control may not be able to withstand strong gusts of wind.
  • It may also struggle to descend properly if rising air currents impact the wings, leading to altitude control issues.

One of the key concerns is that after switching to QMode during auto landing, the aircraft might become unstable. Therefore, it should be easy and safe to revert to QStabilize or manual control during the landing sequence. The proposed method allows the operator to observe the aircraft’s behavior and safely engage QStabilize mode mid-landing if necessary.

Additional Concern:
Landing at a 0-degree angle is currently not feasible due to the obstruction caused by the ship’s superstructure.

In the video linked above (Truck Landing Demo), the aircraft lands on the back of a moving truck, avoiding such obstructions — not applicable in some fishing vessel environments.

Here is an example of a ship’s helideck and superstructure for reference:


Landing spot is in front, not in the rear.

I would like to open a discussion about how to best address this issue. Potential solutions include:


[003 Two Possible Solutions]

(a) Lua Script Developed by Existing ArduPilot Developers:
I’m interested in whether anyone in the community would be willing to help modify or extend ArduPilot’s code or scripts to better support this scenario. This is one reason I’ve created this post.

(b) Custom Lua Script Developed by Me:
Alternatively, I can develop a Lua script or Mission Planner plugin myself. In this case, I would appreciate technical advice or suggestions from the community to ensure the solution is robust and safe.