The Intelligent Service Robot
The intelligent service robot project focuses on methods for systems integration
and perception in a domestic or an office setting. The project is primarily
formulated to be a focal point for research, it should not be thought of
as an end-product, but rather as a facilitator for situated and embodied
research on systems integration and perception.
A domestic (or office) robot can be used in a variety of tasks such
as cleaning or being a dextrous assistant to humans living or working in
a house. Implementing a fully operational household robot is outside the
scope of the project. Instead we focus on the principles of such a robot
and show, by implementing a basic robot architecture and a few prototypical
tasks, that the principles can be applied in a robust manner.
Environment
To be able to experiments with the robots a realistic environment is needed.
An office setting is not difficult to get, we can just use our own offices!
To get an environment looking more like a house, we have turned one room
in the lab into a livingroom by buying IKEA furniture.
|
| Our Nomad 200 robot
|
It must be pointed out that our goal is to perform the different task without
the need to change the environment. Thus we cannot expect to use special
lighting conditions or to put up markers, barcodes etc. to facilitate a
task.
The robots
Our main robot platsforms are a Nomadic 200 and a Nomadic XR4000. The first
robot, called Asterix, is cable of navigating throug the environment, using
its sonar sensors and a laser range finder. With the help of a fork lift,
it is possible to use it for simple manipulation tasks. The larger XR4000,
called Obelix, is equipped with a Puma 560 robot arm on top. Using this
it is possible to perform more advanced manipulation so that more complicated
mobile manipulation tasks can be solved. The lab also includes a static
manipulator and three small Nomadic Scout robots.
Prototypical tasks
The idea behind the prototypical tasks are that they must be useful, but
at the same time be challenging enough from a scientific point of view.
It is also important to keep in mind that we want to solve the problems
in a robust manner, i.e. the solution should work in a variety of house
and offices for long periods of time. The solutions must work without the
need to engineer the environment. Most of the tasks we try to solve are
of the fetch-and-carry type. Examples of tasks:
-
Go to the refrigerator and bring back the milk
-
Locate the remote control and bring it here
-
Pick up a specified object and deliver it to a pre-specified place
-
Deliver mail or printer output to any person in the lab
-
Go to the next floor using the elevator
Instructing the robot(s)
Telling the robot which tasks to perform may be done in different ways.
One way is to pre-program tasks that the robot then carries out at different
times, or when special curcumstances occurs. As an example, the robot might
find out that the batteries are running low and that he needs to perform
the "Charge batteries" task. Normally we expect that the robot is often
directly told by a user which task to perform. Thus the human-robot interface
is important. As we aim for the robot to work in an ordinary home or office,
without specialists as users, it is necessary that the human-robot interface
is natural and easy to learn. Our own research here is considering speech
and gestures as a means for communication. An instruction could then be
something like:
Pick up the blue mug on the table [mug specified by a gesture]
and drive to the laboratory and put it on the shelves just inside the
door
Research issues
To be able to perform the above tasks, research in many different areas
is necessary. Some of these are:
- Ego-motion/state estimation, i.e. to keep track of where you are and how
you move
- Navigation among obstacles
- Human-robot interaction
- Manipulation of objects
- Object recognition
- System modelling
- Task and path planning
- Multi-agent systems
Ego-motion, state estimation and navigation
Knowning where you are and how you move is one of the basic capabilities
needed for an autonomous robot and is a problem that has been studied for
a long time. Our own research in this area has mainly concerned robust
navigation using sonar sensors and laser range finders. Today our robot
Asterix is capable of robustly finding its initial position and
after that tracking its position for a very long time (hours) without
getting lost in our laboratories. Main researchers in this area are
Patric Jensfelt
and
Olle Wijk
A related area is navigation avoiding obstacles. Safely navigating,
especially in a home, requires that the robot does not run into things
or beings, such as a child or a pet. There are today several different
approaches to this, and we have so far not perfored any research in
this area. For our Nomad200 robot we have used mainly 2D approaches, but
the Nomad XR4000 robot will require 3D approaches since it has a
robot arm on top, which is more dangerous and more difficult to move
without running in to things.
Human-robot interaction
Our intensions are that the robot should normally be operated by non-experts,
requiring no or little training to use the robot. For this to work it is
important that interaction with the robot is made in a natural and easy to
use way. In many cases speech and gestures are natural ways of communication
and we perform research both concerning gesture recognition and how to
combine them in a natural way. Main researcher here is
Hedvig Sidenbladh
Manipulation of objects
A key to a succesful service robot is its possiblity to manipulate objects
in the environment. Static robots used in industry for many years,
normally requires three basic assumptions:
- The environment is well known
- The different subtask are very well specified, often the motion
of the robot is specified exactly and when to grasp etc. is
very well definied.
- The safety problem is solved by not allowing people to enter
the workcell of the robot.
In a home or office environment these requirements can almost never be
met. The environment can be fairly well known, but many things will be
slightly moved, new things will come and old things will go, not to
mention that people will come and go. This requires additional
capabilities for the robot. It must be able to observe unexpected
changes in the environment and to know how to change its behaviour
accordingly. For the same reason, a task can not be specified in
detail and furthermore, the specification of a task will require
planning on the part of the robot. Compare two orders such as
move the arm form point (x1,y1,z1) to point (x2,y2,z2)
and
Get me a beer
The first of these orders are very well specified while the second
requires a lot of extra knowledge and perhaps also forces the
robot to ask questions!
Our own research in this area is performed by
Danica Kragic,
Martin Eriksson,
Lars Petersson
and
Dennis Tell.
Object recognition
Another key area for a successful service robot is the ability to
recognize objects. Objects that need to be recognized varies
from small objects like spoons, knifes and forks to larger objects
like bookshelves and doors. The key idea in our research is that
the recognition must be robust and work in an everyday environment.
Research in this area is performed by
Maria Ögren
System modelling
Autonomous robots are complicated systems. Complex sensory data from
sonars, lasers, cameras, bumpers etc., as well as operator input must
be evaluated and transformed into actions. A sound modelling of the
robot system from a mathematical point of view is therefore important.
Magnus Egerstedt
work on hybrid dynamic systems aims at finding out how
these can be used for robotic applications, combining discrete and
continuous systems.
Another aspect of the complex nature of the robotic systems are how
software architectures should be constructed. In this area,
Anders Orebäck
is testing a number of current architectures used in robotics, to be
able to present a usability study and from that, hopefully, be able
to come up with even better solutions.
Path planning
Planning a path for a moving robot is a classical problem. The purpose
is to be able to plan a safe path that takes the robot from one
position to the next, fulfilling some optimization criteria. The problem
becomes even more difficult when an arm is added on top of the robot which
is the case with our XR4000 robot. Methods for path planning is studied by
Claudio Altafini
Multi agent systems
Using more than one robot solving a task is a very challenging problem and
has attracted attention over the last few years. One such example
is the Robocup (Robot soccer) tournamnets and the military research
initiative for urban warfare in the USA. Currently we are just starting
research in this area and we will implement a few task such as
cooperative mail delivery and printer output distribution.
Magnus Andersson
Last
modified: Wed Aug 11 09:47:13 MET DST 1999