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 is a showcase of the technologies included in Fedora.
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:
su -c '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.)
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:
su -c '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:
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:
su -c '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.
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:
su -c '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:
su -c '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:
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!