^{1}

Despite their interesting dynamic and controllability properties, sailing vehicles have not been much studied in the control community. In this paper, we investigate motion planning of such vehicles. Starting from a simple dynamic model of sailing vessels in one dimension, this paper first considers their associated controllability issues, with the so-called no-sailing zone as a starting point, and it links them with a motion planning strategy using two-point boundary value problems as the main mathematical tool. This perspective is then expanded to do point-to-point maneuvers of sailing vehicles in the plane, that is, automatic path generation combined with computation of control input profiles. Simulations are presented to illustrate the potential of the approach.

Sailing by the wind is in some sense almost as ancient as civilization itself, and humanity has gathered a considerable wealth of knowledge on navigation, naval architecture, and many other aspects of marine transportation using the wind. Despite this, and contrary to vehicles propelled by usual means such as propellers and thrusters, only a few studies were dedicated to automation of what we refer to as sailing vehicles, that is, our well-known sailboats, but also ships equipped with a kite, or landyachts. Many of these studies, for example [

In a previous study (see [

In the present paper, starting from the above-mentioned “kinematic sailing vehicle” model, we show how it is possible to do motion planning (i.e., path planning combined with feedforward control) by explicitly taking into account the particular controllability/reachability properties of the nonlinear system, which includes a saturation and a dead zone. More specifically, we check these properties and investigate automatic generation of start/stop maneuvers in the plane using a series of two-point boundary value problems (TPBVPs) that serve here as a common thread throughout this paper. As will be seen, the voluntarily simple strategy is reminiscent of, or equivalent to, a bang-bang control (see [

After this introduction, Section

To begin with, let us consider a system represented by the following scalar nonlinear differential equation:

From the way function

Metaphorically, system (

Sketch map for the river crossing problem.

In control theory, controllability properties (or reachability properties depending on contexts and definitions, see [

However, most cases involving dynamic inversion require the considered system to be small-time controllable, that is, that the states can be reached in an arbitrarily small amount of time. For system (

The state

Similarly to [

From the above proposition, it appears that controlling the system from a point to another requires the notion of a time interval or horizon, as opposed to instant inversion as in dynamic inversion. In the linear case, this is reminiscent of the Gramian perspective, where a system can be inverted over a time-horizon, even when it might be singular at a particular instant. Unfortunately, Gramian-based extensions to nonlinear systems (see [

However, if, similarly to bang-bang control strategies (see [

In the following, our goal is to generate start/stop maneuvers (i.e., trajectories such that

As we have seen in Proposition

Obtaining

Regarding motion planning issues, the determination of each time-interval

A standard form for TPBVPs of ODEs is usually given by a first-order form (see [

In the simplest case where only three successive levels

Force planning for 1D problem.

Similarly to the decision to go backwards or not that is dictated by

1: start/end points

2: compare

backwards, if yes, go backwards and restart from step 1

3: solve TPBVP for input levels

4:

5: case 1: apply input levels

6:

7: case 2: solve TPBVP for input levels

and apply them with obtained durations

8:

9: case 3: solve TPBVP for input levels

them with obtained durations

10:

As seen earlier in this paper, studying controllability is linked to a TPBVP (e.g., the one giving

Instead of using a full model describing the forces and moments acting on a sailing vehicle, we use a simpler one, originally introduced in [

As will be seen, start/stop maneuvers of this simplified sailing vehicle model share some similarities with what was just discussed before, so that results of Section

The model is described by the following set of four differential equations:

Polar diagram representing the no-sailing zone.

System (

The controllability properties of system (

The state

The main objective of this paper being to generate a feasible point-to-point path in the plane with any initial heading angle, we need to determine whether or not the sailing vehicle can go from one point to the other. In other words, it is necessary to check whether there exists at least one feasible path for every possible couple of vehicle configurations.

In sailing, tacking and wearing are two main maneuvers when going upwind. As shown in Figure

Desired path for (a) tacking and (b) wearing.

As we have seen in Proposition

This is summarized in the following proposition.

A feasible continuous wearing path always exists between two prescribed points

The complete proof of the proposition is based on the explicit construction of the path where, depending on the value of initial heading angle

Note that the above proposition can give us an interesting outlook on uncertainties considerations. Indeed, assuming that both parameters

As a preliminary to any path generation for a sailing vehicle, it is clear that if the initial heading lies within the interval

In some cases, the vehicle is able to go straight to reach the target. For this simple case, consider we are given

Nevertheless, the end points usually cannot be simply reached by only one straight line motion. The vehicle can still reach the destination, but with paths in which turns are obviously necessary. Furthermore, if the general direction towards destination lies within a sector defined by the no-sailing zone, the vehicle should go by either tacking or wearing, which are the two main maneuvers to go upwind in sailing (see details in [

As alluded to in the previous section, and as a direct consequence of Proposition

Here, the idea is that tacking is always preferred because it is usually faster, as wearing around means losing way. Geometrically, selection of the right maneuver (i.e., tacking or wearing) must, however, take into account the distance between two established points, that is, if they are too close from each other for a tack, there might be not enough space for turning with radius

Whether we are tacking or wearing, both these maneuvers can be considered as two examples of the same

Once a path is defined, the objective is to generate appropriate control signals that will steer the vehicle along this path. Obviously, a feedforward strategy similar to the one in Section

In order to get these switching times for

Basic dynamics for (a) tacking and (b) wearing.

In this context, the only difference is that if while entering the dead zone, the vehicle velocity is not sufficient, instead of going backwards, a tacking maneuver is changed into a wearing one. This implies reshaping the path, as described in the previous Section

Finally, using function

In sailing, the environment is inherently unstable and changes in wind speed and direction might occur. In the important case of a change in wind direction, the path should obviously be recomputed, and the control input profiles applied immediately under the new conditions.

Using only minor changes, our strategy can swiftly adapt to a new wind direction (see also [

Note that more replanning can occur for other changes as well, like, for example, if the considered vehicle is a landyacht and the friction with respect to the ground changes, thereby changing parameter

In this section, we illustrate our feedforward control strategies with a few simulation results, and for which the system parameters were taken as

In Figure

Trajectories followed by the vehicle with red arrow indicating where the wind comes from.

Figure

Control inputs for tacking and wearing maneuvers. (a) External force profile and (b) steering angle.

Figure

Vehicle velocity and heading angle for tacking and wearing maneuvers. (a) Vehicle velocity and (b) heading angle.

Figure

Trajectories followed by the vehicle when the wind shifts. Blue and red arrows indicate that the wind direction alters.

For motion planning issues, the essence of the dynamical properties of sailing systems lies in the no-go zone that prevents sailors from sailing directly into the wind. In this paper, we have shown, through simplifying further our already simple kinematic sailing model, that several problems, that is, controllability, path generation, and control input generation can all be formulated as two-point boundary value problems, for which many solvers are available. Note that, in our view, it is the simplicity of the method that allows to solve elegantly a problem for a nonlinear system involving both a saturation and a dead zone at the same time, and that might have been difficult to solve with other available techniques.

On the methodological point-of-view, this can be somewhat related to some dynamic inversion strategies where controllability considerations are directly used to construct feedforward control strategies (see, e.g., [

We give here a detailed proof of Proposition

For the simplest case ( i.e., when a straight line motion is feasible) the trajectory is the line connecting

One straight line path is sufficient if and only if

Otherwise, we need a sequence of

A feasible continuous wearing trajectory constituted by

Wearing path between two points when

Recall that the wind is assumed to be coming from the north. Let

A feasible continuous wearing trajectory constituted by

Under condition (

A feasible continuous wearing trajectory constituted by

Wearing path between two points when

A feasible continuous wearing trajectory constituted by

We will prove both Lemmas

By symmetry, it is straightforward to derive similar lemmas when

Wearing path between two points when

Wearing path between two points when

It is of course also possible for a sailing vehicle to start with a heading angle

Initial configuration transformation when

Similarly, for vehicles with a destination point situated downwind (i.e.,

Initial configuration transformation when

Finally, and similarly again for a destination point situated downwind, going from a heading angle

Initial configuration transformation when

To summarize the above path construction, Table

Classification of wearing trajectories.

Conditions | Trajectory Formulations |
---|---|

If | Straight line motion (see Lemma |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | |

If | Path from |

If | Path from |

If | |

If | Path from |

If | Path from |

If | Path from |

If | Path from |