Yaskawa-Global / motoros2

ROS 2 (rcl, rclc & micro-ROS) node for MotoPlus-compatible Yaskawa Motoman robot controllers
96 stars 20 forks source link

`Warning: Group 0 - Time difference between endTrajData (...) and startTrajData (...) is 0 or less.` #255

Open gavanderhoorn opened 4 months ago

gavanderhoorn commented 4 months ago

Just happened to notice it while working on something:

Processing next point in trajectory [Group #0 - T=3.899: ( 1.2294,  0.0132, -1.4978,  1.2743,  0.1970,  2.4911)]
Processing next point in trajectory [Group #1 - T=3.899: ( 0.8486,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000)]
Processing next point in trajectory [Group #0 - T=4.000: ( 1.2287,  0.0112, -1.5007,  1.2794,  0.2003,  2.4942)]
Processing next point in trajectory [Group #1 - T=4.000: ( 0.8482,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000)]
Processing next point in trajectory [Group #0 - T=4.000: ( 1.2287,  0.0112, -1.5007,  1.2794,  0.2003,  2.4942)]
Warning: Group 0 - Time difference between endTrajData (4000) and startTrajData (4000) is 0 or less.
Processing next point in trajectory [Group #1 - T=4.000: ( 0.8482,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000)]
Warning: Group 1 - Time difference between endTrajData (4000) and startTrajData (4000) is 0 or less.

this could be a problem with the 'input' trajectory (ie: the submitted goal), but I haven't checked yet.

Trajectory generated by MoveIt.

gavanderhoorn commented 4 months ago

@ted-miller: would it not make sense to refuse to execute a trajectory which has this problem?

We iterate over all trajectory points when processing the incoming goal, and this seems like it falls in the "malformed input trajectory" category.

ted-miller commented 4 months ago

In this case, I don't see a problem with that trajectory. It just seems the last point is duplicated.

If there were any positional difference in the last two points, then yeah this would be problem.

So maybe only reject the trajectory if there's no difference, but there is a difference in position?