1-s2.0-S0967066101000144-main

  • Upload
    hamhms

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

  • 7/31/2019 1-s2.0-S0967066101000144-main

    1/11

    * Corresponding author. Tel.: #358-9-5489-8780; fax: #358-9-

    5489-8782.

    E-mail address: hannu.makela@navitec." (H. MaKkelaK ).

    Control Engineering Practice 9 (2001) 573}583

    Development of a navigation and control system for an autonomousoutdoor vehicle in a steel plant

    Hannu MaKkelaK*, Thomas von Numers

    Navitec Systems Oy, Nikkarinkuja 5, 02600 Espoo, Finland

    Received 5 May 2000; accepted 20 December 2000

    Abstract

    This paper describes the navigation and control system for an autonomous guided outdoor vehicle (AGV) which is used to

    transport heavy steel slabs in a steel plant area. The vehicle has unconventional kinematics. It has six axles all pair wise steerable by

    three bogie structures. The weight of the machine is 17,000kg and its load may weigh up to 95,000 kg. The navigation is based on

    a fusion of dead reckoning and transponder positioning. The transponders are passive and are buried in the ground every 5 }10 m

    along the routes of the AGV. A wireless communication has been built to connect the vehicle control system and a remote control

    station. This article concentrates mainly on describing the navigation system including the kinematics and position control as well as

    the safety system and the remote control system. 2001 Elsevier science td. All rights reserved.

    Keywords: Autonomous vehicle; Gyroscopes; Kinematics; Navigation system; Position control; Position measurement; Transponder

    1. Introduction

    Inductive wire guidance has been the traditional navi-gation means for an autonomous guided outdoor ve-

    hicles (AGVs) in factories. The major drawback of this

    navigation method is that all changes in the routes re-

    quire moving or adding a wire to the desired path.

    Several other methods have been developed during the

    last two decades to simplify the change of the production

    layout and the routes in the factory.

    In more advanced methods positioning is typically

    based on active or passive arti"cial beacons or natural

    landmarks. Knowing the distance or direction to at least

    three known beacons makes it possible to calculate the

    position. For example (Tsumura, Fujiwara, & Hashi-moto, 1984) have introduced a positioning concept based

    on re#ective beacons. Commercial navigation systems

    based on this idea have been available for several years

    (NDC, 2001; Everett, 1995). The positioning may also

    rely on sonic waves (Kauppi, SeppaK , & Koskinen, 1992)

    or radio beacons. Also a millimeter-wave radar has been

    used to detect arti"cial beacons (Durrant-Whyte, 1996).

    Durrant-Whyte describes an experimental AGV system

    with resembling kinematics. The AGV has a steerable

    wheel at each of its corners. The paper gives the kin-ematic equations of the AGV and describes the position-

    ing system. In that case the dead reckoning has been

    supported by a position measurement system based on

    radar technology. The merit of this method is the immun-

    ity of positioning to environmental disturbances. As in

    this article the fusion of di!erent types of position

    measurements takes place using a Kalman "lter.

    Another method of using passive arti"cial beacons is

    to bury RF tags in the ground and detect them with

    special hardware. This method, where the vehicle navi-

    gates between the beacons relying on dead reckoning is

    often called free ranging on grid (FROG). At each beaconthe drift of dead reckoning may be corrected (Van Brus-

    sel, Van Helsdingen, & Machiels, 1988). Here, the merit

    of this method is the immunity of positioning to environ-

    mental disturbances and also the availability of proven

    commercial products.

    Natural landmarks have also aroused interest. For

    example, James Crowley, one of the pioneers of mobile

    robotics, studied world modeling and navigation in an

    unknown environment (Crowley, 1985). The modeling

    and navigation are based on distance measurement using

    ultrasonics.

    0967-0661/01/$- see front matter 2001 Elsevier Science Ltd. All rights reserved.PII: S 0 9 67 - 0 6 6 1 ( 0 1 ) 0 0 0 1 4 - 4

  • 7/31/2019 1-s2.0-S0967066101000144-main

    2/11

    Fig. 1. The AGV.

    Fig. 2. The AGV driven under a cassette and lifting the cassette.

    For outdoor navigation the GPS has been the choice

    for some years. With current technology one can get

    a position within a few centimeters of accuracy at the rate

    of at least 5 Hz. The major drawback of the real timekinematic GPS positioning is the relatively long startup

    time of the kinematic mode and especially the sensitivity

    of the system to occlusions. Positioning, for example, in

    a forest or close to buildings may be impossible.

    This paper describes the navigation and control sys-

    tem of a heavy outdoor vehicle, later called AGV (see

    Fig. 1). The system consists of three main parts. The

    remote control system is used to give new missions to the

    AGV, to monitor the operation of the AGV and to store

    the log data of the operation. The control system on

    board the AGV is both physically and conceptually

    divided into two parts. The navigation system is respon-

    sible for path handling, positioning, position control,obstacle avoidance and radio communication. The

    lowest level part of the control hierarchy is the motion

    control module which is the interface to the actuators

    and most of the sensors. The motion control module

    contains some safety features and the steering angle and

    speed controllers. The AGV may be driven not only

    automatically but also manually. In the manual mode it

    operates on the y-by-wire'-principle using the motion

    control module to read the joysticks and drive the

    machine.

    The machine operates 24 h/day. For an outdoor ap-

    plication with very high requirements of reliability andavailability one should choose such methods and compo-

    nents for navigation and control that are of proven

    technology and commercially available. Since the routes

    of the AGV may vary every now and then, the changes of

    routes must be quick and thus the traditional wire guid-

    ance was out of the question. In addition, the drawbacks

    of the GPS mentioned before made this option impos-

    sible. A laser based positioning system, which would have

    been commercially available, was considered to be too

    susceptible to the environmental conditions (rain, snow,

    dust, long bearing to the re#ectors). The "nal choice was

    a combination of a dead reckoning and beacon detection

    system. The dead reckoning here is based on measuring

    the direction of the vehicle body with a "ber optic gyro

    and the distance travelled with two odometers attached

    to two of the front wheels. The beacon system consists of

    an antenna on board the AGV, a position calculation

    unit and passive transponders buried into the ground

    along the routes every 5}10 m. When the antenna passesover a beacon the position calculation unit gives the

    transversal deviation of the beacon from the center line of

    the antenna. Thus, the position of the AGV relative to the

    beacon can be used to correct the drift of the dead

    reckoning position estimate. Although the intermediate

    distance of the beacons is relatively short the AGV has

    not to cross all of them. Small variations into the routes

    are possible as long as there is a beacon to be detected

    every 30 m.

    2. The application

    The AGV has been built for carrying heavy steel slabs

    (up to 95,000 kg) inside the steel plant area. The items are

    lifted by cranes onto cassettes that are then carried by

    the AGV to the next site in the process. Until now the

    cassettes have been transported by manually driven ter-

    minal tractors, which pull or push a translifter carrying

    the cassette. Both the manual translifter and the AGV are

    driven under the cassette to be transported. The con-

    struction of the machine is such that its body is lifted

    hydraulically about 30 cm to lift the cassette, which nor-

    mally stands with its legs on the ground (see Fig. 2). The

    sideways margin between the AGV's frame and the cas-sette is about$4 cm.

    The current route network of the AGV is according to

    Fig. 3. The distance from loading site to unloading site is

    about 500 m. There are six places available for the cas-

    settes to be loaded. The AGV can take any of them in

    a given sequence. The operator of the crane loads the

    cassettes with steel slabs. He has a terminal by which he

    informs the remote control system which cassette has

    been "lled. The operator also gives the destination area

    for the cassette. He tells the AGV to take the load to

    either of the two areas. It is up to the remote control

    system to decide to which of the free places in the given

    574 H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583

  • 7/31/2019 1-s2.0-S0967066101000144-main

    3/11

    Fig. 3. The route network of the AGV.

    Fig. 4. AGV structure, top view.

    area the cassette is taken. The remote control system alsogives the AGV an order to take on an empty cassette

    before returning to the loading site. If no work task is

    available the AGV moves to the waiting site near the

    loading area. If fueling, service or repair is needed, the

    AGV is able to drive automatically to the service site.

    3. Vehicle kinematics

    The kinematic equations of the AGV must be known

    in order to calculate proper control actions for its steer-

    ing to keep the machine on the path. A point called

    navigation point is selected on the vehicle body. Thenavigation point is actually the point that is controlled to

    move along the reference path. In principle, the position

    of the navigation point may be chosen freely but there are

    some factors, which should be taken into account. The

    mechanical structure of the AGV is such that the position

    of the navigation point has an e!ect on the stability of the

    position control and also on the dead reckoning posi-

    tioning. The navigation point was chosen to be in the

    middle of the rear axles at the center line of the vehicle

    body since this point guarantees a stable position control

    for both reversing and driving forwards. Also, the kin-

    ematic equations for this point are relatively simple. Thenavigation point is constant and does not depend on the

    driving direction.

    The kinematics of the AGV is very unconventional.

    The AGV has two front axles with four wheels and four

    rear axles with eight wheels (see Fig. 4). The number of

    wheels is high and the wheels are wide because the

    pressure of a wheel against the ground should be within

    reasonable limits even with the maximum load. All the

    front wheels are equipped with a hydraulic traction mo-

    tor. The axles are attached to a common bogie, which

    may be rotated relative to the body of the AGV. The

    AGV is steered by turning the bogie along with the two

    front axles, not by turning the separate wheels. Since thelength of the vehicle body is more than 15 m, its steerabil-

    ity is quite poor. The maximum steering angle of the front

    wheels is 453 but still the turning radius (rin Fig. 4) would

    be more than 17 m when turning only the front wheels.

    The rear wheels are also steerable to reduce the steering

    radius and especially to prevent the rear wheels from

    sliding sideways when turning. Both two pairs of rear

    axles are attached to turning plates, which may be turned

    independently. Due to the restrictions of the mechanical

    construction the rear axles may only be turned 153. This

    reduces the minimum turning radius to 14 m.

    The dead reckoning positioning based solely on gyro

    and odometers would require that the AGV moves in thedirection of its frame. However, the steering system en-

    ables the AGV to move sideways when turning the rear

    axles in the same direction. Since the gyro does not

    measure the direction of motion but the direction of the

    vehicle body the dead reckoning positioning does not

    detect the sideways motion. For this reason and also for

    steering angle control, all the steerable axles are equipped

    with sensors measuring the steering angle. The dead

    reckoning equations take this motion into account.

    The selected steering system is not easy to model

    accurately. However, the main objectives of the mechan-

    ical design have been the simplicity and reliability. Inaddition, the same steering system is of proven techno-

    logy since it is in use in the corresponding manual ma-

    chines. The kinematics may be simpli"ed by replacing the

    four rear axles by two and by replacing the two front

    axles with one. Each of the imaginary axles is in the

    middle of the two axles which they represent (see Fig. 5a).

    For each turning radius, the angles for the wheel axles

    are calculated as follows:

    cPCD"

    1

    rPCD

    , (1)

    H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583 575

  • 7/31/2019 1-s2.0-S0967066101000144-main

    4/11

    Fig. 5. (a) Simpli"ed kinematics, (b) sideways motion calculation.

    "arctan (cPCD

    r

    ), (2)

    "arctan (cPCD

    r

    ), (3)

    where rPCD

    is the reference turning radius, cPCD

    is reference

    curvature of the path, r

    , r

    are distances of the rear and

    front axles to the navigation point, and , are streering

    angles of the front and middle axles.

    In an ideal case the magnitude of the turning angle of

    the middle axle would be the same as that for the rear

    axle but with the opposite sign ("!). In practice, the

    steering controllers for the axles are not ideal and the

    angle does not necessarily correspond to the front angle

    . In this case the navigation point is shifted from its

    nominal position and the angle can be calculated as

    follows:

    rP"

    (lDK

    sin(/4#))cos

    sin(!), (4)

    rKB"r

    Ptan, (5)

    rPCB"rKB!(r#r), (6)

    "arctanrPCBr, (7)

    where r

    is the distance of the middle axle to the navi-

    gation point, is streering angle of the middle axle, rP

    is

    real curvature relative to the shifted navigation point,

    rKB

    is real middle axle distance (from shifted navigation

    point), rPCB

    is real rear axle distance (from shifted navi-

    gation point), and lDK

    is distance between front and

    middle axles.

    The sideways motion of the AGV body, which cannot

    be detected by the gyro, is calculated as follows: (see

    Fig. 5b):

    sRP?LQ"s sin , (8)

    sJMLE"s cos, (9)

    smRP?LQ"

    sJMLE

    (tan #tan)

    2, (10)

    hL"arctan

    sRP?L

    sJMLE

    , (11)s

    L"(s

    RP?L#s

    JMLE, (12)

    wheresRP?LQ

    is the transversal motion of the middle point

    of the front axle, sJMLE

    the longitudinal motion of the

    middle point of the front axle, smRP?LQ

    the transversal

    motion of the middle point of the middle axle, hL

    the

    corrective term for the direction of motion of the navi-

    gation point, and sL

    the real motion increment of the

    navigation point.Thus, the result of Eqs. (11) and (12) gives the speed

    vector for the navigation point to be used in the dead

    reckoning calculations.

    4. Vehicle position measuring system

    The basis of the navigation system is dead reckoning.

    It calculates the position and heading of the vehicle

    relative to the starting point by integrating the speed

    vector. The speed vector is obtained by measuring the

    576 H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583

  • 7/31/2019 1-s2.0-S0967066101000144-main

    5/11

    distance travelled and the direction of motion. As de-

    scribed in the previous chapter the steering angles must

    also be measured to calculate the sideways motion which

    cannot be detected by the gyro.

    The distance travelled by the vehicle is measured using

    optical encoders attached to two of the front wheels of

    the AGV. The measurement is simple and reliable. The

    error is usually quite small, typically less than 0.5% of thedistance. To achieve this the tire wear must be compen-

    sated using the known position of the transponders. The

    encoders are attached to the wheels on the same axle and

    the distance travelled in the direction of the wheels is the

    mean of the values given by the encoders. In practice, the

    measurement is less accurate in curves than when driving

    straight. The accuracy in curves depends especially on

    the friction of the ground. This is due to the mechanical

    structure of the steering system of the front wheels which

    forces the tires to slide sideways when turning.

    The orientation of the body of the AGV is measured by

    a"

    ber optic gyro. Its drift is about 303

    /h after an initia-lization time of 10 s. The gyro yields only the angular

    rotation rate which has to be integrated to obtain the

    orientation. To "x the orientation to the co-ordinate

    system in use one has to initialize the heading and the

    position. This is achieved by an external beacon

    system.

    In addition to position and heading initialization, the

    external beacons are also used to correct the accumu-

    lated error of the dead reckoning. The principle is that

    the position of the vehicle is measured relative to a "xed

    known point which gives a new accurate position. The

    measurement of the direction of motion can be corrected

    when the vehicle has travelled through two beacons,since the measured direction of motion can be compared

    to the vector from beacon 1 to beacon 2. This procedure

    takes place in the initialization phase where the AGV is

    manually driven through two beacons.

    In outdoor conditions the beacons must endure harsh

    environmental stress. They must be passive, small, inex-

    pensive, service free and robust. There exists at least one

    type of beacon ful"lling these needs: passive LC trans-

    ponders, which will be activated and detected using an

    antenna on board the AGV.

    The transponder detection system chosen for the AGV

    can detect transponders at a height of 0.4 m maximum,while the nominal reading height is 0.2 m. A transponder

    being passed is activated by an electromagnetic "eld

    generated by the transponder antenna on board the

    AGV. The transponder then emits a counter "eld which

    is detected by the antenna. Identity information is in-

    cluded in the signal of the transponders. A separate

    position calculation unit calculates the sideways devi-

    ation of the transponder at the moment the center line of

    the antenna passes the transponder. The transponder

    system is interfaced to the navigation computer via a ser-

    ial line.

    The accuracy of the beacon detection system is in

    practice about 2 cm both in the sideways direction and in

    the direction of motion. The measurement is combined

    with the position estimate of the dead reckoning using

    the following equations (Rintanen, MaKkelaK , Koskinen,

    Puputti, & Ojala, 1996):

    xLR

    (t)"f(xL(t), u(t))#K(t), (13)

    yL(t)"g(xL(t)). (14)

    The state vector

    x(

    x"y(

    x (15)

    y

    x

    y

    consists of two separate dead-reckoning displacement

    and heading estimators. The "rst (x(y

    () is based on

    the cumulative heading change provided by the gyro.

    The purpose of this estimate is to compensate for the

    gyro drift. The second estimate (x y) is based on the

    drift- and o!set-compensated heading#

    .

    is the

    sum of the vehicle initial heading and gyro drift and

    would be constant during the motion for an ideal gyro.

    (x

    y

    ) are the sums of the vehicle initial position and

    dead-reckoning drift. (x

    y

    ) would be constant for an

    ideal dead-reckoning navigator. The input-, output- and

    innovation-vectors are

    u"[ ]2, (16)

    y"[X > ]2, (17)

    "[x

    y

    ]2, (18)

    where is the turning rate measured by the gyro, is the

    speed of the vehicle, [X > ] is the estimated posture of

    the vehicle and x

    y

    are the measured errors of

    initial heading and position. The system equations are

    g(x)"

    x#x

    x#x

    x#x

    , (19)

    u

    0u

    cos x

    u

    sin x (20)f(x, u)"

    u

    cos(x#x

    )

    ,

    u

    sin(x#x

    )

    0

    0

    H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583 577

  • 7/31/2019 1-s2.0-S0967066101000144-main

    6/11

  • 7/31/2019 1-s2.0-S0967066101000144-main

    7/11

    Fig. 7. Sideways motion of the navigation point.

    coe$cient. Fig. 6a shows the test route where the trans-

    ponders are marked with x. The installation accuracy of

    the beacons was better than$1 cm. Fig. 6b illustrates

    the compensated dead reckoning drift (x(

    , x(

    ) and Fig. 6c

    the compensated gyro drift. The compensation is cal-

    culated at each detected beacon according to the Eqs.

    (13)}(25). The position drift remains in the range of

    $1 m and the heading error in the range of$1.53.Thus, the drift of dead reckoning is less than 0.2% of the

    distance travelled, being even smaller than what was

    expected.

    5. Position control system

    5.1. The route builder

    Since there are several possible routes from any cas-

    sette position at the loading site to any position at the

    unloading site it would be impractical to store all thealternative routes separately. Instead all crossing points

    and end points of the route network are depicted as

    nodes, each node having a distinctive identi"cation num-

    ber. A route segment is a sequence ofx- and y-points from

    one node to another. Thus, any practical route may be

    obtained by combining proper segments.

    All the route segments to be driven are stored into the

    memory of the VCS. A segment contains not only the

    co-ordinates of each point but also the reference speed at

    these points. After "nishing a task the next target node

    for the vehicle is given by the remote control station via

    radio. Since the navigation system knows the current

    position of the AGV it can build a route to the givendestination by connecting appropriate route segments

    using a special search algorithm. If there were several

    alternative routes available the search algorithm would

    take the shortest one. The algorithm is based on the idea

    introduced by Dijkstra (1959).

    5.2. The position controller

    Originally the position controller had two modes of

    driving the AGV. The docking mode was used only when

    driving under a cassette. The normal mode was used at

    other times. The sideways accuracy requirement for thedocking mode is about$4 cm based on the dimensions

    of the cassettes and the AGV. Elsewhere the accuracy

    requirement is such that the transponder antenna must

    detect the next transponder with some safety margin. In

    practice, the position control accuracy including the

    position uncertainty must be within$10 cm. The di!er-

    ence between the modes was that the sideways motion of

    the vehicle body was allowed in docking mode while not

    in normal mode. Sideways motion means a more e$cient

    way of moving the navigation point sideways by turning

    the rear wheels partly independently of the front wheels

    (see Fig. 7). In this case the navigation point of the AGV

    does not move in the direction of the frame as was

    explained in Section 3.The position control of the normal mode calculated

    the reference curvature for a "xed navigation point. The

    "nal reference curvature was based on the reference cur-

    vature of the trajectory, the current position error and

    the heading error. The idea was to correct the heading

    error and position error by steering the front wheels only.

    The steering angle of the front wheels was calculated

    based on the reference curvature and the angles of the

    rear wheels were calculated such that all the axles had the

    same center point of turning (see Fig. 4). Practical tests

    proved that the normal mode did not work well. Because

    of the length of the vehicle body, only slight sideways

    position errors caused remarkably large steering maneu-vers of the front wheels. Since the transponder antenna is

    in the middle of the frame of the AGV, the wide sideways

    motion of the front part caused some transponders to be

    missed. Due to these di$culties the normal mode of

    position control was abandoned and the sideways cor-

    rection using the rear wheels independently from the

    front wheels was allowed.

    The position controller initially developed for docking

    under a cassette was taken into use for all parts of the

    routes. The control method resembles the one described

    in Durrant-Whyte (1996). Durrant-Whyte corrects the

    position error by sideway motion of the AGV, i.e. turningthe rear and front wheels the same amount to the same

    direction and the heading error by turning the rear and

    front wheels the same amount to the opposite direction.

    Also in this case the position controller actually consists

    of two separate controllers, the position controller and

    the heading controller. The heading error is de"ned ac-

    cording to Fig. 8. To correct the current heading error,

    a fraction of the error is added to the current curvature

    which is based on the shape of the trajectory:

    cPCD"c

    RP#K

    FeF

    . (26)

    H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583 579

  • 7/31/2019 1-s2.0-S0967066101000144-main

    8/11

    Fig. 10. Sensors for driving under a cassette.

    Fig. 8. De"

    nition of the heading error. Fig. 9. De"

    nition of the current position error.

    Eqs. (1)}(7) are now used to calculate the proper angles

    for steering. The reference angle is used as such to

    correct the heading error but an additional position

    correction term is added to the steering angle of the rear

    axles:

    "#K@eQ , (27)

    "#KAeQ , (28)

    where eQ

    is the position error in the sideways direction

    and is calculated as follows (see Fig. 9):

    A"!sin hP, (29)

    B"cos hP, (30)

    C"!AxP!By

    P, (31)

    eQ"Ax#By#C. (32)

    5.3. Driving under a cassette

    Since the sideways error margin is very small when

    driving under a cassette the dead reckoning accuracy was

    not su$cient to guarantee that the AGV would never hit

    the cassette. Some extra sensors were needed to detect the

    position of a cassette relative to the AGV (see Fig. 10).

    These sensors were

    E a laser scanner at the rear of the AGV,

    E inductive switches at the rear corners of the frame of

    the AGV,

    E ultrasonic distance sensors in the middle of the frame,

    E an inductive switch at the front of the frame.

    The sensors are used as follows. When the AGV ap-

    proaches a cassette the rear laser scanner, which is used

    also for safety purposes, is put into a mode where it sends

    180 distance measurements, one for every degree. Since

    the approximate position of the cassette and the AGV are

    known, an object in an interesting area is interpreted as

    a potential leg of the cassette. If two legs are seen at

    a certain distance from each other and in proper orienta-tion relative to the AGV it is believed to be a cassette and

    a sideways correction is calculated. The correction takes

    place with the rear wheels of the AGV and is such that

    the rear part of the frame of the AGV is centered relative

    to the cassette. The position control relative to the cas-

    sette is started at a distance of 3 m from the cassette and is

    stopped when the frame of the AGV goes under the

    cassette. The laser scanner gives the fan of distances at

    the rate of 5 Hz and the sideways correction is calculated

    at the same rate. The orientation of the cassette relative

    to the AGV is also calculated based on the position of the

    legs of the cassette and the heading of the AGV is alignedaccordingly by turning the front wheels.

    Using the laser scanner the rear part of the AGV drives

    reliably under a cassette. Also, the orientation of the

    AGV frame is corrected relatively well according to the

    orientation of the cassette. The ultrasonic distance sen-

    sors in the middle of the AGV are used to center the

    frame according to the cassette. The correction for

    centering the frame is done by turning the front wheels.

    There are also inductive switches at the rear corners. If

    the frame is too close to the cassette when driving under

    it, the rear wheels are turned to center the rear part of the

    frame based on the impulse of the switch. The amount of

    580 H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583

  • 7/31/2019 1-s2.0-S0967066101000144-main

    9/11

    Fig. 11. AGV control system.

    correction was tuned experimentally since no distance

    measurement is available for continuous control when

    using the switches.

    The inductive switch at the front part of the frame is

    used to detect the cassette when the AGV has driven long

    enough under the cassette. When the switch detects the

    cassette the motion is stopped and the cassette may be

    lifted for transportation. In some cases the cassette maybe left manually to its position which normally is not the

    correct one. The AGV is able to drive under a cassette

    which is less than 0.4 m aside from its nominal position in

    the sideways direction and at most 0.5m aside in the

    driving direction.

    5.4. Obstacle avoidance

    The AGV is used in a closed plant area but its operat-

    ing environment may not be isolated from other vehicles

    or people. This is why the safety system for detecting

    obstacles in the direction of the motion is vital. Thecontrol system needs sensors to give the distance to

    obstacles around the vehicle and the vehicle must be able

    to reduce its speed and stop if an obstacle is detected too

    close to the vehicle, especially in the direction of the

    motion. There are four scanning laser distance sensors

    for detection of obstacles in the front, rear and on both

    sides of the vehicle. The side sensors will detect moving

    obstacles such as people approaching the AGV from the

    side. The scanners are such that they can be programmed

    to give a signal if an obstacle is detected in a warning area

    or in a separate safety area. The size and shape of these

    areas are programmable and typically the warning area is

    larger than the safety area. The side sensors are mounted

    high up, such that their fan is downwards covering the

    whole length of the AGV. In the case of the side sensors

    the warning area is not in use but the AGV is stopped if

    an obstacle is detected in the safety area. The safety relays

    from the distance sensors are connected both to the

    motion controller and to the navigation controller to

    increase the overall reliability of stopping when needed.The scanners in the front and rear are installed to

    a movable frame so that their height is kept constant

    independently of the height of the frame of the AGV. The

    fan of these sensors is in a horizontal plane. They are

    mounted to such a height that detecting an obstacle with

    a minimum height of 20 cm is reliable. If an obstacle is

    detected in a warning zone at a distance of 4 m the AGV

    starts to decelerate. At the border of the safety area the

    AGV stops until the obstacle has been removed. The

    safety area extends to a distance of 2 m. Full braking

    takes place if an obstacle comes into the safety area from

    the side. A mechanical safety bumper at both ends of theAGV is the last guard and will stop the vehicle if the

    bumper contacts an object.

    6. AGV control system

    6.1. Navigation unit

    The AGV control system consists of two parts com-

    municating with each other using a standard serial link

    (see Fig. 11). The navigation computer is based on stan-

    dard PC-104 components. In addition to a CPU-board

    H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583 581

  • 7/31/2019 1-s2.0-S0967066101000144-main

    10/11

    Fig. 12. Remote control system.

    (Pentium 133 MHz), it contains an extra serial interface

    board as well as an analog and digital input/output

    board and a DC/DC power board. The navigation-PC

    interfaces with the four laser distance sensors, two ultra-

    sonic distance sensors, three inductive switches, the

    transponder system and the gyro. It also reads some

    switches and buttons related to the operation modes and

    the position initialization procedure. The communica-tion system with the remote control systems is realized

    using commercial wireless Ethernet components.

    6.2. Motion control unit

    The motion control module is realized using a PLC. It

    takes care of the low level inputs and outputs as well as

    the low level controls of the AGV. The overall design

    philosophy is such that the AGV can be moved manually

    even if the navigation unit is not operative. This requires

    that the steering and speed controllers are implemented

    in the PLC since these controllers are active also in themanual mode. The motion control module interfaces to

    more than 20 sensors and to 10 actuators including the

    steering, throttle and hydraulic pump. The speed of the

    AGV is controlled by the throttle which a!ects the rpm of

    the diesel engine and by controlling the yield of the pump

    which feeds the hydraulic traction motors. Hydraulic

    cylinders are used as actuators for steering and the steer-

    ing angle is measured by potentiometers. The position

    controllers for steering as well as the speed controller are

    of an ordinary PID type.

    6.3. Remote control station

    The remote control system is con"gured according to

    Fig. 12. The core of the system is the remote control

    station responsible for maintaining a cassette status

    database, assigning tasks for the AGV and collecting

    event logs for service and production performance fol-

    low-up. Normally, there is no operator at the control

    station. The everyday operators are the crane drivers

    who access the system via two terminals connected to the

    control station through Ethernet. The crane drivers in-

    form the control station about system status changes as

    they load and unload the cassettes for the AGV. When

    a cassette is loaded the crane driver gives its destination

    by the accuracy of the unloading area. The control sta-

    tion then chooses the exact destination from the free

    cassette positions in that unloading area. Accordingly,

    the crane drivers inform the system when the cassettes

    are unloaded. The control station then tells the AGV to

    transport the empty cassette back to the loading site

    when the position of the cassette "ts the transportationsequence. The activities of the AGV also modify the

    database. Each time the AGV picks or leaves a cassette

    the database is updated automatically. Events relevant to

    production follow-up or AGV service are logged.

    If manual machines change the order of the cassettes

    so that the control station database is out of date, the

    database can easily be modi"ed through a special modi"-

    cation window on the control station. The correct state for

    each cassette position is simply clicked with the mouse.

    7. Practical experiences

    The building of the software was started by program-

    ming the PLC. This was necessary since even driving the

    AGV manually requires the PLC. The interface to the

    sensors and actuators was tested "rst, then the steering

    controller was tuned while the front part of the AGV was

    lifted up. The hydraulics for steering required some cha-

    nges to speed it up but even after these changes the

    steering was not too responsive. The speed controller was

    relatively simple to program since no gears were to be

    used. Originally, the speed controller was of type P but

    later an integrating term was added to make the control

    more accurate.The kinematics of the AGV proved to be very chal-

    lenging. The real behavior of the AGV does not fully

    obey the theoretical kinematic model when turning and

    this slight discrepancy had to be modeled and taken into

    account. When turning the front bogie the simpli"ed

    model of Fig. 5a is not accurate enough. Actually the

    steering had to be modeled as if the front axle of the

    model would be linked to the frame of AGV, not directly

    but with a short lever. This was due to the fact that when

    turning, the front bogie did not turn around its center

    point but the actual turning point was somewhat ahead.

    582 H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583

  • 7/31/2019 1-s2.0-S0967066101000144-main

    11/11

    Some of the sensors caused a lot of trouble. The gyro

    chosen initially turned out to be unreliable. In some cases

    its drift changed quite rapidly which caused the AGV to

    drive out of its path. The problem was greatly alleviated

    by making the drift compensation adaptive. When pas-

    sing a transponder the drift of the gyro was recalculated

    and the compensation was changed accordingly. Even

    with this procedure the AGV sometimes ran out of thepath. Each time the control system detected this situation

    and safely stopped the motion. However, the gyro had to

    be changed to a better, and more expensive model.

    The scanners also caused a lot of extra stops. Safety is

    a critical issue here and the system was built up in such

    a manner that every time any of the four scanners in-

    formed of an obstacle in the safety area the AGV was

    stopped. Initially the scanners were too sensitive. They

    detected small amounts of iron #akes dropping from steel

    slabs on board. Dust, rain and snow#akes also caused

    extra stops. The scanners were programmable and there

    was a parameter which de"

    nes how many consecutivetimes the scanner must hit an object in the same direction

    and distance before the object is determined as an ob-

    stacle. Changing this parameter did not help before the

    scanners were changed to a model where this feature was

    correctly implemented. The scanners were then relatively

    immune to the above mentioned disturbances. Since

    there is a lot of other activity in the working area of the

    AGV, moving objects (vehicles, people) occasionally

    stopped the AGV. The control system had to be changed

    so that the motion continues after a delay when the

    obstacle has been removed from the safety area.

    After all the above mentioned corrections the navi-

    gation and control system have been working withoutproblems. The navigation accuracy is within the require-

    ments and the AGV is able to take also manually trans-

    ported cassettes even if they are$40 cm aside from their

    nominal positions. So far the safety system has not

    failed to detect an obstacle and to stop the AGV when

    necessary.

    8. Conclusions

    This paper gives an overview of the control and navi-

    gation system of an outdoor AGV. The major require-ments for the system are reliable and accurate navigation,

    a reliable safety system with collision avoidance and

    navigation accuracy better than 4 cm. These require-

    ments have to be met in a commercially realistic manner.

    The navigation system is a combination of dead reckon-

    ing and transponder positioning using commercial on-

    the-shelf components and sensors. The machine is de-

    signed to work in a nonisolated area requiring special

    attention to the collision detection and safety system.Developing the system has been very challenging with

    many problems related to, for example, modeling the

    kinematics of the AGV. Reaching the required level of

    overall reliability has been di$cult mainly because of

    several problems with the sensors. Here, the demand of

    ultimate safety has somewhat counteracted the require-

    ment of availability. In this paper the major problems

    have been solved and the navigation and control system

    runs according to the requirements. What still has to be

    done is to make the user interface simpler and more

    #exible to use.

    References

    Crowley, J. (1985). Navigation for an intelligent mobile robot. IEEE

    Journal of Robotics and Automation, JRA1(1), 31}41.

    Dijkstra, E. W. (1959). A note on two problems in connection with

    graphs. Numerische Mathematik, 1, 269}271.

    Durrant-Whyte, H. (1996). An autonomous guided vehicle for cargo

    handling applications. International Journal of Robotics Research,

    15(5), 407}440.

    Everett, H. (1995). Sensors for mobile robots. Natic, MA: A K Peters,

    Ltd.

    Kauppi, I., SeppaK , H., & Koskinen, K. (1992). Sonic localization system

    using pseudo random noise and cross-correlation technique. Pro-ceedings of the second international conference on automation, ro-

    botics and computer vision, ICARV+92 (vol. 3) (pp. RO-11.3.1-3.4).

    Maybeck, P. (1979). Stochastic models, estimation and control (vol. 1).

    New York: Academic Press.

    NDC (2001). www-pages, address: www.ndc.se.

    Rintanen, K., MaKkelaK , H., Koskinen, K., Puputti, J., & Ojala, M. (1996).

    Development of an autonomous navigation system for an outdoor

    vehicle. Control Engineering Practice, 4(4), 499}505.

    Tsumura, T., Fujiwara, N., & Hashimoto, M. (1984). A new method of

    position and heading measurement of ground vehicle by use of laser

    and corner cubes. Proceedings of 34th IEEE vehicular technology.

    1984 (pp. 271}276).

    Van Brussel, H., Van Helsdingen, C., & Machiels, K. (1988). FROG,

    free ranging on grid: New perspectives in automated transport.

    Proceedings of the sixth international conference on automated guidedvehicle systems. Brussels, Belgium, October, 1988 (pp. 223}232).

    H. Ma(kela(, T. von Numers /Control Engineering Practice 9 (2001) 573}583 583