Skip to content
Rich edited this page Apr 8, 2017 · 3 revisions

The Player project provides a wide variety of useful software for robotics projects. If you are considering using Player in your robotics project, this page will guide you through the steps you need to take to get Player up and running with your setup.

Table of Contents

Plan what you need to develop

Does player support your hardware?

You can find the answer in the List of supported devices.

  • If your hardware is supported you can continue with the next question.
  • If your hardware is not supported, you need to develop drivers for your hardware. Writing Player drivers for hardware isn't very difficult, but can take some time to get right. The Writing a Player driver tutorial outlines the process in detail. And if you do end up writing your own driver, please consider Contributing it back to Player. Contributions from the community make Player a valuable resource for everyone.

Does your robot already have Player?

For the most part, Player is not installed on robots by default. If your robot has an on-board computer, configuring Player may be as easy as building it on your robot. Player can also support wireless connections certain robots.

The information about downloading and installing Player can be found in the Get Player page.

Does your robot support Player?

Player works with Linux, *BSD, Mac OS X, QNX, Solaris, and Windows.

  • If your robot already have one of them, you can go to the Get Player page for instructions on installing Player on your platform
  • If your robot don't have any of them or the supplied OS is not suitable for Player you will need to install a OS on your own (if you attach a laptop to a robot, this step should be easy). You may also want to download a Linux distribution that has Player packages ready for download, such as Fedora, Ubuntu, or the Robot OS system.

Do you want to work in a simulated environment?

To work in a simulation environment with Player, you can use Stage for 2D simulation or Gazebo for 3D simulation. Go to the Get Player page for instructions on how to obtain each.

As you simulate your robot, you may find that some of the example models do not adequately represent your desired robot configuration. This can be solved by creating your own Stage or Gazebo models of your robot.

What programming language will you use to interact with your robot?

Interaction with robots (the Player server) generally happens through the Player client libraries. Currently, Player ships with C, C++ and Python and Ruby. MATLAB bindings are also included, but not installed.

If none of these languages are suitable, you may be able to find and install third party language bindings, see the client libraries page for details.

Install everything you need

Once you've identified your requirements, you need to install the appropriate software packages to support your project. See the Get Player page for details. Player will generally be installed on the robot or on a computer attached to the robot.

The Player server is network transparent, which means that client programs can be created, compiled and installed on any computer on the same network as the Player server. All of the Player client libraries support connecting to a Player server over a network.

Write the configuration files

The first step required to work with Player is write its configuration file. The Player project software comes with a good number of examples. Configurations for a lot of common robots in Player (in the config subdirectory), some world files and Player configurations in Stage (worlds subdirectory) and lots of world files with almost every model supported in Gazebo (worlds subdirectory). These examples are generally known to work.

You can use these files to test your installation, or use them as a reference as you write your own configuration file.

You will need to modify the some values or maybe even write your own file, the syntax is simple enough for both cases. For more information read the Writing configuration files tutorial.

If you are using a simulator, you may also want to reference the directions for using simulators with Player:

  • Instructions for Player and Stage can be found in the Quick start guide.
  • Instructions for Player working with Gazebo can be found in Gazebo tutorials.

Testing the Player drivers

Before writing a client program, it may be wise to test that everything in the Player server is working. The Player distribution comes with a program called playerv. This is a graphical program that allows you to control a robot through a very simple interface.

After checking that you can subscribe (connect to) to any device and control the robot devices, move it around, etc. you are now ready to write a client progam.

Your own client program

Now is time to do something useful with your robot.

The easiest way to develop a program for Player is using the client libraries of the language best suits you. To know more about how to program an application for the Player server, see the Manual for player.