Motion planning for multiple robots in shared workspace
AssigneeRealtime Robotics, Inc.
InventorsSean Murray, William Floyd-Jones, Xianchao Long
Life of this patent
Estimating the term…
Abstract
Collision detection useful in motion planning for robotics advantageously represents planned motions of each of a plurality of robots as obstacles when performing motion planning for any given robot in the plurality of robots that operate in a shared workspace, including taking into account the planned motions during collision assessment. Edges of a motion planning graph are assigned cost values, based at least in part on the collision assessment. Obstacles may be pruned as corresponding motions are completed. Motion planning requests may be queued, and some robots skipped, for example in response to an error or blocked condition.
Claims21
A method of controlling a plurality of robots to operate in a common workspace in which a range of motion of the robots overlap, the method comprising:
- generating, by at least one processor, a first motion plan for a robot R1 of the plurality of robots, wherein the first motion plan for the robot R1 is in a digital form;
- for each of at least one of the robots Ri, from i equals 2 to i equals n where n is a total number of the robots in the plurality of robots and n is an integer that is equal to or greater than 2,
- representing, by the at least one processor, a number of motions of at least the robot R1 as at least one obstacle, wherein the representation of the number of motions of at least the robot R1 as at least one obstacle is in a digital form;
- performing, by the at least one processor, collision detection for at least one motion of at least a portion of the robot Ri with respect to the representation of the at least one obstacle;
- generating, by the at least one processor, a first motion plan for the robot Ri based at least in part on the collision detection for the at least one motion of at least the portion of the robot Ri, wherein the first motion plan for the robot Ri is in a digital form;
- executing, by the at least one processor, the respective first motion plan for a corresponding one of the plurality of robots to control operation of at least one of the robots R1 through Rn;
- and
- in response to completion of at least one motion by the robot R1, updating, by the at least one processor, a representation of obstacles to eliminate portions corresponding to the completed at least one motion by the robot R1.
A system to control a plurality of robots to operate in a common workspace in which a range of motion of the robots overlap, the system comprising:
- at least one processor;
- and
- at least one nontransitory storage medium communicatively coupled to the at least one processor and that stores processor-executable instructions which, when executed by the at least one processor, cause the at least one processor to:
- generate, by the at least one processor, a first motion plan for a robot R1 of the plurality of robots;
- for each of at least one of the robots Ri, from i equals 2 to i equals n where n is a total number of the robots in the plurality of robots and n is an integer that is equal to or greater than 2,
- represent, by the at least one processor, a number of motions of at least the robot R1 as at least one obstacle;
- perform collision detection, by the at least one processor, for at least one motion of at least a portion of the robot Ri with respect to the representation of the at least one obstacle;
- generate, by the at least one processor, a first motion plan for the robot Ri based at least in part on the collision detection for the at least one motion of at least the portion of the robot Ri;
- executing, by the at least one processor, a respective first motion plan for the corresponding one of the plurality of robots to control operation of at least one of the robots R1 through Rn;
- and
- in response to completion of at least one motion by the robot R1, update a representation of obstacles, by the at least one processor, to eliminate portions corresponding to the completed at least one motion by the robot R1.
Dependencies are inferred from the claim text.