S
Sylvain Joyeux
roby version 0.7 has been released!
* <http://roby.rubyforge.org> (documentation, including installation instructions)
* <http://www.rubyforge.org/projects/roby> (project page: bug trackers, ...)
* <http://github.com/doudou/roby (dev. repository)>
<b>Note for Gem users</b> While using the normal RDoc generator, the
documentation generation process of Roby is a bit modified. In particular, the
plugin documentation is separated from the core documentation, and a clearer
template is used instead of the standard one. RubyGems does not support any
kind of customization in that area, so I would _strongly_ suggest that you use
the documentation provided at http://roby.rubyforge.org instead of the
RubyGem-generated one.
# What is Roby ?
Roby is a plan manager: it allows to represent, execute and adapt a plan, which
is a representation of the past, present and future activities of a robot along
with the information needed to verify that their executin is going well, and to
manage errors.
Roby is:
* a task/event model in which one can represent the activities (Roby::Task) and
the noticeable situations during execution (Roby::EventGenerator,
Roby::Task.event).
* a set of task relations describing the interactions between the activities
(Roby::TaskStructure).
* a set of event relations describing the reaction the system should have in
response to some situations (Roby::EventStructure).
* error management tools which allow to catch errors during execution and
repair them (i.e. let the system manage the error).
* a mean to modify the plan as it is being executed (Roby::Transaction)
* (G)UI tools for interacting/controlling the living system.
* all of that in a multi-robot context.
## Acknowledgments
This work has been supported by the DGA (http://www.defense.gouv.fr/dga) which
financed my PhD and the LAAS/CNRS (http://www.laas.fr), where I did it. It is
now supported by the DFKI (http://www.dfki.de) where I currently work and use
this plan manager.
## Related publications
Roby is the result of my PhD. As such, my PhD thesis can be considered as a
design document for the system. If you want an overview of the principles, you
can also refer to the two publications I did.
See {this page}[link:files/doc/papers_rdoc.html] for the list of publication
and the associated PDF files.
## Videos
The videos that are available show some capabilities of the system. They
are also referenced in other parts of the API documentation (in
particular in the tutorials), when it is meaningful.
See {here}[link:files/doc/videos_rdoc.html] for the available videos.
## Tutorials
A set of tutorials describe Roby's main features and let you experiment with
them:
1. the GettingStarted[link:files/doc/tutorials/01-GettingStarted_rdoc.html] tutorial makes
you start a brand new Roby application and explains its structure.
2. the GoForward[link:files/doc/tutorials/02-GoForward_rdoc.html] tutorial shows how to create
a simple task, how to start the Roby controller and how to interact with it
using a shell.
3. the PlannedPath[link:files/doc/tutorials/03-PlannedPath_rdoc.html] tutorial
shows how to create a (slightly) more complex plan, using the plan-generation
capabilities of Roby. It also shows some properties of that plan.
4. the EventPropagation[link:files/doc/tutorials/04-EventPropagation_rdoc.html]
tutorial describes how the plan execution actually goes, with examples from
Roby's plan execution display (requires to have QtRuby)
5. the ErrorHandling[link:files/doc/tutorials/05-ErrorHandling_rdoc.html]
tutorial shows how errors are represented in the system, and how it is possible
to handle and repair them.
6. {not really a tutorial}[link:files/doc/tutorials/06-Overview_rdoc.html], but
an overview of features that have not been presented in the first five
tutorials.
## License
Copyright 2006-2007, LAAS/CNRS <[email protected]>
Copyright 2006-2008, Sylvain Joyeux <[email protected]>
Copyright 2008 DFKI <[email protected]>
This work is licensed under the CeCiLL-B license, which is a free software
license with the same spirit than the BSD license. See License.txt for details,
and License-fr.txt for the french version.
Changes:
### 0.7
* First public release. This release is still not compatible with Ruby 1.9, as
too many bugs remain in 1.9.0
* <http://roby.rubyforge.org>
* <http://www.rubyforge.org/projects/roby>
* <http://github.com/doudou/roby (dev. repository)>
* <http://roby.rubyforge.org> (documentation, including installation instructions)
* <http://www.rubyforge.org/projects/roby> (project page: bug trackers, ...)
* <http://github.com/doudou/roby (dev. repository)>
<b>Note for Gem users</b> While using the normal RDoc generator, the
documentation generation process of Roby is a bit modified. In particular, the
plugin documentation is separated from the core documentation, and a clearer
template is used instead of the standard one. RubyGems does not support any
kind of customization in that area, so I would _strongly_ suggest that you use
the documentation provided at http://roby.rubyforge.org instead of the
RubyGem-generated one.
# What is Roby ?
Roby is a plan manager: it allows to represent, execute and adapt a plan, which
is a representation of the past, present and future activities of a robot along
with the information needed to verify that their executin is going well, and to
manage errors.
Roby is:
* a task/event model in which one can represent the activities (Roby::Task) and
the noticeable situations during execution (Roby::EventGenerator,
Roby::Task.event).
* a set of task relations describing the interactions between the activities
(Roby::TaskStructure).
* a set of event relations describing the reaction the system should have in
response to some situations (Roby::EventStructure).
* error management tools which allow to catch errors during execution and
repair them (i.e. let the system manage the error).
* a mean to modify the plan as it is being executed (Roby::Transaction)
* (G)UI tools for interacting/controlling the living system.
* all of that in a multi-robot context.
## Acknowledgments
This work has been supported by the DGA (http://www.defense.gouv.fr/dga) which
financed my PhD and the LAAS/CNRS (http://www.laas.fr), where I did it. It is
now supported by the DFKI (http://www.dfki.de) where I currently work and use
this plan manager.
## Related publications
Roby is the result of my PhD. As such, my PhD thesis can be considered as a
design document for the system. If you want an overview of the principles, you
can also refer to the two publications I did.
See {this page}[link:files/doc/papers_rdoc.html] for the list of publication
and the associated PDF files.
## Videos
The videos that are available show some capabilities of the system. They
are also referenced in other parts of the API documentation (in
particular in the tutorials), when it is meaningful.
See {here}[link:files/doc/videos_rdoc.html] for the available videos.
## Tutorials
A set of tutorials describe Roby's main features and let you experiment with
them:
1. the GettingStarted[link:files/doc/tutorials/01-GettingStarted_rdoc.html] tutorial makes
you start a brand new Roby application and explains its structure.
2. the GoForward[link:files/doc/tutorials/02-GoForward_rdoc.html] tutorial shows how to create
a simple task, how to start the Roby controller and how to interact with it
using a shell.
3. the PlannedPath[link:files/doc/tutorials/03-PlannedPath_rdoc.html] tutorial
shows how to create a (slightly) more complex plan, using the plan-generation
capabilities of Roby. It also shows some properties of that plan.
4. the EventPropagation[link:files/doc/tutorials/04-EventPropagation_rdoc.html]
tutorial describes how the plan execution actually goes, with examples from
Roby's plan execution display (requires to have QtRuby)
5. the ErrorHandling[link:files/doc/tutorials/05-ErrorHandling_rdoc.html]
tutorial shows how errors are represented in the system, and how it is possible
to handle and repair them.
6. {not really a tutorial}[link:files/doc/tutorials/06-Overview_rdoc.html], but
an overview of features that have not been presented in the first five
tutorials.
## License
Copyright 2006-2007, LAAS/CNRS <[email protected]>
Copyright 2006-2008, Sylvain Joyeux <[email protected]>
Copyright 2008 DFKI <[email protected]>
This work is licensed under the CeCiLL-B license, which is a free software
license with the same spirit than the BSD license. See License.txt for details,
and License-fr.txt for the french version.
Changes:
### 0.7
* First public release. This release is still not compatible with Ruby 1.9, as
too many bugs remain in 1.9.0
* <http://roby.rubyforge.org>
* <http://www.rubyforge.org/projects/roby>
* <http://github.com/doudou/roby (dev. repository)>