nalt / wsg50-ros-pkg

ROS package for Schunk WSG-50 gripper with high-rate feedback, closed-loop control, up to two FMF finger. Based on https://code.google.com/p/wsg50-ros-pkg/.
11 stars 41 forks source link

Future work and ros industrial #4

Open simonschmeisser opened 6 years ago

simonschmeisser commented 6 years ago

Hi,

we bought a WSG 32 some years ago and I'm now finally starting to integrate it. I found that @xamla (@jan0e and @AnasIbrahim) has done some work on updating this driver recently [1]. I wonder if you are interested in working together to turn this into a "proper" ros-industrial driver? Maybe @gavanderhoorn could guide us a bit? Gijs, would the robotiq repo [2] be a good template?

Should I start with some pull request against your master branch? Or against any of the branches in Xamlas fork?

Regards Simon

1: https://github.com/Xamla/wsg50-ros-pkg/tree/xamla_USING_STANDARD_GRIPPER_ACTION

2: https://github.com/ros-industrial/robotiq

gavanderhoorn commented 6 years ago

I don't have any particular experience with drivers for grippers I'm afraid.

I'm also not immediately aware of the current state of the robotiq repository. IIRC we were looking for (a) new maintainer(s).

IPA (320 group) have some more Schunk related drivers and components under ipa320. Perhaps they have some more input here.

simonschmeisser commented 6 years ago

Thanks for the hint, their package is at: https://github.com/ipa320/ipa325_wsg50

@jan0e did you know about both versions and choose this one for a reason?

@ipa-lth are you interested in helping to "mainline" either version? Would you accept PRs?

I don't have any particular experience with drivers for grippers I'm afraid.

@gavanderhoorn But maybe you could still help us with the formal steps required? Are there any?

ipa-lth commented 6 years ago

Hi, I am very interested in combining efforts. In fact, we initiated the wsg driver years ago. We were ROS newbies back then and today I would reconsider some design choices we did (in particular the action interface, however it makes sense...)

Nevertheless, the ipa325_wsg driver was used in so many applications at IPA, that I am confident that it is robust and stable.

@ipa-mirb may assist in merging ROS-I acceptable drivers.

I will definitely accept PRs, but I won't be able to fully maintain the repo (if there is something bigger to do)

gavanderhoorn commented 6 years ago

@simonschmeisser wrote:

I don't have any particular experience with drivers for grippers I'm afraid.

@gavanderhoorn But maybe you could still help us with the formal steps required? Are there any?

There are no contracts to sign, if that is what you mean.

If the benefits of hosting it under ros-industrial are made clear enough, then I'd be willing to do that.

jnodev commented 6 years ago

Hi, unfortunately I was not aware of the wsg driver from ipa. Note that the integration of the standard ros gripper command message (i.e. the branch mentioned in 1) is in a preliminary state and not yet tested. We improved the stability of this driver (e.g. in cases where the connection to the gripper is lost) by replacing the communication layer. We also changed other parts as we saw fit, e.g. the message formats and we added our custom monitoring system, which might make our fork not the best source for a ROS-I driver. But in general I think having a ROS-I wsg driver would be great and I am happy to help where I can, although I am also a bit time constrained.

nalt commented 6 years ago

Hi, the goal of our contribution was mainly to allow for closed-loop control with WSG-50 with a custom script. Re-factoring and making a "proper" driver would be quite important. This might mean to focus on certain interfaces and control modes. What are your main needs? Schunk has also contacted me a while ago about optimizing this code, but it does not seem to be a high priority for them.

simonschmeisser commented 6 years ago

I had a short superficial look at both codes. This one as well as the xamla fork seem to be written in a very C-inspired version of C++ while the one at IPA looks more architectured and structured. I will try to add WSG32 support to the IPA version next and see how well it works.

Generally a command/action based control is sufficient for us at the moment, we don't do any real-time/closed loop control of the robots/manipulators either.