270 likes | 297 Views
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
E N D
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 NUS CS5247
Outline • Motivation, Background and Our goal • The key problems and Some terminology • Environment and Goals for our trajectory coordinator • Related work and Previous approaches • Our approach • Further discussion • Summary NUS CS5247
Motivation • Introduce a method for coordinating the trajectories of two robot manipulators so as to avoid collisions between them. NUS CS5247
Background • 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 CS5247
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. • That is, (1). Coordinating two robot manipulators so as to avoid collisions between them; (2). Guarantee the trajectories will reach their goals NUS CS5247
The key problems • To avoid 1. Collisions between the two robots. 2. Deadlock NUS CS5247
Some terminology • Path: the shape of the curve in the robot’s configuration space. • Trajectory: the time history of positions along a path, that is, a curve through the robot’s state space. • Path Vs Trajectory: a given path may have infinitely many possible trajectories. NUS CS5247
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. • Robots’s trajectories are less predictable: Eg, arc welding, sensor-based operation, unavoidable error in the controller. NUS CS5247
Goals for our trajectory coordinator • It should be possible to plan the path for each manipulator essentially independently. • The resulting trajectories should guarantee that the manipulators will reach their goals. • It should be possible to execute the trajectories without precise time coordination between the manipulators. • The safety of the manipulators should not depend on accurate trajectory control of individual manipulators. NUS CS5247
Related work and Previous approaches • Global and local approaches to trajectory coordination of multiple manipulators. • Global methods • Local methods • Drawbacks for these two methods • 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 CS5247
Our approach —— Scheduling • 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 CS5247
Task-Completion Diagram NUS CS5247
A Schedule for the task NUS CS5247
Simple scheduling algorithm NUS CS5247
A partial schedule that leads to a deadlock NUS CS5247
How to solve this problem? NUS CS5247
Some modifications and moving on • We make the segment length be proportional to estimated time. • The safe areas including the goal and the origin must be connected. • 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. NUS CS5247
Decentralized Greedy Scheduling Ai:...... lock( Ri,j ) Ai unlock( Ri,j ) ......... Bj:...... lock( Ri,j ) 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 CS5247
How to find an optimal / best schedules ? Answer: To increase the parallelism of the schedule and change our selection of path. NUS CS5247
Principles about how to increase the potential parallelism • 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 CS5247
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. • May change the choice of the best schedule. • Strategy: simply redo the coordination. NUS CS5247
Further discussion • Changing the Task • Testing for Collisions NUS CS5247
Summary • Background introduction 1. Motivation and Our goal 2. The key problem 3. Relative work and previous approaches • Our approach——Scheduling 1. Approach statement 2. Avoid deadlock problem 3. Modification and moving deeper in discussion • Further discussion NUS CS5247
Thank you NUS CS5247