0
$\begingroup$

Rosanswers logo

Hey All,

Currently we are looking for an industry robot that accepts joint speed command for real-time force control. I know Universal Robot is a potential candidate. However, its payload is not enough for our project. We are looking for a robot with the minimum payload of 12 kg.

I have been searching for a while. This recommends motorman FS100 controller. I see the PR has been merged in here. My question is:

  • (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?

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. My question would be:

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

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?

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

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

The ROS driver set-ups for different robot vendors are kind of complicated for me since my major is mechanical. 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.

Again, thank you for your help.


Originally posted by thompson104 on ROS Answers with karma: 43 on 2018-08-04

Post score: 1


Original comments

Comment by thompson104 on 2018-08-06:
I own so much to gvdhoorn. Wish I could have the chance to thank him in person in the future.

Comment by wagnerbra on 2019-04-22:
Does Universal Robots have that feature? Could you send a link for any material? Also, does it already have ROS support?

Comment by thompson104 on 2020-01-07:
Yes it does, you can google it and the default ROS support for UR should give u that feature.

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

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.


Originally posted by gvdhoorn with karma: 86574 on 2018-08-05

This answer was ACCEPTED on the original site

Post score: 3


Original comments

Comment by gvdhoorn on 2018-08-05:
In case you're interested: ABB has released two C++ libraries that make using EGM (and something called RWS) a bit easier. See abb_libegm and abb_librws.

Comment by gvdhoorn on 2018-08-05:
I just noticed you already found it (ros-industrial/abb_libegm#15).

Comment by gvdhoorn on 2018-08-05:
Btw: not a 'Big Four' mfg, but iirc, Staubli has a velocity control addon you can install on the controller. Last time I used/looked at that was during the CS8 times, so things may have changed.

Comment by thompson104 on 2018-08-06:
Thank you so much for your time and well-thought answers. I can't imagine anyone would post so much useful information here. I will call Staubli and ABB first thing in the morning. Thank you so much for your information again.

Comment by thompson104 on 2018-08-06:
Also, I would't post questions under closed topics on Github again. Thank you for your advise.

$\endgroup$
0
$\begingroup$

Rosanswers logo

You can fake velocity control with a position-controlled robot using the jog_arm package. Video here. That video shows jogging in the Cartesian end-effector frame but you can also control individual joints and we have been using it for compliance. In fact, the package contains a library for compliance.

That video shows a simulation of a Motoman SIA5. I don't know if the Gazebo simulation controllers are a 100% accurate representation of the hardware controllers. Hopefully somebody more knowledgeable will weigh in on that.

However, there are some fundamental reasons [1, 2, 3] why compliance works better when the hardware joints are velocity-controlled... so it would be best to find a true velocity-controlled robot. I think this concept is just catching on.

It's too bad you can't make a UR10 work. Could you trim 2kg from the end-effector mass? Also, realize that the robot payload ratings are based on worst-case scenarios, like full acceleration at full extension. I would be tempted to try a UR10 anyway.

[1] General Model of Human-Robot Cooperation Using a Novel Velocity Based Variable Impedance Control, Duchaine

[2] The Advantages of Velocity Control for Reactive Robot Motion, Zelenak

[3] UR10 Performance Analysis, Ravn. Note, speed control of the joints was the only control method that had no drawbacks.


Originally posted by AndyZe with karma: 2331 on 2018-08-04

This answer was NOT ACCEPTED on the original site

Post score: 1


Original comments

Comment by gvdhoorn on 2018-08-05:
I'm a big fan of jog_arm, but just to clarify: the way it works requires a driver that exposes an interface with semantics that support that sort of control. For most industrial robots, there is no such support.

URs are a happy exception, but almost all industrial robots are exclusively position controlled with relatively bad external motion interfaces. Additionally, if there are ok motion interfaces offered by the mfg, the drivers themselves would need to properly support something like trajectory replacement or real-time point streaming. For many robots, that is not trivial to implement (especially not in a generic way) as blending of points and controller behaviour are often difficult to get right.

re: sia5: Gazebo is not comparable to the real behaviour of (plain) MotoROS at all. The point streaming PRs improve this, and there are some forks that make it better, but it'll always only be position control based, as that is what Motoman controllers support.

Comment by thompson104 on 2018-08-06:
Thank you for your answer. I think you are right position controlled force control has its own drawbacks. Also, the reason we want a robot with minimum payload is that our sponsor wants to see "real" applications so collaborative robots such as UR or KUKA iiwa are out.

Comment by thompson104 on 2018-08-06:
Personally I feel UR10 is fully capable of performing our task. However, it's not our choice to make. Thank you again for your suggestion and jog_arm recommendation.

$\endgroup$

Your Answer

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