[ieee 2011 ieee conferecne on technologies for practical robot applications (tepra) - woburn, ma,...

5
An Intelligent Low-Cost Scanning Range Finder Michael Ferguson ∗† and Nick Webb [email protected] [email protected] University at Albany, ILS Institute, Albany NY, USA Vanadium Labs LLC, Albany NY, USA Abstract—In this paper, we present an intelligent, low-cost scanning range finder for collision avoidance on systems with limited processing power. Our range finder is made low cost and computationally efficient by taking into consideration the actual planning needs for local obstacle avoidance algorithms to dynamically select the area to sample range measurements from. We present a modified version of Trajectory Rollout which takes into account the limited sensory, and present a sensory sampling strategy based on the needs of this trajectory planner. Finally, we present the construction and deployment of the sensor on a robot in both telepresence and autonomous operation. I. I NTRODUCTION A prerequisite for autonomous robots and telepresence systems, to operate alongside humans in the real world, is that they be able to navigate safely. Safe navigation requires that systems be aware of obstacles around them, especially highly dynamic ones such as people, and be able to quickly plan safe trajectories which will not collide with these obstacles. Approaches to planning for collision avoidance can gen- erally be split into the two categories of global and local methods. While global planners can yield good, and often optimal, results when given a full view of the world, such representations are rarely available, particularly on low-cost (and therefore often reduced processing power and sensory) platforms. In this paper we are therefore primarily interested in local motion planning for a mobile base. Such a planner must choose a safe trajectory for the mobile base for a short distance of travel in the local neighborhood, which typically should be optimal given some fitness metric. Most local planning algorithms operate over grid-based cost maps, which are simple to construct and can represent obstacles of any shape [1]. Obstacle awareness is therefore formulated as taking mea- surements in the world, and translating such measurements into a grid-based cost map. Typically, these measurements are provided by robust sensors, such as laser range finders, which scan the plane and gather thousands of data points each second [2]. However, such laser range finders are expensive, typically costing several thousand dollars. Further, the amount of data created by a laser range finder may overwhelm the limited processing available on lower cost robotic platforms, as each data point will require some processing to insert into the cost map. Worse yet, depending on the task at hand, much of this data may never even be useful for planning tasks at hand (being outside of some useful range, for example), further wasting processor cycles. In this paper we propose an alternative, low-cost approach (in terms of both physical cost, and processing cost) to Fig. 1. Prototype of our intelligent scanning range finder, and an example 30-point scan collected over the full range in one second. local scanning. Noting that much of the data collected by a traditional laser range finder will be irrelevant to current planning tasks, we develop a low cost scanning range finder which collects fewer data points, but in a more intelligent manner. We do so by exploiting both the regularities typically found in home and office environments and by considering the needs of the planning tasks that will use the data. We derive methods for intelligent sampling of the environment given the constraints imposed by such planning tasks. Specifically we explore the planning required for assisted control of a telepresence system and autonomous navigation of a mobile robot. To show the effectiveness of our sensor and planning-aware sampling methods, we deployed our prototype system in two navigation tasks: as an obstacle avoidance aid in assisted control of a telepresence system, and as the primary obstacle avoidance sensor in an autonomous navigation system. While both systems use similar local planning strategies, the different planning needs for a globally consistent solution gives rise to different sampling strategies. II. SAMPLING AND PLANNING In this section we define our methods for intelligently sampling from the environment with our sensor, and for planning trajectories using the sampled data. A. Trajectory Planning Two popular local trajectory planning algorithms which are able to deal with dynamic obstacles and have proven themselves in practice are the Dynamic Window Approach [3] and Trajectory Rollout [4]. Both algorithms work by forward simulation of trajectories over a small window of time in the 978-1-61284-481-7/11/$26.00 ©2011 IEEE 168

Upload: nick

Post on 09-Feb-2017

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: [IEEE 2011 IEEE Conferecne on Technologies for Practical Robot Applications (TePRA) - Woburn, MA, USA (2011.04.11-2011.04.12)] 2011 IEEE Conference on Technologies for Practical Robot

An Intelligent Low-Cost Scanning Range Finder

Michael Ferguson∗† and Nick Webb∗[email protected] [email protected]∗University at Albany, ILS Institute, Albany NY, USA

†Vanadium Labs LLC, Albany NY, USA

Abstract—In this paper, we present an intelligent, low-costscanning range finder for collision avoidance on systems withlimited processing power. Our range finder is made low costand computationally efficient by taking into consideration theactual planning needs for local obstacle avoidance algorithms todynamically select the area to sample range measurements from.We present a modified version of Trajectory Rollout which takesinto account the limited sensory, and present a sensory samplingstrategy based on the needs of this trajectory planner. Finally,we present the construction and deployment of the sensor on arobot in both telepresence and autonomous operation.

I. INTRODUCTION

A prerequisite for autonomous robots and telepresence

systems, to operate alongside humans in the real world, is that

they be able to navigate safely. Safe navigation requires that

systems be aware of obstacles around them, especially highly

dynamic ones such as people, and be able to quickly plan safe

trajectories which will not collide with these obstacles.

Approaches to planning for collision avoidance can gen-

erally be split into the two categories of global and localmethods. While global planners can yield good, and often

optimal, results when given a full view of the world, such

representations are rarely available, particularly on low-cost

(and therefore often reduced processing power and sensory)

platforms. In this paper we are therefore primarily interested

in local motion planning for a mobile base. Such a planner

must choose a safe trajectory for the mobile base for a short

distance of travel in the local neighborhood, which typically

should be optimal given some fitness metric. Most local

planning algorithms operate over grid-based cost maps, which

are simple to construct and can represent obstacles of any

shape [1].

Obstacle awareness is therefore formulated as taking mea-

surements in the world, and translating such measurements

into a grid-based cost map. Typically, these measurements are

provided by robust sensors, such as laser range finders, which

scan the plane and gather thousands of data points each second

[2]. However, such laser range finders are expensive, typically

costing several thousand dollars. Further, the amount of data

created by a laser range finder may overwhelm the limited

processing available on lower cost robotic platforms, as each

data point will require some processing to insert into the cost

map. Worse yet, depending on the task at hand, much of this

data may never even be useful for planning tasks at hand

(being outside of some useful range, for example), further

wasting processor cycles.

In this paper we propose an alternative, low-cost approach

(in terms of both physical cost, and processing cost) to

Fig. 1. Prototype of our intelligent scanning range finder, and an example30-point scan collected over the full range in one second.

local scanning. Noting that much of the data collected by

a traditional laser range finder will be irrelevant to current

planning tasks, we develop a low cost scanning range finder

which collects fewer data points, but in a more intelligent

manner. We do so by exploiting both the regularities typically

found in home and office environments and by considering the

needs of the planning tasks that will use the data. We derive

methods for intelligent sampling of the environment given

the constraints imposed by such planning tasks. Specifically

we explore the planning required for assisted control of a

telepresence system and autonomous navigation of a mobile

robot.

To show the effectiveness of our sensor and planning-aware

sampling methods, we deployed our prototype system in two

navigation tasks: as an obstacle avoidance aid in assisted

control of a telepresence system, and as the primary obstacle

avoidance sensor in an autonomous navigation system. While

both systems use similar local planning strategies, the different

planning needs for a globally consistent solution gives rise to

different sampling strategies.

II. SAMPLING AND PLANNING

In this section we define our methods for intelligently

sampling from the environment with our sensor, and for

planning trajectories using the sampled data.

A. Trajectory Planning

Two popular local trajectory planning algorithms which

are able to deal with dynamic obstacles and have proven

themselves in practice are the Dynamic Window Approach [3]

and Trajectory Rollout [4]. Both algorithms work by forward

simulation of trajectories over a small window of time in the

978-1-61284-481-7/11/$26.00 ©2011 IEEE 168

Page 2: [IEEE 2011 IEEE Conferecne on Technologies for Practical Robot Applications (TePRA) - Woburn, MA, USA (2011.04.11-2011.04.12)] 2011 IEEE Conference on Technologies for Practical Robot

local region and then computing a good trajectory from that

sampling of data.

For these experiments, our robot platform is of the popular

differentially-driven type. As such, it is commanded by a

desired translational and rotational velocity pair (x,θ). This

leads to a 2-dimensional sampling space, which is bound by

the physical limitations of the robot. The original Trajectory

Rollout algorithm sampled from the full range of possible tra-

jectories, and computed a cost function for each trajectory. The

cost function consisted of the cost of possible obstacles along

the trajectory, divergences from the optimal path (as computed

by a global planner), the distance from the endpoint of the

global plan, and the overall speed (favoring fast trajectories).

Unlike previous work, we have no global plan to follow.

In the case of the teleoperated robot, we simply have a

desired trajectory as input by the user, and in the case of

our autonomous robot, we store no global map or plan simply

employing a visual homing system to navigate from location to

location which generates a similar desired forward and angular

trajectory.

It is worth noting that the robot on which Trajectory Rollout

was initially implemented was not intended to be operated near

or around people. Without taking into account the presence of

humans in the environment, it is easy to see why faster speeds

are preferable. However, we find that excessively high speed

robots tend to be perceived poorly by humans, and therefore

speed is less important in our trajectory planner (designed

specifically to work in human environments).

We therefore define a new weighted cost function for

evaluating each trajectory t:

C(t) = αObs+ βDiv (1)

Where Obs is the sum of grid cell costs that the trajectory

passes through (as in the original algorithm) and Div is the

divergence of the trajectory t from our desired trajectory.

B. Cost Maps

Accurate cost maps are an essential component of local

trajectory planning. Traditional occupancy grids [5], often

assume that all information is kept up to date including

localization of the robot within the map. In order to account for

our selective scanning, poor localization and assumed dynamic

environment, our cost maps are also made dynamic. We use

a rolling cost map, centered on the robot, which is only

slightly larger than the available sensor range. Our cost map

is updated using the last several scans, for which odometry

alone functions as a reasonable localization.

In order to minimize computational requirements, our cost

maps use only integer calculations. Each cell stores a value

between 0 and 100. During a map update, each cell is

initialized to a value of 50 (corresponding to unknown space)

before each of our last several scans are integrated into the

map. Each range measurement reading from the sensor is

raycast against the cost map, clearing out the cells in which

are now believed to be empty by setting them to a value of

Fig. 2. A local cost-map generated from 5 scans of the intelligent rangefinder. In this cost map, the scanner collected 30 data points per scan, over180 degrees per scan. Most cost maps used during navigation are collectedover a narrower range.

0. Due to the short range of the IR sensor, a measurement

which returns “out of range” is raycast a short distance into

space (3m) to be sure that forward trajectories are properly

evaluated in environments such as long hallways. During a

second pass through each reading in the scan, we create the

obstacles (value of 100) at the endpoints of rays in the map

for any reading returning an actual distance. This obstacle is

is enlarged by the radius of the robot plus some expected

margin of error in trajectory carry out, allowing our trajectory

planning to approximate the robot as a point.

An example robot-centered cost map for a hallway intersec-

tion environment is shown in Figure 2.

C. Intelligent Sampling

While not completely coupled, we seek cooperation between

the local planning and sensor sampling strategies. Sensor

sampling must clearly take into account local planning needs,

just as local planning strategies should take into account

limitations due to the sensor sampling strategies.

We therefore must define safe navigation, and derive a

minimum scan area for determining good trajectories for safe

navigation. We have defined safe navigation to mean that the

system is capable of avoiding (possibly by stopping) obstacles

in it’s path.

In order to consider such safe navigation, we must determine

where the robot may end up, as trajectory control is never

perfect and there will typically be some margin of error.

The trajectory planner already takes this margin of error into

account by enlarging obstacles during the construction of cost

maps. Therefore, our sampling strategy must accurately select

a region of space from which to sample range measurements,

which will create an accurate cost map for trajectory cost

evaluation. A safe obstacle sampling method must detect all

obstacles that may appear along a sampled trajectory. The pos-

sible trajectories will fan out from the robot’s current position,

169

Page 3: [IEEE 2011 IEEE Conferecne on Technologies for Practical Robot Applications (TePRA) - Woburn, MA, USA (2011.04.11-2011.04.12)] 2011 IEEE Conference on Technologies for Practical Robot

as shown in Figure 3. This leads to several requirements on

the sampling methods:

• The forward simulation time must be chosen such that

trajectories do not extend beyond the maximum range of

the sensor, as their cost evaluation would become skewed.

• The width of the sampled scan area must be wide enough

to detect obstacles that will modify the cost map within

the region covered by trajectories with angular speed

components.

• The rate at which scans are taken must be kept sufficiently

high.

• As with many grid-based methods, the grid resolution

must correspond to the angle between consecutive range

measurements.

We derive here, without loss of generality, for the case in

which the robot’s desired trajectory is straight forward with

no angular velocity. When an angular velocity is desired, the

fanout of the trajectories sampled will simply be shifted by

the desired angular velocity, and so the center of the scanned

area is simply shifted by that angle.Each trajectory will be forward simulated for some time

dt, at some speed x, which defines a relationship with our

maximum ranging distance R:

R = x · dt (2)

The maximum ranging distance R is, in most cases, a set

physical constraint of the system, as will be the maximum

x we expect to consider, leaving only dt to be adjusted

accordingly.Once dt has been determined, and we know the sampling

range of angular velocities to be considered by the trajectory

planner, we can forward simulate one of the trajectories with

the highest angular rate, A = (xA,θA) as shown in figure 3. The

endpoint of the forward simulation yields the point farthest

from the desired trajectory, D = (xD,θD), which can be used to

compute a safe minimum width. We will denote this endpoint

by its distance from the robot and angular difference from the

desired trajectory (x,θ).Finally, we must enlarge the angle of this endpoint by the

robot diameter and margin of error of trajectory E, such that

all obstacles that will be inflated into the cost map grid cell

associated with the endpoint will be seen by the sensor. This

can be approximated using a simple trigonometric calculation.

To find the safe minimum scan angle θsafe:

θsafe = θ + arctan(E/x) (3)

θsafe can then be applied to the scanning mechanism. When

θD is zero, the scanned range becomes -θsafe to θsafe. When

θD is nonzero, we must compute both side points (A and B)

separately to find the minimum and range for scanning as the

two sides will generally be non-uniform.Finally, system performance can be refined by altering

the number of points in each scan and the grid resolution

to maintain a fast update rate while preserving cost map

completeness.

Fig. 3. Sampling from forward and angular velocities for local motionplanning.

III. PROTOTYPE SENSOR

We have prototyped our low cost scanning range finder

using off-the-shelf components and open source software

technologies. The range finder works by sweeping an IR-based

sensor using a low-cost servo. While a typical laser range

finder may collect four- to six-hundred range readings per 180

degree forward scan, and complete scans at 10-40hz, our range

finder collects only thirty range readings per second. However,

as discussed earlier, we can adjust where those readings are

taken.

The sensor used is a Sharp Electronics GP2Y0A710YK0F

infrared ranger. This sensor sends out an IR beam and mea-

sures the distance to an object touched by the beam using

a small linear CCD array and triangulation. This distance

is converted to an analog output voltage, and the sensor

takes approximately 30 samples per second. The sensor has

a maximum range of 550cm. These IR range finders, unlike

sonar sensors, have a very narrow beam of detection. This

is both a feature and a limitation. The narrow beam means

that the sensor more accurately describes the environment it

is measuring, however, more measurements must be taken

to cover the same space when attempting to avoid obstacle

collisions.

The primary limitation of the current implementation is the

speed of the servo to which the IR sensor is attached, used for

panning the sensor across the plane. The Dynamixel AX-12

servo used has a maximum angular velocity of approximately

300 degrees per second, easily completing a 180 degree sweep

each second.

Timing of servo movements and sensor sampling is handled

by a microcontroller, which then connects to a computer

170

Page 4: [IEEE 2011 IEEE Conferecne on Technologies for Practical Robot Applications (TePRA) - Woburn, MA, USA (2011.04.11-2011.04.12)] 2011 IEEE Conference on Technologies for Practical Robot

through a USB connection. Data is piped into the open-source

Robot Operating System (ROS) [6], where it can be stored and

used for navigation path planning. The range finder broadcasts

it’s data as a laser scan topic within ROS, allowing it to be

plug and play compatible with a number of software packages,

such as ROS’s navigation stack [7].

The total cost of our range finder, servo, and interface

microcontroller is under $100, even in single quantities, far

less than any currently available scanning laser range finder.

IV. SYSTEM INTEGRATION

In this section we present the integration of the scanning

range finder into our prototype systems and applications.

A. Collision Avoidance For Telepresence

While there has been increasing interest in telepresence

systems, most existing commercial models are prohibitively

expensive because of the sensory and computing power they

must carry. Due to the inherit lag in wide-area networks,

and the limitations imposed on a user’s perceptual ability,

telepresence systems typically require local intelligence to

assist a human pilot in moving safely and reliably about an

area by performing local collision avoidance. As such, most

devices carry expensive laser range finders, and to handle the

influx of data from such a sensor devices must carry significant

processing power and battery to power it.

In contrast, we deployed our sensor on a prototype telepres-

ence robot to show that our sensor can effectively aid human

pilots to carry out safe and reliable navigation, at much lower

cost. In such a system, global path planning is clearly handled

by the human pilot based on their view of the environment, and

as such, the range finder is only necessary for local planning to

avoid obstacles. Further, operators will typically avoid major

collisions (such as driving directly into a wall) and should they

attempt to do so, stopping the robot is sufficient. Because the

planner will generally only need to do course correction, as

opposed to rerouting around obstacles in the path, the sampling

space for angular velocities in the trajectory planning can be

significantly reduced to a small window around the desired

trajectory. For our experiments, the angular search space was

restricted to about 30 degrees difference from the desired

angular velocity.

Our telepresence robot consists of the low-cost scanning

range finder mounted on an iRobot Create base. A mast is

attached to the platform which raises the camera to the height

of a typical human, allowing a normal view of the world to

the operator. A small netbook computer is used for onboard

processing, which includes the trajectory planning as well as

serving a video feed.

B. Collision Avoidance For Autonomy

Within the realm of autonomous robot navigation, laser

range finders have typically served two purposes: to enable

path planning around obstacles [2], and to localize the system

in the wake of odometry imprecision [8], [9], [10].

Fig. 4. Intelligent scanning range finder attached to a prototype robot usedin both the telepresence and autonomous experiments.

While our range finder has limited localization abilities, due

to the higher error rate of individual readings and the low

number of readings per second, other means of localization

exist. For experimenting with autonomy, the robot used a

visual localization routine based on signs and waypoints

throughout the environment.

Unlike the situation with a telepresence system, when

operating on an autonomous robot, our sensor must generate

information not only for local obstacle avoidance, but also

for more general global planning tasks. In particular, local

methods may lead to the robot becoming stuck in local maxima

when trying to avoid an obstacle. Unlike the telepresence case,

simply stopping and waiting for another command is not an

option. In this case, the sensor scan area cannot be reduced

as drastically as we must also meet the longer term needs

of planning. In our experiments, our costmap generation for

autonomous systems used an increased number of frames, and

occasionally captured full 180 degree scans to supplement the

information available in the cost map.

V. EVALUATION

To evaluate the effectiveness of our sensor, we constructed

two experiments. The first focused on our telepresence robot

control methods, and the second on autonomous navigation.

In the first of our experiments, participants were asked to

drive a telepresence robot through a series of hallways and

rooms. The first attempt was done without assistance from

the scanning range finder. A second attempt was allowed, but

this time with the assistance of the scanning range finder. Due

to very high lag and dropped video frames, participants had a

very hard time navigating without assistance from the scanning

range finder. Not surprisingly, the addition of the scanning

range finder vastly improved operator ability. In particular, lag

makes heading corrections difficult as the operator must trainthemselves to learn the lag of the system and decide when to

stop the robot from turning. With the addition of local planning

171

Page 5: [IEEE 2011 IEEE Conferecne on Technologies for Practical Robot Applications (TePRA) - Woburn, MA, USA (2011.04.11-2011.04.12)] 2011 IEEE Conference on Technologies for Practical Robot

assistance, the robot can correct its course automatically as

forward motion begins. This is particularly useful when the

robot is asked to navigate a long hallway where the robot is

likely to drift towards a wall if uncorrected, and in the case

of traversing a doorway, where the operator would otherwise

have to line the robot up with high precision.

For our autonomous trials, the robot was set upon a course

navigating from one waypoint to another as an office courier.

The robot was generally able to complete its task, within the

limits of the very limited visual servoing techniques being

used. In particular, because our trajectory cost evaluation

placed no emphasis on smooth trajectory generation, the visual

data was often disturbed by rapid change in heading of the

robot.

VI. RELATED WORK

Our physical system is most similar to the work by Beevers

and Huang [11], who implemented simultaneous mapping and

localization with simple robots using only five fixed position

infrared sensors. While this approach is possibly more robust

to mechanical failure, given that there are no moving parts

in the ranging system, we find it to be unable to meet basic

motion planning needs, as obstacles are likely to be missed

due to the narrow beam pattern of the IR ranging devices.

Recently, a robotic vacuum which incorporates a low-

cost scanning laser scanner has been released by the Neato

Robotics company. This design yields low cost through com-

plex engineering and quantity manufacturing. The design was

described in a 2008 paper [12].

An alternative approach to low-cost range finding was

presented in [13]. Their approach uses an omni-directional

camera and machine learning approach to learn a Gaussian

Process for range generation. While cameras are relatively

cheap when compared to laser range finders, visual process-

ing is inherently computationally expensive, requiring higher

amounts of on-board processing power and battery to support

the computation. Additionally, it is not clear how portable the

presented machine learned approach is from one environment

to another.

VII. CONCLUSIONS AND FUTURE WORKS

In this paper we have presented work on a low-cost scanning

range finder for obstacle avoidance. Lower cost is achieved

primarily through intelligent selection of where to take mea-

surements, and the resulting computational efficiency which

can be achieved through the smaller dataset to consider.

Future work with this system includes further refinements

to both hardware and software. From a hardware perspective,

we must address the overall noise of the scanning servo, as

well as the size of the sensor. Such work would transform our

prototype system into a system more ready for deployment into

commercial robots and telepresence systems. An additional

possibility for future work would be to apply such sampling

methods to the use of higher resolution sensors on limited

processing power.

REFERENCES

[1] H. Choset, K. M. Lynch, S. Hutchinson, G. Kantor, W. Burgard, L. E.Kavraki, and S. Thrun, Principles of Robot Motion: Theory, Algorithms,and Implementations (Intelligent Robotics and Autonomous Agents).The MIT Press, June 2005.

[2] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. The MITPress, September 2005.

[3] D. Fox, W. Burgard, and S. Thrun, “The dynamic window approachto collision avoidance,” Robotics Automation Magazine, IEEE, vol. 4,no. 1, pp. 23 –33, Mar. 1997.

[4] B. P. Gerkey and K. Konolige, “Planning and control in unstructuredterrain,” in Proceedings of the ICRA 2008 Workshop on Path Planningon Costmaps, May 2008.

[5] A. Elfes, “Using occupancy grids for mobile robot perception andnavigation,” Computer, vol. 22, no. 6, pp. 46 –57, Jun. 1989.

[6] M. Quigley, B. Gerkey, K. Conley, J. Faust, T. Foote, J. Leibs, E. Berger,R. Wheeler, and A. Ng, “ROS: an open-source robot operating system,”in Open-Source Software workshop of the International Conference onRobotics and Automation (ICRA), 2009.

[7] E. Marder-Eppstein, E. Berger, T. Foote, B. Gerkey, and K. Konolige,“The office marathon: Robust navigation in an indoor office environ-ment,” in IEEE International Conference on Robotics and Automation(ICRA), 2010, pp. 300–307.

[8] F. Dellaert, D. Fox, W. Burgard, and S. Thrun, “Monte carlo localizationfor mobile robots,” in IEEE International Conference on Robotics andAutomation (ICRA), 1999.

[9] S. Thrun, D. Fox, W. Burgard, and F. Dellaert, “Robust monte carlolocalization for mobile robots,” Artificial Intelligence, vol. 128, no. 1-2,2000.

[10] D. Fox, “Kld-sampling: Adaptive particle filters,” in In Advances inNeural Information Processing Systems 14. MIT Press, 2001.

[11] K. Beevers and W. Huang, “Slam with sparse sensing,” in IEEEInternational Conference on Robotics and Automation (ICRA), May2006.

[12] K. Konolige, J. Augenbraun, N. Donaldson, C. Fiebig, and P. Shah, “Alow-cost laser distance sensor,” in IEEE International Conference onRobotics and Automation (ICRA), 2008.

[13] C. Plagemann, C. Stachniss, J. Hess, F. Endres, and N. Franklin, “Anonparametric learning approach to range sensing from omnidirectionalvision,” Robotics and Autonomous Systems, vol. 58, no. 6, pp. 762 –772, 2010.

172