Abstract
Embodiments of the present disclosure are directed to the technical features relating to the ability of being able to create complex robotic humanoid movements, actions, and interactions with tools and the instrumented environment by automatically building movements for the humanoid; actions and behaviors of the humanoid based on a set of computer-encoded robotic movement and action primitives. The primitives are defined by motions/actions of articulated degrees of freedom that range in complexity from simple to complex, and which can be combined in any form in serial/parallel fashion. These motion-primitives are termed to be minimanipulations and each has a clear time-indexed command input-structure and output behavior/performance profile that is intended to achieve a certain function. Minimanipulations comprise a new way of creating a general programmable-by-example platform for humanoid robots. One or more minimanipulation electronic libraries provide a large suite of higher-level sensing-and-execution sequences that are common building blocks for complex tasks, such as cooking, taking care of the infirm, or other tasks performed by the next generation of humanoid robots.
Claims
-
A robotic control platform, comprising:
one or more robotic sensors;
one or more robotic actuators;
a mechanical robotic structure including at least a robotic head with mounted sensors on an articulated neck, two robotic arms with actuators and force sensors;
an electronic library database, communicatively coupled to the mechanical robotic structure, of minimanipulations, each including a sequence of steps to achieve a predefined functional result, each step comprising a sensing operation or a parameterized actuator operation;
a robotic planning module, communicatively coupled to the mechanical robotic structure and the electronic library database, configured for combining a plurality of minimanipulations to achieve one or more domain-specific applications;
a robotic interpreter module, communicatively coupled to the mechanical robotic structure and the electronic library database, configured for reading the minimanipulation steps from the minimanipulation library and converting to a machine code; and
a robotic execution module, communicatively coupled to the mechanical robotic structure and the electronic library database, configured for executing the minimanipulation steps by the robotic platform to accomplish a functional result associated with the minimanipulation steps.
- The robotic control platform of claim 1, wherein each minimanipulation includes of a set of preconditions necessary to execute correctly the minimanipulation steps and a set of postconditions that are the functional result of executing all the steps in the corresponding minimanipulation.
- The robotic control platform of claim 1, wherein the minimanipulations have been designed and tested to perform within a threshold of optimal performance in achieving the functional result, the optimal performance being task-specific, but defaulting to 1% of optimal when not otherwise specified for each given domain-specific application.
- The robotic control platform of claim 1, wherein the mechanical robotic structure comprises a processor for controlling the one or more robotic sensors and the one more actuators.
- The robotic control platform of claim 1, further comprising a robotic learning module, communicatively coupled to the mechanical robotic structure and the electronic library database, wherein the one or more robotic sensors record the actions of a human and the module in the humanoid robotic platform uses the recorded sequence of human actions to learn a new minimanipulation executable by the robotic platform in order to obtain the same functional result as observed and recorded from the human.
- The robotic control platform of claim 5, wherein the robotic learning module estimates the probability of obtaining the functional result if the preconditions of the minimanipulation are matched by the execution module and the parameter values of the minimanipulation are within the specified range.
- The robotic control platform of claim 1, further comprising a human robot interface mechanism to enable the human to refine the learned minimanipulation by specifying and transmitting ranges of values for the parameters of the minimanipulation and specifying the preconditions for the minimanipulation to the robotic platform via the human-robot interface mechanism.
- The robotic control platform in claim 1, wherein the robotic planning module calculates similarity to previously stored plans and uses case-based reasoning to formulate a new plan based on modifying and augmenting one or more previously stored plans used to obtain similar results, the newly formulated plan including a sequence of minimanipulations to be stored in an electronic plan library.
-
A humanoid having a robot computer controller operated by robot operating system (ROS) with robotic instructions, comprising:
a database having a plurality of electronic minimanipulation libraries, each electronic minimanipulation library including a plurality of minimanipulation elements, the plurality of electronic minimanipulation libraries can be combined to create one or more machine executable application-specific instruction sets, the plurality of minimanipulation elements within a electronic minimanipulation library can be combined to create one or more machine executable application-specific instruction sets;
a robotic structure having an upper body and a lower body connected to a head through an articulated neck, the upper body including torso, shoulder, arms and hands; and
a control system, communicatively coupled to the database, a sensory system, a sensor data interpretation system, a motion planner, and actuators and associated controllers, the control system executing application-specific instruction sets to operate the robotic structure.
- The humanoid of claim 9, wherein the robotic structure comprises an additional lower body, the lower body including a pair of articulated legs connected to the torso and a pair of feet connected to the articulated legs.
- The humanoid of claim 9, wherein each minimanipulation in the plurality of electronic minimanipulation libraries comprises one or more datasets having a plurality of variables and software algorithms for controlling a robotic control function, the plurality of variables and software algorithms consisting from the group of time, position, velocity, force, and torque.
- The humanoid of claim 10, wherein each minimanipulation comprises further execution of a set of preconditions necessary to execute the minimanipulation and a set of postconditions that are the functional result of executing the minimanipulation.
-
A computer-implemented method for operating a robotic structure through the use of one more controllers, one more sensors, and one more actuators to accomplish one or more tasks, comprising:
providing a database having a plurality of electronic minimanipulation libraries, each electronic minimanipulation library including a plurality of minimanipulation elements, the plurality of electronic minimanipulation libraries can be combined to create one or more machine executable task-specific instruction sets, the plurality of minimanipulation elements within an electronic minimanipulation library can be combined to create one or more machine executable task-specific instruction sets;
executing task-specific instruction sets to cause the robotic structure to perform a commanded task, the robotic structure having an upper body connected to a head through an articulated neck, the upper body including torso, shoulder, arms and hands;
sending time-indexed high-level commands for position, velocity, force, and torque to the one or more physical portions of the robotic structure; and
receiving sensory data from one or more sensors for factoring with the time-indexed high-level commands to generate low-level commands to control the one or more physical portions of the robotic structure.
- The method of claim 13, wherein the robotic structure comprises an additional lower body, the lower body including a pair of articulated legs connected to the torso and a pair of feet connected to the articulated legs.
-
A computer-implemented method for generating and executing a robotic task of a robot, comprising:
generating a plurality minimanipulations in combination with parametric minimanipulation data sets, each minimanipulation being associated with at least one particular parametric minimanipulation data set, which defines the required constants, variables, and time-sequence profile associated with each minimanipulation;
generating a database having a plurality of electronic minimanipulation libraries, the plurality of electronic minimanipulation libraries having minimanipulation data sets, minimanipulation command sequencing, one or more control libraries, one or more machine-vision libraries, and one or more inter-process communication libraries;
executing high-level robotic instructions by a high-level controller for performing a specific robotic task by selecting, grouping and organizing the plurality of electronic minimanipulation libraries from the database thereby generating a task-specific command instruction set, the executing step including decomposing high-level command sequences, associated with the task-specific command instruction set, into one more individual machine-executable command sequences for each actuator of a robot; and
executing low-level robotic instructions, by a low-level controller, for executing individual machine-executable command sequences for each actuator of a robot, the individual machine-executable command sequences collectively operating the actuators on the robot to carry out the specific robot task.
- The method of claim 15, wherein executing each minimanipulation comprises further execution of verifying that a set of preconditions necessary to execute the minimanipulation are satisfied, and upon execution resulting in a set of postconditions being accomplished that are the functional result of executing the minimanipulation.
- The method of claim 15, wherein the minimanipulations are learned by a learning module in a humanoid robotic platform based on one or more observations of a human executing the behavior required to perform the same minimanipulation and obtain the same functional result.
- The method in claim 17, further comprising a refining step of the learned minimanipulation by specifying ranges of values for the parameter for the parameters of the minimanipulation and specifying a plurality of preconditions for the minimanipulation.
- The method of claim 17, further comprising estimating the probability of obtaining the functional result if the preconditions are met, and the parameter values are in the specified range.
- The method in claim 17, further comprising formulating a plan using case-based reasoning based on modifying and augmenting one or more previously stored plans used to obtain similar results, the newly formulated plan including a sequence of minimanipulations.
-
A computer-implemented method for controlling a robotic apparatus, comprising:
composing one or more minimanipulation behavior data, each minimanipulation behavior data including one or more elementary minimanipulation primitives for building one or more ever-more complex behaviors, each minimanipulation behavior data having a correlated functional result and associated calibration variables for describing and controlling each minimanipulation behavior data;
linking one or more behavior data to a physical environment data from one or more databases to generate a linked minimanipulation data, the physical environment data including physical system data, controller data to effect robotic movements, and sensory data for monitoring and controlling the robotic apparatus; and
converting the linked minimanipulation (high-level) data from the one or more databases to a machine-executable (low-level) instruction code for each actuator (A1 thru An′) controller for each time-period (t1 thru tm) to send commands to the robot apparatus for executing one or more commanded instructions in a continuous set of nested loops.
- The method of claim 21, prior to the composing step, further comprising creating one or more minimanipulations and encoding each manipulation for storing in an electronic minimanipulation library.
- The method of claim 21, wherein the physical system data comprises robot parameters and environmental geometry data.
- The method of claim 21, wherein the controlling data comprises command types and gains data.
- The method of claim 21, wherein the sensor data comprises vision data, and dynamic/static measures data, and software-look execution related processes data, including communications data and error-handling data.
- The method of claim 21, wherein each actuator (A1 thru An) controller executes a control loop in position/velocity and/or force/torque for each time-period (t1 thru tm).
Owners (US)
-
Mbl Limited
(May 12 2016)
Explore more patents:
Applicants
-
Oleynik Mark
Explore more patents:
Inventors
-
Oleynik Mark
Explore more patents:
CPC Classifications
-
B25J9/163
Explore more patents:
-
A47J36/321
Explore more patents:
-
B25J3/04
Explore more patents:
-
B25J9/0018
Explore more patents:
-
B25J9/0087
Explore more patents:
-
B25J11/009
Explore more patents:
-
B25J13/02
Explore more patents:
-
B25J19/02
Explore more patents:
-
B62D57/032
Explore more patents:
-
G05B19/42
Explore more patents:
-
G05B2219/36184
Explore more patents:
-
G05B2219/40116
Explore more patents:
-
G05B2219/40391
Explore more patents:
-
G05B2219/40395
Explore more patents:
-
Y10S901/01
Explore more patents:
-
Y10S901/03
Explore more patents:
-
Y10S901/28
Explore more patents:
IPC Classifications
-
B25J9/16
Explore more patents:
-
B25J9/00
Explore more patents:
-
B62D57/032
Explore more patents:
Document Preview
- Publication: Mar 3, 2016
-
Application:
Aug 18, 2015
US 201514829579 A
-
Priority:
Aug 18, 2015
US 201514829579 A
-
Priority:
Aug 6, 2015
US 201562202030 P
-
Priority:
Jul 7, 2015
US 201562189670 P
-
Priority:
May 27, 2015
US 201562166879 P
-
Priority:
May 13, 2015
US 201562161125 P
-
Priority:
Apr 12, 2015
US 201562146367 P
-
Priority:
Feb 20, 2015
US 201514627900 A
-
Priority:
Feb 16, 2015
US 201562116563 P
-
Priority:
Feb 8, 2015
US 201562113516 P
-
Priority:
Jan 28, 2015
US 201562109051 P
-
Priority:
Jan 16, 2015
US 201562104680 P
-
Priority:
Dec 10, 2014
US 201462090310 P
-
Priority:
Nov 22, 2014
US 201462083195 P
-
Priority:
Oct 31, 2014
US 201462073846 P
-
Priority:
Sep 26, 2014
US 201462055799 P
-
Priority:
Sep 2, 2014
US 201462044677 P