Robot control method and control device
The described method and device address the issue of backlash in robots by generating a model to dynamically compensate for variations in backlash based on movement direction and speed, enhancing positional accuracy in transport robots.
Patent Information
- Application Number
- JP2024055627
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-29
- Publication Date
- 2025-10-10
AI Technical Summary
Existing methods for correcting backlash in robots are inadequate for ensuring accurate positioning, particularly in transport robots, as they fail to account for variations in backlash amount due to different operating speeds and directions.
A control method and device that generate a model based on system identification of backlash variations with respect to movement direction and speed, allowing for dynamic compensation of backlash by calculating a specific correction amount for each axis.
Enables the robot to reach target positions more accurately by compensating for backlash based on operating speed and direction, thereby improving positional accuracy.
Smart Images

Figure 2025153248000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to the control of an industrial robot (hereinafter referred to as a robot), and more particularly to a control method and a control device for reducing the effects of backlash in a robot. [Background technology]
[0002] The arms and hands of each axis of a robot are driven by servo-controlled motors via gears and reducers. Gears and reducers generate backlash, and in the case of a transport robot that uses a hand to hold a workpiece, backlash can cause positioning errors in the hand. To give a position command to the robot and transport the workpiece to the desired position, it is necessary to stop the hand accurately at the target position, which requires correction based on the amount of backlash. A known method of correcting backlash is to define a backlash compensation amount as a constant and add the backlash compensation amount to the position command to servo-control the motors of each axis.
[0003] As a technology for more accurate backlash correction, Patent Document 1 discloses a vertical articulated robot equipped with a laser cutting device or the like at its tip for processing workpieces. The technology prevents errors in the robot's trajectory during movement due to backlash during motor reversal by performing backlash correction using a correction amount that increases stepwise when the motor reverses and decreases with the time elapsed since the motor reverses, while also taking into account the effect of torsion occurring in the reducer depending on the torque during motor reversal. Furthermore, Patent Document 2, which is not related to backlash correction, discloses a method for compensating for rotational irregularities occurring in a reducer with nonlinear characteristics, in which a servo system stores in advance a rule-based relationship between the gain and phase of the motor speed, the motor's rotation direction, and the fluctuation range of the rotational irregularities, performs rule-based inference based on the stored data to determine optimal gain and phase, and determines the amount of compensation for the rotational irregularities based on the determined gain and phase. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] International Publication No. 2020 / 008751 [Patent Document 2] Japanese Patent Application Publication No. 4-55915 Summary of the Invention [Problem to be solved by the invention]
[0005] According to the results of the inventors' investigations, while deviations in the robot's trajectory during movement are tolerable to a certain extent, in a transport robot that is required for the robot's hand to accurately reach a target position at the end of its movement, it has been found that the effects of backlash cannot be sufficiently eliminated by simply adding a constant backlash compensation amount to a position command. The technology described in Patent Document 1 is a technology that prevents deviations in the robot's trajectory during movement, but it cannot fully eliminate the effects of backlash when the robot completes its movement. Furthermore, the technology described in Patent Document 2 is a technology that reduces the effects of rotational irregularities that occur periodically as the reducer shaft rotates, and cannot be used to correct backlash.
[0006] An object of the present invention is to provide a control method and a control device that can eliminate the influence of backlash and move a robot to a target position more accurately. [Means for solving the problem]
[0007] The inventors evaluated the amount of backlash from the difference in the position reached by the robot when it was moved toward the same target position from different directions, and found that the amount of backlash differs depending on the robot's operating speed. In order to move the robot to the target position regardless of its operating speed, it is necessary to change the amount of backlash compensation depending on the robot's operating speed, and it is necessary to be able to calculate such a backlash compensation amount.
[0008] Therefore, one embodiment of the control method is a control method for a robot in which the motors of each axis are servo-controlled, and includes a model generation step of measuring the position reached by the robot when the robot is operated relative to a first target position while changing the movement direction and movement speed for each axis, and performing system identification regarding the movement direction, movement speed, and deviation of the reached position from the first target position to generate a model.
[0009] One embodiment of the control device is a control device that has a servo control unit and servo-controls the motors of each axis of a robot based on commands, and is equipped with: a model storage unit that stores a model relating to the movement direction and movement speed of each axis of the robot and the deviation of the robot's arrival position from a first target position; a correction amount calculation unit that calculates the movement direction and movement speed from the command and applies the calculated movement direction and movement speed to the model to obtain a backlash correction amount; and a command correction unit that adds the backlash correction amount to a second target position extracted from the command, and the servo control unit servo-controls the motor based on the second target position to which the backlash correction amount has been added in the command correction unit. [Effects of the Invention]
[0010] According to the present invention, the influence of backlash can be eliminated, and the robot can be moved to a target position more accurately. [Brief explanation of the drawings]
[0011] [Figure 1] 1A and 1B are a side view and a front view, respectively, showing an example of a robot to which a control method according to the present invention can be applied. [Figure 2] FIG. [Figure 3] 10(a) and 10(b) are graphs showing the deviation of the arrival position from the target position due to differences in the turning direction. [Figure 4] (a) is a flowchart illustrating the creation of the model, and (b) is a flowchart illustrating backash correction based on the model. [Figure 5] FIG. 2 is a block diagram showing the configuration of a control device. DETAILED DESCRIPTION OF THE INVENTION
[0012] Next, an embodiment of the present invention will be described with reference to the drawings. Figures 1 and 2 are diagrams illustrating an example of a robot to which a control method of an embodiment is applied. In Figure 1, (a) is a side view of the robot 10, and (b) is a front view of the robot 10. Figure 2 is a plan view of the robot 10.
[0013] The illustrated robot 10 is a horizontally articulated robot designed to transport a workpiece 50, such as a glass substrate, between process devices that perform various processes on the workpiece 50. FIG. 2 also illustrates load-lock chambers 61-63 provided in each process device for storing (transferring) the workpiece 50. The robot 10 is configured as a so-called double-hand robot equipped with two hands 13A and 13B, each of which holds a workpiece 50 (not shown in FIG. 1(b)). As shown in FIG. 1(a), the robot 10 is electrically connected via a cable to a control device (robot controller) 40 that receives external operation commands for the robot 10 and drives and controls the robot 10 based on these operation commands. The robot 10 and the control device 40 connected to the robot 10 constitute an industrial robot system. Note that FIG. 1(a) shows the robot 10 with its horizontally articulated mechanism raised, while FIG. 1(b) shows the horizontally articulated mechanism lowered.
[0014] The robot 10 includes a base 22 that is movable on a pair of parallel rails 21 that are linearly arranged on the floor surface FL (see FIG. 1(b)), a rotating platform 23 that is arranged on the base 22 and rotates in a horizontal plane around a rotation axis 31, and an elevating mechanism 24 that is arranged upright relative to the rotating platform 23. A motor is attached to the base 22 for horizontally moving the entire robot 10 along the rails 21. A cover 25 is attached to the rails 21. The base 22 also includes a motor, also referred to as a TH-axis motor, that is separate from the horizontal movement motor and rotates the rotating platform 23 around the rotation axis 31 relative to the base 22. The elevating mechanism 24 includes a fixed part 24A that is attached to the rotating platform 23 and a moving part 24B that is raised and lowered relative to the fixed part 24A by the motor. A motor that raises and lowers the moving part 24B is provided in the fixed part 24A, and the moving part 24B is raised and lowered by the lifting motor. Here, an XYZ Cartesian coordinate system is defined in the space in which the robot 10 is installed. The XY plane is a horizontal plane, the X direction is the direction in which the rail 21 extends, the Y direction is the direction perpendicular to the X direction, and the Z direction is the vertical direction.
[0015] Moving unit 24B is provided with arm support units 26A and 26B extending horizontally, each holding a horizontal multi-joint mechanism, and each arm support unit 26A and 26B has a horizontal multi-joint mechanism attached to its tip. The upper horizontal multi-joint mechanism includes a first arm 11A attached to arm support unit 26A and rotatable in a horizontal plane around a common axis 32, and a second arm 12A attached to the tip of first arm 11A and rotatable in a horizontal plane around axis 33A, with hand 13A attached to the tip of second arm 12A. Similarly, the lower horizontal multi-joint mechanism includes a first arm 11B attached to arm support unit 26B and rotatable in a horizontal plane around common axis 32, and a second arm 12B attached to the tip of first arm 11B and rotatable in a horizontal plane around axis 33B, with hand 13B attached to the tip of second arm 12B.
[0016] The hands 13A and 13B are fork-shaped with multiple rod-shaped members arranged in parallel so that they can transport the plate-shaped workpiece 50 while maintaining it in a horizontal position by holding it from below. That is, the hands 13A and 13B are designed to hold the workpiece 50 on the hands 13A and 13B. The hands 13A and 13B move forward or backward relative to the workpiece 50 when holding and removing the workpiece 50 stored in the load lock chambers 61 to 63 or a cassette on the hands 13A and 13B, or when storing the held workpiece 50 in the load lock chambers 61 to 63, etc. The direction in which the hands 13A and 13B move forward or backward is parallel to the direction in which the rod-shaped members extend.
[0017] The horizontal articulated mechanism of the robot 10 is configured such that the hands 13A, 13B move forward and backward by linear motion in a direction perpendicular to the extension direction of the arm support 26, using link mechanisms incorporated into the first arms 11A, 11B and the second arms 12A, 12B. That is, both hands 13A, 13B move forward and backward in the same direction. Movement of the tips of the hands 13A, 13B away from the common axis 32 is forward motion, and movement in the opposite direction to the forward motion is backward motion. The first arms 11A, 11B and the second arms 12A, 12B perform bending motion as a whole. To maintain the orientation of the hands 13A, 13B in a constant horizontal plane, the hands 13A, 13B are attached to the tips of the second arms 12A, 12B so that they can rotate in a horizontal plane around wrist axes 34A, 34B, respectively. In the upper horizontal multi-joint mechanism, the first arm 11A and the second arm 12A are driven by a motor provided in the arm support unit 26, and the hand 13A moves in a direction perpendicular to the extension direction of the arm support unit 26 while maintaining its orientation. Similarly, in the lower horizontal multi-joint mechanism, the first arm 11B and the second arm 12B are driven by a motor provided in the arm support unit 26, and the hand 13B moves in a direction perpendicular to the extension direction of the arm support unit 26 while maintaining its orientation. In the robot 10, the two hands 13A and 13B can be moved forward and backward independently. In the following description, the forward and backward movement of the hands 13A and 13B by the link mechanisms incorporated in the first arms 11A and 11B and the second arms 12A and 12B is referred to as arm extension and retraction movement.
[0018] Ultimately, the movements of the robot 10 can be divided into horizontal movement along the rail 21 (this is referred to as X-axis or travel axis movement), rotation of the lifting mechanism 24 relative to the base 22 around the rotation axis 31 (this is referred to as TH-axis or pivot axis movement), forward and backward movement of the hands 13A and 13B, i.e., arm extension and retraction movement (this is referred to as R-axis movement), and raising and lowering of the arm support unit 26 by the lifting mechanism 24 (this is referred to as Z-axis movement), each of which is driven by a motor for each axis provided on the robot 10. In the robot 10, by driving the motor for each axis, it is possible to move, for example, the hands 13A and 13B to a desired position. The robot 10 performs an operation of moving only one of these axes or an operation of moving two or more axes simultaneously, under drive control from the control device 40 in response to a command corresponding to the movement operation.
[0019] The following describes the transportation of a workpiece 50 such as a glass substrate using a robot 10. In the illustrated example, load lock chambers 61 and 63 are provided at positions where both ends of the rail 21 in the longitudinal direction are extended, and a load lock chamber 62 is provided at a position away from the rail 21 in the Y direction. In FIG. 2, the first arm 11A and the second arm 12A are extended, and the hand 13A holding the workpiece 50 has already advanced to the placement position of the workpiece 50 inside the load lock chamber 62. The shapes of the workpiece 50 when it is in the placement position in the load lock chambers 61 and 63 are indicated by the reference numerals 51 and 53, respectively.
[0020] When transferring the workpiece 50 between the load-lock chambers 61-63 by holding the workpiece 50 with the hand 13A, first, with both hands 13A and 13B retracted and the first arms 11A and 11B and the second arms 12A and 12B folded, i.e., with the arms retracted, the robot 10 is moved along the rail 21 to a position where it can access the unloading load-lock chamber, and then the robot 10 is rotated around the rotation axis 31 so that the hand 13A faces the unloading load-lock chamber. Next, the arm support part 26A is raised and lowered by the lifting mechanism 24 so that the height of the hand 13A corresponds to the height of the unloading load-lock chamber. Then, the arm is extended to move the hand 13A forward and enter the unloading load-lock chamber, and the hand 13A is slightly raised to place the workpiece 50 on the hand 13A. Thereafter, the arm is retracted to move the hand 13A back, and the hand 13A together with the workpiece 50 is pulled out from the load lock chamber on the unloading side.
[0021] Next, with the workpiece 50 loaded, the robot 10 is moved along the rail 21 to a position facing the load-lock chamber on the loading side, and the robot 10 is rotated around the rotation axis 31 so that the hand 13A faces the load-lock chamber on the loading side. Next, the arm support part 26A is raised and lowered by the lifting mechanism 24 so that the height of the hand 13A corresponds to the height of the load-lock chamber on the loading side. Then, the hand 13A with the workpiece 50 loaded is advanced to enter the second cassette, and the hand 13A is slightly lowered to place the workpiece 50 in the load-lock chamber on the loading side, and the hand 13A is retracted to withdraw the hand 13A from the load-lock chamber. The workpiece 50 is transported by the above operations. A similar operation is performed when transporting the workpiece 50 by the hand 13B.
[0022] When the robot 10 transports the workpiece 50 based on an operation command during actual operation, it is moved as fast as possible within the range of the maximum rated speed of the motor or arm for each axis of the robot 10. The operating speed at this time is called the 100% speed. In contrast, when teaching the robot 10, it is necessary to move the robot 10 at a slower speed, so the robot 10 is operated at a speed in which the speed of each axis is reduced by a uniform ratio from the speed at 100% speed. When teaching, the robot 10 is operated so that the speed of each axis is, for example, 5% or 10% of when it is operated at 100% speed.
[0023] The effect of backlash on the robot 10 shown in Figures 1 and 2 will be explained. Assuming that the load lock chamber on the loading side is the load lock chamber 62, consider transporting a workpiece 50 to the load lock chamber 62. After the robot 10 moves to a position where it can access the load lock chamber 62, it rotates around the rotation axis 31 so that the hand 13A faces the load lock chamber 62, and then the hand 13A enters the inside of the load lock chamber 62. As shown in Figure 2, the direction of rotation around the rotation axis 31 is the negative direction when the load lock chamber 61 is the unloading load lock chamber. In contrast, when the load lock chamber 63 is the unloading load lock chamber, the direction of rotation is the positive direction. Because the rotation directions are different, when backlash is considered as a deviation from the target position, the direction and magnitude of the deviation generally differ depending on the unloading load lock chamber.
[0024] The inventors investigated the relationship between the rotation speed around the rotation axis 31 and the amount of backlash for the robot 10 shown in Figures 1 and 2. Here, assuming that the robot 10 has already moved to a position where it can access the load lock chamber 62, the robot 10 rotates around the rotation axis 31 in both the negative and positive directions to orient the hand 13A toward the load lock chamber 62. The inventors investigated the deviation in the X direction of the target position of the hand 13A after the rotation. The results are shown in Figures 3(a) and 3(b). The arm vibrates immediately after the rotation, causing the position of the hand 13A to vibrate. However, after 2 or 2.5 seconds have elapsed since the rotation ended, the position of the hand 13A remains almost constant. Focusing on the period from 2.5 seconds to 3 seconds after the rotation ended, the maximum difference between the position of the hand 13A after the rotation in the positive direction and the position of the hand 13A after the rotation in the negative direction was determined as the deviation in the target position. Figure 3(a) shows the case where the operating speed is a low 5% speed, and the arrival position of the hand 13A after turning in the negative direction is shifted by 2.3 mm from that after turning in the positive direction. In contrast, Figure 3(b) shows the case where the operating speed is a high 100% speed, and the arrival position of the hand 13A after turning in the negative direction is shifted by 0.4 mm from that after turning in the positive direction.
[0025] The results shown in Figure 3 reveal that the amount of backlash also varies depending on the operating speed of the robot 10. This means that if the robot 10 is taught to operate at a low speed and the target position of the hand 13A is set, and the robot 10 is operated at 100% speed during actual operation to transport the workpiece 50, the workpiece 50 will be placed at a position that is different from the taught placement position. Here, we have explained the difference in the amount of backlash depending on the operating speed when rotating around the rotation axis 31. Similarly, when the robot 10 is moved along the traveling axis, the amount of backlash varies depending on the traveling direction and operating speed. Since both the turning direction and traveling direction can be considered the movement direction of the robot 10, we can conclude that in a transport robot 10, the amount of backlash varies for each axis based on the movement direction and operating speed of that axis.
[0026] When the amount of backlash varies depending only on the direction of motion, backlash can be compensated for by calculating a backlash compensation amount for each direction of motion in advance and adding the backlash compensation amount to the target position according to the direction of motion. However, when the amount of backlash also varies depending on the operating speed, the effect of backlash cannot be eliminated by simply adding a constant backlash compensation amount to the target position. Therefore, in one embodiment of the control method, in order to compensate for backlash differences based on the direction and operating speed, a model is created in advance by performing system identification of the robot 10 so that the change in backlash amount depending on the operating speed can be represented. When a command is actually input to the robot, the model is referenced to calculate the backlash compensation amount and the backlash compensation amount is added to the target position. This makes it possible to compensate for backlash according to the operating speed of the robot 10, enabling the robot 10 to reach the target position more accurately. Details of backlash compensation in this embodiment are described below.
[0027] FIG. 4 is a diagram illustrating a control method according to an embodiment, in which (a) is a flowchart illustrating model generation, and (b) is a flowchart illustrating backlash correction based on the model. In this embodiment, first, a model used for backlash correction is generated for the robot 10. Model generation only needs to be performed once for the robot 10, and thereafter, backlash correction can be performed based on the previously created model. In model generation, as shown in FIG. 4(a), in step 101, the robot 10 is actually moved toward a target position (i.e., a first target position) for model generation while changing the movement direction and movement speed, and the reached position is measured. Then, in step 102, system identification of the robot 10 is performed with respect to the movement direction, movement speed, and the deviation of the reached position from the first target position, and a model is generated. This model represents the backlash that occurs depending on the movement direction and movement speed of the robot 10.
[0028] Once the model is created, backlash correction in the robot 10 is performed based on this model. When a command to move the robot 10 is input to the robot 10, in step 111, the movement direction and movement speed of the robot 10 are calculated from the input command, as shown in FIG. 4(b). In step 112, the calculated movement direction and movement side are applied to the model to obtain a backlash correction amount for each axis of the robot 10 to be controlled. Then, in step 113, the backlash correction amount is added to the target position (i.e., second target position) of the axis to be controlled extracted from the command, and servo control of the motor of that axis is started. As a result, backlash correction is performed according to the movement direction and movement speed for each axis of the robot 10, reducing the effect of backlash in the robot 10 and enabling the robot 10 to be moved more accurately to the second target position.
[0029] In the robot 10 shown in FIGS. 1 and 2, backlash is virtually eliminated during movement in the vertical direction due to gravity acting on the arms, etc., so backlash compensation along the vertical axis is generally not required. Because the entry speed of the hands 13A, 13B into the load-lock chambers 61-63 is low and the movement direction is always the same, backlash compensation is not necessary, or compensation using a constant backlash compensation value is sufficient. Therefore, for the robot 10 shown in FIGS. 1 and 2, it is sufficient to perform backlash compensation for movement along the travel axis and for rotation around the rotation axis 31. In the case of this robot 10, rotation around the rotation axis 31 does not generally occur when the robot 10 moves along the travel axis, and when rotating around the rotation axis 31, the robot 10 does not generally travel along the travel axis. Therefore, a model for correcting backlash related to the traveling axis and a model for correcting backlash related to rotation around the rotation axis 31 are generated independently, and the movement direction and movement speed of each axis are applied to the model corresponding to that axis to calculate the backlash correction amount for that axis.
[0030] FIG. 5 is a block diagram showing an example of the configuration of a control device 40 that implements the above-described control method. The control device 40 controls and drives the robot 10 based on commands input from an external device. In particular, the control device 40 includes a servo control unit 41 for controlling the motors of each axis of the robot 10 based on the commands. The control device 40 also includes a model storage unit 42 that stores the model generated as described with reference to FIG. 4(a), a correction amount calculation unit 43 that calculates a movement direction and movement speed from the command input to the control device 40 and applies the calculated movement direction and movement speed to the model stored in the model storage unit 42 to obtain a backlash correction amount, and a command correction unit 44 that adds the backlash correction amount to a target position extracted from the command. The command correction unit 44 outputs a command that has undergone backlash correction, and this corrected command is input to the servo control unit 41. As a result, by using the control device 40 shown in FIG. 5, the influence of backlash is reduced in the robot 10, enabling the robot 10 to more accurately reach the target position specified in the command input to the control device 40 from an external device.
[0031] The above has described backlash compensation for the horizontally articulated robot 10 shown in Figures 1 and 2, but by performing backlash compensation using a procedure similar to that of this embodiment in robots other than the robot 10 shown in Figures 1 and 2, it is possible to move the robot more accurately to a target position specified by a command. In this case, by performing the above-described backlash compensation on axes that are not related to the lifting and lowering operation or the extension and retraction of the hand, it is possible to reduce the amount of calculation required for performing backlash compensation.
[0032] An example of a configuration for implementing the present invention has been described above, but the above technology can also be configured as follows.
[0033] (1) A method for controlling a robot in which the motors of each axis are servo-controlled, comprising: A control method comprising a model generation step of measuring an attained position of the robot when the robot is operated relative to a first target position while changing the movement direction and movement speed for each axis, and performing system identification related to the movement direction, the movement speed, and the deviation of the attained position from the first target position to generate a model.
[0034] (2) a correction amount calculation step of, when a command for the robot is input, calculating the movement direction and the movement speed from the command and applying them to the model to obtain a backlash correction amount; a servo control step of adding the backlash correction amount obtained in the correction amount calculation step to a second target position, which is a target position of the robot designated by the command, and performing servo control on the motor; The control method according to (1),
[0035] (3) generating the model for each axis of the robot in the model generating step; The control method according to (2), wherein in the correction amount calculation step, the movement direction and the movement speed of each axis of the robot are calculated to obtain the backlash correction amount of each axis.
[0036] (4) The control method according to (2) or (3), wherein the robot is a transport robot having a hand at its tip for holding a workpiece.
[0037] (5) A control method according to (4), in which the model generation process and the correction amount calculation process are performed for each axis of the robot except for an axis related to the extension and contraction of the hand and an axis related to the elevation and lowering of the hand.
[0038] (6) A control device that includes a servo control unit and servo-controls the motors of each axis of a robot based on a command, a model storage unit that stores a model relating to a motion direction and motion speed for each axis of the robot and a deviation of an arrival position of the robot from a first target position; a correction amount calculation unit that calculates the movement direction and the movement speed from the command and applies the calculated movement direction and the movement speed to the model to obtain a backlash correction amount; a command correction unit that adds the backlash correction amount to a second target position extracted from a command. The servo control unit performs servo control of the motor based on the second target position to which the backlash correction amount has been added in the command correction unit.
[0039] (7) the model storage unit stores the model created for each axis of the robot; The control device according to (6), wherein the correction amount calculation unit calculates the movement direction and the movement speed for each axis of the robot and calculates the backlash correction amount for that axis.
[0040] (8) The control device according to (5) or (6), wherein the robot is a transport robot having a hand at the tip for holding a workpiece.
[0041] (9) The control device according to (8), wherein the model for each axis of the robot, excluding the axis for extension and contraction of the hand and the axis for raising and lowering of the hand, is stored in the model storage unit.
[0042] According to the configuration shown in (1), a model can be obtained that gives the amount of backlash when the movement direction and movement speed of each axis of the robot are given, so that the backlash correction amount according to the movement speed can be easily calculated. This makes it possible to eliminate the influence of backlash and move the robot to the target position more accurately.
[0043] According to the configurations (2) and (6), the direction of movement and the amount of backlash compensation corresponding to the direction of movement are calculated based on commands to the robot, and servo control is performed taking the amount of backlash compensation into account, allowing the robot to reach the target position more accurately.
[0044] According to the configurations (3) and (7), a model is created for each axis of the robot and the backlash compensation amount is calculated for each axis, so the amount of calculation required to create the model and calculate the backlash compensation amount can be reduced.
[0045] According to the configurations (4) and (8), in a transport robot that requires higher accuracy in the stopping position of the robot after movement compared to the trajectory during movement, high accuracy can be achieved in the stopping position.
[0046] According to the configurations (5) and (9), it is not necessary to perform calculations for axes that do not significantly contribute to the accuracy of the stopping position of the transport robot, and therefore the amount of calculations can be reduced. [Explanation of symbols]
[0047] 10...Robot; 11A, 11B...First arm; 12A, 12B...Second arm; 13A, 13B...Hand; 21...Rail; 22...Base; 23...Rotating table; 24...Lifting mechanism; 24A...Fixed part; 24B...Moving part; 25...Cover; 26A, 26B...Arm support part; 31...Rotating axis; 32...Common axis; 33A, 33B...Axis; 34A, 34B...Wrist axis; 36...Motor; 37Encoder; 38...Reduction gear; 39...Load; 40...Control device; 41...Servo control part; 42...Model storage part; 43...Correction amount calculation part; 44...Command correction part; 50...Work; 61-63...Load lock chamber
Claims
1. A control method for a robot in which the motors of each axis are servo-controlled, comprising: a model generation step of measuring an attained position of the robot when the robot is operated relative to a first target position while changing the movement direction and movement speed for each axis, and performing system identification related to the movement direction, the movement speed, and the deviation of the attained position from the first target position to generate a model.
2. a correction amount calculation step of, when a command is input to the robot, calculating the movement direction and the movement speed from the command and applying them to the model to obtain a backlash correction amount; a servo control step of adding the backlash correction amount obtained in the correction amount calculation step to a second target position, which is a target position of the robot designated by the command, and performing servo control on the motor; The control method of claim 1 , comprising:
3. In the model generation step, the model is generated for each axis of the robot; 3. The control method according to claim 2, wherein in the correction amount calculation step, the movement direction and the movement speed of each axis of the robot are calculated to obtain the backlash correction amount for each axis.
4. 4. The control method according to claim 2, wherein the robot is a transport robot having a hand at its tip for holding a workpiece.
5. 5. The control method according to claim 4, wherein the model generating step and the correction amount calculating step are performed for each axis of the robot except for an axis related to extension and contraction of the hand and an axis related to elevation and lowering of the hand.
6. A control device that includes a servo control unit and servo-controls the motors of each axis of a robot based on a command, a model storage unit that stores a model relating to a motion direction and a motion speed for each axis of the robot and a deviation of an arrival position of the robot from a first target position; a correction amount calculation unit that calculates the movement direction and the movement speed from the command and applies the calculated movement direction and the movement speed to the model to obtain a backlash correction amount; a command correction unit that adds the backlash correction amount to a second target position extracted from a command. The servo control unit performs servo control of the motor based on the second target position to which the backlash correction amount has been added in the command correction unit.
7. the model storage unit stores the model created for each axis of the robot; The control device according to claim 6 , wherein the correction amount calculation unit calculates the movement direction and the movement speed for each axis of the robot, and calculates the backlash correction amount for that axis.
8. 8. The control device according to claim 6, wherein the robot is a transport robot having a hand at its tip for holding a workpiece.
9. 9. The control device according to claim 8, wherein the model for each axis of the robot excluding an axis for extension and contraction of the hand and an axis for elevation and lowering of the hand is stored in the model storage unit.
Citation Information
Patent Citations
Robot servo controller
JP1992055915A
Robot control method and robot control device
WO2020008751A1