S.T.D.R. Simulator


(Simple Two Dimensional Robot Simulator)

What is STDR?


General description

Is STDR in ROS ecosystem?


Official ROS wiki page

How can I download it?


Ways to get STDR Simulator

What does it look like?


Gallery


How can I use it?


Tutorials

Functionality status


... and ways to contribute

How can I contact you?


Contact information

Do you use STDR Simulator?


What is STDR Simulator?


General Description

Simple Two Dimentional Robot Simulator (STDR Simulator) is a 2-D multi-robot Unix simulator. Its goals are :

Easy multi-robot 2-D simulation


STDR Simulator's goal is not to be the most realistic simulator, or the one with the most functionalities. Our intention is to make a single robot's, or a swarm's simulation as simple as possible, by minimizing the needed actions the researcher has to perform to start his/hers experiment. In addition, STDR can function with or without a graphical environment, which allows for experiments to take place even using ssh connections.

To be ROS compliant


STDR Simulator is created in way that makes it totally ROS compliant. Every robot and sensor emits a ROS transformation (tf) and all the measurements are published in ROS topics. In that way, STDR uses all ROS advantages, aiming at easy usage with the world's most state-of-the-art robotic framework. The ROS compliance also suggests that the Graphical User Interface and the STDR Server can be executed in different machines, as well as that STDR can work together with ROS Rviz!


STDR Simulator ROS packages

  • stdr_server, Implements synchronization and coordination functionalities of STDR Simulator
  • stdr_robot, Provides robot, sensor implementation, using nodelets for stdr_server to load them
  • stdr_parser, Provides a library to STDR Simulator, to parse yaml and xml description files.
  • stdr_gui, A gui in Qt for visualizing purposes in STDR Simulator.
  • stdr_msgs, Provides msgs, services and actions for STDR Simulator.
  • stdr_launchers, Launch files, to easily bringup server, robots, guis
  • stdr_resources, Provides robot and sensor descripiton files for STDR Simulator.
  • stdr_samples, Provides sample codes to demonstrate STDR simulator functionalities.

Developers

  • Manos Tsardoulias (administrator/developer), PhD in Electrical Engineering (etsardou [at] gmail [dot] com)
  • Chris Zalidis (maintainer/developer), Student in Electrical Engineering (Aristotle University of Thessaloniki) (zalidis [at] gmail [dot] com)
  • Aris Thallas (developer), Student in Electrical Engineering (Aristotle University of Thessaloniki) (aris.thallas [at] gmail [dot] com)

Special thanx to ...

  • Austin for development in polygon robots support / odometry publishing / tutorial writing
  • Scott K Logan for support in YAML-CPP
  • Sergey Alexandrov for code pull request

How can I download it?


Ways to get STDR Simulator

There are two ways to get STDR Simulator. The first one by our Github repository. The STDR Github page is https://github.com/stdr-simulator-ros-pkg/stdr_simulator. To clone the repository execute the following command:

git clone https://github.com/stdr-simulator-ros-pkg/stdr_simulator.git

The second way is through ROS official apt-get binaries by executing the following command:

sudo apt-get install ros-hydro-stdr-simulator

To start using STDR please check the Tutorials section.

What does it look like?


Gallery

How can I use it?


Tutorials

Our tutorials cover the areas of setting up the STDR Simulator, using the console-only interface and using the STDR GUI.

The tutorials can be found here : http://wiki.ros.org/stdr_simulator/Tutorials

In addition detailed information about each package can be found in the following ROS wiki pages:

  • stdr_simulator, Main page with an architectural overview.
  • stdr_server, Implements synchronization and coordination functionalities of STDR Simulator
  • stdr_robot, Provides robot, sensor implementation, using nodelets for stdr_server to load them
  • stdr_parser, Provides a library to STDR Simulator, to parse yaml and xml description files.
  • stdr_gui, A gui in Qt for visualizing purposes in STDR Simulator.
  • stdr_msgs, Provides msgs, services and actions for STDR Simulator.
  • stdr_launchers, Launch files, to easily bringup server, robots, guis
  • stdr_resources, Provides robot and sensor descripiton files for STDR Simulator.
  • stdr_samples, Provides sample codes to demonstrate STDR simulator functionalities.

Functionality status


... and ways to contribute

As STDR Simulator is still at the 0.2 version, would would appreciate some help! So we encourage you to fork our code and help us improve it. Though we would prefer not to make any large extend changes, as the final code structure is going to change in the next release.

It would be great if you provide us information about bugs and generally features you would like to see in STDR Simulator. Also you can help us enrich our robot and sensor yaml database as well as provide us with more map files!

The bug tracker of STDR Simulator is located here : https://github.com/stdr-simulator-ros-pkg/stdr_simulator/issues

You can fork our git repository here: https://github.com/stdr-simulator-ros-pkg/stdr_simulator/fork


What would you expect to work and it doesn't


  • Other robots perceived as obstacles from sensors
  • Noise in sensors
  • Properties in GUI
  • Battery level in a robot

We hope that all these will work in the next releases!

How can I contact you?


Contact information

Our e-mail is stdr.simulator [at] gmail [dot] com. We also have a google group, so if you're interested in participating more actively, please send us an e-mail to let you in! Looking forward to hear from you :)

Copyright (c) 2014 STDR Simulator. All rights reserved.