deadlock-free and collision-free coordination of two robot manipulators

Post on 30-Jan-2016

34 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Deadlock-Free and Collision-Free Coordination of Two Robot Manipulators. Presented by Huy Nguyen April 28, 2003. Introduction. Goal Coordinate the trajectories of two robot manipulators so as to avoid collisions and deadlock . Definitions path – Curve in C-space. - PowerPoint PPT Presentation

TRANSCRIPT

Deadlock-Free and Collision-Free Coordination of Two Robot Manipulators

Presented by Huy NguyenApril 28, 2003

Introduction

Goal Coordinate the trajectories of two robot

manipulators so as to avoid collisions and deadlock.

Definitions path – Curve in C-space. trajectory – Time history of positions

along path (curve in state space).

The ApproachPatrick A. O’Donnell and Tomas Lozano-Perez ’89

Decouple path specification step from trajectory specification step.

Assume path of each manipulator has been planned off-line and is composed of a sequence of path segments.

Assume that we can estimate the time required to execute each segment.

Trajectory coordination problem is a scheduling problem where space is the shared resource.

Task-Completion (TC) Diagram

B

AsB sA

gB

gAsB

gB

sA

gA

Path in C-Space Task-Completion Diagram

Task-Completion (TC) Diagram

B

AsB sA

gB

gA

Task-Completion (TC) Diagram

B

AsB sA

gB

gA

Axes represent segments of robot paths.

Task-Completion (TC) Diagram

B

AsB sA

gB

gA

Axes represent segments of robot paths.

Rectangle Rij is shaded if the swept volume of the ith path segment of A collides with swept volume of jth path segment of B.

Task-Completion (TC) Diagram

B

AsB sA

gB

gA

Axes represent segments of robot paths.

Rectangle Rij is shaded if the swept volume of the ith path segment of A collides with swept volume of jth path segment of B.

A schedule is a non-decreasing curve that connects lower-left corner of diagram to top-right corner.

Task-Completion (TC) Diagram

B

AsB sA

gB

gA

Axes represent segments of robot paths.

Rectangle Rij is shaded if the swept volume of the ith path segment of A collides with swept volume of jth path segment of B.

A schedule is a non-decreasing curve that connects lower-left corner of diagram to top-right corner.

A safe schedule is a schedule that never penetrates interior of union of collision rectangles.

Task-Completion (TC) Diagram

A

BsA sB

gA

gB

Axes represent segments of robot paths.

Rectangle Rij is shaded if the swept volume of the ith path segment of A collides with swept volume of jth path segment of B.

A schedule is a non-decreasing curve that connects lower-left corner of diagram to top-right corner.

A safe schedule is a schedule that never penetrates interior of union of collision rectangles.

Boundaries of collision rectangles are safe!

Greedy Scheduler Demo

B

AsB sA

gB

gA

procedure Greedy Scheduler; begin i:=0; j:=0; while i < m or j < n do begin if Ri,j is collision free then begin if i < m then begin Execute Ai; i:=i+1; end

if j < n then begin Execute Bj; j:=j+1; end end else if i < m and Ri,j-1 is collision free then begin Execute Ai; i:=i+1; end else if j < n and Ri-1,j is collision free then begin Execute Bj; j:=j+1; end Wait for any completion signals; end end

Greedy Scheduler Demo

B

AsB sA

gB

gA

procedure Greedy Scheduler; begin i:=0; j:=0; while i < m or j < n do begin if Ri,j is collision free then begin if i < m then begin Execute Ai; i:=i+1; end

if j < n then begin Execute Bj; j:=j+1; end end else if i < m and Ri,j-1 is collision free then begin Execute Ai; i:=i+1; end else if j < n and Ri-1,j is collision free then begin Execute Bj; j:=j+1; end Wait for any completion signals; end end

Greedy Scheduler Demo

B

AsB sA

gB

gA

procedure Greedy Scheduler; begin i:=0; j:=0; while i < m or j < n do begin if Ri,j is collision free then begin if i < m then begin Execute Ai; i:=i+1; end

if j < n then begin Execute Bj; j:=j+1; end end else if i < m and Ri,j-1 is collision free then begin Execute Ai; i:=i+1; end else if j < n and Ri-1,j is collision free then begin Execute Bj; j:=j+1; end Wait for any completion signals; end end

Deadlock

B

AsB sA

gB

gA

Greedy Scheduler can become Deadlocked.

SW-closure

.

B

AsB sA

gB

gA

Can avoid deadlock by computing SW-closure of union of collision regions to fills in non-convexities.

Parallelism Previously, we could only

execute one segment of A and/or B at each step.

Parallelism decreases execution time.

Axes correspond to expected execution time.

Want a nearly diagonal path.

B

A

Increasing Potential Parallelism

B

A

TC Diagram may have collision regions near diagonal because of original choice of paths.

Increasing Potential Parallelism

B

A

B

A

For a problematic collision region, replan path between the initial and final points of A by using swept volume of B as an obstacle.

New path may change collision rectangles and/or execution times.

Changing Tasks Allow one robot to deal with significant delay in the other. Construct TC diagram assuming each robot will carry out all tasks. Allow jumps to nonadjacent regions (assume end of one cycle is beginning of another.

B

A

Conclusions Interesting Ideas

Decoupling of path and trajectory planning. Interpretation as scheduling problem and use of

the Task-Completion diagram. Only use space-time planning for collisions near

diagonal to increase parallelism. Questions/Concerns

Scalability. Computing all potential collisions is expensive.

Actual results? Comparisons?

End

Special thanks to Chris Clark and Guha Jayachandran for the diagrams!

Previous Approaches Global Methods

Construct complete collision-free trajectories. Example

Construct Configuration Space-Time and compute trajectories for each robot one at a time, using swept volume (in space-time) of previous trajectories as obstacles.

Pros Guarantee that robots will reach goal.

Cons Depends on carefully controlled trajectories.

Previous Approaches Local Methods

Decide at each point in time the trajectory for each robot.

Example At each point in time, define separating planes

and ensure that objects stay on opposite sides. Pros

Can accommodate unexpected variations in trajectories or unexpected obstacles.

Cons May reach deadlock. Rely on changing paths to avoid collisions.

top related