lotus

previous page: 70 What kinds of Robotics Simulators are there?
  
page up: Robotics FAQ
  
next page: 72 Shareware and Freeware Robotics Simulators: part2

71 Shareware and Freeware Robotics Simulators: part1




Description

This article is from the Robotics FAQ, by Kevin Dowling nivek@cs.cmu.edu with numerous contributions by others.

71 Shareware and Freeware Robotics Simulators: part1

Many university groups and individuals have developed simulators for
their own work and made them available via the net.

Ars Magna:

The ARS MAGNA robot simulator provides an abstract world in which a
planner controls a mobile robot. The simulator also includes a simple
graphical user-interface which uses the CLX interface to the X window
system. Version 1.0 of the ARS MAGNA simulator is documented in Yale
Technical Report YALEU/DCS/RR #928, "ARS MAGNA: The Abstract Robot
Simulator". This report is available in the distribution as a
Postscript(tm) file, as well as from:

Paula Murano
Yale University
Department of Computer Science
P.O. Box 2158 Yale Station
New Haven, CT 06520-2158
net: murano@cs.yale.edu

Comments to Sean Engelson. net: engelson@cs.yale.edu

ARS MAGNA is available by anonymous ftp from
[13]ftp://ftp.cs.yale.edu/pub/nisp/

EROS [Erann's RObot Simulator]

EROS is a mobile robot simulator. Unlike other simulators, EROS does
not simulate any particular robot. Instead, EROS is a sort of robot
simulation construction kit. It is designed to allow users to assemble
their own robots from reusable software components, and to run those
robots in user-designed environments. EROS draws inspiration from
Hanks and Firby's truckworld simulator, but EROS operates at a lower
level of abstraction than truckworld, and so it is by some measure
more realistic. EROS has been used to simulate actual physical robots,
and the behavior produced by EROS has, in some cases, made plausible
predictions and accurate postdictions of the behaviors of the real
robots.

NOTE: This is a beta-test version of EROS. It runs only under
Macintosh Common Lisp version 2.0. Many of its features have not been
tested (although it has been used in a few applications, so parts of
it work quite well!) and the documentation is not very coherent.

EROS is available by anonymous ftp at:
[14]ftp://robotics.jpl.nasa.gov:pub/gat/

This is an early version for beta testing only. It runs only under MCL
2.0. It will not run under any other version of Common Lisp, including
MCL 1.3. (EROS relies heavily on Macintosh graphics and CLOS.) It also
includes only a single example robot, so out of the box it doesn't do
very much. You have to be willing to do a little hacking to use it as
it currently stands. A future release will have more turnkey
functionality, but it's pretty much an OEM product at this point.

Contact: Erann Gat net: gat@robotics.jpl.nasa.gov

Flakey

A mobile robot simulator and controller. Contact: Kurt Konolige of SRI
A Preliminary version of a mobile robot simulator and controller. All
written in C, but you need Motif to run the graphics.

This is essentially the same software run on Flakey, (robot at SRI
used for research in AI), behaviors using fuzzy control (there's lots
more on Flakey in terms of sensor interpretation and higher-level
control, but I haven't ported that from LISP to C yet). There are
three example behaviors implemented, showing dumb obstacle avoidance
and goal achievement. There's not much documentation yet, but I will
get some out over the next few months.

The intent is to make the simulator/controller suitable for a course
in mobile robotics, and to have eventually a cheap physical platform
that will imitate the simulator (or vice versa).

Available by anonymous ftp from:
[15]ftp://ftp.ai.sri.com/pub/konolige/erratic-ver1.tar.Z Uncompress,
untar and check the README file for installation.

A collection of five tech reports on Flakey's fuzzy controller is also
available at:
[16]ftp://ocean.ai.sri.com/pub/saffiott/

"MATLAB Robotics Toolbox" [Peter Corke] A Robotics Toolbox for MATLAB
which provides functions for homogeneous transformations, quaternions,
forward and inverse kinematics, trajectories, forward and inverse
dynamics, and graphical animation. The Toolbox uses a very general
method of describing the kinematics and dynamics of any serial-link
manipulators. Descriptors for the Unimate Puma 560 and the Stanford
arm are included. Location at
[17]ftp://ftp.mathworks.com/pub/contrib/misc/robot

That directory contains an extensive manual, doc.ps (72 pages), as
well as all the M-files.

"Simderella 2.0" Simderella is a robot simulator consisting of three
programs:
* connel: the controller
* simmel: the simulator
* bemmel: the X-windows oriented graphics back-end

Simmel is the part which actually simulates the robot. It performs a
few matrix multiplications, based on the Denavit Hartenberg method,
calculates velocities with the Newton-Euler scheme, and communicates
with the other two programs.

Bemmel only displays the robot. It is a fast general-purpose display
method which places separate objects in space depending on the
homogeneous matrices it receives from simmel.

Connel is the controller, which must be designed by the user (in the
distributed version, connel is a simple inverse kinematics routine. I
didn't include my neural networks.)

The three programs use Unix sockets for communication. This means that
1. you need sockets
2. all the programs can run on different machines

Since data communication is high-level (meaning, in this case, that I
do not send doubles, integers, and so on, but encode them first),
running the programs on different architectures is no problem. In
fact, it was thus designed that connel can, at the same time, control
a real robot "and" the simulated one.

Simderella likes to sleep; that is, when nothing happens, no processor
time will be used.

Version 2.0 of simderella is here. Major adaptations:
* now features Imakefiles
* compiles & runs on Solaris and DEC Alpha
* some C bugs squashed
* bemmel can grab robot with mouse
* major improvements to documentation (i.e., an introductory article
describing the package).
* includes a stand-alone version of bemmel for drawing geometrical
objects, with viewoint rotation. Figures can be dumped to xfig for
later inclusion in your papers.

The software is available as a compressed tar file from:
[18]ftp://galba.mbfys.kun.nl/pub/neuro-software/pd/simderella.1.0.tar.
Z [IP 131.174.82.73] Extract the simulator from the tar file by typing
at the Unix command line:

zcat simderella.2.0.tar.gz | tar xf -

or use your favourite extracting commands. In the simderella/
directory, type

xmkmf

make Makefiles

make depend

make

The sub-directories are recursively visited and executables are
compiled and linked.

Supported architectures: Sun (SunOS and Solaris), SGI, DEC Alpha,
HP700, 386 et al running Linux)

If you're impatient, execute the thing as follows:

cd bemmel; Zoscar & cd ..

cd simmel; source env; simmel1 ns & cd ..

cd connel; connel s

all on one machine. Then type commands like

fix-target 50 50 50
inverse 50 50 50

or move the mouse pointer in the bemmel window and press an `l' or `r'
or `u' or `d' or .... [CMU used Simderella recently to facilitate
software development and testing of the Shuttle servicing robot before
the hardware and mechanics are available to test the various parts of
the controller. it has also been linked to TCA calls and worked very
well - nivek]

 

Continue to:













TOP
previous page: 70 What kinds of Robotics Simulators are there?
  
page up: Robotics FAQ
  
next page: 72 Shareware and Freeware Robotics Simulators: part2