-
Notifications
You must be signed in to change notification settings - Fork 60
Description
Describe the problem you got
With joint_trajectory_controller, sending a new command causes the torque to momentarily relax.
As a result, the arm briefly drops.
It seems to drop more when the gain is small.
i have the same problem i am using humble didn't change anything in the code or config when next command goes it drops and suddenly tries to go to the position
WhatsApp.Video.2026-01-04.at.6.02.46.PM.mp4
Cause
This is caused by poor compatibility with the joint_trajectory_controller.
It does not occur when using the forward_position_controller in openarm_bringup.
The exact root cause is unknown, but this seems to be triggered when the next action is close to the current position.
joint_trajectory_controller interpolates the trajectory, so the first point is always very close to the current position.
This likely causes this behavior.
Reproduce
ros2 launch openarm_bimanual_moveit_config demo.launch.py- In RViz, set
-30toopenarm_left_joint1inMotionPlanning - Joints, and runPlan & ExecuteinMotionPlanning - Planning. - In RViz, set
-45toopenarm_left_joint1inMotionPlanning - Joints, and runPlan & ExecuteinMotionPlanning - Planning. - You can confirm the left arm briefly drops.
trim.D3054492-B45B-4DD2-A8ED-B904E5509334.MOV
forward_position_controller
This does not occur with forward_position_controller.
ros2 launch openarm_bringup openarm.launch.py robot_controller:=forward_position_controllerros2 topic pub /forward_position_controller/commands std_msgs/msg/Float64MultiArray '{data: [-0.10, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]}'ros2 topic pub /forward_position_controller/commands std_msgs/msg/Float64MultiArray '{data: [-0.20, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]}'ros2 topic pub /forward_position_controller/commands std_msgs/msg/Float64MultiArray '{data: [-0.30, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]}'