WGLN Proposal Cover Sheet – 2003-2004 RFP

WGLN Proposal Cover Sheet – 2003-2004 RFP
GENERAL INFORMATION ON THE PROPOSAL
Proposal Title
MoRob - Modular Educational Robotic Toolbox
Duration in months
Requested Amount (USD)
12
Henrik I Christensen, KTH
Bernardo Wagner, Hanover
Oussama Khatib, Stanford
Project Director
Co Project Director
Co Project Director
Co Project Director
Free keywords
$300.000 + $40.000 evaluation budget
Educational Robotics, Toolboxes, Robot Curricula, Evaluation of Robotics
Courses, Problem-Based Learning, Autonomous Mobile Robots
Abstract (max. 2000 char.)
Robots offer an excellent basis for teaching a number of different engineering disciplines and
their integration into systems. They provide an interesting vehicle for demonstration of
engineering problems, and practical exercises in student projects help to develop skills like
creativity, teamwork, designing and problem solving. To accomplish courses and projects,
universities need robot platforms which are flexible and modular so they can be easily
customized to the requirements of different subjects. Our Modular Educational Robotic
Toolbox (MoRob) project aims to design and develop an advanced mobile robot system for
teaching undergraduate and graduate students as well as for PhD. research. Characteristics
are scalability, modularity, flexibility and ease of use. Furthermore, MoRob aims to provide a
standard set of control modules and teaching units, with a particular focus on project-based
learning. Therefore, our framework not only supplies an educational robotic platform and
improves student learning, it also supports teaching by reusable and sustaining material.
The new system will be applicable as a vehicle for experimentation in a variety of courses. As
a result, a standardized teaching environment will emerge which will be easy to use in
different applications. Program effectiveness of MoRob will be determined through an
extensive evaluation, carried out by project staff with the help of an experienced evaluation
team with educational and psychological background.
1
1. Project Rationale
In recent years, autonomous mobile robots have developed into a very popular topic with high
visibility in media like television, newspapers and the internet. Their use in research, entertainment
and industrial applications is constantly rising. Going along with this development is an increasing
number of robotics courses offered at universities, as well as dissertation projects in this area. The
popularity of robotics in education comes as no surprise. Robotics is an interdisciplinary topic and
involves components from mechanical, electrical, control, and computer engineering. A key
component of robotics is the need to integrate these disciplines in order to construct systems.
Consequently robotics offers an excellent basis for teaching individual disciplines and their
integration into systems. It is perfectly suited to teach principles of automatic control, signal
processing, intelligent sensing, real-time programming, hardware/software integration, artificial
intelligence, world modelling and a lot more important content out of traditional engineering and
computer sciences courses. Moreover, teaching this technical content could be done easily in
student teams through problem-based learning. This improves and increases the attractiveness of
learning.
In education, robots can be used in 3 contexts: teaching and demonstrating the topics of individual
subjects, practical exercises and lab classes, and in research projects. Experiences with courses
utilizing robots have been reported e.g. on software engineering projects [6], hardware-based vision
and genetic programming [2], data structures courses [3], Artificial Intelligence [10]. Using robots,
progress can be achieved in both theoretical knowledge and practical knowledge. Ahlgren [1]
identified 17 fields in which considerable progress could be made while working on a robot contest,
including physics, mathematics, systems design and teamwork practice. Robots provide an
interesting vehicle for demonstration of engineering problems, and practical exercises in student
projects help to develop skills like creativity, teamwork, designing and problem solving. A great
advantage of using robots as demonstration tools is that abstract concepts can be turned into realworld problems and solutions [7]. Motivation is improved when real world objects are included. In
robotics projects this is the case as students can see, touch and play with their project [5]. Robots
not only appeal to children [4], but are also very popular and stimulating for university students
[12]. Furthermore, they can be used as a motivational factor to attract high-school students to take
engineering courses [9].
To accomplish courses and projects, universities need robot platforms which are flexible and
modular, yet powerful, so they can be easily customized to the requirements of the individual
subjects and research goals. Up to date, no existing "off the shelf" platform meets these
requirements. A problem with most existing robot systems is that the platform is highly dedicated to
a particular task and cannot easily be adapted for teaching a broad range of courses. Therefore,
while robots provide an excellent basis for teaching a variety of topics, a notorious problem is the
lack of a suitable platform for such an effort. Often lecturers have to resort to "primitive" platforms
or construct their own systems. Using existing platforms has the disadvantage of too many
limitations to really illustrate the key concepts of a particular course. On the other hand, the effort to
set up a reasonable system by the lecturers on their own requires too many resources for
implementation and maintenance over time.
A well designed educational kit with associated learning material is provided by Lego Mindstorms.
However, this system does not fit our needs optimally. While it provides a flexible and easy to use
platform, it reaches its limitations very easily (physically, programming power, sensors, scalability,
etc.). Therefore, it can be applied in schools and freshman courses at colleges and universities, but it
is inappropriate for advanced university classes like automatic control, real-time systems, or even in
robotics itself.
2
For this reason, the aim of MoRob is to design and develop an advanced, more flexible mobile
robot system for teaching both undergraduate and graduate students as well as for PhD. research.
This will provide a standard set of control modules and teaching units. To be used in an educational
effort, it is necessary to have a platform with the following characteristics:
•
•
•
•
•
•
Scalable performance
Modular setup to facilitate tailoring to courses in the different disciplines
Flexible interfaces to allow a minimal learning curve
Diverse set of interfaces to accommodate different disciplines
Easy configuration
Interfaces to standard educational tools such as MATLAB, Java and C++
Such a modular robotic toolbox should close the gap between research in robotics and current
teaching. This will improve and increase the attractiveness of teaching because it will be much
easier to integrate research results in education than it is possible today. To support this, our robotic
toolbox will be open for extensions and improvements by everybody all over the world (open
source approach). In detail this implies that all interfaces (software and hardware) will be well
defined and all software will come in source code without any copyright claims (public license
approach).
The system will be accompanied by teaching units (course materials), which can be easily used and
adapted to a variety of courses. To share the system across a number of institutions, all
accompanying materials will be made available in a common web facility to allow easy exchange of
results across the institutions. As part of this effort the three institutions will bring together their
expertise to develop material of superior quality and coverage. Furthermore, a modular robot
curricula will be defined which can serve as a model from which individual modules or whole
courses can be drawn and used at different institutions.
1.1. Target Population
MoRob will be of great use in a variety of courses for undergraduate and graduate students as well
as for PhD research (see above). As all materials will be made available online, not only the
participating institutes in Sweden, U.S. and Germany will benefit from these developments, but
institutes all over the globe have the chance to take advantage of our project. Initial use is and will
be on the following courses at our institutes:
Hanover (also see 2.3 for more details)
• A problem-based robotics exercise has been added to the hardware laboratory for 5th semester
Computer Science undergraduate students. This proved to be very successful.
• MoRob technology has been added to the notebook seminar at the Institute for Communication
Science at Hanover. Here, a number of undergraduate student teams carried out a project-based
task as a lab session of their course (1 full semester). Completed successfully July this year.
• A new MSc. program in Systems Design (starting autumn 2003) will incorporate a series of
robotics projects (3 consecutive semesters) as an essential part of the degree. Here, robotics will
be integrated for motivation and as a core part for understanding Systems Analysis and Design.
Stockholm
• The "Autonomous Systems" specialisation in Computer Science involves laboratory exercises
that utilize the tools developed in MoRob to make the exercises more efficient.
• The course on "Autonomous Systems" (4th year) is being modified based on the evaluation
feedback from project year one to focus more on programming and less on hardware design.
3
• A new international MSc. specialisation on robotics (the first in Europe) is presently in
preparation based on the experience from MoRob.
Stanford
• The "Experimental Robotics (CS-225)" class has successfully benefited from the toolkits
developed within the MoRob network to teach students the basic knowledge of robot systems
and robotics control.
• A new class named "Experimental Haptics (CS-277)" will carry out next year's student projects
based on the MoRob technology to study more advanced problems in the field of haptic
teleoperation and exploration.
• New graduate students studying robotics will benefit from and develop their own research using
MoRob toolkits.
Although initial use is focused on undergraduate and graduate teaching at university level, the
general concepts of MoRob will also be applicable at K-12 level. Our system will be flexible and
scalable so that the robot systems can be adapted to the requirements of different learning scenarios.
In particular, the open source approach should be of great interest to schools as well where cost
efficiency of learning materials is of vital importance.
2. Progress Summary (up to date)
The project was initiated in October 2002 and immediately a kick-off workshop was organised at
Stanford in association with the inauguration of the Wallenberg hall. Subsequently, work has
progressed on our Workpackages at all 3 institutions (see 2.1.–2.3. for details). In December 2002, a
joint project meeting with staff from the three institutions took place in Hanover where we
coordinated our work in detail. It was discussed in which form specific collaborations on the
MoRob workpackages are taking place in the first project year. This was followed by a further
meeting in March.
Overall the MoRob project has come to a successful state of continuous development with
interesting collaboration between the participating groups. As an example, Prof. Wagner, Hanover,
is now a leading member of the educational committee of the European Robotics Network (an EU
FET initiative) that is coordinated from KTH in Sweden. At the same time, Prof. Khatib, Stanford,
is a co-editor of the Springer Series STAR that has been initiated by the network.
A substantial contribution to the success of the project is the complimentary expertise of our 3
institutions: Stanford and KTH both excel in technical expertise in their subjects, while the L3S in
Hanover provides outstanding experience in educational matters.
2.1. Stockholm
At KTH a toolbox for introductory control has been developed. The basic kinematic of the platform
has been derived and used for design of a simple control toolbox to be used in introductory control
courses. In addition, the work has involved design of an open-source software platform for easy
integration of modular robot components. The software system is part of a joint EU-WGLN effort.
An initial release of the software was made in December 2002. The system is at present used in two
commercial prototype projects, to explore if it can also be used for real applications. A course on
"Autonomous Robotics'' was going on with 40 students that constructed their own robot system that
could play hockey.
An effort to define a joint robotics Master has been initiated and a preliminary outline of the course
package for an international Master in Robotics has been sketched. It is anticipated that such a
Master might be implemented from 2004 at KTH with participation of four different departments.
In addition some of the WGLN effort from KTH will be show-cased at a robotics exhibition at the
Stockholm Science Museum 2003-2006. The exhibition is a tour of robotics from production to the
4
home environment. The project team at KTH played an active role in the setup of the exhibition and
the above mentioned course on "Autonomous Robotics" had its final project exam at the exhibition.
Recently, an effort on a MATLAB toolbox for navigation has been initiated. The aim is to provide
an open-source toolbox for navigation and mapping which will be integrated into an international
web facility with datasets for comparative experiments. The toolbox is designed in a collaboration
with several leading institutions worldwide.
2.2. Stanford
In terms of efforts the Stanford group has developed a new method for force based control that is
used as part of the CS225A course (Figure 1). This at the same time provides an ideal tool for
studies of control and handling of delays, a notorious problem in complex control. In addition the
methods have been used for set up of an experimental platform for tele-operation of systems, which
is an ideal experimental platform for educational purposes.
Figure 1: June 2003 - Demonstration day of final class projects of CS-225A Experimental Robotics
using Puma 500 robot manipulator.
The Stanford group has also developed a new software environment used as part of the CS225A
experimental robotics course (Figure 2). The aim of this project is to develop an expandable
simulation environment where students experiment and learn the foundations of robotic control,
programming and simulation. During theory classes, students acquire the necessary background in
mathematics and physics to understand the theoretical concepts. To validate these notions, students
accomplish small experimental projects, each illustrating a theme presented in class. All
experiments are performed using the PUMA 500 robot manipulator and for safety issues, algorithms
are always first operated using the simulator. With this new environment, students can run
experiments step-by-step and verify the correctness of their programs before switching to the real
robot. Both the virtual and real robot may be monitored in real-time for data acquisition and
visualization with GUI toolkits.
April 1st of this year, 22 students enrolled in this class and studied, explored and developed
controllers using our new framework. 7 Teams composed of 3-4 students took part to 4 introductory
mini projects in preparation to their final project. The final project consisted of a more challenging
problem combining manipulation, dynamic skills, games, learning, perception and augmented
haptic teleoperation.
Our new education software environment is developed under RT Linux and is now composed of the
following modules:
• A dynamic simulation engine, which computes in real time the motion of multi-link robots
• A robot control module, which incorporates all major functionalities to develop custom
controllers
• An extension library, which facilitates the interfacing with extension modules such as haptic
devices, forces sensors, video cameras or other sensory based devices.
5
Figure 2: Schematic of the software environment.
During the class new software and hardware modules were developed and added to the general
framework:
• A gripper with force feedback sensing capabilities
• GUI module for rendering and sampling control signals from the real robot
• A software library for reading data from various force sensors
These contributions have expanded the capabilities our software package and will help our future
students develop and experiment new applications within the experimental robotics class.
2.3. Hanover
A key part of our work is the development of a Scalable Processing Box (SPB), a standardized
processing unit for easy experimentation with any kind of robotic platform. The SPB provides a
real-time framework for simple usage of interfaces and algorithms. The basis is Linux/RTAI
combined with a real-time API for common interfaces, e.g. CAN bus, Ethernet, serial, etc. (see
Figure 3 for a schematic overview of the architecture). The runtime system can be booted from a
compact flash card (CF-card) to ensure the flexibility needed in an environment where different
student groups have to work with one hardware platform. A suitable Linux distribution for the CFcard has been built. A combination of pre-compiled packages and easy to use installation scripts has
been created to keep the handling of the distribution as simple as possible. The design process of the
SPB is on-going, a first version will be made available online in September 2003.
In terms of the development of a Robotics curriculum and project-based robotics courses, our initial
focus has been on the development of 3 courses at different levels: (i) a Lego Mindstorms project
for teaching introductory courses to undergraduates. This was set up and carried out in January by a
number of 5th semester student groups as part of the hardware laboratory. See Figure 4 for a picture
of the students' final presentation of this project. This course was also used as a testbed for initial
evaluation of the state of robotics in education. A video of the final presentation of the students can
be found under www.learninglab.de/morob. (ii) a new lab project for advanced undergraduate
6
teaching of student teams with an ER1 platform was carried out in the summer semester (AprilJuly). (iii) a new MSc. program in Systems Design will start in autumn 2003 at Hanover
University. Curriculum development has been completed. This will incorporate a series of robotics
projects (3 consecutive semesters) as an essential part of the degree: System analysis and modelling;
Synthesis and design; Implementation and integration.
Figure 3: Architecture of the Scalable Processing Box (SPB).
Figure 4: Robot demonstration at final presentation of Hanover Miniproject.
2.4. Evaluation
The main part of the evaluation of the MoRob system is scheduled for the 2nd project year.
However, during the first year, a questionnaire was used on existing courses at the three institutes to
examine aspects of the current state of robotics education. This can then be used for comparison,
and initial results can be reflected in further developments of MoRob.
The questionnaire has been designed in Hanover and used on students from three different
undergraduate classes. The testbeds were: (i) Lego project "Mobile Service Robotics" within a
hardware lab at Hanover; (ii) Experimental robotics class at Stanford; (iii) Autonomous Systems
course at KTH. There were two versions of the questionnaire: one for students and one for teachers.
For this first phase of evaluation within MoRob, the hardware lab at Hanover was one of the
courses to be looked at. A few insights can be reported after this part of the evaluation with our
Lego participants: within the problem-based learning task, students could bring in their own ideas to
a large extent and had to acquire new knowledge on their own. The tutor only had to give little
directions and students could organize their work freely. Teamwork and communication skills were
7
felt to be among the most important things learned during this project. Overall, the students judged
the Lego platform and its environment as positive and appropriate. However, there were a large
number of individual comments highlighting the shortcomings of this platform, for example:
imprecise sensors, limited software, small memory, problems with multithreading and arithmetic.
At KTH, the "Autonomous Systems" class was the subject of the evaluation. The aim of the course
is that students design a robot that can participate in a hockey tournament. The evaluation clearly
demonstrated that the course is highly inspiring and many students have their first encounter with
hardware design and low-level driver design. Overall the class is extremely well received and it has
a very good reputation with the students. The design of low-level computer software is at the same
time frustrating from a debugging point of view, which has resulted in a re-design of some of the
lectures and a slight redesign of the course for 2004.
During the experimental robotics class given at Stanford last spring, students were trained to use the
new environment by programming small micro projects. These exercises were intended to present
the various functionalities of this new framework and illustrate theoretical concepts presented
during the class. Later these students developed their personal final project based on the experience
acquired with the introductory lessons. For this first evaluation, we measured the effort and
difficulties encountered for understanding and manipulating each module of the toolkit. In the
overall, the students appreciated the more advanced GUI tools developed for this class but
experienced a slightly more difficult learning curve when developing their own modules since more
understanding of the overall software architecture was necessary. The feedback and comments from
this first evaluation will be used to modify certain aspects of the software architecture and
functionalities.
2.5. Publications
• Gerecke, U., Wagner, B. and Hohmann, P. "Educational Robotics in a Systems Design Masters
Program". 3rd IEEE International Conference on Advanced Learning Technologies
(ICALT'2003), Athens, Greece, July 2003.
• Gerecke, U., Wagner, B. and Hohmann, P. "A Modular Educational Robotic Toolbox to Support
University Teaching Efforts in Engineering". International Conference on Engineering
Education (ICEE 2003). Valencia, Spain, July 2003.
• Hohmann, P., Gerecke, U. and Wagner, B. "A Scalable Processing Box for Systems Engineering
Teaching with Robotics". To be presented at Sixteenth International Conference on Systems
Engineering (ICSE'2003). Coventry, UK, September 2003.
• Oreback, A. and Christensen, H.I. "Evaluation of architectures for mobile robotics".
Autonomous Robots. Vol 14, No 1, pp 33-50, January 2004.
• Fayaz, A. "On the Fuzzy State Estimation of Unicycle-type Mobile Robot using Fuzzy
Difference equations". 7th World Multi-conference on Systems, Cybernetics and Informatics.
Orlanda, Fla, July 2003.
• Conti, F. and Barbagli, F. "The CHAI Libraries". Eurohaptics 2003 Conference. Dublin, Ireland
July 2003.
3. Work Plan
To provide a modular robot platform which accommodates the educational requirements put
forward in section 1, there is a need to construct a system that includes:
• A flexible architecture: The architecture must consider mechanical, electrical and software
interfaces to allow instructors to assemble systems into operational units. To allow use of the
system in courses ranging from beginners to advanced and with different contents, there is a
need for a layered architecture that allows interfacing to the system at all levels from motors to
advanced behaviours. Consequently, a comprehensive API is required to accommodate this.
8
• The system must have a variety of basic components to allow for construction of basic mobility
systems, sensory modules such as odometers, ranging (sonar or laser), control computer system,
etc. There is thus a need for LEGO like, but more flexible and powerful modules to be used for
the construction of systems.
• A library of standard modules for navigation, detection of obstacles, basic trajectory following,
etc. so as to allow different instructors to focus on different part of the system.
• A simple set of interfaces to be used with MATLAB and Java to enable a smooth learning curve
for the use of the systems.
• A comprehensive suite of documentation to allow simple use of the system and also a quick start
to get it going.
Initially we are using a flexible off the shelf system for this. A good candidate for such a system is
the robot kit provided by Evolution Robotics, which has been put into use during the first project
year. This system is constructed from a modular set of aluminium profiles and with a standard
control computer that can be interfaced to a laptop. The system comes with a comprehensive
programming toolbox for interfacing using C++, MATLAB and a scripting language based on a
Java API. The system is sufficiently flexible to allow use for instruction at any level from
introduction to programming to advanced control and signal processing. However, the hardware and
its extensibility are limited and we have moved on to designing in parallel our own robot kit, made
up of standard parts available.
Using these platforms, the consortium will develop a standard curriculum for teaching a diverse set
of topics from autonomous robotics over control to signal processing. This will include:
• A toolbox for signal processing exercises
• A toolbox for teaching of introductory control
• A toolbox for teaching navigation
• A set of methods for exercises in signal processing and pattern recognition.
• A standard robotics competition to be held at each of the three involved institutions
To accommodate the use of the systems, a standard set of lecture notes will be developed which will
include topics on:
• Kinematics & Dynamics
• Architecture for mobile robotics
• Programming paradigms for robotics
• Sensors for mobile robotics
• Signal processing of sensory information
• Advanced control of robotic systems (path planning, behaviours, co-ordination)
• Systems engineering in robotics
The set of lecture notes will be accompanied by a set of standard exercises developed across the
three institutions. The lecture notes, standard slide presentations, exercises and sample code /
construction examples will be shared on a common web facility to allow easy exchange of results
across the institutions. As part of this effort the three institutions will bring together their expertise
to develop material of superior quality and coverage.
3.1. Project Description KTH (Henrik Christensen)
The use of a mobile platform in education requires a flexible infrastructure for composition of
control systems and a rich set of libraries for use of robots in programming, control, AI and
machine learning courses. To be truly useful the platform needs to be sufficiently flexible to be used
as a standard platform for most laboratory exercises and project oriented exercises. To this end the
KTH effort has focussed on set up of an open robot control system and programming of basic
9
interfaces that allow use of MATLAB (and C++) as a basis for all exercises. In the second year of
the project the KTH work will in particular emphasize
• An open source robot control system with C++ and Java interfaces
• A MATLAB toolbox for navigation, mapping and localization
• Vision-based localization and mapping
• Educational package for teaching of Autonomous Systems
An Open Source robot control system with C++ and Java interfaces
At KTH the OROCOS effort has generated a solid basis for architectures in robotics. The software
has been made available on the internet and is at present used in two commercial prototypes and by
three external universities. The toolbox includes basic robot and sensor interfaces and core libraries
for sensory processing. To be of utility in a wide range of educational efforts the software package
must be packaged so as to hide some of the complexities in robot programming. Today the system
facilitates any type of architecture which is perfect for research but for education it is necessary to
have standard architectural models such as purely deliberative, purely reactive and hybrid
deliberative models available to allow the student/user to focus on the use of a particular model.
Consequently, standard software patterns for reactive systems and hybrid deliberative systems will
be developed and provided as a reference model for implementation of particular systems. In
addition the present system presupposes that all software development is performed in C++, a good
model for research work. But as introductory courses are taught in Java, there is a need to augment
the OO interfaces with a Java model.
MATLAB toolbox for navigation, mapping and localization
The by far most common problem in mobile robotics is the need to perform navigation to allow a
robot to move from a position A to another position B. Navigation involves three tasks: Where am
I? How do I get to B? When have I arrived? The first and the last issue are related to localization –
estimation of ones position with respect to the environment. While the second issue involves
planning of a sequence of actions to traverse the trajectory from start to goal. The localization effort
is relatively easy if a model of the environment is available, otherwise one is faced with a catch 22
situation. Use of the position of the robot to build a map of the world, use the map of the world to
estimate where the robot is. The concurrent resolution of these two problems is termed
"Simultaneous Localization And Mapping" (SLAM). The model of the world also influences the
ability to perform planning to determine a sequence of actions for mission completion. In this part a
MATLAB toolbox for studies of SLAM will be developed. The toolbox will be build as a modular
structure that allows easy exchange of components related to feature detection, method of
estimation (EKF; particle filter; CFD; …), integration of features, and analysis of performance.
Through access to a flexible toolbox new methods for comparative studies of methods for SLAM
are made available which will be particularly useful in an educational setting to illustrate the utility
of a variety of different methods along the processing chain. Particular emphasis will be put on
making the toolbox self-contained and modular for easy use even by introductory level students.
The toolbox will be used during the spring of 2004 for a course on behaviour-based robotics to
facilitate evaluation of the effort.
Vision-based localization and mapping
One of the last frontiers in localization and mapping is use of vision-based methods (v-SLAM).
Recent progress on visual codebooks and affine invariant features suggests that it might be possible
to achieve a break-through in this area. In addition it would allow combination of computer vision
and robotics into a coherent framework for teaching of control, machine learning and recognition.
Consequently the effort during this year will make an attempt to generate a visual toolbox for
10
SLAM. The work will in part be based on the image processing toolbox in MATLAB to avoid
replication of the work.
Educational package for teaching of Autonomous Systems
Based on the feedback received during year 1 of MoRob (the evaluation package prepared by L3S)
and due to change of staff there is now a golden opportunity to revise the educational package for
the course on "Autonomous Systems" to allow use of a modular robotics system for teaching of
robotics in which hardware, control, embedded systems and software engineering can be combined.
The toolboxes developed this far and as part of the present project will be utilized to prepare an
educational package where the material which is used for demonstration of basic functionalities as
part of lectures and lab exercises is based on the same package. Finally, the programming of hockey
playing robots will be prototyped in a single environment. The educational package will consist of
lecture notes (architectures, sensor processing, navigation, learning and integration), standard
examples of robot behaviours, and sample code for rapid prototyping of systems. The full package
will be evaluated by the end of the spring term 2004 and used as input to the formulation of the
international Master in Robotics.
3.2. Project Description Stanford (Oussama Khatib)
Experimentation is an essential component of the “solid background in the fundamentals of
engineering” that the Stanford Robotics Laboratory seeks to provide. It offers students the
opportunity to conduct experiments based on theoretical developments and examples studied in
class. Because of the very multidisciplinary character of robotics, students are exposed to a wide
range of fields including mechanical, electrical and computer engineering and need to acquire some
basic knowledge in all areas in a short amount of time. To help students accelerate their learning
curve we need to provide reliable and easy to use equipment with which they can experiment and
develop their own ideas. The hardware tools needed for robotics experiments are generally quite
expensive, difficult to maintain, and are often subject to an important amount of strain during
development phases. Safety is another serious concern when working with high degrees of freedom
robot manipulators, where programming errors in the early developments stages present real risks
that cannot be entirely eliminated.
During the experimental robotics class taught at Stanford, various advanced projects are organized
during the class and cover the following topics:
• Robotics control and manipulation
• Haptics teleoperation of a robot
• Design of haptic interface solutions
• Haptics and robotics interactions with virtual environments
During the first year of the MoRob project a basic simulator and a set of control libraries were
developed and successfully used by the students for the early developments and for the verification
and validation of their ideas before implementing them on the actual physical robot. To expand the
possibilities offered by this environment and after receiving feedback from our students, we plan to
expand our current toolkits with the following new modules:
• An extended dynamics engine to simulate environments with multi link robots
• An editor to design virtual robots using the XML file format
• A gripper with force sensing capabilities for robot manipulation and grasping
• A toolkit to design and control haptic interfaces
Robot experimentation and simulation environment
11
The dynamic simulation engine is a key component of a simulation platform. The simulation engine
must be both accurate and in order to provide the fidelity and interactivity needed for robotics and
haptics simulation. The simulation system must also address the contact resolution problem in order
to simulate contacts and impacts between the robot and the surrounding environment. Our new
simulator will offer support for running multiple multi-link robots, allowing to study and
experiment cooperative control of multiple robots and cooperative manipulation tasks. A simple
robot editor will be developed to build XML configuration files describing the geometry and
physical properties of the robots. An extended control library will incorporate the major functions
for developing custom controllers for each different type of robot. It will also be possible to switch
between the dynamic simulation engine and a real robot to experimentally validate simulated
results. An augmented graphic user interface will render in a three dimensional graphical
representation of the virtual environment. Graphical menus and widgets will constitute an intuitive
tool for analyzing, sampling and modifying the different parameters of the virtual world.
Gripper for robot manipulation and gasping
To expand the capabilities of our current robot manipulators we will develop a 1 degree of freedom
active gripper with force feedback sensing. A control interface will provide necessary
functionalities to dialog with the actuators and strain gauges mounted on the device.
The first applications will be in teleoperation where, for example, gross motion and high level
planning is done by a human operator using a haptic device. Fine motion and dynamic tasks will be
taken over by a local sensor-based control loop. As our understanding of autonomous task-directed
manipulation increases, these capabilities will permit fully autonomous robot operation for
increasingly sophisticated tasks.
Haptic interfaces toolkit
Haptics is literally a hands-on discipline since users interact with haptic devices using different
parts of their body and, most classically, their hands. As a consequence of this it is imperative for
practical projects on haptics to enhance any theoretical explanation with more practical elements.
The two keys modules we will develop are an experimental electronic board, which will allow
students develop custom design haptic devices, and a software library, which will provide the
necessary tools for controlling their device. The software API will serve two different types of
users: high level programmers that need an easy to use API for creating haptic based applications,
such as a remote teleoperation a robot through a network for instance, and students that need to
experiment with new devices and new algorithms without having to worry about writing drivers and
complex GUI solutions. The software package will offer the following capabilities:
• A C++ based easy to use library to teach introductory classes to haptics
• An open source and easily expandable in order to be used in a variety of different projects with
very different scopes
• An extension to the robotics simulation environment
• To intrinsically support new hardware, new haptic rendering algorithms and new simulation
techniques for rigid and deformable objects
3.3. Project Description L3S (Bernardo Wagner)
To establish a flexible robot system for a wide range of courses, and to demonstrate its applicability
in teaching and research, the efforts at L3S focus on the following points:
• A Scalable Processing Box (SPB) for easy experimentation with any kind of robotic platform
12
•
•
•
•
Modular robot components for education
Toolboxes, demonstrators and associated learning materials
Internet repository
Evaluation (see 3.5)
A Scalable Processing Box (SPB) for easy experimentation with any kind of robotic platform
The SPB will be a standardized, scalable, modular and easily combinable processing unit for
application in educational robotics. It will provide the basic infrastructure for control software on
our platform and allow for modular and scalable computing power on the robot. This will offer a
real time framework for easy use of interfaces and algorithms.
There are two key points to this work: development of the hardware module and development of a
software architecture that delivers a set of standardized interfaces, data structures, etc. which allow
development of individual modules for different tasks. Modules are interchangeable, therefore
modules developed here in Hanover can be easily used at Stanford and Stockholm and vice versa.
Once such a box is created, it can be used in a flexible way. Different modules can be designed for
different robot competencies, e.g. a motion control box or modules for different navigational tasks.
Depending on the requirements of an actual system, the necessary modules can be mounted on the
robot and easily connected. This setup facilitates tailoring to specific courses or research needs. The
number of mounted modules can vary and be adapted if the requirements change. The boxes can
also be used on different robot platforms, which allows easy transfer to other institutions.
Modular robot components for education
These modular components will form a robotics kit to build flexible platforms tailored to teaching
and research. The mechanical setup will be easily customizable to the requirements of the users
(like Lego, but much more robust). To equip the robot individually, the kit will include a selection
of components, e.g. servo drives and sensor modules like odometry, laser scanner, ultrasound,
inertial sensors, etc.
Individual components (aluminium profiles, sensors, actuators, controllers) have to be
complemented to obtain reasonable kits which can be used in a variety of courses and lab exercises.
This also requires testing the kits on a number of sample applications in actual courses,
customization of existing software and completion of the component sets. Feedback of the students
will help to optimize the design and configuration of our new kits.
Toolboxes, demonstrators and associated learning materials
Based on the basic infrastructure described above, we need a comprehensive library of toolboxes to
use the system in lectures and exercises in a variety of different subjects. In robotics, for example,
we need standard components for navigation, object recognition, planning, etc. to demonstrate the
key concepts of our courses. Furthermore, these toolboxes can be used in research settings at PhD.
level. MoRob allows to design a number of such demonstrator modules which can easily be
exchanged on the robot depending on the required robot tasks.
As a sample module, we are developing a demonstrator for localization experiments, e.g. using a
laser scanner for simultaneous map building and localization (2D/3D). With this demonstrator we
can work with students in our lab, evaluate the pedagogical merit, and test our software architecture
and the whole system.
13
To use the system in teaching, we need associated teaching units (course materials) which can be
easily adapted to a variety of learning scenarios. Within MoRob, we are developing such materials
which will be made available to teachers and students on a common learning platform.
Furthermore, Prof. Wagner has become a leading member of the educational committee of the
European Robotics Network (EURON) that is coordinated from KTH. Within this network, we are
responsible for the Workpackage on Teaching Material, where we will promote and coordinate
education and training activities within the robotics community.
Internet-Repository
For other institutions to access all resources created within MoRob, they have to be made available
within an internet framework. Therefore we are creating an Internet repository for sharing of
material: a www-portal for course material and technical documentation. This way, everything
developed can be shared. Furthermore, a detailed documentation should ensure an easy re-use of all
material. In detail, the repository will comprise: lecture notes, slide presentations, exercises, SPB,
robot control software and toolboxes, sample code, construction examples, documentation,
curriculum.
3.4. Collaboration and Integration
As mentioned in the progress summary above, a number of fruitful collaborations have started
during the first project year. Furthermore, we have had a number of team meetings and staff visits
(see interims report for more details). In the second project year, we will continue these exchanges
and strengthen our collaborations. In detail, our collaboration strategy involves the following
components:
• Mutual visits of faculty and graduate students, alternately in Stanford, Stockholm and Hanover,
at least three times a year.
• Regular meetings by video conference.
• Exchange of students during PhD. study or Master thesis.
• Common modular robot curricula.
• Common robot platform for teaching.
• Single set of material for courses etc.
• Implementation of building blocks for the educational robotics toolbox at the three collaborating
universities.
• Common Internet repository for teaching robotics, including material from the three institutions.
• Collaboration on individual research items, e.g. mobile robot software architecture for teaching
(SPB from Hanover and OROCOS from KTH) and vision/force sensing (KTH and Stanford).
• Combined representation in the Educational Robotics community (e.g. involvement on the
educational committee of EURON).
• Combined efforts for publications within educational robotics.
• Organization of educational robotics sessions/workshops at conferences.
• Organization of an international WGLN robotic competition with students from Stockholm,
Stanford and Hanover at least once for evaluation. Further competitions will be organized should
this prove to be successful.
• Co-organization of summer schools in robotics.
• Evaluation of pedagogical value of MoRob using a common evaluation procedure.
3.5. Evaluation
14
The Learning Lab Lower Saxony, represented in the MoRob project by Prof. Wagner, has its own
evaluation team with collaborators who have an educational or psychological background. The
MoRob project will be supported in doing high quality evaluation by this support team, consisting
of Christoph Richter and Heidrun Allert, who both have experience in educational evaluation in
WGLN projects like I-Labs and PADLR.
With our evaluation, we intend to provide information as to the suitability of project learning for
engineering education concerning robotics and using our MoRob system. We plan to use the
"Theory-anchored evaluation" approach, which has the WGLN adopted "to understanding,
managing, and evaluating educational technology initiatives in higher education and other settings"
[8,11]. To achieve this, we will leverage a summative evaluation to determine program
effectiveness. Our knowledge interests concerning our goals and the outcome of the project are:
• Does our MoRob system and the project method improve student learning in robotics,
mechatronics and autonomous systems?
• Is our system useful to integrate research and scientific methods better and faster in student
teaching?
• What is the best way to supplement the project and problem-based learning by courses?
• Is MoRob a suitable way to transform our holistic pretension to integrate different content from
engineering education and computer sciences courses in the project learning process?
• Can MoRob initiate collaboration between students from different countries?
To answer these questions we will carry out comparative evaluation studies with the following
project participants or control groups: students BSc., MSc. and PhD. We want to measure the
success of MoRob by evaluating the following elements of the learning process of the students:
motivation, creativity, knowledge gains, theoretical concepts used, precision, quality of results, how
do the students cope with technical challenges and how is their understanding and use of scientific
and engineering methods. The pedagogical value of MoRob and its modules will be additionally
evaluated by checking the project results (dependent variables). This will be supplemented by
qualitative evaluation of the solutions (algorithms, data structures, etc.). A comparing evaluation
study will be possible for example for the different platforms Lego Mindstorms vs. MoRob
(independent variables). To answer these questions, we will implement two different reference
frameworks: in project learning with MoRob and with Mindstorms.
The testbeds for initial first year evaluation have already been described in 2.4. Evaluation testbeds
for full ongoing evaluation will be the new MSc. Systems Design at Hanover, the courses on
Behaviour-based Robotics and Autonomous Systems at KTH and the Robotics Class 225 at
Stanford.
3.6. Project Outcome
The basic robot modules which we want to develop will be flexible and powerful enough to be used
for robot competitions in local classes as well as in international collaborations. To summarize, the
benefits of the MoRob project will be to:
•
•
•
•
•
Supply an educational robotic platform.
Improve student learning especially in robotics, mechatronics, autonomous systems and
computer science.
Increase the attractiveness of learning through problem-based and experimental learning
while performing student projects (learning by doing).
Support teaching by reusable and sustaining material.
Increase the attractiveness of teaching by better and faster integration of research.
15
•
•
Perform an educational evaluation in a number of testbeds.
Initiate faculty collaboration and exchange within the engineering and computer science
departments.
Having developed the Modular Educational Robotic Toolbox, collaboration could even be more
interdisciplinary, e.g. including biology, psychology etc., as research groups from these departments
might not have the expertise to develop their own experimental robot. Therefore MoRob will also
simplify doing robotic experiments in other than engineering disciplines.
The new system will not only allow for easy construction of robot systems and their use in robotics
courses, it will also be applicable as a vehicle for experimentation in a variety of courses. The
availability of such a standard toolkit for teaching with robots can serve as a standard platform that
students become well acquainted with during their studies. Initially they might use the platform for
exercises in programming, at a later stage sensors on the platform may be used for exercises in
signal processing. In advanced control the students may be required to design a trajectory following
algorithm or a new PID controller for improved traction. At a relative late stage in their studies they
might be required to assemble a new system for a particular exercise or competition.
Consequently one might imagine that the system becomes an embodied companion for exercises in
much the same spirit as MATLAB as it provides a suitable tool for exercises for a variety of
different disciplines and courses. Therefore, a standardized teaching environment will emerge
which will be easy to use in a variety of applications.
MoRob developments will also play an important part in the education of PhD. students. To carry
out research, they need a system which is flexible and versatile so it can be adapted to their specific
research needs. So far, many PhD. students face the burden to develop a robot system from scratch
when they start on their project and have a research proposal ("re-inventing the wheel"). With
MoRob, the modular kit and the SPB, they can quickly combine the modules that they need and
customize the system to work on the research questions. This way, PhD. students can concentrate
on their actual research task very quickly, rather than having to deal with creating their research
tools.
In addition, educational resources provided through MoRob can be shared across a number of
institutions so that material and exercises prepared can be utilized by several instructors. This way
the investment in new educational material becomes worthwhile and a community of teachers can
combine their efforts and experience.
3.7. Timeline
3.7.1. KTH
Robot infrastructure:
• Month 3: release of full Corba/real-time package
• Month 6: Java interfaces to system
• Month 9: standard architectural patterns
• Month 12: first full documentation system
Navigation, localization and mapping toolbox:
• Month 3: first reference implementation
• Month 6: modular toolbox (Paper submission to IROS)
• Month 9: use of toolbox in behaviour-based robotics
• Month 12: evaluation of toolbox
16
Vision-based localization and mapping:
• Month 3: draft of vision-estimation method (code-books)
• Month 6: first implementation
• Month 12: publication of first results on v-SLAM
Educational package for autonomous systems:
• Month 3: draft of full educational package
• Month6: draft of full set of lecture notes
• Month 9: full package available
• Month 12: evaluation of package after completion of the course
3.7.2. Hannover
Scalable Processing Box (SPB):
• Month 3: first release of SPB with comprehensive documentation
• Month 6: extension of API, drivers and documentation
• Month 9: sample applications and evaluation in different robot scenarios
• Month 12: publication of SPB results
Modular robot components for education:
• Month 3: composition of robot kit
• Month 6: sample application in student work
• Month 9: evaluation of system
• Month 12: optimization of system after evaluation feedback
Toolboxes, demonstrators and associated learning materials:
• Month 3: first implementation of demonstrator with SPB
• Month 6: documentation of demonstrator
• Month 9: evaluation on MSc. course
• Month 12: full package of materials for MSc. course (first year)
Internet-Repository:
• Month 6: framework for online repository
• Month 12: all completed materials online
3.7.3. Stanford
Robotics hardware equipment:
• Month 3: development of a robotics manipulation gripper with force sensing capabilities
• Month 5: software library to control gripper within the simulation environment
• Month 7: duplication of the gripper for experimental robotics class
• Month 9: evaluation of the hardware during experimental robotics class
Robotics simulation environment:
• Month 3: extension of the robotics HGUI simulation environment to support multi degree
freedom robots with full body collision detection
• Month 4: XML based robot editor
• Month 6: evaluation of the simulation environment during experimental robotics class
• Month 12: release of the robotics simulation environment
Haptics toolkit:
17
•
•
•
Month 3: development of a control board for teaching haptic device architecture and design
Month 6: evaluation of the haptic control board during experimental haptics class
Month 12: release of the haptic libraries
4. Sustainability
Robotics is a state-of-the-art technology which has gained considerable momentum in recent years
with large emerging commercial potential. Therefore this technology is only at its beginning with
prospects for a successful future. This ensures that MoRob technology will have a broad
applicability in education for many years to come. Within the project, we are building a knowledge
base of effective strategies for using such technology which will be beneficial to many users. As
described in 1.1, it is directed at a variety of different learning scenarios where it is applicable.
Online provision of materials within our repository will ensure that such a broad audience can be
reached. By providing reusable and sustaining material, we support teaching and offer solutions
which enable universities to build innovative learning tools reaching beyond the timeline of this
project.
Besides establishing the internet repository, we have also started to publish our work and present it
at conferences and in journal articles. These efforts will be increased in the second project year and
we have planned to organize special sessions on educational robotics both in the robotics and
educational communities. Contacts to other researchers to foster this development have already
been established. Of further impact on the dissemination of MoRob technology and findings will be
the fact that Prof. Wagner has become a leading member of the educational committee of the
European Robotics Network (EURON). Within this framework, we are responsible for the
Workpackage on Teaching Material, which ensures that MoRob concepts and results can also be
disseminated through the EURON channels to a wider community.
With its growing success, robotics does not only receive attention in the scientific community, but
also in industry. Our modular robot concepts and architecture will also provide interesting solutions
for industrial applications.
5. Staffing
5.1. Stockholm project participants
• Kai Arras is a post-doctoral researcher at KTH's Centre for Autonomous Systems (CAS)
working on localization and mapping. Dr. Arras got his PhD from EPFL in July 2003. He
participated in the setup for the Swiss EXPO-02 robotics exhibition and has extensive industrial
and research experience in robotics.
• Anders Oreback is a doctoral student at KTH and the principal software architect behind the
OROCOS@KTH effort. He is a leading open source software developer and has significant
experience from industry prior to starting his PhD studies. He is expected to complete his PhD
by November 2003 and take up a full time position on modular software for educational efforts
at CAS.
• Li Wenfeng is a post-doctoral researcher at CAS sponsored by the Chinese Academy of Science.
He is primarily responsible for the definition of real-time aspects in the KTH effort in MoRob.
His background is in industrial automation from Wuhan University.
5.2. Hanover project participants
• Uwe Gerecke is working at L3S as the team leader for MoRob. Besides project coordination and
external affairs, he is working on the development of toolboxes/demonstrators, the internet
18
•
•
•
•
repository and materials, and contributes to project evaluation. Holding a PhD in robotics, his
interest is in robot navigation packages.
Patrick Hohmann at L3S is the main developer of the Scalable Processing Box (SPB). Besides
implementation and testing of the SPB, he is closely working with Uwe Gerecke on other
MoRob issues.
Christian Brenneke works at Prof. Wagner's Institute for Real Time Systems (RTS) at Hanover.
His contribution to MoRob is the development and implementation of SLAM (Simultaneous
Localization and Mapping) algorithms for the navigation toolbox, as well as modular robot
components.
Oliver Wulf also works at RTS. His contributions are communication structures for robot
packages and 3D localization for the navigation toolbox.
Christoph Richter is a key member of the L3S evaluation team and supports MoRob in
planning and performing educational evaluation.
5.3 Stanford project participants
•
•
•
•
Jaheung Park is working at the Stanford Robotics Lab and is the main teaching assistant who
organizes and supervises students work during the experimental robotics class and individual
student research projects. He also contributes to the development of new controller modules for
augmented haptic robot teleoperation.
Andres Loi at the Stanford Robotics Lab is the main architect and developer for the software
environment developed for the experimental robotics class. His contribution has been to
establish a shared framework for the students based on RT Linux system.
Khai Weyn Ong has developed at the Stanford Robotics Lab the overall GUI environment for
our new educational software. Here is closely working with Andres Loi.
Francois Conti is working at the Stanford Robotics Lab and organizes the experimental haptics
class. He also contributes to the general architecture design of the various toolboxes and
supervises individual student projects.
6. References
[1] Ahlgren, D. J. "An International View of Robotics as an Educational Medium". International
Conference on Engineering Education (ICEE'2002). Manchester, UK.
[2] Bianchi, R.A.C. and La Neve, A. "Studying Electrical and Computer Engineering through the
Construction of Robotic Teams and Systems". International Conference on Engineering Education
(ICEE'2002). Manchester, UK.
[3] Dannelly, R. S., "Use of a Mobile Robot in a Data Structures Course". The Journal of
Computing in Small Colleges, Volume 15, Number 3, 2000, pp. 85-90.
[4] Druin, A. and Hendler, J. Robots for Kids - Exploring New Technologies for Learning. Morgan
Kaufmann. 2000.
[5] Garcia, M.A. and Patterson-McNeill, H. "Learn how to develop software using the toy Lego
Mindstorms". Frontiers in Education Conference (FIE'2002). Boston, Mass.
[6] Gustafson, D. "Using Robotics to Teach Software Engineering". Frontiers in Education
Conference (FIE'1998). Tempe, Arizona.
[7]
Kumar, D. and Meeden, L. "A Robot Laboratory for Teaching Artificial Intelligence".
SIGCSE Bulletin, Volume 30, Number 1, 1998, pp.341-344.
[8] Nash, John (2001): "Introducing a Theory anchored approach".
http://www.wgln.org/news/20010611_1.htm
[9] Oppliger, D.E. "University- Pre College Interaction through FIRST Robotics Competition".
International Conference on Engineering Education (ICEE'2001). Oslo/Bergen, Norway.
19
[10] Paul, C., Hafner, V. and Bongard, J.C. "Teaching New Artificial Intelligence using
Constructionist Edutainment Robots". Workshop on Edutainment Robots 2000, Sankt Augustin,
Germany.
[11] Strömdahl, Helge; Langerth Zettermann, Monica (2001): "On Theory-Anchored Evaluation
Research of Educational Settings, especially those supported by information and Communication
Technology (ICT)", http://www.skeptron.ilu.uu.se/MonicaLZ/arkiv/tea-slutmanus.pdf (Vers. 200110-04).
[12] Wang, E.L. "Teaching Freshmen Design, Creativity, and Programming with Legos and
Labview". Frontiers in Education Conference (FIE'2001). Reno, Nevada.
7. Budget
_ See budget summary forms (1 for each institution; L3S includes evaluation)
7.1. Budget Narrative
Hanover:
Personnel for Hanover are 1 Postdoctoral Associate (Uwe Gerecke) and 1 Graduate Student (Patrick
Hohmann), both with 75% effort, resulting in 9 person-months each ($45000 and $41250). Foreign
travel is budgeted with $10000, covering MoRob team meetings in Stanford and Stockholm,
international conferences to present project results, and student exchange travel. $3750 are set for
Materials and Supplies (robot maintenance, spare parts, extension of kits, etc.). The subtotal for this
is $100000.
Hanover budget also includes evaluation: The Postdoctoral Associate will devote 25% effort (3
person-months, $15000), and a Graduate Student evaluation post will be funded with 45% (5.4
person-months, $24750). Further $250 are also budgeted for Materials and Supplies for evaluation.
The subtotal for evaluation is $40000.
This results in an amount of this request for Hanover of $140000 ($100000 + $40000 evaluation).
KTH:
Personnel for KTH are 1 Postdoctoral Associate Full-time (Kai Arras) and 1 additional Postdoctoral
Associate Half-time (equivalent 2 Postdoctoral Associates with 75% effort, 9 person-months each
(18 person-months total), together $90000).
Foreign travel is budgeted with $7000, covering MoRob team meetings in Stanford and Hanover
and international conferences. Participant travel and subsistence are budgeted for with $3000.
This results in an amount of this request for KTH of $100000.
Stanford:
Personnel for Stanford are 2 Graduate Students (75%), 9 person-months each, (18 person-months
total, 84000$).
6000$ are set for Material and Supplies for hardware developments (robot manipulation gripper and
haptic control board)
Foreign travel is budgeted with $10000, covering MoRob team meetings in Hanover, Stockholm
and international conferences.
This results in an amount of this request for Stanford of $100000.