Skip to content

Conversation

Yadunund
Copy link
Member

@Yadunund Yadunund commented Mar 18, 2022

This PR effectively combines the electrical lead and bimanual demonstrations with a dual arm rexrov that grasps and inserts the electrical plug into the socket.
To launch world,

roslaunch dave_demo_launch dave_integrated_demo.launch 

To start moveit

roslaunch rexrov_oberon7_moveit rexrov_dual_arm_moveit_planning_execution.launch moveit_controller_manager:=rexrov

To command arm

rosrun dave_nodes bimanual_integrated_world.py 

The arm will bring the plug fairly close to the socket. The user can teleop the rexrov base (/dev/input/js1) to the right position and finish off the insertion.

bimanual_elec_5x.mp4

Notes:

  • A second rexrov is introduced. The original one is namespace rexrov0
  • Several tweaks to object meshes and physics parameters were made. A flat face was added to the panel mesh to allow the plug to rest on top of it.
  • srdf for the arm is updated to disable collision between finger and wrist. I think this was accidentally left out in the original PR. Now we can plan for both fingers of the gripper to close.

Yadunund added 10 commits March 16, 2022 19:18
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Yadunund <[email protected]>
@Yadunund Yadunund requested a review from quarkytale March 18, 2022 02:56
Signed-off-by: Yadunund <[email protected]>
@Yadunund
Copy link
Member Author

Strongly recommend to ensure this fix ros-controls/ros_controllers#577 is available in your local joint_trajectory_controller noetic package. If you have the old binary installed, first sudo apt remove ros-noetic-joint-trajectory-controller. Then clone in the source code (delete packages except for joint_trajectory_controller) and then rebuild/source.

@mabelzhang
Copy link
Contributor

We did bring up this PR in the meeting and said @crvogt / @j-herman / @mabelzhang can review it, whoever gets to it first. On your mark, get set.

@quarkytale quarkytale mentioned this pull request Mar 18, 2022
12 tasks
Copy link
Contributor

@quarkytale quarkytale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A suggestion if we could be consistent with model naming rexrov0, rexrov1, ... would be useful while scaling up.
Leaving the mesh and sdf changes for someone more experienced. Apart from that looks good and the world loads up with rexrov joystick control as expected! Though, getting an eigenpy runtime dependency issue in the dual-arm controller, is anyone else facing the same?

@mabelzhang
Copy link
Contributor

Re dependency - I haven't tried it yet, but a quick possibility, we added new dependencies for the bimanual demo recently https://github.com/Field-Robotics-Lab/dockwater/pull/21/files Doesn't look related to EigenPy though.

@quarkytale
Copy link
Contributor

quarkytale commented Mar 18, 2022

Re dependency - I haven't tried it yet, but a quick possibility, we added new dependencies for the bimanual demo recently https://github.com/Field-Robotics-Lab/dockwater/pull/21/files Doesn't look related to EigenPy though.

My dockwater was up to date but moveit-industrial-planner failing to initialize, other missing dependencies. All set now!
bimanual

@Yadunund
Copy link
Member Author

A suggestion if we could be consistent with model naming rexrov0, rexrov1, ...

Agreed. I left it as rexrov because I assumed namespacing (ie, using rexrov0 for the dual arm rexrov) would lead to some issues or require re-running the moveit setup assistant. Since we were on a bit of a time crunch, I left it as is.

Though, getting an eigenpy runtime dependency issue in the dual-arm controller, is anyone else facing the same?

I haven't seen that issue before.

My dockwater was up to date but moveit-industrial-planner failing to initialize, other missing dependencies. All set now!

I'm not sure if the dependencies in dockwater are upto date but there are a couple of moveit dependencies that were missing and have been patched here #239. If you run a rosdep install cmd, that should pull in everything you need.

@Yadunund
Copy link
Member Author

We should wait for #241 to be merged and include those changes into this branch to utilize the effort controller manager

@Yadunund
Copy link
Member Author

I'm merging this PR given the upcoming code freeze. If anyone discovers any issues, please open a ticket and we can patch in the changes.

@Yadunund Yadunund merged commit 9d3dbb8 into feature/integrated_world Mar 25, 2022
@Yadunund Yadunund deleted the integrated_world_bimanual branch March 25, 2022 04:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants