Roland Lenain
email: roland.lenain@cemagref.fr

Benoit Thuilot
email: benoit.thuilot@lasmea.univ-bpclermont.fr

Christophe Cariou

Philippe Martinet

Cemagref

Advanced path tracking control for off-road mobile robots

The growing social needs in terms of environmental and efficiency issues make the development of automated mobile robots in an off-road context more and more important. Nevertheless, the accurate control of such robots in natural environment requires to take into account several uncertain phenomena, in particular to the varying grip conditions and various delays. If complex models are available to address such problems, their numerous parameters appearing to be variable in an off-road context make them hardly tractable to design an efficient control law.

In this paper, an adaptive and predictive control algorithm, based on an extended kinematic model and dedicated to four wheeled steered mobile robots in off-road conditions is proposed for high accurate path tracking applications. The effects of variable low grip conditions are accounted in a kinematic representation thanks to additional variables updated by an observer. This allows the derivation of an adaptive backstepping control approach, able to preserve the accuracy of the path tracking despite of low grip conditions. In addition, a predictive curvature control allows to compensate for the large delays originated from the actuators used on off-road heavy vehicles. The relevance of theoretical developments detailed in this paper are investigated through full scale experiments on both an agricultural tractor (two steering wheels) and a Robucar TT mobile robot (four steering wheels).

I. INTRODUCTION

The potential benefits of off-road mobile robot applications in various fields (such as exploration, public security, farming or surveillance) show the importance of designing relevant autonomous vehicle control strategy. In particular, the various situations encountered in natural terrains, as well as the complexity and the uncertainty of the interaction between robots and their environment require the use of advanced control techniques.

Numerous control strategies have been investigated in the literature. Nevertheless, such classical control laws rely on a model based on too restrictive assumptions when off-road environment is considered. In particular, the Ackermann model (or bicycle model) assuming rolling without sliding (RWS) is often used, as it offers interesting properties from control point of view. It can indeed be turned easily into an exact linear form using for example flatness feedback control law (see [START_REF] Hermosillo | Feedback control of a bi-steerable car using flatness application to trajectory tracking[END_REF]) or chained system theory (see [START_REF] Samson | Control of chained system[END_REF]). These techniques, particularly suitable for path tracking problems, are unfortunately not relevant when sliding occurs. Their performances are indeed strongly depreciated in such cases (see for instance [START_REF] Ojeda | Methods for the reduction of odometry errors in over-constrained mobile robots[END_REF]). To address such problems, some robust approaches can be proposed without requiring explicit modeling of encountered phenomena (for instance [START_REF] Corradini | Experimental testing of a discrete-time sliding mode controller for trajectory tracking of a wheeled mobile robot in the presence of skidding effects[END_REF] or [START_REF] Zhang | Variable structure control of a differentially steered wheeled mobile robot[END_REF]). Such a point of view is nevertheless restrictive, since it does not consider the potential knowledge of the perturbation dynamics.

Another approach allowing to address the different phenomena occurring in natural environment -and more particularly the wheel slippage -lies in the use of dynamical models (such as in [START_REF] Pacejka | Tire and vehicle dynamics[END_REF]). Such representations indeed permit to describe the influence of contact forces on mobile robot behavior. However, contact models (such as [START_REF] Canudas De Wit | A new model for control of systems with friction[END_REF], [START_REF] Grand | Stability and traction optimization of a reconfigurable wheel-legged robot[END_REF] or [START_REF] Seddiki | Analyse comparative des modèles de pneumatiques contact roue-sol[END_REF] for models survey) require the introduction of numerous parameters, depending on ground conditions, load repartition, and then subject to large on-line variations in an off-road context. Moreover, the estimation of such parameters is hardly feasible on-line with standard perception systems (as can be seen in [START_REF] Grip | Nonlinear vehicle velocity observer with road-tire friction adaptation[END_REF] or in [START_REF] Holzmann | Predictive estimation of the road-tire friction coefficient[END_REF]). As a consequence, control laws derived from such models cannot be used with high efficiency in practical application.

In order to avoid the use of complete tire/soil contact models, while still relying on a model-based approach, this paper proposes alternative descriptions of mobile robot motion. These representations, taking part of both kinematic and dynamic views (in a comparable way as in [START_REF] Ishigami | Path following control with slip compensation on loose soil for exploration rover[END_REF] or in [START_REF] Wang | An analysis of wheeled mobile robots in the presence of skidding and slipping: Control design perspective[END_REF]), are called extended kinematic models. They indeed rely on an Ackermann description, but take part of dynamic modeling to introduce a limited number of parameters, observable on-line. Consequently, these models are representative of the vehicle motion in presence of sliding. This approach, previously designed for car-like vehicles is here extended for two-steered axles mobile robots. The modeling as well as the sliding estimation required, are presented in the first part of this paper. In a second part, the motion control of such robots is investigated through different techniques, demonstrating the potentialities of such models. An observer based adaptive control, coupled with predictive curvature servoing, is then detailed. Finally, the performances of the proposed control strategy for accurate path tracking are demonstrated experimentally in the last section.

II. MOBILE ROBOT MODELING

A. Classical kinematic point of view

As the approach proposed in this paper consists in preserving a simple model structure, we preliminary consider the celebrated Ackermann model under rolling without sliding assumption at the wheel/ground contact. As depicted on the figure 1, this model describes the generic four wheeled steered vehicle to be controlled as a bicycle model. In the framework of path tracking applications, the description of vehicle motion is described with respect to the desired path -preliminary computed or recorded. Using this point of view, the notations used in the sequel are shown in figure 1 and listed below:

• C is the path to be followed,

• O is the center of vehicle virtual rear wheel. This point is assumed to be the control point, • s is the curvilinear coordinate of the closest point belonging to C. c(s) denotes the curvature of C at that point. • y and θ are respectively lateral and angular deviation of the vehicle with respect to reference path C (see Figure 1). • δ F and δ R are respectively the virtual front and rear wheel steering angles. They are the input variables. • v is the vehicle linear velocity, considered here as a parameter. Its value may be time-varying during the vehicle evolution but the control of this variable is not addressed in this paper. • L is the vehicle wheelbase.

Using these notations, the equations of mobile robot motion with respect to the desired path can be derived. In a state space representation, x = [ s y θ ] T denotes the state vector, while δ = [ δ F δ R ] T is the input vector. Considering that the two virtual wheels (front and rear) obey rolling without sliding conditions, the kinematic evolution of these mobile robots can be described by the classical system (1) (see [START_REF] Samson | Control of chained system[END_REF] for more details).

ẋ = f (x, δ) (1)
with

f = v    cos( θ+δR) 1-c(s)y sin( θ + δ R ) cos δ R tan δF -tan δR L -c(s) cos( θ+δR) 1-c(s) y    (2)
The function f exists under the assumption y = 1 c(s) . This is ensured in practice since, on one hand, actual reachable path curvatures are quite small, and on the other hand, when properly initialized, the vehicle remains close to C. The lateral deviation is thereby always smaller than the radius of curvature of C. As a result, the non-restrictive assumption (3) can be made and will be used in the sequel.

|y| < 1 |c(s)| ⇒ 1 -c(s) y > 0 (3)

B. Extension to sliding influence

As pointed out previously, such a model is not complete enough to be representative of mobile robot motion when adherence conditions do not meet the rolling without sliding assumption. If dynamic models can be exploited to account for wheel slippage influence, they require an important number of variables and parameters, which are difficult to estimate in off-road context. Alternatively, the kinematic model ( 1) is here extended in order to account for bad adherence properties. As sliding modifies the mobile robot behavior, and more particularity violates the non holonomic constraints, some additive parameters or variables must be introduced. In the frame of path tracking, sliding interacts with the two state variables (y and θ) expected to be controlled. As a consequence, at least two variables (or parameters) must be introduced to reflect such a phenomenon. Several possibilities for sliding introduction can be considered:

1) Behavior Based Kinematic Model -BBKM: In this point of view, the effects of sliding on mobile robot motion are accounting without considering any contact model. Preliminary experiments carried out with a control law designed under rolling without sliding assumption reveal that the nonholonomy is violated by both a rotational and translational motion. Extending the approach proposed in [START_REF] Lenain | Adaptive control for car like vehicles guidance relying on rtk gps: Rejection of sliding effects in agricultural applications[END_REF], sliding influence can be accounted by the addition of two sliding parameters, gathered in the vector ξ = [ 0 ẎP ΘP ] T . It impacts the model (1) as following:

ẋ = f (x, δ) + ξ (4)
This perturbation vector ξ then allows to reflect the additional motions caused by the bad adherence properties and, if relevantly identified, to describe accurately mobile robot evolution when sliding occurs.

2) Tire Based Kinematic Model -TBKM: As said previously, in a dynamic representation of mobile robot motion, the contact forces are derived thanks to a tire model. In most of such models, lateral forces rely on side slip angle variables, representative of the difference between tire orientation and actual velocity vector direction. This notion of side slip angles can be introduced in the Ackermann model: let us consider a bicycle model with two side slip angles denoted by vector β = [ β F β R ] T for the front and rear wheel. Relying on the actual speed vector directions, a new model ( 5) can be derived from (1) (such as in [START_REF]High accuracy path tracking for vehicle in presence of sliding: Application to farm vehicles automatic guidance for agricultural task[END_REF]).

ẋ = f (x, δ -β) (5)
As previously, the two additional parameters reflect the impact of sliding. Nevertheless, in this point of view, the nonholonomic structure of motion equations is preserved: sliding parameters indeed appear in trigonometric functions in the model [START_REF] Grip | Nonlinear vehicle velocity observer with road-tire friction adaptation[END_REF] and consequently act as non linearity. As a result, compared to model (4), the effect of sliding is limited (bounded by trigonometric functions).

C. Additive variables estimation

If these two alternative kinematic models are theoretically able to be representative of mobile robot motions in presence of sliding effects, a key point is the relevant knowledge of the value of additional parameters. In both of parameters sets, a direct measurement via dedicated sensors is hardly feasible. As a result, ( ẎP , ΘP ) as well as (β F ,β R ) must be reconstructed through the available measurements. In practice, the variables assumed to be known are the position and the orientation of the robot. In a path tracking frame, this means that y (lateral deviation) and θ (angular deviation) are known.

A first solution for indirect estimation could consist in including sliding parameters in the state vector without explicit evolution model. This leads to an observable system (as shown in [START_REF]Adaptive and predictive path tracking control for off-road mobile robots[END_REF]): there is indeed two unknowns in extended models while at least two state variables (three when considering s) are measured. Nevertheless, the observation matrices are generally bad conditioned, leading to unsuitable results.

In this paper, the sliding parameters are alternatively considered as input variables of extended models. As depicted on the figure 2, an observation loop acting in parallel to classical control loop is defined. The objective of this second loop is to control sliding parameters in order to ensure the convergence of model outputs to the measured state variables.

This error is expected to be brought to zero by imposing an exponential convergence such as:

ė = G • e (7)
with G a chosen Hurwiz matrix tuning observer performances.

According to model ( 4) defining the evolution of BBKM (Behavior Based Kinematic Model), the desired error dynamics ( 7) can be reached thanks to the following law, which constitutes the estimation of the first parameters set:

ξ = G • e -f Obs ( X, δ) + Ẋ ( 8
)
where Ẋ is the filtered numerical derivative of the measured state vector and f Obs iconsists of the two last lines of function f defined in [START_REF] Canudas De Wit | Theory of robot control[END_REF].

As mentioned before, in the TBKM (Tire Based Kinematic Model) sliding parameters appears as non linearities. The observation equation ensuring the error dynamics ( 7) is then less trivial. It can nevertheless be designed by linearizing model ( 5) around null sideslip angles (as their value does not exceed some degrees in practice). These calculations, following the same formalism as in [START_REF]Adaptive and predictive path tracking control for off-road mobile robots[END_REF], leads to the following observer equation:

β = B( X, δ) -1 G • e -f Obs ( X, δ) + Ẋ (9)
where B( X, δ) = ∂f Obs (X,δ-β) ∂β defined as the partial derivative of the two last lines of model ( 5) with respect to side slip angles and evaluated at (β F , β R ) = (0, 0). B can be written as:

B( X, δ) = v    0 cos( θ + δ R ) cos δR L cos 2 δF c(s) sin( θ+δR) 1-c(s)ŷ - 1 L cos δR -sin δ R tan δF -tan δR L    (10)
and is invertible in path tracking application (v = 0).

D. Extended model validation

In order to validate the capabilities of the extended models to describe accurately mobile robot motion in presence of sliding, a half turn tracking has been achieved with a 5 tons Claas tractor on a wet grass ground, at a 8 km/H speed. A classical path tracking control law constructed on rolling without sliding assumption (such as proposed in [START_REF] Thuilot | Automatic guidance of a farm vehicle relying on a single cp-gps[END_REF] or in [START_REF] Samson | Control of chained system[END_REF]) has been used. The actual tracking error is reported in black solid line on figure 3. Firstly, we can notice that before and after the half turn (the curve is encountered between curvilinear abscissa 18 an 34m) the lateral deviation is satisfactorily around zero (straight line tracking on an even ground does not generate any sliding). On the contrary, during the half turn an almost constant deviation of 55cm is recorded, due to bad adherence properties neglected in the control law based on the classical Ackermann model [START_REF] Canudas De Wit | A new model for control of systems with friction[END_REF].

The sliding parameters supplied by observation laws ( 8) and ( 9) (respectively BBKM and TBKM) allow to reflect this quite important deviation. The error reconstructed using BBKM is depicted on the same figure in green dotted line, while the red dashed line depicts the error reconstructed thanks to TBKM. It can be noticed that these signals are well superposed to the actual deviation, showing the capability of both of the extended models to reflect mobile robot motion in presence of sliding. Nevertheless, some small observation errors can be noticed on this figure, reflecting differences in the behavior of each models. A null reconstructed lateral deviation can be observed when relying on TBKM when leaving the curve (despite of the overshoot recorded on the actual deviation) when a steady error is present with BBKM.

III. MOTION CONTROL WITH SLIDING ACCOUNTED

A. Possible control approaches with extended models

The two extended kinematic models introduced in the previous section propose a relevant alternative to complete dynamic ones, since they can accurately describe actual mobile robot motion in presence of sliding with only a limited number of parameters. Moreover, since classical kinematic structure of mobile robot has been preserved, standard and efficient control approaches remain applicable: the large developments achieved in the field of mobile robotics such as described for instance in [START_REF] Canudas De Wit | Theory of robot control[END_REF], [START_REF] Hermosillo | Feedback control of a bi-steerable car using flatness application to trajectory tracking[END_REF] or [START_REF] Laumond | La robotique mobile, Systmes automatisés (IC2)[END_REF], can benefit to these extended models, coupled with their dedicated observer. Depending on the considered model, the sliding parameters act differently. As a result, different control strategies appear to be more adapted to one or other point of view.

1) BBKM: In the Behavior Based Kinematic Model, the sliding parameters can be viewed as a disturbance acting on the ideal mobile robot motion that would have been obtained if rolling without sliding conditions were satisfied. As a consequence, it appears more suitable to apply control laws dedicated to perturbation rejection. A first strategy can then consist in rejecting such perturbations by a robust approach without estimating accurately the sliding parameters: in this case, only the structure of the extended model is used. For instance, sliding mode control (as achieved in [START_REF] Hao | Robust adaptive control of automatic guidance of farm vehicles in the presence of sliding[END_REF]) can be considered. Such approaches are efficient from a theoretical point of view, but inevitable actuator delays on steering wheel generate a chattering effect, which could be harmful in practice. Such a control law, applied only on front steering wheels (see [START_REF] Hao | Robust adaptive control of automatic guidance of farm vehicles in the presence of sliding[END_REF] for details), has been tested on a loop path tracking on a paddy field, at a 6km/H speed. The experimental result is reported in red dashed line in figure 4 and compared to classical control law neglecting sliding effects, depicted in black solid line. A second strategy for perturbation rejection consists in taking part of the sliding parameters estimation capability. As demonstrated previously, the sliding parameters can indeed be on-line estimated by [START_REF] Holzmann | Predictive estimation of the road-tire friction coefficient[END_REF]. Then, the contribution of sliding to the lateral deviation observed if the mobile robot is controlled under rolling without sliding assumption can be computed. As a consequence, this estimated deviation can be entered as an additive set point into the classical control law. In this strategy, the control structure is not modified, but an offset is entered, corresponding to the theoretical deviation calculated on-line from sliding estimation and model ( 4). This approach, detailed in [START_REF] Lenain | Adaptive control for car like vehicles guidance relying on rtk gps: Rejection of sliding effects in agricultural applications[END_REF], can be viewed as an Internal Model Adaptive control law. It has been tested in full scale experiments in the same conditions than those mentioned herebefore. The tracking deviation is reported in green dotted line in figure 5. It can be seen that after a transition phases appearing at the beginning of the curve (between curvilinear abscissas 30 and 42 m), the lateral deviation satisfactorily converges to zero. The sliding effects are compensated, without oscillations due to the chattering effect pointed out on figure 4, even if some overshoots can appear at curvature transitions. 2) TBKM: In this model point of view, sliding is entered as variables acting inside the model structure and respecting a kind of nonholonomic constraint to be accounted by control laws. The main interest is that the model structure stays unchanged with respect to the case where no sliding was accounted. A chained system transformation, equivalent to the one achieved in the rolling without sliding case, can then be derived. An observer based adaptive control law, accounting for sliding effects, can then be designed. Such a control law has been proposed in [START_REF]High accuracy path tracking for vehicle in presence of sliding: Application to farm vehicles automatic guidance for agricultural task[END_REF], when only the front wheel is steered. Path tracking results obtained in the same conditions than those mentioned herebefore are presented in blue dashed dotted line in figure 6. It can be checked that this approach permits to compensate for sliding effects during the constant curvature phases (the lateral deviation reaches zero and stays null during the loop -from curvilinear abscissa 38m to 60m). It is also more reactive as overshoots recorded when entering or exiting the curve are limited. This particular point will be addressed in the section C.

B. Example of 4WS Backstepping Control

In order to illustrate the potentialities of extended kinematic models when addressing control design in presence of sliding, the extension of above-mentioned control laws to four wheeled-steering mobile robots is here discussed. With such robots, an attractive objective consists in controlling simultaneously the path tracking error y to zero and the angular deviation θ to a desired set point (hereafter denoted θref ) with the two control inputs δ F and δ R . As the TBKM has been shown to be more accurate, this model is used below.

1) Front steering axle control:

The expression of extended kinematic model [START_REF] Grip | Nonlinear vehicle velocity observer with road-tire friction adaptation[END_REF], where sliding effects are accounted, is still consistent with classical models of wheeled mobile robots derived under non-sliding assumption. As a consequence, relying on [START_REF] Samson | Control of chained system[END_REF], this model can be turned into an almost linear model, named chained form without any approximation. If δ R is transiently considered as a parameter, then the first control input δ F can easily be designed from this chained form in order to servo the lateral deviation. This constitutes the first step of the proposed backstepping approach. In a second step, the control input δ R will be designed with the aim to servo the angular deviation.

Chained transformation of TBKM model ( 5) can be achieved relying on variables transformation [START_REF] Lenain | Adaptive control for car like vehicles guidance relying on rtk gps: Rejection of sliding effects in agricultural applications[END_REF]

[s, y, θ] → [a 1 , a 2 , a 3 ] = [s, y, (1 -c y) tan( θ + β R2 )] [v, δ F ] → [m 1 , m 2 ] = [ Vr cos( θ+βR2) 1-c(s) y , da3 dt ] (11)
and leads to the following chained system:

       ȧ1 = d a1 dt = m 1 ȧ2 = d a2 dt = a 3 m 1 ȧ3 = d a3 dt = m 2 (12)
When introducing derivatives with respect to the curvilinear abscissa, model ( 12) can be expressed as:

a ′ 2 = da2 da1 = a 3 a ′ 3 = da3 da1 = m 3 = m2 m1 (13)
The lateral deviation can then be controlled by designing m3 according to [START_REF] Ojeda | Methods for the reduction of odometry errors in over-constrained mobile robots[END_REF], since it leads to a second order differential equation, ensuring the convergence of a 2 = y to zero.

m 3 = -K d a 3 -K p a 2 (K d , K p > 0) (14)
Injecting ( 14) into [START_REF] Lenain | Adaptive control for car like vehicles guidance relying on rtk gps: Rejection of sliding effects in agricultural applications[END_REF], and considering δ Rβ R as slowvarying with respect to the dynamic imposed by the two gains K p and K d , leads to the following expression for the first control input δ F :

δ F = arctan tan(δ R -β R ) + L cos(δR-βR) ( c(s) cos θ2 α + A cos 3 θ2 α 2 ) + β F (15) with:
   θ2 = θ + δ R -β R α = 1 -c(s)y A = -K p y -K d α tan θ2 + c(s)α tan 2 θ2 (16)
Since derivatives with respect to the curvilinear abscissa is here considered, the gains (K p , K d ) allow to specify a settling distance instead of a settling time. In the sequel, it is chosen

K p = K 2 d
4 in order to obtain a critical damping ξ = 1. Finally, it can be noticed that the classical control law designed under rolling without sliding assumption (such as derived in [START_REF] Thuilot | Automatic guidance of a farm vehicle relying on a single cp-gps[END_REF]) can be recovered when setting sliding parameters β F and β R to zero:

δ F = arctan L( c(s) cos θ α + cos 3 θ α 2 [K p y -K d α tan θ + c(s)α tan 2 θ]) (17)
2) Backstepping control for rear axle: With control law (15), the lateral deviation is satisfactorily servoed to zero, as well as θ2 . The convergence of this latter variable implies that actual angular deviation θ converges to β Rδ R , and not to some desired set point, as expected. Actual control of θ can now be addressed using the control input δ R . This constitutes the second step of the proposed control approach.

Reporting control law [START_REF] Pacejka | Tire and vehicle dynamics[END_REF] into the third equation in model ( 5) leads to the following angular deviation dynamic with respect to curvilinear abscissa:

θ′ = (- K 2 d y 4 α -K d tan θ2 + c(s) tan 2 θ2 ) cos 2 θ2 (18)
As above mentioned, control law [START_REF] Pacejka | Tire and vehicle dynamics[END_REF] imposes that θ2 stays close to zero. As a result, the term cos 2 θ2 can be considered as equal to 1, so that:

θ′ = - K 2 d y 4 α -K d tan θ2 + c(s) tan 2 θ2 ( 19
)
In view of [START_REF] Wang | An analysis of wheeled mobile robots in the presence of skidding and slipping: Control design perspective[END_REF], two cases must be distinguished, according to the curvature value: If the case c(s)=0 (straight line following) is encountered, the angular deviation dynamic ( 19) can be simplified as:

θ′ = - K 2 d y 4 -K d tan θ2 (20)
Then, the error dynamic θ′ = K d2 ( θrefθ) with K d2 > 0 can easily be imposed by proposing the following rear steering law:

δ R = β R -θ + arctan -K d y 4 - K d2 ( θref -θ) K d (21)
This ensures the convergence of θ to θref . Now in the case c(s) =0 (curved path following), using the notation W = tan θ2 , equation ( 19) can be rewritten as:

- θ′ - K 2 d y 4 α -K d W + c(s) W 2 = 0 (22)
Once more, the objective is to impose θ′ = K d2 ( θrefθ).

If it was achieved, then the discriminant of equation ( 22) would be (using α = 1c(s)y):

∆ = K 2 d α -4 c(s) K d2 ( θ -θref ) ( 23
)
As α is assumed to be always strictly positive, see hypothesis (3), the condition ∆ > 0 leads to:

   ( θ -θref ) < K 2 d 4 c(s) K d2 α if c(s) > 0 ( θ -θref ) > K 2 d 4 c(s) K d2 α if c(s) < 0 (24)
The choice for (K d , K d2 ) and the limit values of c(s) and y lead, in the worse case, to a ±30 • bound on ( θθref ), which is always satisfied in practice when properly initialized.

Since ∆ has been shown to be strictly positive, two solutions for W can be derived. Considering the range of variation of the actutors, only one of the solutions can be applied. As a result, the rear control law achieving the expected convergence can be written as following: 21) and (25) constitute the rear steering law for respectively straight and curve line following. The continuity of these expressions, when c(s) tends to zero, can be established by standard but tedious computations.

δ R = β R -θ+arctan K d - K 2 d α -4 c K d2 ( θ -θcons ) 2c(s) (25) Expressions (

3) Stability of the backstepping controller:

The stability of the overall non-linear control strategy, composed of control law [START_REF] Pacejka | Tire and vehicle dynamics[END_REF] for the front steering angle and ( 21)-(25) (depending on c(s) value), can be checked using Lyapunov theory.

Consider Lyapunov function candidate:

V = 1 2 y 2 + (α tan θ2 ) 2 + ǫ 2 (26) with ǫ = θref -θ.
The derivative of the positive function V with respect to curvilinear abscissa (homogeneous with the time derivative since robot velocity is assumed to be non-null) leads, after calculations, to the following expression (whatever the curvature value):

dV ds = -K d α 2 tan 2 θ2 -K d2 (ǫ cos θ2 ) 2 (27)
which is always negative. The stability of the mobile robot trajectory tracking and the convergence of both ǫ and θ2 to zero is then ensured. Then, injecting the null asymptotic value of θ2 into equation ( 18) establishes that the lateral deviation y also converges to zero. This finally demonstrates the stability of path tracking control in presence of sliding, with respect to lateral and angular deviations, with front and rear control laws ( 15) and ( 21) if c(s) = 0 or ( 15) and (25) if c(s) = 0. Such a control algorithm permits to compensate for sliding effects: experimental tests corroborat that lateral deviation converges to zero while angular deviation converges to the desired set point. Nevertheless, if theoretical simulations neglecting actuator behavior supply high accurate results, some overshoots can unfortunately be recorded at transition phases, and more particularly at path curvature transitions during full-scale experiments. These overshoots, are mainly due to low level delays and inertial effects (it can be checked on theoretical simulations by introducing delays on steering angle response): the mobile robot indeed starts to turn one moment after the steering variables have been sent to the actuators.

C. Predictive curvature servoing

In order to compensate for actuator delay and then cancel overshoots at curvature transitions, a partial model predictive control can be coupled with the previous approach. In this paper, such a prediction is applied only on front wheels (δ F ), since rear axle is mainly used to control angular deviations, on which low level delays are less penalizing. The objective is to send steering control signal before entering a curve (according to actuator delay) in order to obtain a relevant actual steering angle as soon as the curve appears. Following the same methodology than the one detailed in [START_REF]High accuracy path tracking for vehicle in presence of sliding: Application to farm vehicles automatic guidance for agricultural task[END_REF], it is considered that a low level model is available, and that the future path curvature can be known in advance. As the adherence conditions cannot be predicted, the control law (15) used for the front steering wheel can be split into two additive terms. Using the trigonometrical function:

arctan(a + b) = arctan(a) + arctan( b 1+ab+b 2 ) (28)
the control law (15) can be divided as follows:

δ F = δ T raj F + δ Dev F δ T raj F = arctan(a) δ Dev F = arctan( b 1+ab+b 2 ) + β F (29)
where:

a = L cos(δ R -β R ) c(s) cos θ2 α b = L cos(δ R -β R ) A cos 3 θ2 α 2 + tan(δ R -β R )
In this decomposition, δ Dev F is mainly concerned with deviation and is equal to zero when both sliding and deviations are null, while δ T raj F ensures the convergence of mobile robot curvature to the trajectory one (non null term when both sliding and deviations are null). As a consequence, the predictive algorithm will be applied only on this latter term in order to anticipate the variations of the path curvature to be followed. The proposed prediction algorithm follows the scheme depicted in figure 7. on the horizon of prediction H. The predictive angle to be applied for curvature anticipation is then the first value of the minimizing sequence, called δ T raj P red . This predictive term δ T raj P red is then substituted to the trajectory term δ T raj F , as described in figure 8. The front steering angle sent to the actuator is then:

δ F = δ Dev F + δ T raj P red (30)
while rear steering control law stays unchanged.

A. Experimental mobile robots

In order to demonstrate the capability of control laws (30) and ( 21)-( 25) for accurately guiding four-steered wheeled mobile robots on natural ground, the experimental electric platform depicted in figure 9 has been used. The vehicle weight and maximum speed are respectively 600 kg and 18 km/h, and it can climb slopes up to 45 • . The only on-boarded exteroceptive sensor is an RTK-GPS receiver, whose antenna has been located straight up the middle of the rear axle. It supplies an absolute position accurate to within 2cm, at a 10Hz sampling frequency. A Kalman filter is used to estimate the mobile robot heading.

B. Straight line following on a slope

In this configuration, a straight line reference path has been computed perpendicularly to a slope on a grass soil, as shown in figure 9. Two path tracking were achieved successively at a 2m/s speed. The first one was achieved relying on the standard control law neglecting sliding for front steering [START_REF] Seddiki | Analyse comparative des modèles de pneumatiques contact roue-sol[END_REF] and without any rear steering (δ R = 0). The tracking error and angular deviation are reported respectively in figures 10(a) and 10(b) in black solid line. The second path tracking was completed relying on the proposed front and rear control laws (30) and ( 21)-(25) when specifying a null desired angular deviation ( θref = 0). The results of this second test are reported in figures 10(a) and 10(b) in green dotted line.

First of all, the effect of sliding on a classical approach can be observed: figure 10 shows that the tracking error as well as the angular deviation cannot reach the desired zero value (the lateral deviation converges close to -30cm while the angular deviation reaches -2 • ). On the contrary, when relying on the proposed algorithm exploiting the two steering axles, the mobile robot is able to reach null lateral and angular deviations, despite the sliding effects. The robot can then compensate sliding and follows accurately the trajectory with respect to both the lateral and the angular errors.

Moreover, rear steering control allows to reach any desired relative orientation. This fact is illustrated in figure 11, where the same path has been tracked when specifying different set points for angular deviation:

θref = 0 It can be checked that the accuracy of path tracking is preserved whatever the choice for θref (i.e. lateral deviation converges to zero whatever θref ), while θ satisfactorily reaches its set point. This demonstrates the capability of the proposed algorithm to control independently lateral and angular deviations, despite sliding phenomena.

C. curved path following

In this configuration, the reference path is a half turn recorded on an even slippery ground. As previously, two path tracking were achieved: one relying on the classical control law [START_REF] Seddiki | Analyse comparative des modèles de pneumatiques contact roue-sol[END_REF], and the other one relying on the proposed approach. A desired angular deviation of -10 • has been specified in order to highlight rear steering actuation potentiality. Path tracking are shown in figure 12: the black solid line depicts the lateral deviation recorded when sliding is neglected and when only the front axle is controlled, while the red dashed line reflects the tracking error obtained when relying on control laws (30) and ( 21)-(25). As expected, the proposed algorithm ensures that the mobile robot reaches a null lateral deviation. In contrast, when relying on classical control law, a 25cm steady lateral deviation is noticed. Moreover, it can be observed that the path tracking accuracy is not affected by curvature transitions occuring at the beginning and at the end of the curve (at curvilinear abscissa 15m and 45m), demonstrating the relevancy of the proposed predictive curvature servoing. The lateral deviation stays satisfactorily close to zero all path long. To go further, figure 13 shows the relative angular orientation. As desired, it converges accurately to the desired set point θref =-10 • and maintains this value during all the path tracking. On both figures, a short deviation can be observed at curvilinear abscissa 32m, corresponding to a hole crossing on one side of the robot.

V. CONCLUSIONS AND FUTURE WORK

This paper proposes a high accurate control strategy dedicated to path tracking for mobile robots in off-road environment. It indeed allows to take into account for disturbing phenomena, without requiring the use of complex dynamic models, which classically need numerous parameters hardly observable in off-road conditions. The proposed approach is based on extended kinematic models designed for a generic two wheeled steered vehicle. Sliding phenomena is accounted via a limited number of variables, on-line observable with classical embedded perception systems. The influence of bad adherence properties on the robot motion can then be described, while preserving the kinematic structure of the model, so that traditional control techniques can still be used. A control approach, relying on such models, is thus designed, and the efficiency of sliding effects compensation has been investigated through experimental results. More precisely, a control law based on chained systems is detailed. It ensures the convergence of the mobile robot to its reference path, with a vehicle relative orientation converging to a desired set point. In addition, a predictive curvature servoing is designed to tackle the effect of delays induced by both actuators and robot inertia. This predictive action allows to preserve tracking accuracy from overshoots at path curvature transitions (entering/exiting a curve). When the adaptive approach (with on-line sliding estimation) and prediction are coupled, the mobile robot is able to follow accurately (up to a few centimeters -i.e. sensor precision) a trajectory whatever the shape to be followed and the adherence conditions.

Current developments on the proposed algorithm are focused on two points. First, the curvature predictive control does not take explicitly vehicle inertia into account: only the actuator model is used. The tuning parameters of the model predictive algorithm allow to compensate indirectly the inertia. Nevertheless, a partial dynamic model including for inertial effect is expected to be introduced. The second point deals with sliding parameters on-line observation. Currently, no model for sliding parameters evolution is considered in observer algorithm, so that limited overshoots can be observed when conditions quickly change. The use of a partial contact model in the designed observer, able to describe some sliding dynamics, could permit to improve estimation reactivity and finally the control loop performances. In counterpart, this could imply the use of additional sensors, such as gyrometer or IMU (in order to measure state derivatives).

More generally, the overall control algorithm proposed in this paper has been actually validated at speeds up to 3 m/s. Current developments aim at increasing the mobile robot speed in order to extend autonomy on unstructured ground (10 m/s is the objective). This requires the use of higher sampling frequencies (equal to 10Hz, i.e. the GPS rate). This can also require the use of additional sensors. Moreover, at such speed 3D effects (such as roll), neglected in this paper, may have to be accounted in order to ensure mobile robot stability.

Fig. 1 .

 1 Fig. 1. Classical kinematic model parameters

Fig. 2 .

 2 Fig. 2. Observer principle scheme More precisely, let us denote by X = [ y θ ] T the state vector dedicated to observation. The observed state Xrelies on sliding parameters. A control law is then expected to be designed for these sliding parameters in order to ensure the convergence of X to the measured state X. Such a convergence will ensure that the siding parameters are representative of the actual robot behavior. Let us denote the observed error by e: e = X -X(6)

Fig. 3 .

 3 Fig. 3. Results of lateral deviation estimated vs actual deviation

Fig. 4 .

 4 Fig. 4. Loop path tracking error using Sliding Mode Control law

Fig. 5 .

 5 Fig. 5. Loop path tracking error using Internal Model Adaptive Control

Fig. 6 .

 6 Fig. 6. Loop path tracking error using Observer Based Adaptive Control

Fig. 7 .

 7 Fig. 7. Prediction principle

F

Fig. 8 .

 8 Fig. 8. General algorithm of curvature prediction

Fig. 9 .

 9 Fig. 9. Experimental platform

Fig. 10 .

 10 Fig. 10. Path tracking in slope with θref = 0

  • depicted in black solid line θref = -10 • depicted in red dashed line θref = -20 • depicted in green dotted line

Fig. 11 .

 11 Fig. 11. Path tracking in slope with different θref

Fig. 12 .

 12 Fig. 12. Path tracking errors during curve path following

Fig. 13 .

 13 Fig. 13. Relative orientations during curve path following


Jonathan Courbon

Youcef Mezouar

Laurent Eck
email: laurent.eck@cea.fr

Philippe Martinet

A generic framework for topological navigation of urban vehicle

Keywords: Urban vehicle navigation, topological map, generic camera model, autonomous navigation, non-holonomic mobile vehicle, real-time application

In this paper, we present a generic framework for urban vehicle navigation using a topological map. This map is built by taking into account the non-holonomic behaviour of the vehicle. After a localization step, a sensory route is extracted to reach a goal. This route is followed using a sensor-based control strategy, based on the vehicle model and computed from the state extracted from the current and the desired sensory images. In that aim, a generic model is proposed for visual sensors. Experiments with an urban electric vehicle navigating in an outdoor environment have been carried out with a fisheye camera using a single camera and natural landmarks. A navigation along a 1700-meter-long trajectory validates our approach.

I. INTRODUCTION

Saturation of vehicles traffic in large cities is a major concern. Improvements can be gained from the development of alternative public transportation systems. In order to meet public expectation, such systems should be very flexible, in order to be suitable answer to many different individual needs, and as nuisance free as possible (with respect to pollution, noise, urban scenery, . . . ). Individual vehicles, available in a car-sharing concept, meet clearly both requirements. They appear to be very suitable in specific areas where the public demand is properly structured, as in airport terminals, attraction resorts, university campus, or inner-cities pedestrian zones. In order to spread such a transportation system, automatic navigation of those vehicles has to be addressed: passengers could then move from any point to any other point at their convenience in an automatic way, and vehicles could be brought back autonomously to stations for refilling and reuse. Automatic navigation is generally divided in four steps : 1) map building, 2) localisation onto the map, 3) path planning and 4) control to actually achieve the navigation task. Many works deal with the problems of fuzzing steps 1) and 2) on a single stage (Simultaneous Localization And Mapping; SLAM). Unfortunately, even if computers are more and more powerfull, those strategies are restricted to small environments since the computational cost highly increases with the number of features integrated onto the map. An alternative solution, suitable for large scale environment, consists on using a Geographical Information System (GIS) as proposed in [START_REF] Bonnifait | Autonomous Navigation in Urban Areas using GIS-Managed Information[END_REF].

Using visual sensors, appearance-based or "visual memorybased" navigation approaches are emerging. The main idea is to represent the mobile robot environment with a bounded quantity of images gathered in a database (visual memory). For example, [START_REF] Matsumoto | Visual navigation using viewsequenced route representation[END_REF] proposes to use a sequence of images recorded during a human teleoperated motion, and called View-Sequenced Route Reference. Such a strategy is called "mapless" (refer to [START_REF] Desouza | Vision for mobile robot navigation: A survey[END_REF]). Indeed, any notion of map nor topology of the environment appears, neither to build the reference set of images, nor for the automatic guidance of the mobile robot. Similar approaches have been proposed for urban vehicles in [START_REF] Diosi | Outdoor visual path following experiments[END_REF]. In practise, a topological organization decreases the computational cost and is more intuitive. In this paper, we present a generic framework for urban vehicle navigation using a topological map. This topological map directly takes into account the control constraints during its building (refer to Section II). Before the beginning of the motion the localization of the robotic system is performed. Given an image of one of the paths as a target, the vehicle navigation mission is defined as a concatenation of path subsets, called sensory route. A navigation task then consists in autonomously executing this route. The path-following control law adapted to the nonholonomic constraints of the vehicle is first defined (Section III-B). This control guides the vehicle along the reference route without explicitly planning any trajectory. This step requires also a model of the sensor to compute the state needed by the control law. In the case of visual sensors, we propose a generic model valid for a large set of cameras (including perspective, catadioptric, spherical and fisheye cameras). Those elements are presented in Section III-C. Experiments have been carried out with an electrical urban vehicle, navigating in outdoor environment along a 1200-meter-long trajectory. Results are presented in the last Section.

II. TOPOLOGICAL MAP WITH CONTROL CONSTRAINTS

In the sequel, we define an image I as the representation of the environment given by an embedded sensor. This sensor is supposed to be rigidly fixed to the vehicle. The environment is represented by a set of images, topologically organized.

Ψ 1 Ψ 2 Ψ 3 Ψ 4 Ψ 5
Fig. 1: The memory of the robot, composed of 5 ordered paths Ψ i . Each square represents an image of the memory.

A. Representation of the environment

Let consider a sensory path Ψ p composed of n key sensory images:

Ψ p = I p i |i = {1, 2,...,n}
Such a path is a directed graph composed of images successively acquired. In practise, such a path can represent a street between two crossroads. This representation is justified because, when following the given path it is not necessary to take into account the other elements of the environment. Paths are then linked. The choice of the key images and the path linking is explained in Section II-C. The environment is thus represented by a topological map which is a multigraph of sensory paths (refer to Fig. 1).

B. Paths acquisition

The learning stage relies on the human experience. The user guides the vehicle along one or several paths of its workspace. During this stage, the motions are assumed to be limited to those of a car-like vehicle, which only goes forward. Images are acquired by the embedded sensor and then, a selection process occurs in order to keep only some images called "key images". As noticed in [START_REF] Matsumoto | Visual navigation using viewsequenced route representation[END_REF], the number of key images of a visual path is directly linked to the human-guided path complexity.

C. Control constraints during map building

For control purpose (refer to Section III), the authorized motions are assumed to be limited to those of a car-like vehicle, which only goes forward. The following Hypothesis 2.1 formalizes these constraints.

Hypothesis 2.1: Given two frames R F i and R F i+1 , respectively associated to the vehicle when two successive key images I i and I i+1 of a sensory path Ψ were acquired, there exists an admissible path ψ from R F i to R F i+1 for a car-like vehicle whose turn radius is bounded, and which only moves forward.

Moreover, because the controller is sensor-based, the robot is controllable from I i to I i+1 only if the hereunder Hypothesis 2.2 is respected. along a path performed between R F i and R F i+1 and which are sufficient to compute the full control law. This Hypothesis 2.2 has three effects. Firstly, it limits the set of possible sensors. In fact, some sensors may not provide enough information to compute the control law. Secondly, for the same reason, the position of the sensor is important as it must provide the needed information. Finally, during the acquisition of a sensory path, this hypothesis constrains the choice of the key images. In order to connect two sensory paths, the terminal extremity of one of them and the initial extremity of the other one must be constrained as two consecutive key images of a sensory path.

D. Sensory route

A sensory route describes the vehicle's mission in the sensor space. Given two key images of the sensory memory I c and I g , corresponding respectively to the current and goal locations of the robot, a sensory route ψ is a set of key images which describes a path from I c to I g (refer to Fig. 2).

The sensory route describes a set of consecutive states that the sensor has to reach in order that the robot joins the goal configuration from the initial one. The robot motions are controlled along the sensory route using the data provided by the embedded sensor. In that aim, the sensor has to be modelled as well as the vehicle. A control law is then designed and computable by the state given by the sensor's relative information. The next section deals with those issues.

III. MODELLING AND CONTROL

When starting the autonomous navigation task, the output of the localization step provides the closest image I c to the current initial image I * c . A visual route Ψ connecting I c to the goal image is then extracted from the visual memory. As previously explained, the sensory route is composed of a set of key images. The next step is to automatically follow this route using a sensor-based technique. The principle is presented in Fig. 3.

To design the controller, described in the sequel, the key images of the reference route are considered as consecutive checkpoints to reach in the sensor space. The control problem frame attached to the vehicle in its current location. Figure 4 illustrates this setup. The origin O c of F c is on the center rear axle of a car-like vehicle, which moves on a perfect ground plane. The hand-eye parameters (i. e. the rigid transformation between F c and the frame attached to the camera) are supposed to be known. According to Hypothesis 2.2, the state of a set of features P i is known in the images I i and I i+1 . The state of P i is also assumed available in I c . The task to achieve is to drive the state of P i from its current value to its value in I i+1 . Let us note Γ a path from F i to F i+1 . The control strategy consists in guiding I c to I i+1 by regulating asymptotically the axle Y c on Γ. The control objective is achieved if Y c is regulated to Γ before the origin of F c reaches the origin of F i+1 .

2) Vehicle Modelling: Our experimental vehicle is devoted to urban transportation, i.e. it moves on asphalt even grounds at rather slow speeds. Therefore, it appears quite natural to rely on a kinematic model, and to assume pure rolling and non slipping at wheel-ground contact. In such cases, the vehicle modelling is commonly achieved for instance relying on the Ackermann's model, also named the bicycle model: the two front wheels located at the mid-distance between actual front wheels and actual rear wheels. As seen previously, our control problem has as objective that the vehicle follows a reference path Γ, we propose to describe here, its configuration with (Γ) respect to that path, rather than with respect to an absolute frame. To meet this objective, the following notations are introduced (see Figure 4).

X i+1 X c M θ O i+1 O C y F i+1 E Y c I c Z i+1 I i+1 Z c F c V δ
• O C is the center of the vehicle rear axle,

• M is the point of Γ which is the closest to O C . This point is assumed to be unique which is realistic when the vehicle remains close from Γ.

• s is the curvilinear coordinate of point M along Γ and c(s) denotes the curvature of Γ at that point.

• y and θ are respectively the lateral and angular deviation of the vehicle with respect to reference path Γ • δ is the virtual front wheel steering angle

• V is the linear velocity along the axle Y c of F c

• l is the vehicle wheelbase.

Vehicle configuration can be described without ambiguity by the state vector (s , y , θ): the two first variables provide point O C location and the last one the vehicle heading. Since V is considered as a parameter, the only control variable available to achieve path following is δ. The vehicle kinematic model can then be derived by writing that velocity vectors at point O C and at center of the front wheel are directed along wheel planes and that the vehicle motion is, at each instant, a rotation around an instantaneous rotation center. Such calculations lead to (refer to [START_REF] Zodiac | Theory of robot control[END_REF]):

⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ ṡ = V cos θ 1 -c(s)y ẏ = V sin θ θ = V tan δ l - c(s) cos θ 1 -c(s)y (1)
Model ( 1) is clearly singular when y = 1 c(s) i.e. when point O C is superposed with the path Γ curvature center at abscissa s. However, this configuration is never encountered in practical situations: on one hand, the path curvature is small and on the other, the vehicle is expected to remain close to Γ.

B. Control Design

The control objective is to ensure the convergence of y and θ toward 0 before the origin of F c reaches the origin of F i+1 . The vehicle model ( 1) is clearly nonlinear. However, it has been established in [START_REF] Samson | Control of chained systems. Application to path following and time-varying stabilization of mobile robots[END_REF] that mobile robot models can generally be converted in an exact way into almost linear models, named chained forms. This property offers two very attractive features: on one hand, path following control law can be designed and tuned according to celebrated Linear System Theory, while controlling nevertheless the actual non linear vehicle model. Control law convergence and performances are then guaranteed whatever the vehicle initial configuration is.

On the other hand, chained form enables to specify, in a very natural way, control law in term of distance covered by the vehicle, rather than in term of time. Vehicle spacial trajectories can then easily be controlled, whatever the vehicle velocity is [START_REF] Thuilot | Accurate automatic guidance of an urban electric vehicle relying on a kinematic GPS sensor[END_REF].

Conversion of the vehicle model ( 1) into chained form can be achieved thanks to the following state and control transformation:

Φ( s y θ ) ∆ = s y (1 -c(s)y)tan(θ) (2)
The expression of the actual control law δ can be obtained by inverting the chained transformation:

δ(y, θ) = arctan -l cos 3 θ (1-c(s)y) 2 dc(s) ds y tan θ -K d (1 -c(s)y) tan θ -K p y + c(s)(1 -c(s)y) tan 2 θ + c(s) cosθ 1-c(s)y (3)
The gains (K d , K p ) impose a settling distance and set the desired control performances. Consequently, for a given initial error, the vehicle trajectory will be identical, whatever the value of V is, and even if V is time-varying (V = 0). Control law performances are therefore velocity independent. In our experiments the path to follow is simply defined as the straight line Γ = (O i+1 , Y i+1 ) (refer to Figure 4). In this case c(s) = 0 and the control law (3) can be simplified as follows:

δ(y, θ) = arctan -l cos 3 θ (-K d tan θ -K p y) (4)
The implementation of control law (4) requires the on-line estimation of the lateral deviation y and the angular deviation θ of F c with respect to Γ. In the next Section, we describe how geometrical relationships between two views acquired with a camera under the generic projection model (conventional, catadioptric and fisheye cameras) are exploited to enable a partial Euclidean reconstruction from which (y, θ) are derived.

C. State estimation from a visual sensor

Different sensors are suitable for our application. The method consists on two steps: 1/ sensor modeling, 2/ extraction of the state of the robot in the sensor space. In the sequel, visual cameras are used to extract the state required by the control law but our framework is not limited to those sensors. We consider a camera modeled by the generic projection on the sphere and the image of points features. The unified projection model consists on a projection onto a virtual unitary sphere, followed by a perspective projection onto an image plane [START_REF] Geyer | A unifying theory for central panoramic systems and practical implications[END_REF]. This virtual unitary sphere is centered in the principal effective view point and the image plane is attached to the perspective camera.

Let F c and F m be the frames attached to the conventional camera and to the unitary sphere respectively. In the sequel, we suppose that F c and F m are related by a simple translation along the Z-axis (F c and F m have the same orientationThe origins C and M of F c and F m will be termed optical center and principal projection center respectively. The optical center C has coordinates [0 0 -ξ] T with respect to F m and the image plane is orthogonal to the Z-axis and it is located at a distance

Z = f c from C . Let X be a 3D point with coordinates X = [X Y Z] T with respect to F m . The point on the normalized image plane is of homogeneous coordinates x = [x T 1] T = f (X) (where x = [x y] T ): x = f (X) = X ε s Z + ξρ Y ε s Z + ξρ 1 (5)
The parameter ε s allows to integrate the spherical projection into this model by setting ε s = 0 and ξ = 1. In the general case and in the sequel, this parameter is equal to 1. Note that, setting ξ = 0 (and ε s = 1), the general projection model becomes the well known pinhole model. ξ can be seen as a parameter which allows to control the amount of radial distortions for fisheye lenses.

Finally the point of homogeneous coordinates m in the image plane is obtained after a plane-to-plane collineation K of the 2D projective point of coordinates x:

m = Kx (6)
The matrix K can be written as K = K p M where the matrix K p contains the perspective camera intrinsic parameters, and the diagonal matrix M links the frame attached to the unitary sphere to the camera frame F m . For a central catadioptric camera, this matrix depends on the shape of the mirror.

Let X be a 3D point with coordinates

X c = [X c Y c Z c ] T in the current frame F c and X * = [X i+1 Y i+1 Z i+1 ] T in the frame F i+1 .
Let X m and X * m be the coordinates of those points, projected onto the unit sphere (refer to Fig. 5). Let R (respectively t) represent the rotational matrix (resp. the translational vector) between the current and the desired frames. Similarly to the case of pinhole model, the epipolar geometry leads to:

X m T EX m * T = 0 ( 7 )
where E = R [t] × is the essential matrix [START_REF] Svoboda | Epipolar geometry for central catadioptric cameras[END_REF]. The essential matrix E between two images is estimated using five couples of matched points as proposed in [START_REF] Nistér | An efficient solution to the five-point relative pose problem[END_REF] if the camera calibration (matrix K) is known. Outliers are rejected using a random sample consensus (RANSAC) algorithm. From the essential matrix, the camera motion parameters (that is the rotation R and the translation t up to a scale) can be determined. Finally,

IV. IMPLEMENTATION AND EXPERIMENTAL RESULTS

A. Map management

We have proposed a software platform called SoViN to efficiently manage visual memory for autonomous vehicle navigation in large scale environments [START_REF] Courbon | Navigation of urban vehicle: An efficient visual memory management for large scale environments[END_REF]. An overview of SoViN is shown in Fig. 6. The software platform is divided into three different modules: a module for processing (image processing, computer vision and control); a module for HMI (visualization and high-level actions control) and a module for data storage and access (low-level functions). For data storage, our software uses a conventional database software. HMI and processing modules communicate with the database thanks to this low-level module.

During both localization and path following stages, key images' elements (image points with their descriptors, matching between successive image points . . . ) are loaded on-line from the database.

B. Experimental set-up

Our experimental vehicle is depicted in Figure 7. It is an urban electric vehicle, named RobuCab, manufactured by the Vision and guidance algorithms are implemented in C ++ language on a laptop using RTAI-Linux OS with a 2GHz Centrino processor. The Fujinon fisheye lens, mounted onto a Marlin F131B camera, has a field-of-view of 185 deg. The image resolution in the experiments was 800 × 600 pixels. It has been calibrated using the Matlab toolbox presented in [START_REF] Mei | Single view point omnidirectional camera calibration from planar grids[END_REF]. The camera, looking forward, is situated at approximately 80cm from the ground. The parameters of the rigid transformation between the camera and the robot control frames are roughly estimated. Grey level images are acquired at a rate of 15fps.

C. Experimentations 1) Learning stage:

The robot has been manually driven along a 1200 meter-long loop (refer to Fig. 8) at the beginning of July, with a very sunny weather. The fisheye lens camera was rigidly fixed at approximately 1 m from the ground, 1 m at the left of the middle of the car. The camera was looking in the direction of the vehicle. It has been calibrated using the unified model on the sphere. An importation step occurred and result to 35 edges after having cut some edges in function of the context (straight lines, huge turns). A longitudinal velocity has been given for each edge (0.4 m/s for huge turns, 0.8 m/s in small turns, 1 m/s for straight parts). The DGPS data has also been acquired. For each node, the position given by interpolation of the DGPS data have been saved too (interpolation in function of the time when data where acquired). 2) Localization step and initialisation: After a localization step, a visual route is extracted. It consists on doing at least one loop.

3) Autonomous navigation: The experiment lasts 26 minutes for a path of 1700 meters (refer to Fig. 9) which results to an average longitudinal velocity of around 1 m/s. This visual route is composed of 54 edges and around 1400 key images. This path following stops for safety reasons because few visual features were robustly matched.

Evaluation with a RTK-GPS: DGPS data have been recorded during the learning and the autonomous stages. The results are reported in Fig. 11. The red and blue lines represents respectively the trajectories recorded during the learning and autonomous stages. It can be observed that these trajectories are similar. The lateral error measured by the RTK-GPS has a mean of 23 cm and a standard deviation of around 30 cm.

V. CONCLUSION

We have presented a complete framework for autonomous navigation which enables a vehicle to follow a sensory path obtained during a learning stage. The robot environment is modeled as a topological map from which a sensory route connecting the initial and goal images can be extracted. The robotic vehicle can then be driven along the route thanks to a sensor based control law which takes into account nonholonomic constraints. Furthermore, the state of the robot is estimated using a generic camera model valid for a perspective, catadioptric as well as a large class of fisheye cameras. Our approach has been validated on an urban vehicle navigating along a long trajectory. At our knowledge, it reports it is the first time that a 1700-meter-long trajectory is done using a single camera and natural landmarks.

Hypothesis 2 . 2 :ψFig. 2 :

 222 Fig.2:A sensory route, from the current and goal locations (in the sensory memory) of the robot.

Fig. 3 :

 3 Fig. 3: Route following process with a visual sensor.

Fig. 4 :

 4 Fig. 4: Images I i and I i+1 are two consecutive key images of the visual route Ψ. I c is the current image. Γ is the path to follow.

Fig. 5 :

 5 Fig. 5: Geometry of two views.

Fig. 6 :

 6 Fig. 6: Architecture of our software for visual navigation SoViN

Fisheye CameraFig. 7 :

 7 Fig. 7: RobuCab vehicle with the embedded camera.

Fig. 8 :

 8 Fig. 8: Large-scale environment: large loop

Fig. 11 :Fig. 9 :

 119 Fig. 11: Trajectories obtained with the RTK-DGPS

Fig. 10 :

 10 Fig. 10: Errors in the images (pixels) versus time (s).

ACKNOWLEDGMENT

This work is supported by the EU-Project FP6 IST µDrones, FP6-2005-IST-6-045248.


Christophe Cariou
email: christophe.cariou@cemagref.frbenoit.thuilot@lasmea.univ-bpclermont.fr

Roland Lenain

Benoit Thuilot

Philippe Martinet

Cemagref

Automatic reverse turn of agricultural vehicles: a predictive approach

This paper addresses the automation of farm vehicle manoeuvres in headlands. A trajectory generation strategy is presented to plan reverse turns. Then, both steering and speed control algorithms are presented to guide the vehicle on the planned path, based on its kinematic model extended with additional sliding parameters and on predictive approaches. Real world experiments have been carried out on a low adherent terrain with an experimental mobile robot. At the end of each row, the sequences of the reverse turn are automatically generated to connect the next track to be followed, and the manoeuvre is autonomously performed by the vehicle. Reported experimental results demonstrate the capabilities of the proposed algorithms in full scale conditions.

I. INTRODUCTION

With a world population exceeding 6 billion and growing by about 6 million a month, the need to increase agricultural production while reducing the negative impacts of farm activity on the environment has become critical. Although modern agriculture allowed to double the world food production in 35 years, intensive use of inputs (chemical fertilizers, pesticides, herbicides) and increasingly size of farm vehicles are currently questioned due to their major degrading effects on the aquatic and terrestrial ecosystems. Therefore, new solutions are today required to develop environmentally sustainable agricultural productions. In this framework, as pointed out in [START_REF] Katupitiya | Systems engineering approach to agricultural automation: new developments[END_REF] and [START_REF] Pedersen | Agricultural robots -system analysis and economic feasibility[END_REF], precision agriculture together with the development of automatic guided vehicles constitutes a promising way in terms of accuracy, repeatability, durability and field efficiency.

Numerous auto-steering systems have already been proposed and marketed for semi-autonomous tractors to accurately follow parallel tracks in the field (e.g. Agco autoguide, Agrocom e-drive, Autofarm autosteer, John-Deere autotrac, Trimble aggps, Reichhardt autosteer). However, the driver has still to manually turn the vehicle at the end of each row. In order to benefit of fully automated solutions, the automation of manoeuvres in headlands is required. Very few approaches have been proposed in that way, moreover mainly based on loop turns (e.g. John-Deere itecpro), [START_REF] Zhu | Path tracking control of autonomous agricultural mobile robots[END_REF]. The drawback of such an approach is that it involves excessive headland width for turning on the adjacent track, and is thereby far from optimal in term of productivity, headland being usually low-yield field areas due to high soil compaction.

A more efficient solution is to perform reverse turns, i.e. manoeuvres executed with stop points and reverse motion, leading to reduced headlands, see figure 1. This type of manoeuvre is widely used by farmers and more in accordance with agricultural European practices. However, automation of such reverse turns is a challenging problem in both path planning and control point of views, all the more that wheel skidding and slipping are inevitable in an agricultural context and may seriously damage the accuracy of path tracking as pointed out in [START_REF] Wang | Modeling skidding and slipping in wheeled mobile robots: control design perspective[END_REF]. Delays induced by steering and speed actuators may also lead to transient lateral overshoots when the vehicle enters into curves, or longitudinal overshoots when it stops.

In the litterature, most wheeled mobile robot controllers have been developed without sliding and actuators delays accounted. Moreover, numerous researches only focused on planning the global trajectories in the whole field to increase field efficiency [START_REF] Bochtis | Minimising the non-working distance travelled by machines operating in a headland field pattern Biosystems engineering[END_REF], and seldom are the works related to manoeuvres generation in headlands [START_REF] Vougioukas | A two-stage optimal motion planner for autonomous agricultural vehicles[END_REF].

This paper proposes to address this issue and is organized as follows. First, a trajectory generation strategy is presented based on clothoid arcs and primitives connected together to easily plan reverse turns. Then, the steering controller is considered, based as in our previous work on the control of two [START_REF] Lenain | High accuracy path tracking for vehicles in presence of sliding. Application to farm vehicle automatic guidance for agricultural tasks[END_REF] and four [START_REF] Cariou | Adaptive control of four wheel steering off road mobile robots: application to path tracking and heading control in presence of sliding[END_REF] wheel steering vehicles on a kinematic model extended with additional sliding parameters to take into account for sliding phenomena. A predictive control algorithm is also used to reduce the effects induced by both steering actuation delays and agricultural machines inertia. Then, the velocity controller is designed based on a model predictive approach in order to anticipate for vehicle speed variations. Next, the experimental mobile robot is presented, and the capabilities of the proposed algorithms are finally insvestigated through full-scale experiments during reverse turns on a slippery ground.

II. REVERSE TURN PATH PLANNING

The planning of a reverse turn consists to generate three sucessive movements to connect two adjacent tracks AB and CD, separated of a distance Dist as depicted figure 2. The trajectories should be admissible for the front twowheel steering vehicle considered. The wheels must stay in the headland H whereas the body can go over as we suppose that none obstacle can touch the vehicle body. The optimal trajectories are a compromise between the minimization of both the headland size and the time required to carry out the manoeuvres. Such problem is complex. Numerical algorithms are sometimes presented in the litterature [START_REF] Oksanen | Path planning algorithms for agricultural field machines Helsinki university of technology[END_REF] considering the problem as a minimum-time optimal control problem. Unfortunately, the minimization of the headland size is not addressed, and the developed algorithms generally demand high computational cost, leading to offline solutions and preliminary fixed trajectories. Online algorithms could nevertheless take advantage of the realtime measurements as the actual position and heading of the vehicle at the stop points to adapt the reverse turn online, optimising consequently the field coverage. In this paper, we propose to generate the manoeuvres using elementary primitives (line segment, arc of circle) connected together with clothoid arcs in order to ensure the curvature continuity of the motions. The obtained trajectories are certainly not optimal but could easily be adapted in real-time in future work, and enable to rapidly test the control algorithms.

A. Clothoid to connect a line segment and an arc of circle

The aim is to use an arc of clothoid to connect a line segment to an arc of circle. The curvature c of a clothoid varies linearly with respect to its curvilinear abscissa s, according to the constant g, see generic equation (1) and corresponding shape illustrated on figure 3(b). For the vehicle considered, g can be estimated using both the maximal angular velocity of the wheels (20 • /s) and the maximal vehicle linear velocity (1m/s) during the reverse turn, i.e. a wheels rotation of 0.2 • /cm. Using the geometric relationship (2) supplying the front wheel steering vehicle curvature with respect to the front steering angle δ F and the vehicle wheelbase L = 1.2m, it can be estimated that for a wheels rotation of dδ F = 0.2 • corresponds a curvature variation dc = tan(dδF ) L = 0.0029, i.e. g = dc ds = 0.29 with ds = 0.01m. Obviously, on one hand, this calculation depends of the wheels rotation angle, the vehicle curvature variation being greater for the same dδ F at high wheel angles as depicted on figure 3(a), and on the other hand, only a portion of the clothoid presented on figure 3(b) can be performed by the vehicle until the curvature corresponding to the minimum radius of curvature for the considered vehicle. As expressed in [START_REF] Walton | Spiral spline curves for highway design[END_REF] for highway design, the Cartesian coordinates of the clothoid (x(s), y(s)) can be written using the Fresnel integrals (3), which can be approximated using different methods, e.g. development in Taylor series.

c(s) = g.s (1)
c = tanδ F L (2)
⎧ ⎪ ⎨ ⎪ ⎩ x(s) = π g √ g π s 0 cos ( π 2 t 2 )dt y(s) = π g √ g π s 0 sin ( π 2 t 2 )dt (3)
To connect a line segment AB to an arc of circle MN of curvature 1/r, see figure 4, with r corresponding to the minimum curvature radius of the vehicle, the points of the clothoid (x(s), y(s)) are calculated with (3) until the abcissa s 1 = 1/g.r is reached. The coordinates of the center I of the circle are then given by ( 4). The arc of clothoid BM is thus entirely defined, leading to a continuous curvature trajectory admissible for the vehicle.

⎧ ⎪ ⎨ ⎪ ⎩ x I = r[ √ 2πθ 1 A( 2θ1 π ) -sin θ 1 ] y I = r[ √ 2πθ 1 B( 2θ1 π ) + cos θ 1 ] with θ 1 = g s 2 1 2 (4)

B. Trajectory generation strategy

The proposed approach consists in the following steps.

• Firstly, the third movement from R to C is calculated, see figure 5, so that the vehicle at point R is parallel to the headland limit. On one hand, this specifies the size of the required headland to perform the reverse turn.

On the other hand, it will enable to easily calculate the reverse turn for different values of the distance Dist, just adjusting the length of the line segment RT parallel to the headland limit. • The first movement is calculated, composed of the arc of clothoid Clo1 and the circle of centre I1. • Then, the second movement, i.e. the reverse movement, is built, composed of three arcs of clothoid and the third circle. Clo4 enables to go from curvature c = 0 at T to c = c max at X. Clo3 goes from curvature c = c max at X to c = 0 at Y , and Clo2 goes from c = 0 at Y to the circle curvature at Z. • The second movement is vertically positionned in order to have an intersection point S between the first and third circle, that determines the position of the circle center I3. At the stop point S, the direction of the wheels will be reorientated to change the vehicle rotation instantaneous center from I to I3.

C. Speed references

We define the speed references with respect to the curvilinear abscissa for the three movements using sigmoid curves to limit the skidding at each beginning/end of movements. The maximal acceleration of the vehicle is about 1m/s 2 . The proposed sigmoid enables to go from 0 to 1m/s in 2m with a maximal acceleration of 0.65m/s 2 , see figure [START_REF] Pedersen | Agricultural robots -system analysis and economic feasibility[END_REF]. Thereby, at the end of each track, the trajectories of the reverse turns can now be automatically generated with linked speed references according to the chosen value Dist. The next section presents the control algorithms developed to accurately follow such reverse turns.

III. CONTROL ALGORITHMS

Accurate automatic guidance of mobile robots in an agricultural environment constitutes a challenging problem, mainly due to the low grip conditions usually met in such a context. As pointed out in [START_REF] Wang | Modeling skidding and slipping in wheeled mobile robots: control design perspective[END_REF], if the control algorithms are designed from pure rolling without sliding assumptions, the accuracy of path tracking may be seriously damaged, especially in curves. Therefore, sliding has to be accounted in the control design to preserve the accuracy of path tracking, whatever the path to be followed and soil conditions. Moreover, the actuations delays may lead to significant overshoots, especially at each beginning/end of curves and at each stop points. Predictive actions have then to be defined in order to maintain accurate path tracking performances.

Subsection A presents an extended kinematic model accounting for sliding effects and addresses the estimation of grip conditions using an observation algorithm. Subsection B describes the steering and speed control algorithms based on predictive approaches.

A. Kinematic model extended with sliding parameters

In the same way than in our previous work [START_REF] Lenain | High accuracy path tracking for vehicles in presence of sliding. Application to farm vehicle automatic guidance for agricultural tasks[END_REF], two parameters homogeneous with side slip angles in a dynamic model are introduced to extend the classical two-wheel steering kinematic model, see the bicycle representation of the vehicle on figure 8. These two angles denoted respectively β F and β R for the front and rear axle represent the difference between the theoretical direction of the linear velocity vector at wheel centers, described by the wheel plane, and their actual direction. These angles are assumed to be entirely representative of the sliding influence on vehicle dynamics.

The notations used in this paper are listed below and depicted on figure 8.

• F and R are respectively the center of the front and rear virtual wheels. R is the point to be controlled. • δ F is the front steering angle and constitutes the first control variable. • V r is the vehicle linear velocity at point R and constitutes the second control variable. • β F and β R are the front and rear side slip angles.

• M is the point on the reference path Γ to be followed, which is the closest to R.

• s is the curvilinear abscissa of point M along Γ. • c(s) is the curvature of the path Γ at point M . • θ Γ (s) is the orientation of the tangent to Γ at point M with respect to the absolute frame [O, X O , Y O ). • θ = θ v -θ Γ is the vehicle angular deviation.
• y is the vehicle lateral deviation at point R.

• L is the vehicle wheelbase (line segment RF ). The equations of motion are derived with respect to path Γ. It can be established (see [START_REF] Lenain | High accuracy path tracking for vehicles in presence of sliding. Application to farm vehicle automatic guidance for agricultural tasks[END_REF]) that:

⎧ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎩ ṡ = V r cos( θ-βR) 1-c(s) y ẏ = V r sin( θ -β R ) θ = V r [cos(β R )λ 1 -λ 2 ] (5)
with: λ 1 = tan(δF -βF )+tan(βR)

L

, λ 2 = c(s) cos( θ-βR)

1-c(s) y Model (5) accurately describes the vehicle motion in presence of sliding as soon as the two additional parameters β F and β R are known. We developed an observation algorithm to achieve side slip angles indirect estimation, relying on the sole lateral and angular deviations measurements, see [START_REF] Lenain | Adaptive and predictive path tracking control for off-road mobile robots[END_REF]. This observer is based on the duality between observation and control, and is studied as a classical control problem. The principle scheme of this observer is presented figure 9. β F and β R are considered as control variables to be designed in order to ensure the convergence of the extended model outputs (y, θ) obs , to the measured variables (y, θ) mes .

B. Control laws design

The extended model ( 5) constitutes a relevant basis for mobile robot control design. The control objective is on one hand to perform an accurate path tracking with respect Fig. 9. Observer principle scheme to lateral and angular deviations, and on the other hand to control the vehicle velocity on the planned speed references.

1) Steering controller: Our previous work [START_REF] Lenain | High accuracy path tracking for vehicles in presence of sliding. Application to farm vehicle automatic guidance for agricultural tasks[END_REF] turns (5) into chained form and derived the steering control law for the front axle [START_REF] Oksanen | Path planning algorithms for agricultural field machines Helsinki university of technology[END_REF] where K d is a gain allowing to specify a settling distance.

δ F = β F + arctan tan(-β R ) + L cos(βR) ( c(s) cos θ2 α + A cos 3 θ2 α 2 ) ( 6
)
with:

⎧ ⎨ ⎩ θ2 = θ -β R α = 1 -c(s)y A = - K 2 d y 4 -K d α tan θ2 + c(s)α tan 2 θ2 (7)
To reject transient overshoots in lateral deviation when the vehicle enters into a curve mainly due to delays induced by the steering actuator, a predictive algorithm was also designed, see [START_REF] Lenain | Adaptive and predictive path tracking control for off-road mobile robots[END_REF]. Experimental results demonstrated that high accurate guidance can be achieved whatever the grip conditions and the shape of the path to be followed.

However, the vehicle velocity was manually controlled and strictly positive. The idea in this paper is to extend these results and take advantage that the path following performances were demonstrated to be independent from the vehicle velocity, in order to built a second control loop dedicated for the vehicle speed control and therefore enable to autonomously perform the reverse turns.

2) Speed controller: Usually, when a vehicle stops at a point, signifiant overshoots in longitudinal motion is usually observed, mainly due to engine delay and vehicle inertia if not accounted in the controller. One way to reject such problem, and anticipate speed variations, is to design a predictive algorithm. To achieve this objective, the technique of model predictive control, based on theory developed in [START_REF] Richalet | Industrial applications of model based predictive control[END_REF], is used.

Since the shape of the reference path and speed references are totally known, the desired value D for the velocity after an horizon of prediction H is inferred from current vehicle velocity V (n) at time nT e , see figure 10.

The approach consists to calculate the value of the control variable C(n) to be sent to the speed actuator, which The reference trajectory is chosen with a first order dynamic (8), with (n) = D-V (n) and λ = 0.6 the decrement. The required increment ∆p at time n+H is [START_REF] Vougioukas | A two-stage optimal motion planner for autonomous agricultural vehicles[END_REF]. The required increment of the model is [START_REF] Walton | Spiral spline curves for highway design[END_REF].

(n + i) = (n)λ i (8) ∆p(n
+ H) = (n) -(n + H) = [D -V (n)](1 -λ H ) (9) ∆m(n + H) = ∆p(n + H) = q(n + H) -q(n) (10)
Considering the control variable C(n) as a simple step and the vehicle longitudinal behavior as a first order of time constant τ = 0.42s and gain K = 0.97, see figure 11 and model equation [START_REF] Wang | Modeling skidding and slipping in wheeled mobile robots: control design perspective[END_REF], the speed control is then given by [START_REF] Zhu | Path tracking control of autonomous agricultural mobile robots[END_REF].

q(n + H) = q(n)e -H τ + C(n)K(1 -e -H τ ) (11)
C(n) = [D -V (n)](1 -λ H ) + q(n) -q(n)e -H τ K(1 -e -H τ ) (12)

IV. EXPERIMENTAL RESULTS

In this section, capabilities of the proposed control algorithms are investigated on the front two-wheel steering experimental mobile robot depicted on figure 12. Path planning and following of a reverse turn are tested on a natural terrain composed of irregular and wet grass. The vehicle weight and maximum speed are respectively 600kg and 18km/h. The only exteroceptive sensor on-boarded is an RTK-GPS receiver, whose antenna has been located straight up the center of the vehicle rear axle. It supplies an absolute position accurate to within 2cm, at a 10Hz sampling frequency. In our first experiments, the vehicle heading was derived from velocity vectors measurement from GPS. However, the main drawback of such an approach is that the heading accuracy strongly depends on the vehicle velocity. In fact, at very low speed, even after being processed through a Kalman state reconstructor, the obtained heading was very noisy and disturbed closed-loop vehicle behaviour. Therefore, a gyrometer was also embedded in the vehicle to obtain an accurate heading of the vehicle during the manoeuvres at low speeds.

In the forthcoming experimental tests, the track AB is firstly recorded during a preliminary run achieved in manual driving. The reverse turn at the end of the track is automatically calculated with Dist = 2m, as well as the trajectory back CD. Then, the path is autonomously followed by the vehicle using ( 6) and ( 12) control laws, see figure 13 As it can be seen on figures 14(a), the speed reference is correctly followed by the vehicle. The speed variations are well anticipated with the predictive approach. Figure 15 reports the measured and control signals of the front steering angle. We observe that the measured angle of the wheels follows correctly the steering control and reaches values of ±20 • with fast variations to perform the reverse turn.

The lateral deviation according to the curvilinear abscissa is reported on figure 16. In spite of fast speed and steering variations, an overall tracking error within ±5cm is obtained, except at the end of the second stop point with a lateral error of 10cm, certainly due to a too short horizon of prediction at this moment in the steering prediction algorithm together with sliding conditions. The control gains (K p , K d ) of ( 7) were set to (0.19, 1.4) in order to impose a short settling distance (6m) for the convergence of the lateral deviation. We can effectively noticed the obtained settling distance about 5m on figure 16. Therefore, these experimental tests show the capability of the proposed approach to control an off-road vehicle on a planned reverse turn.

V. CONCLUSIONS AND FUTURE WORK

This paper adresses the problem of the automation of farm vehicles manoeuvres in headlands.

A reverse turn path planning algorithm is fisrtly presented. The trajectories are built using elementary primitives (line segment, arc of circle) connected together with clothoid arcs in order to ensure the curvature continuity of the movements. The simple trajectory generation strategy permits to easily adapt the reverse turn in real-time to connect adjacent tracks, and constitutes a suitable basis for testing the path tracking control algorithms.

An extended kinematic model accounting for sliding effects via two additional side slip angles is then presented. This model is used to derive a steering control algorithm independent from the vehicle velocity. A second control loop dedicated for the vehicle speed control is then investigated in this paper, based on a model predictive control to anticipate the speed variations and compensate for vehicle inertia and low-level capabilities.

Promising results are presented with an experimental mobile robot on a natural environment. In spite of fast speed and steering variations required to perform the manoeuvres, an overall tracking error within ±5cm is obtained, except at the second stop point around 10cm. Such results are satisfaying in agricultural point of view. In fact, the aim in that case is not to obtain an accurate feedback stabilization on the stop points, difficult to perform all the more in sliding conditions, but to reach a bounded configuration around the stop point to enable reverse turn enough accurate for agricultural vehicles.

The follow-up of this work concerns the increase in the speed references to test the behaviour of the closedloop system around the maximal acceleration of the vehicle requiring the development a skidding observer. The extension of such reverse turn with a four-wheel steering vehicle is also currently studied to explicitely control both lateral and angular deviations, see first developments on path following in [START_REF] Cariou | Adaptive control of four wheel steering off road mobile robots: application to path tracking and heading control in presence of sliding[END_REF]. Moreover, the case of the reverse turn with a trailer hooked to the vehicle will be also investigated. Since we are concerned with agricultural applications, the reverse turn of large trailers constitutes another challenging problem, all the more in sliding and skidding conditions.

Fig. 1 .

 1 Fig. 1. Loop turn and reverse turn

Fig. 2 .

 2 Fig. 2. Three movements for reverse turn

Fig. 3 .

 3 Fig. 3. Estimation of g and clothoid

Fig. 4 .

 4 Fig. 4. Connection with an arc of clothoid

Fig. 5 .

 5 Fig. 5. Example with Dist=0 Figures 6(a) and 6(b) are respectively the results of the path planning algorithm for Dist = 0 and Dist = 2m.

Fig. 6 .

 6 Fig. 6. Reverse turn path planning

Fig. 7 .

 7 Fig. 7. Sigmoid as speed references

Fig. 8 .

 8 Fig. 8. Path tracking parameters

Fig. 10 .

 10 Fig. 10. Model predictive control

Fig. 11 .

 11 Fig. 11. Longitudinal step response: identification with 1 st order

Fig. 12 .

 12 Fig. 12. Experimental platform

  .

Fig. 13 .

 13 Fig. 13. Results of the path following

  Fig. 14. Speed control