From Fedora Project Wiki


Fedora provides a multitude of useful packages for roboticists of all skill levels and areas of concentration. The Fedora Robotics SIG focuses on making the latest and greatest robotics software available to the Fedora community. This page showcases some of the technologies included in Fedora. These packages are all part of the Robotics Suite in Fedora 15 and beyond.

Player

Player is a free and open robot server, with hardware support for over 100 robotics-related devices.

Fawkes

Fawkes is a component-based software framework for robotic real-time applications for various platforms and domains.

Stage

Stage is a 2.5D multi-robot simulator.

RoboCup Soccer Simulator

RCSS is a research tool for multi-agent systems and AI in which two teams of simulated autonomous robotic players can play soccer.


Player

About

Player is a free and open networked robotics server. The Player server acts like a "robot abstraction layer," providing standardized interfaces and messaging management for many classes of robotics-related devices (camera, ranger, planner, etc.) Drivers for individual devices abstract information into these interfaces and use them to communicate amongst each other. Player also includes a set of client libraries in C, C++, Python, and Ruby which enable outside programs to subscribe to interfaces provided by the Player server. Several utilities are included for logging, viewing, and sending data. Also included are example programs using the client libraries and examples of plugin device drivers.

In Fedora, Player provides over 130 different drivers, ranging from device drivers and data processing drivers, to complex path planning and obstacle avoidance algorithms.

Try it

Install Player with the following command using dnf or yum:

su -c 'dnf|yum install player'

Start Player with a configuration file providing "dummy" devices:

player /etc/player/config/dummy.cfg

In a separate terminal or from the Applications menu, launch PlayerV

playerv

The dummy interfaces publish sample data which can be used to verify the operation of Player. PlayerV can also be used to visualize data from real sensors or from Stage (see the Simulators section.)

Learn More

Player webpage Player manual

PlayerV visualizing a laser scan from a simulated robot


Fawkes

About

Fawkes was developed and used over four years for cognitive robotics real-time applications like soccer and service robotics. It supports fast information exchange and efficient combination and coordination of different components to suit the needs of mobile robots operating in uncertain environments.

Try it

Install Fawkes with the following command using dnf or yum:

su -c 'dnf|yum install fawkes fawkes-plugin-flite fawkes-plugin-skiller'

Start the Fawkes application using the following command:

fawkes

In another terminal, load the flite and skiller plugins, then execute the skillet application:

ffplugin -l flite
ffplugin -l skiller
skillet

From the skillet prompt, issue a text to speech command:

say{text="Hello world"}

Learn More

Fawkes webpage Fawkes manual

Fawkes' Firestation camera application


Stage

About

Stage is a free and open 2.5D robot simulator. It can be used on its own, or as an extension of the Player robot server. Stage supports simulation of vehicle movement, and various sensors such as scanning laser range finders, SONAR arrays, cameras, fiducial markers, etc. Use of simplified sensor and movement models provide good fidelity and great scalability: Stage can easily simulate 100 or more robots, and can be easily expanded to provide new and interesting capabilities.

Try it

Install Stage with the following command using dnf or yum:

su -c 'dnf|yum install stage stage-playerplugin'

Now, you can run Player with a sample configuration file that launches a Stage world:

player /usr/share/stage/worlds/simple.cfg

In a separate terminal or from the Applications menu, launch PlayerV

playerv

You can use PlayerV to subscribe to and visualize the interfaces provided by Stage, as well as send movement commands to the simulated robot.

Learn More

Stage webpage Stage manual

Stage simulating power dissipation of 30 wandering robots


RoboCup Soccer Simulator

About

The RoboCup Soccer Simulator(RCSS) is a research and educational tool for multi-agent systems and artificial intelligence. It enables for two teams of simulated autonomous robotic players to play soccer (football).

Two separate versions of this simulation environment exist: a 2D version and a 3D version. The 2D versions provide an environment to study high level strategies for playing soccer by hiding low level details of player robots. The 3D simulator exposes much more of the challenges of real robots and provides a rich environment to study humanoid soccer player robots. It is built on top of SimSpark simulation environment.

Try it

2D Simulator

Install 2D simulator with the following command using dnf or yum:

su -c 'dnf|yum install rcssserver-gui'

In a separate terminal or from the Applications menu, launch RoboCup 2D Soccer Simulation:

rcsoccersim

Which will run both a server and a monitor waiting for players to connect. You can write your own team or use one of 2D team binaries and/or source codes available in internet.

You can also install 'rcsslogplayer' package to play log files saved by the 2D simulator.

3D Simulator

Install 3D simulator with the following command using dnf or yum:

su -c 'dnf|yum install rcssserver3d'

In a separate terminal or from the Applications menu, launch RoboCup Soccer Server 3D:

rcsoccersim3d

Which will run both a server and a monitor waiting for players to connect. A very simple agent is provided which you can run with the following command:

rcssagent3d

Learn More

RCSSServer webpage (2D) 2D Simulator Users Manual SimSpark/RCSSServer3D webpage (3D) 3D Simulator Users Manual

RCSServer3D
RCSServer2D

Robotics Suite

Fedora 15 and beyond include the Robotics Suite, a package group that consolidates these and other robotics-related packages included in Fedora. To use it, fire up the Fedora software manager, and look for the "Robotics" package group. Alternatively, you can use yum or dnf to install the group via the command

su -c 'dnf group install Robotics'

Or:

su -c 'yum groupinstall Robotics'

Get Involved

Interested in robotics software development? Writing tutorials? Packaging? The Fedora Robotics SIG is always looking for new members. Get in touch with us if you want to help the Fedora Robotics effort!