Philippe Martinet
email: philippe.martinet@lasmea.univ-bpclermont.fr

Christian Thibaud
email: christian.thibaud@lasmea.univ-bpclermont.fr

Djamel Khadraoui
email: djamel.khadraoui@lasmea.univ-bpclermont.fr

Jean Gallice
email: jean.gallice@lasmea.univ-bpclermont.fr

FIRST RESULTS USING ROBUST CONTROLLER SYNTHESIS IN AUTOMATIC GUIDED VEHICLES APPLICATIONS

Keywords: Visual servoing, robust control, mobile robot, vehicles, modelling, vision

We h a ve b e e n i n terested in Automatic Guided Vehicles (AGV) for several years. In this paper, we synthesize controllers for AGV applications. Particularly, we are interested in road following and direction change tasks, and in analyzing the in uence of roll and pitch perturbations on vehicle behaviour. We use the bicycle as the kinematic vehicle model, and we c hoose the white band position of the road as the sensor signal. We de ne an interaction between the camera, which i s m o u n ted inside the vehicle, and the white band detected in the image space. Using this kind of interaction, we present h o w to use a pole assignment t e c hnique to solve the servoing task. We s h o w the simulation and experimental results (1/10 scale demonstrator) with and without perturbations. Then, we i n vestigate in robust controller to slow d o wn the e ect of perturbations on the vehicle behaviour.

INTRODUCTION

In the realm of intelligent systems for highways, development o f A GV is necessary to enable vehicles to drive automatically along the road. In fact, the requirement is for a controller that can maintain the position and the orientation of the vehicle with respect to the centre of the road and/or apply changes of direction. The problem of vehicle control using a camera has been given considerable attention by m a n y authors (Dickmanns and Zapp, 1987 Kehtarnavaz et al., 1991 Raymond andChaouchi, 1994 Wallace et al., 1986[START_REF] Waxman | A visual navigation system for autonomous land vehicles[END_REF]. The work described in (Jurie et al., [START_REF] Jurie | A vision based control approach t o high speed automatic vehicle guidance[END_REF] 1993[START_REF] Jurie | High-speed vehicle guidance based on vision[END_REF] is among the most notable in lateral control using monocular vision. It consists of the reconstruction of the road using the 2D visual information extracted from the image processing system [START_REF] Chapuis | Real-time vehicle trajectory supervision on the highway[END_REF]. In recent y ears, the integration of computer vision in robotics has steadily progressed, from the early \look and move" systems, to current systems in which visual feedback is incorporated directly into the control loop. These techniques of vision based control are used to control holonomic robots in di erent domains [START_REF] Feddema | Visionguided servoing with feature-based trajectory generation[END_REF]Mitchell, 1989 Khadraoui et al., 1996 Papanikolopoulos et al., 1 9 9 1 P apanikolopoulos et al., 1993).

The principle of this approach is based on the task function approach [START_REF] Samson | Robot Control: The task function approach[END_REF], and many people have d e v eloped this concept applied to visual sensors [START_REF] Chaumette | La relation vision commande: th eorie et application a des tâches robotiques[END_REF][START_REF] Espiau | A new approach t o v i s u a l s e r v oing in robotics[END_REF][START_REF] Hutchinson | A tutorial on visual servo[END_REF]. There are still few applications in mobile robots using this kind of approach. The main di culty is due to the presence of nonholonomic m e c hanical connections which limit robot movements [START_REF] Pissard-Gibollet | Asservissement visuel appliqu e a u n r o b o t m obile: etat de l'art et mod elisation cin ematique[END_REF]. We h a ve proposed a new technique with a visual servoing approach, in which control incorporates the visual feedback directly [START_REF] Khadraoui | Linear control of high speed vehicle in image space[END_REF][START_REF] Martinet | Controller synthesis applied to automatic guided vehicle[END_REF]. In other words, this is speci ed in terms of regulation in the image frame of the camera. Our application involves controlling the lateral road position of a vehicle following the motorway white line. A complete 2D model of both the vehicle and the scene is then essential. It takes into account the visual features of the scene and the modelling of the vehicle. The main purpose of this study is the development of a new lateral control algorithm. We propose a new control model, based on state space representation, where the elements of the state vector are represented by the parameters of the scene, extracted by vision. Then, we use robust control approach to improve the vehicule behaviour when we i n troduce perturbations in the closed loop. These approaches were experimented with a 1/10 scale demonstator. It is composed of a cartesian robot with 6 degrees of freedom (built by the rm AFMA Robot) and the parallel vision system WINDIS [START_REF] Martinet | Controller synthesis applied to automatic guided vehicle[END_REF][START_REF] Rives | A versatile parallel architecture for visual servoing applications[END_REF]. This whole platform is controlled by a VME system, and can be programmed in C language under the VxWorks real time operating system. The CCD camera is embedded on the end e ector of the cartesian robot and is connected to the vision system WINDIS. The road, built to a 1/10 scale, comprises three white lines. For each level of this vision system, we i n troduced parallelism allowing us to reach video rate for most of the application tasks. The vision system computes the (a b) parameters of the projected line in image plane at video rate. In this implementation, we have identi ed a data ow latency of three sample periods.

MODELLING ASPECT

Before synthesizing the control laws, it is necessary to obtain the model of the vehicle and the one which expresses the interaction between the sensor and the environment. We just indicates the main results of modelling aspect presented in [START_REF] Martinet | Controller synthesis applied to automatic guided vehicle[END_REF] It is useful to approximate the kinematic of the steering mechanism by assuming that the two front wheels turn slightly di erentially. Then, the instantaneous center of rotation can be determined purely by kinematic means. This amounts to assuming that the steering mechanism is the same as that of a bicycle. Let the angular velocity vector directed along z axis be called _ and the linear one directed along x axis called _

x. The approximation to small angles gives us the relation between the di erential of the lateral coordinate x and the lateral deviation with regard to , expressed as follows:

( _ x = ;V _ = V L (1)
The scene consists of a 3D line and its projected image is represented by a 2 D line [START_REF] Chapuis | Real-time vehicle trajectory supervision on the highway[END_REF].

The equation of the line expressed in the image frame is given by the following relation:

X = aY + b (2)
where (a b) are the line parameters expressed by: 8 > < > :

a = f x x f y h b = f x x h + (3)
and: h is the camera height is the inclination angle of the camera is the orientation of the vehicle f x and f y are the intrinsic parameters of the camera

CONTROL ASPECT

In this section, we show h o w to synthesize controllers. First, we establish the state equation of the system, and we de ne a controller with a pole assignment technique and di erent c haracteristics. We v erify by simulation the system behaviour without perturbations. We t h e n i n troduce some perturbations, and analyse the simulation and experimental results. Secondly, w e use robust controller synthesis to improve the ouput behaviour and the vehicle behaviour. Many authors, like (Banyaz and Keviczky, 1996 Carabelli andMalan, 1996 Doyle et al., 1989 Dorato and[START_REF] Dorato | A modi cation of the classical nevanlinna-pick i n terpolation algorithm with applications to robust stabilization[END_REF], have contributed to developp this approach. [START_REF] Byrne | Robust lateral control of highway v ehicles[END_REF] has applied this technique to the Lateral Control of Vehicles.

3.1 Pole assignment approach 3.1.1. Controller design Here, we present the application of the pole assignment t e c hnique when the state model is expressed directly in the sensor space. In our case, the sensor space is the image plane. The controller design is based on the kinematic model of the vehicle. We use the (a b) parameters of the 2D line in the image plane as the state vector. We drive the vehicle with the action on the wheel angle . W e c hoose b as the ouput parameter of the system and use the results of the vehicle and scene modellings to obtain the following equation:

;V = 1 _ a (V= L ) = 2 _ a + 3 _ b (4)
The state vector, denoted by s = ( a b) T , is equal to the sensor signal vector in the state space representation. Developing, we h a ve the following state model of the system:

_ s = As + B b = Cs ( 5
)
We i n troduce an integrator into the control law in order to eliminate the static error in case of perturbations. The visual servoing scheme is presented by the gure 1 . In this case, we can express the control law b y the relation:

= ;k 1 a ; k 2 b ; K i Z (b ; b)dt (6)
where k 1 , k 2 and K i are the gains of the control law obtained by identifying the system to a third order system characterized by the following characteristic equation: (p 2 + 2 ! 0 p + ! 2 0 )(p + ! 0 ).

Simulation and Experimental results

To v alidate this control law, we use a simulator developed with Matlab. We use the kinematic model of the vehicle to simulate the behaviour of the vehicle, and the perspective projection relation to obtain the sensor signal s = ( a b) T . The rst results (see gure 3) illustrate the output behaviour of the system corresponding to an input value b = 100 pixels. We take i n to account a data ow latency (three sample periods) in all simulation tests. This was identi ed on our experimental site. We c hose ! 0 = 2 rd=s and = 0 :9 in order to x the behaviour of the system. We i n troduce some perturbations in the angle (from = ;5 t o = ;10 ). In fact, no static error persists during servoing, but some oscillations and problems of stability appear when is far from the reference value of (;7degrees) . The corresponding experimental results take place in right of the gure 3 and con rm the simulation trends. We consider an additive perturbations in frequency domain :

Robust

F(p) = F 0 (p) + F(p) (7)
The aim is to determine a single robust controller c(p) w h i c h insures the stability of the closed loop system. c(p) insures the stability o f F 0 (p). If the following condition is veri ed : j F(j!)j j r(j!)j 8! (8)

then we can can express the robust stability condition as [START_REF] Kimura | Robust stabilization for a class of transfer fonction[END_REF] :

ku(p)k 1 = kq(p)r(p)k 1 < 1 (9)
In theses conditions, the robust controller can be expresses by : 8 > > < > > :

q(p) = u(p) r(p) c(p) = q(p) 1 ; F 0 (p)q(p) (10)
Considering b parameter as the oupput of the system, we de ne : 8 < :

F 0 (p) = b= = ( V 2 2 + p 1 V )=( 1 p 2 L 3 ) F(p) F 0 (p) = V 2 + p 1 V 2 + p 1 + 1 1 ( 11
)
with : 2 = ; f y =f x and 1 = hf y =f x Using the following expression of r(p) :

r(p) = s u p ! j F(j!) F 0 (j!) j F 0 (p) (12)
and after some developments, we obtain the robust controller c(p) : K 1 L 3 p 2 (p + p 1 ) V (p 1 + V 2 ) p 3 + p 2 1 + p 2 + 3 ] (13)

Simulation and experimental results

As for the pole assignment t e c hnique, we h a ve developped a simulator in matlab. We i n troduce perturbations on angle (from = ;3 t o = ;10) during simulation. Figure 4 shows the simulation and experimental results of robust control approach using b parameter as the output of the system. There is no static error during servoing and the stability i s w ell improved.

If we look at gure 5, we can compare the behaviour of the lateral position of the vehicle. In left, we h a ve the behaviour when we use the pole assignment t e c hnique, and in right t h e o n e corresponding to robust control technique. We conclude that the behaviour is more stable with robust controller, but we observe a constant o set in the lateral position depending on the angle variation.

To solve this problem, we use the a parameter of the line as the output of the system, to synthesize a new robust controller using the H 1 technique. The experimental results are presented in gure 6. It illustrates the ouptut behaviour of the system corresponding to an input value a = 0 :4 and the behaviour of the lateral position. As we can see, there is no static error in the output response and no o set in the lateral position when we i n troduce perturbations on angle.

CONCLUSION AND FUTURE WORK

Controllers based on a visual servoing approach, have been developed in this paper. We designed a controller with a pole assignment t e c hnique directly in the image space. After modelling the vehicle and the scene, we obtained equations which can be used to write the state model of the system. Visual servoing is performed well when there are no perturbations. When perturbations occur, a static error and oscillations appear. By introducing an integrator into the visual servoing scheme, we suppress the static error but amplify the oscillation problem.

Then, we i n vestigate a robust control approach. The choice of b as the ouput parameter of the system does not permit the control of the lateral position of the vehicle precisely when the perturbations appear, but insure a heading control. The choice of a parameter as the output of the system, to synthesize a new robust controller, seems to be good enough when we h a ve perturbations on angle. In the future, we will investigate a controller which can take i n to account a c o m bination of perturbations on angle and perturbations on camera height. We assume that experimentation on a real vehicle will be necessary to validate all of the primary results presented in this paper.

Fig. 1 .

 1 Fig. 1. Visual servoing scheme with integrator

Fig. 3 .Fig. 4 .

 34 Fig. 3. Pole assignment approach: b Output behaviour ( from -6 to -10 degrees)

Fig. 5 .

 5 Fig. 5. Lateral position behaviour (Pole assignment and robust control approach)


Philippe Martinet
email: philippe.martinet@lasmea.univ-bpclermont.fr

Christian Thibaud

Benoît Thuilot

Jean Gallice

Robust Controller Synthesis in Automatic Guided Vehicles Applications

We are interested i n A GV applications since a long time, particularly in the eld of car vehicles and agricultural machines. This paper deals with the design of robust lateral controllers expressed directly in the sensor space. We use the camera sensor to extract an image of the position and orientation of the vehicle in regard with the white band, and consider the modelling of the projected line in image space a s the sensor signal. The kinematic modelling of the vehicle takes into account a normalization with respect to the vehicle velocity. We analyse the behaviour of lateral controllers designed w i t h a p ole assignment technique in presence of pipeline delays in the closed loop and perturbations. We particularly consider the perturbations on the inclination angle of the camera and on the camera height. Due to the problem of oscillations and instability of this approach, we investigate a H 1 robust control technique. To validate these approaches we have built an 1/10 scale road and we simulate the behaviour of the vehicle with a cartesian robot. We give some experimental results obtained with our experimental site.

Introduction

In the realm of intelligent highways, many A GV applications have retained attention. For instance, we can cite roadsign recognition, crossroad and branching of road detection, platooning, automatic car control, obstacle avoidance, and so on . The problem of vehicle control using a camera has been given considerable attention by many authors 15, 3 , 1 6 , 8 ] . We are interested in road following applications 2] and in designing lateral controller 7] since a long time. The rst lateral control application was done in 1992 in collaboration with the french rm PSA. We u s e d a pole assignment approach based on the localization of the vehicle in regard with the white band on the ground. The real experimentation was done successfully, but some problems appear in presence of perturbations on camera inclination angle, camera height and camera roll angle. Due to the di culty t o estimate the absolute con guration of the vehicle, we have prefered to turn towards control design directly in the sensor space [START_REF] Kehtarnavaz | Visual control for an autonomous vehicle (bart)the vehicle following problem[END_REF][START_REF] Kimura | Robust stabilization for a class of transfer fonction[END_REF]12]. A same technique, was also studied in 13] b y means of the task function approach 14].

In this paper, we present the modellings of the vehicle and of the scene. We show h o w to normalize these modellings with respect to the vehicle velocity and establish the state model of the system. We rst design a controller in image space using a pole assignment approach, and second using a robust control approach. In both cases, we analyse the e ect of perturbations on the closed loop system. Figure 1: Overview of the experimental site These approaches were experimented with a 1/10 scale demonstrator (Figure 1). It is composed of a cartesian robot with 6 d.o.f (built by the rm AFMA Robot), a camera mounted on its end e ector and the WINDIS parallel vision system. The road built to a 1/10 scale, comprises three white lines.

2 State space modelling 2.1 Modelling the vehicle and the scene The vehicle is hereafter schematically described using the so-called \bicycle model", see Figure 2. Its position is represented by the couple (x s), cartesian coordinates of the center P of the rear wheel, in a referential frame O X S) whose second axle coincides with the straight line (i.e. the white band) to be followed by the vehicle. Its orientation is identi ed by , the angle between the vehicle axle and OS), counterclockwise positive. The vehicle kinematic equations are derived according to the pure rolling and non-slipping assumptions. These impose that the linear velocity vector at point P, denoted Ṽ , is directed along the vehicle axle. The time-derivative o f x and s are therefore given by : _

x = ;V sin (1) _ s = V cos
(2) Let be the steering angle, counterclockwise positive, and L be the distance between the front wheel and the rear one. The pure rolling and non-slipping assumptions ensure that the vehicle motion is a translation when = 0, and otherwise a rotation about the Instantaneous Center of Rotation (I.C.R.), de ned as the intersection of the wheels' axles. In the latter case, when writing the relation between the linear velocity a t P and those at the I.C.R., which i s zero, it can easily be shown that we h a ve :

_ = V L tan ( 3
)
Relation 3 is still valid in the former case, since a transition is characterized by _ = 0 .

Our objective is not to track a p o i n t o n t h e reference line, but just to follow this line. We are therefore interested in regulating only x and . Provided that V is never 0, the relation 2 can then be used to normalize the dynamics of x and with respect to the vehicle velocity : let 0 denote the derivative with respect to the abscissa s. Reporting relation 2 in 1 and 3 and using approximation to small angles leads then to the following vehicle equations :

x 0 = ; 0 = L (4)
Real-time localization of the vehicle is achieved by means of an embedded camera. The height of the camera with respect to the ground, and its inclination angle with respect to the vertical, are hereafter denoted respectively h and .

The 3D white band of the scene is projected as a 2D line in the camera image frame. Its equation has been shown to be, see 11] : p x = a p y + b (5) Approximation to small angles in trigonometric functions in or has been used. (p x p y ) denotes the pixel coordinates of the 2D line in the image frame, and a and b are given by :

( a = 1 1 x b = ; 2 1 3 x + 1 3 (6)
The constant 1 , 2 and 3 are respectively :

1 = f y f x h 2 = ; f y f x 3 = 1 f
x where f x f y are the camera intrinsic parameters (f x = 1300pu, f y = 1911pu, L = 0 :3m, h = 0 :12m and = ;7 ). Since we a r e i n terested in achieving line following by means of regulation control laws designed in the image frame, a natural state vector for our application is Z = ( a b) T . The associated state space model can be obtained by derivating equations 6 with respect to s, reporting then equations 4. Eliminating nally by using once more equations 6, we get:

Z 0 = A Z + B y = C Z (7) with : A = " ; 2 1 ; 3 1 2 2 1 3 2 1 # B = 0 1 L 3
In the sequel, 2 output functions are investigated : y = a and y = b. The associated output vectors, are respectively C = 1 0 and C = 0 1 .

Line following can be conducted from the image frame by regulating either a or b : in view of 6 and 4, the convergence of x and , to respectively x and 0, follows from those of a to a = x 1 , or from those of b to b = ; 2 1 3 x . Since the state space model of the application is linear, the regulation of a or b can be achieved by assigning the poles of the output error dynamics. This approach, investigated in Section 3.1, demonstrates however weak capacities in presence of modelling errors. In order to improve control robustness, we then turn towards H 1 control in Section 3.2.

Pole assignment control

Let y denote the desired constant output value. The following transfer function 8 can be imposed by designing the control law as presented in relation 9.

Y (p)

Y (p) = Nu m (p) (p 2 + 2 ! 0 p + ! 2 0 )(p + ! 0 ) (8) = ;k 1 ;k 2 Z ; k i Z (y ; y)ds (9)
where Nu m (p) represents a polynomial of degree 0 when y = a, and of degree 1 when y = b. The relation between the gains (k 1 k 2 k i ) and the desired dynamics ( ! 0 ) can be derived using the same approach than those presented in 11].

When no modelling error is assumed, the regulation of a or b leads to identical results. On the contrary, when the camera inclination angle is perturbed, model parameter 2 is then unperfectly known. Convergence of a or b to respectively a or b can still be achieved when integrators are used, as in 9. However, convergence of x to x is obtained only when the output variable is a, see relations 6.

Results

The vision system computes the (a b) parameters of the projected line in the image plane at video rate, and a data ow latency of three sample periods has been identi ed.

We only present the best results (Figures 3 and4) obtained when using the pole assignment technique with integrator and the parameter a as the output of the system. The dynamic parameters and ! 0 have been set respectively to 0.9 and 2 rd/s. The nominal velocity V has been chosen equal to 20 km.h ;1 . Figure 3 illustrates the in uence of the data ow latency. Since the imposed output error dynamic 8 is a spatial one, the vehicle trajectory, w h e n c o n verging to the reference line, should be identical whatever the vehicle velocity is. This feature is veri ed when the velocity i s V or V 2 . The slight error only follows from the unmodelled delay. On the contrary, f o r higher velocities, oscillations appear, and divergence nally occurs when the velocity i s 1 :7V . A fourth simulation, with velocity 1 :7V and zero delay, h a s b e e n run. The vehicle trajectory is again superposed with those obtained at lower velocities. This demonstrates that the data ow latency, not adressed during the control design, is the only responsible for the aboveobserved divergence. In Figure 4, we present the output behaviour when we i n troduce perturbations on the camera inclination angle. Oscillations and instability occur even for a weak variation of ( 2 ). Due to these problems, we have decided to investigate a robust control approach.

Robust control

We c hose the approach d e v eloped in H 1 space at the beginning of the eighties 18, 1 0 , 5 , 6 , 4 ] , concerning controller design with plant uncertainties modelled as unstructured additive perturbations in the frequency domain.

Generality o n H 1 control

The servoing scheme is presented in the Figure 5 .

with q(p) = c(p) 1+F0(p):c(p) . To ensure the stability of the closed loop system, we m ust verify: j1 + F (j!):c(j!)j 6 = 0 8! (12) We de ne a transfer function r(j!) w h i c h bounds the variations of F 0 (j!) a s : 8 < : j F 0 (j!)j j r(j!)j jr(j!)j

F0(j!) 1 8! (13)
In this case, if c(p) stabilizes the nominal plant F 0 (p) w e can express the robust stability condition as 10] : kq(p)r(p)k 1 < 1 [START_REF] Pissard-Gibollet | Asservissement visuel appliqu e a un robot mobile: etat de l'art et mod elisation cin ematique[END_REF] In these conditions, the robust controller can be expressed by : c(p) = q(p) 1 ; F 0 (p)q(p) [START_REF] Samson | Robot Control: The task function approach[END_REF] Plant with two poles at the origin In this part we summarize the di erent steps to follow to synthesize a robust controller when the plant comprises two poles at the origin 10, 4 , 1 ].

We construct the proper stable function: f F 0 (p) = p 2 :B(p):F 0 (p) (16) where B(p) = Q ( pi;p pi+p ) represents the Blaschke product of unstable poles p i (Re(p i ) > 0) of F 0 (p).

For convenience, we de ne e q(p) a s : e q(p) = q(p) p 2 :B(p) [START_REF] Waxman | A visual navigation system for autonomous land vehicles[END_REF] and then: F 0 (p):q(p) = f F 0 (p):e q(p) [START_REF] Youla | Interpolation with positive-real functions[END_REF] We h a ve t o c hoose a minimal phase function r 0 m (p) as:

r(p) = r 0 m (p) p 2 (19)
where r(p) bounds the variations of the nominal plant F 0 (p).

The robust condition of stability can be rewritten as:

ku(p)k 1 < 1 with u(p) = e q(p):r 0 m (p) (20)

Since the function 1 ; F 0 (p):q(p) has the zeros at the unstable poles i of F 0 (p), and using relation 18, we can express the rst interpolation conditions with: e q( i ) = 1 f F 0 ( i ) 8 i = 1 ::: l (21)

We can write the second condition of interpolation at the origin : e q(0) = 1 f F 0 (0) 2 poles at the origin ( 22) Since e q(p) and r 0 m (p) a r e H 1 functions, the function u(p) = r 0 m (p):e q(p) m ust be an SBR function (Strictly Bounded Real), and the conditions of interpolation can be written as:

8 > > > < > > > : u( i ) = r 0 m ( i ) f F 0 ( i ) 8 i = 1 ::: l u(0) = r 0 m (0) f F 0 (0) 2 poles at the origin (23)
So the solution to the problem of robust stabilization of an unstable system 10] lies in nding an SBR function u(p) which i n terpolates to the points u( i ). This problem is called the Nevanlinna-Pick interpolation problem. Dorato et al in 5] h a ve proposed an iterative solution to this problem based on the interpolation theory of Youla-Saito 17]. When the relative degree of the function r 0 m (p) is greater than 0, we m ust append one or more supplementary interpolation conditions near in nity.

Robust lateral controllers

We have used H 1 approach to design lateral controllers with both parameters a and b.

Controller design using parameter b

When parameter b is considered as the output of the system, from 4 and 6 we h a ve: 8 > < > :

F 1 (p) = b = 2+p 1 1 p 2 L 3 F 1 (p) F 1 (p) = j j + j h h j 1 + 1 2 :p (24)
Using the following expression of r(p) :

r(p) = sup ! j F 1 (j!) F 1 (j!) j F 1 (p) (25)
we can consider r 0 m (p) as: r 0 m (p) = K 1 :p 2 :F 1 (p) (26) We set the range of variations of and h h respectively to 0:57 and 0:25. Therefore, we deduce from 24 and 26 that K 1 = 0 :82. Since F 1 (p) has no unstable pole, the function B(p) = 1, and we h a ve t o c hoose u(p) a s a n S B R function with a relative degree of 1 (because of the expression of r 0 m (p)). We c hoose the following expression of u(p): u(p) = K1 1+ :p (27) to satisfy the conditions of interpolation: 8 > < > :

u(0) = r 0 m (0) f F 1 (0) = K 1 at the origin u(1) = 0 (28)
Developing, we obtain the robust controller c(p) :

c(p) = 1 pL 3 :( 2 + p 1 ) (29)
Controller design using parameter a When parameter a is the output of the system, we have: 8 < :

F 2 (p) = a = ; 1 1 L p 2 F 2 (p) F 2 (p) = j h h j (30)
As previously, w e use the same expression for r(p) and looking at the expression of F 2 (p), we can consider r 0 m (p) a s : r 0 m (p) = K 2 :p 2 :F 2 (p) with K 2 = 0 :25 (31) Since F 2 (p) has no unstable pole, we h a ve t o c hoose u(p) as an SBR function with a relative degree of 2.

We c hoose the following expression of u(p):

u(p) = K2 (1+ :p) 2 (32)
and writing the conditions of interpolation at the origin and at in nity, w e obtain the expression of the robust controller c(p) : c(p) = ; 1 L p :(2 + :p) (33)

Results

To e v aluate robust control, we h a ve used the same tests than in section 3.1. In addition, we h a ve considered perturbations on camera height.

In uence of the data ow latency Figure 6 illustrates that the H 1 controller is less sensitive to unmodelled delay than the classical poles assignment l a w: when the vehicle velocity i s 1 :7V , i t s Simulations with higher velocities, up to 5 V , h a ve also been successively run. Severe oscillations occur, but the vehicle still converges to the reference line.

Perturbations on angle

We h a ve successively chosen as output variable b, Figure 7 (b = 100 pixels, = 0 :67), and a, Figure 8 (a = 0 :43, = 0 :5). In both cases, the robustness is much improved with regard to pole assignment: no oscillation is noticed even with 2 ;2 + 5 ]. Moreover, contrarily to the use of b, the vehicle trajectory is not altered when a is the output variable. We h a ve also veri ed that, as expected, there is no steady state error on the lateral position x, when using the a parameter.

Coupling perturbations

In the nal test, we h a ve combined perturbations into camera height and camera inclination angle. Using the parameter a as the output of the system, we have compared the pole assignment and robust control When we introduce perturbations on camera height, a still converges to a , but a steady state error appears on x due to the presence of h in 1 , see 6.

Conclusion

In this paper we h a ve s h o wn how t o s y n thesize lateral controller in sensor space for AGV applications. In a rst part, we d e v elop the modelling of the vehicle taking into account a normalization with the longitudinal velocity. In these conditions, we establish a state model of the system and deduce a rst control approach based on pole assignment. We s h o w that the choice of a instead of b parameter to design controllers is much adapted in presence of perturbations. Oscillations and instability occur at high velocities due to the presence of a pipeline delay in the closed loop control. In addition, the same phenomenon can be observed when we h a ve w eak variations of plant uncertainties.

So we decide to investigate a robust control approach. The presented robust controllers are e cient with regard to delay and to plant uncertainties, except for the camera height.

In the future, we i n tend to solve this latter problem, and we w ant to adapt this control scheme in order to take also into account perturbations into the camera roll angle. Finally, an extension of these work can be done in designing dynamic robust lateral controllers taking into account a dynamic model of the vehicle.

Figure 2 :

 2 Figure 2: Bicycle model.

Figure 3 :

 3 Figure 3: In uence of the data ow latency

igure 4 :

 4 Evolution of a

Figure 5 :

 5 Figure 5: Servoing scheme in H 1 space We consider an additive perturbation in the frequency domain : F(p) = F 0 (p) + F 0 (p) (10) where F 0 (p) represents the nominal transfer function. The aim is to determine a single robust controller c(p) which ensures the stability of the closed loop system. Then, we can write 1 + F (p):c(p) a s : 1 + F 0 (p):c(p)] : h 1 + c(p) 1+F0(p):c(p) : F 0 (p) i = 1 + F 0 (p):c(p)] : 1 + q(p): F 0 (p)] (11)

  d] = [0.5*V,3], [V,3], [1.7*V,3], [5*V,0]

Figure 6 :

 6 Figure 6: In uence of the data ow latency

igure 8 :

 8 Evolution of a

  <-7°-9°< α <-7°9 cm< h <12 cm

Figure 9 :

 9 Figure 9: Evolution of a

Figure 10 :

 10 Figure 10: Evolution of x


F Marmoiton

F Collange

P Martinet

J P Derutin

A real time car tracker

Keywords: computer vision, real time implementation, car tracking

This paper details a vehicle detection and localization algorithm from a single perspective view. A video c amera, embedded i n a c ar, provides a grey scale image of a lead car. This lead vehicle is equipped with three visual marks to make easier low and high level processes. The algorithm is designed for real time implementation. It is conceived f r om a direct 3D localization method c oupled with a tracking method b ased on a rigidity criteria of the trajectories of N points. The processes are implemented o n a specialized h a r dware a r chitecture to satisfy real time constraints.

Introduction

Vision techniques to create e cient cars driving devices have a large potential of development. Researchs around the autonomous guided vehicles theme show the possibilities of such methods for vehicle guidance on roads, obstacle detection or tra c scene interpretation.

The LAboratoire des Sciences et Materiaux pour l'Electronique, et d'Automatique (LASMEA) worked on vision cars systems like estimation of the current position of a vehicle with respect to a normalized road, obstacle detection and tracking with a range nder coupled with a camera or vehicles control [START_REF] Montagne | Real time 3D location of a car from three characteristic points observed in a video image sequence[END_REF][START_REF] Kaarmila | Convoy n a vigation[END_REF]. The laboratory works today o n a d r i v er assistance based on a monocular camera sensor.

Because of the speed of the cars, such s y s t e m s involve to be e cient short processing times. Vision based devices give large amount of data so need high speed calculator and dedicated architecture to obtain a su cient performance level. The LASMEA works on vision hardware architecture to test its algorithms in a real environment.

Platooning operations 2, 6] consist of automatic convoys of vehicles where one or more slaves follow a master. Convoys are usually led by a h uman being and slaves are driven by an automatic device which involves a lateral and longitudinal control.

In this context, this paper only concerns the perception aspects of a platooning device or of an Adaptative I n telligent Cruise Control. It describes a software and hardware vision system to detect obstacles in a road scene.

Our approach aims to be able to localize one or many v ehicles equipped with visual marks 9] from a single perspective view. An embedded camera provides a grey level image of road scenes.

To m a k e easier low and high level processes, three visual marks are used on a lead vehicle. These marks are three lights, one on top and two a t t h e b a c k o f the lead car. This installation can be generalized to actual cars with the two back l i g h ts, and the other included into the third stop light.

In a camera image of the lead car, the 2D projections of the three visual marks are detected and the lead vehicle is then localized in the camera coordinate system. A tracking module permits to recognize the vehicle in an image sequence.

We c hose and designed both the algorithm and the This paper is divided into two parts. In a rst part, we present the di erent steps to obtain the position and the orientation of the lead car from the camera image and to have a good reliability of our device. In a second part, we describe the computer architecture and the real time implementation.

The algorithm

The rst di culty to develop an e cient perception vision algorithm is to be able to detect and recognize vehicles in a road scene. The collision avoidance devices involve a high level of robustness and reliability. The algorithm doesn't have t o b e perturbed by false alarms, noise, or events in the road scene

The second di culty is to be able to track a v ehicle along an image sequence to update the information about this moving object. This step must be robust enough to lter all external perturbations. A high level module must measure the quality o f t h e t r a c king to detect problems and target losses.

Vehicle detection

Vehicle detection in a monocular image is a complex problems. The camera is embedded in a car, so solutions to detect moving object like t h e computation of the velocity eld 1] in the image plane are not suitable. Others approaches like 8 ] aim to detect a vehicle in a grey scale image. The extraction of geometrical characteristics like c o i n s , segments or correlation methods permit to recognize a v ehicle in the image plane. In our applications, the lead vehicle is equipped with visual marks. This permits to avoid problems due to a lack o f contrast between the visual features (here the marks projections) and the background. So, detecting a vehicle in the image plane doesn't involve to detect a geometrical characteristic of the car but to look for the three visual marks in the 2D image plane.

The extraction of the marks of the image plane is made of two step. An adaptative thresholding permits to extract the most luminous pixels of the image. The unpredictable variations of the road scene illumination commands the use of an adaptative thresholding based on the grey level histogram. The second step aims to bring together the luminous pixels into sets of pixels, and to compute the centers of gravity of these sets of pixels. If three projections of visual marks are detected in the image, we assume that these marks belong to the lead car. The three extracted marks are used to localize this car. The localization method is developed by DeMenthon and Davis 3]. The car is localized from the three 2D points view under a weak perspective assumption 5], knowing the 3D position of the marks in a coordinate system xed to the lead car, and the intrinsec parameters of the camera. The three points extracted in the image plane are used to compute the position of the lead car in a coordinate system xed to the camera.

A v ehicle is identi ed by its three 2D marks projections, by its 3D position and orientation and by its dynamic comportement. If in three successive images three visual marks are extracted and the localization is successfull, we assume that the three visual marks belong to a vehicle. To complete the parametrization of our mobile, the 3D movements are computed from the last three localization results. The mobile is completly identi ed and the tracking module can be started.

Vehicle tracking and supervision

As we know that there is a vehicle in the eld of view of the camera (results of the step of vehicle detection), we w ant n o w to follow it through an image sequence, or to detect when the car is no more visible in the camera eld of view.

Two modules must be developed, a module to track the car in the images sequence, and another to supervise the tracking to detect target disparitions.

Tracking module

As our data are perturbed by noise, the correspondance of occurences of feature point a l o n g an image sequence is di cult to determine. The method employed here is a prediction veri cation method (cf g.3). We m ust lter the visual marks projection between noise and false detections. The rst two steps of the algorithm permits to sort out the good features. Regions of interest permit to exclude non representative data. A second lter, based on a rigidity criteria of the trajectory of the three points, permits to sort out the data used for the localization.

The knowledge of the 3D motion of the car permits to place regions of interest in the image plane. The amount of data to be processed is limited to these regions of interest. A part of the noise or false alarms may b e a voided. A second step aims to choose the three visual marks in the image plane. The noise immunity o f the algorithm depends on this step. Noise due to problems during the digitalization step, re ections or events in the road scene is ltered. When an obstacle appears between the camera and the tracked car, or if a light is no more in the eld of view of the camera, data may be lost. This step ensures a good algorithm behaviour in these unexpected situations. So we need to choose between marks if more than three marks have been detected or to predict a mark position in the case of lack o f d a t a .

To select the good marks, we suppose that the three characteristic points have homogeneous trajectories.

A rigidity criteria between the trajectory of the three points permits to determine if the point is a car mark projection or not.

We compute all possible trajectories with one point per window o f i n terest. So if s p points are selected in window W i , there are T possible trajectories :

T = N Y i=1 (s i ) (1)
with N the number of characteristic points of the model (number of region of interest). If p i is the predicted point, p i is the center of the region of interest W i , and s i n is the nth point of the window W i .

In each r e g i o n o f i n terest W i and for each detected mark, we compute the polar coordinate (d i n i n ) and the cartesian coordinates (x i y i ) of the selected points s i n in an image coordinate system centered on p i .

For each c o m bination t, w e calculate an average model of the three points view with :

d t = 1 N N X i=1 d i n (2) x p = 1 N N X i=1 x i (p) (3)
y p = 1 N N X i=1 y i (p) (4)
From 3 and 4, we compute :

t = N X i=1 arctan y p x p (5)
Then, we compute the distance between the average model placed with d t and t , and the selected points to search the combination which minimizes this distance.

This distance must be smaller than a threshold to select the combination. Else, two points combinations are tested. Predictions are returned if no three and no two p o i n ts combination can be returned.

From the three 2D estimated marks, the position and the orientation of the lead car is processed as described above. The results are then used to place and size regions of interest for the next iteration.

Supervisor module

During the tracking stage, we suppose above t h a t the lead car must be found in the image. But partial or complete occultation of the car, problems of divergence of the tracking, or if the car is too far to be correctely detected may cause a bad running of the tracking module. The supervisor module aims to detect tracking problems to launch if necessary a new step of vehicle detection. The supervisor system analyses the results of the 2D low level extraction.

If in the last three images, three visual features have been selected and use to localize the vehicle, we suppose that the tracking module works well and that the extracted features belong to a car of known position and orientation.

Target losses are detected by a time criteria. A measure of the time of localization with 2 lights, localization with no light permit to decide to continue or to stop tracking. If this time becomes too important, we suppose that the target is lost and we consider that there is no car in the image. The step of vehicle detection is then run to detect if the car reappears in the image.

Implementation

To obtain real time processes, the computer architecture is adapted to software processes.

The hardware is separated into two w orlds: A distributed memory MIMD world well adapted to localized treatments. The amount of data image processing can be distributed on the di erent processors. This world is conceived around a Video Node board based on communicated processors. a sequential world manages high level processes.

It is based on a 68040 CPU board running in VxWorks software environment. Data transferts between these worlds are managed via a VME bus.

Each Video Node board includes four communicated processors ring connected 4]. Communicated processors data links ease e cient data exchanges. Each Video Node can access its private RAM and to a special memory where the image data is stored.

Communicated processors and the 68040 CPU board are linked through a special VME interface.

Video nodes, which h a ve a direct access to the video ow, processes low l e v el computing. A video node, called root, synchronizes workers which manages each one a region of interest according to the informations (position, size) given by the high level process.

Results of workers are collected by the root processor and send back to the MC68040 board where high level tasks are sequentially implemented.

The simplicity of the localization method makes that the MC68040 is powerfull enough to satisfy real time constraints.

Experimental results

Software and hardware systems are tested on video taped images collected in a real outdoor environment. These images sequences o ers di culties like hills, bumps, S-curves or tra c lights.

The visual marks are well detected, extracted and the car is located with a good accuracy.

Here is an exemple of di culty frequently encountered in our sequence: Figure 4: A grey levels image Figure 4 shows the grey scale image, entry of the algorithm. This image is obtained from a grey scale video camera with an infrared lter to ease low level extraction. Four lights have been detected: three concern the tracked car and the fourth belongs to a motorcycle situated at the left side of the road. Figure 5 shows a zoom of the image of gure 4 after processing. Windows of interest are sized and placed around the last 2D projection. Luminous pixels are thresholded: four 2D projections are detected. W 1 contains s 1 1 and s 1 2 , W 2 contains s 2 1 and W 3 contains s 3 1 . Between these four detections, one must be eliminated to localize the vehicle. We detail here the sets of pixels selection.

If we select one point per region of interest, there is two possible trajectories: (s 1 1 s 2 1 s 3 1 ) o r (s 1 2 s 2 1 s 3 1 ). and7 show algorithm points selection results (crosses represent extracted points). Figure 6 shows results where only three visual marks have been extracted. Figure 7 shows the solution proposed if N points have been extracted. The processing time in tracking mode never exceeds 40 ms. The time to process the sets of pixels extraction is data dependant. However, this time can be estimated to around 28 ms. The amount of data to be processed explains this large computation time. The set of pixel extraction lasts 2 ms, localization 3 ms and prediction 1 m s .

Software and hardware architectures are validated in real conditions. The whole set can be integrated into existing systems as a module for a number of applications like convoying operations or intelligent cruise control on highways. This involves the development of a high level decision module which ensures the connection between the perception modules and the control module.

One important limitation is that this algorithm tracks only one vehicule. This is not su cient in normal tra c situations even if cars are marks equipped. So, to complete this system, future versions must allow multi-target tracking and localization.

The multi-target algorithm must process target disparitions and apparitions, and target occultations. Such a module needs the implantation of a high level device to manage all moving obstacles. Environmental informations can be brought by parallel processes like straight line detection to have a good supervision of the whole system.

Figure 1 :

 1 Figure 1: The lead vehicle and its visual marks.

Figure 2 :

 2 Figure 2: Low level extraction and localization

Figure 3 :

 3 Figure 3: The tracking module

Figure 5 :

 5 Figure 5: Extraction and localization results.

For

  average distance between the average model and the p i j gives 1:94404 and 13:62630 pixels respectively for trajectory 0 and 1. The solution retained is then trajectory 0.

Figure 6 :

 6 Figure 6: Three points extraction

Figure 7 :

 7 Figure 7: N points extraction Figures 6and 7show algorithm points selection results (crosses represent extracted points). Figure6shows results where only three visual marks have been extracted. Figure7shows the solution proposed if N points have been extracted. The processing time in tracking mode never exceeds 40 ms. The time to process the sets of pixels extraction is data dependant. However, this time can be estimated to around 28 ms. The amount of data to be processed explains this large computation time. The set of pixel extraction lasts 2 ms, localization 3 ms and prediction 1 m s .


P. B P Martinet

J Gallice Lasmea

U M R 6602

M Berducat
email: michel.berducat@cemagref.fr

C Debain

CEMAGREF R Rouveure

Automatic Guided Vehicles in Agricultural and Green Space Fields

Working on new equipments to increase agricultural productivity and safety, reducing human action hardness, Cemagref and Lasmea have developed an help guidance system for agricultural vehicles. The aim of this system is to help the operator to guide the machine in order to give more attention to the order task. To r each this goal, we use a visual perception of the environment because this sensor gives a solution well adapted to lots of situations. This project began with researches on a visual guidance system for a lawn mower in 1990 and has been adaptated to the development of the same system for a combine harvester in 1995. We model the lawn mower with a virtual axle, use trajectory generation to guide it, and localize the vehicle at each iteration to insure the servoing task.

For the combine harvester, we decide to use the task function approach 23] and then to control the combine harvester directly in the sensor space.

Introduction

Many guiding applications can be found in agricultural cycle and green space environment. For instance, we can cite mowing the lawn, cultivation, seeding, fertilization, plant protection, harvesting, forage work (straw,hay), ... The machines are adapted with the applications, and we n d m o wer, tractor, combine harvester. In theses applications the environment i s p a rtially structured and characterised by an initial path and successive guiding/following paths.

The perception problem to solve the guiding task, is to detect for instance a furrow in the ground (Till work), a reap limit between mowed and unmowed part (Harvest work), a haycock , a s t r a wcock ( F orage work) ... For that, many sensors can be used like video camera, ultrasonic sensor, laser telemeter sensor or mechanical sensor.

Some applications has been done in agricutural eld, particularly in harvesting 2, 2 1 ], in mowing the lawn 20, 5 , 6 , 3], in collecting tree fruits 1, 2 5 ], in tomato cultivation 24], and many others ... We h a ve b e e n i n terested on the reap limit detection by vision to guide a lawn mower and a combine harvester. In the rst part of this paper, we p r e s e n t brie y the perception problem and some results obtain with pictures of grass and weat. In the second part, we develop successively the modelling and the control aspect of the rst application. The modelling use a virtual axle with two wheels, and the control is insures by trajectory generation. Finally in the third part, we follow the same presentation for the second application. We use pole asignment t e c hnique to design the controller directly in the sensor space.

In our applications, the aim of the perception part is to detect the reap limit between cut and uncut crop.

We use an image segmentation based on 4 parameters 5]: two parameters of texture (homogeneity, e ntropy) were chosen using the cooccurrence matrices (texel: region of size 16 16 pixels 11]. two parameters are computed from local greylevel histograms (the maximum, and the second order of moment of grey-level histograms).

The segmentation is unsupervised and uses the Markov eld modelling 10, 26, 1]. The algorithm permits the extraction of lines candidates for the reap limit and the selection of the line which represents the situation between the vehicle and the reap limit (( d) parameters) (see gure 1).

AGV in green space eld

The application is to guide the lawn mower by v ision in regard to cut and uncut limit. Two m a i n a spects for this application has been treated: the vision/perception aspect by Derras in 4] which consists to detect the crop line and to extract the (d ) parameters. the control aspect by Debain in 2] The mower is a professional lawn mower built by Guerin Courde. Figure 3 shows the prototype used in this application. This machine has four driven wheels and the gap is insured by the di erence V 2 ;V 1 . V 1 and V 2 represents the speed of the center of both wheels.

Figure 3: The lawn mower

The modelling of the non-holonomous vehicle is made with a virtual axle (see gure 4) with 2 wheels. If V 1 and V 2 are constant, each p o i n t of this axle move on a circle with a radius R as :

R = v _ = b 2 V 2 + V 1 V 2 ; V 1 = b 2 _ q 2 + _ q 1 _ q 2 ; _ q 1 (1)
So, we retain the following relation to characterize the kinematic of the virtual axle :

8 < : v = r 2 ( _ q 1 + _ q 2 ) _ = r b ( _ q 2 ; _ q 1 ) R = b 2 _ q2+ _ q1 _ q2; _ q1
(2) r represents the radius of both wheels, _ q 1 and _ q 2 the angular velovities, v the longitudinal velocity a n d the orientation of the axle. In our application, the control variables of the mower are : v = (V2+V1) 2 which represents the average speed of both wheels v = ( V 2 ; V 1 ) which represents the di erence of both wheels velocities. From the previous equations 2, we deduce v v = r 2 r 2 ;r r : _

q 1 _ q 2 (3)
To control the machine we generate a trajectory composed with 2 circles 14]. We consider two p ositions characterized by the di erence in position (dx dy), and the di erence in orientation (see gure 5).

We h a ve tested successfully this approach b o t h i n simulation and experimental cases. For instance, gure 6 shows the evolution of the position and orientation of the mower in presence of noise (20 pixels) on d parameter. More details on this application can be found in 2].

AGV in agricultural eld

The application is to guide a combine harvester by vision in regard to cut and uncut limit. This is a collaboration with a european rm. The prototype is presented in the gure 7. The vision aspect is similar to those encountered in green space environment. We u s e a m a c hine with two steerable wheels, and two d r i v en wheels. The model of the vehicle assumes that there are no exible parts, the vehicle moves on plane surface, there is no translational slip between the wheels and the surface, and there is su cient rotational friction between the wheels and the surface.

We consider the steering mechanism as the same as a bicycle (see gure 8).

Let _ the angular velocity v ector directed along the y axis, and _

x the linear velocity directed along x axis. We nd the kinematic model of the machine expressed by the following equations 15, 17]:

X L δ P ψ V x I.C.R. Y o Figure 8: Bicycle model _ = ; V L _ x = V (6)
However, we o n l y c o n trol the wheel angle . W e can nd an equation linking to the vector (V _ ).

In our application, we consider that the velocity V is constant, then we h a ve 13, 1 9 ] : = ; L V _ For the control, we h a ve tested three approaches. Two of them are based on the task function approach 23] and the third is based on the neural networks. All the details are presented in 16]. In this paper, we summerize one of them using a pole assignment approach.

To establish the state model of the system, we r s t use the following relation 8, 12]: _ s = L T s T c (7) which links the variations of the sensor signal _ s to the motion apply to the sensor T c through the interaction matrix L T s . The interaction matrix or image jacobian is obtained by using the well known equation of optical ow measurement t o 3 D structure and motion in the scene [START_REF] Ollis | First results in vision based crop line tracking[END_REF][START_REF] Espiau | A new approach to visual servoing in robotics[END_REF].

In our application, the scene is represented by a straight line and modelled by its projected line in the image frame (see gure 9). The position of the machine and its orientation is expressed according to the set of visual features s = ( ) T . We use the s as the state vector, and we nd a state model which i n tegrates both the model of the machine and that of the scene: s = the current visual information vector, = the control variable, A and B are constant matrices. The control law i s s y n thesized using a pole assignment technique (second order system having as a damping ratio and ! 0 as its frequency).

In order to test the control law, we laid out a trajectory composed of a bend, a step of one meter and a straight l i n e .

The vision system is composed of two VME microprocessor boards, and the image processing calculation time is about 200 ms (close to that encountered in a natural environment). We ajusted the gain of the controller by using the following characteristics of our closed system: ! 0 = 0 :14rd=s, = 0 :9, and V = 2 0 km=h. In the experimental test, we rst follows the bend, then we passed the step of one meter and nish with the straight line. Figure 10 shows the di erents curves.

All tests passed successfully, but we observed that this technique tends to cut the bend.

Conclusion and Perspectives

We h a ve presented two systems that provide the driving assistance to agricultural mobile machine in order to help human beings in repetitive and di cult tasks in a natural environment.

The rst application deals with vision-based control o f a l a wn mower. We compute a trajectory based on two circles, and insure the servoing of the mower by estimating the position and orientation of the vehicle at each iteration.

The second application is to guide a combine harvester. The controllers are designed in the image space. We h a ve tested three approaches successfully. Two of them need the modelling of both the vehicle and the scene. The third one is a \black-box m o delling" and needs a phase of learning

We h a ve also design a controller which i s a b l e t o guide the vehicle on a slope ground with an adaptative control strategy 18].

For the future, we i n vestigate in two w ays. The rst is to improve t h e e n vironment perception using others sensors like lasers telemeters and fuzzy theory to combine laser and video informations. The second is to developed 3D controllers using the kinematic GPS as the main sensor.

Figure 1 :

 1 Figure 1: Modelling the scene in image space For more details of this algorithm, you can see 4, 6 , 7].

Figure 2

 2 Figure2gives some results of detection in presence of grass and weat.

Figure 2 :

 2 Figure 2: Crop line detection (grass and weat)

Figure 4 :

 4 Figure 4: Modelling with a virtual axle

Figure 5 :

 5 Figure 5: Trajectory generation The main relation used to de ned the trajectory are developed in 2]. Knowing the two angle and radius of the circle, we can determine the velocities to apply on the wheels: ( _ q 1 = Vmoy 2:R:r (2:R ; b) _ q 2 = Vmoy 2:R:r (2:R + b)

Figure 6 :

 6 Figure 6: Position and Orientation with noise (20 pixels)

Figure 7 :

 7 Figure 7: Our combine harvester

  Figure 9: 2D camera frame

Figure 10 :

 10 Figure 10: Test at 4 km/h ( = 0 :9, ! 0 = 0 :14rd=s)


Lionel Cordesses

Christophe Cariou

Philippe Martinet

Christian Thibaud

CP-DGPS based combine harvester

In this paper, we address the problem of combine harvester control using a single CP-DGPS receiver, without any attitude measurement unit. A non linear, velocity independent control law has been designed. It relies upon the kinematic model of the combine harvester. Two approaches aimed at estimating the heading of the farm vehicle have been investigated. One uses GPS velocity measurements: the kinematic model of the harvester imposes that its linear velocity is directed along the vehicle axle. So the heading of the vehicle can be roughly estimated from raw velocity measurements. The other relies upon a Kalman state reconstructor and produces an indirect measurement of the heading. The reconstructor has been designed thanks to the kinematic model of the harvester, and taking into account for the sensor noise.

The control law has been implemented on a combine harvester. Experiments have been carried out using both kinds of heading estimations on an almost flat ground. The standard deviation from the mean of the lateral position is about three centimeters, and the bias smaller than five centimeters. Both methods are compared an some conclusions are drawn.

INTRODUCTION

One can describe precision agriculture quoting "to perform the right task at the place at the right time". Precision farming can be described as a three steps process. Land surveying is the first one, while agricultural maps recording is the second one. The last one could be variable rate seeding, fertilizing, according to the previous steps. We will focus on the third step, as most agricultural tasks rely on accurate vehicle guidance. Lets illustrate this concept in the particular case of a combine harvester. The need for automatic vehicle guidance systems seems obvious on this machine: the driver would only have to finely tune different functions of this machine and perform a half-turn. Meanwhile, the guidance system would achieve a very accurate positioning, thus insuring neither overlapping nor missing areas.

Many situations could be reported. Most of them could be classified as two categories. The first one is a "previouslyrecorded" path-following task: the machine must follow a previously recorded trajectory. This trajectory could have been stored during the seeding for instance. In the second one, the machine must follow a new curve. This new reference is computed from the last passage plus an offset (the tool length for instance). We could also mention new possibilities, such as optimal attack point search, or automatic half-turn for driver assistance.

Many experiments have been conducted and reported in the literature. Most approaches can be classified into two categories, as they rely upon two kinds of sensors and information.

The first one uses relative information. Researchers focused for instance on the video camera sensor. Mounted at the end of the implement or at another appropriate location, it provides the operator with a set of " eyes " near the demarcation line. This contact-free sensing system presents the same offset information as earlier furrow following or edge-detecting sensors. But it has the nice feature of providing anticipation to the control system, which is interesting from a control point of vue. Various approaches have been tested. Some rely on 2D information extracted from the image plane [START_REF] Debain | Lois de commande pour le contr ôle et la mobilité de machines agricoles[END_REF], [START_REF] Khadraoui | Vision based control in driving assistance of agricultural vehicles[END_REF] and [START_REF] Ollis | Vision based perception for an automated harvester[END_REF]. Other are based on 3D sensors, for instance made of a laser scanning and a video camera. Two kinds of difficulties arise: the first one is the reference detection. The whole guidance system relies upon the quality and robustness of the detection algorithms. Extreme conditions of dust, for example, reveal the weakness of the detection side. The other problem is that the new reference is computed from structured environment in an iterative process. It can oscillate too. If the edge of the work area tends to oscillate in successive passes, human operators frequently and periodically sacrifice for efficiency in one pass to " straighten out " the edge of the worked area.

The second one uses absolute information. A recent technological development allows accurate three dimensional (3D) positioning of the vehicle in a field without the need for buried cables, field-installed beacons or video sensors: the Global Positioning Systems (GPS). Today, flow control devices are coupled to a GPS to produce a yield map. It allows farmers to adjust seed, pesticide, and fertilizer to each field location. This sensor also allows the design and implementation of an absolute vehicle guidance system with the availability of a very accurate positioning system. This technology can be used in special operations, in which the vision system is unable to proceed, for instance, in a spraying or fertilizing operation with no visible markers such as boom wheel tracks or foam marks. Researches have been carried out in this area, using fiber optic gyroscopes (FOG) and GPS [START_REF] Nagasaka | Automated operation in paddy fields with a fiber optic gyro sensor and GPS[END_REF]. The influence of navigation sensors in GPS based land navigation has also been studied in [START_REF] Abbot | Land -vehicle navigation using GPS[END_REF]. Promising results have been reported where an " all-GPS " solution has been preferred [START_REF] O'connor | Automatic steering of a farm vehicle using GPS[END_REF].

In this paper, we will first describe the information required to achieve line following control of a farm vehicle. We will propose a non linear and velocity independent control law based upon the non linear kinematic model of the harvester. Moreover, two heading estimation methods will be investigated. And last, we will compare experimental results and draw some conclusions.

VELOCITY INDEPENDENT CONTROL LAW

Most agricultural tasks are performed at constant velocity. This is particularly true on a combine harvester. Unfortunately, this velocity relies upon various factors, such as crop density, variety, and is tuned by the driver. This is the reason why we decided to design a velocity independent control law, as in [START_REF] Elkaim | System identification and robust control of farm vehicles using CDGPS[END_REF]. After a brief presentation of the non linear kinematic model of the harvester, we will derive a bounded, velocity independent control law.

KINEMATIC MODEL OF THE HARVESTER.

We used the kinematic model of the harvester. From a practical point of view, the harvester can be considered as a rear wheel bicycle model of length l. The theoretical description can be found in [START_REF] Kelly | A partial analysis of the high speed autonomous navigation problem[END_REF]. The configuration of the harvester can be described without ambiguity by the state vector X = ( z x ) T , with:

-(z x): coordinates of the vehicle front axle center (denoted as O on Figure 1) in the reference frame W Z w X w ],

-: vehicle heading. More precisely, is defined as the orientation of the vehicle axle with respect to W Z w ],

see also Figure 1.

Two control variables are available, namely U = (v ) T v: linear velocity at point O (the control variable is actually the rotation velocity of the front wheels, from which the value of v can be inferred).

-: orientation of the rear wheels (assumed to be superposed, see Figure 1).

The vehicle kinematic equations are derived according to pure rolling and non-slipping assumptions, and rigid body assumptions. The former imposes that the linear velocity vector at point O is directed along the vehicle axle. The latter implies that an instantaneous rotation center exists (IRC). Combining these two results, we infer that it is located on the wheels axle. When the vehicle movement is a translation, this IRC moves towards infinity.

< : _z = v cos _x = v sin _ = ; v tan l (1)

NON LINEAR CONTROL LAW.

The objective of the control law is to achieve path following under the simplifying assumptions: the harvester linear velocity v is assumed to be constant, and the reference path is a straight line. These assumptions are those of our very first experiments, as reported in the next section. Nevertheless, the design of the control law is based upon general results in Automatics, namely chained systems theory, see for instance [START_REF] Samson | Control of chained systems. application to path following and time-varying point stabilization of mobile robots[END_REF]. So, one can extend the control law presented in this paper to more general path following problem.

Control laws can be derived from first order development of the kinematic model equations. The non linear model is then approximated by a linear one, and the linear systems theory can be used to design the control law. This is the tangent linearization approach. Nevertheless, since this control law is derived from an approximation of the system equations, it is therefore valid only locally around the configuration chosen to perform linearization. As, in our case, the initial conditions may be far away from the reference path, tangent linearization cannot be used.

Recent researches deal with obtaining -if possible-state and control variables changes which convert without any approximation non linear systems into linear ones (exact linearization approach). Unfortunately, mobile robots cannot be exactly linearized [START_REF] Zodiac | Theory of robot control[END_REF]. However, it has been proved that one can convert these non linear systems in almost linear systems, termed as chained form. We have used this chained form as it allows us to design the control law using, for a large part, linear systems theory.

The harvester model ( 1) can be converted into chained form. We first choose a new state vector: Y = ( y 1 y 2 y 3 ) T defined by the diffeomorphism:

Y = ( X) with (X) = ( z x tan ) T Moreover, a new control vector M = ( m 1 m 2 ) T is defined thanks to: M = ( U X ) with (U X ) = v cos ; v tan l cos 2 T (2)
These transformations are invertible as long as v 6 = 0 . The harvester chained model writes then as:

8

< :

_y 1 = m 1 _y 2 = y 3 m 1 _y 3 = m 2 (3)
In order to get a velocity independent control law, one can replace the time derivative in (3) by a derivation with respect to the curvilinear abscissa z. The normalized model becomes: with m 3 = m2 m1 (4) The lower part of model ( 4) is completely linear, so it can be brought to zero using the following control law:

m 3 = ;K d y 3 ; K p y 2 (K p K d ) 2 R +2 (5)
One can check, reporting (5) in [START_REF] Kelly | A partial analysis of the high speed autonomous navigation problem[END_REF], that one has:

y 00 2 + K d y 0 2 + K p y 2 = 0 (6)
which implies that both x and converge to zero. As the above error dynamics is expressed with respect to z, the resulting trajectories are velocity independent. Reporting (5) in ( 2), the real control is:

= arctan((K d tan + K p x)l cos 3 ) (7)
Unfortunately, this control law did not prevent from actuator saturation. We have therefore saturated m 3 (and thus ) using a sigmoid. The stability is then preserved [START_REF] Sussmann | A general result on the stabilization of linear systems using bounded controls[END_REF].

The new expression of the control law becomes:

(x ) = arctan K l cos 3

This control law can be saturated to any arbitrary value max by tuning K.

HEADING ESTIMATION.

The main problem we had face was the heading estimation. The only information available from a single antenna CP-DGPS receiver are:

-the 3D position of the antenna -the 3D velocity vector of the antenna

The control law makes use of both lateral deviation and heading of the vehicle. We present two methods to estimate the heading thanks to the later information. We first planed to estimate from raw velocity measurements. After thorough study of experimental results, we investigated the use of a Kalman state reconstructor.

VELOCITY BASED APPROACH

First of all, one must notice that one need a relative heading, i.e. relative with respect to the reference path. Moreover, under the previous pure rolling and non slipping assumptions, one can infer the heading thanks to the velocity vector ; ! V . And last, as the ground is supposed to be almost flat, a two dimensional vector is enough. According to the GPS receiver manufacturer, raw velocity are computed thanks to Doppler measurements.

Open loop experiments have been conducted on the combine harvester (figure 2) while the thresher was running. The driver followed a straight line on the ground, insuring zeroed experimental heading. We checked the estimated heading at various velocities. The estimated heading mean and standard deviation from the mean are tabulated at four different velocities (table 1). One can notice that the standard deviation from the mean decreases as velocity increases. Fortunately, this heading is almost unbiased. velocity (km:h ;1 ) 2.5 5.2 7. 3 9.3 (degrees) 0.13 -0.25 -0.14 0.15 (degrees)

KALMAN STATE RECONSTRUCTOR APPROACH

As this approach led to a noisy heading, we decided to design another heading estimator. The control law will remain unchanged. Two solutions among many can be proposed. On one hand, one can smooth raw velocity measurements using a Kalman filter. This is a signal processing approach. On the other hand, one can use a state reconstructor. This is a control approach.

Once the combine harvester has been discretized, the velocity disappear, and one can use a Kalman state reconstructor based upon this model. The whole state vehicle X = (x ) T can be reconstructed in this way. We have chosen the second approach as it seems easier to justify from a control point of view.

First of all, we must carefully state the purpose of this second approach. It was aimed at estimating the heading while reducing heading noise. This is the reason why we did not thoroughly developed the non linear and velocity independent model. We just wanted to compare both methods. In this paper, we will use an approximated model for the Kalman reconstructor, the tangent linearized of model ( 1).

We then transform the continuous model (1) into discrete time (at sampling period T):

X k+1 = A d X k + B d k y k = C X k (9)
with A d = 1 vT 0 1 , B d = ;v 2 T 2 2l ;v T l T and C = ; 1 0 .

Using the following Kalman recontructor [START_REF] Novel | Commande linaire des systèmes dynamiques[END_REF]:

( X k+1 = A d b X k + B d k b X k+1 = X k+1 + L(y k+1 ; CX k+1 ) (10)
One can use b X instead of X. Vector L as been computed

for a 8km=hvelocity, assuming sensor and model noise are known. We used the standard deviation from mean of the measured lateral deviation for sensor noise. Moreover, we assumed the model noise could be considered as a control noise. Both are supposed to have a gaussian distribution.

EXPERIMENTAL RESULTS

All the trials have been carried out with a Dassault-Sercel, dual frequency GPS 5002 system. This realtime kinematic carrier-phase differential GPS outputs data (position and Doppler based velocity) at 10 Hz. The law was running on a laptop computer. The guidance system has been implemented and succesfully tested on a CLAAS Dominator combine-harvester. All the tests have been conducted on an almost flat ground.

VELOCITY BASED EXPERIMENTS

During all the experiments, the whole state vector X was constructed from the GPS data as mentioned above. We proposed an experimental setup to check the velocity independence property of the control law. The closed loop harvester has been tested with velocities ranging from 4 km/h to 16 km/h. Although 16 km/h is not realistic for a combine harvester in farming applications, it allowed us to validate this theoretical property. One can notice on figure 3 the harvester follows the reference path. Standard deviation from the mean of the lateral deviation is lower than 5 cm, which is a very low value. As a matter of fact, one must keep in mind the measured lateral deviation only reflects the antenna lateral position. The control point of the farm vehicle is about 3.5 meters below the antenna.

One can infer this approach proved to be efficient, even though is embedded in noise. Unfortunately, the control law is mostly related to the vehicle heading, so the computed is also noisy. From an experimental point of view, this leads to a very noisy and changing . The low level system, including the valves, are strongly actuated. We could sum up these notes by: -the control law has nice theoretical and practical properties -the estimated heading is too noisy

KALMAN STATE RECONSTRUCTOR EXPERIMENTS

The heading is now estimated thanks to the Kalman reconstructor. The same non linear control law is still used.

First of all, one can notice reconstructed heading (see figure 4) is far smoother (and thus realistic with respect to the vehicle dynamic). Moreover, the control is also smoother (figure 5). And last, the overall results (the cartesian trajectories) are similar for both estimators (figure 6).

The control is also smoother, insuring a more "comfortable" behavior of the vehicle. The standard deviation from mean of the lateral deviation is about the same, i.e. lower than 3.5 cm at the antenna location. The whole system is not velocity independent any more. It has also lost some of its non linear properties. As we mentioned earlier, this approach was a first step aimed at reducing the heading noise. One can think about a velocity independent Kalman state reconstructor relying, for instance, on equations 4. A non linear, bounded control law has been presented. Its velocity independence property is particularly useful in agriculture. Two heading estimation methods have been proposed and thoroughly tested. A simple one, based upon CP-DGPS velocity measurements, proved to be efficient. A control approach, relying upon a Kalman state recontructor, showed nice lowpass filtering properties.

Further work has to be done to keep the reconstructor velocity independent as well as non linear. Moreover, one has to take into account for sloppy and sliding ground.

Figure 1 :

 1 Figure 1: Kinematic model of the harverster

8

 8

Figure 2 :

 2 Figure 2: Combine harvester and base station

Figure 3 :

 3 Figure 3: Closed loop system results at various velocities

Figure 4 :

 4 Figure 4: Kalman and velocity based heading

Figure 5 :

 5 Figure 5: Control variable for both Kalman and velocity heading estimators at 8 km/h

Figure 6 :

 6 Figure 6: Step response for both Kalman and velocity heading estimators at 8 km/h

Table 1 :

 1 Open loop velocity based measurements

	3.3	1.6	1.1	1.1


Lionel Cordesses
email: lionel.cordesses@lasmea.univ-bpclermont.fr

Benoît Thuilot

B . T h uilot Philippe Martinet

Michel Berducat
email: michel.berducat@cemagref.fr

Michel Berducat Gps-Based

Ieee Student

GPS-Based Control of a Land Vehicle

Keywords: GPS sensor, mobile robot, non linear robot control, localization

de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

INTRODUCTION TO AUTOMATIC FARM VEHICLE GUIDANCE

Most of the agricultural tasks rely on an accurate vehicle guidance, from the seeding to the harvesting of large areas. The driver -a human being-simultaneously trims various implements according to many factors (crop density, h umidity...)

The need for automatic vehicle guidance systems seems obvious on a harvester: the driver would only have to nely tune di erent functions of the machine. The guidance system would achieve a very accurate positioning, thus insuring neither overlapping nor missing areas. Another eld of interest for such a system would be the precise positioning of fertilizers on crops. Many situations could be reported. Most of them could be classied as two categories. The rst one is a "previously-recorded" pathfollowing task. The implement or machine must follow a previously recorded three dimensional trajectory.

In the second one, the implement o r m a c hine must follow a new curve. This new reference is computed from the last passage plus an o set (the tool length for instance). We could also mention new possibilities, such as optimal attack point search, or automatic half-turn for driver assistance.

A recent technological development allows accurate three dimensional (3D) positioning of the vehicle in a eld without the need for buried cables, eld-installed beacons or video sensors: the Global Positioning Systems (GPS). Today, ow control devices are coupled to a GPS to produce a yield map. It allows farmers to adjust seed, pesticide, and fertilizer to each eld location. This sensor also allows the design and implementation of an absolute vehicle guidance system with the availability o f a v ery accurate positioning system (about one centimeter standard deviation from the mean). This technology can be used in special operations, in which the vision system is unable to proceed, for instance, in a spraying or fertilizing operation with no visible markers such as boom wheel tracks or foam marks. Researches have been carried out in this area, using ber optic gyroscopes (FOG) and GPS 4]. Promising results have been reported where an " all-GPS " solution has been preferred 6].

First of all, we will describe the information required to achieve l i n e f o l l o wing control of a farm vehicle. We will then focus on GPS receivers, and will relate their performances to the control task.

After introducing with the kinematic model of the harvester, a non linear control law will be derived.

And last, we will discuss the control results gathered during the rst experiments carried out on the harvester.

2. GPS CONTROL OF FARM VEHICLES.

Overview of the control system

One can describe the pose of the vehicle by its position and its orientation. This means a six dimensional vector (a 3D position and a 3 D orientation both lead to three dimensional vectors).

A general purpose farm vehicle guidance system would thus be aimed at controlling the vehicle with respect to this reference. We plan to develop a 3 D c o n trol law in near future. But, in the scope of this paper, we will only consider the case of a two dimensional world. In the sequel, we will describe the position of the farm vehicle by its two coordinates in a horizontal plane. The only attitude parameter will be the heading of the farm vehicle. Further description of the vehicle modeling will be presented in the following sections. The purpose of any closed-loop system is to ensure convergence of one or more parameters. In our case, a path following problem, the reference path is a straight line. The frame W Z w X w ] T has been ch o s e n s o t h a t the reference is the axis W Z w ].

Figure 1. purpose of the vehicle guidance system The closed-loop system we have developed is therefore aimed at zeroing both the lateral deviation (x) and the heading ( ) (see Figure 1). Now, let us consider the physical information needed to proceed.

First of all, one needs the equations of the reference path. This information is up to the user. It can either be a straight line on a map (our current choice) or a curved path following the border of a eld. The accurate position of the vehicle -of a p o i n t o f t h e v ehicle-is the second information. And last, the servoing scheme makes use of the orientation of the vehicle, the heading previously mentioned.

We are going to present t h e sensor we h a ve c hosen, and explain how we can derive all these information using the GPS receiver as the only1 exteroceptive sensor.

2.2 GPS receiver as the main sensor. It is either located on Earth at a known location or on a geostationary satellite. The moving unit corrects its own estimated position using updated information from the base station. The average standard deviation from the mean for such a system is about one meter. The accuracy of di erential GPS is su cient for most agricultural mapping applications 1]. And nowadays, many farm vehicles are shipped with embedded di erential GPS receivers that record yield maps.

Although both systems (absolute GPS and differential GPS) use ranging signals from satellites, another kind of information can be used to increase localization precision. Di erential receivers can also take into account for the phase of the received signal, thus allowing a one centimeter di erential positioning. As these receivers work in real-time (for instance, at 10 Hz) with a relatively low latency (about 0.1 s), their use in real-time control of farm vehicles is possible. Various implementations of tractor guidance system have been presented in the last years, some relying upon Fiber Optic Gyroscope (FOG) 5] for orientation estimation, other on GPS-based attitude determination systems 2 3]. We have c hosen to use a single GPS to perform closed-loop control of the farm vehicle. Thus, the only information available from the receiver are :

-the 3D position of the antenna -the 3D velocity v ector of the antenna Thanks to the latter information and an hypothesis on the movement, one can estimate a raw global orientation of the vehicle, or an orientation relative to the reference path. The reference used in our system is a straight line de ned in the Lambert II reference coordinates system. Lambert is the French geographic reference coordinates system. We have designed a control law based upon the kinematic model of the harvester. We are rst going to give some results about this kinematic model. And then we will introduce the choices we made to derive the control law.

NON LINEAR CONTROL LAW DESIGN.

Kinematic model of the harvester.

We used the kinematic model of the harvester. From a practical point of view, the harvester can be considered as a rear wheel bicycle model. The theoretical description can be found in 2]. The con guration of the harvester can be described without ambiguity b y the triplet X = ( z x ) T , with :

-(z x ) : coordinates of the vehicle front axle center (denoted as O on Figure 3) in the reference frame W Z w X w ], -: vehicle heading. More precisely, is de ned as the orientation of the vehicle axle with respect to W Z w ], see also Figure 3.

2 using several GPS antennas.

Two c o n trol variables are available, namely U = (v ) T , w i t h : v : linear velocity at point O (the control variable is actually the rotation velocity of the front wheels, from which the value of v can be inferred). -: o r i e n tation of the rear wheels (assumed to be superposed, see Figure 3). The vehicle kinematic equations are derived according to two assumptions: pure rolling & nonslipping assumptions, and rigid body assumptions. The former imposes that the linear velocity vector at point O is directed along the vehicle axle. The latter implies that an instantaneous rotation center exists (ICR). Combining these two results, we infer that it is located on the wheels axle. When the vehicle movement is a translation, this ICR moves towards in nity.

_ z = v cos _ x = v sin _ ; v tan L (1)

Non linear control law.

The objective of the control law we designed is to achieve path following under the simplifying assumption: the harvester linear velocity v is assumed to be constant, and the reference path is a straight line, as stated above. These assumptions are those of our very rst experiments, as reported in the next section. Nevertheless, the design of the control law is based upon general results in Automatics, namely chained systems theory, see for instance 8]. So, one can extend the control law presented in this paper to more general path following problem. Control laws could be derived from rst order development of the kinematic model equations. The non linear model is then approximated by a linear one, and the linear systems theory can be used to design the control law. This is the tangent linearization approach. Nevertheless, since this control law is derived from an approximation of the system equations, it is therefore valid only locally around the con guration chosen to perform linearization. As, in our case, the initial conditions may b e f a r a way from the reference path, tangent linearization cannot be used. Recent researches deal with obtaining -if possiblestate and control variables changes which c o n vert without any approximation non linear systems into linear ones (exact linearization approach). Unfortunately, mobile robots cannot be exactly linearized 10]. However, it has been proved that one can convert these non linear systems in almost linear systems, termed as chained form. We h a ve used this chained form as it allows us to design the control law using, for a large part, linear systems theory. The harvester model (1) can be converted into chained form using the following state di eomorphism and change of control variables :

Y = 0 @ y 1 y 2 y 3 1 A = ( X ) = 0 @ z x tan 1 A (2) W = w 1 w 2 = ( U ) = 0 @ v cos ; 1 L cos 2 v tan 1 A (3)
These transformations are invertible as long as v 6 = 0. The harvester chained model writes then as :

< :

_ y 1 = w 1 _ y 2 = y 3 w 1 _ y 3 = w 2 [START_REF] Elkaim | \System identi cation and robust control of farm vehicles using CDGPS[END_REF] In order to get a velocity independent control law, one can replace the time derivative in (4) by a derivation with respect to z, the curvilinear abscissa along W Z w ]. The normalized model looks like : The lower part of model ( 5) is completely linear, so it can be brought to zero using the following control law : w 3 = ;K d y 3 ; K p y 2 (K p K d ) 2 R +2 (6) One can check, reporting (6) in [START_REF] Nagasaka | \Automated operation in paddy elds with a ber optic gyro sensor and GPS[END_REF], that one has : y 00 2 + K d y 0 2 + K p y 2 = 0 [START_REF] O'connor | \Automatic steering of a farm vehicle using GPS[END_REF] which implies that both x and converge to zero.

As the above error dynamics is expressed with respect to z, the resulting trajectories are velocity independent. Reporting ( 6) in ( 3), the real control is : = arctan((K d tan + K p x)L cos 3 ) (8)

Unfortunately, this control law did not prevent from actuator saturation. We h a ve therefore saturated w 3 (and thus ) using a sigmoid. The stability is preserved 9]. The new expression of the control law i s :

(x ) = a r c t a n K L cos 3 1;e ;k(K d tan +Kp x) 1+e ;k(K d tan +Kp x) [START_REF] Samson | \Control of chained systems Application to path following and timevarying point stabilization of mobile robots[END_REF] This control law can be saturated to any arbitrary max by tuning K.

4. FIRST RESULTS.

4.1 Real-time implementation of the control law on a harvester.

GPS receiver. All the trials have been carried

out with a Dassault-Sercel, dual-frequency Aquarius 5002 system. This is a real-time kinematic carrier-phase di erential GPS. Its short initialization time (lower than 30 seconds), its high performance radio link, allow its use in agricultural vehicles. The system produces measurements at 10 Hz. It also computes the 3D velocity v ector thanks to Doppler measurements on both GPS frequencies. The reference station transmits di erential corrections every second. The modulation relies upon a Gaussian Mean Shift Keying (GMSK) and the bit rate is 4800 bits/s.

Hardware controller. The control law is implemented on a laptop personal computer (PC1). Three dimensional positions and velocities are received through a serial port (9600 baud). The computer performs various tasks :

-coordinates transformation (WGS841 to Lam-bertII), -orientation estimation, -lateral deviation computation, -control reckoning of the rear wheels angle. The latter is then transmitted on a serial link to the second computer (PC2) (Figure 4). This hardware (based upon a 486 microprocessor) is totally devoted to the wheels servoing task. The steering valves are controlled thanks to a Pulse Width Modulation (PWM) signal.

Figure 4. harvester guidance controller

From a control point of view, the whole system is described below (Figure 5). Figure 5. harvester closed-loop system This system has been implemented and successfully tested on a CLAAS Dominator harvester.

Experimental results.

Experiments have been carried out on a at ground. The reference was a straight line. Its geometrical parameters were previously determined using the same GPS. The vehicle velocity has been set to a constant of 8 km/h. Once the nominal velocity w as reached, the GPS-based controller was switched on. Many tests have been performed, always producing the same kind of results. One example is presented below (Figure 6). The upper curve shows the lateral deviation from the reference path versus time. The lower one plots the estimated orientation as computed from speed data, and as used by the controller. One can notice that this orientation is corrupted by noise... First of all, data measured by the GPS receiver are the 3D position and velocity of the antenna. The velocity v ector is quite noisy. Moreover, although the phase center of the antenna and the control point of the harvester are on the same vertical line, their altitudes are di erent (Figure 7).

GPS antenna

Vehicle control point height roll Figure 7. roll e ect on the antenna position A small roll variation produces relatively important velocity a n d position changes. For the time being, the attitude algorithm does not take into account for this behavior. A thorough study -a statistical and frequency analysis of these vectors -and digital signal processing may reduce this unwanted 'noise'. Although the lateral deviation decreases, a bias still remains (less than 15 cm). This bias could be explained in a di erent way. As described earlier (Figure 4), the control system relies upon two closed-loops. The second one -performing the wheel servoing task-has to be nely tuned. Once this setup operation has been realized, a zero control input produces a zero heading ( =0). A small o set in this loop along with a zero input (con-trol=0) results in a bias in the complete closedloop system ( 6 = 0). During the experiments, the inner closed-loop tuning may h a ve drift, which may explain that a biais still remains in the rear wheels servoing system. We are now working on the automatic tuning of the inner closed loop. We previously mentioned our general objective: the control of farm vehicles on an irregular ground. One can think about a more general approach, based upon 3D information instead of a 2D position. New di culties appear: for instance, one need to accurately de ne a 3D reference on a 3D ground. This leads to the availability of a three dimensional map of the eld. We tried to produce such 3D maps, thanks to the same GPS receiver. The embedded system, made of a computer and a GPS unit, was set up so as to record the raw positions of the antenna. One can notice that this data recording can be automatically handled by the software, while the vehicle performs agricultural tasks. Moreover, such an approach updates the 3D points, which i s an important feature for precision agriculture. The harvester swept the eld many times under various conditions :

-weather -GPS constellation The raw data allow sequential access to the (x y z) T triplets. These information have been resampled at a constant stride to ease random retrieving of the height in an application, for any (x y) coordinates. Under the hypothesis of smooth height c hanges, one can infer an estimated elevation map without roll measurements. An example of a rough elevation map, produced thanks to the resampled data, is shown below(Figure 8).

CONCLUSION

The aim of this paper was to study and to implement a GPS-based farm vehicle controller, without any orientation sensor. A non linear control law has been developed using the kinematic model of the harvester. This control has been implemented and tested in real-time on a harvester. The very rst tests have been conducted on this system on a at ground, producing promising results, if not perfect ones. Further research has to be done. One can mention digital signal processing of the raw estimated orientation. An extension of the control law to a curved path is also under development. Moreover, we plan to modify the control law to perform servoing tasks on an irregular ground (a 3D world).

A

  brief explanation of the Global Positioning System 7] will lead us to choose the so-called Real-Time Kinematic system (RTK). GPS is the acronym for Global Positioning System. It is an American, military localization and time-transfer system. It relies upon a constellation of twentyfour satellites orbiting the Earth. The three dimensional position of an antenna can be estimated thanks to range measurements from satellites simultaneously in view. The accuracy a civil user can expect is about one hundred meters, due to the Department of Defense (DOD) degradation of the civilian ranging signal. Three satellites are needed to solve for equations and get a 3D position. As the local clock o set of the receiver is usually unknown, a fourth satellite is required to determine this parameter. In order to lower the standard deviation from the mean of the 3D estimated position, one can use two receivers and di erential measurements. The rst receiver is the reference station (often called base station) (Figure2).

Figure 2 .

 2 Figure 2. di erential GPS

Figure 3 .

 3 Figure 3. kinematic model of the harverster One can now derive the kinematic equations of the harvester. One can notice that the kinematic model of the harvester is clearly non linear : 8 > < > :

Figure 6 .

 6 Figure 6. experimental results on the combine harvester

  the field (height is relative to the base station)

Figure 8 .

 8 Figure 8. Elevation map of the eld We plan to use such d a t a t o simulate a new servoing algorithm, using these 'real world' information.

A proprioceptive one is used in the wheels servoing loop.

Acknowledgments

The authors would like to thank several groups and individuals who help us during this preliminary work: both teams from Lasmea and Cemagref. We also bene t from technical advice and equipment from F. Peyret at LCPC.