Methods and systems for distributing remote assistance to facilitate robotic object manipulation
First Claim
1. A computing system for controlling a robotic manipulator, the computing system comprising:
- at least one processor; and
data storage comprising instructions executable by the at least one processor to cause the computing system to perform operations comprising;
determining, from a model of a set of objects in an environment of the robotic manipulator, a plurality of regions of the model, wherein each region corresponds to a respective different subset of the set of objects, and wherein the robotic manipulator is configured to perform, for each subset of objects, a respective task involving a manipulation of the subset of objects;
identifying a plurality of the tasks for which the computing system will request remote assistance;
determining a priority queue of requests for remote assistance associated with the identified tasks based on expected times at which the robotic manipulator will perform the identified tasks for each subset of objects;
requesting, according to the priority queue and from at least one remote assistor device, remote assistance associated with the identified tasks;
receiving, from the at least one remote assistor device, a plurality of responses to the requesting, wherein each response includes information indicative of how to perform the manipulation of the respective subset of objects; and
causing the robotic manipulator to perform the identified tasks based at least in part on the plurality of responses received from the at least one remote assistor device.
5 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for distributing remote assistance to facilitate robotic object manipulation are provided herein. Regions of a model of objects in an environment of a robotic manipulator may be determined, where each region corresponds to a different subset of objects with which the robotic manipulator is configured to perform a respective task. Certain tasks may be identified, and a priority queue of requests for remote assistance associated with the identified tasks may be determined based on expected times at which the robotic manipulator will perform the identified tasks. At least one remote assistor device may then be requested, according to the priority queue, to provide remote assistance with the identified tasks. The robotic manipulator may then be caused to perform the identified tasks based on responses to the requesting, received from the at least one remote assistor device, that indicate how to perform the identified tasks.
173 Citations
20 Claims
-
1. A computing system for controlling a robotic manipulator, the computing system comprising:
-
at least one processor; and data storage comprising instructions executable by the at least one processor to cause the computing system to perform operations comprising; determining, from a model of a set of objects in an environment of the robotic manipulator, a plurality of regions of the model, wherein each region corresponds to a respective different subset of the set of objects, and wherein the robotic manipulator is configured to perform, for each subset of objects, a respective task involving a manipulation of the subset of objects; identifying a plurality of the tasks for which the computing system will request remote assistance; determining a priority queue of requests for remote assistance associated with the identified tasks based on expected times at which the robotic manipulator will perform the identified tasks for each subset of objects; requesting, according to the priority queue and from at least one remote assistor device, remote assistance associated with the identified tasks; receiving, from the at least one remote assistor device, a plurality of responses to the requesting, wherein each response includes information indicative of how to perform the manipulation of the respective subset of objects; and causing the robotic manipulator to perform the identified tasks based at least in part on the plurality of responses received from the at least one remote assistor device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
determining, from a model of a set of objects in an environment of a robotic manipulator, a plurality of regions of the model, wherein each region corresponds to a respective different subset of the set of objects, and wherein the robotic manipulator is configured to perform, for each subset of objects, a respective task involving a manipulation of the subset of objects; identifying a plurality of the tasks for which the computing system will request remote assistance; determining a priority queue of requests for remote assistance associated with the identified tasks based on expected times at which the robotic manipulator will perform the identified tasks for each subset of objects; requesting, according to the priority queue and from at least one remote assistor device, remote assistance associated with the identified tasks; receiving, from the at least one remote assistor device, a plurality of responses to the requesting, wherein each response includes information indicative of how to perform the manipulation of the respective subset of objects; and causing the robotic manipulator to perform the identified tasks based at least in part on the plurality of responses received from the at least one remote assistor device. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A non-transitory computer readable medium having stored thereon instructions that, upon execution by a computing system configured to control a robotic manipulator, cause the computing system to perform operations comprising:
-
determining, from a model of a set of objects in an environment of the robotic manipulator, a plurality of regions of the model, wherein each region corresponds to a respective different subset of the set of objects, and wherein the robotic manipulator is configured to perform, for each subset of objects, a respective task involving a manipulation of the subset of objects; identifying a plurality of the tasks for which the computing system will request remote assistance; determining a priority queue of requests for remote assistance associated with the identified tasks based on expected times at which the robotic manipulator will perform the identified tasks for each subset of objects; requesting, according to the priority queue and from at least one remote assistor device, remote assistance associated with the identified tasks; receiving, from the at least one remote assistor device, a plurality of responses to the requesting, wherein each response includes information indicative of how to perform the manipulation of the respective subset of objects; and causing the robotic manipulator to perform the identified tasks based at least in part on the plurality of responses received from the at least one remote assistor device. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification