Kinovarobotics / ros2_kortex

ROS2 driver for the Gen3 Kinova robot arm
Other
38 stars 33 forks source link

Gen3 robotiq_gripper_controller failing to activate #226

Open keenan88 opened 3 weeks ago

keenan88 commented 3 weeks ago

Hello,

Project Goal

I am working on a minimal example for the 6 DOF gen3 arm. My original goal was to test the octomap with the ros2 kortex as I had experienced odd crashes in a seperate project, but I found a seperate issue while creating this minimal example.

Observed Behaviour

When I launch the nodes in moveit_bringup.launch.py (attached below), I get the following output (attached below): moveit_bringup.launch.txt minimal_example_output_1.txt The control node does not see an interface for robotiq_85_left_knuckle_joint/position, and the robotiq gripper controller fails to activate. I can run the same launch file with use_fake_hardware = True, and the error is not present. However, I need to work on a physical arm.

Specs

Gen3 arm has been updated the latest software available from Kinova. Kinova was configured in the webapp to be using a robotiq_2f_85 gripper. image Running ROS2 humble from a docker container.

If you want to run my minimal example, the repo is here: https://github.com/keenan88/kinova_gen3_octomap_minimal#js-repo-pjax-container To reproduce the issue:

  1. Clone the repo & checkout branch voxels_working (the name is arbitrary, not relevant to voxels in this case)
  2. Ensure gen3 is connected to your computer via ethernet.
  3. From the root, run docker compose up.
  4. Run docker exec -it humble-humble-moveit bash to enter the container.
  5. Within the container, run ros2 launch antworker_moveit_bringup moveit_bringup.launch.py to start the minimal example launch file.
  6. The output should be the same as in the output text file above.

I have managed to reproduce the same issues using the ros2_kortex branch on main and tag 0.2.2.

Can anyone shed some light on what is happening?

Thank you,

Keenan

aalmrad commented 3 weeks ago

Hello, Thank you for reaching out. We are currently investigating the gripper control to identify the discrepancy between the simulation and hardware implementation.

aalmrad commented 2 weeks ago

The issue was successfully reproduced on my end. The robotiq_85_left_knuckle_joint is properly declared as a position joint under the gripper controller and the joint is properly included in the robot description yet for a certain reason that i couldn't identify yet, the joint is not recognized. I am actively working on finding a solution.

aalmrad commented 1 week ago

Hello, After investigation, I recommend that you build the ros2 kortex package from source by following the instructions on the following page: https://github.com/Kinovarobotics/ros2_kortex/tree/main I have tested this today on the Gen3 7dof with a mounted robotiq 2f-85 gripper but i expect that you won't face issues with the Gen3 6dof. Please keep me posted regarding the situation and do not hesitate to reach out if you face further issues.