0
$\begingroup$

I want to run the pose tracking example of moveit_servo, but it shows an error message.

... logging to /home/camar/.ros/log/210350c6-2ec8-11ef-9112-15da6472612a/roslaunch-NUC-177406.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://NUC:42005/

SUMMARY
========

PARAMETERS
 * /rosdistro: noetic
 * /rosversion: 1.16.0
 * /servo_server/angular_derivative_gain: 0.0
 * /servo_server/angular_integral_gain: 0.0
 * /servo_server/angular_proportional_gain: 0.5
 * /servo_server/cartesian_command_in_topic: delta_twist_cmds
 * /servo_server/check_collisions: True
 * /servo_server/collision_check_rate: 10
 * /servo_server/collision_check_type: threshold_distance
 * /servo_server/collision_distance_safety_factor: 1000
 * /servo_server/command_in_type: speed_units
 * /servo_server/command_out_topic: /rf_hybrid_arm_co...
 * /servo_server/command_out_type: trajectory_msgs/J...
 * /servo_server/ee_frame_name: cm_link_end
 * /servo_server/hard_stop_singularity_threshold: 30
 * /servo_server/incoming_command_timeout: 0.2
 * /servo_server/joint_command_in_topic: delta_joint_cmds
 * /servo_server/joint_limit_margin: 0.1
 * /servo_server/joint_topic: joint_states
 * /servo_server/low_latency_mode: False
 * /servo_server/low_pass_filter_coeff: 2.0
 * /servo_server/lower_singularity_threshold: 17
 * /servo_server/min_allowable_collision_distance: 0.01
 * /servo_server/move_group_name: rf_hybrid_arm
 * /servo_server/num_outgoing_halt_msgs_to_publish: 4
 * /servo_server/planning_frame: base_link
 * /servo_server/publish_joint_accelerations: False
 * /servo_server/publish_joint_positions: True
 * /servo_server/publish_joint_velocities: False
 * /servo_server/publish_period: 0.1
 * /servo_server/robot_link_command_frame: base_link
 * /servo_server/scale/joint: 0.01
 * /servo_server/scale/linear: 0.6
 * /servo_server/scale/rotational: 0.3
 * /servo_server/scene_collision_proximity_threshold: 0.02
 * /servo_server/self_collision_proximity_threshold: 0.01
 * /servo_server/status_topic: status
 * /servo_server/use_gazebo: False
 * /servo_server/windup_limit: 0.05
 * /servo_server/x_derivative_gain: 0.0
 * /servo_server/x_integral_gain: 0.0
 * /servo_server/x_proportional_gain: 1.5
 * /servo_server/y_derivative_gain: 0.0
 * /servo_server/y_integral_gain: 0.0
 * /servo_server/y_proportional_gain: 1.5
 * /servo_server/z_derivative_gain: 0.0
 * /servo_server/z_integral_gain: 0.0
 * /servo_server/z_proportional_gain: 1.5

NODES
  /
    servo_server (carm_servo/carm_servo_node)

ROS_MASTER_URI=http://localhost:11311

process[servo_server-1]: started with pid [177444]
[ INFO] [1718864480.747302406]: Loading robot model 'rf_hybrid_arm'...
[ INFO] [1718864480.977713252]: Starting planning scene monitor
[ INFO] [1718864480.980968670]: Listening to '/planning_scene'
[ INFO] [1718864480.981043085]: Starting world geometry update monitor for collision objects, attached objects, octomap updates.
[ INFO] [1718864480.983672218]: Listening to '/collision_object'
[ INFO] [1718864480.986304059]: Listening to '/planning_scene_world' for planning scene world geometry
[ INFO] [1718864480.991339717]: Listening to '/attached_collision_object' for attached collision objects
[servo_server-1] process has died [pid 177444, exit code -11, cmd /home/camar/catkin_ws/devel/lib/carm_servo/carm_servo_node __name:=servo_server __log:=/home/camar/.ros/log/210350c6-2ec8-11ef-9112-15da6472612a/servo_server-1.log].
log file: /home/camar/.ros/log/210350c6-2ec8-11ef-9112-15da6472612a/servo_server-1*.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete

Launch is modified based on the “pose tracking example.launch” of moveit_servo.Just to adapt to my robot, I made some modifications to rosparam "command_out_topic".

###############################################
# Modify all parameters related to servoing here
###############################################
use_gazebo: false # Whether the robot is started in a Gazebo simulation environment

## Properties of incoming commands
command_in_type: "speed_units" # "unitless"> in the range [-1:1], as if from joystick. "speed_units"> cmds are in m/s and rad/s
scale:
  # Scale parameters are only used if command_in_type=="unitless"
  linear:  0.6  # Max linear velocity. Meters per publish_period. Unit is [m/s]. Only used for Cartesian commands.
  rotational:  0.3 # Max angular velocity. Rads per publish_period. Unit is [rad/s]. Only used for Cartesian commands.
  # Max joint angular/linear velocity. Rads or Meters per publish period. Only used for joint commands on joint_command_in_topic.
  joint: 0.01
low_pass_filter_coeff: 2.  # Larger --> trust the filtered data more, trust the measurements less.

## Properties of outgoing commands
publish_period: 0.1  # 1/Nominal publish rate [seconds]
low_latency_mode: false  # Set this to true to publish as soon as an incoming Twist command is received (publish_period is ignored)

# What type of topic does your robot driver expect?
# Currently supported are std_msgs/Float64MultiArray (for ros_control JointGroupVelocityController or JointGroupPositionController)
# or trajectory_msgs/JointTrajectory (for Universal Robots and other non-ros_control robots)
command_out_type: std_msgs/Float64MultiArray
# command_out_type: trajectory_msgs/JointTrajectory

# What to publish? Can save some bandwidth as most robots only require positions or velocities
publish_joint_positions: true
publish_joint_velocities: false
publish_joint_accelerations: false

## MoveIt properties
move_group_name:  rf_hybrid_arm  # rewrite by robot dof
planning_frame: base_link  # The MoveIt planning frame. Often 'base_link' or 'world'

## Other frames
ee_frame_name: cm_link_end  # The name of the end effector link, used to return the EE pose
robot_link_command_frame:  base_link  # commands must be given in the frame of a robot link. Usually either the base or end effector

## Stopping behaviour
incoming_command_timeout:  0.2  # Stop servoing if X seconds elapse without a new command
# If 0, republish commands forever even if the robot is stationary. Otherwise, specify num. to publish.
# Important because ROS may drop some messages and we need the robot to halt reliably.
num_outgoing_halt_msgs_to_publish: 4

## Configure handling of singularities and joint limits
lower_singularity_threshold:  17  # Start decelerating when the condition number hits this (close to singularity)
hard_stop_singularity_threshold: 30 # Stop when the condition number hits this
joint_limit_margin: 0.1 # added as a buffer to joint limits [radians]. If moving quickly, make this larger.

## Topic names
cartesian_command_in_topic: delta_twist_cmds  # Topic for incoming Cartesian twist commands
joint_command_in_topic: delta_joint_cmds # Topic for incoming joint angle commands
joint_topic: joint_states
status_topic: status # Publish status to this topic
command_out_topic: /rf_hybrid_arm_controller/command # rewrite by robot dof

## Collision checking for the entire robot body
check_collisions: true # Check collisions?
collision_check_rate: 10 # [Hz] Collision-checking can easily bog down a CPU if done too often.
# Two collision check algorithms are available:
# "threshold_distance" begins slowing down when nearer than a specified distance. Good if you want to tune collision thresholds manually.
# "stop_distance" stops if a collision is nearer than the worst-case stopping distance and the distance is decreasing. Requires joint acceleration limits
collision_check_type: threshold_distance
# Parameters for "threshold_distance"-type collision checking
self_collision_proximity_threshold: 0.01 # Start decelerating when a self-collision is this far [m]
scene_collision_proximity_threshold: 0.02 # Start decelerating when a scene collision is this far [m]
# Parameters for "stop_distance"-type collision checking
collision_distance_safety_factor: 1000 # Must be >= 1. A large safety factor is recommended to account for latency
min_allowable_collision_distance: 0.01 # Stop if a collision is closer than this [m]
$\endgroup$

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.