
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.