Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Possibility of moving the ur10 universal robot with respect to the action goals being updated in its ROS topic "/follow_joint_trajectory/goal"?

Dear ROS developers & users,

Let me formulate my situation.

Aim :: To move the ur10 universal robot with respect to the updated action goals which are being published to its corresponding ROS topic "/follow_joint_trajectory/goal"

Things performed ::

  • Played around with the tutorials provided in the ros-industrial package of universal robot using the website link (http://wiki.ros.org/universal_robot/Tutorials/Getting%20Started%20with%20a%20Universal%20Robot%20and%20ROS-Industrial )

  • Checked which particular ROS topic should I have to publish a new joint-space goal. The ROS topic was found to be "/follow_joint_trajectory/goal". Type of this ROS topic is "control_msgs/FollowJointTrajectoryActionGoal". Also, i had a look at the message sturcture of "control_msgs/FollowJointTrajectoryActionGoal" using the website link (http://docs.ros.org/fuerte/api/control_msgs/html/msg/FollowJointTrajectoryActionGoal.html )

For the sake of completeness, the complete message structure of "control_msgs/FollowJointTrajectoryActionGoal" looks in the following manner.

ros@rosPC:~$ rosmsg show control_msgs/FollowJointTrajectoryActionGoal

std_msgs/Header header

uint32 seq

time stamp

string frame_id

actionlib_msgs/GoalID goal_id

time stamp

string id

control_msgs/FollowJointTrajectoryGoal goal

trajectory_msgs/JointTrajectory trajectory

std_msgs/Header header
   uint32 seq
   time stamp
   string frame_id

string[] joint_names

trajectory_msgs/JointTrajectoryPoint[] points
  float64[] positions
  float64[] velocities
  float64[] accelerations
  float64[] effort
  duration time_from_start

control_msgs/JointTolerance[] path_tolerance

 string name
 float64 position
 float64 velocity
 float64 acceleration

control_msgs/JointTolerance[] goal_tolerance

 string name
 float64 position
 float64 velocity
 float64 acceleration

duration goal_time_tolerance

  • To be precise, I neglected the following parts of the above mentioned message while publishing the action goals to the ROS topic "follow_joint_trajectory/goal".

Field --- Object => Class (My interpretation of the message structure)

std_msgs/Header header => control_msgs/FollowJointTrajectoryActionGoal

time stamp ---- actionlib_msgs/GoalID goal_id => control_msgs/FollowJointTrajectoryActionGoal

std_msgs/Header header => trajectory_msgs/JointTrajectory trajectory

duration time_from_start ---- trajectory_msgs/JointTrajectoryPoint[] points => trajectory_msgs/JointTrajectory trajectory

duration goal_time_tolerance => control_msgs/FollowJointTrajectoryActionGoal

  • So far, the ROS topic "/follow_joint_trajectory/goal" is clearly published with the action goals

Typical action goal published to the ROS topic "/follow_joint_trajectory/goal" and the message looks in the following way.

header:

seq: 0

stamp:     

   secs: 0    

   nsecs: 0

frame_id: ''

goal_id:

stamp: 

   secs: 0

   nsecs: 0

 id: 0

goal:

trajectory: 

  header: 

    seq: 0

    stamp: 
      secs: 0
      nsecs: 0

    frame_id: ''

  joint_names: ['shoulder_pan_joint', 'shoulder_lift_joint', 'elbow_joint', 'wrist_1_joint', 'wrist_2_joint', 'wrist_3_joint']

  points: 
    - 
      positions: [1.4770721197128296, -2.000670909881592, 1.7188003063201904, -2.132617950439453, -1.6139060258865356, -0.28640851378440857]

      velocities: [1.4770721197128296, -2.000670909881592, 1.7188003063201904, -2.132617950439453, -1.6139060258865356, -0.28640851378440857]

      accelerations: [0.7385360598564148, -1.000335454940796, 0.8594001531600952, -1.0663089752197266, -0.8069530129432678, -0.14320425689220428]

      effort: []

      time_from_start: 
        secs: 0
        nsecs: 0
    - 

      positions: [1.9598301649093628, -1.015956163406372, 1.7667968273162842, -2.3582887649536133, -1.60133957862854, -0.4801400899887085]

      velocities: [1.9598301649093628, -1.015956163406372, 1.7667968273162842, -2.3582887649536133, -1.60133957862854, -0.4801400899887085]

      accelerations: [0.9799150824546814, -0.507978081703186, 0.8833984136581421, -1.1791443824768066, -0.80066978931427, -0.24007004499435425]

      effort: []

      time_from_start: 
        secs: 0
        nsecs: 0

path_tolerance: -

  name: pt
  position: 0.0872664600611
  velocity: 0.0872664600611
  acceleration: 0.0872664600611

goal_tolerance: -

  name: gt
  position: 0.0872664600611
  velocity: 0.0872664600611
  acceleration: 0.0872664600611

goal_time_tolerance:

secs: 0
nsecs: 0

ros@rosPC:~$ rostopic echo /follow_joint_trajectory/goal

Result :: Even though the action goals are published on the desired ROS topic (i.e., "/follow_joint_trajectory/goal"), ur10 robot doesn't move at all

Conclusion drawn from the result :: May be I have to fill the neglected parts of the message structure in order to move the UR10 robot successfully

Query

In the above mentioned message, it consists of two header parts where the relevant information needs to be filled. One header is dedicated to the "control_msgs/FollowJointTrajectoryActionGoal" itself and other one belongs to the "trajectory_msgs/JointTrajectory".

Do I have to fill both the headers with relevant info (i.e., seq, stamp, frame_id)?

Has anyone encountered such kind of situation before? If yes, please give me your invaluable suggestions.

Thanking You,

BR,

Sriniwas