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

P Martinet

Automatic Guidance of a Farm Tractor Relying on a Single CP-DGPS

Keywords: mobile robots, nonlinear control systems, Kalman state reconstructor, GPS, agriculture

Precision agriculture involves very accurate farm vehicle control along recorded paths, which are not necessarily straight lines. In this paper, we investigate the possibility of achieving this task with a CP-DGPS as the unique sensor. The vehicle heading is derived according to a Kalman state reconstructor, and a nonlinear velocity independent control law is designed, relying on chained systems properties. Field experiments, demonstrating the capabilities of our guidance system, are reported and discussed.

Introduction

The development of guidance systems for agricultural vehicles receives more and more attention from researchers and manufacturers. The objectives and the motivations are numerous, since automatic guidance:

-reduces the work arduousness: for instance, achieving perfectly parallel runs when driving manually, is very tiring over hours. -allows the driver to fully devote his time to the monitoring and the tuning of the tool. This clearly can improve the quality of the agronomic work carried out. -insures an optimal work precision throughout the day and on the whole field, by minimizing double applied and skipped areas between successive passages. This enables the exact placement of field inputs (seeds, fertilizers, pesticides, . . .), and therefore reduces their cost. -allows to operate wider tools at higher speeds. Therefore it can increase productivity.

Many experiments have been conducted and reported in the literature. They can be classified into 2 categories, according to the kind of sensor to be used.

The first category uses relative information. Researchers have for instance investigated the video camera sensor [START_REF] Debain | An help guidance system for agricultural vehicles[END_REF][START_REF] Khadraoui | Vision based control in driving assistance of agricultural vehicles[END_REF][START_REF] Ollis | Vision based perception for an automated harvester[END_REF]. This approach proposes two kinds of difficulties: the first one is the reference extraction. Extreme conditions of dust, for instance, reveal the weakness of the detection side. The other problem arises when the new reference is computed in an iterative way from the previous one. The automatic guidance system can then lead to oscillations.

The second category uses absolute information. A recent technological development allows accurate 3D positioning of the vehicle in a field without the need for buried cables or field-installed beacons: the Global Positioning System (GPS).

DGPS (Differential GPS) were first used in agricultural applications in order to produce field maps. For instance, during the harvest, corn weight measurement devices are coupled with a DGPS in order to produce yield maps. DGPS can also be used to map the amount of seed, of pesticide or of fertilizer displayed on each field location.

State of the art CP-DGPS (Carrier Phase DGPS), also named RTK GPS (Real-Time Kinematic GPS), reach the realtime centimeter accuracy. This clearly allows the design and the implementation of an absolute vehicle guidance system. This technology can be used in special operations, in which the vision system is unable to proceed, for instance, in spraying or fertilizing operations with no visible markers such as boom wheel tracks or foam marks. Promising results have been reported in the literature: a GPS and a fiber optic gyroscope (FOG) have been used in [START_REF] Nagasaka | Automated operation in paddy fields with a fiber optic gyro sensor and GPS[END_REF]), when O'Connor et al. (1996) has described a solution with multiple GPS antennas. Marketing of such devices has then followed almost immediately: the first commercial guidance system, relying on a CP-DGPS, and dedicated to agricultural use, has been introduced in 1997 by the Australian company AgSystems. This device, named BEELINE Navigator, consists in a GPS coupled with an Inertial Navigation System (INS). It has won a number of industry awards, and more than 100 guidance systems have been sold in Australia. AgSystems then entered into the U.S. market (California) in late 1999. This market is currently led by the U.S. company IntegriNautics. Their AutoFarm System makes use of 3 GPS receivers embarked on the tractor. Moreover, GPS systems suppliers as well as agricultural manufacturers are now also investing in this market: Trimble is selling the AgGPS Autopilot, relying mainly on their AgGPS 214 CP-DGPS, when manufacturer John Deere has established a partnership with the University of Illinois to develop a completely automated tractor using several sensors (GPS, vision, near infrared reflectance sensor) [START_REF] Reid | Automated vehicle navigation becomes reality for production agriculture[END_REF]. John Deere is also co-working with Stanford University, [START_REF] Bevly | Carrier phase differential GPS for control of a tractor towed implement[END_REF]. Similar approaches are under current development in Japanese universities, [START_REF] Yukumoto | Robotization of agricultural vehicles[END_REF]. These works and commercial products show clearly the relevancy of GPS guidance systems for agricultural applications.

Currently, these devices are mainly devoted to applications where the vehicles must execute perfectly straight lines (row cropping, harvesting, . . .). Extending guidance systems capabilities in order that vehicles could also follow curved paths would be of practical interest (in order to achieve automatic half-turns, field boundaries following, . . .). In addition, it can be observed that most of the above-mentioned guidance systems make use of several sensors. Such an equipment is efficient since it provides control designers with the whole vehicle attitude, but is quite expensive. This paper addresses these 2 directions: our objective is to investigate the possibility to achieve curved paths following from a unique CP-DGPS sensor. Our experimental vehicle, depicted on Fig. 1, is a farm tractor.

Preliminary results can be found in [START_REF] Cordesses | GPSbased control of a land vehicle[END_REF][START_REF] Cordesses | Curved path following of a farm tractor using a CP-DGPS[END_REF]. This paper proposes a comprehensive report on our work. It is organized as follows: the kinematic model of a farm tractor is first derived. Then, the problem of measuring the whole tractor state vector with a GPS as the unique sensor is addressed. Next, the design of a nonlinear, velocity independent, curved path following control law is detailed. Finally experimental results are displayed and discussed.

Farm Tractor Modeling

Modeling Assumptions and Notations

The aim of this section is to derive a farm tractor model from which a control law could be designed. Therefore, a compromise must be reached between:

-a model which finely describes tractor behavior, but whose complexity forbids control law design, -and a very simple model, easy to manage from a control design point of view, but which imperfectly accounts for tractor behavior.

Hereafter, modeling is derived according to the following assumptions:

A.1. A kinematic model is looked for. Control variables are the tractor velocity and the front wheels steering angle, A.2. The tractor and the tool are a unique rigid body, A.3. The two actual front wheels are equivalent to a unique virtual wheel located at mid-distance between the actual wheels, see Fig. 2. The farm tractor is then simplified into a tricycle model, A.4. The tractor is assumed to move on a flat and horizontal ground, A.5. The tractor moves according to pure rolling and non-slipping assumptions. A dynamic model has not been considered, since describing all tractor features (inertia, slipping, springing, . . .) leads to very large models. In addition, most of the parameters values (masses, wheel-ground contact conditions, springs stiffness, . . .) are badly known, and very difficult to reach through experimental identification. Therefore, we have decided to rely upon a kinematic model (Assumption A.1). Once tractor dynamical features have been neglected, other assumptions appear quite natural, and are common among the mobile robot community, see for instance [START_REF] Zodiac | Theory of Robot Control[END_REF]. These assumptions have been validated a posteriori, since the control law derived from our model has exhibited great capabilities, even in actual agricultural conditions.

Our notations are now detailed, see also Fig. 2:

-C is the path to be followed. It is defined in an absolute frame [A, X A , Y A ), -O is the center of the tractor rear axle, -M is the point on C which is the closest to O. M is assumed to be unique. In pratical situations, this assumption is satisfied since, on one hand the tractor remains always close to C, and on the other hand curvature of path C is small. s is the curvilinear coordinate of point M along C, c(s) denotes the curvature of path C at that point, and θ c (s) stands for the orientation of the tangent to C at that point, with respect to frame [A, X A , Y A ), -θ t is the orientation of tractor centerline with respect to frame [A, X A , Y A ). Therefore, θ = θ t -θ c (s) denotes the angular deviation of the tractor with respect to path C. y is the lateral deviation of the tractor with respect to C, -v is the tractor linear velocity at point O, -δ is the orientation of the front wheel with respect to tractor centerline, l is the tractor wheelbase.

In view of Assumption A.2, the tractor configuration is described without ambiguity, when the coordinates of one of its points, for instance O, and its centerline orientation are both given. Usually, these variables are expressed with respect to the absolute frame [A, X A , Y A ). We propose here to rather express them with respect to path C. More precisely, point O location and centerline orientation are described respectively by the couple (s, y) and the variable θ. Tractor state vector is then written as:

X = (s, y, θ) T (1)
In view of Assumption A.1, tractor control vector is:

U = (v, δ) T (2)

State Space Model Derivation

First, θt expression is established from Assumptions A.2 and A.5, and is illustrated on Fig. 3.

-Assumption A.5 implies that the linear velocity vector at a wheel center belongs to the wheel plane. When applied to the farm tractor, one can obtain that the linear velocity vector at front wheel center presents an angle δ with respect to the tractor centerline, and the linear velocity vectors at rear wheels centers are directed along that centerline. The last result clearly implies that the linear velocity vector at point O, previously denoted v, is also directed along tractor centerline. -Assumption A.2 ensures that, at each instant, the tractor motion is either a pure translation, or a pure rotation around a moving point termed Instantaneous Rotation Center (IRC). Actually, both situations can be gathered into only one, since translations are just special rotations for which the IRC has moved to infinity.

The IRC is clearly defined as the intersection point of the perpendiculars to the linear velocity vectors at any 2 points of the rigid body. This is obvious in the pure rotation case. In the pure translation case, the linear velocity vectors are parallel, the intersection point of their perpendiculars is then consistently rejected to infinity. On Fig. 3, the IRC location is drawn from the perpendiculars to the linear velocity vectors at point O and at the front wheel center. The direction of these vectors is known from Assumption A.5. The distance between the IRC and O is denoted d.

Relying now upon the celebrated relation between angular and linear velocities, it can be obtained that (see Fig. 3):

θt = v d (3)
The value of d can be easily inferred from basic geometrical relations:

tan δ = l d (4)
Therefore, gathering (3) with (4) provides us finally with:

θ t = v l tan δ (5)
Let us now address the derivation of θ c , relying on Fig. 4. Let us denote by R(s) the curvature center of path C at the curvilinear coordinate s. By definition, the distance between R(s) and M is 1 c(s) . Using again the relation between angular and linear velocities, it follows that (see Fig. 4) 1 :

θ c = ṡ 1 c(s) = v cos θ 1 c(s) -y (6)
It can be deduced immediately from this relation that:

ṡ = v cos θ 1 -yc(s) (7) θ c = c(s) v cos θ 1 -yc(s) (8)
It is also immediate from Fig. 4 that 2 :

ẏ = v sin θ (9)
Gathering relations (5), ( 7), ( 8) and ( 9) provides us finally with the farm tractor state space model:

             ṡ = v cos θ 1 -yc(s) ẏ = v sin θ θ = v tan δ l - c(s) cos θ 1 -yc(s) (10)
It can be noticed, that the model (10) becomes singular when y = 1 c(s) , i.e., when points O and R(s) are superposed. This problem is not encountered in practical situations: on one hand, path curvatures are always small, and on the other hand, the farm tractor remains close to C.

State Vector Measurement

Direct Measurement

The only sensor embarked on the tractor is a CP-DGPS. It provides in realtime the position and the velocity of its antenna.

The GPS antenna has been located on the top of the tractor cabin, straight up the point O, see Fig. 2. Therefore, if tractor roll and pitch are zero, the absolute position of point O can be obtained by a direct measurement. Actually, since a tractor moves on an irregular ground, roll and pitch are not zero. Nevertheless, it is assumed hereafter that they are zero, and the robustness of closed-loop control laws is expected to reduce the impact of this approximation. The location of point M can then be inferred from those of point O and from the knowledge of reference path C. This provides us with the current values of the two first coordinates of the tractor state vector, namely s and y.

The proposed antenna location is also consistent with the technological requirements: the top of the tractor cabin is the highest part of the vehicle, and therefore the suitest place to see as many satellites as possible.

Since the GPS antenna is straight up the point O, the coordinates (v x A , v y A ) of the linear velocity vector v in the absolute frame [A, X A , Y A ) are also provided to us by a direct measurement. Therefore, the value of θ t can easily be inferred, see Fig. 2:

θ t =      arctan v y A v x A if v x A = 0, sign(v y A ) π 2 if v x A = 0 (11)
From the current value of s, above obtained, and the knowledge of reference path C, the value of θ c (s) can also be determined. Together with relation ( 11), it provides us with the current value of the latest coordinate of the tractor state vector, namely θ . Therefore, from a theoretical point of view, our unique sensor can actually provide us with the whole tractor state vector X. However, experiments have shown that, in practical situations, the noise level on s and y measurements is acceptable, but, on the contrary, relation (11) returns prohibitive noisy values of θ t . One source of this noise (among others, of course) is that the linear velocity at point O is not actually measured: it is the linear velocity at the GPS antenna that is reported in relation ( 11), and this velocity is sightly different from those at point O due to the tractor cabin roll and pitch. One major difficulty is that the frequencies of the tractor cabin oscillations are quite low, so that we cannot rely on the actuators to filter out the noise in θ t signal (in forthcoming Section 5.1, actuators bandwidth is shown to be 10 Hz, when a frequency analysis of θ t signal displays 1 Hz components). Therefore, the noise level on θ t variable has to be lowered before it could be sent to control algorithm. The performances of digital filters and those of a Kalman state reconstructor have successively been investigated. They are compared here below.

Digital Filtering of the Orientation

Two celebrated digital filters, namely a moving average and a recursive filter, have been successively considered. The sampling frequency was those imposed by the GPS receiver: f s = 10 Hz.

As emphasized by its name, the moving average filter operates by averaging a number of points from the input signal to produce each point in the output signal. Therefore, in our case, its equation is: [k] is the kth sample of the measured signal θ t , derived from relation (11). θt,[k] is the kth sample of the filtered signal, and N is the number of input samples used in the computation of the average. It can be shown that the amount of noise reduction achieved by this filter is equal to √ N when the input is corrupted by a random white noise. In the time domain, it is intuitive that for large values of N , θ t is a very smooth signal, but the relative delay between θ t and θ t may be prohibitive. Therefore, the choice of N must reach a compromise. In the forthcoming experimentations, N = 7 has been chosen.

θt,[k] = 1 N N -1 j=0 θ t,[k-j] (12) θ t,
The other smoothing method that has been implemented is recursive filtering. It is also quite efficient since again no long convolution is required. It consists in processing the input signal through a discrete transfert function. A first order filter has been tested, in order to reduce to the minimum the relative delay between θ t and θt . This filter is the digital analog of the electronic low-pass filter made up with a resistor and a capacitor. Its discrete transfert function, and its associated recursive equation are:

θt (z -1 ) θ t (z -1 ) = b 0 1 -a 0 z -1 ⇐⇒ θ t,[k] = b 0 θ t,[k] + a 0 θt,[k-1] ( 13
)
Parameters a 0 and b 0 have been tuned in order to impose a unitary gain and a 0.25 Hz cutoff frequency (in view of the above-mentioned frequency analysis of θ t signal). These specifications, together with a 10 Hz sampling frequency, lead to: a 0 = 0.15 and b 0 = 0.85.

Kalman State Reconstructor

Since the tractor model is available, a suitable alternative to digital filtering consists in using this model through a Kalman state reconstructor.

Since the two actual control variables are v and δ, Eq. ( 5), which describes the evolution of θ t , is a priori a nonlinear one. However:

-on one hand, for obvious practical reasons, δ is bounded:

|δ| < δ max < π 2
Therefore, tan δ can be regarded as a control variable as well as δ. -on the other hand, the aim of the control law to be designed in this paper, is to ensure the convergence of the tractor to the reference path C, independently from the tractor velocity. Therefore, in the next section, v is not regarded as a control variable, but as a parameter, whose value may possibly be slowly varying.

In view of these two remarks, Eq. ( 5) is actually a linear equation, and celebrated Kalman linear state reconstructor can be used. Discrete analog of Eq. ( 5) is:

θ t,[k] = θ t,[k-1] + v T e l tan δ [k-1] ( 14
)
where T e = 1 f s is the sampling period. The model and innovation equations of the Kalman state reconstructor associated with this model are then, see for instance [START_REF] Gelb | Applied Optimal Estimation[END_REF]: [k] is still the kth sample of the measured signal θ t , derived from relation (11). θ t, [k] is the kth prediction of signal θ t , and θt,[k] is the kth sample of the filtered signal, that will be used in the forthcoming control law. Finally, L is the scalar Kalman gain, to be chosen with respect to the sensor noise features. In our experiments, L has been tuned on the value 0.08.

   θt,[k] = θ t,[k-1] + v T e l tan δ [k-1] θt,[k] = θ t,[k] + L θ t,[k] -θ t,[k] (15) θ t,

Experimental Comparisons Between the Above Approaches

In order to evaluate the respective performances of the above-described θ t smoothing methods, the following experiment has been performed. First, a second GPS antenna has been placed on the tractor cabin, 1.21 meters far from the main GPS antenna (which is always straight up the point O). The aim of this second antenna is to provide us with the actual value of θ t , since it can easily be inferred from the position information supplied by the two GPS antennas. Then, the farm tractor has been manually driven, with a constant velocity v = 8 km•h -1 , along a path constituted roughly of two straight lines connected by a quarter of circle. Finally, the maximum deviation (MxD) and the standard deviation (StdD) between the actual θ t values (as recorded from the position information provided by the two GPS antennas) and the θ t values estimated from the velocity information provided by the only main GPS antenna (relation (11)), possibly smoothed according to relations (12), ( 13) or ( 15 As expected, for any of the smoothing methods, one can observe a clear improvement with respect to θ t evolution provided by a direct measurement. Nevertheless, results presented by the Kalman state reconstructor appear superior to those proposed by any of the two digital filters. It shows, if needed, that when the evolution model of the variable to be smoothed is known, as it is the case here, it is advantageous to rely on it. In the forthcoming closed-loop experiments, the values of θ t used in the control law will be processed through Kalman state reconstructor (15).

The second GPS antenna will of course be removed in all subsequent experiments, since this paper main objective is to demonstrate that tractor control can be achieved when relying upon the only information provided by a unique CP-DGPS.

Control Law Design

The control objective is to ensure the convergence of the tractor to the reference path C. Therefore, in view of Section 2, state variables y and θ are expected to be brought and kept equal to 0 : y = 0 means that tractor control point O belongs to path C, and θ expresses that its linear velocity v, superposed with tractor centerline in view of Assumption A.5, points in the same direction as path C tangent. Moreover, control law performances are expected to be independent from tractor velocity v. This control variable is here considered as a parameter whose value will be managed according to the application. v may be constant or time-varying.

Design Methodology

The tractor model ( 10) is clearly nonlinear. In [START_REF] Bell | Realistic autofarming closed-loop tractor control over irregular paths using kinematic GPS[END_REF], the authors propose to linearize it around the equilibrium y = θ = 0, in order that celebrated linear systems theory could be used. In that case, control design does not rely on the actual tractor model, but on an approximated one. Recent advances in Control theory have established that mobile robots models can be converted into almost linear models, namely chained forms, in an exact way, see [START_REF] Samson | Control of chained systems. Application to path following and time-varying point stabilization of mobile robots[END_REF] for instance. Such an approach is attracting since it allows us to use, for a large part, linear systems theory, while still relying upon the actual nonlinear tractor model. This approach is followed hereafter.

Tractor Model Conversion into Chained Form

The general chained form dedicated to systems with two inputs is written as (see [START_REF] Samson | Control of chained systems. Application to path following and time-varying point stabilization of mobile robots[END_REF]):

                   ȧ1 = m 1 ȧ2 = a 3 m 1 ȧ3 = a 4 m 1 . . . . . . ȧn-1 = a n m 1 ȧn = m 2 (16)
with A = (a 1 , a 2 , . . . , a n ) T and M = (m 1 , m 2 ) T respectively the state and control vectors. In order to point out that a chained system is almost linear, just replace the time derivative by a derivation with respect to the state variable a 1 . Using the notations:

d d a 1 a i = a i and m 3 = m 2 m 1 ( 17
)
the chained form ( 16) can be rewritten:

                   a 1 = 1 a 2 = a 3 a 3 = a 4 . . . . . . a n-1 = a n a n = m 3 (18)
The last n -1 equations of system (18) constitute clearly a linear system.

Let us now convert tractor model ( 10) into chained form. When limited to dimension 3, the general chain systems ( 16) and ( 18) are written respectively as: derivation w.r. to time :

     ȧ1 = m 1 ȧ2 = a 3 m 1 ȧ3 = m 2 (19) derivation w.r. to a 1 :      a 1 = 1 a 2 = a 3 a 3 = m 3 (20)
Since control law performances are expected to be independent from the tractor velocity, the variable a 1 , which drives the evolution of the linear system (20), should be homogeneous at the distance covered by the tractor. A natural choice is then:

a 1 = s (21)
Straightforward computations show now that the nonlinear tractor model (10) can actually be converted into chained forms ( 19) or (20) from the starting choice (21).

In order to match (19), the new control m 1 is necessarily defined as:

m 1 = ȧ1 = v cos θ 1 -yc(s) (22)
Moreover, for the sake of simplicity, let us try:

a 2 = y It follows: ȧ2 = v sin θ = a 3 m 1
Therefore the last state variable a 3 must be chosen as:

a 3 = (1 -yc(s)) tan θ
Finally, the last control variable m 2 is given by:

m 2 = ȧ3 = d dt ((1 -yc(s)) tan θ ) = -c(s)v sin θ tan θ - d c(s) d s v cos θ 1 -yc(s) tan θ y + v (1 -yc(s)) cos 2 θ tan δ l -c(s) cos θ 1 -yc(s) (23)
As a conclusion, the non linear tractor model ( 10) can be converted into chained forms ( 19) or ( 20) in an exact way according to the state transformations:

A = (X) with (X) = (s, y, (1yc(s)) tan θ) T (24) and the control transformations: M = ϒ(U, X) defined by ( 22) and ( 23) (25)

These transformations are invertible as long as y = 1 c(s) (model singularity), v = 0, and θ = π 2 [π ]. From a practical point of view, once properly initialized, the guided tractor respects these conditions.

Control Law Design

Control design can now be completed in a very simple way: since chained form (20) is linear, a natural expression for the virtual control law is:

m 3 = -K d a 3 -K p a 2 (K p , K d ) ∈ R +2 (26)
As a matter of fact, reporting (26) in (20) leads to:

a 2 + K d a 2 + K p a 2 = 0 (27)
which implies that both a 2 and a 3 converge to zero. The same conclusion holds for y and θ in view of (24). Reference path following is therefore achieved. Moreover, since the evolution of the error dynamics ( 27) is driven by a 1 = s, the gains (K d , K p ) impose a settling distance instead of a settling time. Consequently, for a given initial error, the tractor trajectory will be identical, whatever the value of v is, and even if v is time-varying. From a control design point of view, guidance performances have been made velocity independent: control law gains have not to be adjusted with respect to tractor velocity v. In practical situations, this theoretical result might be slightly altered: the quality of θ t (and therefore of θ) measurement clearly depends on v (relations ( 11) and ( 15)), tractor actuators are not perfectly linear, . . . Nevertheless, as long as standard agricultural velocities (from 4 to 14 km•h -1 ) are concerned, and provided that control gains (K d , K p ) are not so high that actuators are saturating, experimental results demonstrate that guidance performances are actually velocity independent, see forthcoming Section 5.2.1.

Ultimately, the inversion of control transformations (25) provides us with the actual control law expression ( just report ( 26) in ( 17), ( 22) and ( 23)):

δ(y, θ) = arctan l cos 3 θ (1 -yc(s)) 2 dc(s) ds y tan θ -K d (1 -yc(s)) tan θ -K p y + c(s)(1 -yc(s)) tan 2 θ + c(s) cos θ 1 -yc(s) (28)
In many applications, the reference path C is a straight line, i.e., c(s) = 0. The expression of the control law (28) turns then simpler:

δ(y, θ ) = arctan(l cos 3 θ(-K d tan θ -K p y)) (29)
Finally, let us go back to the discussion on actuators saturation. In control laws (28) or ( 29), the argument of the arctan function is not bounded. Therefore, actuators saturation can a priori occur. The natural way to deal with it, is to adjust control performances (i.e., to tune gains (K d , K p )) in order that saturations are never met during prespecified operations. However, it can be pointed out that actuators saturation does not prevent from tractor convergence to the reference path C, even from a theoretical point of view: since chained form (20) consists in a double integrator, its asymptotic stability is still insured, even if the virtual control law ( 26) is bounded to any arbitrary value, see [START_REF] Sussmann | A general result on the stabilization of linear systems using bounded controls[END_REF]. Unfortunately, in view of ( 28), the boundedness of m 3 leads to those of δ only if the reference path curvature c(s) exhibits some good properties. However, in most practical situations, these properties are satisfied, so that the theoretical stability is actually preserved. For instance, it is obviously checked when C is a straight line, since c(s) = 0. The only drawback is that control performances are, of course, no longer velocity independent as soon as the actuators are saturating.

Experimental Results

Description of the Hardware Setup

Experiments have been carried out in our laboratory farm in Montoldre, France. The farm tractor and its tool are depicted on Fig. 1. The CP-DGPS receiver is a Dassault-Sercel dual frequency "Aquarius 5002" unit. When position measurements are delivered with the upper sampling frequency f s = 10 Hz, as it will be in all forthcoming experiments, the claimed accuracy is 2 centimeters. A 1 centimeter accuracy could even be obtained with this unit, but only with a 1 Hz sampling frequency, which is inconsistent with our experiments.

The control law (28) has been implemented in high level language (C++) on a Pentium based computer. This algorithm returns the desired value for the front wheels angle, denoted in the sequel δ d . This value is sent towards a inner closed-loop via a RS232 serial communication. This inner closed-loop, which actually control tractor front wheels, is depicted on Fig. 5.

The actual front wheel angle δ a is measured by means of an absolute encoder (4096 steps per revolution) and compared with δ d . A Proportional-Derivative algorithm, implemented on a PCB80C552 microprocessor, controls then a Danfoss electro-hydraulic valve: by varying the voltage u applied between its two electrical wires, the valve changes oil flow p and therefore the front wheels angle δ a . More precisely, the control algorithm is:

u = P (δ d -δ a ) + D dδ d dt (P, D) ∈ R +2 (30)
The anticipation term, i.e., D dδ d dt , has been introduced in (30) in order to reduce velocity error. Nevertheless, this inner closed-loop is still the major weakness of our overall hardware setup. The experiment described below investigates the inner closedloop performances, and will provide us with some hints when analysing the performances of the overall control scheme in subsequent sections.

Figure 6 depicts the inner closed-loop step response: δ d is changed instantaneously from 0 • to 10 • . The sampling frequency is 10 Hz as usual.

One can check that steady state capabilities of the inner closed-loop are very satisfactory: the steady state error between δ d and δ a is less than 0.1 • . On the contrary, the transient performances are poor: the initial delay and the settling time can be measured to be respectively equal to 0.2 second and 0.4 second. In other words, it takes 6 sampling periods before the desired This delay cannot be reduced since it is related to the hydraulic pump capabilities: at tractor nominal engine speed, i.e., 2000 tr•mn -1 , the maximum oil flow p delivered by the hydraulic pump is 25 l•mn -1 . At low engine speed, the maximum value of p falls to 12 l•mn -1 , which increases inner closed-loop delays. All subsequent experiments have been carried out at tractor nominal engine speed.

Finally, since the inner closed-loop settling time is 0.4 second, it can be deduced that its bandwidth is around 10 Hz, as previously mentioned in Section 3.1. Therefore, this actuator cannot filter out the very low frequencies of the noise (components inferior to 1 Hz) superposed with θ t measurements. In all forthcoming experiments, they are smoothed by the use of Kalman state reconstructor (15).

Step Responses

Although a step path is not common in agriculture, step responses have been used to check the behavior of the overall closed-loop system.

Step Responses at Related Velocities.

The reference path consists in a 2 meters step. Several experiments have been carried out, at related tractor velocities: from v = 2 km•h -1 to v = 14 km•h -1 with 2 km•h -1 increments. Control law parameters (K d , K p ) have been tuned in order to impose that the error dynamics ( 27) present a 15 meters settling distance. 3 Such dynamics have been chosen in order that the tractor evolution, especially when its velocity is high, is not so steep that it would be uncomfortable to a person in the tractor cabin. Moreover, it guarantees that actuators saturation is not met. The tractor trajectories are depicted on Fig. 7.

One can check on Fig. 7 that all step responses almost perfectly overlap: as expected, the trajectory is independent from tractor velocity. Moreover, the 15 meters settling distance, specified when tuning the control parameters, is actually achieved.

A thorough analysis establishes that, except for extreme velocities (i.e., v = 2 km•h -1 and v = 14 km•h -1 ), path following accuracy is quite satisfactory: once the tractor is following a straight line (i.e., when x A > 70 meters), the bias µ y between the tractor trajectory and the reference path, as well as the tractor standard deviation from the mean trajectory σ y , are both very small: in the worst case: µ y < 2.7 cm σ y < 3.1 cm Finally, one can note that, when the step occurs, the tractor trajectories are more and more shifted when the speed is increased. Obviously, it is a consequence of the initial delay of the inner closed-loop: the higher tractor velocity is, the more the distance covered by the tractor during inner closed-loop delay is long.

When tractor velocity reaches v = 14 km•h -1 , the inner closed-loop initial delay begins to damage path following performances. It is pointed out on Fig. 7: on one hand, tractor starts to react few meters beyond step location, and on the other hand, tractor trajectory proposes a 10 centimeters overshoot when rejoining the new reference. v = 14 km•h -1 is therefore the maximum tractor velocity compatible with our inner closedloop capabilities.

When tractor velocity decreases to v = 2 km•h -1 , the overall tractor trajectory is not satisfactory: as pointed out on Fig. 7, it can be noticed that the maximum deviation from the reference path, before or after step location, is beyond 10 centimeters. These very bad performances originate from θ t measurement, as shown on Fig. 8.

On Fig. 8, the tractor is moving along a perfect straight line. Its position at the kth time sample (denoted kT e ) is shown on the left. In view of the accuracy of our CP-DGPS receiver, the position measurement that is supplied at time kT e is inside the 2 cm radius circle shown on the left part of Fig. 8. Since T e = 0.1 s, the tractor covers respectively 5.6 cm or 38.9 cm when its velocity is 2 km•h -1 or 14 km•h -1 . The two other circles on Fig. 8 display the position measurements that are supplied at time (k+1)T e depending on tractor velocity. θ t measurement is derived from tractor velocity vector (relation ( 11)), which is estimated from two consecutive position measurements. Due to GPS accuracy, the measured velocity vector is not directed along tractor evolution line. The worst cases when v = 2 km•h -1 and v = 14 km•h -1 are displayed on Fig. 8. They lead respectively 4 to θ t = 35.8 • and θ t = 5.9 • instead of the actual value θ t = 0 • . This establishes clearly that the lower the tractor velocity is, the worse θ t measurement is. At very low velocities, even after being processed through Kalman state reconstructor (15), θ t measurement is still very oscillatory, and disturbs closed-loop tractor trajectory, as observed on Fig. 7. This is one of the major difficulties that proceed from our initial choice to rely upon a unique GPS receiver. However, it should be emphasized that v = 2 km•h -1 is a very low velocity, which is not typical in agricultural applications.

Experiments with a varying tractor velocity have also be carried out: tractor velocity has been increased from v = 4 km•h -1 to v = 8 km•h -1 when the tractor was performing the step response. These results, reported in [START_REF] Cordesses | Curved path following of a farm tractor using a CP-DGPS[END_REF], are again fully satisfactory: tractor trajectory is superposed with those presented on Fig. 7, the settling distance is 15 meters as desired. This establishes that, as expected from the theoretical study presented in Section 4, control law (28) is actually velocity independent.

Step Responses with Large Initial Conditions.

The last step response carried out is reported on Fig. 9. It differs from the previous ones, since the initial conditions are very large: initially, the tractor is 10 meters far from the reference trajectory C, and presents a very large heading error θ = 65 • . Tractor velocity is v = 6 km•h -1 .

Since control law (28) has been designed from the exact nonlinear model of the tractor (no approximation, as for instance sin θ ≈ θ, has been performed), the error dynamics are described in an exact way by the linear ODE ( 27), even if y and θ are very large. Therefore, it is expected that control law features should remain identical to those reported previously.

This theoretical result is actually achieved, as it can be noticed from Fig. 9: the general appearance of tractor trajectory is identical to those observed on Fig. 7, and θ evolution is exponentially decreasing within a settling distance equal to 15 meters.

Curved Path Following

The first experiments reported below consist in a sinusoidal path following. Sine curves are definitely not common trajectories in agricultural tasks. Nevertheless, they are significantly different from straight lines, and therefore can be seen as a convincing test when investigating the performances of curved path following control law (28).

Path Following when the Reference Sine Curve

Has Small Amplitude. In the first experiment, period and peak to peak amplitude of the sinusoidal reference path are respectively 20 meters and 60 centimeters. The values of the control and Kalman parameters K d , K p and L are identical to those used in step responses experiments. At initial time, the tractor is 60 centimeters far from the reference path. Its velocity is

v = 6 km•h -1 .
The tractor lateral deviation with respect to the sinusoidal reference path is depicted on Fig. 10.

One can check that control law (28) leads to the same performances, irrespectively of the reference path features: the settling distance and the statistical variables µ y and σ y recorded during this curved path following experiment are of the same order of magnitude than those previously recorded during step responses experiments.

Curved path control law (28) can be gracefully degraded to the case of straight lines following by 29) is then obtained. In order to investigate the actual contribution of the reference path curvature c(s) in control law (28), sine curve following has been experimented with the simplified control law (29). Reference path, tractor trajectory obtained with that law, and those obtained with the entire control law (28), are displayed on Fig. 11.

It can be observed that, without the reference path curvature information, the tractor follows the reference path with an 1.5 meters offset, and moreover presents large excursions when the values of c(s) are the highest. This clearly establishes the imperative need to take into account for the curvature of the reference path when designing the control law.

Path Following when the Reference Sine Curve

Has Large Amplitude. In the last sine curve experiment, the case of a sinusoidal reference path with a large amplitude has been addressed: the peak to peak amplitude is now 3 meters, when the sine curve period is 30 meters. At initial time, the tractor is 50 centimeters far from the reference path. Its velocity is still constant: v = 6 km•h -1 . The experimental results are depicted on Fig. 12. Bottom Fig. 12 displays the evolution of the lateral deviation y: one can observe that y periodically experiences large values (up to 20 centimeters). Top Fig. 12 points out that these large deviations occur at any extremum of the sine curve. Two main reasons may be produced to explain this negative result.

The first one is related to our inner closed-loop bad performances. Sine curve extrema are parts of the trajectory where the front wheel angle δ is expected to change very quickly: within roughly 4 seconds in view of Fig. 12. However, it has been pointed out in Section 5.1 that, due to the inner closed-loop delay and transient time, it takes 0.6 second before the desired front wheel angle becomes the actual one. Therefore, each time the desired front wheel angle is quickly varying, significant velocity errors are undergone. Consequently, the overall control scheme performances are necessarily altered, as noticed on Fig. 12.

Secondly, sine curve extrema are parts of the reference trajectory where the curvature presents its highest values. Therefore, they are regions where the tractor model ( 10) is more nonlinear than, for instance, when path C is a straight line. Since control law (28) relies on the inversion of this model, slight modeling or calibration errors, which always exist to some extent, result necessarily to degraded control performances. Consequently, a faster inner closed-loop should undoubtedly improve our overall control scheme performances, nevertheless, slight tracking errors would persist for such steep reference paths.

Path Following with Respect to a Typical Agricultural Reference Trajectory.

A reference path, roughly made of straight lines and half-turns, has also been considered. From a technical point of view, the tractor is first manually driven along the reference path, and the successive position measurements provided by the CP-DGPS receiver are gathered into a set, hereafter denoted reference set. When control law ( 28) is used to "replay" this reference path C, the point M on C which is the closest to the control point O at each time sample, is determined within 2 steps: first, the distances between O and 50 points of the reference set, distributed around the point M obtained at previous time sample, are computed. The point that is the closest to O is denoted M. Secondly, the points of the reference set belonging to an 8-meters large window centered on M are interpolated with a 2-order polynomial curve. The point of that curve which is the closest to O is determined. It is termed point M at current time sample, and the current values of s and c(s) can be inferred from the interpolated curve. This algorithm, once properly initialized, is fast enough to be performed in realtime.

In the first experiment, reference straight lines are spaced by 15 meters, and the tractor velocity is v = 6 km•h -1 . The reference and tractor trajectories are displayed on top Fig. 13.

During straight lines parts of the trajectory, path following accuracy is identical to those observed in step responses experiments reported above, and is suitable to most of agricultural applications.

The only critical parts are half-turns, since these curves intrinsically present a very high curvature, superior to the curvature of the sine curve reference path that was experimented in Section 5.3.2. In view of the results thus obtained, large tracking errors are expected during half-turns. A zoom, see bottom Fig. 13, reveals that lateral error y climbs up to 50 centimeters. Nevertheless, accuracy requirements during half-turns are weaker than along straight lines: the important points are that half-turns can be performed in an automatic way, and that the tractor starts straight lines without any deviation with respect to the reference path. Bottom Fig. 13 establishes clearly that these requirements are here satisfied. Now, if a special application requires positioning accuracy even during half-turns, the inner closed-loop should be modified, or the half-turn trajectory should be altered in order to decrease its curvature.

In the last experiment, the reference trajectory is identical to the previous one, except that straight lines are now spaced by only 5 meters.

The half-turns curvature is now so large, that front wheel angle δ climbs up to its saturation value δ max = 40 • . A zoom, see Fig. 14, reveals that the lateral deviation y climbs up to 2 meters. Nevertheless, despite the actuators saturation, one can observe that the tractor still starts straight lines without any deviation with respect to the reference path. This highlights control law robustness.

Repeatabilities Issues.

Our last result deals with repeatability: during Innov'Agri 2000 demonstrations (a French Show where new agricultural systems are presented), the tractor has "replayed" a complex curved path more than a hundred times without any driver aboard, establishing the system reliability. The tractor trajectories, as recorded from the CP-DGPS receiver, were superposed, and, on the field, one could check that tractor wheels were following exactly the same tracks at each replay.

Conclusion

The purpose of this work was to achieve curved path following from a unique CP-DGPS sensor, within the framework of agricultural applications. A Kalman state reconstructor has been derived in order to estimate the tractor heading, and a nonlinear velocity independent control law has been designed, relying upon recent developments in Control theory, precisely "chained systems" properties. Several experiments, conducted with a full-sized farm tractor, are reported and validate theoretical control law features. The current limitations of our hardware, especially the inner closed-loop, are also displayed.

Clearly, the inner closed-loop capabilities have to be improved. Neither the hydraulic components nor its controller-off the shelves devices-can achieve very high performances. The whole low-level system must be re-examined. Our other current researches deal with the high level control law. It has provided very satisfactory results on almost flat fields. We are currently working to generalize it in order that the tractor could also move on fields including variations in level. Another research direction deals with modifying the high level control law, in order to control the tool position instead of those of the point O (i.e., the center of the tractor rear axle). It would be more satisfactory from an agricultural point of view.

Notes

1. Note that y is negative on Fig. 4. This explains the minus sign in Eq. ( 6). 2. Note that θ is negative on Fig. 4. Signs are then consistent in Eq. ( 9). 3. (K d , K p ) = (0.6, 0.09) ensures that the error dynamics (27).

present a double pole located at the value 0.3. Linear control tools ensure then that the settling distance is 15 meters, as it was specified. 4. θ t = arctan 2×0.02 0.056 or θ t = arctan 2×0.02 0.389 .

Figure 1 .

 1 Figure 1. Experimental platform.

Figure 2 .

 2 Figure 2. Farm tractor description.

Figure 3 .

 3 Figure 3. Derivation of the θt angular velocity equation.

Figure 4 .

 4 Figure 4. Derivation of the θc angular velocity equation.

Figure 5 .

 5 Figure 5. Block diagram of the inner closed-loop.

Figure 6 .

 6 Figure 6. Step response of the inner closed-loop.

Figure 7 .

 7 Figure 7. Tractor step responses at related velocities.

Figure 8 .

 8 Figure 8. Incidence of tractor velocity on θ t measurement.

Figure 9 .

 9 Figure 9. Convergence to a straight line from large initial conditions. Top figure: Tractor trajectory. Bottom figure: θ evolution.

Figure 10 .

 10 Figure 10. Lateral deviation with respect to a sinusoidal reference path.

Figure 11 .

 11 Figure 11. Tractor trajectories during a sine curve following: capabilities of control laws (28) and (29).

Figure 12 .

 12 Figure 12. Sine curve reference trajectory with large amplitude. Top figure: Reference and tractor trajectory. Bottom figure: y evolution.

Figure 13 .

 13 Figure 13. Reference path: 15 m spaced straight lines. Top figure: Trajectories. Bottom figure: Zoom on the half-turn.

Figure 14 .

 14 Figure 14. Reference path: 5 meters spaced straight lines. Zoom on the half-turn.

  ), have been computed. The results are displayed on the table below:

		Direct	Moving	Recurs.	Kalman
		measur.	average	filter	reconst.
	MxD	11.81 •	6.28 •	4.74 •	3.61 •
	StdD	2.4 •	1.53 •	1.43 •	0.86 •