Interbotix / interbotix_ros_toolboxes

Support-level ROS Packages for Interbotix Robots
BSD 3-Clause "New" or "Revised" License
29 stars 68 forks source link

Gripper not moving #37

Closed sebbyjp closed 2 years ago

sebbyjp commented 2 years ago

Hi,

The gripper in pwm mode does not move using the hardware interface. When I send commands to the single_joint topic, it only moves with a |cmd| > 50. Seeing as how interbotix_xs_toolbox/interbotix_xs_ros_control/src/xs_hardware_interface_obj.cpp only multiplies the gripper command from moveit by 2...this is expected since /interbotix_ros_rovers/interbotix_ros_xslocobots/interbotix_xslocobot_ros_control/config/6dof_controllers.yaml sets the gripper controller to a position controller which has commands 0.015 <0.04.

Would changing the gripper controller to an effort controller fix this issue? The gripper seems to only close with a cmd < -50 and open with a cmd > 50 when in pwm mode (publishing to the commands/single_joint topic)

lukeschmitt-tr commented 2 years ago

This is likely because the gripper servo can't overcome the static friction of the gripper mechanism with such low PWM commands. You can see in the Python-ROS API's gripper module that the default lower PWM limit (gripper_pressure_lower_limit) is set to 150 to get around this issue.

lukeschmitt-tr commented 2 years ago

Do you have any further questions on this? Otherwise, this issue will be closed.

lukeschmitt-tr commented 2 years ago

Closing due to lack of activity. Feel free to reopen if necessary.