Robot teaching method and teaching system

The computer-based robot teaching method addresses the inefficiency of conventional offline teaching by extracting and outputting similar teaching points, thereby reducing operator workload and improving positional error correction for robots.

WO2025069988A1PCT designated stage expired Publication Date: 2025-04-03KAWASAKI JUKOGYO KK
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/031990
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-27
Filing Date
2024-09-06
Publication Date
2025-04-03

AI Technical Summary

Technical Problem

Conventional offline teaching devices for robots require significant operator effort to correct absolute positional errors, especially when dealing with multiple teaching points and changes in workpieces, leading to increased workload and inefficiency.

Method used

A computer-based method that reads teaching points for a robot controlled using an absolute position error correction model, extracts teaching points based on similarity of robot actions, and outputs these extracted points to reduce the operator's workload in adjusting corrections.

Benefits of technology

This method significantly reduces the operator's workload by identifying similar robot actions across multiple teaching points, allowing for efficient suppression of absolute positional errors without the need for extensive manual correction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024031990_03042025_PF_FP_ABST
    Figure JP2024031990_03042025_PF_FP_ABST
Patent Text Reader

Abstract

This robot teaching method causes a computer to execute the following: reading a plurality of teaching points (t1)-(t13) for a robot (2) controlled using an absolute position error correction model (41) to perform work on a workpiece (31, 32), the teaching points being given to the robot by offline teaching; extracting, from the plurality of teaching points, teaching points for which correction by the correction model is to be adjusted on the basis of the similarity of the operations of the robot at the plurality of teaching points; and outputting the extracted teaching points.
Need to check novelty before this filing date? Find Prior Art

Description

Robot teaching method and teaching system

[0001] The technology disclosed herein relates to a robot teaching method and a teaching system.

[0002] Patent Document 1 describes a conventional offline teaching device. The conventional offline teaching device uses a neural network to suppress absolute position errors in a six-axis vertical articulated robot. The conventional offline teaching device corrects teaching points given to the robot using a mathematical model. The conventional offline teaching device also inputs the teaching points corrected using the mathematical model into a neural network, thereby obtaining, as an output from the neural network, a correction amount for further correcting the position error of the corrected teaching points. The robot control device corrects the teaching points corrected using the mathematical model using the correction amount, which is the output from the neural network, and then controls the robot.

[0003] Japanese Unexamined Patent Publication No. 6-114769

[0004] The absolute position error of a robot is mainly due to individual differences between robots. To suppress the absolute position error, the absolute position error is determined for each robot. In offline teaching of a robot, not only in the conventional offline teaching device described above, but also in general, an operator performs the task of determining the absolute position error by actually operating the robot at each teaching point. The more teaching points given to a robot, the greater the amount of work the operator has to do.

[0005] Furthermore, if the type of workpiece differs, the teaching points given to the robot will also change, and every time a new type of workpiece is replaced with a new type of workpiece, the operator must perform a huge amount of work to determine the absolute position error for each teaching point.

[0006] The technology disclosed herein is a robot teaching method in which a computer reads a plurality of teaching points given to the robot by offline teaching, the teaching points being used by a robot controlled using a correction model for absolute position error to perform work on a workpiece, the computer extracts teaching points from the plurality of teaching points that adjust correction by the correction model based on the similarity of the robot's operation at each of the plurality of teaching points, and the computer outputs the extracted teaching points.

[0007] The robot teaching method can reduce the amount of work required to adjust the correction using the correction model.

[0008] FIG. 1 shows a robot teaching system. The upper diagram in FIG. 2 shows the procedure for correcting an absolute position error using a mechanism model, and the lower diagram shows the procedure for correcting an absolute position error using a black-box model. FIG. 3 shows a method for extracting teaching points from teaching points of a second workpiece. FIG. 4 shows the relationship between the similarity of teaching points and the magnitude of the absolute position error of a robot controlled using a trained correction model. FIG. 5 is a flowchart showing the procedure for extracting teaching points executed by the teaching device. FIG. 6 is a flowchart showing the procedure for learning a correction model executed by the teaching device and the controller. FIG. 7 is an illustration showing the difference between the correction model before and after learning. FIG. 8 shows an example in which learned teaching points are classified into multiple groups. FIG. 9 shows a method for extracting teaching points to be used for learning from teaching points of a workpiece during initial learning of a correction model. FIG. 10 shows an example in which similarity is determined based on information about the robot's motion and task. Fig. 11 shows a method for extracting a teaching point group to be used for learning from a plurality of teaching point groups based on the similarity of the teaching point group including a plurality of consecutive teaching points during the initial learning of a correction model. Fig. 12 shows a method for extracting a teaching point group to be used for adjusting the correction by the correction model from a newly given teaching point group when the correction model has already been learned.

[0009] Hereinafter, embodiments of a robot teaching method and teaching system will be described with reference to the drawings. The robot teaching method and teaching system described here are merely examples.

[0010] 1 shows a robot teaching system 1. The teaching system 1 teaches a robot 2 offline.

[0011] The teaching system 1 includes a robot 2. The robot 2 is an industrial robot that performs work on a workpiece 3. Work performed by the robot 2 includes a variety of tasks. The robot 2 may, for example, perform spot welding on the workpiece 3. The robot 2 may, for example, perform laser welding on the workpiece 3. The robot 2 may, for example, perform milling on the workpiece 3. The robot 2 may, for example, perform AFP (Automated Fiber Placement) on the workpiece 3. An end effector according to the work performed by the robot 2 is attached to the robot 2. The robot 2 in the illustrated example performs spot welding on the workpiece 3. A welding gun 21 serving as an end effector is attached to the robot 2.

[0012] The workpiece 3 in the drawing is a car body. The drawing conceptually shows the car body. The workpiece 3 is not limited to a car body.

[0013] In the illustrated example, the robot 2 is an articulated robot. The robot 2 is not limited to an articulated robot. More precisely, the robot 2 is a vertical articulated robot. The robot 2 is not limited to a vertical articulated robot. The robot 2 has multiple joints. Specifically, the robot 2 is a six-axis robot having joints JT1, JT2, JT3, JT4, JT5, and JT6. The number of axes of the robot 2 is not limited to six. The number of axes of the robot 2 may be fewer than six, or may be more than six. Note that the robot 2 may include an external device in addition to the robot that performs the work. The external device is, for example, a positioner or a turntable, or both a positioner and a turntable.

[0014] Each of the joints JT1-JT6 connects adjacent links. Each of the joints JT1-JT6 rotates adjacent links relative to each other around a rotation axis. Each of the joints JT1-JT6 has an actuator. The actuator is a power source that moves the joints JT1-JT6. The actuator is, for example, an electric motor. The electric motor is, for example, a servo motor. Note that the joints of the robot 2 are not limited to joints with rotation axes. The joints of the robot 2 may also be joints with linear axes.

[0015] The teaching system 1 includes a controller 4. The controller 4 controls the robot 2. The controller 4 is a computer including at least a processor, a memory, and an interface. The actuators of the joints JT1-JT6 are electrically connected to the controller 4. The controller 4 outputs control signals to the actuators. The actuators operate in accordance with the control signals. The operation of the actuators causes the robot 2 to perform work on a workpiece 3. In this example, the robot 2 spot welds to the body of an automobile.

[0016] The teaching system 1 includes a teaching device 5. The teaching device 5 performs offline teaching of the robot 2. The teaching device 5 is a computer including at least a processor, a memory, and an interface. The teaching device 5 is connected to a controller 4. The teaching device 5 outputs teaching points to the controller 4. The controller 4 controls the robot 2 in accordance with the teaching points.

[0017] An input device 51 is connected to the teaching device 5. Note that the input device 51 is not an essential element of the teaching system 1. The input device 51 inputs data to the teaching device 5. Examples of data input to the teaching device 5 through the input device 51 include three-dimensional model data of the workpiece 3 and the robot 2. The three-dimensional model data may be so-called CAD (Computer Aided Design) data. The teaching device 5 sets points on the workpiece 3 to be spot-welded by the robot 2, i.e., teaching points, based on the three-dimensional model data of the workpiece 3 and the robot 2. The teaching device 5 sets multiple teaching points for one workpiece 3. In the example of FIG. 1 , the teaching device 5 sets ten teaching points (t1), (t2), (t3), (t4), (t5), (t6), (t7), (t8), (t9), and (t10) for one workpiece 3. The number of teaching points is not limited to a specific number. Information about the teaching point may be input to the teaching device 5 through the input device 51 .

[0018] An output device 52 is connected to the teaching device 5. Note that the output device 52 is not an essential element of the teaching system 1. The output device 52 provides various information to an operator of the teaching device 5. The output device 52 is, for example, a display. The output device 52 may also be, for example, a printer. As will be described later, the output device 52 outputs to the operator information on a teaching point that is extracted from a plurality of teaching points and for which correction by the correction model 41 is to be adjusted.

[0019] (Robot Position Correction) As described above, the robot 2 operates according to the teaching points set by the teaching device 5. When the robot 2 operates, the actual tip position of the robot 2 deviates from the teaching points, i.e., the ideal position. This position deviation is called an absolute position error. The cause of the absolute position error is not limited to a specific factor, but examples include differences in link length and individual actuators, or deflection of the link.

[0020] The controller 4 has a function of correcting absolute position errors. Specifically, the controller 4 has a correction model 41. The correction model 41 corrects the command value to be output to the robot 2 so as to eliminate the absolute position error of the robot 2 with respect to the input teaching point. The controller 4 is not limited to having one correction model 41. As will be described later, the controller 4 may have multiple correction models 41.

[0021] 2 shows steps 42 and 43 of position correction by the controller 4 using a correction model 41. The correction model 41 includes two types of models: a mechanism model 411 and a black box model 412. The controller 4 has the mechanism model 411 or the black box model 412.

[0022] The mechanism model 411 is a model that is set in advance based on the mechanism of the robot 2. The black box model 412 is a model based on a neural network or machine learning. The black box model 412 is not a model based on the mechanism of the robot 2. Note that the black box model 412 is not limited to a neural network or machine learning.

[0023] The position correction procedures 42 and 43 performed by the controller 4 include a learning phase and a correction phase.

[0024] In the learning phase, the controller 4 causes the correction model 41 to learn. Specifically, the robot 2 is actually operated according to the teaching points set by the teaching device 5, and the amount of deviation between the tip position of the robot 2 and the ideal position, or the amount of correction from the tip position to the ideal position, is obtained. The amount of deviation or the amount of correction is obtained by measuring the distance or teaching the robot 2. An operator may measure the distance or teach the robot 2. Alternatively, a measuring device may measure the distance without the intervention of an operator. The measuring device may measure the amount of deviation between the actual tip position of the robot 2 and the ideal position, for example, using a camera.

[0025] The controller 4 learns the correction model 41 based on the teaching points and the acquired deviation amount or correction amount. The learning of the correction model 41 can be performed by a known method.

[0026] Once the correction model 41 is learned, the controller 4 controls the robot 2 using the learned correction model 41 in the correction phase, i.e., when operating the robot 2. The controller 4 inputs teaching points to the correction model 41 and outputs command values ​​corrected by the correction model 41 to the robot 2. The absolute position error of the robot 2 is eliminated or reduced.

[0027] For the initial learning of the correction model 41, the deviation amount or correction amount is acquired for each teaching point given to the controller 4 by the teaching device 5. The greater the number of teaching points given to the workpiece 3, the greater the workload for acquiring the deviation amount or correction amount.

[0028] The workpiece 3 on which the robot 2 performs work is not limited to one type, but the robot 2 performs work on each of a plurality of types of workpieces 3. In the example of spot welding on an automobile body, the plurality of types of workpieces 3 correspond to bodies of different car models, for example.

[0029] 3, the multiple teaching points (t1)-(t10) of the first workpiece 31 are not the same as the multiple teaching points (t11), (t12), and (t13) of the second workpiece 32, which is a different type from the first workpiece 31. Note that in the example of FIG. 3, the number of teaching points of the second workpiece 32 is intentionally reduced to facilitate understanding. In reality, the number of teaching points of the second workpiece 32 is approximately the same as the number of teaching points of the first workpiece 31.

[0030] Even if the correction model 41 has already learned each of the multiple teaching points (t1)-(t10) of the first workpiece 31, it does not necessarily mean that it can accurately suppress absolute position errors for the multiple teaching points (t11), (t12), and (t13) of the second workpiece 32. In order to adjust the correction by the correction model 41 for the second workpiece 32, the operator must once again obtain the amount of deviation or correction for each of the multiple teaching points of the second workpiece 32. Each time the number of types of workpieces 3 increases, the operator will have to perform a huge amount of work to correct the absolute position errors.

[0031] The teaching system 1 and the teaching method for the robot 2 disclosed herein can reduce the amount of work required to adjust the correction using the correction model 41.

[0032] The teaching system 1 and teaching method disclosed herein are based on the following finding of the inventors: that is, a correction model 41 learned for at least one of a plurality of teaching points at which the robot 2 behaves similarly can accurately suppress absolute position errors for the other teaching points of the plurality of teaching points, in the same way as for the one teaching point. Hereinafter, extraction of teaching points based on the similarity of the robot 2's behavior will be described with reference to the drawings.

[0033] Example 1 Fig. 3 shows an example of extracting teaching points for adjusting the correction by the correction model 41 from among a plurality of teaching points of the second workpiece 32 when the correction model 41 has already been learned for the first workpiece 31. Table 61 in Fig. 3 shows the motion of the robot 2 at each of teaching points (t1), (t2), (t3), (t4), (t5), (t6), (t7), (t8), (t9), and (t10) given to the robot 2 for the first workpiece 31. Table 62 in Fig. 3 shows the motion of the robot 2 at each of teaching points (t11), (t12), and (t13) given to the robot 2 for the second workpiece 32. The motion of the robot 2 is represented by the axis values ​​of the joints JT1, JT2, JT3, JT4, JT5, and JT6. In the case of joints JT1, JT2, JT3, JT4, JT5, and JT6 having rotation axes, the axis values ​​may be the angles of the joints JT1, JT2, JT3, JT4, JT5, and JT6. Note that the axis values ​​of the joints are shown in obscured letters in Figure 3.

[0034] Graph 63 in FIG. 3 is a two-dimensional coordinate plot of only the axis values ​​of joints JT1 and JT2 out of the six joints, in order to visually show the movement of robot 2 at teaching points (t1)-(t13).

[0035] The correction model 41 has been trained for all of the teaching points (t1)-(t10) of the first workpiece 31. In the graph 63, the trained correction model 41 is visualized by a closed curve that includes the teaching points (t1)-(t10). It is assumed that the trained correction model 41 can accurately correct the absolute position error of the robot 2 for the teaching points within the closed curve.

[0036] The teaching device 5 receives input of teaching points (t1)-(t10) of the first workpiece 31 and teaching points (t11), (t12), and (t13) of the second workpiece 32. The teaching device 5 determines the similarity of each of the teaching points (t11), (t12), and (t13) of the second workpiece 32 to the teaching points (t1)-(t10) of the first workpiece 31. More precisely, the teaching device 5 determines the similarity of the operation of the robot 2 at each of the teaching points (t11), (t12), and (t13) of the second workpiece 32 to the operation of the robot 2 at the teaching points (t1)-(t10) of the first workpiece 31. Note that hereinafter, the similarity of the operation of the robot 2 at the teaching points will simply be referred to as the similarity of the teaching points.

[0037] The teaching device 5 may determine the similarity using a statistical method. The teaching device 5 may determine the similarity using a known method for determining outliers. Specific examples of known methods for determining outliers include (1) isolation forest, (2) local outlier factor, (3) one-class support vector machine, and (4) hierarchical clustering.

[0038] In the graph 63, the similarity of the teaching points is indicated by the distance between the teaching points. In other words, if the distance between the teaching points is short, they are similar, and if the distance between the teaching points is long, they are dissimilar. Note that the judgment of the similarity of the teaching points is actually based on the movement of the robot 2 represented by the axis values ​​of the six joints JT1-JT6. In the graph 63, even if the coordinates of the teaching points of the first workpiece 31 and the second workpiece are close to each other, it does not necessarily mean that the two teaching points are similar.

[0039] In the example of Figure 3, the teaching points (t11) and (t12) of the second workpiece 32 are close to the teaching points (t1), (t3), (t5), and (t8) of the first workpiece 31. The teaching points (t11) and (t12) of the second workpiece 32 are similar to the teaching points (t1), (t3), (t5), and (t8) of the first workpiece 31. The teaching point (t13) of the second workpiece 32 is far from the teaching points (t1)-(t10) of the first workpiece 31. The teaching point (t13) of the second workpiece 32 is dissimilar to the teaching points (t1)-(t10) of the first workpiece 31.

[0040] For the teaching points (t11) and (t12) of the second workpiece 32, the correction model 41 can accurately suppress the absolute position error of the robot 2. As shown in the graph 63 of FIG. 3, the teaching points (t11) and (t12) are included in the correction model 41. For the teaching point (t13) of the second workpiece 32, the correction model 41 cannot accurately suppress the absolute position error of the robot 2. As shown in the graph 63 of FIG. 3, the teaching point (t13) is not included in the correction model 41.

[0041] Here, with reference to Fig. 4, the relationship between the similarity of the taught points and the magnitude of the absolute position error of the robot 2 controlled using the correction model 41 will be explained. The vertical axis in Fig. 4 represents the similarity of the taught points. The similarity of the taught points is calculated by Isolation Forest based on the motion of the robot 2 represented by the axis values ​​of the joints JT1-JT6. Note that the axis values ​​of the joints JT1-JT6 are angles here.

[0042] The horizontal axis of Figure 4 represents the magnitude of the absolute position error. As can be seen from the figure, there is a correlation between the similarity of the teaching points and the magnitude of the absolute position error, and the higher the similarity of the teaching points, the smaller the absolute position error. In other words, for the teaching points of the second workpiece 32 that are similar to the teaching points of the first workpiece 31, the absolute position error of the robot 2 can be accurately suppressed using the correction model 41. On the other hand, for the teaching points of the second workpiece 32 that are not similar to the teaching points of the first workpiece 31, the absolute position error of the robot 2 cannot be accurately suppressed using the correction model 41. For the teaching points that are not similar to the teaching points of the first workpiece 31, it is better to suppress the absolute position error, in other words, adjust the correction using the correction model 41.

[0043] A tolerance E for the absolute position error may be set in advance. A threshold value for determining whether the points are similar or dissimilar may be set based on the tolerance E. The teaching device 5 determines whether the given teaching points are similar or dissimilar based on the set threshold value.

[0044] The teaching device 5 extracts teaching points for adjusting the correction by the correction model 41 from among the multiple teaching points of the second workpiece 32 based on the aforementioned similarity. The teaching device 5 also provides information on the extracted teaching points to an operator via the output device 52. The operator teaches, for example, the robot 2, only the provided teaching points. By teaching the robot 2, the absolute position error at the teaching points is suppressed. Of the multiple teaching points of the second workpiece 32, teaching points that were not provided via the output device 52 do not need to be taught. Because the operator does not need to teach the robot 2 about all teaching points of the second workpiece 32, the amount of operator work is reduced compared to conventional methods. Teaching the robot 2 is an example of adjusting the correction by the correction model 41.

[0045] 5 shows a procedure for extracting teaching points executed by the teaching device 5. In step S11, the teaching device 5 reads teaching points via the input device 51. In the example of FIG. 3, the teaching device 5 reads teaching points (t1)-(t10) for the first workpiece 31 and multiple teaching points (t11), (t12), and (t13) for the second workpiece 32.

[0046] In the next step S12, the teaching device 5 determines the similarity of the read teaching points. In the example of Fig. 3, the teaching device 5 determines the similarity of each of the plurality of teaching points (t11), (t12), and (t13) for the second workpiece 32 to the teaching points (t1)-(t10) for the first workpiece 31.

[0047] In step S13, the teaching device 5 outputs the teaching points extracted based on the similarity determination in step S12 through the output device 52. In the example of Fig. 3, the teaching device 5 outputs only the teaching point (t13) that is not similar to the teaching point of the first workpiece 31, among the teaching points (t11), (t12), and (t13) of the second workpiece 32.

[0048] (Effects) As described above, when the correction model 41 has been learned for the first workpiece 31, the teaching system 1 extracts teaching points for teaching the robot 2 from among the multiple teaching points of the second workpiece 32. The extraction of teaching points is based on the similarity of the operation of the robot 2 between the teaching points of the first workpiece 31 and the teaching points of the second workpiece 32. Of the teaching points of the second workpiece 32, the number of teaching points at which the robot 2 is actually taught is reduced. The teaching system 1 and teaching method can reduce the workload of the operator.

[0049] Second Embodiment In the first embodiment, the operator instructs the robot 2 based on the teaching points provided through the output device 52. Instead of instructing the robot 2, the correction model 41 may be learned. The learning of the correction model 41 is an example of adjusting the correction by the correction model 41.

[0050] 6 shows a procedure for learning the correction model 41, which is executed by the teaching device 5 and the controller 4. In step S21, the teaching device 5 reads teaching points through the input device 51. In this example, similar to the example in FIG. 3, the teaching device 5 reads a plurality of teaching points (t1)-(t10) for the first workpiece 31 and a plurality of teaching points (t11), (t12), and (t13) for the second workpiece 32.

[0051] In the next step S22, the teaching device 5 determines the similarity of the read teaching points. In this example, the teaching device 5 determines the similarity of each of the plurality of teaching points (t11), (t12), and (t13) for the second workpiece 32 to the teaching points (t1)-(t10) for the first workpiece 31 (see FIG. 3).

[0052] In step S23, the teaching device 5 outputs the teaching points extracted based on the similarity determination in step S12 through the output device 52. In this example, the teaching device 5 outputs the teaching point (t13) that is not similar to the teaching point of the first workpiece 31, from among the teaching points (t11), (t12), and (t13) of the second workpiece 32.

[0053] The operator actually operates the robot 2 in accordance with the provided teaching points, and obtains the amount of deviation between the tip position of the robot 2 and the ideal position, or the amount of correction from the tip position to the ideal position. The operator inputs the obtained amount of deviation or amount of correction to the controller 4 via the input device 51 and the teaching device 5. Instead of the operator inputting, the teaching device 5 may output dissimilar teaching points to the controller 4 in step S23, and the controller 4 may actually operate the robot 2 in accordance with the provided teaching points, and use a measuring device to obtain the amount of deviation between the tip position of the robot 2 and the ideal position, or the amount of correction from the tip position to the ideal position, without the intervention of the operator.

[0054] In step S24, the controller 4 determines whether actual data for the extracted teaching point, i.e., the actual amount of deviation or correction, has been acquired. If the actual data has been acquired, the controller 4 trains the correction model 41 in the following step S25. The training of the correction model 41 is performed in accordance with the training phase of FIG. 2.

[0055] (Effects) As described above, the teaching system 1 and teaching method can reduce the workload of the operator because the number of teaching points used to learn the correction model 41 is reduced among the teaching points of the second workpiece 32. Furthermore, even when learning of the correction model 41 is performed without the intervention of an operator through cooperation between the teaching device 5 and the controller 4, the burden on the operator is reduced because the number of teaching points used to learn is reduced.

[0056] FIG. 7 is an illustration showing the effect of training the correction model 41. The correction model 41 is trained for teaching points (t1)-(t10) of the first workpiece 31. Assume that the correction model 41 is trained based on a dissimilar teaching point (t13) of the second workpiece 32. In graph 64 of FIG. 7, the correction model 41 is expanded to include teaching point (t13). For example, if a teaching point (t14) for a new third workpiece is given that is similar to teaching point (t13), the correction model 41 before training may not be able to suppress the absolute position error of teaching point (t14), whereas the correction model 41 after training can suppress the absolute position error of teaching point (t14).

[0057] Learning the correction model 41 can reduce the workload of the operator when the number of types of workpieces increases.

[0058] 3, the correction model 41 learned for the teaching points of the first workpiece 31 includes all the teaching points. The number of correction models 41 held by the controller 4 is not limited to one. The teaching points (t1)-(t10) of the first workpiece 31 may be divided into one or more groups based on their mutual similarities, and a correction model 41 may be learned for each group.

[0059] 8 shows an example in which the teaching points (t1)-(t10) of the first workpiece 31 are classified into a first group, a second group, and a third group based on the similarity. A correction model 41 is trained separately for each of the first group, the second group, and the third group. The controller 4 essentially has a plurality of correction models 41.

[0060] When the teaching points (t11), (t12), and (t13) of the second workpiece 32 are given to the robot 2, the teaching device 5 determines the similarity of each of the teaching points (t11), (t12), and (t13) of the second workpiece 32 with the teaching points (t1)-(t10) of the first workpiece 31, in the same manner as described above. In the example of FIG. 8 , the teaching point (t11) is included in the first group, and the teaching point (t12) is included in the second group. There is no need to teach the robot 2 or learn the correction model 41 for the teaching points (t11) and (t12).

[0061] The teaching point (t13) is not included in any of the first, second, and third groups. For the teaching point (t13), teaching of the robot 2 or learning of the correction model 41 is performed. The teaching device 5 outputs information about the teaching point for teaching of the robot 2 or learning of the correction model 41 through the output device 52. In the third embodiment, the teaching device 5 outputs information about the teaching point in accordance with the flowchart of FIG.

[0062] As in the first or second embodiment described above, the operator teaches the robot 2 about the provided teaching points or makes the correction model 41 learn.

[0063] When the correction model 41 is trained, the teaching device 5 and the controller 4 train the correction model 41 according to the flowchart of FIG. 6 . Among the correction models 41 of the first group, the second group, and the third group, the correction model 41 of the group most similar to the teaching point (t13) is trained. In the example of FIG. 8 , the correction model 41 of the second group is trained based on the teaching point (t13). A new fourth group may be created for the teaching point (t13), and the correction model 41 of the fourth group may be trained based on the teaching point (t13). (Effect) If the correction model 41 is trained individually for each of the multiple groups classified based on similarity, the training accuracy of each correction model 41 is improved. The correction model 41 can accurately suppress absolute position errors for the teaching points of the corresponding group.

[0064] In addition, when teaching points for a new workpiece are given, the teaching device 5 determines whether or not teaching of the robot 2 or learning of the correction model 41 is necessary based on the similarity between the given teaching points and each of the multiple groups, thereby reducing the workload of the operator.

[0065] (Example 4) The above-mentioned Examples 1, 2, and 3 are all examples of reducing the workload of the operator when the correction model 41 has already been learned for the first workpiece 31 and teaching points are given for the second workpiece 32.

[0066] The technique disclosed herein can reduce the amount of work required by the operator even when teaching points are given for the first workpiece 31 and the correction model 41 is initially learned based on the teaching points.

[0067] 9 shows an example of extracting teaching points to be used for learning the correction model 41 based on similarity when a plurality of teaching points (t1)-(t10) are given for the first workpiece 31. Similar to FIG. 3 , a table 61 in FIG. 9 shows the motion of the robot 2 at each of the teaching points (t1), (t2), (t3), (t4), (t5), (t6), (t7), (t8), (t9), and (t10) given to the robot 2 for the first workpiece 31. A graph 66 in FIG. 9 plots the axis values ​​of the joints JT1 and JT2 at the teaching points (t1)-(t10) in two-dimensional coordinates.

[0068] When the teaching points (t1)-(t10) of the first workpiece 31 are given, the teaching device 5 determines the mutual similarity of the teaching points (t1)-(t10). The teaching device 5 classifies the teaching points (t1)-(t10) into one or more groups based on the similarity. In the example of FIG. 9 , as shown in graph 67, the teaching points (t1)-(t10) are classified into a first group including teaching points (t1), (t2), (t3), and (t4), a second group including teaching points (t5), (t6), (t7), and (t8), and a third group including teaching points (t9) and (t10).

[0069] The teaching device 5 extracts a teaching point that represents the group. The teaching device 5 may extract a teaching point that represents the group based on an outlier of the teaching points included in the group. In the example of FIG. 9 , (t1) is extracted as a teaching point that represents the first group, (t5) is extracted as a teaching point that represents the second group, and (t9) is extracted as a teaching point that represents the third group. Information on the extracted teaching points is provided to the operator via the output device 52.

[0070] The operator actually operates the robot 2 in accordance with the provided teaching points, and obtains the amount of deviation between the tip position of the robot 2 and the ideal position, or the amount of correction from the tip position to the ideal position. The obtained amount of deviation or amount of correction is provided to the controller 4. In the example of FIG. 9 , the operator only needs to obtain the amount of deviation or amount of correction for teaching points (t1), (t5), and (t9). The controller 4 trains a correction model 41 based on the teaching points and the obtained amount of deviation or amount of correction. The training of the correction model 41 is performed in accordance with the learning phase of FIG. 2 .

[0071] In this example, the procedure for learning the correction model 41 conforms to Fig. 6. In step S21, the teaching device 5 reads teaching points for the first workpiece 31. In step S22, the teaching device 5 determines the similarity of the read teaching points for the first workpiece 31 and classifies the teaching points into one or more groups. In the following step S23, the teaching device 5 extracts teaching points that represent the groups and outputs information about the extracted teaching points. In steps S24 and S25, the controller 4 performs initial learning of the correction model 41.

[0072] The controller 4 may learn the correction model 41 for each group as shown in the third embodiment (see FIG. 8).

[0073] (Effects) For multiple teaching points where the robot 2 behaves similarly, if the correction model 41 is trained for one of the multiple teaching points, the correction model 41 can accurately suppress absolute position errors for the other teaching points as well. When the correction model 41 is initially trained, it is not necessary to train the correction model 41 for all given teaching points; if training is performed only for teaching points extracted based on similarity, the correction model 41 can suppress absolute position errors for all given teaching points. The teaching system 1 and teaching method can achieve efficient training of the correction model 41. Furthermore, the teaching system 1 and teaching method can reduce the workload of the operator.

[0074] This example is effective when the correction model 41 is a black-box model 412. This is because the trained black-box model 412 can accurately suppress absolute position errors for multiple teaching points that are similar to each other. Also, the black-box model 412 can achieve a high learning effect even if the number of teaching points used for learning is small.

[0075] Fifth Embodiment The similarity of teaching points can be determined not only based on the movement of the robot 2 with respect to the teaching points, but also based on the movement of the robot 2 and information related to the task.

[0076] FIG. 10 shows an example of determining the similarity of teaching points based on the operation of the robot 2 and information related to the task. In a table 68 in FIG. 10, the axis values ​​of the joints JT1-JT6, the task type, task condition 1, ..., task condition N are set for each of the teaching points (t1)-(t10). The task type may be, for example, spot welding or laser welding. The task condition may be, for example, whether welding is performed or not, or the classification number of the workpiece. The task type and task conditions are quantified so that the teaching device 5 can determine the similarity. The task type and task conditions are examples of task-related information.

[0077] By determining the similarity of the teaching points based on the information about the robot 2's motion and the task, the teaching device 5 can determine the similarity in accordance with the tendency of the robot 2 to generate absolute position errors. For example, there are workpieces that tend to contract and workpieces that tend to expand. Assume that the first workpiece is a workpiece that tends to contract and the second workpiece is a workpiece that tends to expand. Even if the coordinates of the teaching points for the first workpiece and the coordinates of the teaching points for the second workpiece are the same and the motion of the robot 2, i.e., the axis values ​​of the joints JT1-JT6, are the same, the direction of the absolute position error of the robot 2 relative to the first workpiece that tends to contract will differ from the direction of the absolute position error of the robot 2 relative to the second workpiece that tends to expand. Determining the similarity based on the information about the robot 2's motion and the task allows for a more accurate determination of the similarity in accordance with the tendency of the robot 2 to generate absolute position errors.

[0078] Once teaching points are extracted based on the similarity determined based on the information regarding the movement of the robot 2 and the work, teaching of the robot 2 or learning of the correction model 4 is performed according to the above-mentioned Example 1, 2, 3 or 4.

[0079] (Effects) The teaching device 5 can more accurately determine the similarity based on the information about the operation and task of the robot 2. The teaching system 1 or teaching method can accurately suppress the absolute position error of the robot 2 while reducing the workload of the operator.

[0080] Sixth Embodiment In the above-described example, the teaching points of the robot 2 are given as independent points. As described above, the teaching points given as independent points are teaching points given when the robot 2 performs spot welding.

[0081] When the task of the robot 2 is to move the end effector of the robot 2 continuously in a line relative to the workpiece 3, a teaching point cloud including a plurality of consecutive teaching points is given to the robot 2. The technology disclosed herein is also effective when a teaching point cloud including a plurality of consecutive teaching points is given to the robot 2.

[0082] Examples of tasks in which the end effector of the robot 2 is moved continuously and linearly relative to the workpiece 3 include laser welding, milling, and AFP.

[0083] FIG. 11 shows an example of extracting a teaching point group to be used for the initial learning of the correction model 41 when multiple teaching point groups (t1), (t2), (t3), (t4), (t5), (t6), (t7), (t8), (t9) and (t10) are given.

[0084] The teaching device 5 determines the similarity between the teaching point groups based on the shape of the trajectory along which the end effector of the robot 2 moves in accordance with the teaching point groups. Graph 69 in Fig. 11 is an image of the trajectory shapes of the teaching point groups (t1)-(t10) plotted on two-dimensional coordinates. In the two-dimensional coordinates in Fig. 11, teaching point groups with similar trajectory shapes are close to each other, and teaching point groups with dissimilar trajectory shapes are far from each other.

[0085] The shape of the trajectory can be acquired, for example, by an image sensor capturing a 2D image or a 3D image. The teaching device 5 reads the shape of the trajectory, for example, through the input device 51. The shape of the trajectory can also be acquired, for example, by simulating a three-dimensional model of the robot 2. The teaching device 5 may acquire the shape of the trajectory by simulating the read three-dimensional model of the robot 2.

[0086] The teaching device 5 also determines the similarity between multiple teaching point groups using a known image classification method based on the shape of the trajectory. Similar to the example of FIG. 9 , the teaching device 5 classifies the teaching point groups (t1)-(t10) into one or more groups based on the similarity. In the graph 610 of FIG. 11 , the teaching point groups (t1)-(t10) are classified into a first group including teaching point groups (t1), (t2), (t3), and (t4), a second group including teaching point groups (t5), (t6), (t7), and (t8), and a third group including teaching points (t9) and (t10). The first group is a group of similar circular trajectory shapes. The second group is a group of similar rectangular trajectory shapes. The third group is a group of similar triangular trajectory shapes.

[0087] The teaching device 5 extracts a teaching point group representative of the group. As described above, the teaching device 5 may extract a teaching point group representative of the group based on outliers of the teaching point groups included in the group. Information on the extracted teaching point group is provided to the operator via the output device 52.

[0088] The operator actually operates the robot 2 according to the provided teaching point group, and acquires the amount of deviation between the tip position of the robot 2 and the ideal position, or the amount of correction from the tip position to the ideal position. The acquired amount of deviation or correction amount is provided to the controller 4. In the example of FIG. 11 , the operator only needs to acquire the amount of deviation or correction amount for the teaching point groups (t1), (t5), and (t9). The controller 4 learns a correction model 41 based on the teaching points and the acquired amount of deviation or correction amount. The learning of the correction model 41 is performed in accordance with the learning phase of FIG. 2 . The teaching device 5 and the controller 4 learn the correction model 41 in accordance with the flowchart of FIG. 6 . Note that the controller 4 may learn the correction model 41 for each group, as shown in the third embodiment (see FIG. 8 ).

[0089] 12 shows an example in which teaching point groups (t11), (t12), and (t13) are newly assigned to a correction model 41 trained for teaching point groups (t1), (t2), (t3), (t4), (t5), (t6), (t7), (t8), (t9), and (t10) including a plurality of consecutive teaching points. It is assumed that the correction model 41 is trained for each group.

[0090] The teaching device 5 determines the similarity of each of the given teaching point groups (t11), (t12), and (t13) to the teaching point group (t1)-(t10). The teaching device 5 determines the similarity based on the shape of the trajectory of the end effector of the robot 2.

[0091] In the graph 611 of FIG. 12 , the teaching point group (t11) is included in the first group, and the teaching point group (t12) is included in the second group. For the teaching point group (t11) and the teaching point group (t12), there is no need to teach the robot 2 or learn the correction model 41. The teaching point group (t13) has a star-shaped trajectory, so it is not included in any of the first, second, or third groups. The operator performs work on the teaching point group (t13) to teach the robot 2 or learn the correction model 41. The teaching point group (t13) may be classified into a new fourth group, separate from the first, second, and third groups. The new fourth group is learned based on the teaching point group (t13).

[0092] (Operation and Effect) The teaching system 1 and teaching method can reduce the amount of work required for teaching the robot 2 or learning the correction model 41 even when a teaching point cloud is given to the robot 2 .

[0093] The degree of similarity of the robot 2's motion related to the teaching point group can be determined based on the shape of the trajectory of the tip of the end effector. By determining the degree of similarity based on the shape of the trajectory of the tip of the end effector, the teaching device 5 can accurately extract the teaching point group used to teach the robot 2 or to learn the correction model 41. The teaching system 1 and teaching method simultaneously reduce the amount of work for the operator and suppress absolute position errors caused by the correction model 41.

[0094] (Variation) When determining the similarity of the movements of the robot 2 represented by the axis values ​​of the joints JT1-JT6, the teaching device 5 may represent the axis values ​​of the joints JT1-JT6 as vectors. For example, the angles of the joints JT1-JT6 of the robot 2, +180° and -180°, are significantly different in terms of numerical value. The teaching device 5 may determine that the axis values ​​of the joints JT1-JT6 of the robot 2 are dissimilar. However, the postures of the joints JT1-JT6 of the robot 2 are substantially the same when the angles of the joints JT1-JT6 are +180° and -180°.

[0095] The axis values ​​of the joints JT1-JT6 can be expressed as vectors with an angle θ and a length R, for example. When the axis values ​​of the joints JT1-JT6 are expressed as vectors, the teaching device 5 can determine that the angles of the joints JT1-JT6 at +180° and -180° are similar. The teaching device 5 can appropriately extract teaching points in the above-described embodiment.

[0096] In determining the degree of similarity, the teaching device 5 may normalize the axis values ​​of the joints JT1-JT6 based on the range of motion of the joints JT1-JT6. Normalization allows the motion of the robot 2 to be represented more accurately. The teaching device 5 can determine the degree of similarity more accurately. The teaching device 5 can appropriately extract the teaching points in the above-described embodiment.

[0097] The teaching device 5 may change the weights among the multiple joints JT1-JT6 when determining the similarity. The weights may be changed based on the magnitude of the influence on the absolute position error of the robot 2. The weights may be increased for the joints JT1-JT6 that have a large influence on the absolute position error, and decreased for the joints JT1-JT6 that have a small influence on the absolute position error. The teaching device 5 can determine the similarity more accurately. The teaching device 5 can appropriately extract the teaching points in the above-mentioned embodiment.

[0098] The motion of the robot 2 related to the judgment of similarity of the teaching points may be expressed not only by the axis values ​​of the joints JT1-JT6 but also by the position and orientation (x, y, z, O, A, T) of the end effector. Note that (x, y, z) represent the position of the tip of the end effector, and (O, A, T) represent the orientation of the tip of the end effector. Furthermore, the motion of the robot 2 related to the judgment of similarity of the teaching points may also be expressed by the position (x, y, z) of the end effector.

[0099] The teaching device 5 may have a correction model 41 instead of the controller 4. The teaching device 5 outputs the teaching points corrected by the correction model 41 to the controller 4. The controller 4 controls the robot 2 in accordance with the corrected teaching points. The teaching device 5 having the correction model 41 also learns the correction model 41.

[0100] The teaching device 5 may be incorporated into the controller 4. In other words, the controller 4 may have the functions of the teaching device 5 described above.

[0101] The teaching device 5 in the teaching system 1 may be located on the cloud. The input device 51 and the output device 52 are terminals for the teaching device 5 on the cloud and function as terminals related to operations by an operator. The controller 4 may not be directly connected to the teaching device 5 on the cloud, but may be connected to the teaching device 5 via a terminal.

[0102] The functions of the elements disclosed herein can be performed using circuits or processing circuits, including general-purpose processors, special-purpose processors, integrated circuits, application-specific integrated circuits (ASICs), conventional circuits, and / or combinations thereof, configured or programmed to perform the disclosed functions. A processor is considered a processing circuit or circuit because it includes transistors and other circuitry. In this disclosure, a circuit, unit, or means is hardware that performs the recited functions or hardware that is programmed to perform the recited functions. The hardware may be hardware disclosed herein or other known hardware that is programmed or configured to perform the recited functions. Where hardware is a processor, which is considered a type of circuit, the circuit, means, or unit is a combination of hardware and software, and the software is used to configure the hardware and / or processor.

[0103] (Aspects) The above-described embodiments are specific examples of the following aspects.

[0104] (Aspect 1) A robot teaching method comprising: a computer (5) reading a plurality of teaching points given to the robot (2) by offline teaching, the teaching points being used by a robot (2) controlled using an absolute position error correction model (41) to perform work on a workpiece (3); the computer (5) extracts teaching points from the plurality of teaching points that adjust correction by the correction model (41) based on the similarity of the robot (2)'s movements at each of the plurality of teaching points; and the computer (5) outputting the extracted teaching points.

[0105] Based on the similarity of the robot (2)'s movements, teaching points for adjusting the correction by the correction model (41) are extracted, so the operator only needs to teach the robot (2) or learn the correction model (41) for the extracted teaching points. The robot teaching method can reduce the operator's workload. Even if the operator's workload is reduced, the absolute position error of the robot (2) is suppressed.

[0106] (Aspect 2) The robot teaching method according to Aspect 1, wherein the correction model (41) is learned based on the teaching points, and the computer (5) reads in a first teaching point for a first workpiece (31) that has been learned in the correction model (41), and a plurality of second teaching points for a second workpiece (32) that is a different type from the first workpiece and has not been learned in the correction model (41), and the computer (5) extracts the second teaching point that is not similar to the first teaching point from the plurality of second teaching points based on the similarity between the operation of the robot (2) at the first teaching point and the operation of the robot (2) at the second teaching point.

[0107] When a correction model (41) has been learned for the first workpiece (31), the robot (2) is taught or the correction model (41) is learned for the second taught points of the second workpiece (32) that are not similar to the first taught points of the first workpiece (31). The robot teaching method can reduce the amount of work done by the operator.

[0108] (Aspect 3) The robot teaching method according to Aspect 2, wherein the first teaching points are classified into one or more groups based on the similarity of the motion of the robot (2) at the first teaching points, and the computer (5) extracts the second teaching points that do not belong to any of the groups based on the similarity between the motion of the robot (2) at the first teaching points and the motion of the robot (2) at the second teaching points.

[0109] Whether or not the second teaching point needs to be taught to the robot (2) or to learn the correction model (41) is determined based on whether or not the second teaching point belongs to a group, so the computer (5) can appropriately extract the second teaching point to be used for teaching the robot (2) or to learn the correction model (41).

[0110] (Aspect 4) The robot teaching method according to aspect 3, wherein the correction model (41) is learned individually for each of the groups based on teaching points included in the group.

[0111] If a correction model (41) is trained individually for each group classified based on similarity, the training accuracy of the correction model (41) is improved. The trained correction model (41) can accurately suppress absolute position errors for the teaching points of the corresponding group.

[0112] (Aspect 5) The robot teaching method according to any one of Aspects 1 to 4, wherein the correction model (41) is learned based on the output teaching points.

[0113] Learning the correction model (41) makes it possible to reduce the workload of the operator when the number of types of workpieces (3) increases and new teaching points are given to the robot (2).

[0114] (Aspect 6) The robot teaching method according to any one of Aspects 1 to 5, further comprising: the computer (5) classifies the plurality of teaching points into one or more groups based on the similarity of the robot (2)'s movements at each of the plurality of teaching points for one workpiece (3); the computer (5) extracts a teaching point selected from the one group or a teaching point selected from each of the plurality of groups; and the correction model (41) is initially trained based on the extracted teaching points.

[0115] When the correction model (41) is initially trained, if the training is performed only for the teaching points extracted based on the similarity, the correction model (41) can suppress absolute position errors for all of the given teaching points. Since the correction model (41) is not trained for all of the given teaching points, efficient training of the correction model (41) is realized. The teaching method can reduce the amount of work required by the operator when the correction model (41) is initially trained.

[0116] (Aspect 7) The robot teaching method according to any one of Aspects 1 to 6, wherein the computer (5) determines the similarity using a statistical method.

[0117] The computer (5) can accurately determine the degree of similarity using statistical methods, and therefore can accurately extract teaching points for teaching the robot (2) or learning the correction model (41).

[0118] (Aspect 8) The robot teaching method according to Aspect 7, wherein the robot (2) includes an articulated robot having a plurality of joints (JT1-JT6), and the motion of the robot (2) at the teaching point is represented by axis values ​​of each of the plurality of joints (JT1-JT6).

[0119] The axis values ​​of each of the multiple joints (JT1-JT6) can appropriately represent the motion of the robot (2).

[0120] (Aspect 9) The robot teaching method according to Aspect 8, wherein the computer (5) represents the axis values ​​of the joints (JT1-JT6) by vectors in determining the similarity.

[0121] The vector representation of the axis values ​​increases the accuracy of determining the similarity based on the axis values ​​of the joints (JT1-JT6), so the computer (5) can appropriately extract teaching points.

[0122] (Aspect 10) The robot teaching method according to Aspect 8, wherein the computer (5) normalizes the axis values ​​of the joints (JT1-JT6) by the range of motion of the joints (JT1-JT6) in determining the similarity.

[0123] Normalization of the axis values ​​of the joints (JT1-JT6) improves the accuracy of determining the similarity based on the axis values ​​of the joints (JT1-JT6), so that the computer (5) can appropriately extract teaching points.

[0124] (Aspect 11) The robot teaching method according to Aspect 8, wherein the computer (5) changes weights among a plurality of joints (JT1-JT6) in determining the similarity.

[0125] By changing the weights, the influence of each of the joints (JT1-JT6) on the absolute position error is taken into consideration, so the computer (5) can more accurately determine the similarity based on the axis values ​​of the joints (JT1-JT6).The computer (5) can appropriately extract teaching points.

[0126] (Aspect 12) The robot teaching method according to Aspect 7, wherein the motion of the robot (2) at the teaching point is represented by a position or a position and a posture of an end effector of the robot (2).

[0127] The position of the end effector, or the position and pose, can also adequately describe the motion of the robot (2).

[0128] (Aspect 13) The robot teaching method according to any one of Aspects 1 to 12, wherein the computer (5) extracts teaching points for adjusting the correction by the correction model (41) based on the similarity between the operation of the robot (2) at each of the plurality of teaching points and information related to the work on the workpiece (3).

[0129] Determining the degree of similarity based on the information about the robot's (2) movements and tasks makes it possible to more accurately determine the degree of similarity in accordance with the tendency of the robot's (2) absolute position error to occur.

[0130] (Aspect 14) A robot teaching method according to any one of Aspects 1 to 13, wherein the computer (5) reads a plurality of teaching point clouds, the teaching point clouds including a plurality of consecutive teaching points for the robot (2) to perform continuous work on the workpiece (3), the computer (5) extracts a teaching point cloud for adjusting correction by the correction model (41) based on the similarity of the robot (2)'s movement in each of the plurality of teaching point clouds, and the computer (5) outputs the extracted teaching point clouds.

[0131] The technology disclosed herein is also applicable to a group of teaching points including a plurality of consecutive teaching points, and the teaching method reduces the workload of the operator.

[0132] (Aspect 15) The robot teaching method according to aspect 14, wherein the computer (5) determines the similarity based on the shape of a trajectory along which an end effector of the robot (2) moves in accordance with the teaching point cloud.

[0133] The computer (5) can accurately determine the similarity of the robot (2)'s movement with respect to the teaching point group based on the shape of the trajectory.

[0134] (Aspect 16) A teaching system (1) comprising: a robot (2) that performs work on a workpiece (3), the robot (2) being controlled using an absolute position error correction model (41) in accordance with a plurality of teaching points for the robot (2) to perform work on the workpiece (3), the teaching points being given to the robot (2) by offline teaching; and a computer (5) that reads the plurality of teaching points and extracts teaching points from the plurality of teaching points for which correction by the correction model (41) is adjusted based on the similarity of the operation of the robot (2) at each of the plurality of teaching points, and outputs the extracted teaching points.

[0135] The teaching system (1) can reduce the workload of the operator.

[0136] REFERENCE SIGNS LIST 1 Teaching system 2 Robot 3 Workpiece 31 First workpiece 32 Second workpiece 4 Controller 41 Correction model 5 Teaching device JT1 Joint JT2 Joint JT3 Joint JT4 Joint JT5 Joint JT6 Joint

Claims

1. A robot teaching method, comprising: a computer reading a plurality of teaching points given to the robot by offline teaching, the teaching points being used by a robot controlled using a correction model for absolute position error to perform work on a workpiece; the computer extracting, from the plurality of teaching points, teaching points that adjust the correction made by the correction model based on the similarity of the robot's movement at each of the plurality of teaching points; and outputting the extracted teaching points.

2. A robot teaching method as described in claim 1, wherein the correction model is learned based on the teaching points, and the computer reads in a first teaching point for a first workpiece that has been learned into the correction model, and a plurality of second teaching points for a second workpiece that is a different type from the first workpiece and has not been learned into the correction model, and the computer extracts, from the plurality of second teaching points, the second teaching point that is not similar to the first teaching point based on the similarity between the operation of the robot at the first teaching point and the operation of the robot at the second teaching point.

3. A robot teaching method as described in claim 2, wherein the first teaching points are classified into one or more groups based on the similarity of the robot's motion at the first teaching points, and the computer extracts the second teaching points that do not belong to any of the groups based on the similarity between the robot's motion at the first teaching points and the robot's motion at the second teaching points.

4. A robot teaching method according to claim 3, wherein the correction model is learned individually for each group based on the teaching points included in that group.

5. A robot teaching method according to any one of claims 1 to 4, wherein the correction model is learned based on the output teaching points.

6. A robot teaching method according to any one of claims 1 to 5, further comprising: the computer classifying the plurality of teaching points into one or more groups based on the similarity of the robot's operation at each of the plurality of teaching points for one workpiece; the computer extracts a teaching point selected from the one group or a teaching point selected from each of the plurality of groups; and the correction model is initially trained based on the extracted teaching points.

7. A robot teaching method according to any one of claims 1 to 6, wherein the computer determines the similarity by a statistical method.

8. A robot teaching method according to claim 7, wherein the robot includes an articulated robot having a plurality of joints, and the motion of the robot at the teaching point is represented by axis values ​​of the joints.

9. A robot teaching method according to claim 8, wherein the computer expresses the axis values ​​of the joints as vectors in determining the degree of similarity.

10. A robot teaching method according to claim 8, wherein the computer normalizes the axis value of a joint in determining the degree of similarity according to the movable range of the joint.

11. A robot teaching method according to claim 8, wherein the computer changes weights between a plurality of joints in determining the degree of similarity.

12. A robot teaching method according to claim 7, wherein the motion of the robot at the teaching point is represented by a position or a position and orientation of an end effector of the robot.

13. A robot teaching method according to any one of claims 1 to 12, wherein the computer extracts teaching points based on the similarity between the operation of the robot at each of the plurality of teaching points and information relating to the operation on the workpiece.

14. A robot teaching method according to any one of claims 1 to 13, wherein the computer reads a plurality of teaching point groups, the teaching point groups including a plurality of consecutive teaching points for the robot to perform continuous work on the workpiece, the computer extracts a teaching point group that adjusts the correction by the correction model based on the similarity of the robot's operation in each of the plurality of teaching point groups, and the computer outputs the extracted teaching point group.

15. A robot teaching method according to claim 14, wherein the computer judges the degree of similarity based on the shape of a trajectory along which an end effector of the robot moves in accordance with the group of teaching points.

16. A teaching system comprising: a robot that performs work on a workpiece, the robot being controlled using a correction model of absolute position error in accordance with a plurality of teaching points given to the robot by offline teaching, the teaching points allowing the robot to perform work on the workpiece; and a computer that reads the plurality of teaching points and extracts teaching points from the plurality of teaching points that adjust correction by the correction model based on the similarity of the robot's operation at each of the plurality of teaching points, and outputs the extracted teaching points.

Citation Information

Patent Citations

  • Off-line teaching device

    JP1994114769A

  • Teaching data preparation device and teaching data preparation method for articulated robot

    WO2015166574A1

  • Robot system and supplemental learning method

    WO2019225746A1

  • Information processing device, information processing method, and program

    WO2022239310A1