← Source browser

src/custom-ur-descriptions/lix_moveit_config/config/ur_base_controllers.yaml

/**:
  controller_manager:
    ros__parameters:

      joint_state_broadcaster:
        type: joint_state_broadcaster/JointStateBroadcaster

      io_and_status_controller:
        type: ur_controllers/GPIOController

      speed_scaling_state_broadcaster:
        type: ur_controllers/SpeedScalingStateBroadcaster

      force_torque_sensor_broadcaster:
        type: force_torque_sensor_broadcaster/ForceTorqueSensorBroadcaster

      joint_trajectory_controller:
        type: joint_trajectory_controller/JointTrajectoryController

      scaled_joint_trajectory_controller:
        type: ur_controllers/ScaledJointTrajectoryController

      forward_velocity_controller:
        type: velocity_controllers/JointGroupVelocityController

      forward_position_controller:
        type: position_controllers/JointGroupPositionController

      forward_effort_controller:
        type: effort_controllers/JointGroupEffortController

      force_mode_controller:
        type: ur_controllers/ForceModeController

      # Required since ur_robot_driver 3.8.0: spawned active by upstream;
      # if undeclared the spawner dies before scaled_joint_trajectory_controller.
      friction_model_controller:
        type: ur_controllers/FrictionModelController

      freedrive_mode_controller:
        type: ur_controllers/FreedriveModeController

      passthrough_trajectory_controller:
        type: ur_controllers/PassthroughTrajectoryController

      tcp_pose_broadcaster:
        type: pose_broadcaster/PoseBroadcaster

      ur_configuration_controller:
        type: ur_controllers/URConfigurationController

      tool_contact_controller:
        type: ur_controllers/ToolContactController

      # The way this is currently implemented upstream doesn't really work for us. When using
      # position control, the robot will have a tracking error. However, limits will be enforced
      # from the currently reported position, effectively limiting the possible step size using the
      # joints' velocity limits. Until this is resolved, we will keep command limits non-enforced.
      # Note: On Jazzy this is the default behavior, anyway. For Rolling / Kilted this defaults to
      # true.
      enforce_command_limits: false

  speed_scaling_state_broadcaster:
    ros__parameters:
      state_publish_rate: 100.0
      tf_prefix: "$(var tf_prefix)"

  io_and_status_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"

  ur_configuration_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"

  force_torque_sensor_broadcaster:
    ros__parameters:
      sensor_name: $(var tf_prefix)tcp_fts_sensor
      state_interface_names:
        - force.x
        - force.y
        - force.z
        - torque.x
        - torque.y
        - torque.z
      frame_id: $(var tf_prefix)tool0
      topic_name: ft_data


  joint_trajectory_controller:
    ros__parameters:
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint
      command_interfaces:
        - position
      state_interfaces:
        - position
        - velocity
      state_publish_rate: 100.0
      action_monitor_rate: 20.0
      allow_partial_joints_goal: false
      constraints:
        stopped_velocity_tolerance: 0.2
        goal_time: 0.0
        $(var tf_prefix)shoulder_pan_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)shoulder_lift_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)elbow_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_1_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_2_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_3_joint: { trajectory: 0.05, goal: 0.01 }


  scaled_joint_trajectory_controller:
    ros__parameters:
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint
      command_interfaces:
        - position
      state_interfaces:
        - position
        - velocity
      state_publish_rate: 100.0
      action_monitor_rate: 20.0
      allow_partial_joints_goal: false
      constraints:
        stopped_velocity_tolerance: 0.2
        goal_time: 0.0
        $(var tf_prefix)shoulder_pan_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)shoulder_lift_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)elbow_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_1_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_2_joint: { trajectory: 0.05, goal: 0.01 }
        $(var tf_prefix)wrist_3_joint: { trajectory: 0.05, goal: 0.01 }
      speed_scaling_interface_name: $(var tf_prefix)speed_scaling/speed_scaling_factor

  passthrough_trajectory_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint
      state_interfaces:
        - position
        - velocity
      speed_scaling_interface_name: $(var tf_prefix)speed_scaling/speed_scaling_factor

  forward_velocity_controller:
    ros__parameters:
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint
      interface_name: velocity

  forward_position_controller:
    ros__parameters:
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint

  forward_effort_controller:
    ros__parameters:
      joints:
        - $(var tf_prefix)shoulder_pan_joint
        - $(var tf_prefix)shoulder_lift_joint
        - $(var tf_prefix)elbow_joint
        - $(var tf_prefix)wrist_1_joint
        - $(var tf_prefix)wrist_2_joint
        - $(var tf_prefix)wrist_3_joint
      interface_name: effort

  force_mode_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"

  friction_model_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"

  freedrive_mode_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"

  tcp_pose_broadcaster:
    ros__parameters:
      frame_id: $(var tf_prefix)base
      pose_name: $(var tf_prefix)tcp_pose
      tf:
        child_frame_id: $(var tf_prefix)tool0_controller

  tool_contact_controller:
    ros__parameters:
      tf_prefix: "$(var tf_prefix)"