[ros-users] Player or ROS?

Jack O'Quin jack.oquin at gmail.com
Fri Jun 11 03:36:37 UTC 2010


On Thu, Jun 10, 2010 at 2:52 AM, Anaré <anterma at ozu.es> wrote:
> Hello!
>
> I'm Anterma. I'm new in this mailing list.
> I've a small robot with sensors (for example, IR) and motors.
> I want to work with my robot using a robot operating system, like Player
> or ROS. I don't know which one choose.
> I used to work with Player 2.0.5. I changed erratic driver and made it to
> work with my own protocol.
> Now I want to develop my own Player driver or ROS driver.
> Can you help me?
> What do you think?
> Is easier to develop a Player driver or a ROS driver?
> Do you know if there are some documentation about how to develop a Player
> driver?
> Do you know if there are some documentation about how to develop a ROS
> driver?
> If you where in my situation, which oen do you choose?

That depends on your project and its goals.

I've been involved in a fairly large autonomous vehicle project for
several years. Starting in 2005, we adopted the Player framework and
it has served us quite well.

In 2009 we decided to port our code to ROS. Most of the low-level
drivers were ported fairly quickly and are working well. Some of the
other code still remains to be converted, mostly due lack of time.
Writing a driver node in ROS is somewhat simpler than writing the
equivalent Player driver, but the overall program logic is similar and
porting from one to the other is mostly straightforward.

I find ROS more productive to work with and better documented. The
learning curve is fairly steep, but there are plenty of good tutorials
to get you started. Player was not that easy to learn initially,
either. Especially when working at the driver level. We introduced it
to  a number of undergraduates at the University of Texas at Austin
with good results. They did productive work with ROS in the Spring
2010 semester, starting with no robotics experience at all.

For complex systems, the ability to define your own messages is a big
improvement over the Player opaque interface.

The ROS tools are noticeably better, rosbag works much better than
writelog and readlog. Rviz is wonderful (as long as you have a
powerful enough graphics card for OGRE to work properly).

Player is still better at soft real-time performance and has more
efficient message passing between drivers (not clients). But, ROS is
making good progress in those areas and will probably catch up soon.
For hard real-time requirements there are adequate options available
already.

ROS has quickly gained a critical mass of support within the robotics
research community. The prospects of sharing useful code within that
framework look good.

For me, the long-term advantages of ROS outweigh the greater maturity of Player.

You mileage may differ, of course.
-- 
 joq



More information about the ros-users mailing list