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

Seeing as you included this:

I would really appreciate your feedback on the selection of industry robots since these industry robots could be super expensive, and I can't return it if we chose a wrong model.

I feel obliged to add a bit of disclaimer, so here goes: what follows can in no way be understood to be advice on which robot you should buy, I will also not be responsible for whatever decision you end up making. Always consult with a robot manufacturer directly (or one of their local branch offices) and request information about what is or isn't supported by one of their robots. If you see me writing favourably about any robot or mfg that does not imply endorsement or recommendation by me or my employer, nor is it intended to imply that the materials or equipment are necessarily the best available.


In general: velocity controlled industrial robots (ie: robots from Fanuc, Motoman, KUKA and ABB) are scarce. Almost all tasks these robots are used for can be done with position control, and things like force control or compliance are typically done using addons provided by the mfgs that 'overlay' that sort of 'advanced' control on-top of traditional position based tasks (ie: Cartesian compliance for insertion or extraction tasks, force-based contouring, etc).

Velocity control will (and already is) become more and more common as mfgs will want to see their robots used for tasks that are impossible to achieve with pure position control, but it's not ubiquitous unfortunately.

As to your specific questions:

I have been searching for a while. This recommends motorman FS100 controller.

No, I don't believe that is what Shaun writes. What is discussed in that thread is an implementation of "infinite point streaming" for MotoROS, where the driver accepts single points and forwards them to the controller, which will then interpolate (in joint space) from its current position to whatever the new point is. All still using position control.

(1) What is the tracking performance for joint speed control? This link says he used "work-arounds" for force control. But how about its "real" performance? Is motorman joint velocity response quick enough to handle robot control on sensor feedback such as a force-torque sensor?

I don't believe anyone has done any sort of identification of the performance of the approach that the poster of ros-industrial/motoman#219 has implemented. As you can read in his post, it's all still position control and he's running into quite a few (performance) issues because of that.

Note also that what that user writes about is something he's done in private, it's not part of the open-source releases. In other words: that is not available unless you use their product. That is not a problem per se, but something to be aware of.

For Kuka robot, This link says "no RSI, no EKI" supports any velocity interfaces". Also, KUKA iiwa doesn't have the appropriate payload. I read somewhere (sorry I couldn't find its link) saing KUKA_EGM (or something similar) may be useful but I'm not sure what it is.

EGM is an external motion interface offered by ABB. KUKA does not have EGM.

(2) Are there any KUKA robot asides from iiwa and LWR4 supporting joint velocity control?

As far as I know, none of the robots that come with a controller in the KRC range (ie: everything apart from the two robots you mention) support velocity control. That is why I wrote that in ros-industrial/kuka_experimental#131. I would like it if someone could correct me on that though.

As for ABB, I saw ABB IRB2400 is used for the ROS-Industry GODEL project. We are doing something similar. So my question is

  • (3) Does ABB IRB2400 supports joint velocity control? If not, are there any other models do?

This is a bit of a strange question: it's typically the controller that determines whether a robot can do something or not. The specific manipulator is normally not important.

But to answer your question: ABB has recently released a software option called EGM, or Externally Guided Motion. Provided you have an IRC5 controller with RobotWare 6, it is available on almost all ABB robots, including the IRB 2400. EGM supports both joint and Cartesian position and velocity control.

Finally, I couldn't find too much information on Fanuc robot.

  • (4) Does it have any joint velocity controlled robot?

I'm not aware of a way to achieve actual velocity control (neither in joint space nor Cartesian) on Fanuc robots.