DeadlockFree and Collision Free Coordination of Two Robot
Deadlock-Free and Collision -Free Coordination of Two Robot Manipulators By Patrick A. O’Donnell and Tomás Lozano-Pérez MIT Artificial Intelligence Laboratory 545 Technology Square Cambridge, MA. , 02139 Presented by Zhang Jingbo
Outline Motivation, Background and Our goal p The key problems and Some terminology p Environment and Goals for our trajectory coordinator p Related work and Previous approaches p Our approach p Further discussion p Summary p NUS CS 5247 2
Motivation p Introduce a method for coordinating the trajectories of two robot manipulators so as to avoid collisions between them. NUS CS 5247 3
Background p Whenever multiple robots must operate in close proximity to each other, the potential for collision must be taken into account in specifying the robot trajectories. NUS CS 5247 4
Our goal To allow the motions of each manipulator to be planned nearly independently and to allow the execution of the path segments to be asynchronous. p That is, (1). Coordinating two robot manipulators so as to avoid collisions between them; (2). Guarantee the trajectories will reach their goals p NUS CS 5247 5
The key problems p To avoid 1. Collisions between the two robots. 2. Deadlock NUS CS 5247 6
Some terminology Path: the shape of the curve in the robot’s configuration space. p Trajectory: the time history of positions along a path, that is, a curve through the robot’s state space. p p Path Vs Trajectory: a given path may have infinitely many possible trajectories. NUS CS 5247 7
Environment Robots’s paths are predictable: We can predict the paths of manipulators off-line to avoid all the other static objects in the environments. p Robots’s trajectories are less predictable: Eg, arc welding, sensor-based operation, unavoidable error in the controller. p NUS CS 5247 8
Goals for our trajectory coordinator It should be possible to plan the path for each manipulator essentially independently. p The resulting trajectories should guarantee that the manipulators will reach their goals. p It should be possible to execute the trajectories without precise time coordination between the manipulators. p The safety of the manipulators should not depend on accurate trajectory control of individual manipulators. p NUS CS 5247 9
Related work and Previous approaches p Global and local approaches to trajectory coordination of multiple manipulators. l l p Global methods Local methods Drawbacks for these two methods l l Global methods: depend on carefully controlled trajectories; the methods are computationally intensive Local methods: based on actual measurements of the robots’s positions; cannot guarantee reaching goals; May reach a deadlock; Not suited when the paths are tightly constrained NUS CS 5247 10
Our approach —— Scheduling p p p Decouple the path specification step from the trajectory specification step. Avoid all collisions by using time. Assumption about the path: a. The path planned off-line and composed of a sequence of path segments. b. The path constrained within the bounding box of the initial and final joint values of the segment. c. Paths can be produced by typical linear joint interpolations. d. Executing time for each path segment can be estimate roughly. NUS CS 5247 11
Task-Completion Diagram NUS CS 5247 12
A Schedule for the task NUS CS 5247 13
Simple scheduling algorithm NUS CS 5247 14
A partial schedule that leads to a deadlock NUS CS 5247 15
How to solve this problem? NUS CS 5247 16
Compute the SW-closure of the collision regions NUS CS 5247 17
Some modifications and moving on We make the segment length be proportional to estimated time. p The safe areas including the goal and the origin must be connected. p Two methods to construct a schedule. 1. local method: a. Greedy Schedule with central controller b. Greedy Schedule with decentralized version. 2. global method: marching down a list that issuing START/WAIT commands. p NUS CS 5247 18
Decentralized Greedy Scheduling Ai:. . . lock( Ri, j ) Bj:. . . lock( Ri, j ) Ai Bj unlock( Ri, j ). . . . Each shaded Ri, j becomes a “lock”. When reaching the region of Ri, j : — A’s controller must grab the locks of the shaded Ri, j, for all j before executing path segment Ai. — B’s controller must grab the locks of the shaded Ri, j, for all i before executing path segment Bj. NUS CS 5247 19
How to find an optimal / best schedules ? Answer: To increase the parallelism of the schedule and change our selection of path. NUS CS 5247 20
NUS CS 5247 21
Principles about how to increase the potential parallelism p We pick Ri, j or a larger collision region formed from the union of several Ri, j such that: 1. The region is shaded because of a collision and not because of the SW-closure operation. 2. The initial and final positions of the path segments giving rise to the collision region are free of collision. 3. The region is large enough that it causes a significant increase in the total time of the best schedule to go around it. NUS CS 5247 22
The impact of variable segment time Earlier, we indicated that in many applications, the execution times for path segments cannot be predicted reliably, especially in situations involving sensing or variable-time processes. p May change the choice of the best schedule. p Strategy: simply redo the coordination. p NUS CS 5247 23
NUS CS 5247 24
Further discussion Changing the Task p Testing for Collisions p NUS CS 5247 25
Summary Background introduction 1. Motivation and Our goal 2. The key problem 3. Relative work and previous approaches p Our approach——Scheduling 1. Approach statement 2. Avoid deadlock problem 3. Modification and moving deeper in discussion p Further discussion p NUS CS 5247 26
Thank you NUS CS 5247 27
- Slides: 27