Inverse kinematics solution system for use with robots
AssigneeInstitute of Computing Technology, Chinese Academy of Sciences
InventorsHang Xiao, Yinhe Han, Ying Wang, Shiqi Lian
Life of this patent
Estimating the term…
Abstract
An inverse kinematics solution system for use with a robot, which is used for obtaining a joint angle value corresponding to a target pose value on the basis of an inputted target pose value and degree of freedom of a robot and which comprises: a parameters initialization module, an inverse kinematics scheduler, a Jacobian calculating unit, a pose updating unit and a parameters selector. The system is implemented by means of hardware and may quickly obtain motion parameters, which are used for controlling a robot, while reducing power consumption.
Claims8
An inverse kinematics solution system for control of a robot, the system comprising an interface, a parameter initialization module, an inverse kinematics scheduler, a Jacobian calculation unit, and a plurality of pose update units executed in parallel and a parameter selector, wherein:
- the interface is configured to receive a target pose value of the robot, and to send a joint angle value corresponding to the target pose value to the robot to control the motion of the robot;
- the parameter initialization module is configured to randomly generate an initial joint angle value, and to calculate an initial pose value based on the generated initial joint angle value and an initial error value of the initial pose value relative to the target pose value, and to send the initial joint angle value, the initial pose value and the initial error value to the inverse kinematics scheduler;
- the inverse kinematics scheduler is configured to compare the received error value to a predetermined threshold to determine whether to select the current joint angle value as the joint angle value corresponding to the target pose value or transmit the current joint angle value to the Jacobian calculation unit, wherein the current joint angle value is the initial joint angle value from the parameter initialization module or a joint angle value from the parameter selector;
- the Jacobian calculation unit is configured to obtain a Jacobian matrix and a Jacobian transposed matrix based on the received joint angle value, and to send the Jacobian matrix and the Jacobian transposed matrix to each of the plurality of pose update units;
- the plurality of pose update units is configured to generate different forward parameters in parallel and calculate new pose values in parallel based on the Jacobian matrix and the Jacobian transposed matrix, and to output each new joint angle value corresponding to each new pose value and each error value of each new pose value relative to the target pose value to the parameter selector;
- and
- the parameter selector is configured to select the smallest error value of the error values from the plurality of parallel pose update units and its corresponding joint angle value, and transmit the selected error value and joint angle value to the inverse kinematics scheduler;
- and
- wherein each of the pose update units comprises:
- a parameter calculator configured to calculate a forward parameter based on the Jacobian matrix, the Jacobian transposed matrix and the current error value;
- a variable update module configured to calculate an increment of a joint angle variable based on the forward parameter, the Jacobian transposed matrix and the current error value;
- a register configured to store the increment of the joint angle variable;
- a pose calculation module configured to calculate a new pose value according to the increment of the joint angle variable and the current joint angle value;
- an error calculator configured to calculate an error value between the new pose value and the target pose value;
- and
- a controller configured to control the execution of the variable update module, the register, the pose calculation module and the error calculator, and output a new joint angle value corresponding to the new pose value and the error value to the parameter selector.
Dependencies are inferred from the claim text.