Skip to main content
6 of 6
Code formatting and removed code formatting on list
Greenonline
  • 1.7k
  • 6
  • 21
  • 32

Moveit set_pose_target() weird motions

I have an ABB IRB 1200 robotic arm that I'm controlling with MoveIt in ROS Noetic.

Using move_group.set_pose_target(pose), I'm getting weird inefficient motions sometimes. Using move_group.set_joint_value_target(pose,True), I'm not getting weird motions.

However, obstacle avoidance is only supported using set_pose_target(), because it plans in cartesian space.

How can I get the best of both worlds, ie. efficient motions and obstacle avoidance?

I tried:

  • increasing planning attempts: move_group.set_num_planning_attempts(20)
    • didn't work
  • increase tolerance: move_group.set_goal_tolerance(0.01)
    • weird motions occurred less often.

I'm using the Trac solver:

  • kinematics_solver: trac_ik_kinematics_plugin/TRAC_IKKinematicsPlugin
  • kinematics_solver_search_resolution: 0.005
  • kinematics_solver_timeout: 0.005
  • solve_type: Distance

And BiTRRT for path planning:

planner_configs:
 BiTRRT:
    type: geometric::BiTRRT
    range: 0.0 
    temp_change_factor: 0.1  
    init_temperature: 100  
    frountier_threshold: 0.0  
    frountier_node_ratio: 0.1  
    cost_threshold: 1e300  

manipulator:
  default_planner_config: BiTRRT
  planner_configs:
    - BiTRRT
    - etc
  projection_evaluator: joints(joint_1,joint_2)
  longest_valid_segment_fraction: 0.005