blanche-an experimental in guidance and navigation of an autonomous robot vehicle

Upload: maysamsh

Post on 03-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Blanche-An Experimental in Guidance and Navigation of an Autonomous Robot Vehicle

    1/12

    IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 7 , NO. 2 , APRIL I991 I93

    Blanche- An Experiment in Guidance andNavigation of an Autonomous RobotVehicleIngemar J . Cox, Member, IEEE

    Abstra ct-Th is paper describes the principal com ponen ts and capabil-ities of Blanche, an autonomous robot vehicle. Blanche is designed foruse in structured office or factory environments rather than unstructurednatural environ ments. This is a significant restriction, but still allows formany potential applications. An overview of the physical configurationof the vehicle is presented as well as a description of its two sensors, anoptical rangefinder and odometry. It is assumed that an off-line pathplanner provides the vehicle with a series of collision-free maneuvers,consisting of line and arc segments, to move the vehicle from a currentto a desired position. On board the vehicle, the line and arc segmentsspecifications are sent to control software consisting of low-level trajec-tory generation and closed-loop motion control. The trajectory genera-tor takes each segment specification and generates a reference vector ateach control update cycle. The cart controller controls the front steeringangle and drive velocity using conventional feedback compensation tomaintain small errors between the reference and measured states.The controller assumes accurate knowledge of the vehicles position.We believe that position estimation is a primary problem th at must besolved for autonomous vehicles working in structured environments.Blanches position estimation system consists of 1 an a priori map ofits environment, represented as a collection of discrete line segments inthe plane; 2) a matching algorithm that registers the range data with themap (of line segments) (this algorithm has the properties that it is robustagainst missing and spurious data and is reasonably fast allowingmatching to occur very frequently (approximately every 8 s), and 3) thematching algorithm also estimates the precision of the correspondingmatch/correction that is then optimally (in a maximum likelihood sense)combined with the current odometric position to provide an improvedestimate of the vehicles position. The vehicle and associated algorithmshave all been implemented and tested within a structured office environ-ment.Except for the off-line global path planner, the entire auto nomou svehicle is self-contained, all processing being performed on board andwith no recourse to passive or active beacohs placed in the environment.We believe this vehicle is significant not just because of the sensing andalgorithms to be described, but also because its implementation repre-

    sents a high level of performance at low cost.

    I. INTRODUCTIONLANCHE [4] s an experimental vehicle designed to operateB utonomously within a structured office or factory environ-ment. We believe that a key problem for such a vehicle isaccurate position estimation, particularly if active or passivebeacons are not permitted. Blanche is an experiment in theguidance and navigation of an autonomous vehicle within anoffice environment. From a research perspective, Blanche hasserved as a testbed with which to experiment with such things asreal-time programming languages, sensor integration/data fusiontechniques, and with techniques for error detection and recov-

    Manuscript received September 4, 1989; revised September 1, 1990.portion of this work was presented at the IEEE International Workshop onIntelligent Robots and Systems, 1989.The author is with the NEC Research Institute, Princeton, NJ 08540.IEEE Log Number 9041908.

    ery. From a commercial perspective, we have tried to be costconscious, since many potential commercial applications arevery Lost sensitive.This paper describes the principal components and capabilitiesof the vehicle. Section I1 describes the physical structure of thevehicle and its associated sensors. Section 111 describes thetrajectory generation and guidance control system for the vehi-cle. Experimental results are included. The guidance systemcompares the reference position and velocity vector with themeasured vector and uses conventional linear feedback for con-trol. Section IV describes the position estimation system em-ployed by the vehicle. Included in this is a description of therobots map representation, Section IV-A, the algorithm used tomatch the range data to this map, Section IV-C, as well as someimplementation details. Section IV-D discusses how the odome-try position estimate is combined with the correction estimatedby the matcher. The system ahs been implemented on the vehicleand experimental results are included in Section IV-E. Section Vcontains a brief description of the software implementation.

    11. OVERVIEWF BLANCHEBlanche, shown in Fig. 1 , has a tricycle configuration consist-ing of a single steerable drive wheel at the front and two passiverear wheels. The vehicle is powered by two sealed 12V 55Ahbatteries which, in the current configuration, provide a usefullifetime of approximately 7 h. Control of the cart is based on aMultibus system consisting of a MC68020 microprocessor withMC68881 match coprocessor, 2 Mbyte of memory, an ethernetcontroller, a custom two-axis motor controller, and an analog-to-digital convertor. The Motorola 68020 runs a real-time UNIX@derived executive called NRTX [161.Blanche is designed to be low cost, and its dependence ononly two sensors, an optical rangefinder and odometry, reflectsthis. Both sensors are low cost and together provide all thenavigational sensing information available to the cart. The ad-vantage of odometry is, of course, that it is both simple andinexpensive. However, it is prone to several sources of errors.First, surface roughness and undulations may cause the distanceto be over estimated. Second, wheel slippage can cause distanceto be under estimated. Finally, variations in load can distort theodometer wheels and introduce additional errors. If the load canbe measured, then the distortion can be modeled and correctedfor [28]. Where appropriate, a simple and more accurate alterna-tive is to provide a pair of knife-edge nonload-bearing wheelssolely for odometry. Blanche uses this approach. However, evenvery small errors in the vehicles initial position can lead togross errors over a long enough path. Consequently, it isimperative the vehicles environment be sensed in order to anullthese accumulating errors.

    1042-296X/91/04OO-O193 01 .OO 991 IEEE

  • 8/12/2019 Blanche-An Experimental in Guidance and Navigation of an Autonomous Robot Vehicle

    2/12

    ~

    194

    s --S o -->

    IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. I NO. 2 , APRIL 1991

    ReferenceTrajectoryGenerator

    Fig. 1. Cart Blanche.

    on-boardReal-timemodel-boscd

    position estimation

    A simple low-cost optical rangefinder has been developedspecifically for cart navigation [20]. The rangefinder uses anapproximately 1-in-diameter beam and a rotating mirror to pro-vide 360 polar coordinate coverage of both distance and re-flectance out to about 20 ft Both radial and range resolutioncorrespond to about 1 in at a ranging distance of 5 f t , with anoverall bandwidth of approximately 1 kHz. Thus, there is thecapability to extract approximately lo00 samples per revolution,though, in practice, we limit the number to about 180.Fig. 2 shows a typical range map of a room obtained from asingle scan of the rangefinder. A scan typically takes about 1 s.Each point is represented by its corresponding region of uncer-tainty, denoted by a circle of radius twice the standard deviationin the measurement. It should be pointed out that the error, dueto assuming that the range output is linear with distance, maysometimes exceed the error due to noise in the rangefinder. Thissystematic error can be removed by using a table look uptechnique to accurately map range output into distance.We assume that an off-line path planner [31] generates a seriesof collision free maneuvers, consisting of line and arc segments,to move the vehicle from a current to a desired position. Sincethe cart has a minimum turning radius (approximately 2 ft ) , it isnot possible to simply turn on the spot and vector to the desiredposition as iS the case for differentially driven vehicles. Thispath is dowdloaded to the vehicle, which then navigates alongthe commadded route. The next section describes how these lineand arc Segments are interpreted by the vehicle.

    111. GUIDANCETRAJECTORYENERATIONNDCONTROL)This section is taken from Nelson and Cox [23]. The path planreceived from the off-board path planner consists of a list, eachline of which specifies a segment of the path. The segmentspecification includes the segment type and the desired state at

    the end of the segment. The segment specifications are sent tocontrol software consisting of low-level trajectory generationand closed-loop motion control, as illustrated in Fig. 3 [23].Briefly, the trajectory generator takes each segment specificationand generates a reference vector at each control update cycle(every 0.1 s). The cart controller controls the front steeringangle and drive velocity using conventional feedback compensa-

    CartController