Ask Your Question
0

Are there robots or hardware that are not able to be "ROSified"?

asked 2018-06-28 11:51:51 -0500

chloe gravatar image

updated 2018-06-28 13:49:16 -0500

jayess gravatar image

Hello ROS world!

I have watched the 2013 ROSCon presentation on how to ROSify robots. Does "ROSify" mean to develop software in the form of packages that can be used on a given robot, sensor or controller? Can this be done for any robot, sensor or controller? Or are there certain products that could never have ROS capabilities?

The list of ROS-compatible robots from https://robots.ros.org/ seems to be non-exhaustive. What does a company have to do for their products to be ROS-enabled? Is there a difference between being ROS-enabled and having ROS packages available?

I feel like I just asked the same question 5 times! Sorry for the redundancy; I'm clearly not yet articulate enough to get my confusion across concisely.

edit retag flag offensive close merge delete

Comments

Can you please update your question with a link to the presentation that you're referring to?

jayess gravatar image jayess  ( 2018-06-28 12:39:48 -0500 )edit
1

I could put a splash sensor on my toilet and detect "usage" through a ROS node. I can ROSify my toilet, I'll say you can ROSify anything.

I have built two robots from scratch and both use NAV stack in ROS. Of course I had to write the ROS drivers myself. I have no actual plans to ROSify toilet.

billy gravatar image billy  ( 2018-06-28 13:27:24 -0500 )edit

@chloe are you referring to this 2013 ROSCon presentation?

jayess gravatar image jayess  ( 2018-06-28 13:44:32 -0500 )edit

@jayess The video I was referring to: https://vimeo.com/66966974

@billy So some companies, say, Rockwell Automation, are clear that they are not interested in ROS-enabling their robots. But if I had a Rockwell robot laying around, I could write software for it in ROS myself?

chloe gravatar image chloe  ( 2018-06-28 13:45:52 -0500 )edit
1

Ah, I understand your question better now. Yes you yourself could ROSify a Rockwell robot if you had knowledge of the commands/controls and they haven't added some encryption or something. Rockwell may use Profibus/modbus/etc to communicate, so you'd need a way to speak the robot language. Driver?

billy gravatar image billy  ( 2018-06-28 13:57:50 -0500 )edit
1

Just a comment: what @billy describes is typically how we approach this in ROS-Industrial. Or at least for a first version of a driver (== robot control interface). Then start the dialogue with the mfg and see whether they are willing to support their customers (better). Then improve the software.

gvdhoorn gravatar image gvdhoorn  ( 2018-06-28 13:59:29 -0500 )edit

Btw: I'd like that splash-sensor package @billy.

gvdhoorn gravatar image gvdhoorn  ( 2018-06-28 13:59:52 -0500 )edit

@chloe:

Rockwell Automation, are clear that they are not interested in ROS-enabling their robots.

Did they tell you this in person, or is this a statement that they've made in public?

gvdhoorn gravatar image gvdhoorn  ( 2018-06-28 14:04:00 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
2

answered 2018-06-28 18:53:12 -0500

tfoote gravatar image

I have watched the 2013 ROSCon presentation on how to ROSify robots. Does "ROSify" mean to develop software in the form of packages that can be used on a given robot, sensor or controller? Can this be done for any robot, sensor or controller? Or are there certain products that could never have ROS capabilities?

There are several different levels at which you can ROSify a robot. At the surface level you can always just provide a wrapper which will just expose the internals of the robot's implementation over ROS interfaces. At the other end of the spectrum you can change all of the robots communications to use ROS internally.

This can be done for any robot, sensor, or controller with enough effort. There are some systems that may be too resource limited for a full interface to be integrated onboard. For those devices usually there is a ROS driver that connects to the serial or USB port and interacts with the device using it's protocol and then expose the ROS interface.

The list of ROS-compatible robots from https://robots.ros.org/ seems to be non-exhaustive. What does a company have to do for their products to be ROS-enabled? Is there a difference between being ROS-enabled and having ROS packages available?

The index at http://robots.ros.org is definitely non-exhaustive. It relies on user and devloper submissions. If there is a robot that's using ROS I'd encourage anyone to encourage manufacturers to submit their robots. There's a contributing guide here: https://robots.ros.org/contributing/ If you have a ROS interface that's enough to be consider ROS enabled.

The https://robots.ros.org index is a good place for people to market research and educational robots with a public ROS API. It is not great at capturing the many robots that are now using ROS under the hood but don't publicly mention that they're using ROS or keep it secret that they're using ROS.

edit flag offensive delete link more

Comments

Thank you! I wasn't aware of the concept of wrappers, so that was helpful.

chloe gravatar image chloe  ( 2018-07-05 14:08:10 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2018-06-28 11:51:51 -0500

Seen: 410 times

Last updated: Jun 28 '18