0
$\begingroup$

Rosanswers logo

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.


Originally posted by chloe on ROS Answers with karma: 3 on 2018-06-28

Post score: 0


Original comments

Comment by jayess on 2018-06-28:
Can you please update your question with a link to the presentation that you're referring to?

Comment by billy on 2018-06-28:
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.

Comment by jayess on 2018-06-28:
@chloe are you referring to this 2013 ROSCon presentation?

Comment by chloe on 2018-06-28:
@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?

Comment by billy on 2018-06-28:
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?

Comment by gvdhoorn on 2018-06-28:
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.

Comment by gvdhoorn on 2018-06-28:
Btw: I'd like that splash-sensor package @billy.

Comment by gvdhoorn on 2018-06-28:
@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?

Comment by chloe on 2018-06-28:
@billy Thanks! @gvdhoorn I think my language was too strong there. I was just using them as an example of a company that has not adopted it at this time!

Comment by gvdhoorn on 2018-06-28:
That's quite a difference there from "are clear they are not interested" to "have not adopted it at this time".

Comment by chloe on 2018-06-28:
@gvdhoorn I agree, my mistake

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

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.


Originally posted by tfoote with karma: 58457 on 2018-06-28

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by chloe on 2018-07-05:
Thank you! I wasn't aware of the concept of wrappers, so that was helpful.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.