3 Software Design Specification

advertisement
PROJECT DELIVERABLE D4
TOURBOT DESIGN
Shared-cost RTD
Project acronym: TOURBOT
Project full title: Interactive Museum Tele-presence Through
Robotic Avatars
Contract Number: IST-1999-12643
Key Action:
3
Action Line:
3-2-3
TOURBOT Design
Project
Deliverable
TOURBOT: Interactive Museum Tele-presence Through Robotic Avatars
Project Deliverable D4: Application Design
Date Produced:
June 27, 2000
Authors:
Wolfram Burgard and Dirk Hähnel
Contents
1
2
Introduction .................................................................................................................. 3
Hardware Design Specification.................................................................................... 3
2.1 Hardware Layers of the Platform .......................................................................... 4
2.1.1 Base: Drive and Shape .................................................................................... 4
2.1.2 Enclosure: Computing Resources and Interfaces ........................................... 5
2.1.3 Top: User Interaction ...................................................................................... 5
2.2 Sensor Systems of the Platform ............................................................................. 5
2.3 Interfaces ............................................................................................................... 6
2.4 Hardware of the On-site PC’s ................................................................................ 6
3 Software Design Specification ..................................................................................... 7
3.1 Localization ........................................................................................................... 9
3.2 Path Planning and Navigation Behaviors ............................................................ 10
3.3 Collision Avoidance ............................................................................................ 11
3.4 User Interaction ................................................................................................... 12
3.4.1 On-board Interface ........................................................................................ 13
3.4.2 Web Interface ................................................................................................ 13
3.5 Map Updating ...................................................................................................... 13
4 System Integration and Validation Specification ....................................................... 14
4.1 System Integration ............................................................................................... 14
4.2 System Validation................................................................................................ 16
Page 2
TOURBOT Design
1
Project
Deliverable
Introduction
TOURBOT presents a complex system which, in order to effectively fulfill its goals,
should simultaneously perform various tasks. It has to navigate reliably through the
exhibition and simultaneously interact with visitors of the museum and users connected
to the robot via the Web. This requires a flexible mobile system that is also backed by
sufficient computing resources at the base station. Figure 1 presents the overall system
setup. It consists of a mobile platform connected via a wireless link to a base station,
which is directly connected to the Internet. According to the scenario of the application,
the system has to control the on-board motors, update displays and furthermore has to
monitor its environment to safely navigate the robot and to appropriately interact with
Web and on-site users. The current document constitutes a design specification of the
TOURBOT-System in order to fulfill the operational requirements set. The proposed
design, besides serving the needs of the TOURBOT project, it also offers a high degree
of modularity and flexibility for necessary adaptations, possible improvements and
extensions of the system in future applications.
The next section will give a specification of the robot’s hardware and it’s interfaces in
order to be controllable by the software-system design described in Section 3. Section 4
elaborates on system integration and validation issues.
2
Hardware Design Specification
According to the operational requirements, the TOURBOT mobile avatar should navigate
safely through the museum and additionally should be able to interact with people in the
museum. The overall hardware design covers three aspects. First it specifies the drive and
shape of the robot, which will be installed in the base of the TOURBOT system. The
second part, denoted as enclosure, contains the on-board computers, device-interfaces
and networking components. The upper part (top) contains all necessary devices to
interact with people in the museum and controlling or observing the robot over the Web.
To acquire information about the environment, a variety of sensors is assigned, which are
installed at different parts of the platform.
Page 3
TOURBOT Design
Project
Deliverable
INTERNET
High-Speed Internet Connection
Wireless Connection
On-Site PC
Figure 1. Hardware components of the TOURBOT-System
2.1
Hardware Layers of the Platform
2.1.1 Base: Drive and Shape
To efficiently navigate in a populated environment and provide meaningful tours, the
system must be able to move at speeds of at least 60 cm/sec and for long periods of time.
Consequently, the system requires appropriate drives and battery power. To reduce the
complexity of the navigation tasks, the system is designed to have a circular or an almost
circular shape, with the drive being either synchro-drive or differential drive. Both kinds
of drives allow the robot to turn in place, facilitating thus the use of path-planning
Page 4
TOURBOT Design
Project
Deliverable
techniques in which the robot is regarded as a point. Appropriate brakes allow the robot
to stop quickly in order to avoid collisions with objects or people in the exhibition.
2.1.2 Enclosure: Computing Resources and Interfaces
TOURBOT robotic avatar requires on-board computing power for various reactive
processes designed to control the robot over its device-drivers and to quickly process and
react to sensory input. Since these processes do not perform complex algorithms, a
standard workstation, comparable to a 500 MHz Intel Platform, is deemed sufficient. This
computer must have various interfaces to connect it to the robot’s hardware interfaces.
2.1.3 Top: User Interaction
The devices installed on top of the enclosure are used for interaction with the system
users. In order to provide information regarding its activities, the system is designed to
carry an LCD-display, which is connected to the computer system in the enclosure.
Additionally, the user interface will provide buttons to allow users to enter possible
requests. Furthermore, the robot will have the option to install a motorized face, which is
able to express different moods and to support interaction with the users. A pan-tilt
device carrying a camera system is also included in the design. These cameras will yield
as a pointing device showing the directions to which the robot will move and to point to
the exhibits the robot is approaching in order to deliver images to the Web or to explain
them to the users in the museum. Finally, emergency stop buttons will be provided in the
top part, allowing untrained users to stop the robot in case of emergency.
2.2
Sensor Systems of the Platform
To gather all relevant information about the environment, the robot needs sensory
apparatuses. Based on sensory information the robot can update its knowledge about the
environment and can adapt its behavior. To overcome the disadvantages of certain types
of sensors our design includes different sensors. More specifically, we employ ultrasound
sensors, laser-range finders, tactile sensors and cameras. The most important sensor for
navigation purposes is the laser-range finder system of the type SICK LMS or SICK PLS.
Such a sensor covers 180 degrees of the robot’s surrounding at a angular resolution of
0.25 to 0.5 degrees and at a distance resolution of 2.5 to 5cm. This sensor serves many
different navigation purposes, such as localization, collision avoidance and map updating.
Page 5
TOURBOT Design
Project
Deliverable
Since a laser-range finder is a light-based sensor, the system additionally will use
ultrasound sensors to deal with transparent materials, such as glass or reflecting surfaces
(i.e. mirrors). The ultrasound sensors will be mounted so that they cover the complete
surrounding of the robot (ring of sensors). The information provided by these sensors will
be integrated with the data coming from the laser-range finder in order to support
localization, collision avoidance and map building.
On top of the robot resides the stereo camera system, installed on a pan/tilt-unit. These
cameras will be used to grab images and video streams that are broadcasted over the
Web. The video streams of the viewed scene in the museum will also serve the purpose
of remote control of the robot by the Web-users. Finally, the system will have a number
of tactile sensors that are used to detect collisions of the system.
2.3
Interfaces
To communicate with the different sensor systems and actuators, the computer system in
the enclosure needs different interface devices:
2.4

Frame-grabber or TV-cards for grabbing images with the on-board camera system

Serial interfaces for the connection to the drives and the odometry, the sensor
systems (ultra-sound, laser, tactile), the pan/tilt unit carrying the camera system,
the motorized face and the buttons or the LCD/touch-screen.

Wireless communication interface to connect the robot to the base station.

Sound-device including amplifier for spoken texts.

Graphics device to display multimedia information on the robot’s screen.
Hardware of the On-site PC’s
For the overall control of the system and to communicate with users connected over the
Internet, the TOURBOT system contains one or several on-site PC’s. These workstations
are connected to the robot via wireless LAN and provide a fast communication link.
Some of the high-level processes such as the Web server as well as some of the
Page 6
TOURBOT Design
Project
Deliverable
computationally intensive tasks are executed on the on-site PC’s. This ensures that the
processor installed on the platform can serve all interfaces it is connected to.
User Interface
Navigation System
Map Updating
Path Planning and
Navigation Behaviors
Localization
Collision
Avoidance
Figure 2. Software modules of the TOURBOT system.
3
Software Design Specification
The overall software architecture consists of a variety of modules (processes), which are
executed in parallel on the robot’s on-board computers as well as on off-board servers.
All processes are connected via Ethernet and communicate using TCX, a decentralized
communication protocol for point-to-point socket communication. Figure 2 shows the
major software modules of the overall software architecture along with the flow of
information between different modules. Similar to other robot control architectures, the
TOURBOT system is also organized in a hierarchical manner, with the device drivers at
the lowest level and the user interfaces at the highest. The hierarchy, however, is not
Page 7
TOURBOT Design
Project
Deliverable
strict, in the sense that modules would pass information only within the same and not
across adjacent layers.
With respect to environment sensing and related navigational competences, the system
will be endowed with appropriate techniques to overcome various problems, a mobile
robot operating in a populated environment is faced with. First, our design employs
probabilistic representations, reasoning, and learning. Since the sensors used by mobile
robots are inherently inaccurate and noisy, robots generally cannot uniquely determine
the state of the world. Probabilistic approaches, in contrast, are able to integrate sensory
information over time and this way allow a mobile robot to robustly deal with the
different sources of uncertainty. Instead of extracting just a single interpretation from the
sensors, the TOURBOT system will consider multiple possible interpretations weighted
by a numeric plausibility factor that is expressed as a conditional probability. By
considering multiple hypotheses, the robot can deal in a mathematically rigorous way
with ambiguities and uncertainty. This in turn facilitates recovery from false beliefs, a
prerequisite for the robot to exhibit robust behavior. In addition, the probabilistic
representation allows the robotic avatar to make optimal decisions under uncertainty.
To cope with the limited resources of the system, the computationally intensive
algorithms used will have on-line characteristics and exhibit resource flexibility. Modules
like the path planning component or the localization system will adapt to the available
computational resources. Regardless of the available computation time, these modules
will be configured as “any-time” algorithms, producing at any time the necessary output
for the control of the platform. The more processing cycles are available, the more
accurate, or optimal will be the result.
Finally, the processes on the TOURBOT system are configured to run in a modularized,
distributed and asynchronous fashion and apply decentralized decision making. Thus, the
TOURBOT software does not require a centralized clock or a centralized communication
module. Synchronization of different modules is strictly de-central. Time-critical
software (e.g., device drivers), and software that is important for the safety of the robot,
such as the collision avoidance, run on the robot's on-board computers. Other higherlevel software, such as the task control module or the localization system may run on the
on-board or off-board computer, depending on the system’s load. Possible
communication break-downs will be handled by the on-board control systems. The
modular, decentralized software organization eases the task of software configuration and
Page 8
TOURBOT Design
Project
Deliverable
extension. Each module provides certain functionality, but not all modules are required to
run the robot. For example, certain device drivers can be omitted if the corresponding
device is not needed.
3.1
Localization
Localization is the task of estimating the position of the robot in its environment.
Without knowing its position, the TOURBOT system cannot efficiently perform typical
tasks such as navigating to a certain exhibit and taking high-resolution images from userselected viewpoints. The TOURBOT system will employ a recently developed technique,
denoted as Markov localization, to estimate the position of the robot. This technique
offers the advantage of being able to globally estimate the position of the robot and to
detect and recover from localization failures. To actually estimate the position of the
robot in the workspace, a previously acquired map of the environment is used. The input
of the robot’s sensors is then compared with the model of the environment (see Figure 3).
To cope with uncertainties, the system maintains a probability distribution about the
possible positions of the robot. To determine the actions to be taken it averages over the
current belief, i.e. it considers, if useful, all possible states of the robot to determine the
next action of the robot.
MAP
SENSORY INPUT
POSITION
Figure 3. The localization module uses a map of the environment and
sensory input to estimate the position of the robot.
Page 9
TOURBOT Design
Project
Deliverable
In order to achieve the desired efficiency, the TOURBOT system uses a sample-based
representation of the underlying position probability density. The advantage of this
approach is that the system can efficiently update the density based on sensory input.
3.2
Path Planning and Navigation Behaviors
To efficiently plan the trajectories of the robot from its current position to the next object,
our design employs a variant of dynamic programming. The given map of the
environment is transferred into a grid-based approximation denoted as occupancy grid
map. Based on this representation, the system applies value iteration to determine the
cost-optimal path from the current position of the robot to the target location (see Figure
4). This approach operates in an any-time fashion, i.e., whenever a new target point is
given, the system can at any time compute an intermediate target point which then is
transferred to the collision avoidance module which itself controls the platform in order
to reach this target point. This module will permanently monitor the current position of
the robot and compute the cost-optimal path in reverse order, i.e. from the target point to
all possible states of the robot. This way the system can immediately react to changes of
the robot’s states caused by the reactive behaviors in the collision avoidance module.
MAP
GOAL-POINT
NAVIGATION PLAN
Figure 4. The path-planning component uses a map of the environment
and a target location entered by a user to compute a navigation plan.
Page 10
TOURBOT Design
Project
Deliverable
Additionally, this module provides certain navigational behaviors, such as turning to a
given target location, moving around a given exhibit in order to provide images of the
specified object from different viewpoints.
3.3
Collision Avoidance
The collision avoidance system (Figure 5) will use a recently developed technique
denoted as the “dynamic window approach”. The advantage of this approach over other
approaches developed so far is that it incorporates the dynamics of the robot to quickly
react unforeseen obstacles. The key idea of the dynamic window approach is to consider
all admissible velocities that can be reached within 0.25 seconds. Among these velocities,
the collision avoidance module chooses that velocity which maximizes the expected
future reward of the system given by an evaluation function. This evaluation function
simultaneously maximizes the progress of the system measured by the distance to the
(intermediate) target location, the heading to the target point as well as the velocity of the
system. Thereby it considers given constraints such as the minimum distance to obstacles
and people in the vicinity of the robot. This is achieved by introducing a safety margin,
effectively keeping the robot away from objects.
ODOMETRY INFORMATION
SENSORY INPUT
NAVIGATION PLAN
STEERING COMMAND
Figure 5. The collision avoidance system uses the information provided by the odometry,
the sensory input, and the current navigation plan to compute the next steering command
issued to the platform.
Page 11
TOURBOT Design
3.4
Project
Deliverable
User Interaction
The user interfaces constitute an important part of the overall system, ensuring that the
robot can interact with people in the museum and over the Web. To satisfy the needs of
different users (users tele-operating the system and on-site users), the TOURBOT system
is equipped with two interface modules.
ROBOT
CAMERA
MOBILE PLATFORM
WIRELESS CONNECTION
CONTROL SOFTWARE
A/V STREAMING PRODUCER
A/V STREAMING SERVER
WWW SERVER
ON-SITE PC
INFORMATION
WEB REQUEST
A/V STREAM
WWW BROWSER
USER PC
Figure 6. User interface architecture. In addition to the standard Web server, the system
will include an A/V stream server to provide live images from the museum.
Page 12
TOURBOT Design
Project
Deliverable
3.4.1 On-board Interface
The task of the on-board interface is to perform interaction with the users in the museum.
This will be achieved by displaying necessary information on the robot’s screen installed
on top of the robot. This screen will be a graphics display to allow the visualization of
high-resolution graphics and images. It, furthermore, outputs directives on how to interact
with the robot.
3.4.2 Web Interface
The Web interface allows users all over the world to access the TOURBOT system. The
TOURBOT will be controlled from a Web page providing all necessary information for
giving directives to the robot and to acquire video of the viewed scene and highresolution images from arbitrary places of the environment. This interface will be
provided by a dedicated Web server that forwards user requests to the robot control
system. Users have the ability to choose two different modes, denoted as the control and
observation modes. In the control mode a user has individual access to the robot and can
control its motion in the robot’s operational space. This is achieved by appropriate
selections on a representation of the environment on the users Web page. Additionally the
users can direct the robot to grab images using the robot’s on-board cameras. In the
observation mode, the users cannot control the motion of the robot but can get various
information also provided to the control pages. Whereas the control page offers
individual access to the TOURBOT system, the observation pages offer simultaneous
access by large groups of Web visitors.
In addition to the Web server providing the Web pages for controlling the robot and for
the on-site information, the TOURBOT system will provide a streaming server, which
broadcasts video streams over the Internet (see Figure 6).
3.5
Map Updating
The map-updating component allows the robot to maintain its knowledge about the state
of the environment. Using this component, the robot can quickly learn a map about the
environment from scratch (see Figure 7). Thus, whenever the robot is deployed in a new
environment or whenever the environment changes, the robot uses this component to
update the world model. Additionally, the TOURBOT-system will include a component
to track people in the surrounding of the robot. This information will be used by the
Page 13
TOURBOT Design
Project
Deliverable
navigation systems to improve the behavior of the system. For example, the robot will
avoid trajectories leading it through a crowd of visitors and in such situations choose a
detour around people in the museum. On the other hand, it may use the information about
the environment to check whether people are intentionally blocking the path of the robot.
In such cases the robot may kindly ask for free space in the direction indicated by its
pointing device.
POSITION
SENSORY INPUT
MAP
Figure 7. The map updating system computes a map of the environment
based on the current position of the robot and the sensory input.
4
System Integration and Validation Specification
The system will be integrated and validated in a series of steps with increasing
complexity. In all steps the new software modules will be evaluated under usual and
extreme conditions in order to achieve a high level of robustness.
4.1
System Integration
1. Device drivers. In the first step, the necessary device drives which connect the
software to the hardware of the TOURBOT system will be developed. This
Page 14
TOURBOT Design
Project
Deliverable
includes extensive evaluations of the drivers with respect to the availability of
necessary commands and their correct execution.
2. Collision avoidance and map-updating. The next step is the integration of the
collision avoidance module into the TOURBOT system. This will also include the
evaluation of the interfaces to the device drivers of the motors and the odometry.
Additionally, this step will validate whether the system provides the required
safety margins to the objects in the exhibition.
3. Localization. In the third step the localization module will be connected to the
navigation system. Based on the odometry information provided by the robot’s
drive and the sensory input, this module will be evaluated according to accuracy
and robustness of the position estimate.
4. Path planning and navigation behaviors. The goal of the next integration step
addresses the trajectory planning system. This module communicates with the
localization component and the collision avoidance module in order to perform
complex navigation actions. The major task in this integration activity therefore is
to ensure that the corresponding actions are carried out by the mobile platform.
5. On-board user interface. After finishing the integration of the basic navigation
modules, we will connect the user interface to the navigation system. This
includes assessment whether the interface provides the correct output in typical
interaction scenarios. This phase will furthermore include the integration of the
motorized face and the pointing device.
6. Internet access. The final step in the development process is designed to connect
the TOURBOT system to the Internet. Here we will evaluate whether the
navigation system provides the required safety when the platform is controlled by
users over the Web. Additionally we will validate whether the update rates of the
displays are high enough in order to give Web users a “live-impression” about
what is going on at the remote site.
Page 15
TOURBOT Design
4.2
Project
Deliverable
System Validation
For the purposes of final assessment and validation, the project’s immediate application
sites will be involved. The developed system will be installed in the sites for a short
period and will navigate and interact autonomously both with members of the museums’
staff and with museum visitors on-site or through the Web.
Such trials are considered of utmost importance for TOURBOT validation, since they
involve both professional users (museum staff) and ordinary users (visitors) and are
conducted under the every-day working conditions of an application site. TOURBOT
assessment will be based on (a) the stability and effectiveness of the developed
technology in complex environments, and (b) successful performance of Web and on-site
tours. The criteria that will be used are specified in Annex I; they provide effective
measures for system evaluation in a quantitative way:
1. frequency of failures: this measure applies to each individual module of the system
(robotic platform, navigation module, interfaces, communication module) and
quantitatively evaluates their operation in realistic conditions.
2. quality of service in delivered visual information: this measure applies to the system’s
web interface, evaluating the achieved ratio ImageQuality/ResponseTime for a
(prespecified) system set-up.
3. Frequency of uncompleted tours: this measure applies to the system as a whole and
quantifies the system’s effectiveness in carrying out web and on-site tours.
4. Frequency of operator’s interventions: this measure applies to the system as a whole
and quantifies its degree of autonomy; it differs from the previous measure in that a
tour may be completed even after a temporary intervention of the operator.
Page 16
Download