Robot system

The robot system simplifies the setup process by generating signals based on relative movements, reducing complexity and shortening working time through controlled work operations without pre-setting positions.

JP2026114494APending Publication Date: 2026-07-08KAWASAKI JUKOGYO KK

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
KAWASAKI JUKOGYO KK
Filing Date
2024-12-26
Publication Date
2026-07-08

AI Technical Summary

Technical Problem

The complexity of setting work positions increases when a robot system performs operations at multiple positions, especially when using an external axis device, leading to cumbersome setup processes.

Method used

A robot system that includes a robot, a work unit, an external axis device, and a control unit that generates signals based on the relative movement of the work unit with respect to a workpiece, allowing for controlled work operations without pre-setting all positions.

Benefits of technology

This approach reduces the complexity of the setup process and enables continuous work operations, shortening working time and simplifying control systems by accurately synchronizing work with relative movements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026114494000001_ABST
    Figure 2026114494000001_ABST
Patent Text Reader

Abstract

This invention provides a robot system that can suppress the complexity of the setup process when performing work while moving the workpiece relative to the work unit using an external axis device. [Solution] This robot system 100 comprises a robot 10, a work unit 40 that performs work on a workpiece 200, an external axis device 30 that is controlled as an external axis of the robot 10 and moves the workpiece 200 or the work unit 40, a signal output unit 22, and a work control unit 50. The signal output unit 22 generates a signal based on the relative movement amount of the work unit 40 relative to the workpiece 200 for each relative movement amount of the work unit 40 due to the movement of the workpiece 200 using the external axis device 30, and the work control unit 50 controls the work performed on the workpiece 200 by the work unit 40 based on the generated signals.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a robot system.

Background Art

[0002] Conventionally, robot systems are known. For example, Patent Document 1 discloses a robot system including a robot having a plurality of joints, a control device that performs control to move the robot, and an imager provided at the tip of the robot for imaging an inspection target. In this robot system, when the tip of the robot moves to a preset position, the control device transmits an imaging command signal to the imager to perform imaging of the inspection target.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the above Patent Document 1, when the tip of the robot moves to a preset position, the control device transmits an imaging command signal to the imager to perform imaging of the inspection target. Therefore, when the number of positions for performing operations such as imaging increases, it is necessary to preset many positions, and the setting work for setting the positions for performing operations becomes complicated. Also, when moving the imager using an external axis device controlled as an external axis of the robot, when the number of positions for performing operations increases, the setting work for setting the positions for performing operations becomes complicated. For this reason, when performing work while relatively moving a working unit such as an imager with respect to a workpiece using an external axis device, it is desired to suppress the complication of the setting work.

[0005] This disclosure was made to solve the above-mentioned problems, and one of its objectives is to provide a robot system that can suppress the complexity of the setup process when performing work while moving the work unit relative to the workpiece using an external axis device. [Means for solving the problem]

[0006] To achieve the above objective, a robot system comprising a robot, a work unit that performs work on a workpiece, an external axis device controlled as an external axis of the robot and for moving the workpiece or work unit, and a control unit that generates a signal based on the relative movement of the work unit relative to the workpiece for each amount of relative movement of the work unit with respect to the workpiece due to the movement of the workpiece or work unit using the external axis device, and controls the work performed on the workpiece by the work unit based on the generated signal.

[0007] As described above, the robot system in one phase includes a control unit that generates a signal based on the relative movement of the workpiece for each relative movement of the workpiece due to the movement of the workpiece or workpiece using an external axis device, and controls the work performed on the workpiece by the workpiece based on the generated signal. This allows the relative movement of the workpiece to the workpiece to be acquired for each relative movement and the work performed by the workpiece to be controlled, so that work can be performed on the workpiece without having to set all work positions in advance. As a result, it is possible to suppress the complexity of the setting work when performing work while moving the workpiece relative to the workpiece using an external axis device. [Effects of the Invention]

[0008] According to this disclosure, as described above, when performing work while moving the workpiece relative to the work unit using an external axis device, it is possible to suppress the complexity of the setup process. [Brief explanation of the drawing]

[0009] [Figure 1] This figure shows a schematic diagram of the robot system according to the first embodiment. [Figure 2] This is a block diagram of a robot system according to the first embodiment. [Figure 3] This figure illustrates an example of a signal generated by a robot system according to the first embodiment. [Figure 4] This figure illustrates the relative movement of the working parts of the robot system according to the first embodiment. [Figure 5] This figure illustrates the operation of a robot system in relation to the relative movement of its work unit according to the first embodiment. [Figure 6] This figure shows a schematic diagram of the robot system according to the second embodiment. [Figure 7] This is a block diagram of a robot system according to the second embodiment. [Figure 8] This is a flowchart illustrating the control process of the robot system according to the second embodiment. [Figure 9] This figure illustrates the generation of a movement path for a robot system according to the second embodiment. [Figure 10] This figure illustrates the generation of coordinate transformation information according to the second embodiment. [Figure 11] This figure illustrates a coordinate transformation table that associates the amount of movement of the external axis device with the coordinate values ​​of the external axis device coordinate system according to the second embodiment. [Figure 12] This figure illustrates a coordinate transformation table that associates the amount of movement of the external axis device according to the second embodiment with the coordinate values ​​of the work coordinate system. [Figure 13] This is a diagram illustrating the work and inspection of a workpiece according to the second embodiment. [Figure 14] This is a diagram illustrating the inspection image according to the second embodiment. [Figure 15] This diagram illustrates how to show the position of the target in the second embodiment on an actual workpiece. [Figure 16] This figure illustrates how the position of the target according to the second embodiment is shown in a three-dimensional image of the workpiece. [Figure 17]It is a flowchart for explaining the control process of the robot system according to the third embodiment. [Figure 18] It is a diagram for explaining an operation image for displaying an inspection image according to the third embodiment. [Figure 19] It is a diagram showing an outline of the robot system according to the fourth embodiment. [Figure 20] It is a flowchart for explaining the control process of the robot system according to the fourth embodiment. [Figure 21] It is a diagram showing an outline of the robot system according to the fifth embodiment. [Figure 22] It is a diagram for explaining the setting of teaching points and movement paths of the robot teaching device according to the fifth embodiment. [Figure 23] It is a diagram for explaining the state of reflection of illumination light of the robot teaching device according to the fifth embodiment. [Figure 24] It is a diagram showing an outline of the robot system according to the sixth embodiment. [Figure 25] It is a diagram showing a virtual image displayed on the wearable display device according to the sixth embodiment. [Figure 26] It is a diagram showing a virtual image displayed on the fixed display device according to the sixth embodiment. [Figure 27] It is a flowchart for explaining the control process of the robot system according to the sixth embodiment. [Figure 28] It is a diagram showing a robot system according to a modification of the first embodiment. [Figure 29] It is a diagram showing an aligner device according to a modification of the first embodiment. [Figure 30] It is a diagram showing a hand according to a modification of the first embodiment.

Embodiments for Carrying Out the Invention

[0010] [First Embodiment] The configuration of the robot system 100 according to the first embodiment will be described.

[0011] As shown in Figure 1, the robot system 100 performs work on the workpiece 200. The robot system 100 comprises a robot 10 and a control device 20 that controls the robot 10. The robot system 100 also includes an external axis device 30 that is controlled as an external axis of the robot 10. The robot system 100 also comprises a work unit 40 and a work control unit 50 that controls the work unit 40. The external axes of the robot 10 are axes other than the robot axes, such as joint axes, that the robot 10 has. The work control unit 50 is an example of a control unit.

[0012] Robot 10 is, for example, an industrial robot. Robot 10 is an articulated robot. Robot 10 includes multiple joints. For example, robot 10 includes horizontal articulation. Robot 10 is powered by AC power supplied from an external source.

[0013] As shown in Figure 2, the control device 20 includes a robot control unit 21 and a signal output unit 22. The signal output unit 22 has an enable generation unit 23 and a pulse generation unit 24. The robot control unit 21 and the signal output unit 22 are examples of control units.

[0014] The robot control unit 21 controls the movement of the robot 10. Specifically, the robot control unit 21 controls the movement of the robot 10 by controlling the power supplied to the motors 14 provided at each joint of the robot 10. The robot control unit 21 also includes a CPU (Central Processing Unit) and memory. The robot control unit 21 controls the operation of the robot 10 by executing a predetermined program. The robot control unit 21 also receives instructions from the user for the movement of the robot 10 and controls the robot 10 to perform the movements based on the instructions. Specifically, the robot control unit 21 receives the position and orientation of the control points of the robot 10 and calculates the movement of each joint of the robot 10. The robot control unit 21 also controls both the robot 10 and the external axis device 30.

[0015] As shown in Figure 1, the robot 10 includes a base 11, a lifting mechanism 12, and a robot arm 13. The base 11 is attached to the floor or the like. The lifting mechanism 12 raises and lowers the robot arm 13 along the Z-direction, which is the vertical direction. The robot arm 13 includes three joints JT1, JT2, and JT3, and links 13a and 13b connecting each joint. Furthermore, as shown in Figure 2, the lifting mechanism 12, and each of the joints JT1, JT2, and JT3 are provided with a motor 14 consisting of a servo motor and a position detection unit 15 that detects the rotational position of each joint. Also, as shown in Figure 1, a hand 16 is attached to the tip of the robot arm 13. The hand 16 holds the workpiece 200.

[0016] The three joints, JT1 to JT3, are each rotated by the drive of motor 14.

[0017] Joint JT1 is connected to the lifting mechanism 12. Joint JT1 rotates link 13a relative to the base 11 around a rotation axis A1 along the vertical Z direction. Joint JT2 rotates link 13b relative to link 13a around a rotation axis A2 along the vertical Z direction. Joint JT3 rotates hand 16 relative to link 13b around a rotation axis A3 along the vertical Z direction.

[0018] Robot 10 transports the workpiece 200. Before the work unit 40 performs its operation, robot 10 holds the workpiece 200 with its hand 16 and transports it to the external axis device 30. After the work unit 40 performs its operation, robot 10 holds the workpiece 200 with its hand 16 and transports it from the external axis device 30.

[0019] The external axis device 30 is a moving device for moving the workpiece 200. The external axis device 30 is positioned separately from the robot 10 and at a distance from the robot 10. The external axis device 30 includes a holding part 31 for holding the workpiece 200 and a linear motion mechanism 32 for moving the workpiece 200. The linear motion mechanism 32 is positioned relative to the holding part 31. The linear motion mechanism 32 moves the workpiece 200 held by the holding part 31 by moving the holding part 31. The linear motion mechanism 32 also moves the workpiece 200 in two directions, the X direction and the Y direction, which are mutually orthogonal in the horizontal plane. Specifically, the linear motion mechanism 32 includes a linear motion mechanism 32a that moves the workpiece 200 in the horizontal X direction and a linear motion mechanism 32b that moves the workpiece 200 in the horizontal Y direction which is orthogonal to the X direction. Furthermore, as shown in Figure 2, each of the linear motion mechanisms 32a and 32b is provided with a motor 33 consisting of a servo motor and a position detection unit 34 for detecting the position of the motor 33. The position detection unit 34 detects the linear position of the motor 33 when the motor 33 is a linear motor. The position detection unit 34 also detects the rotational position of the motor 33 when the motor 33 is a rotary motor. The linear motion mechanisms 32a and 32b are examples of the first and second linear motion mechanisms, respectively. The X and Y directions are examples of the first and second directions, respectively.

[0020] The linear motion mechanisms 32a and 32b each move the workpiece 200 linearly by the drive of the motor 33. The motor 33 is driven under the control of the robot control unit 21. The linear motion mechanism 32a moves the workpiece 200 held by the holding unit 31 linearly in the X direction by moving the holding unit 31 and the linear motion mechanism 32b linearly in the X direction. The linear motion mechanism 32b moves the workpiece 200 held by the holding unit 31 linearly in the Y direction by moving the holding unit 31 linearly in the Y direction. The external axis device 30 also outputs the detection result of the position detection unit 34 to the robot control unit 21.

[0021] As shown in Figure 1, the work unit 40 performs operations on the workpiece 200. The work unit 40 includes, for example, at least one of an imaging unit, a painting unit, and a three-dimensional shape measurement unit. The imaging unit includes, for example, at least one of a line camera, an area camera, and a microscope camera. The painting unit includes, for example, an inkjet unit. The three-dimensional shape measurement unit includes, for example, a laser profile sensor.

[0022] The work unit 40 performs operations on the workpiece 200 while moving relative to the workpiece 200. For example, the imaging unit captures images while moving relative to the workpiece 200. The line camera captures line-shaped images while moving relative to the workpiece 200. The area camera captures rectangular images while moving relative to the workpiece 200. The microscope camera captures images of cells and other objects while moving relative to the workpiece 200.

[0023] The painting unit applies paint to the workpiece 200 while moving relative to it. The inkjet unit ejects ink onto the workpiece 200 while moving relative to it. The 3D shape measurement unit measures the 3D shape of the workpiece 200 while moving relative to it. The laser profile sensor projects laser light onto the workpiece 200 while moving relative to it to take an image and measure the 3D shape of the workpiece 200.

[0024] The work control unit 50 controls the work performed on the workpiece 200 by the work unit 40. If the work unit 40 is an imaging unit, the work control unit 50 controls the imaging performed by the work unit 40. Specifically, the work control unit 50 controls the timing of imaging of the workpiece 200 by the work unit 40. If the work unit 40 is a painting unit, the work control unit 50 controls the timing and amount of paint applied by the work unit 40. If the work unit 40 is a three-dimensional shape measurement unit, the work control unit 50 controls the timing of the three-dimensional shape measurement performed by the work unit 40.

[0025] Here, the work control unit 50 controls the work performed by the work unit 40 on the workpiece 200 based on the signal output from the signal output unit 22 of the control device 20.

[0026] Furthermore, the signal output unit 22 generates a signal based on the relative movement of the work unit 40 relative to the workpiece 200 for each relative movement of the work unit 40 relative to the workpiece 200 due to the movement of the workpiece 200 using the external device 30, and outputs the generated signal. Specifically, the signal output unit 22 generates a signal based on the relative movement of the work unit 40 based on the detection result of the position detection unit 34. More specifically, the robot control unit 21 acquires the detection result of the position detection unit 34 from the external axis device 30 and calculates the relative movement of the work unit 40 based on the acquired detection result of the position detection unit 34. The signal output unit 22 acquires the relative movement of the work unit 40 calculated by the robot control unit 21 and generates a signal based on the relative movement of the work unit 40 based on the acquired relative movement of the work unit 40.

[0027] Furthermore, the signal output unit 22 outputs a variable frequency pulse signal based on the relative movement of the work unit 40 relative to the workpiece 200 for each relative movement of the work unit 40. For example, the signal output unit 22 generates a pulse enable using the enable generation unit 23. The signal output unit 22 also generates a pulse signal using the pulse generation unit 24 based on the pulse enable generated by the enable generation unit 23.

[0028] Furthermore, the signal output unit 22 outputs a predetermined pulse signal for each relative movement of the work unit 40 relative to the workpiece 200. For example, as shown in Figure 3, the signal output unit 22 generates and outputs a pulse signal based on the relative movement of the work unit 40 at each predetermined processing cycle. In other words, the signal output unit 22 acquires the movement amount of the workpiece 200 using the external axis device 30 as the relative movement amount of the work unit 40 relative to the workpiece 200 at each predetermined processing cycle. The signal output unit 22 then generates a number of pulse signals corresponding to the acquired relative movement amount. A pulse signal is generated for every x mm of relative movement. For example, if the relative movement is 5x mm in a predetermined cycle, five pulse signals are generated within the predetermined cycle. A pulse signal is counted as one on the rising edge and one on the falling edge. In other words, a pulse signal is counted as two due to the rising and falling edges. The frequency of the output pulse is variable, for example, in the range from 0 Hz to several MHz. In other words, as the relative displacement increases, the frequency of the output pulse increases, and as the relative displacement decreases, the frequency of the output pulse decreases.

[0029] In the example shown in Figure 3, the control period is 2 msec, and the amount of movement is acquired at each control period, with a pulse signal output based on the amount of movement. Note that the amount of movement in Figure 3 represents the cumulative amount of movement from 0 mm. In other words, the difference in the amount of movement from the previous control period is acquired as the relative amount of movement in the current control period. For example, if the amount of movement in the previous control period was 10 mm and the amount of movement in the current control period is 16 mm, the relative amount of movement in the current control period will be acquired as 6 mm. Also, in the example shown in Figure 3, the pulse resolution is set to 1 mm / pulse. In other words, one pulse signal is output for every 1 mm of movement. For example, if the movement is 2 mm, the number of output pulses is set to 2, and the pulse frequency is 1 kHz. If the movement is 3 mm, the number of output pulses is set to 3, and the pulse frequency is 1.5 kHz.

[0030] The signal output unit 22 outputs a pulse enable signal from the enable generation unit 23 at the start of a predetermined processing cycle, and the pulse generation unit 24 starts outputting pulses simultaneously with the pulse enable signal output. Furthermore, when the pulse generation unit 24 outputs its last pulse, the signal output unit 22 stops outputting the pulse enable signal from the enable generation unit 23. This prevents a surge in processing at the beginning of a predetermined processing cycle. As a result, there is no need to provide buffer time for calculations.

[0031] The signal output unit 22 may continuously output a pulse enable signal to the pulse generation unit 24 via the enable generation unit 23. Alternatively, the signal output unit 22 may stop outputting the pulse enable signal for a sufficiently small calculation period correction amount relative to the processing cycle via the enable generation unit 23. This ensures sufficient buffer time for calculations by the amount of the calculation period correction amount. For example, the calculation period correction amount is 40 μsec for a processing cycle of 2 msec.

[0032] Furthermore, the signal output unit 22 may, within the processing cycle, initially pause before generating pulses from the pulse generation unit 24.

[0033] The signal output unit 22 includes, for example, an FPGA (Field Programmable Gate Array), and processing is performed by the FPGA.

[0034] If the CPU controlling the robot 10 and the external axis device 30 were to directly control the pulse output function, the CPU load would increase, potentially making it impossible to accurately control high-frequency pulses. Therefore, the pulse output is controlled using a pulse control processing unit, such as an FPGA, which is separate from the CPU controlling the robot 10 and the external axis device 30.

[0035] The CPU controlling the robot 10 and the external axis device 30 calculates the relative movement, and the pulse control processing unit controls the pulse frequency and number of pulses based on the relative movement. By dividing the processing in this way, accurate pulse output is possible. Furthermore, since the pulse output section is controlled by a separately provided processing unit, the pulse output specifications, such as pulse-to-distance conversion and n-multiplied pulses, can be easily changed and expanded by changing the control parameters.

[0036] Furthermore, the signal output unit 22 acquires the relative movement amount of the work unit 40 during a predetermined processing cycle and outputs a pulse signal assuming that the relative movement is constant during the predetermined processing cycle. However, since the predetermined processing cycle is sufficiently small, even assuming a constant relative movement, it is not significantly different from the actual relative movement amount of the work unit 40.

[0037] Furthermore, the signal output unit 22 may acquire the relative movement amount of the work unit 40 based on the actual movement of the external axis device 30, or it may acquire the relative movement amount of the work unit 40 based on the movement command of the external axis device 30 from the robot control unit 21.

[0038] The relative movement of the work unit 40 with respect to the workpiece 200 is obtained based on the movement of the control point TCP shown in Figure 4, which controls the movement of the external axis device 30. The control point TCP for controlling the movement of the external axis device 30 is set, for example, to the working position of the work unit 40 relative to the workpiece 200. If the work unit 40 is an imaging unit, the control point TCP is set to the focal position of the work unit 40 for imaging. If the work unit 40 is a painting unit, the control point TCP is set to the painting position of the work unit 40. If the work unit 40 is a three-dimensional shape measurement unit, the control point TCP is set to the three-dimensional shape measurement position of the work unit 40.

[0039] The work control unit 50 controls the work performed by the work unit 40 on the workpiece 200, triggered by a signal based on the relative movement amount of the work unit 40. Specifically, the work control unit 50 causes the work unit 40 to perform work at regular intervals based on a signal based on the relative movement amount of the work unit 40. For example, the work control unit 50 obtains the relative movement amount of the work unit 40 by counting the pulse signals output from the signal output unit 22. Then, the work control unit 50 causes the work unit 40 to perform work on the workpiece 200 each time the work unit 40 moves by a regular amount.

[0040] If the work unit 40 is an imaging unit, the work control unit 50 controls the work unit 40 to perform imaging at fixed intervals of movement of the work unit 40. If the work unit 40 is a painting unit, the work control unit 50 controls the work unit 40 to paint a fixed amount of paint at fixed intervals of movement of the work unit 40. If the work unit 40 is a three-dimensional shape measurement unit, the work control unit 50 controls the work unit 40 to perform three-dimensional shape measurement at fixed intervals of movement of the work unit 40.

[0041] The robot control unit 21 moves the work unit 40 relative to the workpiece 200 along the surface of the workpiece 200 using the external axis device 30. For example, as shown in Figure 4, the robot control unit 21 moves the work unit 40 relative to the flat surface of the workpiece 200 using the external axis device 30. Specifically, the robot control unit 21 moves the work unit 40 relative to the workpiece 200 linearly along the direction of movement by the linear motion mechanism 32. In this case, the work control unit 50 controls the work unit 40 to perform work for each movement amount L1 of the control point TCP.

[0042] Specifically, as shown in Figure 5, a signal A that prompts the work unit 40 to perform work is turned on in response to the output of a pulse signal for each movement amount L1. In addition, the work control unit 50 turns on the signal A that prompts the work unit 40 to perform work for each movement amount L1 of the work unit 40, regardless of the movement speed of the work unit 40.

[0043] This makes it possible to perform operations on the workpiece 200 by the work unit 40 continuously. On the other hand, if the operations on the workpiece 200 by the work unit 40 are performed intermittently, the work time will be longer. For example, when detecting scratches, foreign objects, or abnormalities on a semiconductor wafer substrate using an area camera, the size of the scratches, foreign objects, or abnormalities on the semiconductor wafer substrate is very small, so the imaging range of the area camera becomes small. In this case, the imaging operation by the area camera may be performed intermittently while changing the relative position of the semiconductor wafer substrate with respect to the area camera, but the imaging operation time will be longer. In contrast, in the first embodiment, if the work unit 40 is an imaging unit such as a line camera, it is possible to perform imaging operations on the workpiece 200 by the work unit 40 continuously, so it is possible to shorten the imaging operation time.

[0044] Furthermore, the signal output unit 22 may output a plurality of signals corresponding to each of the relative movements of each of the plurality of positions of the work unit 40. The plurality of positions of the work unit 40 may be set to multiple positions such as control point TCP, a point inside control point TCP, and a point outside control point TCP. Also, the work control unit 50 that receives the plurality of signals may have the work unit 40 perform work for each relative movement amount at each position, or it may calculate the relative movement amount of an arbitrary position based on the relative movement amounts at the plurality of positions, and have the work unit 40 perform work for each of the calculated relative movement amounts at the arbitrary position.

[0045] (Effects of the first embodiment) In the first embodiment, the following effects can be obtained.

[0046] The signal output unit 22 generates a signal based on the relative movement of the work unit 40 relative to the workpiece 200 for each relative movement of the work unit 40 due to the movement of the workpiece 200 using the external axis device 30. The work control unit 50 then controls the work performed by the work unit 40 on the workpiece 200 based on the generated signals. This allows the relative movement of the work unit 40 relative to the workpiece 200 to be acquired for each relative movement, and the work performed by the work unit 40 can be controlled. As a result, work can be performed on the workpiece 200 without having to pre-set all work positions. Consequently, when performing work while moving the work unit 40 relative to the workpiece 200 using the external axis device 30, the complexity of the setup process can be suppressed.

[0047] Furthermore, since the relative movement amount of the work unit 40 with respect to the workpiece 200 can be acquired with each relative movement, the work performed by the work unit 40 can be controlled, allowing the work on the workpiece 200 to be performed continuously. As a result, the working time for work performed while moving the work unit 40 relative to the workpiece 200 using the external axis device 30 can be shortened compared to when the work on the workpiece 200 is performed intermittently by the work unit 40.

[0048] Furthermore, since the workpiece 200 or work unit 40 can be moved using the external axis device 30 controlled as an external axis of the robot 10, the complexity of the control can be suppressed compared to the case where the workpiece 200 or work is moved using an external moving device that is not controlled as an external axis of the robot 10.

[0049] A robot control unit 21 is provided to control both the robot 10 and the external axis device 30. This allows both the robot 10 and the external axis device 30 to be controlled by a single robot control unit 21, thus easily suppressing the complexity of the control system.

[0050] The external axis device 30 is positioned separately from the robot 10, at a distance from the robot 10. This makes it easy to secure space for the external axis device 30 to be positioned at a distance from the robot 10, thus allowing the external axis device 30 to be easily positioned at a distance from the robot 10.

[0051] The external shaft device 30 includes a linear motion mechanism 32. This makes it possible to shorten the working time for operations performed by moving the work unit 40 relative to the workpiece 200 by linear motion using the linear motion mechanism 32 of the external shaft device 30.

[0052] The linear motion mechanism 32 includes a linear motion mechanism 32a that moves the workpiece 200 or work unit 40 in the X direction, and a linear motion mechanism 32b that moves the workpiece 200 or work unit 40 in the Y direction, which is perpendicular to the X direction. This makes it possible to shorten the working time for operations performed by moving the work unit 40 relative to the workpiece 200 by linear motion in two mutually orthogonal directions using the linear motion mechanisms 32a and 32b of the external shaft device 30.

[0053] The signal output unit 22 outputs a variable-frequency pulse signal based on the relative movement of the work unit 40 relative to the workpiece 200 for each relative movement of the work unit 40. As a result, the frequency of the variable-frequency pulse signal is set to the corresponding frequency according to the speed of the relative movement of the work unit 40, and a pulse signal is output, so that a pulse signal can be output for each predetermined relative movement of the work unit 40.

[0054] The signal output unit 22 outputs a predetermined pulse signal for each relative movement of the work unit 40 relative to the workpiece 200. This makes it easy to obtain the relative movement of the work unit 40 relative to the workpiece 200 by counting the pulses of the variable frequency pulse signal.

[0055] The work control unit 50 controls the work performed by the work unit 40 on the workpiece 200, triggered by a signal based on the relative movement of the work unit 40. This allows the work performed by the work unit 40 on the workpiece 200 to be precisely synchronized with the relative movement of the work unit 40.

[0056] The work control unit 50 causes the work unit 40 to perform work at fixed intervals based on a signal derived from the relative movement of the work unit 40. This allows the work unit 40 to perform work at fixed intervals regardless of the relative movement speed of the work unit 40, thereby suppressing inconsistencies in the work performed by the work unit 40 on the workpiece 200.

[0057] Robot 10 is a multi-joint robot. This allows robot 10, being a multi-joint robot, to perform complex movements.

[0058] The external shaft device 30 includes a motor 33 and a position detection unit 34 that detects the position of the motor 33. The signal output unit 22 generates a signal based on the relative movement of the work unit 40 based on the detection result of the position detection unit 34. This eliminates the need to provide a dedicated detection unit to detect the relative movement of the work unit 40 in order to generate a signal based on the relative movement of the work unit 40. As a result, it is possible to generate a signal based on the relative movement of the work unit 40 while suppressing structural complexity.

[0059] The work unit 40 includes at least one of an imaging unit, a painting unit, and a three-dimensional shape measurement unit. This allows the imaging unit, painting unit, or three-dimensional shape measurement unit to be moved relative to the workpiece 200, and the workpiece 200 can be imaged, painted, or its three-dimensional shape measured with each relative movement, thereby reducing the time required for imaging, painting, or three-dimensional shape measurement.

[0060] [Second Embodiment] The configuration of the robot system 100a according to the second embodiment will be described.

[0061] As shown in Figures 6 and 7, the robot system 100a comprises a robot 10, a control device 20a, an external axis device 30, a work unit 40, a work control unit 50, an inspection unit 120, an instruction unit 130, an image processing device 150, and a result display device 160. The control device 20a comprises a signal output unit 22 and a robot control unit 140.

[0062] The inspection unit 120 is located, for example, in the work unit 40 and inspects the workpiece 200. The inspection unit 120 is an imaging unit and images the workpiece 200. Specifically, the inspection unit 120 is a line-type camera and is moved relative to the surface of the workpiece 200 by an external axis device 30 to scan and image the surface of the workpiece 200. The inspection unit 120 may be located in a part other than the work unit 40. The inspection unit 120 may also be composed of the work unit 40. Furthermore, the inspection unit 120 performs inspections of painting and other operations performed by the work unit 40 in parallel with the work unit 40 performing painting and other operations.

[0063] The indicator unit 130 is, for example, located in the work unit 40 and indicates the position of the target 201, which will be described later and acquired by inspection, to the workpiece 200. The indicator unit 130 is a laser irradiation unit and indicates the position of the target 201 to the workpiece 200 by irradiating it with laser light. Note that the indicator unit 130 may be located in a part other than the work unit 40.

[0064] The robot control unit 140 includes a processing unit 141 and a storage unit 142. The processing unit 141 includes a processor and performs various processes related to the operation of the robot 10. The storage unit 142 includes non-volatile memory and stores coordinate transformation information 171 and 172, which will be described later.

[0065] The image processing device 150 performs image processing on the image captured by the inspection unit 120. The image processing device 150 also controls the imaging timing performed by the inspection unit 120. The image processing device 150 includes a processing unit 151 and a storage unit 152. The processing unit 151 includes a processor and performs various processing related to the image captured by the inspection unit 120 and the imaging timing performed by the inspection unit 120. The storage unit 152 includes non-volatile memory and stores the inspection image 121, which will be described later.

[0066] The result display device 160 displays the inspection results of the workpiece 200. The result display device 160 includes a processing unit 161, a storage unit 162, a display unit 163, and an operation unit 164. The processing unit 161 includes a processor and performs various processes related to displaying the inspection results of the workpiece 200. The storage unit 162 includes non-volatile memory and stores coordinate transformation information 172, a three-dimensional image of the workpiece 200, etc. The display unit 163 includes a monitor such as a liquid crystal monitor and displays the inspection results screen of the workpiece 200. The operation unit 164 includes input devices such as a mouse and keyboard and accepts user input operations. Note that the display unit 163 and the operation unit 164 may be integrated. That is, the display unit 163 and the operation unit 164 may be configured as an operation unit / display unit such as a touch panel.

[0067] (Control processing for robot systems) The control process for the robot system 100a will be explained.

[0068] As shown in Figure 8, in step S1, the processing unit 141 of the robot control unit 140 generates a movement path 113 for the external axis device 30 when the inspection unit 120 is moved relative to the workpiece 200 by the external axis device 30 and the work unit 40 performs the work. As shown in Figure 9, the movement path 113 is a path for operating the external axis device 30 and multiple paths are generated. The movement path 113 is also the movement path when the work unit 40 performs the work and when the inspection unit 120 inspects the workpiece 200. For example, the processing unit 141 receives instruction from the user on the operation of the external axis device 30 and generates a movement path 113 for the external axis device 30 based on the received instruction.

[0069] In step S2, the processing unit 141 of the robot control unit 140 performs the process of generating coordinate transformation information 171 shown in Figure 11 and coordinate transformation information 172 shown in Figure 12, based on the generated movement path 113. The coordinate transformation information 171 and 172 is information that transforms the coordinate values ​​of the inspection coordinate system of the inspection image 121, which will be described later, obtained by inspecting the workpiece 200 by the inspection unit 120, into coordinate values ​​of a predetermined coordinate system. The inspection coordinate system is a two-axis orthogonal coordinate system that is orthogonal to each other. Details of the coordinate transformation using the coordinate transformation information 171 and 172 will be described later.

[0070] As shown in Figure 10, the processing unit 141 performs a process to acquire coordinate values ​​of the coordinate system of the external axis device 30 at first distance intervals D1 along the movement path 113 and generate coordinate transformation information 171 and 172. At this time, the processing unit 141 actually moves the work unit 40 and the inspection unit 120 along the movement path 113 relative to the workpiece 200 using the external axis device 30 and performs a process to acquire coordinate values ​​of the coordinate system of the external axis device 30 at first distance intervals D1. The first distance interval D1 is the distance interval of the control points 114a. The processing unit 141 performs a process to acquire coordinate values ​​of the coordinate system of the external axis device 30 at first distance intervals D1. The control point 114a may be set at the work position of the work unit 40 or at the imaging focal position of the inspection unit 120. Note that the work position of the work unit 40 and the imaging focal position of the inspection unit 120 may be the same position. Furthermore, the imaging focal point of the inspection unit 120 is set near the surface of the workpiece 200. The control point 114a is provided for the process of acquiring the coordinate values ​​of the coordinate system of the external axis device 30. Also, for example, the first distance interval D1 is larger than the second distance interval D2, which will be described later, when inspecting the workpiece 200.

[0071] As shown in Figures 11 and 12, the coordinate transformation information 171 and 172 are coordinate transformation tables that associate the amount of movement of the robot 10 along the movement path 113 with the coordinate values ​​of a predetermined coordinate system. In Figures 11 and 12, the path number represents the number of the movement path 113, the position number represents the number of the control point, the amount of movement represents the amount of movement of the control point 114a of the robot 10 along the movement path 113, and the coordinate value represents the coordinate value of the control point 114a in a predetermined coordinate system. In other words, in the coordinate transformation information 171 and 172, for each movement path 113, the amount of movement of the robot 10 for each control point 114a is associated with the coordinate value of the control point 114a in a predetermined coordinate system.

[0072] As shown in Figure 11, in the coordinate transformation information 171, the predetermined coordinate system is the coordinate system of the external axis device 30. The coordinate transformation information 171 is a coordinate transformation table that associates the amount of movement of the robot 10 with the coordinate values ​​of the coordinate system of the external axis device 30. In the coordinate transformation information 171, the coordinate values ​​used are those that indicate the position of the control point 114a in the X and Y directions in the coordinate system of the external axis device 30.

[0073] As shown in Figure 12, in the coordinate transformation information 172, the predetermined coordinate system is the work coordinate system relating to the workpiece 200. The work coordinate system is a coordinate system based on the workpiece 200. The work coordinate system is a three-dimensional coordinate system. The coordinate transformation information 172 is a coordinate transformation table that associates the amount of movement of the robot 10 with the coordinate values ​​of the work coordinate system. In the coordinate transformation information 172, the coordinate values ​​used are those that indicate the position of the control point 114a in the work coordinate system.

[0074] Furthermore, the processing unit 141 stores the coordinate transformation information 171 and 172 in the storage unit 142, and also outputs the coordinate transformation information 172 to the processing unit 161 of the result display device 160. The processing unit 161 stores the coordinate transformation information 172 in the storage unit 162.

[0075] In step S3, the processing unit 141 of the robot control unit 140 operates the external axis device 30 based on the movement path 113 and performs inspection of the workpiece 200 by the inspection unit 120 in parallel with the work performed by the work unit 40. Then, the processing unit 151 of the image processing device 150 performs the process of acquiring the inspection image 121 shown in Figure 14 based on the output result of the inspection unit 120. The inspection image 121 is an image of the surface of the workpiece 200 captured by the inspection unit 120.

[0076] As shown in Figure 13, the robot control unit 140 and the work control unit 50 cause the work unit 40 to perform work at second distance intervals D2 along the movement path 113, while the processing unit 151 operates the inspection unit 120 to inspect the workpiece 200 and acquire inspection images 121. Specifically, the processing unit 151 operates the work unit 40 to perform work and the inspection unit 120 to image the workpiece 200 at second distance intervals D2, scanning and imaging the workpiece 200 while it is performing work. More specifically, the processing unit 141 outputs a pulse signal to the work unit 40 and the processing unit 151 at second distance intervals D2. The work unit 40 performs work at second distance intervals D2 based on the trigger signal. The processing unit 151 outputs a trigger signal to the inspection unit 120 at second distance intervals D2 based on the pulse signal from the processing unit 141. The inspection unit 120 images the workpiece 200 at second distance intervals D2 based on the trigger signal. The second distance interval D2 is the distance interval of the control points 114b. The control points 114b may be set at the working position of the work unit 40, or at the imaging focal position of the inspection unit 120.

[0077] In step S4, the processing unit 151 of the image processing device 150 performs a process to detect the target 201 of the workpiece 200 in the inspection image 121 shown in Figure 14. The processing unit 151 performs a process to detect the target 201 in the inspection image 121 by performing predetermined image processing on the inspection image 121. The target 201 is, for example, a defect such as a scratch, foreign object, or dent. The processing unit 151 performs the process to detect the target 201 in the inspection image 121 for all inspection images 121.

[0078] As shown in Figure 14, the inspection coordinate system of the inspection image 121 is a two-dimensional coordinate system in which the direction along the movement path 113 is the Y-axis direction and the direction perpendicular to the movement path 113 is the X-axis direction. The processing unit 151 performs the process of obtaining the coordinate values ​​of the inspection coordinate system of the target 201. That is, the processing unit 151 performs the process of obtaining the coordinate values ​​of the X and Y axes of the inspection coordinate system of the target 201.

[0079] In step S5, the processing unit 141 of the robot control unit 140 performs a process to convert the coordinate values ​​of the inspection coordinate system of the target 201 to the coordinate values ​​of the coordinate system of the external axis device 30, based on the coordinate transformation information 171. Also in step S5, the processing unit 161 of the result display device 160 performs a process to convert the coordinate values ​​of the inspection coordinate system of the target 201 to the coordinate values ​​of the work coordinate system, based on the coordinate transformation information 172.

[0080] In step S6, as shown in Figure 15, the processing unit 141 of the robot control unit 140 performs a process to indicate the position of the target 201 on the actual workpiece 200 based on the coordinate values ​​of the external axis device 30 of the converted target 201. Specifically, the processing unit 141 operates the external axis device 30 based on the coordinate values ​​of the target 201 converted to the coordinate values ​​of the external axis device 30's coordinate system, and performs a process to indicate the position of the target 201 on the actual workpiece 200 using the indicator unit 130. That is, the processing unit 141 operates the external axis device 30 to move the workpiece 200 to a predetermined position where the position of the target 201 can be indicated by the indicator unit 130. Then, with the workpiece 200 positioned in the predetermined position, the processing unit 141 irradiates a laser beam from the indicator unit 130 to indicate the position of the target 201 on the actual workpiece 200.

[0081] In step S7, as shown in Figure 16, the processing unit 161 of the result display device 160 performs a process to indicate the position of the target 201 on the 3D image of the workpiece 200 based on the coordinate values ​​of the converted target 201 in the work coordinate system. Specifically, the processing unit 161 performs a process to indicate the position of the target 201 on the 3D image of the workpiece 200 based on the coordinate values ​​of the target 201 converted to the coordinate values ​​of the work coordinate system. That is, the processing unit 161 performs a process to superimpose an image indicating the position of the target 201 onto the 3D image of the workpiece 200. Then, the processing unit 161 performs a process to display the 3D image of the workpiece 200 with the superimposed image indicating the position of the target 201 on the display unit 163. For example, a round marker is displayed as the image indicating the position of the target 201. The 3D image of the workpiece 200 with the superimposed image indicating the position of the target 201 can be enlarged, reduced, or rotated based on user operation using the operation unit 164.

[0082] (Effects of the second embodiment) Based on the generated coordinate transformation information 171 and 172, the system performs the following steps: convert the coordinate values ​​of the inspection coordinate system of the target 201 to coordinate values ​​of a predetermined coordinate system, and then, based on the converted coordinate values ​​of the target 201 in the predetermined coordinate system, it displays the position of the target 201 on the actual workpiece 200 or in a 3D image of the workpiece 200. This allows the position of the target 201 to be displayed on the actual workpiece 200 or in a 3D image of the workpiece 200. Unlike when the position of the target 201 is displayed on a 2D image of the workpiece 200, this allows the position of the target 201 to be displayed accurately even on curved surfaces with large curvature or complex curved surfaces of the workpiece 200.

[0083] While the work on the workpiece 200 is controlled by the work control unit 50 and the robot control unit 140, the processing unit 151 of the image processing device 150 has the inspection unit 120 inspect the workpiece 200 and executes the process of acquiring an inspection image of the workpiece 200. As a result, the work and inspection work are performed in parallel, which reduces the time required for each work and inspection work.

[0084] [Third Embodiment] The configuration of the robot system 100b according to the third embodiment will be described.

[0085] The configuration of robot system 100b is the same as that of robot system 100a of the second embodiment shown in Figure 6. Specifically, robot system 100b comprises a robot 10, a control device 20a, an external axis device 30, a work unit 40, a work control unit 50, an inspection unit 120, an instruction unit 130, an image processing device 150, and a result display device 160.

[0086] (Control processing for robot systems) This section describes the control process for robot system 100b.

[0087] As shown in Figure 17, the operations from step S1 to S5 are the same as in the second embodiment described above.

[0088] In step S11, as shown in Figure 18, the processing unit 161 of the result display device 160 performs a process to indicate the position of the target 201 on the 3D image of the workpiece 200 based on the coordinate values ​​of the converted target 201 in the work coordinate system. Specifically, the processing unit 161 performs a process to indicate the position of the target 201 on the 3D image of the workpiece 200 based on the coordinate values ​​of the target 201 converted to the coordinate values ​​of the work coordinate system. That is, the processing unit 161 performs a process to superimpose an image indicating the position of the target 201 onto the 3D image of the workpiece 200. Then, the processing unit 161 performs a process to display the 3D image of the workpiece 200 with the superimposed image indicating the position of the target 201 on the display unit 163. For example, a round marker is displayed as the image indicating the position of the target 201. The 3D image of the workpiece 200 with the superimposed image indicating the position of the target 201 can be enlarged, reduced, or rotated based on user operation using the operation unit 164.

[0089] Furthermore, the processing unit 161 performs a process to display the inspection results of the workpiece 200 in list format. The inspection results of the workpiece 200 represent the results of the process of detecting the target 201 within the inspection images 121 for all inspection images 121. The inspection results of the workpiece 200 include the number of the detected target 201 and the type of the detected target 201.

[0090] The processing unit 161 performs the process of displaying the operation images 271 and 272 in list format along with the inspection results of the workpiece 200. Operation image 271 is an image used to operate the robot 10 so that the position of the target 201 (described later) is shown on the actual workpiece 200. Operation image 272 is an image used to display the inspection image 121 of the target 201 (described later). Operation images 271 and 272 are displayed in list format along with the inspection results of the workpiece 200 so that the correspondence with the number and type of the detected target 201 can be identified. The processing unit 161 performs the process of displaying the list format inspection results of the workpiece 200 and the operation images 271 and 272 on the display unit 163. The processing unit 161 also performs the process of displaying the 3D image of the workpiece 200, the list format inspection results of the workpiece 200, and the operation images 271 and 272 within the same frame.

[0091] When the operation image 271 is manipulated, the processing unit 161 performs the process in step S12. In step S12, the processing unit 161 operates the external axis device 30 to show the position of the target 201 corresponding to the manipulated operation image 271 on the actual workpiece 200. Specifically, the processing unit 161 outputs identification information to the processing unit 141 to identify the target 201 corresponding to the manipulated operation image 271. The identification information is, for example, the number of the target 201. Based on the identification information from the processing unit 161, the processing unit 141 identifies the target 201 and operates the external axis device 30 to show the position of the identified target 201 on the actual workpiece 200 as the position of the target 201 corresponding to the manipulated operation image 271. Note that manipulation of the operation image 271 means that the operation image 271 is clicked by a mouse, etc. Also, if the display unit 163 is a touch panel, manipulation of the operation image 271 means that the operation image 271 is touched by the user.

[0092] More specifically, as shown in Figure 15, the processing unit 141 operates the external axis device 30 to indicate the position of the target 201 on the actual workpiece 200 using the indicator unit 130. That is, the processing unit 141 operates the external axis device 30 to move the workpiece 200 to a predetermined position where the position of the target 201 can be indicated by the indicator unit 130. Then, with the workpiece 200 positioned in the predetermined location, the processing unit 141 irradiates a laser beam from the indicator unit 130 to indicate the position of the target 201 on the actual workpiece 200.

[0093] When the operation image 272 is manipulated, the processing unit 161 performs the process in step S13. In step S13, the processing unit 161 performs the process of displaying the inspection image 121 of the target 201 corresponding to the manipulated operation image 272. Specifically, the processing unit 161 performs the process of displaying the inspection image 121 shown in Figure 14 in a frame different from the frame in which the 3D image of the workpiece 200, the inspection results of the workpiece 200 in list format, and the operation images 271 and 272 are displayed. Alternatively, the inspection image 121 may be displayed in the same frame as the frame in which the 3D image of the workpiece 200, the inspection results of the workpiece 200 in list format, and the operation images 271 and 272 are displayed. Furthermore, when the processing of the target 201 is completed, the user may use the operation unit 164 to check the checkbox 273. Note that manipulation of the operation image 272 includes clicking the operation image 271 with the mouse. Furthermore, if the display unit 163 is a touch panel, the operation of the operation image 272 refers to the user touching the operation image 272.

[0094] (Effects of the third embodiment) The system performs two processes: displaying the position of the detected object 201 on a 3D image of the workpiece 200, and, if input is received regarding the displayed object 201, performing processing on the actual workpiece 200 with respect to the input object 201. This allows the user to not only confirm the position of the object 201 on the workpiece 200 using the 3D image of the workpiece 200, but also to perform processing on the actual workpiece 200 with respect to the input object 201 by providing input on the object 201. As a result, the user's convenience regarding the image of the workpiece 200 can be improved compared to simply displaying the position of the object 201 on the image of the workpiece 200.

[0095] [Fourth Embodiment] The configuration of the robot system 100c according to the fourth embodiment will be described.

[0096] As shown in Figure 19, the robot system 100c comprises a robot 10, a control device 20a, an external axis device 30, a plurality of work units 40, a work control unit 50, an inspection unit 120, an instruction unit 130, an image processing device 150, and a result display device 160. The inspection unit 120 and the instruction unit 130 are located for each work unit 40. Multiple work units 40 work on a single workpiece 200 in parallel.

[0097] (Control processing for robot systems) This section describes the control process for robot system 100c.

[0098] As shown in Figure 20, the operations from step S1 to S5 are the same as in the second embodiment described above, but in the fourth embodiment, the operations from step S1 to S5 are performed in parallel for each work unit 40.

[0099] In step S21, the processing unit 161 of the result display device 160 performs a process to integrate the position of the target 201 detected from the multiple inspection images 121 acquired by the inspection units 120 located in each of the multiple work units 40 as data. Specifically, the processing unit 161 integrates the coordinate values ​​of the work coordinate system of the target 201 acquired from the multiple inspection images 121 acquired by the multiple inspection units 120 into a single three-dimensional data. The integrated data is stored, for example, in a single file. The storage unit 162 of the result display device 160 stores the integrated data. The operations in the subsequent steps S6 and S7 are the same as in the second embodiment described above.

[0100] (Effects of the fourth embodiment) The robot system 100c includes a processing unit 161 that integrates the positions of the target 201 detected from multiple inspection images 121 acquired from multiple inspection units 120 into a single data set. As a result, the positions of the target 201 of the workpiece 200 inspected by multiple inspection units 120 are integrated into a single data set, so that the positions of all the target 201 of the workpiece 200 can be accessed by simply referring to this integrated single data set once, for example, from another computer. Consequently, even when the workpiece 200 is inspected by multiple inspection units 120, the handling of the target 201 data of the workpiece 200 can be made easier.

[0101] [Fifth Embodiment] The configuration of the robot system 100d according to the fifth embodiment will be described.

[0102] As shown in Figure 21, the robot system 100d comprises a robot 10, a control device 20, an external axis device 30, a work unit 40, a work control unit 50, an inspection unit 300, and a robot teaching device 310. The inspection unit 300 includes an imaging unit 301 for imaging the workpiece 200 and an illumination unit 302 for illuminating the workpiece 200 with illumination light. The inspection unit 300 may also be composed of the work unit 40.

[0103] The robot teaching device 310 is a device for offline teaching of the movements of the robot 10 and the external axis device 30 for visual inspection. The robot teaching device 310 performs offline teaching by simulating the movements of the robot 10 and the external axis device 30 on a display screen without using the actual machine. The robot teaching device 310 is, for example, a personal computer. The robot teaching device 310 includes a display unit 311, an operation unit 312, a processing unit 313, and a storage unit 314. The display unit 311 includes a monitor such as an LCD monitor and displays a screen. The operation unit 312 includes input devices such as a mouse and a keyboard and accepts user input operations. The processing unit 313 includes a processor and performs various processes in the robot teaching device 310. The memory unit 314 includes non-volatile memory and stores the model M1 of the imaging unit 301, the model M2 of the illumination unit 302, the model M3 of the robot 10, the model M4 of the workpiece 200, and the model M5 of the external axis device 30, which are used in the simulation. The detailed configuration of offline teaching by the robot teaching device 310 will be described later.

[0104] The imaging unit 301, the illumination unit 302, and the external axis device 30 perform an actual visual inspection of the workpiece 200 based on the results of the robot teaching device 310 teaching the operation of the external axis device 30. The imaging unit 301 is a camera that images the workpiece 200. The illumination unit 302 illuminates the workpiece 200 with illumination light. For example, the imaging unit 301 and the illumination unit 302 are attached to the work unit 40.

[0105] During the visual inspection of the workpiece 200, the workpiece 200 is illuminated by the illumination unit 302 while the surface of the workpiece 200 is imaged by the imaging unit 301. Furthermore, the imaging unit 301 and illumination unit 302 are moved relative to the workpiece 200 by the external axis device 30 while the surface of the workpiece 200 is imaged by the imaging unit 301. Since it is impossible to know where abnormalities such as foreign objects, scratches, and dents on the workpiece 200 are located on its surface, the workpiece 200 is imaged multiple times to ensure that the entire surface is covered. Based on the image results of the workpiece 200 taken by the imaging unit 301, it is then inspected whether or not any abnormalities exist in the workpiece 200.

[0106] (Offline instruction) The processing unit 313 performs offline teaching by simulation based on the model M1 of the imaging unit 301, the model M2 of the illumination unit 302, the model M3 of the robot 10, the model M4 of the workpiece 200, and the model M5 of the external axis device 30 stored in the memory unit 314. The processing unit 313 displays at least one of the imaging unit 301, the illumination unit 302, the robot 10, the workpiece 200, and the external axis device 30 on the display unit 311 and performs offline teaching by simulation. In offline teaching, as shown in Figure 22, the processing unit 313 displays the teaching point P of the operation of the external axis device 30 and the movement path PA defined by the teaching point P on the display unit 311 based on the user's input operation using the operation unit 312.

[0107] The processing unit 313 acquires a movement path PA by the external axis device 30 that is approximately perpendicular to the surface of the workpiece 200 and along the surface of the workpiece 200, and displays the acquired movement path PA on the display unit 311. Specifically, when a line L is input by the user to the surface of the workpiece 200 displayed on the display unit 311, the processing unit 313 creates a normal vector V that is approximately perpendicular to the surface of the workpiece 200 at the point where the line L passes. The tip of the normal vector V is the teaching point P. As a result, the processing unit 313 acquires multiple teaching points P that are approximately perpendicular to the surface of the workpiece 200 and along the surface of the workpiece 200. Furthermore, based on the acquired multiple teaching points P, the processing unit 313 acquires a movement path PA that is approximately perpendicular to the surface of the workpiece 200 and along the surface of the workpiece 200.

[0108] Then, when the processing unit 313 provides instructions on the operation of the external axis device 30 on the display unit 311, it simulates the reflection state of the illumination light on the workpiece 200 and displays an image of the acquired reflection state of the illumination light on the display unit 311. As shown in Figure 23, for example, the processing unit 313 displays an image representing the reflection state of the illumination light on the workpiece 200 displayed on the display unit 311. Also, for example, the processing unit 313 changes the image representing the reflection state of the illumination light on the workpiece 200 displayed on the display unit 311 in accordance with the relative movement of the imaging unit 301 and illumination unit 302 with respect to the workpiece 200 by the external axis device 30. In Figure 23, the high-brightness area HB, where the amount of illumination light reflection is large and the brightness is large, is represented by hatching.

[0109] (Effects of the fifth embodiment) When performing a visual inspection of the workpiece 200, the entire range of the image captured by the imaging unit 301 does not contribute to the visual inspection of the workpiece 200. Rather, the high-brightness areas HB, which have a large amount of reflected illumination light and high brightness, contribute to the visual inspection of the workpiece 200. Therefore, by identifying the high-brightness areas HB, it is possible to accurately determine which parts of the workpiece 200 are being inspected, and thus it is possible to teach the operation of the external axis device 30 to ensure that there are no or few missed inspections of the workpiece 200's appearance. Thus, by displaying an image related to the state of reflection of illumination light on the display unit 311 as described above, it is possible to easily identify the high-brightness areas HB that actually contribute to the visual inspection of the workpiece 200 based on the image related to the state of reflection of illumination light displayed on the display unit 311, and thus it is possible to easily teach the operation of the external axis device 30 to ensure that there are no or few missed inspections of the workpiece 200's appearance.

[0110] [Sixth Embodiment] The configuration of the robot system 100e according to the sixth embodiment will be described.

[0111] As shown in Figure 24, the robot system 100e comprises a robot 10, a control device 20, an external axis device 30, a work unit 40, a work control unit 50, an inspection unit 400, a mountable display device 410, and a fixed display device 420. The inspection unit 400 includes an imaging unit 401 for imaging the workpiece 200 and an illumination unit 402 for illuminating the workpiece 200 with illumination light. The imaging unit 401 and the illumination unit 402 are, for example, attached to the work unit 40. The inspection unit 300 may also be composed of the work unit 40.

[0112] As shown in Figure 25, the wearable display device 410 overlays a virtual image G generated by computer graphics onto the real-world image seen by the user U. In other words, the wearable display device 410 is a display unit that displays mixed reality. The wearable display device 410 is worn by the user U.

[0113] As shown in Figure 26, the fixed display device 420 is fixedly positioned and not attached to the user U. The fixed display device 420 displays an image of the 3D model of the workpiece 200. The image of the 3D model of the workpiece 200 is, for example, an image of the workpiece 200 created using CAD (Computer Aided Design). The fixed display device 420 is, for example, a liquid crystal display or an organic EL display.

[0114] (Function to display the imaging range) In the robot system 100e, a virtual image G of the illumination light irradiated onto the workpiece 200 from the illumination unit 402 is generated by computer graphics and displayed on the display unit 411 of the wearable display device 410 so as to overlap with the real image seen by the user U. Also, on the display unit 421 of the fixed display device 420, the virtual image G of the illumination light is displayed so as to overlap with the image of the 3D model of the workpiece 200. Furthermore, the function to display the imaging range is used, for example, when the user U teaches the operation to the external axis device 30. The control method of the robot system 100e for displaying the imaging range will be described in detail below.

[0115] As shown in Figure 27, in step S31, the robot control unit 21 receives an operation of the teaching pendant by the user U. Based on the received operation, the robot control unit 21 moves the external axis device 30 to move the imaging unit 401, including the illumination unit 402, relative to the workpiece 200.

[0116] In step S32, the imaging unit 401 acquires the coordinates of the illuminated light in the image captured by the imaging unit 401, which is moved relative to the workpiece 200. Specifically, while the imaging unit 401 is ON, the imaging unit 401 acquires the image captured by the imaging unit 401.

[0117] In step S33, the imaging unit 401 acquires the coordinates of the irradiated light in the image captured by the imaging unit 401, which is moved relative to the workpiece 200.

[0118] In step S34, the wearable display device 410 and the fixed display device 420 each superimpose a virtual image G of the irradiated light, generated by computer graphics based on the coordinates of the acquired irradiated light and the control point TCP of the external axis device 30, onto the image of the workpiece 200, and display it on the display unit 411 of the wearable display device 410 and the display unit 421 of the fixed display device 420. For the wearable display device 410, the image of the workpiece 200 is the actual image seen by the user U. For the fixed display device 420, the image of the workpiece 200 is an image of the 3D model of the workpiece 200.

[0119] In step S35, the robot control unit 21 determines whether the user U has finished moving the external axis device 30. If the answer in step S35 is no, the operations from step S31 to step S34 are repeated.

[0120] (Effects of the sixth embodiment) The wearable display device 410 and the fixed display device 420 each acquire the coordinates of the irradiated light in the image captured by the imaging unit 401, which is moved relative to the workpiece 200. Based on the acquired coordinates of the irradiated light and the control point TCP of the external axis device 30, a virtual image G of the irradiated light, generated by computer graphics, is superimposed onto the image of the workpiece 200 and displayed on the display unit 411 of the wearable display device 410 and the display unit 421 of the fixed display device 420. As a result, the virtual image G of the irradiated light is displayed on the image of the workpiece 200 based on the actual coordinates of the irradiated light and the actual control point TCP of the external axis device 30. In other words, since the shape and position are based on actual information, the errors in shape and position are small. Therefore, by visually observing the virtual image G of the irradiated light on the image of the workpiece 200, the user U can confirm how the irradiated light hit the workpiece 200, and thus accurately recognize the imageable range of the workpiece 200 captured by the imaging unit 401.

[0121] (modified version) It should be noted that the embodiments disclosed herein are illustrative and not restrictive in all respects. The scope of this disclosure is defined by the claims rather than the description of the embodiments above, and further includes all modifications (modifications) within the meaning and scope equivalent to the claims.

[0122] In the first to sixth embodiments described above, examples were shown in which a workpiece is placed on an external axis device and the workpiece is moved by the external axis device, thereby moving the work unit relative to the workpiece. However, the present disclosure is not limited thereto. In this disclosure, as shown in the example in Figure 28, the work unit 40 may be placed on an external axis device 30 and the work unit 40 may be moved by the external axis device 30, thereby moving the work unit 40 relative to the workpiece 200.

[0123] The first to sixth embodiments described above show examples in which the external axis device includes a linear motion mechanism, but the disclosure is not limited thereto. In the disclosure, the external axis device may include at least one of a linear motion mechanism and a rotary mechanism. For example, in the example shown in Figure 29, the external axis device 530 is an aligner device for positioning a workpiece 200 as a semiconductor wafer substrate. The external axis device 530 includes a holding unit 531 for holding the workpiece 200, a rotating mechanism 532 for rotating the workpiece 200 around a rotation axis along the vertical direction, and a detection unit 533 for detecting characteristic parts of the workpiece 200. Furthermore, the external axis device including the rotary mechanism may be other than an aligner device. Also, the external axis device may include both a linear motion mechanism and a rotary mechanism. Furthermore, if the external axis device includes a linear motion mechanism, it may include one or more linear motion mechanisms.

[0124] The first to sixth embodiments described above show examples in which the external axis device is positioned separately from the robot and at a distance from it, but the disclosure is not limited thereto. In this disclosure, the external axis device may be an end effector such as a hand attached to the robot. For example, in the example shown in Figure 30, the external axis device 630 is a hand attached to the tip of the robot. The external axis device 630 includes finger mechanisms 631a and 631b with a Chebyshev link mechanism, and motors 632a and 632b that drive the finger mechanisms 631a and 631b, respectively. The external axis device may also be an end effector other than a hand.

[0125] Furthermore, although the first embodiment described above shows an example in which the robot control unit, signal output unit, and work control unit are arranged separately, the disclosure is not limited thereto. In this disclosure, the robot control unit, signal output unit, and work control unit may be included in a common control unit. In this case, the common control unit may have separate processing units such as CPUs as the robot control unit, signal output unit, and work control unit, or it may have a common processing unit such as a CPU.

[0126] Furthermore, while the first embodiment described above illustrates an example of a robot configuration including horizontal joints, the disclosure is not limited thereto. The robot may also include vertical joints. The number of joints in the robot is not particularly limited.

[0127] Furthermore, while the first embodiment described above shows an example of a configuration in which the relative movement amount of the workpiece with respect to the workpiece is obtained based on the movement of the control point of the external axis device, the disclosure is not limited thereto. In this disclosure, the relative movement amount of the workpiece with respect to the workpiece may be obtained based on the movement of any position of the external axis device.

[0128] Furthermore, while the first embodiment described above shows an example of a configuration in which the robot control unit and the signal output unit are located in a common control device, the disclosure is not limited thereto. In this disclosure, the robot control unit and the signal output unit may be located in separate control devices. In addition, the signal output unit may be located in a common control device with the robot control unit by adding hardware, or by adding software.

[0129] Furthermore, while the second embodiment described above shows an example where the result display device is a monitor such as a liquid crystal monitor, this disclosure is not limited to this. In this disclosure, the result display device may be a wearable display device that displays mixed reality.

[0130] Furthermore, in the third embodiment described above, an example was shown in which, as processing for an actual workpiece, both a process of irradiating a laser beam from an indicator unit to indicate the position of the target on the actual workpiece and a process of displaying a 3D image of the workpiece, a list of workpiece inspection results, and an inspection image were performed, but the present disclosure is not limited to this. In the present disclosure, only one of the above two processes may be performed.

[0131] Furthermore, while the second to sixth embodiments described above show examples in which the inspection unit inspects the workpiece in parallel with the workpiece work, this disclosure is not limited to this. In this disclosure, the inspection of the workpiece may be performed after the workpiece work has been completed.

[0132] Furthermore, while the sixth embodiment described above shows an example in which a virtual image of the irradiated light is displayed on both a wearable display device and a fixed display device, the present disclosure is not limited thereto. In this disclosure, the virtual image of the irradiated light may be displayed on only one of the wearable display device or the fixed display device.

[0133] The functions of the elements disclosed herein can be performed using circuits or processing circuits, including general-purpose processors, dedicated processors, integrated circuits, ASICs (Application Specific Integrated Circuits), 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 circuits. In this disclosure, a circuit, unit, or means is hardware that performs the enumerated functions, or hardware programmed to perform the enumerated functions. The hardware may be hardware disclosed herein, or other known hardware that is programmed or configured to perform the enumerated functions. If the hardware is a processor, which is considered a type of circuit, then the circuit, means, or unit is a combination of hardware and software, and the software is used to configure the hardware and / or the processor.

[0134] [Aspect] Those skilled in the art will understand that the exemplary embodiments described above are specific examples of the following embodiments.

[0135] (Aspect 1) Robots and, The work area performs tasks on the workpiece, An external axis device that is controlled as an external axis of the robot and moves the workpiece or the work unit, A robot system comprising: a control unit that generates a signal based on the relative movement of the work unit relative to the work unit for each amount of relative movement of the work unit relative to the work unit due to the movement of the work unit or the work unit using the external axis device, and controls the work unit to perform work on the work unit based on the generated signal.

[0136] (Aspect 2) The robot system according to embodiment 1, wherein the control unit includes a robot control unit that controls both the robot and the external axis device.

[0137] (Aspect 3) The robot system according to embodiment 1 or embodiment 2, wherein the external axis device is arranged separately from the robot and spaced apart from the robot.

[0138] (Aspect 4) The robot system according to any one of embodiments 1 to 3, wherein the external axis device includes at least one of a linear motion mechanism and a rotary mechanism.

[0139] (Aspect 5) The robot system according to embodiment 4, wherein the linear motion mechanism includes a first linear motion mechanism for moving the workpiece or the work unit in a first direction, and a second linear motion mechanism for moving the workpiece or the work unit in a second direction perpendicular to the first direction.

[0140] (Aspect 6) The robot system according to any one of embodiments 1 to 5, wherein the control unit outputs the signal based on the relative movement amount of the work unit with respect to the work unit as a variable frequency pulse signal for each relative movement amount of the work unit with respect to the work unit.

[0141] (Aspect 7) The robot system according to embodiment 6, wherein the control unit outputs a predetermined pulse signal for each relative movement amount of the work unit with respect to the workpiece.

[0142] (Pattern 8) The robot system according to any one of embodiments 1 to 7, wherein the control unit controls the work performed by the work unit on the workpiece using the signal based on the relative movement amount of the work unit as a trigger.

[0143] (Aspect 9) The robot system according to any one of embodiments 1 to 8, wherein the control unit causes the work unit to perform work at fixed intervals based on the signal based on the relative movement amount of the work unit.

[0144] (Aspect 10) The robot system according to any one of embodiments 1 to 9, wherein the robot is a multi-joint robot.

[0145] (Aspect 11) The external shaft device includes a motor and a position detection unit for detecting the position of the motor. The robot system according to any one of embodiments 1 to 10, wherein the control unit generates a signal based on the relative movement amount of the work unit based on the detection result of the position detection unit.

[0146] (Aspect 12) The robot system according to any one of embodiments 1 to 11, wherein the work unit includes at least one of an imaging unit, a painting unit, and a three-dimensional shape measurement unit. [Explanation of symbols]

[0147] 10 Robots 21 Robot Control Unit (Control Unit) 22 Signal output section (control section) 30, 530, 630 External shaft device 32 Linear motion mechanism 32a Linear motion mechanism (first linear motion mechanism) 32b Linear motion mechanism (second linear motion mechanism) 33 Motor 34 Position detection unit 40 Work Unit 50. Operation Control Unit (Control Unit) 100 Robot Systems 200 work 532 Rotation mechanism

Claims

1. Robots and, The work area performs tasks on the workpiece, An external axis device that is controlled as an external axis of the robot and moves the workpiece or the work unit, A robot system comprising: a control unit that generates a signal based on the relative movement of the work unit relative to the work unit for each amount of relative movement of the work unit relative to the work unit due to the movement of the work unit or the work unit using the external axis device, and controls the work unit to perform work on the work unit based on the generated signal.

2. The robot system according to claim 1, wherein the control unit includes a robot control unit that controls both the robot and the external axis device.

3. The robot system according to claim 1, wherein the external axis device is arranged separately from the robot and at a distance from the robot.

4. The robot system according to claim 1, wherein the external axis device includes at least one of a linear motion mechanism and a rotary motion mechanism.

5. The robot system according to claim 4, wherein the linear motion mechanism includes a first linear motion mechanism for moving the workpiece or the work unit in a first direction, and a second linear motion mechanism for moving the workpiece or the work unit in a second direction perpendicular to the first direction.

6. The robot system according to claim 1, wherein the control unit outputs the signal based on the relative movement amount of the work unit with respect to the workpiece as a variable frequency pulse signal for each relative movement amount of the work unit.

7. The robot system according to claim 6, wherein the control unit outputs a predetermined pulse signal for each relative movement amount of the work unit with respect to the workpiece.

8. The robot system according to claim 1, wherein the control unit controls the work performed by the work unit on the workpiece using the signal based on the relative movement amount of the work unit as a trigger.

9. The robot system according to claim 1, wherein the control unit causes the work unit to perform work at fixed intervals based on the signal based on the relative movement amount of the work unit.

10. The robot system according to claim 1, wherein the robot is a multi-joint robot.

11. The external shaft device includes a motor and a position detection unit for detecting the position of the motor. The robot system according to claim 1, wherein the control unit generates a signal based on the relative movement amount of the work unit based on the detection result of the position detection unit.

12. The robot system according to claim 1, wherein the work unit includes at least one of an imaging unit, a painting unit, and a three-dimensional shape measurement unit.