turtlebot / turtlebot_arm

The turtlebot_arm package provides bringup, description, and utilities for using the TurtleBot arm.
BSD 3-Clause "New" or "Revised" License
49 stars 43 forks source link

Cleaned up pincher gripper description #24

Open Zabot opened 7 years ago

Zabot commented 7 years ago

Slightly restructured the TF tree of the pincher gripper to make more sense compared to the physical construction of the gripper.

Old structure: old

New structure: new

Zabot commented 7 years ago

This might need the IKFast plugin to be regenerated before it gets merged, I'm not familiar enough with how that works to know off the top of my head.

corot commented 7 years ago

Then,,, we have a problem, because as explained on issue #12, we need OpenRave to do so, and last time I tried it was not released for 14.04. Maybe is time to try again on 16.04. Will do in one week or so

corot commented 7 years ago

I @Zabot , did your change work without regenerating the plugin? As I don't have a pincher gripper, i can just simulate it and check that "it looks good"... But if we really need to regenerate the IKFast problem, well, will be much more work, as I have never did that before and also I must first compile OpenRave from sources

Zabot commented 7 years ago

It appeared to work, I was getting some minor quirks, but I think I was getting those before. I think this is okay to merge, it depends on if IKFast fetches linkage lengths from the TF tree (Which I have to imagine it does). The only change that would have affected the ik was pulling gripper_link a little closer, and it seemed to handle that fine.

corot commented 7 years ago

mmm... I'm getting tons of this WARNs:

...
[/gazebo  WARN 1507241287.291943653, 173.200000000]: Gazebo ROS Kobuki plugin: NaN in d1. Step time: 0.01, WD: 0.07, velocity: -nan
[/gazebo  WARN 1507241287.292071354, 173.200000000]: Gazebo ROS Kobuki plugin: NaN in d2. Step time: 0.01, WD: 0.07, velocity: -nan
...

coming in couples at 10Hz (so 20 per second). And the arm doesn't show up in Gazebo:

image

Any idea what can be? Your kinetic-devel works normally. But sorry, I have no time now to debug what's going on. Will try next week.

I just noticed that all joints velocities are NaN, arm servos, wheels, etc. So looks like somehow the physics "collapse". But, rather funny, doesn't happen if I keep the old gripper pose: https://github.com/turtlebot/turtlebot_arm/pull/24/files#diff-c4a9c50856ebdfe9fbc0c0c286cc1256L27 So I think the gripper must be overlapping the arm when placed in the new position

Zabot commented 7 years ago

Is that trying to run with the pincher arm?

corot commented 7 years ago

yes, well, running a simulated turtlebot with a simulated turtlebot arm using the pincher gripper.

Same configuration I used to test your other PRs and fix pincher gripper geometry

ValentinMinder commented 6 years ago

Hi everyone, We have a physical arm PhantomX Pincher (ie. with a parallel gripper with single servo). We are interested into this cleaned geometry description. We tried to use the fix in this PR, the geometry does look closer to reality, but when running the simulation on the physical gripper apparently the reported gripper opening in rviz is twice as wide as the real opening of the physical gripper. Then it doesn’t let you open it to the max width (it can only reach mid_open state), unless you artificially raise the max opening, which then puts the rviz gripper in an unreachable state.

We saw the note “The transmission for gripper_joint MUST specify a mechanical reduction of two for the gripper separation to be calculated correctly” but we are not sure what we should change to do that. https://github.com/turtlebot/turtlebot_arm/pull/24/files#diff-c4a9c50856ebdfe9fbc0c0c286cc1256R20

FYI, we were only able to compile the changes with catkin within the current kinetic-devel (with the latest C++11 tags, we guess).

What is the current situation with this PR? Is there a way we could contribute to improve it? Any input is appreciated.

corot commented 6 years ago

Hi @ValentinMinder , I didn't merge it because when I tried on Gazebo, the arm disappeared and the screen got flooded with kobuki gazebo plugin WARNs (see image above). This doesn't happen with the current code, so there must be something on this PR breaking TB2 Gazebo simulation.

If you or @Zabot manage to fix the problem, and also the other problem you mention, I will happily merge it. Other than that, I cannot help too much because I don't have a physical Pitcher gripper, and so I must relay on Gazebo simulation for validating the changes.

corot commented 4 years ago

2.5 years later... @Zabot, @ValentinMinder, are you still using the TB arm? I managed to rebuild the IKFast plugin with the gripper_link displaced within the gripper paddles and pick/place works now way better. I can open a PR, in case anyone is still interested. Here are my changes: https://github.com/corot/turtlebot_arm/tree/mv_gripper_link