Robot control device and robot control method

The robot control device corrects arm rotations using gear error information to address precision issues in multi-axis robots, enhancing motion control accuracy by mitigating periodic errors in meshing gear groups.

JP2026083686APending Publication Date: 2026-05-20AISIN SHIRAKI CO LTD +1
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
AISIN SHIRAKI CO LTD
Filing Date
2024-11-08
Publication Date
2026-05-20

AI Technical Summary

Technical Problem

Conventional robot technologies, including multi-axis robots, face challenges in operating with higher precision due to periodic errors associated with gear ratio information in meshing gear groups, which affect the accuracy of arm rotation around pivot axes.

Method used

A robot control device and method that includes an acquisition unit to measure gear error information from meshing gear groups and a control unit to correct arm rotation based on this information, using parameters such as gear error, DH parameters, and periodic perturbation parameters to enhance precision.

Benefits of technology

The solution enables higher precision in operating robots by correcting arm rotations with gear error information, reducing periodic errors and improving overall motion control accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026083686000001_ABST
    Figure 2026083686000001_ABST
Patent Text Reader

Abstract

This invention provides a robot control device and a robot control method that enable robots that rotate their arms around a pivot axis to operate with greater precision. [Solution] A robot control device characterized by comprising: an arm; a pivot shaft provided corresponding to the arm; a group of meshing gears provided corresponding to the pivot shaft; an acquisition unit that rotates the arm around the pivot shaft to acquire gear error information of the meshing gear group; and a control unit that controls the rotation of the arm around the pivot shaft based on the gear error information of the meshing gear group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a robot control device and a robot control method.

Background Art

[0002] Patent Document 1 describes an apparatus for measuring backlash in a speed reduction mechanism of an industrial robot. This apparatus includes an arm movement restricting means and a backlash calculating means. The arm movement restricting means restricts the movement of the arm of the industrial robot. The backlash calculating means applies drive signals in the forward and reverse directions to a servo motor for driving the arm in a state where the movement of the arm is restricted at least in one direction by the arm movement restricting means, and calculates the backlash based on the control signal of the servo motor generated at that time.

[0003] Patent Document 2 describes a control device for a robot including a control unit and a storage unit. The control unit rotationally drives one or two or more rotating shafts to move the robot's end to a commanded position. The storage unit stores error information of the rotation angle modeled as a function of the commanded angle and the rotation direction for each rotating shaft. The control unit corrects the commanded angle for each rotating shaft based on the commanded angle and the rotation direction for each rotating shaft derived from the commanded position and the error information.

[0004] Patent Document 3 describes a robot control device into which temperature data of a temperature sensor provided in an encoder of a motor for driving a robot is input. This robot control device includes a compensation means for compensating the positioning accuracy of the robot according to the temperature data based on a correction function obtained from the previously measured temperature data and the data of the positioning accuracy of the robot.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

[0006] However, according to the present inventor's diligent research, while conventional robot technology, including Patent Documents 1 to 3, is known for its multi-axis robots (e.g., 6-axis robots) that rotate multiple arms around multiple pivot axes, there is room for improvement in terms of operating such multi-axis robots with higher precision. This technical problem is not limited to multi-axis robots, but applies to all robots that rotate their arms around pivot axes.

[0007] Therefore, one of the objectives of this disclosure is to provide a robot control device and a robot control method that can operate a robot that rotates its arm around a pivot axis with higher precision. [Means for solving the problem]

[0008] The robot control device of this disclosure is characterized by comprising: an arm; a pivot shaft provided corresponding to the arm; a group of meshing gears provided corresponding to the pivot shaft; an acquisition unit that rotates the arm about the pivot shaft and acquires gear error information of the meshing gear group; and a control unit that controls the rotation of the arm about the pivot shaft based on the gear error information of the meshing gear group.

[0009] The robot control device of the present disclosure has a plurality of arms as the arm portion, a plurality of rotation axes provided corresponding to the plurality of arms as the rotation portion, and a plurality of meshing gear groups provided corresponding to the plurality of rotation axes as the meshing gear group, the acquisition unit rotates a specific arm portion of the plurality of arms around a specific rotation axis among the plurality of rotation axes to acquire gear error information of a specific meshing gear group among the plurality of meshing gear groups, and the control unit may control the rotation of the specific arm portion around the specific rotation axis based on the gear error information of the specific meshing gear group.

[0010] The specific arm, the specific pivot shaft, and the specific meshing gear group are defined as a set of one arm, one pivot shaft, and one meshing gear group in the plurality of arm, the plurality of pivot shafts, and the plurality of meshing gear groups. The acquisition unit performs an acquisition process for each set of the specific arm, the specific pivot shaft, and the specific meshing gear group relating to all sets in the plurality of arm, the plurality of pivot shafts, and the plurality of meshing gear groups. The control unit may perform a control process for each set of the specific arm, the specific pivot shaft, and the specific meshing gear group relating to all sets in the plurality of arm, the plurality of pivot shafts, and the plurality of meshing gear groups.

[0011] The acquisition unit may acquire the gear error information of the specific meshing gear group multiplied by the difference information between the rotation command position of the specific arm around the specific rotation axis and the actual rotation position of the specific arm around the specific rotation axis, and the control unit may control the rotation of the specific arm around the specific rotation axis based on the gear error information of the specific meshing gear group multiplied by the difference information.

[0012] The control unit may control the rotation of the specific arm around the specific rotation axis based on a rotation correction parameter for the specific arm around the specific rotation axis, which is obtained by summing the rotation command parameter for the specific arm around the specific rotation axis, the DH parameter used during robot design, and the periodic perturbation parameter resulting from the machining accuracy of the gear structure or robot parts.

[0013] The control unit may control the rotation of the specific arm around the specific rotation axis based on a rotation correction parameter for the specific arm around the specific rotation axis, which is obtained by summing the rotation command parameter for the specific arm around the specific rotation axis, the DH parameter used in the robot design, the periodic perturbation parameter due to the machining accuracy of the gear structure or robot parts, and the deflection parameter for the specific arm.

[0014] The control unit may, when one of the plurality of arms is designated as the specific arm, use the rotational correction parameter obtained by summing the deflection parameters of the specific arm, while when another of the plurality of arms is designated as the specific arm, it may use the rotational correction parameter obtained by not summing the deflection parameters of the specific arm.

[0015] The periodic perturbation parameters may include the gear error information of the specific group of meshing gears.

[0016] The robot control method of the present disclosure is a robot control method for controlling a robot having an arm, a pivot axis provided corresponding to the arm, and a group of meshing gears provided corresponding to the pivot axis, and is characterized by comprising the steps of: rotating the arm about the pivot axis to acquire gear error information of the group of meshing gears; and controlling the rotation of the arm about the pivot axis based on the gear error information of the group of meshing gears. [Effects of the Invention]

[0017] According to the present disclosure, a robot control device and a robot control method capable of operating a robot that rotates an arm around a rotation axis with higher precision can be provided.

Brief Description of the Drawings

[0018] [Figure 1] It is a diagram showing an example of the configuration of the robot control device of the present disclosure. [Figure 2] It is a diagram showing an example of the configuration of a meshing gear group provided corresponding to the rotation axis. [Figure 3] It is a diagram showing an example of a feedback control circuit by a semi-closed control method and a full-closed control method. [Figure 4] It is a block diagram showing an example of the functional configuration of the control device. [Figure 5] It is a diagram showing a first example of a periodic error linked to the gear error information of the meshing gear group. [Figure 6] It is a diagram showing a second example of a periodic error linked to the gear error information of the meshing gear group. [Figure 7] It is a diagram showing a third example of a periodic error linked to the gear error information of the meshing gear group. [Figure 8] It is a diagram showing a fourth example of a periodic error linked to the gear error information of the meshing gear group. [Figure 9] It is a diagram showing an example of the periodic perturbation parameters of the first rotation axis to the sixth rotation axis.

Embodiments for Carrying Out the Invention

[0019] In this specification, the terms "arm," "rotation axis," and "meshing gear group" may be used singly or plurally. For example, when each arm, rotation axis, and meshing gear group is defined as one set, the robot control device and robot control method of the present invention can be applied to either a robot equipped with one such set (for example, a robot that rotates its arm around a rotation axis) or a robot equipped with multiple such sets (for example, a multi-axis robot that rotates multiple arms around multiple rotation axes). However, in the following embodiments, the description will mainly focus on a multi-axis robot equipped with multiple sets, each consisting of one arm, one rotation axis, and one meshing gear group.

[0020] In this specification, the "meshing gear group" refers to any gear that is provided in accordance with the pivot axis and serves as one of the drive sources responsible for the rotation of the arm portion around the pivot axis, and may include (or be assumed to include) any (any) type of gear, such as a worm gear or a pinion gear.

[0021] In this specification, "multiple arms" may be read as "N (where N is an integer of 2 or more) arms," ​​"multiple pivot shafts" may be read as "N (where N is an integer of 2 or more) pivot shafts," and "multiple meshing gear groups" may be read as "N (where N is an integer of 2 or more) meshing gear groups." When a robot (robot device) having multiple (N) arms, pivot axes, and meshing gear groups is installed on a base, the first arm may rotate around a first pivot axis driven by a first meshing gear group relative to the base, the second arm may rotate around a second pivot axis driven by a second meshing gear group relative to the first arm, the third arm may rotate around a third pivot axis driven by a third meshing gear group relative to the second arm, and so on, with the N-1 arm rotating around the Nth arm rotated around the Nth pivot axis driven by the Nth meshing gear group. In the embodiments described later, a vertical multi-joint type 6-axis robot with six arms, six pivot axes, and six meshing gear groups will be used as an example. Of course, the robot in this disclosure may be a multi-axis robot other than a 6-axis robot (for example, it may be a 1-axis robot, a 2- to 5-axis robot, or a 7-axis or more robot).

[0022] In this specification, "a specific arm, a specific pivot shaft, and a specific meshing gear group" may be defined as a set of one arm, one pivot shaft, and one meshing gear group in a plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups. In this case, "a specific arm, a specific pivot shaft, and a specific meshing gear group" may, in a broad sense, mean each arm, one pivot shaft, and one meshing gear group relating to at least one set in a plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups, or in a narrow sense, mean each arm, one pivot shaft, and one meshing gear group relating to all sets in a plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups. Furthermore, moving "a specific arm, a specific pivot shaft, and a specific meshing gear group" may mean moving one set at a time (one axis at a time in sequence) or moving multiple sets simultaneously (multiple axes or all axes simultaneously).

[0023] In this specification, the "gear error information" in "rotating a specific arm among multiple arms around a specific pivot axis among multiple pivot axes to obtain gear error information for a specific meshing gear group among multiple meshing gear groups" may be, for example, obtained by sequentially operating each set of arm, pivot axis, and meshing gear group in the multiple arms, multiple pivot axes, and multiple meshing gear groups (moving one axis at a time) as an actual calibration operation, or it may be obtained based on prior simulations, or it may be estimated from actual data using some kind of sensor (i.e., it is not necessary that it be measured data). Also, "gear error information for a specific meshing gear group among multiple meshing gear groups" may be reinterpreted as, for example, "periodic error information obtained from the gear ratio information of a specific meshing gear group among multiple meshing gear groups."

[0024] Figure 1 shows an example of the configuration of the robot control device 1 of this disclosure. The robot control device 1 comprises a robot (robot device) 10 and a control device 50. In this disclosure, the robot 10 is exemplified as a vertical articulated 6-axis robot. The robot control device 1 may be a semi-closed control system that uses motor position and speed information from encoders of servo motors arranged on each joint axis of the articulated robot as feedback information, or it may be a fully closed control system that arranges encoders that detect the position (angle) of the arm (axis) on each joint axis and uses the arm (axis) position information from these encoders as feedback information.

[0025] Robot 10 is a 6-axis robot and has six arms: a first arm 11, a second arm 12, a third arm 13, a fourth arm 14, a fifth arm 15, and a sixth arm 16. The tip of the sixth arm 16 is provided with a holding part (e.g., a gripping part or a suction part) for holding (e.g., grasping or suctioning) an object. The term "arm" may be read as an arm, robot arm, or connecting part.

[0026] The robot 10 has a first rotation axis J1 corresponding to the first arm 11, a second rotation axis J2 corresponding to the second arm 12, a third rotation axis J3 corresponding to the third arm 13, a fourth rotation axis J4 corresponding to the fourth arm 14, a fifth rotation axis J5 corresponding to the fifth arm 15, and a sixth rotation axis J6 corresponding to the sixth arm 16. The first to sixth rotation axes J1 to J6 are each rotatable in the direction indicated by the arrows in Figure 1. The term "rotation axis" may be read as a joint axis or rotation axis, etc.

[0027] When the robot 10 is installed on the base, the first arm 11 rotates around the first rotation axis J1 relative to the base, the second arm 12 rotates around the second rotation axis J2 relative to the first arm 11, the third arm 13 rotates around the third rotation axis J3 relative to the second arm 12, the fourth arm 14 rotates around the fourth rotation axis J4 relative to the third arm 13, the fifth arm 15 rotates around the fifth rotation axis J5 relative to the fourth arm 14, and the sixth arm 16 rotates around the sixth rotation axis J6 relative to the fifth arm 15.

[0028] In a robot with multiple axes (in this case, six axes) as described in this disclosure, due to the structure of the arm, there may be a rotational relationship between the multiple axes in which the rotation of one axis causes the rotation of another axis. In this disclosure, a rotational relationship includes all cases in which the rotation of at least one axis of the multiple axes causes the rotation of at least one of the other axes.

[0029] Figure 2 shows an example of the configuration of a group of meshing gears provided in relation to a pivot axis. As shown in Figure 2, the robot 10 has a first meshing gear group 11X provided in relation to the first pivot axis J1 (which serves as a drive source), a second meshing gear group 12X provided in relation to the second pivot axis J2 (which serves as a drive source), a third meshing gear group 13X provided in relation to the third pivot axis J3 (which serves as a drive source), a fourth meshing gear group 14X provided in relation to the fourth pivot axis J4 (which serves as a drive source), a fifth meshing gear group 15X provided in relation to the fifth pivot axis J5 (which serves as a drive source), and a sixth meshing gear group 16X provided in relation to the sixth pivot axis J6 (which serves as a drive source). In the example in Figure 2, the first meshing gear group 11X to the sixth meshing gear group 16X are depicted as having the same (single, common) configuration. However, in reality, the first meshing gear group 11X to the sixth meshing gear group 16X may have different configurations depending on the configuration of the first rotating shaft J1 to the sixth rotating shaft J6.

[0030] The first meshing gear group 11X has gears 11Y and 11Z that mesh with each other. Similarly, the second meshing gear group 12X has gears 12Y and 12Z that mesh with each other, the third meshing gear group 13X has gears 13Y and 13Z that mesh with each other, the fourth meshing gear group 14X has gears 14Y and 14Z that mesh with each other, the fifth meshing gear group 15X has gears 15Y and 15Z that mesh with each other, and the sixth meshing gear group 16X has gears 16Y and 16Z that mesh with each other.

[0031] Focusing on gears 11Y and 11Z of the first meshing gear group 11X, by driving a motor (not shown) connected to at least one of gears 11Y and 11Z, the first arm portion 11 rotates around the first rotation axis J1 relative to the base via gears 11Y and 11Z. Similarly, by a motor-driven mechanism, the second arm portions 12 to the sixth arm portions 16 rotate around the rotation axes J2 to J6 via gears 12Y to 16Y and gears 12Z to 16Z of the second meshing gear groups 12X to the sixth meshing gear groups 16X. Note that the meshing gear groups in Figure 2 are simplified, and each meshing gear group may include three or more gears (for example, multi-stage gears including bevel gears, helical gears, worm gears, etc.). In other words, there is a degree of flexibility in the configuration of the meshing gear group, and various design changes are possible.

[0032] Although not shown in the diagram, the first to sixth drive shafts J1 to J6, the first to sixth meshing gear groups 11X to 16X, and at least one of the motors that drive them may each be provided with a dual encoder (optical rotary encoder) that detects shaft position information, angle information, rotational position information, speed information, etc., and outputs (feeds back) it to the control device 50.

[0033] Figure 3A shows an example of a feedback control circuit using a semi-closed control method, and Figure 3B shows an example of a feedback control circuit using a fully closed control method.

[0034] As shown in Figure 3A, a motor position command is input to the semi-closed control type feedback control circuit. The motor position command is converted into a motor speed command by the position control unit 21 (Gp(s)), and the speed control unit 22 (Gv(s)) further outputs a command (current command, etc.) to control the motor 23 according to the speed command. Note that in Figure 3A, the robot mechanism is described as a "torsion system" (the same applies to Figure 3B). In the feedback control circuit of Figure 3A, the motor speed is feedback controlled as a minor loop, and the position control unit 21 executes control using the deviation between the motor position feedback signal and the motor position command.

[0035] As shown in Figure 3B, in a fully closed-loop feedback control circuit, an arm (axis) position command is given as a command, and the position control unit 31 (Gp(s)) converts the arm position command into a motor speed command. The speed control unit 32 (Gv(s)) outputs a command (current command, etc.) to control the motor 33 according to the motor speed command. In the feedback control circuit of Figure 3B, the motor speed is feedback controlled as a minor loop, and the position control unit 31 executes control using the deviation between the feedback signal of the arm (axis) position based on the motor position and the arm (axis) position command (the motor position itself is not fed back).

[0036] The control device 50 controls the operation of the robot 10 according to a predetermined operation program. The control device 50 may have a configuration as a general computer, including a CPU (Central Processing Unit), ROM (Read Only Memory), RAM (Random Access Memory), storage device, operation unit, display unit, input / output interface, network interface, etc.

[0037] Figure 4 is a block diagram showing an example of the functional configuration of the control device 50. As shown in Figure 4, the control device 50 includes a display unit 51, an input unit 52, a storage unit 53, an acquisition unit 54, and a control unit 555. A detection device 60 is connected to the control device 50. The detection device 60 is configured to include, for example, at least one of a 3D scanner 61 and a laser tracker 62 (both the 3D scanner 61 and the laser tracker 62 are shown in Figure 4), and detects the measured position of each arm (i-th arm) (i=1, 2, 3, 4, 5, 6), the measured angle and measured rotation direction of each rotation axis Ai (i-th rotation axis) (i=1, 2, 3, 4, 5, 6), etc. In other words, the detection device 60 detects the measured rotational position of a specific arm (e.g., the i-th arm) centered on a specific rotation axis (e.g., the i-th rotation axis) (e.g., a predetermined position such as the tip position of the robot 10). Furthermore, the 3D scanner 61 constituting the detection device 60 may be attached to a predetermined part of the robot control device 1 shown in Figure 1, for example, and the laser tracker 62 constituting the detection device 60 may be positioned at a predetermined location relative to the robot control device 1 shown in Figure 1, for example.

[0038] The display unit 51 is a display device such as a liquid crystal panel or an organic EL (electroluminescence) display, and displays the command position of each arm (i-th arm) (i=1, 2, 3, 4, 5, 6), the command angle and command rotation direction of each rotation axis Ai (i-th rotation axis) (i=1, 2, 3, 4, 5, 6). In other words, the display unit 51 displays the "rotation command position of a specific arm (e.g., i-th arm) centered on a specific rotation axis (e.g., i-th rotation axis)". Furthermore, the display unit 51 may display the command position of each arm (the i-th arm), the command angle of each rotation axis Ai (the i-th rotation axis), and correction values ​​for the command rotation direction, etc., based on the difference information between the "rotation command position of a specific arm (e.g., the i-th arm) around a specific rotation axis (e.g., the i-th rotation axis)" and the "actual rotation measurement position of a specific arm (e.g., the i-th arm) around a specific rotation axis (e.g., the i-th rotation axis)" acquired by the acquisition unit 54 described later. The display unit 51 may also be a liquid crystal panel mounted on the control device 50.

[0039] The input unit 52 is an input device for inputting command positions for each arm (i-th arm), command angles and command rotation directions for each rotation axis Ai (i-th rotation axis), and various setting parameters related to the motion control of the robot 10. The input unit 52 may be configured to include, for example, a touch panel or a mouse, or it may be a touch panel placed on the display unit 51, which is a liquid crystal panel.

[0040] The memory unit 53 is composed of, for example, non-volatile memory such as a hard disk or flash memory. The memory unit 53 stores, for example, a program that derives the commanded position of each arm (the i-th arm), the commanded angle and commanded rotation direction of each rotation axis Ai (the i-th rotation axis). The memory unit 53 also stores error information EI, which represents the positioning error corresponding to the commanded position of each arm (the i-th arm), the commanded angle and commanded rotation direction of each rotation axis Ai (the i-th rotation axis). The error information EI may be calculated using the difference information between "the commanded rotation position of a specific arm (e.g., the i-th arm) around a specific rotation axis (e.g., the i-th rotation axis)" and "the measured rotation position of a specific arm (e.g., the i-th arm) around a specific rotation axis (e.g., the i-th rotation axis)".

[0041] As will be explained in more detail later, the error information EI is acquired by the acquisition unit 54 later, and includes periodic error information (gear error information) obtained from the gear ratio information of a specific meshing gear group (e.g., the i-th meshing gear group) among a specific meshing gear group (e.g., the i-th meshing gear group) among a specific meshing gear group (e.g., the i-th meshing gear group) by rotating a specific arm (e.g., the i-th arm) among

[0042] The acquisition unit 54 rotates a specific arm (e.g., the i-th arm) among multiple arms (e.g., the 1st to 6th arms) around a specific rotation axis (e.g., the i-th rotation axis) among multiple rotation axes (e.g., the 1st to 6th rotation axes) to acquire periodic error information (gear error information) from the gear ratio information of a specific meshing gear group (e.g., the i-th meshing gear group) among multiple meshing gear groups (e.g., the 1st to 6th meshing gear groups).

[0043] Here, "gear ratio information for a specific group of meshing gears" may refer to information such as, for example, the number of teeth per revolution of the larger gear and the error per tooth (manufacturing error or defect error) when considering two gears of different sizes that make up the meshing gear group, the number of teeth per revolution of the smaller gear and the error per tooth (manufacturing error or defect error), the number of rotations of the smaller gear for the larger gear to complete one revolution, and the error (reproducibility) of this. In this sense, "gear ratio information for a specific group of meshing gears" may be reinterpreted as "characteristic information and compatibility information of each gear that makes up a specific group of meshing gears."

[0044] According to the inventor's diligent research, conventional robot devices, including those described in the aforementioned Patent Documents 1 to 3, have as a basic configuration an arm (multiple arms), a rotation axis (multiple rotation axes), and a group of meshing gears (multiple groups of meshing gears). The rotation of the arm (multiple arms) is controlled around the rotation axis (multiple rotation axes). However, it has been found that when the group of meshing gears (multiple groups of meshing gears) is driven to perform such rotational control, a periodic error linked to the gear ratio information of the group of meshing gears (multiple groups of meshing gears) tends to occur (or has such a tendency). This periodic error can be called "gear error information."

[0045] Figures 5A and 5B show a first example of periodic errors linked to the gear error information of the meshing gear group. The first example in Figures 5A and 5B focuses on the first meshing gear group 11X, which is the drive source of the first rotating shaft J1, and shows the difference between the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (gear error information of the first meshing gear group 11X (measured value including periodic errors linked to the gear ratio information)). Here, the drive trajectory of the first rotating shaft J1 and the first meshing gear group 11X can be considered equivalent to the drive trajectory of the first arm 11. The error information here includes errors in the vertical direction (i.e., the direction perpendicular to the plane of the rotation circle in Figure 5B) (for example, how far it is from the plane of the rotation circle) and errors in the horizontal direction (i.e., the arc direction in the plane of the rotation circle in Figure 5B) (for example, errors in movement relative to the command angle in the arc direction (angle error)).

[0046] As shown in the first example in Figures 5A and 5B, even when attempting to move the first arm 11 so that it is always positioned on a perfect circle (arc), it can be seen that periodic errors inevitably occur based on the quirks and characteristics of the first meshing gear group 11X, which is the drive source of the first rotating shaft J1. As shown in Figure 5A, gear rotation phases appear in which the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (measured value) coincide (for example, the vertical axis is at the origin), but such gear rotation phases are periodic (limited), and in between, gear rotation phases in which the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (measured value) are shifted in the positive direction and gear rotation phases in which they are shifted in the negative direction alternately (the vertical error described above occurs). Furthermore, strictly speaking, it is difficult for the first arm 11 to always be positioned on a perfect circle (arc), and errors in movement relative to the command angle in the arc direction (angular errors) occur (resulting in the lateral errors mentioned above).

[0047] Figures 6, 7, and 8 show the second, third, and fourth examples of periodic errors linked to the gear error information of the meshing gear group. The second to fourth examples in Figures 6 to 8 are for the first meshing gear group 11X, which is the drive source of the first rotating shaft J1, and show the difference between the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (gear error information of the first meshing gear group 11X (measured value including periodic errors linked to gear ratio information)). In that sense, they are the same as Figure 5A described above. However, in the second to fourth examples in Figures 6 to 8, there is a difference in the posture of the second arm 12 connected to the first arm 11. Figure 6 corresponds to the case where the rotation position of the second pivot axis J2 is at the reference position (0°), Figure 7 corresponds to the case where the rotation position of the second pivot axis J2 is rotated 60° in a certain direction from the reference position (0°), and Figure 8 corresponds to the case where the rotation position of the second pivot axis J2 is rotated -45° in a certain direction from the reference position (0°) (the rotation directions in Figures 7 and 8 are opposite). Also, n1, n2, and n3 in Figure 6, n4, n5, and n6 in Figure 7, and n7, n8, and n9 in Figure 8 each indicate the number of trials.

[0048] As shown in the second to fourth examples in Figures 6 to 8, even when attempting to move the first arm 11 so that it is always positioned on a perfect circle (arc), it can be seen that periodic errors always occur based on the quirks and characteristics of the first meshing gear group 11X, which is the drive source of the first rotating shaft J1. As shown in Figures 6 to 8, although gear rotation phases appear in which the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (measured value) coincide (for example, the vertical axis is at the origin), such gear rotation phases are periodic (limited), and in between, gear rotation phases in which the plane of the rotation circle of the first rotating shaft J1 (ideal command value) and each point (measured value) are shifted in the positive direction and gear rotation phases in which they are shifted in the negative direction appear alternately.

[0049] The acquisition unit 54 acquires gear error information (periodic error information (waveform) obtained from gear ratio information) of a specific meshing gear group (e.g., first meshing gear group 11X) as described with reference to Figures 5 to 8 above, multiplied by the difference information (waveform) between "the rotation command position of a specific arm (e.g., first arm 11) around a specific rotation axis (e.g., first rotation axis J1)" and "the measured rotation position of a specific arm (e.g., first arm 11) around a specific rotation axis (e.g., first rotation axis J1)". This information (waveform) may be stored in the storage unit 53 as error information EI representing positioning errors corresponding to the command position of each arm (e.g., first arm 11), the command angle of each rotation axis (e.g., first rotation axis J1), and the command rotation direction.

[0050] The control unit 55 controls the position of each arm (the i-th arm), the angle and rotation direction of each rotation axis Ai (the i-th rotation axis), etc., based on the "rotation command position of a specific arm (e.g., the i-th rotation axis) centered on a specific rotation axis (e.g., the i-th rotation axis)" (and outputs a drive instruction signal for this purpose).

[0051] The control unit 55 may control the rotation of a specific arm (e.g., the i-th arm or the first arm 11) around a specific rotation axis (e.g., the i-th rotation axis or the first rotation axis J1) based on the error information EI acquired by the acquisition unit 54 and stored in the storage unit 53.

[0052] The control unit 55 controls the rotation of a specific arm (e.g., the ith arm or the first arm 11) around a specific rotation axis (e.g., the ith rotation axis or the first rotation axis J1) based on the error information EI acquired by the acquisition unit 54 and stored in the storage unit 53, that is, gear error information (periodic error information acquired from gear ratio information) of a specific meshing gear group (e.g., the ith meshing gear group or the first meshing gear group 11X).

[0053] The control unit 55 controls the rotation of a specific arm (e.g., the ith arm or the first arm 11) centered on a specific rotation axis (e.g., the ith arm or the first arm 11) based on the error information EI acquired by the acquisition unit 54 and stored in the storage unit 53, that is, gear error information (periodic error information (waveform) acquired from gear ratio information) of a specific meshing gear group (e.g., the ith meshing gear group or the first meshing gear group 11X), multiplied by the difference information (waveform) between "the rotation command position of a specific arm (e.g., the ith arm or the first arm 11) centered on a specific rotation axis (e.g., the ith arm or the first arm 11)" and "the measured rotation position of a specific arm (e.g., the ith arm or the first arm 11) centered on a specific rotation axis (e.g., the ith arm or the first arm 11)" (correcting the drive instruction signal with inverse waveform feedback that cancels out the error).

[0054] In this disclosure, a specific arm, a specific pivot shaft, and a specific meshing gear group may be defined as a set of one arm, one pivot shaft, and one meshing gear group in a plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups. The acquisition unit 54 may perform acquisition processing for each set of a specific arm, a specific pivot shaft, and a specific meshing gear group that pertains to all sets in the plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups. Furthermore, the control unit 55 may perform control processing for each set of a specific arm, a specific pivot shaft, and a specific meshing gear group that pertains to all sets in the plurality of arms, a plurality of pivot shafts, and a plurality of meshing gear groups. For example, in Figures 5 to 8 above (Examples 1 to 4), correction and control using periodic error information (gear error information) based on a set of one arm, a pivot shaft, and a meshing gear group (first arm 11, first pivot shaft J1, and first meshing gear group 11X) was explained. However, similar correction and control using periodic error information (gear error information) can be applied to another set of one arm and a pivot shaft. The meshing gear groups (for example, the second arm 12, the second pivot shaft J2, and the second meshing gear group 12X; the third arm 13, the third pivot shaft J3, and the third meshing gear group 13X; the fourth arm 14, the fourth pivot shaft J4, and the fourth meshing gear group 14X; the fifth arm 15, the fifth pivot shaft J5, and the fifth meshing gear group 15X; and the sixth arm 16, the sixth pivot shaft J6, and the sixth meshing gear group 16X) may be applied sequentially or simultaneously.

[0055] In this way, the control unit 55 uses the gear error information (periodic error information obtained from gear ratio information) of a specific meshing gear group acquired by the acquisition unit 54 to control the rotation of a specific arm around a specific pivot axis by applying correction (feedback) to the drive instruction signal so as to cancel out the gear error information (periodic error information) (so that it becomes an inverse waveform). Focusing on the fact that gear error information (periodic error information caused by gear ratio information) of a meshing gear group (for example, the periodic bumps and dips in Figures 5 to 8 above) will inevitably occur (cannot be completely avoided), even if there are slight differences in degree, the control unit 55 controls the rotation of a specific arm around a specific pivot axis by applying correction (feedback) to the drive instruction signal so as to cancel out the periodic error information (so that it becomes an inverse waveform).

[0056] In addition, the control unit 55 may perform the following control, taking into account the relationship of coordinated rotation and mutual influence of posture among the multi-axis robot (e.g., a 6-axis robot). That is, in a multi-axis robot (e.g., a 6-axis robot), since the multiple axes (e.g., 6 axes) move in mechanically linked manner (for example, the J1, J2, J3, J4, J5, and J6 axes that make up the 6 axes are in a coordinated rotation relationship), it may be possible to enable more precise motion control by incorporating the relationship amounts of these relationships into the correction values, or by incorporating the relationship amounts of mutual influence of posture among each axis (e.g., J1 to J6 axes) or each arm (e.g., the 1st to 6th arms) into the correction values. Furthermore, in motion analysis of a multi-axis robot (e.g., a 6-axis robot), for example, by performing a Fast Fourier Transform (FFT) on the output waveforms from each arm or rotation axis, it may be possible to extract and correct only the error portion of the angular error that corresponds to the machining accuracy of the gears (for example, gear error information of multiple meshing gear groups that are the drive sources for multiple rotation axes (periodic error information obtained from gear ratio information)) from the angular error, rather than simply using the angular error, thereby achieving more precise motion control. In addition, by analyzing the output waveform and, consequently, the extracted gear error information, it becomes possible to take appropriate measures such as excluding or correcting noise (measurement noise) such as outliers and abnormal values ​​in the waveform.

[0057] The control unit 55 may control the rotation of a specific arm around a specific rotation axis based on a rotation correction parameter for that specific arm around a specific rotation axis, which is obtained by summing the rotation command parameters (ideal parameters, theoretical parameters) of the specific arm around a specific rotation axis, the DH (Denavit-Hartenberg) parameters used in the robot design, and periodic perturbation parameters resulting from the machining accuracy of the gear structure or robot parts. The periodic perturbation parameters may be due to the machining accuracy of the gear structure and robot parts, or they may be due to at least one of the gear structure and the machining accuracy of the robot parts.

[0058] The control unit 55 may control the rotation of a specific arm around a specific rotation axis based on a rotation correction parameter for that specific arm around a specific rotation axis, which is obtained by summing the rotation command parameters (ideal parameters, theoretical parameters) of a specific arm around a specific rotation axis, the DH (Denavit-Hartenberg) parameters used in the robot design, periodic perturbation parameters resulting from the machining accuracy of the gear structure or robot parts, and the deflection parameters of the specific arm. The periodic perturbation parameters may be due to the machining accuracy of the gear structure and robot parts, or they may be due to at least one of the gear structure and the machining accuracy of the robot parts.

[0059] If we consider a harmonic drive gear as an example (or assumption) of the gear structure, it can be considered (or inferred) that the deflection of the harmonic drive gear and the gap of the elliptical bearing have an influence (expressed as a periodic error) as "characteristics due to the gear structure" and, consequently, "periodic perturbation parameters caused by the gear structure."

[0060] A harmonic drive gear system applies the principles of metal elasticity. Its basic configuration consists of a central elastically deformable gear and an outer rigid gear. When the central gear rotates, it elastically deforms and meshes with the outer rigid gear, causing the outer rigid gear to rotate. During this process, the elastically deformable gear and the rigid gear move in a wave-like motion, and it is highly probable that this wave is reflected in the rotational error (a periodic perturbation parameter caused by the gear structure).

[0061] Of course, there is flexibility in what is set (assumed) as the gear structure; for example, the structure of the bearings included in the gear can be applied. In this way, by using periodic perturbation parameters resulting from the machining accuracy of the gear structure or robot parts to control the rotation of a specific arm around a specific rotation axis, more precise motion control of the robot becomes possible.

[0062] The control unit 55 may, when designating one of the multiple arms as a specific arm, use a rotational correction parameter that is the sum of the deflection parameters of that specific arm, while when designating another of the multiple arms as a specific arm, it may use a rotational correction parameter that is not the sum of the deflection parameters of that specific arm.

[0063] The criteria for deciding whether or not to sum (take into consideration) the deflection parameters of the arm parts may be determined based on, for example, which of the multiple rotation axes the arm part corresponds to, the orientation of the arm parts on the upstream (base side, root side) and downstream (tip side) sides of the rotation axis, and whether there is a rotational relationship between the arm parts on the upstream (base side, root side) and downstream (tip side) sides of the rotation axis. Taking the 6-axis robot of this disclosure as an example, for the 1st rotation axis J1, 4th rotation axis J4, 5th rotation axis J5, and 6th rotation axis J6, the deflection parameters of the corresponding 1st arm part 11, 4th arm part 14, 5th arm part 15, and 6th arm part 16 may not be summed (taken into consideration), while for the 2nd rotation axis J2 and 3rd rotation axis J3, the deflection parameters of the corresponding 2nd arm part 12 and 3rd arm part 13 may be summed (taken into consideration).

[0064] Periodic perturbation parameters are defined as periodic errors caused by the machining accuracy of each component (part) of the robot, where the error between the theoretical value and the measured value fluctuates periodically. In this sense, periodic perturbation parameters may include (or be equivalent to) "gear error information of a specific meshing gear group (periodic error information obtained from gear ratio information)" acquired by the acquisition unit 54 and used by the control unit 55.

[0065] Figures 9A, 9B, 9C, 9D, 9E, and 9F show examples of periodic perturbation parameters for the first rotation axis J1, second rotation axis J2, third rotation axis J3, fourth rotation axis J4, fifth rotation axis J5, and sixth rotation axis J6. Measured values ​​are shown as solid lines, and calculated waveforms as dashed lines. From Figures 9A to 9F, the periodic perturbation parameters of the first rotation axis J1 to the sixth rotation axis J6, i.e., gear error information (periodic error information obtained from gear ratio information) for the first meshing gear group 11X to the sixth meshing gear group 16X (the existence of gear rotation phases that deviate in both positive and negative directions from the reference value), can be understood. When the rotation angle of the first rotation axis J1 is defined as Δθ1, the rotation angle of the second rotation axis J2 as Δθ2, the rotation angle of the third rotation axis J3 as Δθ3, the rotation angle of the fourth rotation axis J4 as Δθ4, the rotation angle of the fifth rotation axis J5 as Δθ5, and the rotation angle of the sixth rotation axis J6 as Δθ6, it becomes possible to calculate and analyze the periodic perturbation parameters of each rotation axis by performing a Fast Fourier Transform (FFT) on these rotation angles Δθ1 to Δθ6.

[0066] The inclusion of periodic perturbation parameters allows for the accurate determination of the DH parameters and deflection parameters. Conventional calibration software often optimizes using only the DH and deflection parameters, meaning that errors from periodic perturbations are included in the calculation (without knowing the source of the error). However, by incorporating parameters related to (or caused by) periodic perturbations into the calculation beforehand, these errors become calculable errors, allowing for more accurate acquisition (calculation and analysis) of the DH and deflection parameters. Furthermore, since the period is determined by the gear structure, once the model equation is established, it becomes possible to perform calibration on objects with the same gear structure (e.g., robots of the same type) without needing to identify the period group.

[0067] In the concept encompassing single-axis and multi-axis robots, the robot control device of this disclosure includes an arm, a pivot axis provided corresponding to the arm, a group of meshing gears provided corresponding to the pivot axis, an acquisition unit that rotates the arm around the pivot axis to acquire gear error information of the meshing gear group, and a control unit that controls the rotation of the arm around the pivot axis based on the gear error information of the meshing gear group. This enables robots that rotate their arms around the pivot axis to operate with higher precision.

[0068] In the concept of a multi-axis robot, the robot control device of this disclosure includes: a plurality of arms; a plurality of rotation axes provided corresponding to the plurality of arms; a plurality of meshing gear groups provided corresponding to the plurality of rotation axes; an acquisition unit that rotates a specific arm among the plurality of arms around a specific rotation axis among the plurality of rotation axes and acquires gear error information of a specific meshing gear group among the plurality of meshing gear groups; and a control unit that controls the rotation of the specific arm around the specific rotation axis based on the gear error information of the specific meshing gear group. This makes it possible to operate a multi-axis robot that rotates a plurality of arms around a plurality of rotation axes with higher precision.

[0069] The robot control device and robot control method disclosed herein acquire gear error information (periodic error information based on gear ratio information) of multiple meshing gear groups that are the drive sources for multiple rotation axes mounted on a multi-axis robot (e.g., a 6-axis robot), and perform motion control and motion analysis based on said gear error information (error information), thereby enabling highly accurate motion control and motion analysis based on the absolute coordinates of a multi-axis robot. For example, each axis (each rotation axis) of a multi-axis robot experiences minute and periodic angular errors due to the influence of the machining accuracy of the gears (meshing gear groups). By clarifying these angular errors through measurement, a periodic error waveform (gear error information) can be obtained, and by applying a correction value in the opposite direction of the amount of error, motion control based on the absolute coordinates of a multi-axis robot can be suitably performed.

[0070] In addition, in multi-axis robots (e.g., 6-axis robots), the multiple axes (e.g., 6 axes) move in a mechanically linked manner (for example, axes J1, J2, J3, J4, J5, and J6 that make up the 6 axes rotate together), so by incorporating these relationship quantities into the correction values, more precise motion control becomes possible. Furthermore, by performing a Fast Fourier Transform (FFT) on the motion analysis of a multi-axis robot (e.g., a 6-axis robot), for example, on the output waveforms from each arm or rotation axis, it becomes possible to extract and correct only the error portion of the gear machining accuracy (for example, gear error information of multiple meshing gear groups that are the driving sources for multiple rotation axes (periodic error information obtained from gear ratio information)) from the angular error, rather than simply using the angular error, thereby achieving more precise motion control.

[0071] According to the robot control device and robot control method disclosed herein, by performing a Fast Fourier Transform (FFT) on the output waveforms from each arm and rotation axis, it is possible to extract and correct only the error portion of the gear machining accuracy (for example, gear error information of multiple meshing gear groups that are the drive sources for multiple rotation axes (periodic error information obtained from gear ratio information)) from the angular error, rather than simply using the angular error, thereby achieving more precise motion control. Furthermore, by performing waveform analysis of the output waveform and, consequently, the extracted gear error information, it is possible to take appropriate measures such as excluding or correcting noise (measurement noise) such as outliers and abnormal values ​​in the waveform. Moreover, once the waveform is acquired, it is possible to correct areas that are not actually moving (for example, it is possible to correct the entire angle of all movable axes by measuring within a range of ±30 degrees from the reference angle of a certain movable axis). In addition, it becomes possible to confirm the accuracy (reliability) of the deflection correction parameters from the slope of the waveform.

[0072] Conventional robots are known for their high "repeatability" (the accuracy of position when the same action is repeated) for performing the same operation over and over. On the other hand, there is room for improvement in "absolute positioning accuracy" (the accuracy of movement distance relative to numerical commands) due to factors such as inter-axis dimension errors and angle errors caused by robot assembly errors, arm deflection due to gravity, gear backlash errors, and gear machining accuracy errors, as exemplified by the DH method which expresses the joint position of a robot using four parameters. In this disclosure, we propose a method to improve the absolute accuracy of a robot by parameterizing each error factor of the robot and optimizing each parameter from the error between the command value and the measured value.

[0073] Currently, various robot calibration software programs are available on the market that attempt to move robots with high precision by parameterizing the error factors of robots and optimizing those parameters based on the robot's command values ​​and measurements from an external 3D measuring machine. This software basically improves absolute position accuracy by optimizing the following two elements. (A) DH parameters that parameterize the distance between each link of the robot and the angular error to the zero point (origin). (B) The effect of gravity causing the tip to droop due to the bending of the arm (including the effect of the weight of the hand attached to the tip of the arm).

[0074] Furthermore, in recent years, robots have emerged that not only rely on software but also incorporate dual encoders (for example, optical rotary encoders) on the gearbox side of each axis to reduce errors in angle commands (normally, robot encoders are only attached to the motor side, not the gearbox side).

[0075] Current robot calibration technology cannot achieve the level of precision required in today's world (such as laser processing or replacement with jigs). There are aspects where calculations cannot be performed using only DH parameters and simple arm deflection calculations. This is due to factors such as the amount of backlash changing depending on the direction of gear rotation, and the fact that the error amount relative to the command values ​​of each axis is not taken into account. Furthermore, when the point where connected separate robot arms become straight (or nearly straight) is defined as a "singularity," it is known that accuracy deteriorates at and near the singularity. Since including information about singularities and their vicinity in the calibration calculation reduces overall accuracy, processing is done to automatically exclude information about singularities and their vicinity. As a result, there is a problem in that the posture at and near the singularity cannot be made highly accurate, and the technology lacks versatility.

[0076] While it is possible to improve accuracy regarding the errors in the command values ​​for each axis and the gear rotation direction by installing dual encoders on the reduction gear side, this would significantly increase costs due to the addition of hardware and the need for mechanical design modifications. Furthermore, in terms of maintenance, foreign matter such as dust can enter through the gaps between the movable and fixed parts, leading to reading errors and equipment shutdowns.

[0077] The robot control device of this disclosure can achieve a significant improvement in accuracy by adding the following parameters (C), (D), (E), and (F). (C) Parameterization of the rotation direction of each axis (each rotation axis) Because the gear backlash differs depending on the rotation direction of each axis (each rotation axis) of the robot, the parameters can be optimally set for each rotation direction of each axis (each rotation axis) of the robot. (D) Parameterization of the error of each axis (each rotation axis) Each axis (each rotation axis) of a multi-axis robot experiences minute and periodic angular errors due to the machining accuracy of the gears (mesh gear groups). By measuring and clarifying these angular errors, a periodic error waveform can be obtained, and by applying a correction value in the opposite direction of the error amount, optimal motion control based on absolute coordinates of the multi-axis robot can be achieved. In a multi-axis robot (for example, a 6-axis robot), the multiple axes (for example, 6 axes) move in a mechanically linked manner (for example, axes J1, J2, J3, J4, J5, and J6 that make up the 6 axes rotate together), so by incorporating their relationship quantities into the correction value, more precise motion control becomes possible. (E) Correction of parts due to precision degradation at or near singularities By optimally setting correction values ​​that take into account (and compensate for) the deterioration in accuracy at singularities where connected separate robot arms become aligned (or nearly aligned) and in their vicinity, more precise motion control becomes possible. (F) Correction considering arm elongation due to temperature rise By taking into account arm elongation due to temperature rise, and applying temperature correction by recalculating the parameters of the distance between each link based on temperature data acquired in advance or dynamically, more precise operation control becomes possible.

[0078] Furthermore, the robot control device and robot control method of this disclosure have the following aspects. First, as a premise, there are online teaching and offline teaching methods for teaching a robot. Online teaching teaches a fixed robot motion on-site (online), and it is possible to realize motions that control the robot's position and orientation within the range of "repeatability". On the other hand, offline teaching, which does not require the actual robot motion on-site, teaches robot motion using mathematical models such as forward kinematics and inverse kinematics of the robot, and it is possible to aim for control of the robot's position and orientation not only of fixed robot motions but also in the entire space of the assumed robot motion range. However, when teaching robot motion based on forward kinematics and inverse kinematics of the robot, there is a challenge in "absolute accuracy" regarding the robot's position and orientation. Generally, "absolute accuracy" deteriorates significantly compared to "repeatability" due to errors between the nominal and actual values ​​of the DH parameters that each individual robot has, errors in position and orientation due to the self-weight of each arm of the robot and the moment around each axis caused by the payload during robot motion.

[0079] The robot control device and robot control method of this disclosure may include the following constituent elements (robot control processing) (1) and (2) in order to improve the "absolute accuracy" of the position and orientation of a multi-joint robot to the level of "repeatability."

[0080] (1) Configuration requirements (robot control processing) Compensation terms based on the following information (1-1), (1-2), and (1-3) are incorporated into the forward kinematics in the form of a linear combination of a function of each axis command angle and adjustment parameters. Using random command angles within the assumed operating range of the robot and the robot's position and orientation information, the adjustment parameters are optimized using a constraint-based optimization method to construct an optimized forward kinematics model that is fitted to each individual robot. (1-1) Error information between the nominal value and the actual value of the DH parameters for each individual robot. (1-2) Moment information around each axis generated by the weight of each arm of the robot and the payload during robot operation. (1-3) Periodic perturbation information of the gear ratio between the input and output angles of the meshing gear group, which remains even after compensating for backlash in the reduction mechanism of each rotating shaft.

[0081] To further explain the information (perturbation information) and how to obtain it mentioned in (1-3) above, please see the following. (1-3-1) When each rotating shaft is rotated independently (including backlash correction), the fluctuation of the meshing gear ratio in the reduction mechanism of each rotating shaft is obtained as time-series data of the command angle from the command angle and end-effector position information. (1-3-2) From the obtained time series data, information processing such as noise reduction is performed to identify the period group (multiple periods) of the main periodic components contained in the time series data. This period group generally differs for each axis of rotation. (1-3-3) Using a periodic function of the command angle with identified periodic groups, the periodic perturbation compensation term of the gear ratio is incorporated into the robot's forward kinematics.

[0082] (2) Configuration requirements (robot control processing) Based on the forward kinematics (optimized forward kinematics model) constructed according to the constituent requirements (robot control processing) of (1), robot control is performed by inverse kinematics using iterative optimization.

[0083] Although the invention described herein has been explained in detail above, it will be clear to those skilled in the art that the invention described herein is not limited to the embodiments described herein. The invention described herein can be implemented in modified and altered forms without departing from the spirit and scope of the invention as defined by the claims. Therefore, the descriptions herein are for illustrative purposes only and do not imply any limitation on the invention described herein. [Explanation of Symbols]

[0084] 1. Robot control device 10. Robots (Robot devices) 11. First arm (multiple arms) 12. Second arm (multiple arms) 13. Third arm (multiple arms) 14. Fourth arm (multiple arms) 15. Fifth arm (multiple arms) 16. Sixth arm (multiple arms) 11X First meshing gear group (multiple meshing gear groups) 12X Second meshing gear group (multiple meshing gear groups) 13X Third meshing gear group (multiple meshing gear groups) 14X Fourth meshing gear group (multiple meshing gear groups) 15X Fifth meshing gear group (multiple meshing gear groups) 16X Sixth meshing gear group (multiple meshing gear groups) J1 First pivot axis (multiple pivot axes) J2 Second pivot axis (multiple pivot axes) J3 Third pivot axis (multiple pivot axes) J4 Fourth rotation axis (multiple rotation axes) J5 Fifth rotation axis (multiple rotation axes) J6 6th rotation axis (multiple rotation axes) 50 Control device 51 Display section 52 Input section 53 Memory section 54 Acquisition Department 55 Control Unit 60 Detection device 61 3D Scanners 62 Laser Tracker

Claims

1. The arms and, A pivot shaft provided corresponding to the aforementioned arm, A group of meshing gears provided corresponding to the aforementioned pivot shaft, An acquisition unit that rotates the arm portion around the aforementioned pivot axis to acquire gear error information of the meshing gear group, A control unit that controls the rotation of the arm portion around the pivot axis based on the gear error information of the meshing gear group, A robot control device characterized by having the following features.

2. The aforementioned arm has multiple arm sections, The rotating part has a plurality of rotating shafts provided corresponding to the plurality of arm parts, The aforementioned meshing gear group includes a plurality of meshing gear groups provided corresponding to the plurality of pivot shafts, The acquisition unit rotates a specific arm among the multiple arm parts around a specific rotation axis among the multiple rotation axes to acquire gear error information of a specific group of meshing gears among the multiple meshing gear groups. The control unit controls the rotation of the specific arm around the specific pivot axis based on the gear error information of the specific meshing gear group. The robot control device according to feature 1.

3. The aforementioned specific arm, the aforementioned specific pivot shaft, and the aforementioned specific meshing gear group are defined as a set of one arm, one pivot shaft, and one meshing gear group in the plurality of arm, the plurality of pivot shafts, and the plurality of meshing gear groups. The acquisition unit performs an acquisition process for each set of a specific arm, a specific rotation shaft, and a specific meshing gear group, relating to all sets of the plurality of arms, the plurality of pivot shafts, and the plurality of meshing gear groups. The control unit performs control processing for each set of a specific arm, a specific pivot shaft, and a specific meshing gear group, relating to all sets of the plurality of arms, the plurality of pivot shafts, and the plurality of meshing gear groups. The robot control device according to claim 2.

4. The acquisition unit acquires the gear error information of the specific meshing gear group multiplied by the difference information between the rotation command position of the specific arm around the specific rotation axis and the actual rotational position of the specific arm around the specific rotation axis. The control unit controls the rotation of the specific arm around the specific pivot axis based on the gear error information of the specific meshing gear group multiplied by the difference information. The robot control device according to claim 2.

5. The control unit controls the rotation of the specific arm around the specific rotation axis based on a rotation correction parameter for the specific arm around the specific rotation axis, which is obtained by summing the rotation command parameter for the specific arm around the specific rotation axis, the DH parameter used in the robot design, and the periodic perturbation parameter resulting from the machining accuracy of the gear structure or robot parts. The robot control device according to claim 2.

6. The control unit controls the rotation of the specific arm around the specific rotation axis based on a rotation correction parameter for the specific arm around the specific rotation axis, which is obtained by summing the rotation command parameter for the specific arm around the specific rotation axis, the DH parameter during robot design, the periodic perturbation parameter due to the machining accuracy of the gear structure or robot parts, and the deflection parameter for the specific arm. The robot control device according to claim 2.

7. The control unit uses the rotational correction parameter obtained by summing the deflection parameters of the specific arm when one of the plurality of arms is designated as the specific arm, while using the rotational correction parameter obtained by not summing the deflection parameters of the specific arm when another of the plurality of arms is designated as the specific arm. The robot control device according to claim 6.

8. The aforementioned periodic perturbation parameter includes the gear error information of the particular meshing gear group. A robot control device according to any one of claims 5 to 7.

9. The arms and, A pivot shaft provided corresponding to the aforementioned arm, A group of meshing gears provided corresponding to the aforementioned pivot shaft, A robot control method for controlling a robot having The steps include: rotating the arm around the pivot axis to acquire gear error information of the meshing gear group; A step of controlling the rotation of the arm portion around the pivot axis based on the gear error information of the meshing gear group, A robot control method characterized by having the following features.