In control engineering applications, the numerical solution of one of the fundamental matrix equations of linear control theory often causes a bottleneck for its successful realization. Here we will describe one such application, the automatic steering of a farm tractor, in which this situation occurs. By using a SLICOT subroutine, the problem is resolved, i.e., the used subroutine yields a numerical solution with sufficient accuracy and in due time.
Through the development of ever more cheap and reliable GPS (Global Positioning System) receivers, automatic steering of ground vehicles along prescribed trajectories has become an attractive research topic for several reasons: hazardous operations can be performed without risking human life, cars may be automatically piloted to the desired destination ("smart highways" -- an ongoing research project for several decades), maneuvering at high precision, etc.
One of the first fields of application are vehicles used for farming on the large fields of Northern America. As farm vehicles usually move at moderate speed and agricultural fields usually are ideal in order to operate GPS properly as nothing blocks the GPS signals, they are among the first ones for which such a technology becomes feasible for industrial application. We will describe a project realized by the GPS Lab at the Department of Aeronautics and Astronautics of Stanford University (USA). The project has been supported by Deere and Company and it is hoped that John Deere tractors equipped with the developed technology will soon go into production at Deere and Company.
The research team at Stanford has realized a control mechanism for automatic steering of a farm tractor. Though on first glimpse, this may not seem to be of major interest, there are several reasons why such a system may be desirable. On the large fields in the Midwest of the USA or Canada, tractor driving gets extremely boring. It is reported that drivers even fall asleep, causing significant damage by getting off track and thereby destroying many rows of crops or hoses for watering the fields. Even drivers awake may not be able to drive at necessary precision level to avoid crossing the watering hoses. As other trajectories than "back-and-forth, using U-turns" are difficult for manual drivers, automatic steering would make it possible to steer optimal patterns (e.g., spiral patterns).
GPS--based controllers might enable a single driver to operate a convoy of several tractors at the same time or it could allow farmers to operate during the night, through heavy dust or fog. While a tractor driving automatically could be controlled from an office, there are also other reasons to free the farmer from driving. On large fields usually the soil conditions and other factors vary. It is therefore desirable to adapt bedding, seeding, fertilizing, cultivating, and irrigation to these variations and thereby minimizing the use of herbicides and pesticides while maximizing the crop. The manual adaption of these tasks is facilitated if the farm vehicle is steered automatically. Eventually, these adaptions may even be executed automatically as well.
Ground position determination
The approach taken in this project is to first measure the field and record every obstacles to be avoided like, e.g., watering devices, and then to program the tractor to follow a prescribed path. As deviations from the path are unavoidable, a regulator using reference tracking needs to be implemented in order to keep the tractor "on track". Therefore the knowledge of the exact location of the driving tractor is required to regulate the driven trajectory. This has become possible by using GPS. A precision of about 100 yards as attained by normal civilian GPS receivers is of course not sufficient for the application described here. Therefore, a high precision GPS-based system, called Carrier Phase Differential GPS (CDGPS), has been used here. CDGPS requires ground based local transmitters, called pseudolites. With this technology, it is possible to obtain position and attitude at centimeter-level and 0.1 degree accuracy.
The research group at Stanford University has equipped the John Deere 7800 farm tractor shown above with such a CDGPS receiver. This has then been used for system identification and automatic control of the tractor. Here we will focus on the automatic control aspect. We will describe the model used to design the controller for the tractor in the next section.
Automatic control of a farm tractor
The state-space model used for simulating the tractor movement is derived from the nonlinear equations of motion. The desired trajectory is part of the prescribed path to be followed by the tractor. Linearization of the equations of motion and removing redundancies yields a continuous, fifth-order linear time-invariant (LTI) system in state-space form. For the closed-loop control of the tractor, a discrete-time linear-quadratic Gaussian (LQG) regulator is used consisting of a linear-quadratic optimal control with reference state tracking and a Kalman filter for estimating the states. The disturbances (sensor noise/process noise) were modeled based on experimental data. The conversion between the continuous plant dynamics and GPS on the one side and the discrete LQG regulator on the other side was performed assuming zero-order hold on the inputs. The control gains are obtained using the standard Riccati approach, i.e., via the stabilizing solution of the discrete-time algebraic Riccati equation (DARE). For satisfactory regulation results, a DARE has to be solved to high accuracy five times per second. This turns out to be the bottleneck for the realization of an automatic controlled farm tractor as all other necessary computations (matrix adds and multiplies, solution of linear systems, etc.) can be performed sufficiently fast on the available hardware. (The tractor is equipped with a 100MHz Pentium--PC.) In a first approach the control gains were calculated with MATLAB® using gain-scheduling on forward velocity. The computed gains were uploaded to the computer on board of the tractor. The controller then switched between various gains based on the velocity. Employing the SLICOT subroutine SB02MD, which provides an implementation of the Schur vector method for solving the DARE, it is now possible to compute the control gains on-line. The DARE is solved in roughly 5% of the 200msec sampling time which gives plenty of time for doing the other necessary calculations. Having the ability to solve the DARE in real time now means that one can use information from an on-line adaptive identification algorithm to actually improve the control going along. Before SB02MD was used, a fixed model had to be assumed and changing conditions could not be incorporated into the control law
The GPS-based control strategy described in this example can be used for other land vehicles, and, using a slightly more complex CDGPS, even for autolanding of planes. The application described here demonstrates how the use of robust numerical software provided in SLICOT can enable control engineers to realize innovative ideas and to make them available for production processes.
More details can be found in NICONET report 1999-2, and NICONET Newsletter 2.