Task-specific simulated robotic manipulators
Described herein is a computer-implemented method for generating a task-specific simulated robotic manipulator. A computing device receives, via a robotic design user interface, at least one of task information or constraint information. The computing device selects a set of components for a simulated robotic manipulator from a plurality of components in accordance with at least one of the task information or the constraint information. The computing device generates a simulated representation of the simulated robotic manipulator based at least in part on set of components and generated information. The computing device provides, for presentation via a display portion of the robotic design user interface, the simulated representation of the simulated robotic manipulator.
1 . One or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by one or more computer systems, cause the one or more computer systems to perform operations comprising:
receiving, via a robotic design user interface, at least one of task information or constraint information;
selecting a set of components for a simulated robotic manipulator from a plurality of components in accordance with at least one of the task information or the constraint information;
generating a simulated representation of the simulated robotic manipulator based at least in part on set of components and generated information; and
providing, for presentation via a display portion of the robotic design user interface, the simulated representation of the simulated robotic manipulator.
2 . The one or more non-transitory computer-readable media of claim 1 , wherein the generated information identifies, for individual components of the set of components, one or more properties, and wherein the one or more properties comprise first properties for a first type of component of the set of components and second properties for a second type of component of the set of components, the first type of component being distinct from the second type of component.
3 . The one or more non-transitory computer-readable media of claim 2 , wherein the first type of component comprises a link and the first properties comprise a link geometry and a link mass value, wherein the second type of component comprises an actuator and the second properties comprise a torque value, a force value, a type identifier, an actuator geometry, a velocity value, and an actuator mass value.
4 . The one or more non-transitory computer-readable media of claim 1 , wherein the operations further comprise:
generating a work envelope corresponding to the simulated robotic manipulator based at least in part on the generated information, the work envelope corresponding to a reachability envelope or a manipulability envelope of the simulated robotic manipulator; and
providing, for presentation via the display portion of the robotic design user interface, the work envelope.
5 . The one or more non-transitory computer-readable media of claim 1 , wherein the operations further comprise:
receiving, via the robotic design user interface, updated information comprising at least one of updated geometric, updated kinematic, or updated dynamic information;
updating the simulated representation of the simulated robotic manipulator based at least in part on the updated information; and
providing the updated simulated representation of the simulated robotic manipulator for presentation via the display portion of the robotic design user interface.
6 . A computer-implemented method, comprising:
receiving, via a robotic design user interface, at least one of task information or constraint information;
selecting a set of components for a simulated robotic manipulator from a plurality of components in accordance with at least one of the task information or the constraint information;
generating a simulated representation of the simulated robotic manipulator based at least in part on set of components and generated information; and
providing, for presentation via a display portion of the robotic design user interface, the simulated representation of the simulated robotic manipulator.
7 . The computer-implemented method of claim 6 , wherein the generated information identifies, for individual components of the set of components, one or more properties, and wherein the one or more properties comprise first properties for a first type of component of the set of components and second properties for a second type of component of the set of components, the first type of component being distinct from the second type of component.
8 . The computer-implemented method of claim 7 , wherein the first type of component comprises a link and the first properties comprise a link geometry and a link mass value, wherein the second type of component comprises an actuator and the second properties comprise a torque value, a force value, a type identifier, an actuator geometry, a velocity value, and an actuator mass value.
9 . The computer-implemented method of claim 6 , further comprising:
generating a work envelope corresponding to the simulated robotic manipulator based at least in part on the generated information, the work envelope corresponding to a reachability envelope or a manipulability envelope of the simulated robotic manipulator; and
providing, for presentation via the display portion of the robotic design user interface, the work envelope.
10 . The computer-implemented method of claim 6 , further comprising:
receiving, via the robotic design user interface, updated information comprising at least one of updated geometric, updated kinematic, or updated dynamic information;
updating the simulated representation of the simulated robotic manipulator based at least in part on the updated information; and
providing the updated simulated representation of the simulated robotic manipulator for presentation via the display portion of the robotic design user interface.
11 . The computer-implemented method of claim 6 , further comprising:
receiving, via the robotic design user interface, updated task information;
updating the simulated representation of the simulated robotic manipulator based at least in part on the updated task information; and
providing the updated simulated representation of the simulated robotic manipulator for presentation via the display portion of the robotic design user interface.
12 . The computer-implemented method of claim 6 , further comprising:
determining a set of task waypoints based at least in part on the generated information;
providing the set of task waypoints for presentation via the display portion of the robotic design user interface; and
causing the simulated representation of the simulated robotic manipulator to simulate movements between individual task waypoints of the set of task waypoints.
13 . The computer-implemented method of claim 12 , wherein determining the set of task waypoints comprises determining the set of task waypoints based at least in part on the task information.
14 . The computer-implemented method of claim 6 , wherein selecting the set of components for the simulated robotic manipulator comprises:
selecting a standard simulated robotic manipulator comprising the set of components from among a set of standard simulated robotic manipulators;
selecting a standard module included in the set of components from among a set of standard modules; or
selecting a standard component included in the set of components from among a set of standard components.
15 . The computer-implemented method of claim 6 , further comprising:
adding a module including a first component and a second component corresponding to the first component to the simulated robotic manipulator based at least in part on a user selection of a component addition user interface element; and
updating the simulated representation of the simulated robotic manipulator to include the module.
16 . The computer-implemented method of claim 6 , further comprising iteratively evaluating the simulated robotic manipulator in accordance with at least one of cost optimization, energy consumption optimization, work envelope optimization, actuator torque optimization, safety optimization, or task rate optimization.
17 . The computer-implemented method of claim 6 , further comprising generating a bill of materials for constructing a real robotic manipulator based at least in part on the generated information and the set of components.
18 . A system, comprising:
one or more memories configured to store computer-executable instructions;
one or more processors configured to access the one or more memories and execute the computer-executable instructions to at least:
receive, via a robotic design user interface, at least one of task information or constraint information;
select a set of components for a simulated robotic manipulator from a plurality of components in accordance with at least one of the task information or the constraint information;
generate a simulated representation of the simulated robotic manipulator based at least in part on set of components and generated information; and
provide, for presentation via a display portion of the robotic design user interface, the simulated representation of the simulated robotic manipulator.
19 . The system of claim 18 , wherein the one or more processors are configured to access the one or more memories and execute additional computer-executable instructions to at least:
receive modification instructions for modifying a property of one or more properties identified by the generated information for the set of components;
update information corresponding to the set of components based at least in part on the modified property;
provide the updated information for presentation via the display portion;
update the simulated representation based at least in part on the updated information; and
provide the updated simulated representation for presentation via the display portion.
20 . The system of claim 18 , further comprising a component database that is accessible by the one or more processors and configured to store a set of predefined robotic components including the set of components.