Patent ID: 8670869
Filing Date: 2014-03-11
Classification: B25J

Abstract:
1. A robot controller for a robot which includes a plurality of link elements connected together via a plurality of joints, the robot controller comprising: a basic manipulation amount determination element configured to sequentially determine a basic manipulation amount vector ↑a according to at least a desired value of a predetermined type of state quantity of the robot, the basic manipulation amount vector ↑a being a vector representing a manipulation amount for controlling the predetermined type of state quantity of the robot to the desired value, and being composed of M components where M is an integer equal to or more than 1; a joint manipulation amount determination element configured to sequentially determine a joint manipulation amount vector ↑b by multiplying the determined basic manipulation amount vector ↑a by a pseudo inverse matrix A* of a matrix A defined by the following equation (3), the joint manipulation amount vector ↑b being a vector representing a manipulation amount for controlling a motion state of each joint of the robot, being composed of N components where N is an integer such that N≧M, and having a relation of a linear map shown by the following equation (3) with the basic manipulation amount vector ↑a, the equation (3) being a joint control element configured to control the motion state of each joint of the robot via an actuator, according to at least the determined joint manipulation amount vector ↑b, wherein the joint manipulation amount determination element includes: a matrix determination element configured to determine the matrix A according to at least a current motion state of each joint of the robot; a pseudo inverse matrix calculation element configured to calculate the pseudo inverse matrix A* according to the following equation (4), using the determined matrix A, a weight coefficient matrix W set beforehand which is a diagonal matrix, and a value of an adjustment parameter k where k is a real number equal to or more than 0; and an adjustment parameter determination element configured to determine the value of the adjustment parameter k used for calculation of the equation (4) so that an absolute value of a determinant DET expressed by the following equation (5) is equal to or more than a predetermined threshold, the equations (4) and (5) being respectively wherein the adjustment parameter determination element is configured to: repeatedly perform a process of setting a provisional value of the adjustment parameter k by gradually increasing the provisional value from a predetermined initial value, calculating the determinant DET using the set provisional value, and determining whether or not the absolute value of the calculated determinant DET is equal to or more than the predetermined threshold; determine the provisional value of the adjustment parameter k in the case where a result of the determination is true, as the value of the adjustment parameter k used for the calculation of the equation (4); and set an increment of the provisional value of the adjustment parameter k in the case where the result of the determination is false, to a value proportional to an n-th root of an absolute value of an error between the absolute value of the determinant DET calculated using the provisional value before the increment and the predetermined threshold, where n is an order of A·W