Techniques for controlling movement of a machine
AssigneeXaba Inc.
InventorsLorenzo Mambretti, Francesco Iorio, Massimiliano Moruzzi
Life of this patent
Estimating the term…
Abstract
A computer-implemented method for controlling a machine includes: determining a first state for the machine based on a kinematics model of the machine and a target roto-translation for an end effector associated with the machine; determining, using a forward-kinematics machine-learning model, a difference between the target roto-translation of the end effector and a first roto-translation of the end effector when the machine is in the first state; based on the difference between the target roto-translation and the first roto-translation, determining a second state for the machine; and outputting a control input for one or more actuators that causes the machine enter into the second state.
Claims20
A computer-implemented method for controlling a machine, the method comprising:
- iteratively determining a proposed state for the machine, comprising:
- determining a candidate state for the machine based on a kinematics model of the machine and a target roto-translation of an end effector associated with the machine;
- determining, using a forward-kinematics machine-learning model, a difference between the target roto-translation of the end effector and a candidate roto-translation of the end effector when the machine is in the candidate state, wherein the difference is based on at least one of a load that is applied to an axis of the machine or an environmental factor that affects a kinematic behavior of the machine;
- when the difference between the target roto-translation and the candidate roto-translation exceeds a threshold convergence value, determining a second state for the machine for evaluation as the candidate state;
- and
- when the difference between the target roto-translation and the candidate roto-translation does not exceed the threshold convergence value, selecting the candidate state as the proposed state;
- and
- outputting a control input for one or more actuators that causes the machine to enter into the proposed state.
One or more non-transitory computer readable media including a set of instructions that, in response to execution by one or more processors of a computer system, cause the one or more processors to control a machine by performing the steps of:
- iteratively determining a proposed state for the machine, comprising:
- determining a candidate state for the machine based on a kinematics model of the machine and a target roto-translation of an end effector associated with the machine;
- determining, using a forward-kinematics machine-learning model, a difference between the target roto-translation of the end effector and a candidate roto-translation of the end effector when the machine is in the candidate state, wherein the difference is based on at least one of a load that is applied to an axis of the machine or an environmental factor that affects a kinematic behavior of the machine;
- when the difference between the target roto-translation and the candidate roto-translation exceeds a threshold convergence value, determining a second state for the machine for evaluation as the candidate state;
- and
- when the difference between the target roto-translation and the candidate roto-translation does not exceed the threshold convergence value, selecting the candidate state as the proposed state;
- and
- outputting a control input for one or more actuators that causes the machine to enter into the proposed state.
A system, comprising:
- one or more actuators that move one or more movable parts;
- a memory storing instructions, and
- one or more processors that execute the instructions to control a machine that includes the one or more actuators by performing steps comprising:
- iteratively determining a proposed state for the machine, comprising:
- determining a candidate state for the machine based on a kinematics model of the machine and a target roto-translation of an end effector associated with the machine;
- determining, using a forward-kinematics machine-learning model, a difference between the target roto-translation of the end effector and a candidate roto-translation of the end effector when the machine is in the candidate state, wherein the difference is based on at least one of a load that is applied to an axis of the machine or an environmental factor that affects a kinematic behavior of the machine;
- when the difference between the target roto-translation and the candidate roto-translation exceeds a threshold convergence value, determining a second state for the machine for evaluation as the candidate state;
- and
- when the difference between the target roto-translation and the candidate roto-translation does not exceed the threshold convergence value, selecting the candidate state as the proposed state;
- and
- outputting a control input for one or more actuators that causes the machine to enter into the proposed state.
Dependencies are inferred from the claim text.