Project

General

Profile

Actions

Bug #147

closed

skipping waypoint instruction when calling multiple waypoint in a row without pause

Added by Anonymous almost 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-

Description

With the following matlab script, we noticed that some of the waypoints added to the stack were randomly ignored (see image 1) :

p10 = [1 1 1.1 0]';
p20 = [1 -1 1.1 0]';
p30 = [-1 -1 1.1 0]';
p40 = [-1 1 1.1 0]';
p50 = [0 0 1.1 0]';
duration = 5;
add_waypoint_robots(robots,p10, duration);
add_waypoint_robots(robots,p20, duration);
add_waypoint_robots(robots,p30, duration);
add_waypoint_robots(robots,p40, duration);
add_waypoint_robots(robots,p50, duration);

By adding a small pause (example : "pause(0.1);") between each call of maneuver.waypoint, the requested path would then be respected.


Files

image1.png (43.6 KB) image1.png Anonymous, 2018-01-31 11:21
Actions #1

Updated by Anthony Mallet almost 7 years ago

Indeed, in maneuver.gen you can see that "waypoint" interrupts itself,
so if you issue a new one while the prev. one hasn't completed, the
prev. one is cancelled. This is correct according to the component
spec, although maybe the specified behaviour might not be the one we
want.

I guess you are invoking the "waypoint" service asynchronously ('-a'
flag in matlab). If yes, try to invoke it synchronously, this will fix
what you are seeing.

Actions #2

Updated by Anthony Mallet almost 7 years ago

  • Status changed from New to Closed
Actions

Also available in: Atom PDF