Correction System and Method for Correcting Instruction Data

The correction system addresses the issue of marker obscuration in robot teaching systems by using multiple markers on the tool and an imaging device to accurately adjust teaching data, improving positional detection and operational precision.

JP7709319B2Active Publication Date: 2025-07-16KAWASAKI JUKOGYO KK
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2021111005
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-07-02
Publication Date
2025-07-16
Estimated Expiration
2041-07-02

AI Technical Summary

Technical Problem

Existing teaching systems for robots, such as those used in welding, face challenges in accurately correcting teaching data due to markers being hidden by the welding gun or articulated arm, leading to incomplete or inaccurate position measurements.

Method used

A correction system that includes a first imaging target with multiple markers on the robot's tool, an imaging device to capture these markers, and a correction device that adjusts the teaching data based on the detected positions, ensuring accurate imaging and correction even when markers are partially obscured.

Benefits of technology

Enables precise correction of teaching data for robots, allowing for improved accuracy and reliability in operations like welding by ensuring that at least one marker is always visible for imaging, thus enhancing the robot's positional detection and operational precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007709319000001
    Figure 0007709319000001
  • Figure 0007709319000002
    Figure 0007709319000002
  • Figure 0007709319000003
    Figure 0007709319000003
Patent Text Reader

Abstract

To properly correct teaching data for a robot.SOLUTION: A correction system 100 comprises: a first imaging object 1 provided to a tool 6 of a robot 4; an imaging device 39 which images the first imaging object 1; and a correction device 3 which corrects teaching data for the robot 4. The correction device 3 corrects the teaching data based upon a detected position of the tool 6 found from an imaging result of the first imaging object 1 imaged by the imaging device 39 when the robot 4 operates according to the teaching data, and the first imaging object 1 is a plurality of first markers 10 provided at mutually different positions of the tool 6.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technology disclosed herein relates to a correction system and a method for correcting teaching data.

Background Art

[0002] Patent Document 1 discloses a teaching system that teaches the operation of an articulated arm that moves a welding gun relative to a workpiece by offline teaching. This teaching system includes a marker provided on the welding gun instead of the electrode for spot welding of the welding gun, an imaging unit that images the marker, and a correction unit that corrects the operation of the articulated arm based on the imaging result of the imaging unit. In this teaching system, the position of the marker corresponding to the position of the electrode is measured from the imaging result, and thereby, the deviation between the actual machine and the simulator is calculated to correct the operation program.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the above-described teaching system, for example, depending on the position or orientation of the welding gun, or the orientation of the articulated arm, etc., the marker may be hidden from the imaging unit by the welding gun or the articulated arm. In this case, since the marker cannot be imaged by the imaging unit, the position of the electrode cannot be measured, and it is difficult to appropriately correct the teaching data.

[0005] The technology disclosed herein has been made in view of such a point, and the object thereof is to enable appropriate correction of the teaching data of the robot.

Means for Solving the Problems

[0006] The correction system disclosed herein includes a first imaging target provided on a tool of a robot, an imaging device that images the first imaging target, and a correction device that corrects the teaching data of the robot. The correction device corrects the teaching data based on a detection position of the tool obtained from an imaging result of the first imaging target imaged by the imaging device when the robot operates according to the teaching data. The first imaging target is a plurality of markers provided at different positions on the tool.

[0007] The method for correcting teaching data disclosed herein includes operating a robot according to the teaching data, imaging a first imaging target provided on a tool of the robot that is operated according to the teaching data with an imaging device, and correcting the teaching data based on a detection position of the tool obtained from an imaging result of the first imaging target imaged by the imaging device. The first imaging target includes a plurality of markers provided at different positions on the tool.

Advantages of the Invention

[0008] According to the correction system, the teaching data of the robot can be appropriately corrected.

[0009] According to the method for correcting teaching data, the teaching data of the robot can be appropriately corrected.

Brief Description of the Drawings

[0010]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, exemplary embodiments will be described in detail with reference to the drawings. FIG. 1 shows a schematic configuration of a correction system 100 according to an embodiment.

[0012] The correction system 100 is included in the robot system 101. In addition to the correction system 100, the robot system 101 includes a robot 4. The correction system 100 executes a correction process for correcting the teaching data of the robot 4. The teaching data is data that defines the position and orientation of the robot 4 in the operation of the robot 4. The teaching data is used when the robot 4 is automatically operated. That is, by controlling the robot 4 based on the teaching data, the automatic operation of the robot 4 is realized. The correction system 100 corrects this teaching data.

[0013] The robot 4 is an industrial robot. The robot 4 performs work on the object W. The work performed by the robot 4 is welding, specifically, spot welding. The object W is, for example, two overlapping plates.

[0014] The robot 4 includes a robot arm 5 and a tool 6 as an end effector. The robot arm 5 changes the position and orientation of the tool 6 (hereinafter, the position and orientation are referred to as "position etc."). The robot arm 5 is a vertically articulated type.

[0015] The correction system 100 includes a first imaging target 1, an imaging device 39, and a correction device 3. The first imaging target 1 is provided on the tool 6 of the robot 4. The imaging device 39 images the first imaging target 1. The correction device 3 corrects the teaching data of the robot 4. Specifically, the correction device 3 corrects the teaching data based on the position and orientation of the tool 6 obtained from the imaging result of the first imaging target 1 imaged by the imaging device 39 when the robot 4 operates according to the teaching data. Hereinafter, the obtained position and orientation of the tool 6 are referred to as "detected position" and "detected orientation" respectively, and both are collectively referred to as "detected position etc.".

[0016] The robot 4 may further have a base 41 that supports the robot arm 5. The robot 4 is installed, for example, by fixing the base 41 to an installation target such as the floor. The robot 4 has a base coordinate system defined with respect to the base 41.

[0017] The robot arm 5 includes a plurality of links 51, a plurality of joints 52, and a plurality of motors 53 (see FIG. 7). Each joint 52 rotatably connects two adjacent links 51. The plurality of motors 53 respectively rotate and drive the plurality of joints 52. Each motor 53 is, for example, a servo motor.

[0018] Figures 2, 3, and 4 are respectively a side view, a plan view, and a rear view of the tool. The tool 6 is a welding gun having a first electrode 61 and a second electrode 62 for welding. The tool 6 further has a tool body 60 and an electrode driving device 63 in addition to the first electrode 61 and the second electrode 62. The tool body 60 is attached to a link 51 located at the tip of the robot arm 5. Each of the first electrode 61 and the second electrode 62 is formed in a rod shape. The tip of the first electrode 61 and the tip of the second electrode 62 face each other.

[0019] The first electrode 61 is directly attached to the tool body 60. The position of the first electrode 61 with respect to the tool body 60 is fixed. The second electrode 62 is attached to the tool body 60 via the electrode driving device 63. The position of the second electrode 62 with respect to the tool body 60 is changeable.

[0020] The tool body 60 has a mounting portion 64 and a support portion 65. The mounting portion 64 is configured to be detachable from the robot arm 5. The support portion 65 is connected to the mounting portion 64. The support portion 65 supports the first electrode 61 and the electrode driving device 63. Substantially, the support portion 65 supports the second electrode 62 via the electrode driving device 63.

[0021] The support portion 65 is formed in a C shape. The first electrode 61 is attached to one end portion of the support portion 65. The first electrode 61 is fixed to the support portion 65. The electrode driving device 63 is attached to the end portion of the support portion 65 opposite to the first electrode 61. The electrode driving device 63 drives the second electrode 62 to change the position of the second electrode 62 with respect to the first electrode 61.

[0022] The electrode driving device 63 has a driving mechanism 68 for moving the second electrode 62 and a driving source 69 of the driving mechanism 68. The driving mechanism 68 is a ball screw mechanism having a screw shaft and a nut. The screw shaft moves in the axial direction of the screw shaft as the nut rotates. The second electrode 62 is attached to the screw shaft directly or via another member. The driving source 69 is, for example, a servo motor.

[0023] The power generated by the drive source 69 causes the nut to rotate, thereby moving the second electrode 62 and changing the position of the second electrode 62 relative to the first electrode 61. As a result, the distance from the first electrode 61 to the second electrode 62 is changed.

[0024] The tool 6 further has a voltage application device 67 (see FIG. 7). The voltage application device 67 applies a voltage between the first electrode 61 and the second electrode 62. With the object W sandwiched between the tip of the first electrode 61 and the tip of the second electrode 62, when a voltage is applied between the first electrode 61 and the second electrode 62 by the voltage application device 67, the object W is welded.

[0025] The first imaging target 1 is provided on the tool 6. The first imaging target 1 includes a plurality of first markers 10 provided at different positions on the tool 6.

[0026] The first marker 10 is provided on the tool body 60. The plurality of first markers 10 are distributed and arranged on the tool body 60 such that at least one first marker 10 can be imaged by the imaging device 39 regardless of the position of the tool 6 when the tool 6 is imaged by the imaging device 39.

[0027] The correction system 100 further includes a second imaging target 2 (see FIG. 5). FIG. 5 is an enlarged plan view showing the second imaging target 2. The second imaging target 2 is arranged in association with a specific part of the tool 6. Here, "arranged in association with a specific part" means arranged having a predetermined positional relationship with the specific part. Specifically, the correction system 100 further includes a jig 21 attached to the tool body 60. The second imaging target 2 is provided on the jig 21.

[0028] The jig 21 is attached to the tool body 60 with a specific part of the tool 6 as a reference. In this example, the specific part of the tool 6 is the tool tip, specifically the first electrode 61 (more specifically, the tip of the first electrode 61). Here, "attached with a specific part as a reference" means that the position and orientation are determined with the specific part as a reference.

[0029] The jig 21 is detachable from the tool body 60. The jig 21 may be attached to the tool body 60 only during a specific process in the correction process, and removed from the tool body 60 at other times.

[0030] The imaging device 39 is installed, for example, on a structure such as a wall, ceiling, floor, or pillar, or on a fixture installed on the structure. That is, the imaging device 39 is fixedly arranged at the installation location of the robot 4. The imaging device 39 is installed, for example, at a position where it can image the first imaging target 1 provided on the tool 6 throughout the operation of the robot 4. That is, the movement range of the first imaging target 1 throughout the operation of the robot 4 is included in the viewing angle of the imaging device 39. The imaging device 39 acquires a three-dimensional image, a stereo image, or a depth image of the robot. The imaging device 39 is, for example, a camera capable of imaging still images.

[0031] The imaging device 39 is communicable with the correction device 3. The imaging device 39 receives a command from the correction device 3 and performs imaging. The imaging device 39 inputs the imaging result to the correction device 3.

[0032] As shown in FIG. 1, the correction device 3 has a control device 8 and a robot control device 7. The control device 8 is communicable with the imaging device 39 and the robot control device 7.

[0033] The control device 8 controls the entire robot system 101 and the entire correction system 100. For example, the control device 8 outputs a command to the robot control device 7 to operate the robot 4 by the robot control device 7. Also, the control device 8 overall coordinates the correction process.

[0034] The robot control device 7 controls the robot 4. For example, the robot control device 7 receives a command from the control device 8 and executes the automatic operation of the robot 4. In the automatic operation, the robot control device 7 operates the robot 4 according to the teaching data.

[0035] Fig. 6 shows a schematic hardware configuration of the control device 8. The control device 8 has a control unit 80, a storage unit 81, and a memory 82.

[0036] The control unit 80 realizes various functions of the control device 8 by reading a program from the storage unit 81 and expanding it into the memory 82. The control unit 80 is formed of, for example, a processor such as a CPU (Central Processing Unit). The control unit 80 may be formed of an MCU (Micro Controller Unit), an MPU (Micro Processor Unit), an FPGA (Field Programmable Gate Array), a PLC (Programmable Logic Controller), a system LSI (large scale integrated circuit), or the like.

[0037] The storage unit 81 stores a program executed by the control unit 80 and various data. The storage unit 81 is formed of a non-volatile memory, an HDD (Hard Disc Drive), an SSD (Solid State Drive), or the like. For example, the storage unit 81 stores a correction program for correcting the teaching data. The memory 82 temporarily stores data and the like. The memory 82 is formed of, for example, a volatile memory.

[0038] Fig. 7 shows a schematic hardware configuration of the robot control device 7. The robot control device 7 has a control unit 70, a storage unit 71, and a memory 72.

[0039] The control unit 70 realizes various functions of the robot control device 7 by reading out and expanding the program from the storage unit 71 to the memory 72. The control unit 70 is formed of a processor such as a CPU, for example. The control unit 70 may be formed of an MCU, an MPU, an FPGA, a PLC, a system LSI, or the like.

[0040] The storage unit 71 stores the program executed by the control unit 70 and various data. The storage unit 71 is formed of a non-volatile memory, an HDD, an SSD, or the like. The memory 72 temporarily stores data and the like. The memory 72 is formed of a volatile memory, for example.

[0041] The storage unit 71 stores a teaching program for causing the robot 4 to perform a predetermined operation. The teaching program is a program for operating the robot 4 according to teaching data. In other words, the storage unit 71 stores the teaching data. Further, the storage unit 71 stores the corrected teaching data.

[0042] The operation of the robot 4 executed according to the teaching data is, for example, an operation of welding a plurality of different portions of the object W or a plurality of objects W with the tool 6. In this case, the robot control device 7 drives a plurality of motors 53 of the robot arm 5 to move the tool 6 to a plurality of different spot positions, and drives the electrode driving device 63 and the voltage applying device 67 at each spot position to execute welding with the tool 6.

[0043] The teaching data defines the trajectory of the robot 4 in the operation of the robot 4. For example, the teaching data discretely defines the position and orientation of a specific portion of the tool 6 in the operation of the robot 4.

[0044] In this example, the teaching data defines the angle of each joint 52 when a specific portion (tool tip) is located at a predetermined teaching point in a predetermined posture. Since the lengths of the respective links 51 are known, when the angles of the respective joints 52 of the robot 4 are determined, the position and orientation of the robot 4, that is, the position and orientation of the specific portion of the tool 6 are uniquely determined.

[0045] The plurality of teaching points are, for example, a plurality of dotting positions in the welding operation. The teaching data is time-series data in which the angles of the respective joints 52 corresponding to each dotting position are arranged in the order of the dotting positions to be passed through.

[0046] The initial data of the teaching data in the storage unit 71, that is, the teaching data before correction, is acquired in advance. The teaching data before correction is acquired, for example, by offline teaching. The offline teaching is performed, for example, using a robot model in a virtual space.

[0047] FIG. 8 is a block diagram showing the software configuration of the control device 8. The control device 8 has, as functional blocks, a receiver 83, an image processor 84, a relative relationship acquirer 85, a position detector 86, and a deviation calculator 87. The control unit 80 realizes these functional blocks by reading out the correction program from the storage unit 81 and expanding it into the memory 72.

[0048] The receiver 83 receives an execution instruction for correction processing from the user. When an instruction from the user is input, the receiver 83 starts the correction processing. For example, the receiver 83 causes the robot control device 7 to execute the operation of the robot 4 according to the teaching data.

[0049] The image processor 84 causes the imaging device 39 to perform imaging, and by processing the imaging result of the imaging device 39, detects the positions of the first marker 10 and the second marker 20 in the base coordinate system.

[0050] The relative relationship acquirer 85 acquires the relative positional relationship between the first marker 10 and a specific part of the tool 6. In this example, the specific part is the tip of the tool of the robot 4, specifically, the first electrode 61 (more specifically, the tip of the first electrode 61). That is, the relative positional relationship is the position and orientation of the first electrode 61 with respect to the first imaging target 1.

[0051] The relative relationship acquirer 85 receives the positions of the first marker 10 and the second marker 20 in the base coordinate system detected by the image processor 84, and obtains the relative positional relationship between the first marker 10 and the first electrode 61. That is, in order to obtain the relative positional relationship, the image processor 84 images the tool body 60 to which the jig 21 is attached.

[0052] Based on the positions of the plurality of first markers 10, the relative relationship acquirer 85 obtains the position and orientation of the tool coordinate system set in the tool 6. Originally, a tool coordinate system defined by three orthogonal axes is set in the tool 6. Since the position of the first marker 10 in the tool body 60 is known, if the position of the first marker 10 is known, the origin position of the tool coordinate system and the direction of the coordinate axes are also known. Further, the relative relationship acquirer 85 obtains the position and orientation of the first electrode 61 from the positions of the plurality of second markers 20. Since the plurality of second markers 20 are arranged in association with the first electrode 61, the position and orientation of the first electrode 61 can be obtained from the positions of the plurality of second markers 20. The position and orientation of the tool coordinate system, as well as the position and orientation of the first electrode 61, are obtained with reference to the base coordinate system.

[0053] Thereafter, based on the positions of the second markers 20 with respect to the plurality of first markers 10, the relative relationship acquirer 85 obtains the position and orientation of the first electrode 61 in the tool coordinate system. The position and orientation of the first electrode 61 in this tool coordinate system are an example of the relative positional relationship between the first marker 10 and the first electrode 61. The relative relationship acquirer 85 stores the obtained position and orientation of the first electrode 61 in the tool coordinate system in the storage unit 71.

[0054] The position detector 86 receives the position of the first marker 10 in the base coordinate system detected by the image processor 84, and detects the detection position of the tool 6 and the like. The position detector 86 detects the detection position of the tool 6 and the like when the robot 4 operates according to the teaching data.

[0055] Specifically, the position detector 86 detects the position and orientation of the first electrode 61, which is a specific part. First, the position detector 86 detects the position and orientation of the tool body 60 based on the position of the first marker 10 in the base coordinate system detected by the image processor 84. For example, the position detector 86 obtains the origin position and the direction of the coordinate axes of the tool coordinate system in the base coordinate system as the position and orientation of the tool body 60. Subsequently, the position detector 86 reads out the position and orientation of the first electrode 61 in the tool coordinate system from the storage unit 71. The position detector 86 obtains the position and orientation of the first electrode 61 in the base coordinate system from the origin position and the direction of the coordinate axes of the tool coordinate system and the position and orientation of the first electrode 61 in the tool coordinate system.

[0056] The deviation calculator 87 obtains the deviation between the target position and target orientation of the first electrode 61 (hereinafter, both are collectively referred to as "target position, etc.") and the detected position, etc. of the first electrode 61. Specifically, the deviation calculator 87 sets the position and orientation of the first electrode 61 defined by the teaching data as the target position and target orientation, respectively. The deviation calculator 87 receives the teaching data from the robot control device 7 and calculates the target position, etc. of the first electrode 61 based on the teaching data. As described above, the teaching data is the angle of each joint 52. Since the lengths of the respective links 51 are known, the deviation calculator 87 can obtain the position and orientation of the tool body 60 when the angles of the respective joints 52 are known. The design values of the position and orientation of the first electrode 61 with respect to the tool body 60 are set for each tool 6. The deviation calculator 87 can obtain the position and orientation of the first electrode 61 as the target position and target orientation from the position and orientation of the tool body 60 by using this design value.

[0057] The deviation calculator 87 calculates the deviation (hereinafter referred to as "deviation of the specific part") between the obtained target position, etc. of the first electrode 61 and the detected position, etc. of the first electrode 61 detected by the position detector 86. The deviation calculator 87 outputs the obtained deviation of the specific part to the robot control device 7.

[0058] FIG. 9 is a block diagram showing a schematic software configuration of the robot control device 7. The robot control device 7 has an operation controller 73 and a corrector 74 as functional blocks. The control unit 70 of the robot control device 7 realizes these functional blocks by reading a program from the storage unit 71 (see FIG. 7) into the memory 72 and expanding it.

[0059] The operation controller 73 controls the robot 4 according to the teaching program stored in the storage unit 71. Specifically, the operation controller 73 operates the robot 4 according to the teaching data. The operation controller 73 reads out the angle of each joint 52 defined by the teaching data from the storage unit 71, and outputs the angle of each joint 52 as a command angle to the servo amplifier (driver) corresponding to each joint 52. The servo amplifier performs feedback control on the current applied to the motor 53 so that the angle of each joint 52 becomes the command angle.

[0060] The operation controller 73 not only controls the robot 4 during correction of the teaching data, but also controls the operation of the robot 4 during normal operation of the robot 4 based on the teaching data. For example, in addition to outputting a command angle to the motor 53, the operation controller 73 also outputs commands to the voltage application device 67 and the drive source 69 to operate the tool 6.

[0061] The corrector 74 corrects the teaching data stored in the storage unit 71. The corrector 74 corrects the teaching data based on the deviation of a specific part. The target position and target posture of the specific part are the position and posture of the specific part defined by the initial data of the teaching data. In this example, the corrector 74 corrects the teaching data based on the deviation between the detected position etc. of the first electrode 61 which is the specific part and the target position etc. The corrector 74 receives the deviation of the specific part from the control device 8, and corrects the angle of each joint 52 in the teaching data so that the deviation becomes smaller. The corrector 74 stores the corrected teaching data in the storage unit 71.

[0062] The first marker 10 is attached to the tool body 60. The first marker 10 is substantially spherical. The first marker 10 is a self-luminous marker that can emit light by itself. The light source of the self-luminous marker is, for example, an LED (Light Emitting Diode).

[0063] When the positions of at least three first markers 10 are known, the position detector 86 can appropriately determine the position and orientation of the tool body 60. For this reason, the plurality of first markers 10 are preferably arranged dispersedly on the tool body 60 so that at least three first markers 10 can be imaged by the imaging device 39 regardless of the position and orientation of the tool body 60.

[0064] Specifically, the tool body 60 has a first surface 60a and a second surface 60b facing each other. When the direction in which the first electrode 61 and the second electrode 62 face each other (that is, the driving direction of the second electrode 62 by the electrode driving device 63) is defined as the vertical direction, each of the first surface 60a and the second surface 60b faces a direction intersecting the vertical direction.

[0065] A plurality of first markers 10 are provided on each of the first surface 60a and the second surface 60b. Specifically, three first markers 10 are arranged on the first surface 60a, and three first markers 10 are arranged on the second surface 60b. More specifically, one first marker 10 is arranged at the mounting portion 64 of the first surface 60a, and two first markers 10 are arranged at the support portion 65 of the first surface 60a. The first markers 10 are arranged in the same manner on the second surface 60b. That is, a total of six first markers 10 are provided on the tool body 60.

[0066] The plurality of second markers 20 are provided, for example, on the jig 21 shown in FIG. 5. The jig 21 has a substantially cylindrical mounting portion 22 mounted on the first electrode 61, and three blades 23 radially extending from the mounting portion 22 in the radial direction centered on the mounting portion 22. The mounting portion 22 is attached to the tool body 60 in a non-rotatable manner with respect to the first electrode 61. The blades 23 are arranged at intervals of 120 degrees in the circumferential direction centered on the mounting portion 22.

[0067] The plurality of second markers 20 are provided at different positions from each other in the jig 21. Specifically, the second markers 20 are provided at the tips of the respective blades 23. The three second markers 20 form an equilateral triangle.

[0068] In this example, the second marker 20 is a non-emitting marker. Specifically, the second marker 20 is a notch formed in the jig 21 (specifically, at the tip of the blade 23).

[0069] The plurality of second markers 20 are provided on the jig 21 such that all of the second markers 20 and the tip of the first electrode 61 are arranged on a virtual same plane. That is, the first electrode 61, which is a specific part, is arranged on a virtual plane including the plurality of second markers 20. In this example, the first electrode 61 is located at the position of the centroid of the equilateral triangle formed by the three second markers 20.

[0070] Subsequently, the correction process will be described in detail. FIG. 10 is a flowchart showing the correction process. FIG. 11 is a sequence diagram showing the correction process.

[0071] In step S1, the receiver 83 of the control device 8 receives an execution instruction for the correction process from the user. For example, the receiver 83 displays a reception screen on the display of the control device 8 and waits for an input of an execution instruction from the user. When an execution instruction is input from the user, the receiver 83 starts the correction process.

[0072] When the correction process is started, first, in step S2, the relative relationship acquirer 85 requests the user to attach the jig 21 to the tool body 60. For example, the relative relationship acquirer 85 makes this attachment request by voice output or display of the control device 8 or the like.

[0073] In response to the attachment request, the user attaches the jig 21 to the tool body 60 as shown in FIG. 5.

[0074] After that, in step S3, the relative relationship acquirer 85 determines whether or not the jig 21 has been attached. For example, the relative relationship acquirer 85 determines whether or not an input indicating that the attachment is complete has been received from the user to the control device 8. The relative relationship acquirer 85 waits until the jig 21 is attached.

[0075] When the attachment of the jig 21 is completed, in step S4, the relative relationship acquirer 85 operates the robot 4 so that the tool 6 to which the jig 21 is attached is disposed at a position and posture (hereinafter referred to as "acquisition position etc.") for acquiring the relative positional relationship between the first marker 10 and a specific portion of the tool 6. Specifically, as shown in FIG. 11, the relative relationship acquirer 85 outputs a command to operate the robot 4 so that the tool 6 is disposed at the acquisition position etc. to the robot control device 7 (step ss41).

[0076] The robot control device 7 receives the command from the relative relationship acquirer 85, operates the robot 4, and moves the tool 6 to the acquisition position etc. (step ss42). The acquisition position etc. is the position and posture of the tool 6 in a state where at least three or more first markers 10 and three second markers 20 are visible from the imaging device 39 without being hidden by other objects. The acquisition position etc. is determined in advance. When the tool 6 moves to the acquisition position etc., the robot control device 7 outputs a movement completion report to the control device 8 (step ss43).

[0077] In step S5, the relative relationship acquirer 85 determines whether or not the movement of the tool 6 is completed. Specifically, the relative relationship acquirer 85 determines whether or not it has received a movement completion report from the robot control device 7. The relative relationship acquirer 85 waits until it receives the movement completion report.

[0078] When the movement of the tool 6 to the acquisition position and the like is completed, the relative relationship acquirer 85 acquires the relative positional relationship between the first marker 10 and the first electrode 61 in step S6. Specifically, first, the image processor 84 images the robot 4 with the tool 6 disposed at the acquisition position and the like, and obtains the positions of the first marker 10 and the second marker 20 from the imaging result. The relative relationship acquirer 85 obtains the position and the like of the first electrode 61 in the tool coordinate system based on the obtained positions of the first marker 10 and the second marker 20. The relative relationship acquirer 85 stores the obtained position and the like of the first electrode 61 in the tool coordinate system in the storage unit 81.

[0079] After that, in step S7, the relative relationship acquirer 85 requests the user to remove the jig 21 from the tool body 60. For example, the relative relationship acquirer 85 makes this removal request by voice output or display of the control device 8 or the like.

[0080] Upon receiving the removal request, the user removes the jig 21 from the tool body 60. The user inputs to the control device 8 that the removal is completed. Thereby, the acquisition of the relative positional relationship between the first marker 10 and the first electrode 61 is completed.

[0081] Subsequently, in step S8, the position detector 86 operates the robot 4 according to the teaching data. Specifically, as shown in FIG. 11, the position detector 86 outputs a command to operate the robot 4 according to the teaching data to the robot control device 7 (step ss81a).

[0082] The motion controller 73 receives the command from the position detector 86 and starts the operation of the robot 4 according to the teaching data. The motion controller 73 operates the robot 4 so that the first electrode 61 (that is, the specific part) moves to all the teaching points defined by the teaching data in order. As described above, the teaching data defines the angles of the respective joints 52 when the first electrode 61 is located at each teaching point. The motion controller 73 outputs the angles of the respective joints 52 corresponding to one teaching point to the motor 53. Thereby, the first electrode 61 moves to the teaching point (step ss82a).

[0083] When the first electrode 61 moves to the teaching point, the operation controller 73 outputs an operation completion report to the control device 8 (step ss83a). At this time, the operation controller 73 outputs teaching data (specifically, information on the teaching point where the first electrode 61 is located (i.e., the angles of the respective joints 52)) together with the operation completion report.

[0084] In step S9, the position detector 86 determines whether the movement of the first electrode 61 to the teaching point has been completed. Specifically, the position detector 86 determines whether it has received an operation completion report from the operation controller 73. The position detector 86 waits until it receives the operation completion report.

[0085] When the movement of the first electrode 61 to the teaching point is completed, the deviation calculator 87 obtains the deviation of a specific part in step S10.

[0086] Specifically, first, the image processor 84 images the robot 4 in a state where the first electrode 61 is located at the teaching point, and obtains the position of the first marker 10 from the imaging result. Based on the obtained position of the first marker 10, the position detector 86 obtains the origin position and the orientation of the coordinate axes of the tool coordinate system. The position detector 86 obtains the position of the first electrode 61 in the base coordinate system and the like based on the obtained origin position and the orientation of the coordinate axes of the tool coordinate system, and the position of the first electrode 61 in the tool coordinate system read from the storage unit 71 and the like. The obtained position of the first electrode 61 and the like are the detected position of the first electrode 61 and the like.

[0087] Next, the deviation calculator 87 calculates the target position of the first electrode 61 and the like based on the teaching data received from the operation controller 73. The deviation calculator 87 calculates the deviation between the obtained target position of the first electrode 61 and the like and the detected position of the first electrode 61 detected by the position detector 86. The deviation calculator 87 stores the obtained deviation of the specific part in the storage unit 81 in association with the information of the teaching point.

[0088] When the calculation of the deviation of the specific part is completed, the position detector 86 determines, in step S11, whether the movement of the first electrode 61 to all the teaching points has been completed. Specifically, when the movement of the first electrode 61 to all the teaching points is completed, the operation controller 73 outputs a full completion report indicating that all the operations of the robot 4 according to the teaching data have been completed to the control device 8. The position detector 86 determines whether it has received the full completion report from the operation controller 73.

[0089] If the movement of the robot 4 to all the teaching points is not completed, the position detector 86 returns to step S8 and outputs a command to operate the robot 4 according to the teaching data to the robot control device 7 again (step ss81b). The operation controller 73 moves the first electrode 61 to the next teaching point in response to the command from the position detector 86 (step ss82b). When the first electrode 61 moves to the next teaching point, the operation controller 73 outputs the corresponding teaching data and an operation completion report to the control device 8 (step ss83b).

[0090] Thereafter, the deviation calculator 87 obtains the deviation of the specific part in step S10 as described above, and determines in step S11 whether the movement of the first electrode 61 to all the teaching points has been completed. In this way, the processes of steps S8, S9, S10, and S11 are repeated until the movement of the first electrode 61 to all the teaching points is completed.

[0091] When the movement of the first electrode 61 to all the teaching points is completed, the operation controller 73 outputs the corresponding teaching data, an operation completion report, and a full completion report to the control device 8 (step ss83x). The deviation calculator 87 calculates the deviation of the specific part corresponding to the last teaching point. Since the deviation calculator 87 has received the full completion report, it proceeds from step S11 to step S12.

[0092] In step S12, the deviation calculator 87 reads out the deviations of all the specific parts from the storage unit 81 and outputs them to the robot control device 7 (step ss12).

[0093] When the robot control device 7 receives the deviations of all the specific parts, the corrector 74 corrects the angles of the respective joints 52 in the teaching data so that each deviation becomes smaller in step S13. The corrector 74 stores the corrected teaching data in the storage unit 71. Then, the corrector 74 outputs a correction completion report to the control device 8 (step ss13).

[0094] The deviation calculator 87 ends the correction process by receiving the correction completion report.

[0095] Thus, after the teaching data is corrected, the robot control device 7 uses the corrected teaching data when performing the normal operation of the robot 4.

[0096] As described above, the first imaging target 1 is a plurality of first markers 10 provided at different positions on the tool 6. Therefore, when the robot 4 is operated according to the teaching data and the first imaging target 1 is imaged by the imaging device 39, even if one of the first markers 10 is located at a position where it cannot be imaged by the imaging device 39, there is a possibility that another first marker 10 can be imaged by the imaging device 39. That is, a situation where the imaging device 39 can image at least one of the first markers 10 is likely to occur. Therefore, the position and orientation of the tool 6 can be appropriately detected, and thus the teaching data can be appropriately corrected.

[0097] Further, the first marker 10 is provided on the first surface 60a and the second surface 60b, which are a plurality of surfaces facing different directions on the tool 6. In this case, even if one of the first surface 60a and the second surface 60b faces a direction in which it is difficult to be imaged by the imaging device 39, the other is likely to face a direction in which it is easy to be imaged by the imaging device 39. For this reason, the first marker 10 can be more reliably imaged by the imaging device 39. In particular, in this example, the first surface 60a and the second surface 60b are surfaces facing opposite sides to each other. Therefore, even if one of the first surface 60a and the second surface 60b faces a direction in which it is difficult to be imaged by the imaging device 39, the other is more likely to face a direction in which it is easy to be imaged by the imaging device 39.

[0098] Furthermore, at least three first markers 10 are provided on each of the first surface 60a and the second surface 60b. Therefore, when the imaging device 39 can image the first surface 60a or the second surface 60b, at least three first markers 10 can be imaged. When the positions of the three first markers 10 are known, not only the position of the tool 6 but also the posture of the tool 6 can be determined.

[0099] Also, based on the imaging result of the first marker 10 provided on the tool body 60 and the relative positional relationship between the first marker 10 and the specific part (the first electrode 61 in this example), the detection position etc. of the specific part are determined. That is, the detection position etc. of the specific part are not directly determined using the imaging result of the specific part, but are indirectly determined using the imaging result of the first marker 10 provided on the tool body 60 which is a part different from the specific part. Thereby, even when the specific part in the tool 6 is located at a location where it is difficult to be imaged by the imaging device 39, by providing the first marker 10 on the tool body 60 which is easy to be imaged by the imaging device 39, the detection position etc. of the specific part can be easily determined. Especially when the specific part is the first electrode 61, since the second electrode, the electrode driving device 63, the support part 65 etc. are arranged around the first electrode 61, the first electrode 61 is likely to be hidden from the imaging device 39. However, by providing the first marker 10 on the tool body 60, the position of the first marker 10 can be determined with a relatively high degree of freedom in the tool body 60. That is, the first marker 10 is easy to be arranged at a position where it is not hidden from the imaging device 39. As a result, the detection position etc. of the first electrode 61 can be appropriately determined.

[0100] Also, the relative positional relationship between the first marker 10 and the first electrode 61 is determined based on the imaging result of the first marker 10 and the second marker 20 arranged in association with the first electrode 61, that is, the imaging result of the actual machine of the tool 6. For this reason, regardless of the deflection of the tool 6 or the dimensional error of the tool 6 etc., the relative positional relationship between the first marker 10 and the first electrode 61 can be accurately determined, and thereby, the detection position etc. of the first electrode 61 can be determined more accurately.

[0101] Further, the second marker 20 is provided on a jig 21 that is detachable from the tool body 60. Therefore, when operating the robot 4 according to the teaching data in the correction process, the jig 21 can be removed from the tool body 60. When the jig 21 is attached to the tool body 60, there is a risk that the jig 21 may interfere with the tool 6 reaching the teaching point when the robot 4 operates according to the teaching data, or the first marker 10 may be hidden from the imaging device 39 by the jig 21. Therefore, by removing the jig 21 from the tool body 60, the tool 6 can reach the teaching point appropriately, and the first marker 10 can be imaged appropriately by the imaging device 39.

[0102] Further, the first marker 10 is a self-luminous marker that can emit light. Therefore, for example, even when the tool body 60 is formed of a material that easily reflects light, such as metal, in the imaging of the first marker 10 by the imaging device 39, it is possible to reduce the influence of disturbances such as light reflection by the tool body 60, and the first marker 10 can be imaged appropriately.

[0103] Further, the first imaging target 1 includes four or more first markers 10. When the positions of at least three first markers 10 are known, the position and orientation of the tool body 60 can be obtained. When four or more first markers 10 are provided, even if one first marker 10 is hidden from the imaging device 39, the imaging device 39 can image the remaining three or more first markers 10. That is, a situation where at least three first markers 10 can be photographed is likely to occur.

[0104] As described above, the correction system 100 includes a first imaging target 1 provided on the tool 6 of the robot 4, an imaging device 39 that images the first imaging target 1, and a correction device 3 that corrects the teaching data of the robot 4. The control device 8 corrects the teaching data based on the detected position of the tool 6 obtained from the imaging result of the first imaging target 1 imaged by the imaging device 39 when the robot 4 operates according to the teaching data. The first imaging target 1 is a plurality of first markers 10 (markers) provided at different positions on the tool 6.

[0105] In other words, the method for correcting the teaching data includes operating the robot 4 according to the teaching data, imaging the first imaging target 1 provided on the tool 6 of the robot 4 operated according to the teaching data with the imaging device 39, and correcting the teaching data based on the detected position of the tool 6 obtained from the imaging result of the first imaging target 1 imaged by the imaging device 39. The first imaging target 1 includes a plurality of first markers 10 (markers) provided at different positions on the tool 6.

[0106] According to these configurations, when the imaging device 39 images the first imaging target 1, even if one of the first markers 10 is located at a position where it cannot be imaged by the imaging device 39, there is a possibility that the other first marker 10 can be imaged. Therefore, the detected position of the tool 6 can be appropriately obtained, and the teaching data of the robot 4 can be appropriately corrected.

[0107] Further, the first marker 10 is provided on a first surface 60a and a second surface 60b (a plurality of surfaces) of the tool 6 that face different directions.

[0108] According to this configuration, even if one of the first surface 60a and the second surface 60b on which the first marker 10 is provided faces a direction that is difficult to image by the imaging device 39, the other may face a direction that is easy to image by the imaging device 39. For this reason, the imaging device 39 can more reliably image the first marker 10.

[0109] Further, the first marker 10 is provided on the first surface 60a and the second surface 60b of the tool 6 that face opposite to each other.

[0110] According to this configuration, there is a high possibility that at least one of the first surface 60a and the second surface 60b faces a direction in which it is easy to be imaged by the imaging device 39. Therefore, the first marker 10 can be more reliably imaged by the imaging device 39.

[0111] The tool 6 has a tool body 60 and a first electrode 61 (specific part) provided on the tool body 60. The first imaging target 1 includes a plurality of first markers 10 provided on the tool body 60. The control device 8 obtains the detection position of the first electrode 61 from the imaging result of the first marker 10 by the imaging device 39 and the relative positional relationship between the first marker 10 and the first electrode 61, and corrects the teaching data based on the detection position of the first electrode 61.

[0112] According to this configuration, even when the first electrode 61 is present at a position where it is likely to be hidden from the imaging device 39, the detection position of the first electrode 61 can be appropriately obtained from the imaging result of the first marker 10 provided on the tool body 60.

[0113] The correction system 100 further includes a second imaging target 2 arranged in association with the first electrode 61 (specific part). The control device 8 obtains the relative positional relationship from the imaging results of the first marker 10 and the second imaging target 2 imaged by the imaging device 39.

[0114] According to this configuration, since the second imaging target 2 is arranged to have a predetermined positional relationship with the first electrode 61, the relative positional relationship of the first electrode 61 with respect to the first marker 10 can be accurately obtained based on the imaging result of the second imaging target 2.

[0115] The correction system 100 further includes a jig 21 attached to the tool body 60 with the first electrode 61 as a reference. The second imaging target 2 is a plurality of second markers 20 provided at different positions on the jig 21.

[0116] According to this configuration, by attaching the jig 21 to the tool body 60, the relative positional relationship between the first electrode 61 and the first marker 10 can be obtained. Further, since a plurality of second markers 20 are provided on the jig 21, the relative positional relationship between the first electrode 61 and the first marker 10 can be obtained more accurately.

[0117] In addition, the first electrode 61 is disposed on a virtual plane including the plurality of second markers 20.

[0118] According to this configuration, it becomes easier to obtain the position of the first electrode from the position of the second marker 20. As a result, the relative positional relationship between the first electrode 61 and the first marker 10 can be easily obtained.

[0119] In addition, the jig 21 is removed from the tool body 60 when the robot 4 operates according to the teaching data in order to image the first marker 10 by the imaging device 39.

[0120] According to this configuration, the operation of the robot 4 performed according to the teaching data can be performed with the jig 21 removed from the tool body 60. For this reason, when the first marker 10 is imaged by the imaging device 39, the first marker 10 is not hidden by the jig 21, and the first marker 10 can be appropriately imaged. In addition, when the robot 4 is operated according to the teaching data, it is possible to avoid the jig 21 interfering with the movement of the tool 6.

[0121] In addition, the first marker 10 is a self-luminous marker that can emit light.

[0122] According to this configuration, in imaging the first marker 10 by the imaging device 39, by causing the first marker 10 to emit light, for example, it is possible to make it difficult to be affected by disturbances such as light reflection by the tool body 60, and the first marker 10 can be appropriately imaged.

[0123] In addition, the tool 6 is a welding gun having a first electrode 61 (electrode) for welding, and the specific part is the first electrode 61.

[0124] According to this configuration, based on the imaging result of the first marker 10 by the imaging device 39, the detection position of the first electrode 61 of the welding gun can be obtained, and the teaching data can be corrected based on the detection position of the first electrode 61. Therefore, welding can be appropriately performed by the welding gun.

[0125] <<Other Embodiments>> As described above, the above embodiments have been described as examples of the technology disclosed in the present application. However, the technology in the present disclosure is not limited to this, and is also applicable to embodiments in which changes, replacements, additions, omissions, etc. are made as appropriate. In addition, it is also possible to combine the respective components described in the above embodiments to form a new embodiment. Further, among the components described in the accompanying drawings and the detailed description, not only the components essential for solving the problem but also the components not essential for solving the problem for exemplifying the technology may be included. Therefore, just because those non-essential components are described in the accompanying drawings and the detailed description, it should not be immediately determined that those non-essential components are essential.

[0126] For example, the first marker 10 may be a self-luminous marker as shown in FIG. 12. This first marker 10 has a light source 12 and a cover 13 covering the light source 12. The cover 13 is provided with a window portion 14 through which the light emitted from the light source 12 passes. The window portion 14 is, for example, a hole or a transparent or translucent portion through which light can pass. The window portion 14 has a shape such as a circular shape, a triangular shape, a quadrangular shape, or a star shape, for example. The self-luminous marker emits light having substantially the same shape as the window portion 14.

[0127] By using such a self-luminous marker, simply by changing the shape of the window portion 14, the shape of the first marker 10 can be changed for each first marker 10. Therefore, the control device 8 can easily determine which part of the tool 6 the first marker 10 is disposed on based on the imaging result of the first marker 10, and thus can more easily obtain the posture of the tool 6.

[0128] Also, the first marker 10 may be a marker whose appearance changes depending on the viewing angle. For example, as shown in FIG. 13, the first marker 10 may include a plurality of marks 15. The first marker 10 preferably includes three or more marks 15. The polygon having three or more marks 15 as vertices changes in shape according to the viewing angle. Therefore, based on the outer shape of the polygon having three or more marks 15 as vertices imaged by the imaging device 39, the posture of the polygon (for example, the normal direction, etc.), that is, the posture of the tool 6 can be obtained. Also, the plurality of marks 15 may be configured to be distinguishable from each other by shape or color or the like. Thereby, the posture of the tool 6 can be obtained more easily. Further, the first marker 10 may be provided with a symbol (including letters and numbers) 16 or a figure that can distinguish each of the plurality of first markers 10. Thereby, based on the captured image of the first marker 10, it is possible to easily determine which part of the tool 6 the first marker 10 is disposed on, and thus the posture of the tool 6 can be obtained more easily.

[0129] Also, for example, each first marker 10 may be discriminated as follows. First, the tool 6 is imaged by the imaging device 39, and the approximate posture of the tool 6 is obtained by comparing this imaging result with the CAD data or the like of the tool 6 registered in advance. After that, based on the obtained approximate posture of the tool 6, the detection range of each first marker 10 is automatically changed to detect each first marker 10. By detecting the first marker 10 in this way, for example, it is possible to determine which part of the tool 6 each first marker 10 is disposed on without changing the shape or the like for each first marker 10.

[0130] Further, the robot 4 is not limited to an industrial robot and may be, for example, a medical robot. Also, the robot arm 5 is not limited to a vertically articulated type and may be a horizontally articulated type, a parallel link type, a rectangular coordinate type, a polar coordinate type, or the like. Further, the mechanism for moving the tool 6 is not limited to a robot arm.

[0131] Also, the object W to be welded by the robot 4 is not limited to two plates and may be, for example, a combination of members other than plates.

[0132] Also, the work performed by the robot 4 may be welding other than spot welding, for example, arc welding or laser welding. Also, the work may be work other than welding, for example, drilling, grinding, polishing, painting, assembling, or sorting.

[0133] Also, the shape, size, etc. of the tool body 60 can be changed as appropriate. Also, the drive mechanism 68 of the tool 6 is not limited to a ball screw mechanism and may be another mechanism such as a link mechanism.

[0134] Also, the drive source 69 of the tool 6 may be a motor other than a servo motor. Also, the drive source 69 is not limited to a motor and may be, for example, a hydraulic or pneumatic piston or an electric linear actuator.

[0135] Also, the tool 6 of the robot 4 is not limited to a welding gun. For example, the tool 6 may be a device for drilling, grinding, polishing, or painting, or a robot hand.

[0136] Also, the correction device 3 may be formed from a single device including the functions of the robot control device 7 and the control device 8.

[0137] Also, the robot control device 7 may receive an execution instruction for the correction process, or another device may receive it.

[0138] In addition, each of the communication between the imaging device 39 and the control device 8 and the communication between the imaging device 39 and the robot control device 7 may be wired communication or wireless communication.

[0139] Further, the imaging device 39 may be a camera capable of imaging a moving image.

[0140] In addition, the corrector 74 may correct the teaching data each time the control device 8 acquires the deviation of a specific part. Further, the correction process by the correction device 3 is not limited to being performed only once as in the flowchart shown in FIG. 10. For example, after the teaching data is corrected, it is determined whether or not the deviation of the specific part has become equal to or less than a predetermined threshold value. If it is not equal to or less than the predetermined threshold value, the correction process is performed again, so that the correction process may be repeatedly performed until the deviation of the specific part becomes equal to or less than the predetermined threshold value.

[0141] In addition, the relative positional relationship between the first marker 10 and the specific part of the tool 6 is not limited to being acquired by imaging the second imaging target 2 with the imaging device 39. For example, the relative positional relationship between the first marker 10 and the specific part of the tool 6 may be set based on design values of the tool 6 or the like. In this case, the processes of steps S2 to S7 shown in FIG. 7 can be omitted.

[0142] In addition, the teaching data is not limited to the angles of the respective joints 52, and may be the position and orientation of a specific part in the robot 4 such as the tip of the tool. Further, the teaching point in the teaching data is not limited to the hitting position. For example, the teaching point may include, in addition to the hitting position, a waypoint to the hitting position.

[0143] In addition, the operation of the robot 4 executed according to the teaching data may be an operation of welding only one place of the object W.

[0144] In addition, the teaching data before correction may be obtained by direct teaching in which the teacher directly touches and moves the actual robot 4, teaching by remotely operating the teacher using a teaching pendant, or teaching by operating the master-slave device of the teacher, etc.

[0145] In addition, the operation controller 73 of the robot control device 7 may not have a function of controlling the operation of the robot 4 during normal operation of the robot 4 based on the teaching data. That is, the robot control device 7 may have another functional block for controlling the normal operation of the robot 4.

[0146] In addition, the first marker 10 may be a marker whose appearance changes depending on the viewing angle, such as having a non-spherical shape. In this case, if the first imaging target 1 has at least two first markers 10, even if the imaging device 39 cannot image one of the first markers 10, as long as the other first marker 10 can be imaged, the posture of the first marker 10 can be known, and thus the position and posture of the tool 6 can be obtained.

[0147] In addition, the surface on which the first marker 10 is provided on the tool 6 is not limited. For example, the first marker 10 may not be provided on surfaces facing each other on the tool 6, and may be provided on a plurality of surfaces that do not face each other but face different directions. In addition, the position and number of the first markers 10 provided on the tool body 60 are not limited. For example, the first marker 10 may be provided on a surface intersecting the vertical direction on the tool body 60, such as a surface on which the mounting portion 64 is provided among the support portions 65, in addition to or instead of the six first markers 10 shown in FIGS. 2 to 4.

[0148] In addition, the light source of the self-luminous marker as the first marker 10 is not limited to an LED, and may be an incandescent bulb or organic electroluminescence, etc. In addition, the first marker 10 may be a non-luminous marker that does not emit light. The non-luminous marker is, for example, a figure, pattern, convex portion, concave portion, hole, or notch.

[0149] Further, the shape of the first marker 10 is not limited. Also, the first marker 10 may be provided not on the tool body 60 but on the first electrode 61, the second electrode 62, the electrode driving device 63, or the like.

[0150] Also, the first marker 10 may be directly attached to the tool body 60 or may be indirectly attached via other members.

[0151] Also, the jig 21 may be directly attached to the tool body 60 or may be indirectly attached to the tool body 60 via other members.

[0152] Also, the jig 21 may be attached to the tool body 60 when the robot 4 operates in the correction process. Further, the correction system 100 may not include the jig 21. For example, the second imaging target 2 may be directly provided on the tool body 60.

[0153] Also, the plurality of second markers 20 can be arranged at arbitrary positions as long as they are arranged in association with specific portions. For example, when the number of the second markers 20 is two, the first electrode 61 may be located at the midpoint of the line segment formed by the two second markers 20. When the number of the second markers 20 is four or more, the first electrode 61 may be located at the centroid of the polygon having the plurality of second markers 20 as vertices.

[0154] Also, when the plurality of second markers 20 can be discriminated from each other by their shapes or the like, the first electrode 61 can be arranged at an arbitrary position instead of at the position of the centroid of the figure formed by the plurality of second markers 20. For example, when the number of the second markers 20 is two, the first electrode 61 may be located at a position where the ratio of the distance from one second marker 20 to the distance from the other second marker 20 is 1:2. Thus, when the plurality of second markers 20 can be discriminated from each other, the second markers 20 can be arranged with a high degree of freedom.

[0155] Further, the second marker 20 may be arranged at a specific portion instead of at a position away from the specific portion. That is, when imaging the second marker 20, the robot 4 moves to an acquisition position which is a position for imaging the second marker 20, regardless of the teaching data. By setting the acquisition position and the like to a position and posture where the second marker 20 arranged at the specific portion is not hidden from the imaging device 39, the second marker 20 arranged at the specific portion can be appropriately imaged by the imaging device 39.

[0156] In addition, each second marker 20 is not limited to a notch, and may be a pattern, a convex portion, a concave portion, a hole, or the like. Further, each second marker 20 may be a self-luminous marker as shown in FIGS. 12 and 13.

Explanation of reference numerals

[0157] 100 Correction system 1 First imaging target 10 First marker (marker) 2 Second imaging target 20 Second marker 21 Jig 3 Correction device 39 Imaging device 4 Robot 6 Tool 60 Tool body 61 First electrode (electrode)

Claims

1. a first imaging target provided on a tool of a robot; an imaging device that images the first imaging target; a correction device that corrects the teaching data of the robot, wherein the correction device corrects the teaching data based on a detection position of the tool obtained from an imaging result of the first imaging target imaged by the imaging device when the robot operates according to the teaching data; the first imaging target includes a plurality of first markers provided at different positions on the tool; the tool has a tool body and a specific portion provided on the tool body; the plurality of first markers are provided on the tool body; the correction device: obtains a detection position of the specific portion from an imaging result of the first marker by the imaging device and a relative positional relationship between the first marker and the specific portion; corrects the teaching data based on the detection position of the specific portion; further includes a second imaging target arranged in association with the specific portion; the correction device is a correction system that obtains the relative positional relationship from imaging results of the first marker and the second imaging target imaged by the imaging device.

2. In the correction system according to claim 1, the first marker is provided on a plurality of surfaces of the tool facing different directions.

3. In the correction system according to claim 2, the first marker is provided on two surfaces of the tool facing opposite sides.

4. In the correction system according to claim 1, the tool further includes a jig attached to the tool body with reference to the specific portion; the second imaging target is a plurality of second markers provided at different positions on the jig.

5. In the correction system according to claim 4, the specific portion is arranged on a virtual plane including the plurality of second markers.

6. In the correction system according to claim 4 or 5, the jig is removed from the tool body when the robot operates according to the teaching data to image the first marker by the imaging device.

7. In the correction system according to any one of claims 1 to 6, the first marker is a self-luminous marker capable of emitting light.

8. In the correction system according to any one of claims 1 to 7, The tool is a welding gun having an electrode for welding, The specific part is a correction system that is the electrode.

9. Operating a robot according to teaching data, Imaging a first imaging target provided on a tool of the robot operated according to the teaching data with an imaging device, Correcting the teaching data based on a detection position of the tool obtained from an imaging result of the first imaging target imaged by the imaging device, and The first imaging target includes a plurality of first markers provided at different positions in the tool, The tool has a tool body and a specific part provided on the tool body, The plurality of first markers are provided on the tool body, Correcting the teaching data includes obtaining a detection position of the specific part from an imaging result of the first marker by the imaging device and a relative positional relationship between the first marker and the specific part, and correcting the teaching data based on the detection position of the specific part, A method for correcting teaching data, wherein obtaining the relative positional relationship includes obtaining the relative positional relationship from imaging results of the first marker imaged by the imaging device and a second imaging target arranged in association with the specific part.

Citation Information

Patent Citations

  • Robot arm visual chase method and system device

    JP2000084876A

  • Working device and calibration method of the same

    JP2009172718A

  • Control device, robot system, robot and robot control method

    JP2015136764A

  • Relative data calibration equipment and method

    JP2017124448A

  • Teaching system

    JP2020069568A