ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

The 'final pieces' that expose a ROS service server for the code you found in motoman_driver are missing in kinetic-devel.

I have a candidate for that here (warning: that branch is quite old) but it hasn't yet made it into the mainline code.

After that, "controlling IOs" is as simple as calling a service, which is about 5 lines of Python and would be similar in structure to the "writing a simple service client (Python)" tutorial.

The 'final pieces' that expose a ROS service server for the code you found in motoman_driver are missing in kinetic-devel.

I have a candidate for that here (warning: that branch is quite old) but it hasn't yet made it into the mainline code.

After that, "controlling IOs" is as simple as calling a service, which is about 5 lines of Python (or C++, but you asked for Python before your latest edit) and would be similar in structure to the "writing a simple service client (Python)" tutorial.

The 'final pieces' that expose a ROS service server for the code you found in motoman_driver are missing in kinetic-devel.

I have a candidate for that here (warning: that branch is quite old) but it hasn't yet made it into the mainline code.

After that, "controlling IOs" is as simple as calling a service, which is about 5 lines of Python (or C++, but you asked for Python before your latest edit) and would be similar in structure to the "writing a simple service client (Python)" tutorial.


Edit:

Is there any documentation which address belongs to which IO at the DX100?

That would be the manufacturers documentation (ie: Motoman) for the DX100 controller. The ROS services don't do anything different/special here, so just use the addresses you would normally use with MotoPlus.

I looked at the new service-files, the value is specified as int32. I think, value should be either 1 or 0, shouldn't it?

For digital IO elements: yes. But for analogue IO elements you'll want to specify a floating point/fixed integer value (as they typically connect to/gate voltage sources) so that's why there is an int32.