Load estimation method and load estimation device

WO2025032770A1PCT designated stage expired Publication Date: 2025-02-13YAMAHA MOTOR CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/029127
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-09
Publication Date
2025-02-13

Smart Images

  • Figure JP2023029127_13022025_PF_FP_ABST
    Figure JP2023029127_13022025_PF_FP_ABST
Patent Text Reader

Abstract

This load estimation method is for an articulated robot 10 comprising a robot arm 12 having a plurality of joints. The method is configured to acquire, after the attachment of a load 50, the joint torque of at least four joints 21D-21G which are close to the tip of the arm and which are from among a plurality of joints 21A-21G of the robot arm 12, excluding those joints 21A-21C which are far from the tip of the arm. Thereafter, the mechanical characteristics of the load attached to the robot arm 12 are estimated, using the joint torque of the at least four joints 21D-21G which are close to the tip of the arm and which are from among the plurality of joints 21A-21G of the robot arm 12, excluding those joints 21A-21C which are far from the tip of the arm.
Need to check novelty before this filing date? Find Prior Art

Description

Load estimation method, load estimation device

[0001] The technology disclosed in this specification relates to a method for estimating a load attached to a robot arm.

[0002] Various loads are attached to the tip of the robot arm depending on the application. Patent Document 1 discloses "a device for estimating the weight and center of gravity position of a workpiece grasped by a robot online without requiring specific operation."

[0003] JP 2011-235374 A

[0004] To maximize the performance of a robot, it is desirable to consider the dynamic characteristics of the load attached to the arm. One method for estimating the dynamic characteristics of the load is to use the robot's joint torque.

[0005] However, articulated robots have multiple joints, and as the number of joints increases, the influence of noise components in sensors that measure joint torque and other parameters increases, resulting in a decrease in the accuracy of estimating mechanical properties.

[0006] The technology disclosed in this specification aims to estimate the mechanical characteristics of a load attached to the tip of a robot arm, and also aims to improve the accuracy of estimating the mechanical characteristics.

[0007] A method for estimating a load on an articulated robot having multiple joints, comprising the steps of: after attaching a load, acquiring joint torques of at least four joints of the robot arm that are close to the arm tip, excluding some joints that are far from the arm tip, among the multiple joints of the robot arm; and estimating mechanical characteristics of the load attached to the robot arm using the joint torques of at least four joints that are close to the arm tip, excluding some joints that are far from the arm tip, among the multiple joints of the robot arm. The mechanical characteristics may be, for example, weight, weight moment, inertia tensor, etc.

[0008] In this method, the mechanical properties of the load are estimated using the joint torques of at least four joints close to the tip of the arm, which makes it possible to reduce noise components in the sensor signals compared to when joint torque information from all joints is used, thereby improving the accuracy of estimating the mechanical properties of the load.

[0009] In one embodiment of the load estimation method, three joints closest to the tip of the robot arm among the multiple joints of the robot arm are periodically operated to acquire joint torques and angular accelerations of the three joints, and the inertia tensor of the load attached to the tip of the robot arm may be estimated based on the joint torques and angular accelerations of the three joints. According to this embodiment, the inertia tensor of the load can be estimated.

[0010] In one embodiment of the load estimation method, the peak value of the joint torque or angular acceleration of the joint may be calculated using a moving average filter. According to this embodiment, the peak value of the joint torque or angular acceleration can be detected with high accuracy.

[0011] The technology disclosed in this specification can be applied to a load estimation device for an articulated robot equipped with a robot arm having multiple joints, and can also be applied to a load estimation program.

[0012] According to the technology disclosed in this specification, the dynamic characteristics of a load can be estimated with high accuracy.

[0013] Graph showing the results of weight estimation Graph showing the results of weight estimation Block diagram of the operation circuit Graph showing the time change of the product of joint torque and angular acceleration Graph showing the time change of the product of joint torque and angular acceleration

[0014] 1 is a perspective view of an articulated robot 10. The articulated robot 10 is composed of a base 11 and a robot arm 12. The robot arm 12 is composed of a plurality of arms 13 to 18 and a plurality of joints 21A to 21G that connect the arms 13 to 18.

[0015] In this embodiment, a seven-joint robot having seven joints is exemplified, and from the side closest to the base 11, the joints are the first joint 21A, the second joint 21B, the third joint 21C, the fourth joint 21D, the fifth joint 21E, the sixth joint 21F, and the seventh joint 21G.

[0016] The fourth joint 21D is a so-called elbow joint, and the fifth joint 21E, sixth joint 21F, and seventh joint 21G correspond to joints in the arm to wrist area. A load attachment section 23 is provided at the tip of the robot arm 12, to which a load 50 can be attached. The number of joints of the robot arm 12 is not limited to seven, and may of course be any number other than seven.

[0017] As shown in Fig. 2, each of the joints 21A to 21G has a built-in motor 23A to 23G, and the joint angle (arm angle) θ can be adjusted arbitrarily by driving the motor. Also, as shown in Fig. 3, the load estimation device 30 is made up of a first sensor 31A to a seventh sensor 31G and a data processing unit 32.

[0018] As shown in FIG. 2, the first sensor 31A to the seventh sensor 31G are provided at the joints 21A to 21G, respectively, and measure and output the joint torque, joint angle θ, and angular acceleration of the joint angle θ of each of the joints 21A to 21G.

[0019] The data processing unit 32 includes an estimation unit 33 and a memory 34. The estimation unit 33 estimates the mechanical characteristics of the load 50 based on the output of the sensor 31.

[0020] The memory 34 stores data necessary for estimating the dynamic characteristics of the load 50. The data necessary for estimating the dynamic characteristics includes, for example, the arm length of the robot arm 12, the Jacobian matrix, and data on gravitational acceleration.

[0021] In addition, the load estimation device 30 also serves as a robot control device, and the data processing unit 32 has, in addition to an estimation unit 33 and a memory 34, a control unit 35 that controls the articulated robot 10, and an input unit 36 ​​for inputting various data.

[0022] The following describes a method for automatically estimating the mechanical properties of a load 50 attached to the tip of a robot arm 12. The mechanical properties of the load 50 are properties related to inertia, such as the weight, gravitational moment, and inertia tensor of the load 50. In the following description, the joints 21A to 21G are collectively referred to as joints 21.

[0023] 4 is a flowchart of a method for automatically estimating the mechanical properties of the load 50, which is composed of three steps S10 to S30. The estimation unit 33 executes the three steps S10 to S10 to estimate the weight, gravitational moment, and inertia tensor of the load 50.

[0024] S10 is a step of automatically estimating the weight of the load 50 attached to the tip of the robot arm 12 from the joint differential torque based on the principle of virtual work. S20 is a step of automatically estimating the weight moment of the load 50 attached to the tip of the robot arm 12 from the joint differential torque. S30 is a step of automatically estimating the inertia tensor of the load 50 attached to the tip of the robot arm 12 from the joint torque and joint angular acceleration based on the equation of motion.

[0025] <Regarding S10> The relationship expressed by the following equation 1 generally holds between the angular velocity vector of the joint 21 of the robot arm 12 and the velocity and angular velocity vector of the tip of the robot arm (load mounting part 23) (see FIG. 5A).

[0026]

[0027] J is the Jacobian matrix. The Jacobian matrix is ​​a matrix that converts the angular velocity of the joint 12 into the velocity of the tip of the robot arm (load attachment part 23). The Jacobian matrix can be calculated from the arm lengths of each of the arms 13 to 18, etc., with the joint angle θ as a variable.

[0028] Furthermore, based on the principle of virtual work, the relationship expressed by the following equation 2 generally holds between the torque vector of the joint 21 and the force / Mormont vector of the tip of the robot arm (load attachment part 23) (see FIG. 5B).

[0029]

[0030] (J T ) is the Jacobian transpose matrix, and () -1 represents the inverse matrix. If the Jacobian matrix J is not a square matrix, (J T ) -1 is replaced by the pseudoinverse of the transpose of the Jacobian matrix.

[0031] In this embodiment, the robot arm 12 has seven joints 21A to 21G, and the force and moment vectors at the tip of the robot arm (load mounting part 23) can be expressed by the following equation 3 (see Table 1, Figures 5B and 6).

[0032]

[0033] One of the features of S10 is that the weight of the load 50 is estimated using only the joint torques of the four joints 21D to 21G that are closest to the hand (the joint torques of the three joints 21A to 21C that are farthest from the hand are not used). By doing so, the amount of calculation can be reduced and the influence of noise can be reduced compared to when the joint torques of all the joints 21A to 21G are used.

[0034] The information required to estimate the weight of the load 50 is the following (1) and (2): (1) The force in the Z direction (force in the direction of gravity) acting on the tip of the robot arm, and (2) Information on the moments N around the X and Y axes acting on the tip of the robot arm.

[0035] A new Jacobian matrix J2 is created for the calculations of (1) and (2). The new Jacobian matrix J2 can be a matrix that converts the angular velocity vectors of the fourth joint 21D to the seventh joint 21G into the velocity of the tip of the robot arm (load attachment unit 23), for example, as shown in the following equation 4.

[0036]

[0037] Here, as shown in Equations 5 and 6, the Jacobian matrix J2 is the elements in rows 3 to 6 and columns 4 to 7 of the Jacobian matrix J (elements within the dashed line frame).

[0038]

[0039]

[0040] By using the new Jacobian matrix J2 shown in Equation 6 to derive equations for calculating the force and moment at the tip of the robot arm (load attachment part 23) based on the principle of virtual work, the following Equation 7 is obtained.

[0041]

[0042] The estimation unit 33 can derive the Z-direction force Fzdif applied to the tip of the robot arm based on the joint differential torques τdif4 to τdif7 of the fourth joint 21D to the seventh joint 21G using equation 7. Then, by dividing the Z-direction force Fzdif applied to the tip of the robot arm by the gravitational acceleration g, an estimated value of the weight mt of the load 50 can be obtained.

[0043]

[0044] The joint differential torque is the difference between the joint torque when the load 50 is attached to the tip of the robot arm (load attachment unit 23) and when it is not attached.

[0045] The joint differential torque can be calculated by either of the following methods: (A) Measure and record the joint torque with the sensor 31 when no load 50 is attached to the tip of the robot arm (load attachment unit 23), and take the difference between this and the joint torque when the load 50 is attached; (B) Use inverse dynamics calculation to calculate the theoretical joint torque when no load 50 is attached to the tip of the robot arm (load attachment unit 23), and take the difference between this and the measured joint torque when the load 50 is attached.

[0046] FIG. 7 is a block diagram showing the calculation process of the mass of the load 50 executed by the estimation unit 33.

[0047] As shown in FIG. 7, a determinant A2 of the force and moment at the tip of the robot arm is calculated from a determinant A1 of the joint differential torque using an inverse matrix B1 of the Jacobian transpose matrix.

[0048] Then, determinant A2 of the force and moment at the tip of the robot arm is multiplied by determinant B2. This gives the Z-direction force Fzdif at the tip of the robot arm. Then, the obtained force Fzdif is multiplied by 1 / g to give an estimate of the mass t of the load 50.

[0049] <Regarding S20> In S20, an estimated calculation is performed to estimate the gravitational moment (moment around the center of gravity) of the load 50 when it is attached to the tip of the robot arm (load attachment unit 23).

[0050] As shown in FIG. 8, the gravity moment vector Mgt of the load 50 is equivalent to the vector obtained by multiplying the position vector L from the robot arm tip O1 to the load center of gravity O2 by the gravity value of the load 50 acting on the load center of gravity O2, and can be calculated from the joint differential torque τdif.

[0051] The subscript T represents a transposed matrix.

[0052] The gravitational moment vector Mgt of the load 50 can be calculated for any robot posture, but for simplicity, we will explain here how to calculate the gravitational moment vector Mgt when the robot arm 12 is in a specific posture.

[0053] First, consider the state in which the robot arm 12 is in the posture shown in Fig. 8. In Fig. 8, the rotation center axis L1 of the fifth joint 21E of the robot arm 12 faces in the X direction, and the rotation center axis L2 of the sixth joint 21F faces in the Y direction. In addition, the tip of the robot arm (load mounting part 23) faces in the Z direction (vertically downward).

[0054] Fig. 9A is a view from direction A in Fig. 8, and Fig. 9B is a view from direction B in Fig. 8. When the robot arm 12 assumes the posture shown in Fig. 8, as shown in Fig. 9A, the joint differential torque τdif6 of the sixth joint 21F is equal to the gravitational moment Mgyt of the load 50 about the Y axis. Also, as shown in Fig. 9B, the joint differential torque τdif5 of the fifth joint 21E is equal to the gravitational moment Mgxt of the load 50 about the X axis.

[0055] Therefore, the estimation unit 33 can obtain the gravity moment Mgyt of the load 50 around the Y axis from the joint difference torque τdif6 of the sixth joint 21F (Mgyt = τdif6). Also, the estimation unit 33 can obtain the gravity moment Mgxt of the load 50 around the X axis from the joint difference torque τdif5 of the fifth joint 21E (Mgxt = τdif5).

[0056] Furthermore, to estimate the gravitational moment Mgzt of the load 50 in the Z-axis direction, it is necessary to change the posture of the robot arm 12 from that of Fig. 8 to that of Fig. 10. In the posture of Fig. 10, the tip of the arm is rotated 90 degrees from the posture of Fig. 8 around the sixth joint 21F and is directed horizontally.

[0057] Fig. 11 is a view of Fig. 10 viewed from direction A. When the robot arm 12 is made to assume the posture shown in Fig. 10, the joint differential torque τdif6 of the sixth joint 21F can be calculated by the following equation 10.

[0058]

[0059] Therefore, the estimation unit 33 can calculate the gravity moment Mgzt in the Z direction based on the joint difference torque τdif6, the weight mt of the load 50, the gravitational acceleration g, and the arm length Lw using the following equation 11. Note that the arm length Lw is the length from the rotation center O3 of the sixth joint 21F to the arm tip O1.

[0060]

[0061] In S20, the weight moments Mgxt, Mgyt, and Mgzt of the load 50 are estimated from the joint differential torque τdif5 of the fifth joint 21E and the joint differential torque τdif6 of the sixth joint 21F.

[0062] Because the gravity moment vector Mgt is a three-dimensional vector, even when the specific postures shown in FIGS. 8 and 10 are changed and estimation is performed, the joint difference torque τdif used in the estimation calculation remains the joint difference torque τdif of the three joints on the hand tip side of the fourth joint (elbow joint) 21D.

[0063] <Regarding S30> The relationship (equation of motion) of the following equation 12 generally holds between the joint differential torque vector of the robot arm 12, the inertia tensor of the load, and the angular acceleration vector of the joint 21 of the robot arm 12.

[0064] The inertia tensor (inertia matrix) is a 3x3 matrix. Therefore, information for at least three joints is required to estimate the inertia tensor It of the load 50. When the inertia tensor It is estimated using information for three joints, the joint differential torque vector, the angular acceleration vector of the joint 21, and the disturbance torque vector due to the load 50 all become 3x1 vectors.

[0065] To estimate the inertia tensor, it is necessary to move the joints of the robot arm 12. However, if the posture of the robot arm 12 changes significantly during estimation, the calculation becomes more complicated, so the joints are moved slightly. At this time, the joints used for estimation may be moved one by one, or all the joints may be moved simultaneously.

[0066] The estimated calculation formula when all joints are moved simultaneously is shown in Equation 13.

[0067]

[0068] An example of calculating the inertia tensor It is shown below. Here, the joints used in the calculation (joints to be slightly moved) are the fifth joint 21E, the sixth joint 21F, and the seventh joint 21G, as shown in Figure 12, and we consider a case where each of the joints 21E to 21G is moved one by one. The calculation is easier if the directions of the joints used in the estimation calculation are perpendicular to each other.

[0069] FIG. 12 shows an example in which the rotation center axis L1 of the fifth joint 21E faces in the X direction, the rotation center axis L2 of the sixth joint 21F faces in the Y direction, and the rotation center axis L3 of the seventh joint 21G faces in the Z direction, and the rotation center axes L1 to L3 of the three joints 21E, 21F, and 21G are perpendicular to each other.

[0070] The inertia tensor It taking into consideration the robot posture can be expressed by Equation 14, and the angular acceleration vectors of the joints 21E to 21G can be expressed by Equation 15.

[0071]

[0072]

[0073] Equation 16 is the equation of motion for the fifth joint 21E to the seventh joint 21F with respect to only the joint difference torque component when only the fifth joint 21E is moved. Note that since the sixth joint 21F and the seventh joint 21G are not moved, the angular accelerations of the joints 21F and 21G are zero.

[0074]

[0075] Therefore, the elements of the first column of the inertia tensor It can be expressed by Equation 17.

[0076]

[0077] Next, let us consider the case where only the sixth joint 21F and the seventh joint 21G are moved in the same manner as when only the fifth joint 21E is moved. When only the sixth joint 21F is moved, the equations of motion of the fifth joint 21E to the seventh joint 21G for only the joint difference torque component can be expressed by the following Expression 18.

[0078]

[0079] It should be noted that the joint torques τ5 to τ7 and the disturbance torques τdist5 to τdist7 when only the sixth joint 21F is moved are different in value from those when only the fifth joint 21E is moved.

[0080] Therefore, the elements of the second column of the inertia tensor It can be expressed by the following equation 19. Note that the element Iyxt has already been calculated, so there is no need to calculate it again.

[0081]

[0082] When only the seventh joint 21G is moved, the equations of motion of the fifth joint 21E to the seventh joint 21F for only the joint difference torque components can be expressed by the following equation 20.

[0083]

[0084] The joint torques τ5 to τ7 and the disturbance torques τdist5 to τdist7 when only the seventh joint 21G is moved are also different in value from those when only the fifth joint 21E is moved or when only the sixth joint 21F is moved.

[0085] Therefore, the elements in the third column of the inertia tensor It can be expressed by the following equation 21. Note that the elements Izxt and Izyt have already been calculated, so there is no need to calculate them again.

[0086]

[0087] As described above, the estimation unit 33 can calculate the inertia tensor It of the load 50 using Equations 17, 19, and 21 based on the joint torques τ5 to τ7, angular accelerations, and disturbance torques dist5 to τdist7 of the fifth joint 21E to the seventh joint 21G. The joint torque τ and angular accelerations of the joints 21E to 21G can be measured by the sensors 31E to 31G. The disturbance torque τdist is included in the measured value of the joint torque τ.

[0088] Here, the inertia tensors derived from Equations 17, 19, and 21 are inertia tensors around the tip of the robot arm (around O1), and are not inertia tensors around the center of gravity of the load (around O2).

[0089] By subtracting the moment of inertia caused by the load weight and the distance between the tip of the arm and the center of gravity of the load from the inertia tensor in each equation, it can be converted into the inertia tensor around the center of gravity of the load.

[0090] The inertia tensor around the center of gravity of the load can be expressed by the following equation 22.

[0091]

[0092] Each inertia tensor element around the center of gravity of the load can be calculated using Equations 23 to 28, respectively.

[0093]

[0094]

[0095]

[0096]

[0097]

[0098]

[0099] 13 and 14 are graphs with the horizontal axis representing time and the vertical axis representing the weight of the load. Fig. 13 shows the estimation results when only the joint torques τ of the fourth joint 21D to the seventh joint 21G are used to estimate the weight of the load 50, while Fig. 14 shows the estimation results when the joint torques τ of all the joints (the first joint 21A to the seventh joint 21G) are used.

[0100] It was confirmed that when only the joint torques τ of the fourth joint 21D to the seventh joint 21G were used, the estimated weight value of the load 50 was closer to the true value, and the estimation accuracy of the weight mt was higher.

[0101] 2. Effects According to the first embodiment, the weight mt of the load 50 is estimated based on the joint torque τ of the fourth joint 21D to the seventh joint 21G that are close to the arm tip, without using the joint torque τ of the first joint 21A to the third joint 21C, which are farthest from the arm tip, among the seven joints 21A to 21D of the robot arm. Therefore, compared to estimating the weight mt of the load 50 using the joint torque τ of all the joints 21A to 21G, the influence of noise components in the torque signal detected by the sensor 31 can be suppressed, and the estimation accuracy of the weight mt of the load 50 can be improved. Furthermore, the amount of calculation required to estimate the weight mt of the load 50 can be reduced.

[0102] Furthermore, the gravitational moment Mgt and inertia tensor It of the load 50 are estimated using the weight mt. By improving the estimation accuracy of the weight mt of the load 50, the estimation accuracy of the gravitational moment and inertia tensor It of the load 50 can also be improved.

[0103] Second Embodiment In S30 of the first embodiment, the minute motion for estimation may be a reciprocating motion that can represent a periodic waveform such as a sinusoidal motion.

[0104] When the minute motion for estimation is a periodic waveform such as a sinusoidal motion, the waveforms of the angular acceleration signal and torque signal of the joint 21 are generally similar to that periodic waveform. However, it is rare for the similarity relationship to be perfectly established, and the similarity relationship may be broken. Reasons for this break include mechanical resonance and sensor noise.

[0105] When the similarity relationship is broken, it becomes difficult to accurately identify the peak values ​​of the angular acceleration signal and torque signal of the joint 21, which is one of the reasons for the decrease in the load estimation accuracy.

[0106] In the second embodiment, moving average filtering is applied to highly accurately identify the peak values ​​of the angular acceleration signal and torque signal of the joint 21. Note that the estimation micro-motion can be arbitrarily determined, and its frequency and period are assumed to be known in advance.

[0107] periodic waveform f (t) If is a sine wave, its peak absolute value f peak can be calculated from the following equation 29, where T is the period of the sine wave.

[0108]

[0109] The value in the square root symbol on the right side of Equation 29 can be calculated by applying moving average filter processing. Below, we will take an angular acceleration signal as an example and calculate the peak absolute value. As mentioned above, it is assumed that the period T of the waveform is known.

[0110] The sampling period of the angular acceleration waveform is Ts, and the number of data points for the moving average is n s can be calculated by the following equation (30).

[0111]

[0112] Number of data points n s Since is an integer, Formula 30 rounds off the decimal point by rounding.

[0113] For example, if the value of () in the round function is between 9.5 and 10.5, n s = 10, and if 10.5 or greater but less than 11.5, n s = 11. However, even without the round function processing, n s Therefore, it is desirable to determine the period T of the sine wave so that it is an integer multiple of the sampling period Ts.

[0114] As described above, the number of data points for the moving average is determined, and the squared value of the angular acceleration signal is calculated. Then, the squared value of the angular acceleration signal thus calculated is subjected to moving average filtering.

[0115] The value obtained by doubling the output of the moving average filter is equal to the value in the square root symbol on the right side of Equation 28. Therefore, the peak value (absolute value) of the angular acceleration signal can be found from the square root of the output of the moving average filter.

[0116] 15 is a block diagram of the arithmetic circuit 120. The arithmetic circuit 120 is a circuit that calculates the peak absolute value of the angular acceleration signal, and is provided in the estimation unit 33. The arithmetic circuit 120 has a magnitude multiplier 121, a moving average filter 123, a multiplier 125, and a root code unit 127.

[0117] Multiplier 121 receives the angular acceleration signal of joint 21 and calculates the square of the angular acceleration signal. Moving average filter 123 calculates the moving average of the square of the angular acceleration signal. Multiplier 125 doubles the moving average of the square of the angular acceleration signal. Root 127 calculates the square root of the value obtained by doubling the moving average of the square of the angular acceleration signal.

[0118] The sign of the angular acceleration signal can be identified by the following method. In S30 of the first embodiment, the ratio between the joint torque and the angular acceleration signal is calculated in the element estimation calculation of the inertia tensor It when moving the joints 21E to 21G one by one. In other words, when estimating the load by moving the joints one by one in S30, it is sufficient to know the sign of the ratio between the joint torque and the angular velocity signal.

[0119] Here, the sign of the ratio of joint torque to angular acceleration is the same as the sign of the product of joint torque and angular acceleration. Furthermore, even with the influence of noise, the joint torque waveform and angular acceleration waveform are generally similar in shape. Therefore, if the product of joint torque and angular acceleration has a positive sign, it will always be greater than or equal to 0, and if the sign is negative, it will always be less than 0.

[0120] 16 and 17 are graphs showing the transition of the product of joint torque and acceleration, with the horizontal axis representing time and the vertical axis representing the product of joint torque and acceleration.

[0121] The product of the joint torque and angular acceleration is monitored, and if the product is often positive as shown in Figure 16, the sign of the ratio of the joint torque and angular acceleration signal can be determined to be positive. On the other hand, if the product is often negative as shown in Figure 17, the sign of the ratio of the joint torque and angular acceleration signal can be determined to be negative.

[0122] According to the second embodiment, the peak values ​​(absolute values) of the joint torque and angular velocity signals can be measured with high accuracy, and therefore the inertia tensor elements can be estimated with high accuracy.

[0123] Although the embodiments have been described in detail above, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and alterations of the specific examples exemplified above.

[0124] (1) In the first embodiment, a robot arm with seven joints has been described. The number of joints need only be four or more, and does not necessarily have to be seven. It may be six or eight. Furthermore, the number of joints used to estimate the mechanical properties of the load 50 may be five or six, as long as it is four or more. However, the use of all joints is of course excluded.

[0125] (2) In the first embodiment, the weight, weight moment, and inertia tensor of the load 50 attached to the tip of the robot arm are estimated. However, it is not necessary to estimate all of these, and it is also possible to estimate only one of them.

[0126] REFERENCE SIGNS LIST 10 Robot 11 Base 12 Robot arm 13 to 18 Arms 21A to 21G Joints 23A to 23G Motors 30 Load estimation device 31A to 31G Sensors 33 Estimation unit 34 Memory

Claims

1. A load estimation method for a multi-joint robot equipped with a robot arm having multiple joints, comprising: after attaching a load, obtaining joint torques of at least four joints close to the arm tip, excluding some joints farthest from the arm tip, among the multiple joints of the robot arm; and estimating the mechanical characteristics of the load attached to the robot arm using the joint torques of at least the four joints close to the arm tip, excluding some joints farthest from the arm tip, among the multiple joints of the robot arm.

2. A load estimation method as claimed in claim 1, comprising the steps of: periodically operating three joints among the multiple joints of the robot arm that are closest to the tip of the arm, acquiring the joint torques and angular accelerations of the three joints; and estimating the inertia tensor of a load attached to the tip of the robot arm based on the joint torques and angular accelerations of the three joints.

3. A load estimation method according to claim 2, wherein a peak value of the joint torque or angular acceleration of the joint is calculated using a moving average filter.

4. A load estimation device for a multi-joint robot equipped with a robot arm having multiple joints, comprising: sensors provided on at least four joints of the robot arm that are close to the tip of the arm; and an estimation unit, wherein the estimation unit estimates the mechanical characteristics of the load attached to the robot arm using the joint torques of at least the four joints that are close to the tip of the arm measured by the sensors, excluding some joints that are far from the tip of the arm.

5. A load estimation device as claimed in claim 4, wherein the sensor acquires joint torques and angular accelerations of three joints among the multiple joints of the robot arm that are closest to the tip of the arm during periodic movements of the three joints, and the estimator estimates the inertia tensor of a load attached to the tip of the robot arm based on the joint torques and angular accelerations of the three joints.

6. A load estimation device according to claim 5, wherein the estimation unit calculates a peak value of the joint torque or angular acceleration of the joint using a moving average filter.

Citation Information

Patent Citations

  • Articulated robot

    JP2016129912A

  • Direct teaching controller

    JP3212491B2