Robot system and robot system control method

The robot system employs a real-time Ethernet-based network to track and control the movements of the robot and work unit, accurately determining the three-dimensional position of a predetermined location on the workpiece, addressing the challenge of precise real-time operation indication.

WO2026121040A1PCT designated stage Publication Date: 2026-06-11KAWASAKI JUKOGYO KK

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
KAWASAKI JUKOGYO KK
Filing Date
2025-11-19
Publication Date
2026-06-11

Smart Images

  • Figure JP2025040404_11062026_PF_FP_ABST
    Figure JP2025040404_11062026_PF_FP_ABST
Patent Text Reader

Abstract

This robot system (100) comprises: a robot (10); a work unit for carrying out work on a workpiece (200); and a control unit (30) that executes control for performing communication via a real-time field network (N) capable of ensuring the real-time properties of communication conforming to Ethernet standards, acquiring a trace log (L) for tracking the movements of the robot (10) and the work unit, and acquiring, on the basis of the trace log (L), the three-dimensional location of a prescribed location related to work performed on the workpiece (200).
Need to check novelty before this filing date? Find Prior Art

Description

Robot system and method for controlling a robot system

[0001] This disclosure relates to a robot system and a method for controlling a robot system.

[0002] Conventionally, a robot system is known. Such a robot system is described, for example, in Japanese Patent Application Laid-Open No. 05-126758.

[0003] Japanese Patent Application Laid-Open No. 05-126758 discloses a robot system for inspecting the painting quality of a vehicle body as a painted object. This robot system includes a robot, a television camera provided at the tip of the robot, and a computer that analyzes image information based on an image of the vehicle body captured by the television camera. In this robot system, first, the vehicle body is imaged by the television camera using the robot. Then, the image information based on the captured image of the vehicle body is analyzed by the computer. Then, it is determined whether there is a painting defect, and if it is determined that there is a painting defect, it is determined at which position of the vehicle body the painting defect has occurred. Then, the position of the painting defect is printed on a drawing of the vehicle body drawn on a paper for printing.

[0004] Japanese Patent Application Laid-Open No. 05-126758

[0005] In the robot system described in Japanese Patent Application Laid-Open No. 05-126758, since the position of the painting defect is printed on a two-dimensional drawing of the vehicle body, it is relatively easy to indicate the position of the painting defect. On the other hand, for example, when indicating the position of a painting defect on an actual vehicle body, it is difficult to accurately indicate the three-dimensional position of the painting defect. Also, when the robot performs operations other than inspection, there may be a case where it is desired to indicate the three-dimensional position of a predetermined location related to the operation on the workpiece. For this reason, it is desired to accurately indicate the three-dimensional position of a predetermined location related to the operation on the workpiece.

[0006] This disclosure has been made to solve the above problems, and an object thereof is to provide a robot system and a method for controlling a robot system that can accurately indicate the three-dimensional position of a predetermined location related to an operation on a workpiece.

[0007] The robot system according to the first aspect of this disclosure comprises a robot, a work unit that performs work on a workpiece, and a control unit that communicates via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard, acquires trace logs to track the movements of the robot and the work unit, and performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace logs.

[0008] As described above, the robot system according to the first aspect of this disclosure communicates via a real-time field network that can guarantee the real-time nature of communication in accordance with the Ethernet standard, and includes a control unit that acquires trace logs to track the movements of the robot and work unit, and performs control to acquire the three-dimensional position of a predetermined location on the workpiece based on the trace logs. As a result, the three-dimensional position of a predetermined location on the workpiece can be acquired with high accuracy based on the trace logs, and thus the three-dimensional position of a predetermined location on the workpiece can be accurately indicated.

[0009] The second aspect of this disclosure provides a method for controlling a robot system, comprising: communicating via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard; acquiring a trace log for tracking the movements of the robot and the work unit that performs work on the workpiece; and performing control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace log.

[0010] The control method for a robot system according to the second aspect of this disclosure comprises, as described above, communication via a real-time field network that can guarantee the real-time nature of communication in accordance with the Ethernet standard, acquiring a trace log to track the movements of the robot and the work unit that performs work on the workpiece, and performing control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace log. As a result, the three-dimensional position of a predetermined location related to the work can be acquired with high accuracy based on the trace log, and thus a robot system capable of accurately indicating the three-dimensional position of a predetermined location related to the work can be provided.

[0011] According to this disclosure, as described above, the three-dimensional position of a predetermined location related to work on a workpiece can be accurately indicated.

[0012] This figure shows a first example of a robot system according to one embodiment. This figure shows a second example of a robot system according to one embodiment. This figure shows a schematic of a robot according to one embodiment. This is a block diagram of a robot according to one embodiment. This figure illustrates a first example of relative movement of the work unit of a robot system according to one embodiment. This figure illustrates a second example of relative movement of the work unit of a robot system according to one embodiment. This figure shows an example of work performed by the work unit of a robot system according to one embodiment in comparison with a comparative example. This figure illustrates a first example of control of work performed by the work unit on a workpiece by a robot system according to one embodiment. This figure illustrates a second example of control of work performed by the work unit on a workpiece by a robot system according to one embodiment. This figure illustrates a third example of control of work performed by the work unit on a workpiece by a robot system according to one embodiment. This figure illustrates an example of a signal generated by a robot system according to one embodiment. This figure illustrates a first example of a trace log according to one embodiment. This figure illustrates a second example of a trace log according to one embodiment. This figure illustrates a first example of acquiring a three-dimensional position according to one embodiment. This figure illustrates a second example of acquiring a three-dimensional position according to one embodiment. This figure illustrates showing a three-dimensional position to an actual workpiece according to one embodiment. This is a diagram illustrating how to show the three-dimensional position of a workpiece in a three-dimensional image according to one embodiment. This is a flowchart illustrating the control method of a robot system according to one embodiment. This is a diagram showing the working section of a robot system according to a modified example of one embodiment.

[0013] The embodiments of this disclosure will be described below with reference to the drawings.

[0014] (Robot System Configuration) Referring to Figures 1 to 18, the configuration of a robot system 100 according to one embodiment will be described. The robot system 100 performs work on the workpiece 200.

[0015] Figure 1 shows a first example of a robot system 100. The robot system 100 shown in Figure 1 comprises a robot 10, a work unit 20 that performs work on a workpiece 200, and a control unit 30 that controls the robot 10 and the work unit 20. The control unit 30 includes a master control unit 41, a robot control unit 51, and a work unit control unit 61. The robot system 100 also comprises a master device 40 including the master control unit 41, a robot control device 50 including the robot control unit 51, and a work unit control device 60 including the work unit control unit 61. The master device 40, the robot control device 50, and the work unit control device 60 are connected to each other via a real-time field network N that can guarantee real-time communication in accordance with the Ethernet standard.

[0016] Robot 10 is, for example, an industrial or medical robot. Robot 10 operates using AC power supplied from an external source. For example, robot 10 is a vertical articulated robot. Robot 10 includes a base portion 11 and an arm portion 12 connected to the base portion 11. The arm portion 12 has multiple joints. Each of the multiple joints has a servo motor as a drive source. A work section 20 is positioned at the tip of the arm portion 12. Robot 10 moves the work section 20 relative to the workpiece 200 by driving the multiple joints of the arm portion 12.

[0017] As shown in Figure 3, the arm 12 of the robot 10 includes six joints 12a, 12b, 12c, 12d, 12e, and 12f, and links 13a, 13b, 13c, 13d, and 13e connecting each joint. Furthermore, as shown in Figure 4, each of the six joints 12a to 12f is provided with a motor 14 consisting of a servo motor, a reduction gear 15 that reduces the rotational speed of the motor 14 and outputs the driving force of the motor 14 to the corresponding link, and an encoder 16 that detects the rotational position of each joint.

[0018] Each of the six joints 12a to 12f rotates under the drive of the motor 14.

[0019] The first axis joint 12a is connected to the base portion 11. The joint 12a rotates the link 13a around the rotation axis A1 relative to the base portion 11. The second axis joint 12b rotates the link 13b relative to the link 13a around the rotation axis A2, which is perpendicular to the rotation axis A1.

[0020] The third joint 12c rotates link 13c relative to link 13b around a rotation axis A3 that is parallel to the rotation axis A2. The fourth joint 12d rotates link 13d relative to link 13c around a rotation axis A4 that is perpendicular to the rotation axis A3.

[0021] The fifth joint 12e rotates link 13e relative to link 13d around a rotation axis A5 perpendicular to the rotation axis A4. The sixth joint 12f rotates the work section 20 relative to link 13e around a rotation axis A6 perpendicular to the rotation axis A5.

[0022] The work unit 20 performs operations on the workpiece 200. The work unit 20 includes, for example, at least one of the following: an imaging unit, a three-dimensional shape measurement unit, a distance measuring sensor, a coating unit, an adhesive unit, a spray unit, a welding unit, a sewing unit, an ultrasonic flaw detection unit, an eddy current flaw detection unit, a tapping inspection unit, a peeling laser irradiation unit, and a hardening UV (Ultra Violet) irradiation unit.

[0023] The work unit 20 performs operations on the workpiece 200 while moving relative to the workpiece 200. For example, the imaging unit includes at least one of a line camera and an area camera. The imaging unit as a line camera captures a line-shaped image while moving relative to the workpiece 200. The imaging unit as an area camera captures a rectangular image while moving relative to the workpiece 200. The three-dimensional shape measurement unit includes a laser profile sensor. The three-dimensional shape measurement unit as a laser profile sensor projects laser light onto the workpiece 200 while moving relative to the workpiece 200 to perform imaging and measures the three-dimensional shape of the workpiece 200 by the light section method.

[0024] The distance measuring sensor measures the distance to each position on the workpiece 200 while moving relative to the workpiece 200. The coating unit applies the coating material to the workpiece 200 while moving relative to the workpiece 200. The coating material is a liquid or paste such as adhesive, sealant, reagent, paint, solder, mortar, cement, or concrete. Alternatively, the coating material may be a filament used in a 3D printer, such as resin / plastic, metal, or carbon short fiber.

[0025] The adhesive unit applies an adhesive to the workpiece 200 while moving relative to the workpiece 200. The adhesive is, for example, a sealant, a sticker, or tape. The spraying unit sprays an adhesive onto the workpiece 200 while moving relative to the workpiece 200. The spray is, for example, a liquid such as an adhesive, a chemical, or a paint. The welding unit welds the workpiece 200 while moving relative to the workpiece 200. The sewing unit sews the workpiece 200 while moving relative to the workpiece 200.

[0026] The ultrasonic flaw detection unit moves relative to the workpiece 200, irradiating the workpiece 200 with ultrasonic waves and detecting the reflected ultrasonic waves to detect defects in the workpiece 200. The eddy current flaw detection unit moves relative to the workpiece 200, bringing a coil to which alternating current is applied close to the workpiece 200, and detecting the generated eddy currents to detect defects in the workpiece 200. The impact sound inspection unit strikes the workpiece 200 with a hammer and detects the generated sound to detect defects in the workpiece 200. The peeling laser irradiation unit moves relative to the workpiece 200, irradiating the workpiece 200 with laser light to peel off any peeled material from the workpiece 200. The peeled material is, for example, an oxide film and UV-curing resin. The curing UV irradiation unit moves relative to the workpiece 200, irradiating the workpiece 200 with UV light to cure the UV-curing resin on the workpiece 200.

[0027] The master device 40 is a computer that manages the robot system 100. The master device 40 includes a master control unit 41. The master control unit 41 includes a memory for storing programs and a processor for executing programs. The master control unit 41 functions as a master in a master-slave real-time field network N in which multiple slaves are connected to one master. The master control unit 41 communicates with each device connected to the real-time field network N via the real-time field network N.

[0028] The robot control device 50 is a computer that controls the robot 10. The robot control device 50 includes a robot control unit 51. The robot control unit 51 includes a memory for storing programs and a processor for executing programs. The robot control unit 51 functions as a slave in the real-time field network N. The robot control unit 51 communicates with each device connected to the real-time field network N via the real-time field network N.

[0029] The robot control unit 51 controls the movement of the robot 10. Specifically, the robot control unit 51 controls the movement of the robot 10 by controlling the power supplied to the motors provided at each joint of the robot 10. The robot control unit 51 also receives instructions (teaching) of the robot 10's movements from the user and controls the robot 10 to perform the movements based on the teaching. Specifically, the robot control unit 51 receives the position and orientation of the robot 10's control points and calculates the movement of each joint of the robot 10. The robot control unit 51 also controls the movement of the robot 10 based on the detected values ​​of the encoders 16 at each joint. The robot control unit 51 may also receive an automatically generated movement trajectory and control the robot 10 to perform movements based on the automatically generated movement trajectory.

[0030] The work unit control device 60 is a computer that controls the work unit 20. The work unit control device 60 includes a work unit control unit 61. The work unit control unit 61 includes a memory for storing programs and a processor for executing programs. The work unit control unit 61 functions as a slave in the real-time field network N. The work unit control unit 61 communicates with each device connected to the real-time field network N via the real-time field network N.

[0031] The work unit control unit 61 controls the work performed on the work unit 20 by the work unit 20. If the work unit 20 is an imaging unit acting as a line camera or area camera, the work unit control unit 61 controls the imaging performed by the work unit 20. Specifically, the work unit control unit 61 controls the timing of imaging of the work unit 20 by the work unit 20.

[0032] When the work unit 20 is a three-dimensional shape measurement unit acting as a laser profile sensor, the work unit control unit 61 controls the projection of laser light and the imaging of laser light by the work unit 20. Specifically, the work unit control unit 61 controls the timing of imaging of the work unit 200 by the work unit 20.

[0033] If the work unit 20 is a distance measuring sensor, the work unit control unit 61 controls the timing of measurement of the workpiece 200 by the work unit 20. If the work unit 20 is a coating unit, the work unit control unit 61 controls the timing and amount of coating applied by the work unit 20.

[0034] If the work unit 20 is an adhesive unit, the work unit control unit 61 controls the timing and amount of adhesive applied by the work unit 20. If the work unit 20 is a spray unit, the work unit control unit 61 controls the timing and amount of spray applied by the work unit 20.

[0035] If the work unit 20 is a welding unit, the work unit control unit 61 controls the timing and amount of welding performed by the work unit 20. If the work unit 20 is a sewing unit, the work unit control unit 61 controls the timing of sewing performed by the work unit 20.

[0036] If the work unit 20 is an ultrasonic flaw detection unit, the work unit control unit 61 controls the timing of ultrasonic emission and detection by the work unit 20. If the work unit 20 is an eddy current flaw detection unit, the work unit control unit 61 controls the timing of eddy current generation by the work unit 20. If the work unit 20 is a tapping inspection unit, the work unit control unit 61 controls the timing of tapping generation by the work unit 20. If the work unit 20 is a peeling laser irradiation unit, the work unit control unit 61 controls the timing of laser light irradiation by the work unit 20. If the work unit 20 is a hardening UV irradiation unit, the work unit control unit 61 controls the timing of UV light irradiation by the work unit 20.

[0037] Figure 2 shows a second example of the robot system 100. Referring to Figure 2, a robot system 100 in which the work unit control device 60 does not support the real-time field network N will be described. The robot system 100 shown in Figure 2 comprises a robot 10, a work unit 20, and a control unit 30. The control unit 30 includes a master control unit 41, a robot control unit 51, a work unit control unit 61, and a communication conversion control unit 71. The robot system 100 comprises a master device 40 including the master control unit 41, a robot control device 50 including the robot control unit 51, a work unit control device 60 including the work unit control unit 61, and a communication conversion device 70 including the communication conversion control unit 71. The master device 40, the robot control device 50, and the communication conversion device 70 are connected to each other via the real-time field network N. The communication conversion device 70 and the work unit control device 60 are connected to each other using a communication format other than the communication format of the real-time field network N, such as a serial communication format such as RS422. Detailed explanations of aspects similar to those of the robot system 100 shown in Figure 1 will be omitted, and the differences will be explained in detail.

[0038] The communication conversion device 70 is a device that converts communication formats. The communication conversion device 70 includes a communication conversion control unit 71. The communication conversion control unit 71 includes a memory for storing programs and a processor for executing programs. The communication conversion control unit 71 functions as a slave in the real-time field network N. The communication conversion control unit 71 communicates with each device connected to the real-time field network N via the real-time field network N.

[0039] The communication conversion control unit 71 performs control to convert data in a communication format other than that of the real-time field network N. Specifically, the communication conversion control unit 71 converts the data in a communication format of the real-time field network N acquired from the master control unit 41 into data in a serial communication format, such as RS422, used between the communication conversion control unit 71 and the work unit control unit 61, and outputs it to the work unit control unit 61.

[0040] The work unit control unit 61 of the work unit control device 60 does not function as a slave in the real-time field network N. The work unit control unit 61 communicates with the communication conversion control unit 71 using a communication format other than that of the real-time field network N, such as a serial communication format like RS422. In addition, the work unit control unit 61 communicates with each device connected to the real-time field network N via the communication conversion control unit 71.

[0041] The real-time field network N is a field network that performs periodic communication. In periodic communication, data for controlling the robot system 100 is transmitted and received between the master and the slave, including information on the relative movement amount of the work unit 20 with respect to the workpiece 200, information on the trigger for work performed by the work unit 20 on the workpiece 200, and information to be recorded in the trace log L (see Figures 8 and 9) for tracking the robot 10 and the work unit 20. For example, the real-time field network N is Ethernet (registered trademark). The data is exchanged between the master and the slave in the form of Ethernet frames.

[0042] The real-time field network N has a time synchronization function. The time synchronization function includes a distribute clock function. In the distribute clock function, a reference clock is supplied from a slave that has the function of supplying a reference clock that serves as the time standard to the master, and the reference clock is transmitted from the master to each slave, thereby synchronizing the local clocks of the master and each slave to the reference clock. In addition, since the reference clock arrives at each slave with a slight delay, the distribute clock function measures and corrects the communication delay from the reference clock. As a result, it is possible to achieve a very short jitter of 1 μs or less at each slave. The slave that has the function of supplying the reference clock may be any of the robot control unit 51, the work unit control unit 61, and the communication conversion control unit 71, or it may be a control unit separate from the robot control unit 51, the work unit control unit 61, and the communication conversion control unit 71.

[0043] The real-time field network N has an on-the-fly processing function that reads and writes to addressed data. In the on-the-fly processing function, the master transmits data in the format of an Ethernet frame, and each slave reads and writes to the data addressed to it and transmits the data to the next slave. The last slave sends back the data that has been read and written as needed to the master. Because the on-the-fly processing function enables efficient transmission and reception of data between the master and slaves, it is possible to achieve a control cycle of very short 100 μs or less.

[0044] For example, the master control unit 41 transmits data specifying the address of the robot control unit 51 so as to write information such as the relative movement amount of the working unit 20 with respect to the workpiece 200. In this case, the robot control unit 51 writes to the data received regarding information such as the relative movement amount of the working unit 20 with respect to the workpiece 200. Thereby, it is possible to transmit information regarding the relative movement amount of the working unit 20 with respect to the workpiece 200 to the master control unit 41. Also, if there is a command from the master control unit 41, not only information regarding the relative movement amount of the working unit 20 with respect to the workpiece 200, but also information regarding the relative speed of the working unit 20 with respect to the workpiece 200, information on three-dimensional coordinates, information on the number of pulses and pulse frequency, etc. can also be transmitted to the master control unit 41. Also, it is possible to transmit information on each joint angle from the servo software to the master control unit 41 at high speed. And based on the information on each joint angle, it is also possible to calculate the relative movement amount and three-dimensional position on the master control unit 41 side and transmit it from the master control unit 41 to each slave. Note that, unlike this embodiment, when the robot control unit 51 functions as a master, the robot control unit 51 calculates the relative movement amount and three-dimensional position and transmits it from the master control unit 41 to each slave. For example, the master control unit 41 transmits data specifying the address of the working unit control unit 61 or the communication conversion control unit 71 so as to read information on the trigger of the work by the working unit 20 with respect to the workpiece 200. In this case, the working unit control unit 61 or the communication conversion control unit 71 reads from the data received regarding information on the trigger of the work by the working unit 20 with respect to the workpiece 200.

[0045] (Control of Work) Here, in this embodiment, the control unit 30 controls the work by the working unit 20 on the workpiece 200 based on information regarding the relative movement amount of the working unit 20 with respect to the workpiece 200 due to the movement of the working unit 20 arranged on the robot 10. Specifically, the control unit 30 controls the work by the working unit 20 on the workpiece 200 for each relative movement amount of the working unit 20 with respect to the workpiece 200 based on the information regarding the relative movement amount of the working unit 20 with respect to the workpiece 200. The control unit 30 causes the working unit 20 to perform work for each fixed movement amount.

[0046] When the working unit 20 is an imaging unit as a line camera or an area camera, the control unit 30 controls the working unit 20 to perform imaging every time the working unit 20 moves by a certain amount. When the working unit 20 is a three-dimensional shape measurement unit as a laser profile sensor, the control unit 30 controls the working unit 20 to project laser light and perform imaging of the laser light every time the working unit 20 moves by a certain amount.

[0047] When the working unit 20 is a distance measurement sensor, the control unit 30 controls the working unit 20 to measure the distance to the workpiece 200 every time the working unit 20 moves by a certain amount. When the working unit 20 is an application unit, the control unit 30 controls the working unit 20 to apply a certain amount of coating material every time the working unit 20 moves by a certain amount.

[0048] When the working unit 20 is an attachment unit, the control unit 30 controls the working unit 20 to attach a certain amount of attachment every time the working unit 20 moves by a certain amount. When the working unit 20 is a spraying unit, the control unit 30 controls the working unit 20 to spray a certain amount of spray every time the working unit 20 moves by a certain amount.

[0049] When the working unit 20 is a welding unit, the control unit 30 controls the working unit 20 to perform a certain amount of welding every time the working unit 20 moves by a certain amount. When the working unit 20 is a sewing unit, the control unit 30 controls the working unit 20 to perform a certain amount of sewing every time the working unit 20 moves by a certain amount.

[0050] When the working unit 20 is an ultrasonic flaw detection unit, the control unit 30 controls the working unit 20 to emit ultrasonic waves for flaw detection every time the working unit 20 moves by a certain amount. When the working unit 20 is an eddy current flaw detection unit, the control unit 30 controls the working unit 20 to generate eddy currents for flaw detection every time the working unit 20 moves by a certain amount. When the working unit 20 is a sound inspection unit, the control unit 30 controls the working unit 20 to perform sound inspection every time the working unit 20 moves by a certain amount. When the working unit 20 is a peeling laser irradiation unit, the control unit 30 controls the working unit 20 to irradiate laser light every time the working unit 20 moves by a certain amount. When the working unit 20 is a curing UV irradiation unit, the control unit 30 controls the working unit 20 to irradiate UV light every time the working unit 20 moves by a certain amount.

[0051] The relative movement of the work unit 20 with respect to the workpiece 200 is obtained based on the movement of the control point TCP (see Figure 5), which controls the movement of the robot 10. The control point TCP is set to the working position of the work unit 20 relative to the workpiece 200.

[0052] If the work unit 20 is either an imaging unit as a line camera or an area camera, or a 3D shape measurement unit as a laser profile sensor, the control point TCP is set to the focal position of the work unit 20's imaging. If the work unit 20 is a distance measuring sensor, the control point TCP is set to the distance measuring position of the work unit 20.

[0053] If the work section 20 is a coating section, the control point TCP is set to the coating position of the work section 20. If the work section 20 is an adhesive section, the control point TCP is set to the adhesive position of the work section 20. If the work section 20 is a welding section, the control point TCP is set to the welding position of the work section 20. If the work section 20 is a sewing section, the control point TCP is set to the sewing position of the work section 20. If the work section 20 is either an ultrasonic testing section or an eddy current testing section, the control point TCP is set to the testing position of the work section 20. If the work section 20 is a tapping test section, the control point TCP is set to the tapping test position of the work section 20. If the work section 20 is a peeling laser irradiation section, the control point TCP is set to the laser light irradiation position. If the work section 20 is a curing UV irradiation section, the control point TCP is set to the UV light irradiation position.

[0054] For example, as shown in Figure 5, the robot control unit 51 moves the work unit 20 in a curved relative position to the work unit 200 along the surface of the work unit 200 using the robot 10. Alternatively, for example, the robot control unit 51 moves the work unit 20 relative to the work unit 200 which is curved in the vertical direction using the robot 10. In this case, the work unit control unit 61 controls the work unit 20 to perform work for each movement amount L1 of the control point TCP.

[0055] Furthermore, as shown in Figure 6, for example, the robot control unit 51 moves the work unit 20 in a curved manner relative to the robot 10 along a work position on the workpiece 200 that has a curved section. In this case, the work unit control unit 61 controls the work unit 20 to perform work for each movement amount L2 of the control point TCP. For example, if the work unit 20 is a coating unit, the work unit control unit 61 controls the work unit 20 to dispense a coating amount V1 for each movement amount L2 of the work unit 20. In addition, the work unit control unit 61 controls the discharge stroke for dispensing the coating to be a constant amount for each movement amount L2 of the work unit 20, regardless of the relative movement speed of the work unit 20. As a result, as shown in the embodiment in Figure 7(A), it is possible to apply the coating to both straight and curved sections at a constant rate. On the other hand, in the comparative example shown in Figure 7(B), the coating is applied at a constant discharge rate regardless of the relative movement speed of the work unit 20. In this case, the discharge rate of the coating increases in the curved section, and a large amount of coating is applied in the curved section. As a result, uneven application of the coating occurs in both straight and curved sections.

[0056] Figures 8 and 9 show an example of controlling the work performed on a workpiece 200 by the work unit 20 of the robot system 100 shown in Figure 1.

[0057] As shown in Figures 8 and 9, the master control unit 41 controls the work unit control unit 61 to output a trigger based on information regarding the relative movement amount of the work unit 20 relative to the workpiece 200 obtained from the robot control unit 51. Specifically, the master control unit 41 controls the work unit control unit 61 to output a trigger so that the work unit 20 performs work on the workpiece 200 for each relative movement amount of the work unit 20 relative to the workpiece 200, based on information regarding the relative movement amount of the work unit 20 relative to the workpiece 200 obtained from the robot control unit 51. The work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 based on the trigger obtained from the master control unit 41. Specifically, the work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 for each relative movement amount of the work unit 20 relative to the workpiece 200, based on the trigger obtained from the master control unit 41.

[0058] More specifically, the robot control unit 51 performs control to acquire information regarding the relative movement amount of the work unit 20 with respect to the workpiece 200 based on the actual movement of the work unit 20, or to acquire information regarding the relative movement amount of the work unit 20 with respect to the workpiece 200 based on a movement command from the robot 10. At each control cycle of the real-time field network N, the robot control unit 51 performs control to output the latest information regarding the relative movement amount of the work unit 20 with respect to the workpiece 200 to the master control unit 41 by writing information regarding the relative movement amount of the work unit 20 with respect to the workpiece 200 to the data output from and returned to the master control unit 41. The information regarding the relative movement amount of the work unit 20 with respect to the workpiece 200 includes the relative movement amount of the work unit 20 with respect to the workpiece 200.

[0059] The master control unit 41 controls the work unit control unit 61 to output a trigger, based on the information regarding the relative movement amount of the work unit 20 relative to the work unit 200 obtained from the robot control unit 51, so that the work unit 20 performs work on the work unit 200 at regular intervals. The master control unit 41 controls the work unit control unit 61 to output a trigger by sending data containing trigger information, specifying the address of the work unit control unit 61 to read the trigger information, at the control cycle in which it has determined to output a trigger.

[0060] The work unit control unit 61 reads trigger information from the received data and, based on the triggers obtained from the master control unit 41, controls the work performed by the work unit 20 on the workpiece 200 at regular intervals. In this case, for example, as shown in Figure 8, the work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 based on the rising and falling edges of a single-phase pulse, based on the triggers obtained from the master control unit 41. Alternatively, for example, as shown in Figure 9, the work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 based on the rising edges of pulses in multiple phases. Figure 9 shows an example in which the work performed by the work unit 20 on the workpiece 20 is controlled by the rising edges of pulses in two phases, A phase and B phase.

[0061] For example, if the work unit 20 performs work on the workpiece 200 every time it moves 0.1 mm relative to the workpiece 200, let's assume that in the first control cycle shown on the far left in Figures 8 and 9, the work unit 20 moves 0.1 mm relative to the workpiece 200. In this case, in the control cycle following the first control cycle, shown second from the left in Figures 8 and 9, data containing trigger information is generated and transmitted. Then, in the control cycle following the control cycle in which the data containing trigger information was generated, shown third from the left in Figures 8 and 9, the work unit 20 performs work on the workpiece 200. By controlling the work performed by the work unit 20 on the workpiece 200 using a real-time field network N, the control cycle becomes 100 μs or less and the jitter becomes 1 μs or less. Therefore, it is possible to make the difference between the timing of outputting the trigger to have the work unit 20 perform work on the workpiece 200 and the timing of the work unit 20 actually performing work on the workpiece 200 very short, less than 101 μs. Furthermore, if the control cycle is further shortened due to improved processing capacity, it will be possible to achieve even shorter delays. Note that when controlling the work performed by the work unit 20 on the workpiece 200 without using the real-time field network N, the timing difference will be several milliseconds.

[0062] Figure 10 shows an example of controlling the work performed on a workpiece 200 by the work unit 20 of the robot system 100 shown in Figure 2. Note that detailed explanations of points similar to those in the examples shown in Figures 8 and 9 will be omitted, and the differences will be explained primarily.

[0063] As shown in Figure 10, the master control unit 41 controls the communication conversion control unit 71 to output a trigger based on information regarding the relative movement amount of the work unit 20 relative to the workpiece 200, which is obtained from the robot control unit 51. Specifically, the master control unit 41 controls the communication conversion control unit 71 to output a trigger so that the work unit 20 performs work on the workpiece 200 for each relative movement amount of the work unit 20 relative to the workpiece 200, based on information regarding the relative movement amount of the work unit 20 relative to the workpiece 200, which is obtained from the robot control unit 51. The work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 based on the trigger obtained from the master control unit 41 via the communication conversion control unit 71. Specifically, the work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 for each relative movement amount of the work unit 20 relative to the workpiece 200, based on the trigger obtained from the master control unit 41 via the communication conversion control unit 71.

[0064] The master control unit 41 controls the communication conversion control unit 71 to output a trigger, based on the relative movement amount of the work unit 20 relative to the work unit 20, which is included in the information on the relative movement amount of the work unit 20 relative to the work unit 200 obtained from the robot control unit 51, so that the work unit 20 performs work on the work unit 200 at regular intervals. The master control unit 41 controls the communication conversion control unit 71 to output a trigger by sending data containing trigger information, specifying the address of the communication conversion control unit 71 to read the trigger information, at the control cycle in which it has determined to output a trigger.

[0065] The communication conversion control unit 71 reads trigger information from the received data, converts the trigger acquired from the master control unit 41 into the communication format used between the communication conversion control unit 71 and the work unit control unit 61, and performs control to output it to the work unit control unit 61. Based on the trigger acquired from the master control unit 41 via the communication conversion control unit 71, the work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 at regular intervals.

[0066] In the control example shown in Figure 10, the trigger includes a pulse signal based on information regarding the relative movement of the work unit 20 with respect to the workpiece 200. The work unit control unit 61 controls the work performed by the work unit 20 on the workpiece 200 based on the pulse signal obtained from the master control unit 41 after conversion via the communication conversion control unit 71.

[0067] The master control unit 41 outputs a variable-frequency pulse signal based on the relative movement of the work unit 20 relative to the workpiece 20 for each relative movement of the work unit 20 relative to the workpiece 200. The master control unit 41 outputs a predetermined pulse signal for each relative movement of the work unit 20 relative to the workpiece 200. For example, as shown in Figure 11, the master control unit 41 generates and outputs a pulse signal based on the relative movement of the work unit 20 at predetermined control cycles. In other words, the master control unit 41 acquires the relative movement of the work unit 20 relative to the workpiece 200 at predetermined control cycles. The master control unit 41 then generates a pulse signal containing a number of pulses corresponding to the acquired relative movement. One pulse is generated for every x mm of relative movement. For example, if the relative movement is 5x mm, five pulses are generated. A pulse is counted as one on its rising edge and one on its falling edge. In other words, a pulse is counted as two due to its rising and falling edges. The frequency of the output pulses 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.

[0068] In the example shown in Figure 11, the control period is 100 μs, 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 end-effector movement in Figure 11 represents the cumulative amount of movement from 0 mm. In other words, the difference in end-effector movement from the previous control period is acquired as the relative movement in the current control period. For example, if the end-effector movement in the previous control period was 0.1 mm and the end-effector movement in the current control period is 0.2 mm, the relative movement in the current control period is acquired as 0.1 mm. In the example shown in Figure 11, the pulse resolution is set to 0.1 mm / pulse. In other words, one pulse is output for every 0.1 mm movement. For example, when moving 0.1 mm, the number of output pulses is set to 1, and the pulse frequency is 10 kHz. When moving 0.2 mm, the number of output pulses is set to 2, and the pulse frequency is 20 kHz.

[0069] The master control unit 41 controls the communication conversion control unit 71 to output a pulse signal by sending data containing pulse signal information, specifying the address of the communication conversion control unit 71 to read pulse signal information such as frequency and number of pulses, at the control cycle in which it has determined to output a trigger. The communication conversion control unit 71 converts the pulse signal obtained from the master control unit 41 into the communication format used between the communication conversion control unit 71 and the work unit control unit 61, and controls it to output to the work unit control unit 61. The work unit control unit 61 counts the pulses contained in the pulse signal output from the communication conversion control unit 71 to obtain the relative movement amount of the work unit 20. Then, each time the work unit 20 moves a certain amount, the work unit control unit 61 causes the work unit 20 to perform work on the workpiece 200.

[0070] In addition, in the examples shown in Figures 8 and 9, similar to the example shown in Figure 10, the trigger may include a pulse signal based on information regarding the relative movement of the work unit 20 with respect to the workpiece 200, and the work performed by the work unit 20 on the workpiece 200 may be controlled based on the pulse signal.

[0071] In the example shown in Figure 10, as in the examples shown in Figures 8 and 9, by controlling the work performed by the work unit 20 on the workpiece 200 using a real-time field network N, the control period becomes 100 μs or less and the jitter becomes 1 μs or less. As a result, the time difference between the timing of outputting the trigger to have the work unit 20 perform work on the workpiece 200 and the timing of the work unit 20 actually performing work on the workpiece 200 can be reduced to a very short 101 μs or less.

[0072] (Trace Log) In this embodiment, as shown in Figures 12 to 15, the control unit 30 acquires a trace log L to track the movements of the robot 10 and the work unit 20, and performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the trace log L. The trace log L is recorded in the storage unit 80 of the robot system 100 when the work unit 20 performs work on the workpiece 200. The storage unit 80 may be provided in any of the master device 40, robot control device 50, work unit control device 60, and communication converter 70, or it may be located separately from the master device 40, robot control device 50, work unit control device 60, and communication converter 70. The trace log L records information at predetermined timings. For example, the trace log L records information at the timing of the trigger for the work performed by the work unit 20 on the workpiece 200.

[0073] The trace log L is recorded via a real-time field network N. For example, the master control unit 41 performs control to send data specifying the address of at least one of the robot control unit 51 and the work unit control unit 61 or the communication conversion control unit 71, so as to write information to be recorded in the trace log L for the timing of the trigger of work performed by the work unit 20 on the workpiece 200. In this case, the robot control unit 51 and the work unit control unit 61 or the communication conversion control unit 71 perform control to output information to be recorded in the trace log L for the trigger timing to the master control unit 41 by writing the information to be recorded in the trace log L for the trigger timing to the received data. The master control unit 41 acquires the information to be recorded in the trace log L for the trigger timing and performs control to record the information to be recorded in the trace log L for the trigger timing. Information is recorded in the trace log L for each trigger timing.

[0074] For example, the trace log L includes the amount of movement of the robot 10 and the coordinate values ​​of the robot 10. The control unit 30 performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the amount of movement of the robot 10 and the coordinate values ​​of the robot 10. The amount of movement of the robot 10 is the relative movement of the work unit 20 with respect to the workpiece 200. As described above, the amount of movement of the robot 10 is acquired based on the movement of the control point TCP that controls the movement of the robot 10. The coordinate values ​​of the robot 10 are coordinate values ​​in the robot coordinate system, which is a three-dimensional coordinate system. The coordinate values ​​of the robot 10 are acquired based on the coordinate values ​​of the control point TCP. For example, the coordinate values ​​of the robot 10 are acquired as coordinate values ​​that indicate the position and orientation of the control point TCP in the robot coordinate system. For example, the coordinate values ​​that indicate the position and orientation of the control point TCP are represented by [X, Y, Z, O, A, T].

[0075] The work unit 20 includes an inspection unit that performs inspection work on the workpiece 200. The inspection unit includes at least one of an imaging unit, an ultrasonic flaw detection unit, an eddy current flaw detection unit, and a tapping inspection unit. When the work unit 20 is the inspection unit, the control unit 30 detects the target T of the workpiece 200 in the inspection image IM acquired by the inspection unit, and performs control to acquire the three-dimensional position of the target T based on the amount of movement of the robot 10 and the coordinate values ​​of the robot 10.

[0076] Specifically, the control unit 30 performs predetermined image processing on the inspection image IM to detect a target T within the inspection image IM. The target T is, for example, a defect such as a scratch, foreign object, or dent. For example, the inspection coordinate system of the inspection image IM is a two-dimensional coordinate system in which the direction along the robot 10's movement path is the Y-axis direction and the direction perpendicular to the robot 10's movement path is the X-axis direction. However, in cases such as when the inspection image IM is a depth image, the inspection coordinate system of the inspection image IM may be a three-dimensional coordinate system in which the direction along the robot 10's movement path is the Y-axis direction, the direction perpendicular to the robot 10's movement path is the X-axis direction, and the direction perpendicular to the X-axis and Y-axis directions is the Z-axis direction. The control unit 30 performs control to acquire the coordinate values ​​of the target T in the inspection coordinate system. That is, the control unit 30 performs control to acquire the coordinate values ​​of the X-axis and Y-axis of the target T in the inspection coordinate system.

[0077] The control unit 30 performs control to convert the coordinate values ​​of the inspection coordinate system of the target T to the coordinate values ​​of the robot 10 based on the trace log L. The control unit 30 performs control to acquire the amount of movement of the robot 10 in the trace log L that corresponds to the coordinate values ​​of the inspection coordinate system of the target T in the Y-axis direction. At this time, the control unit 30 performs control to acquire the amount of movement of the robot 10 that is closest to the coordinate values ​​of the inspection coordinate system of the target T in the Y-axis direction as the amount of movement of the robot 10 in the corresponding trace log L. Then, the control unit 30 performs control to acquire the coordinate values ​​of the robot 10 in the trace log L that correspond to the acquired amount of movement of the robot 10 in the trace log L.

[0078] Here, the coordinate values ​​of robot 10 in trace log L do not reflect the coordinate values ​​of the inspection coordinate system in the X-axis direction of target T, and therefore include a corresponding discrepancy. For this reason, the control unit 30 performs control to correct the coordinate values ​​of robot 10 in trace log L based on the coordinate values ​​of the inspection coordinate system in the X-axis direction of target T. At this time, the control unit 30 performs control to correct the coordinate values ​​of robot 10 in trace log L by adding the coordinate values ​​of the inspection coordinate system in the X-axis direction of target T. Through these actions, the control unit 30 performs control to acquire the three-dimensional position of target T as the coordinate values ​​of the robot coordinate system.

[0079] For example, in the example shown in Figure 14, the coordinate value of the target T in the X-axis direction is 5.5, and the coordinate value of the target T in the Y-axis direction is 15.2. In this case, the control unit 30 performs control to acquire 15 as the amount of movement of the robot 10 that is closest to the coordinate value of the target T in the Y-axis direction of 15.2. Then, the control unit 30 performs control to acquire [X1, Y1, Z1, O1, A1, T1] as the coordinate values ​​of the robot 10 corresponding to the amount of movement 15 of the robot 10. Then, the control unit 30 adds the coordinate value of the target T in the X-axis direction of 5.5 to the coordinate values ​​of the robot 10 [X1, Y1, Z1, O1, A1, T1] and performs control to acquire the 3D position of the target T as the coordinate values ​​of the robot coordinate system.

[0080] Furthermore, for example, the trace log L includes the working conditions applied to the workpiece 200 by the work unit 20 and the coordinate values ​​of the robot 10. If the work unit 20 is an imaging unit as a line camera or area camera, the working conditions are the conditions related to imaging. If the work unit 20 is a three-dimensional shape measurement unit as a laser profile sensor, the working conditions are the conditions related to three-dimensional measurement. If the work unit 20 is a distance measuring sensor, the working conditions are the conditions related to distance measurement. If the work unit 20 is a coating unit, the working conditions are the conditions related to coating. If the work unit 20 is an adhesive unit, the working conditions are the conditions related to adhesive. If the work unit 20 is a welding unit, the working conditions are the conditions related to welding. If the work unit 20 is a sewing unit, the working conditions are the conditions related to sewing. If the work unit 20 is an ultrasonic flaw detection unit, the working conditions are the conditions related to ultrasonic flaw detection. If the work unit 20 is an eddy current flaw detection unit, the working conditions are the conditions related to eddy current flaw detection. If the work unit 20 is a sound-tapping inspection unit, the work conditions are the conditions related to sound-tapping inspection. If the work unit 20 is a peeling laser irradiation unit, the work conditions are the conditions related to laser light irradiation. If the work unit 20 is a curing UV irradiation unit, the work conditions are the conditions related to UV light irradiation.

[0081] The control unit 30 performs control to acquire the three-dimensional position of a predetermined location related to work on the workpiece 200, based on the work conditions and the coordinate values ​​of the robot 10. Specifically, the control unit 30 performs control to acquire the three-dimensional position of a specific work condition or a switch between work conditions, based on the work conditions and the coordinate values ​​of the robot 10. More specifically, when the user performs an operation to acquire the three-dimensional position of a specific work condition or a switch between work conditions, the control unit 30 performs control to acquire the coordinate values ​​of the robot 10 in the trace log L corresponding to the specific work condition or switch between work conditions specified by the user, as the three-dimensional position of the specific work condition or switch between work conditions. The three-dimensional position of a specific work condition means the position where work was performed under that specific work condition. The three-dimensional position of a switch between work conditions means the position where the work condition was switched from one work condition to another.

[0082] For example, in the example shown in Figure 15, the specific working conditions specified by the user are condition 1. In this case, the control unit 30 performs control to acquire [X1, Y1, Z1, O1, A1, T1], [X2, Y2, Z2, O2, A2, T2] and [X3, Y3, Z3, O3, A3, T3] as the coordinate values ​​of the robot 10 in the trace log L corresponding to condition 1. In this case, [X1, Y1, Z1, O1, A1, T1], [X2, Y2, Z2, O2, A2, T2] and [X3, Y3, Z3, O3, A3, T3] become the three-dimensional positions of condition 1.

[0083] For example, as shown in Figure 12, if the work performed by the work unit 20 on the workpiece 200 is an inspection operation, the trace log L includes time, the amount of movement of the robot 10, pulse resolution, the coordinate values ​​of the robot 10 [X, Y, Z, O, A, T], external axis values, computer vision axis values ​​(CV axis values), product type, material and color, and illuminance. In other words, the trace log L includes the amount of movement of the robot 10, pulse resolution, the coordinate values ​​of the robot 10 [X, Y, Z, O, A, T], external axis values, computer vision axis values ​​(CV axis values), product type, material and color, and illuminance at predetermined timings such as trigger timing.

[0084] For example, as shown in Figure 13, if the work performed by the work unit 20 on the workpiece 200 is a painting operation, the trace log L includes time, the amount of movement of the robot 10, pulse resolution, the coordinate values ​​of the robot 10 [X, Y, Z, O, A, T], external axis values, computer vision axis values ​​(CV axis values), product type, paint color, paint gun speed, paint gun distance, paint discharge amount, bell rotation speed, first shaping air rotation speed (SA1 rotation speed), second shaping air rotation speed (SA2 rotation speed), and applied voltage. In other words, the trace log L includes the amount of movement of the robot 10, pulse resolution, coordinate values ​​of the robot 10 [X, Y, Z, O, A, T], external axis values, computer vision axis values ​​(CV axis values), product type, paint color, paint gun speed, paint gun distance, paint discharge amount, bell rotation speed, first shaping air rotation speed (SA1 rotation speed), second shaping air rotation speed (SA2 rotation speed), and applied voltage at predetermined timings such as trigger timing.

[0085] As shown in Figures 16 and 17, the control unit 30 controls the operation to display the three-dimensional position of a predetermined location related to the work on the workpiece 200 on the actual workpiece 200 or a three-dimensional image of the workpiece 200. For example, when the three-dimensional position of target T is acquired, the control unit 30 controls the operation to display the three-dimensional position of target T on the actual workpiece 200 or a three-dimensional image of the workpiece 200. Also, for example, when the three-dimensional position of a specific work condition or a switch in work conditions is acquired, the control unit 30 controls the operation to display the three-dimensional position of the specific work condition or the switch in work conditions on the actual workpiece 200 or a three-dimensional image of the workpiece 200. Note that Figures 16 and 17 show an example of showing the three-dimensional position of target T.

[0086] The control unit 30 controls the actual workpiece 200 to indicate the target T, specific working conditions, or the three-dimensional position of the switching of working conditions. The target T, specific working conditions, or the three-dimensional position of the switching of working conditions are indicated on the actual workpiece 200 by an indicator unit 90 provided by the robot system 100. The indicator unit 90 is located on the robot 10. Specifically, the indicator unit 90 is located at the tip of the arm portion 12 of the robot 10. The indicator unit 90 is a laser irradiation unit, and by irradiating laser light, it indicates the target T, specific working conditions, or the three-dimensional position of the switching of working conditions on the workpiece 200.

[0087] The control unit 30 operates the robot 10 based on the coordinate values ​​of the robot coordinate system acquired from the trace log L, specifically the three-dimensional position of the target T, the specific working condition, or the switching of working conditions, and controls the indicator unit 90 to display the target T, the specific working condition, or the switching of working conditions on the actual workpiece 200. Specifically, the control unit 30 operates the robot 10 to move the indicator unit 90 to a predetermined position where it can display the target T, the specific working condition, or the switching of working conditions. Then, with the indicator unit 90 positioned in the predetermined location, the control unit 30 irradiates laser light from the indicator unit 90 to display the target T, the specific working condition, or the switching of working conditions on the actual workpiece 200.

[0088] Furthermore, the control unit 30 performs control to display the target T, specific working conditions, or switching of working conditions in the 3D image of the workpiece 200. Specifically, the control unit 30 performs control to acquire the target T, specific working conditions, or switching of working conditions in the coordinate system of the 3D image of the workpiece 200, based on the target T, specific working conditions, or switching of working conditions as coordinate values ​​of the robot coordinate system acquired based on the trace log L. For example, the control unit 30 performs control to acquire the target T, specific working conditions, or switching of working conditions in the coordinate system of the 3D image of the workpiece 200 by converting the coordinate values ​​of the robot coordinate system to the coordinate values ​​of the 3D image of the workpiece 200 using transformation information such as a transformation matrix.

[0089] The control unit 30 then controls the display of the target T, specific working conditions, or switching of working conditions in the 3D image of the workpiece 200 based on the 3D position of the target T, specific working conditions, or switching of working conditions in the coordinate system of the 3D image of the workpiece 200. In other words, the control unit 30 controls the superimposition of an image showing the 3D position of the target T, specific working conditions, or switching of working conditions onto the 3D image of the workpiece 200. The 3D image of the workpiece 200 with the superimposed image showing the 3D position of the target T, specific working conditions, or switching of working conditions is then displayed on the display unit 110 of the robot system 100. The display unit 110 may be provided in any of the master device 40, robot control device 50, work unit control device 60, and communication converter 70, or it may be located separately from the master device 40, robot control device 50, work unit control device 60, and communication converter 70. Furthermore, the 3D image of the workpiece 200, which has images superimposed on it indicating the target T, specific working conditions, or the 3D position of switching working conditions, can be enlarged, reduced, or rotated based on user operations.

[0090] The various controls performed by the control unit 30 using the trace log L described above are shared among the relevant control units from the master control unit 41, robot control unit 51, work unit control unit 61, and communication conversion control unit 71.

[0091] (Control method of the robot system) The control method of the robot system 100 will be explained based on a flowchart with reference to Figure 18.

[0092] While communication takes place via the real-time field network N, the work unit 20 performs work on the workpiece 200. Also, as shown in Figure 18, in step S1, while the work unit 20 performs work on the workpiece 200, a trace log L is recorded. For example, at each trigger timing, information such as the amount of movement of the robot 10, the coordinate values ​​of the robot 10, and the working conditions are added to the trace log L as it is recorded.

[0093] Then, in step S2, a trace log L is acquired. Then, in step S3, based on the trace log L, the three-dimensional positions of predetermined locations related to the work on the workpiece 200 are acquired. For example, the three-dimensional position of the target T is acquired. Also, for example, the three-dimensional position of a specific work condition or a change in work conditions is acquired.

[0094] Then, in step S4, the three-dimensional positions of predetermined locations related to the work on the workpiece 200 are shown on the actual workpiece 200. For example, the three-dimensional positions of target T, specific working conditions, or switching of working conditions are shown on the actual workpiece 200. Also, in step S5, the three-dimensional positions of predetermined locations related to the work on the workpiece 200 are shown on a three-dimensional image of the workpiece 200. For example, the three-dimensional positions of target T, specific working conditions, or switching of working conditions are shown on a three-dimensional image of the workpiece 200.

[0095] (Effects of this embodiment) In this embodiment, as described above, communication is performed via a real-time field network N that can guarantee the real-time nature of communication in accordance with the Ethernet standard, and a control unit 30 is provided that acquires a trace log L for tracking the movements of the robot 10 and the work unit 20, and performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the trace log L. As a result, the three-dimensional position of a predetermined location related to the work on the workpiece 200 can be acquired with high accuracy based on the trace log L, and the three-dimensional position of a predetermined location related to the work on the workpiece 200 can be shown with high accuracy.

[0096] Furthermore, since trace logs L can be acquired using the real-time field network N, communication delays can be reduced compared to acquiring trace logs L without using the real-time field network N. As a result, it is possible to suppress the inability to acquire trace logs L accurately due to communication delays.

[0097] Furthermore, in order to obtain the three-dimensional position of a predetermined location related to the work on the workpiece 200, it is conceivable to generate and store a conversion table in advance before performing work on the workpiece 200. However, in this case, it is necessary to generate and store the conversion table in advance. In contrast, by obtaining the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the trace log L, there is the effect of not needing to generate and store a conversion table in advance.

[0098] Furthermore, in this embodiment, as described above, the trace log L includes the amount of movement of the robot 10 and the coordinate values ​​of the robot 10, and the control unit 30 performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the amount of movement of the robot 10 and the coordinate values ​​of the robot 10. As a result, the amount of movement of the robot 10 and the coordinate values ​​of the robot 10 can be associated in the trace log L, so that the three-dimensional position of a predetermined location related to the work on the workpiece 200 can be acquired easily and accurately based on the amount of movement of the robot 10 and the coordinate values ​​of the robot 10.

[0099] Furthermore, in this embodiment, as described above, the work unit 20 includes an inspection unit that performs inspection work on the workpiece 200, and the control unit 30 detects the target T of the workpiece 200 in the inspection image IM based on the inspection image IM acquired by the inspection unit, and acquires the three-dimensional position of the target T based on the amount of movement of the robot 10 and the coordinate values ​​of the robot 10, and controls the system to show the three-dimensional position of the target T on the actual workpiece 200 or on a three-dimensional image of the workpiece 200. This makes it possible to acquire the three-dimensional position of the target T more easily and accurately by utilizing the correspondence between the position of the target T of the workpiece 200 detected in the inspection image IM and the amount of movement of the robot 10, and the correspondence between the amount of movement of the robot 10 and the coordinate values ​​of the robot 10. As a result, the three-dimensional position of the target T can be easily and accurately shown on the actual workpiece 200 or on a three-dimensional image of the workpiece 200. Furthermore, by showing the three-dimensional position of the target T on the actual workpiece 200 or a three-dimensional image of the workpiece 200, the inspection results can be visually identified, allowing for easy and appropriate handling of the inspection results.

[0100] Furthermore, in this embodiment, as described above, the trace log L includes the working conditions applied to the workpiece 200 by the work unit 20 and the coordinate values ​​of the robot 10, and the control unit 30 performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece 200 based on the working conditions and the coordinate values ​​of the robot 10. As a result, the working conditions and the coordinate values ​​of the robot 10 can be associated in the trace log L, so that the three-dimensional position of a predetermined location related to the work on the workpiece 200 can be acquired easily and accurately based on the working conditions and the coordinate values ​​of the robot 10.

[0101] Furthermore, in this embodiment, as described above, the control unit 30 acquires the three-dimensional position of a specific work condition or work condition change based on the work conditions and the coordinate values ​​of the robot 10, and controls the control unit to display the specific work condition or work condition change in three dimensions on the actual workpiece 200 or in a three-dimensional image of the workpiece 200. This makes it possible to acquire the specific work condition or work condition change in three dimensions more easily and accurately by utilizing the correspondence between the work conditions and the coordinate values ​​of the robot 10. As a result, the specific work condition or work condition change in three dimensions can be easily and accurately displayed using the actual workpiece 200 or in a three-dimensional image of the workpiece 200. In addition, by displaying the specific work condition or work condition change in three dimensions on the actual workpiece 200 or in a three-dimensional image of the workpiece 200, the location of the specific work condition or work condition change can be visually identified. For example, if a problem occurs with respect to work on the workpiece 200, the location of the specific work condition or work condition change can be easily identified in order to identify the cause of the problem.

[0102] Furthermore, in this embodiment, as described above, the real-time field network N has a time synchronization function that performs time synchronization. By performing time synchronization, differences in control cycles between devices, processing delays, and communication fluctuations can be absorbed and reduced, thus easily reducing communication delay. As a result, it is easy to suppress the inability to acquire trace logs L accurately due to communication delay.

[0103] Furthermore, in this embodiment, as described above, the time synchronization function includes a distributed clock function. This allows for accurate time synchronization, making it easy to reduce communication delays. As a result, it is easy to suppress the inability to acquire trace logs L accurately due to communication delays.

[0104] Furthermore, in this embodiment, as described above, the real-time field network N has an on-the-fly processing function that reads and writes to the addressed data. By reading and writing to the addressed data, communication can be performed efficiently, and communication delay can be easily reduced. As a result, it is easy to suppress the inability to acquire the trace log L accurately due to communication delay.

[0105] Furthermore, in this embodiment, as described above, the real-time field network N is an Ethernet CAT. By using an Ethernet CAT with a distribute clock function and an on-the-fly processing function, communication delays can be easily reduced, thus easily suppressing the inability to acquire trace logs L accurately due to communication delays.

[0106] Furthermore, in this embodiment, as described above, the work unit 20 includes at least one of the following: an imaging unit, a three-dimensional shape measurement unit, a distance measuring sensor, a coating unit, a pasting unit, a spraying unit, a welding unit, a sewing unit, an ultrasonic flaw detection unit, an eddy current flaw detection unit, a tapping inspection unit, a peeling laser irradiation unit, and a hardening UV irradiation unit. This allows for accurate acquisition of the three-dimensional position of a predetermined location related to imaging, measurement, inspection, coating, pasting, spraying, welding, sewing, laser irradiation, or UV irradiation operations, and thus enables accurate indication of the three-dimensional position of a predetermined location related to imaging, measurement, inspection, coating, pasting, spraying, welding, sewing, laser irradiation, or UV irradiation operations.

[0107] (Variations) The embodiments disclosed herein should be considered in all respects to be illustrative and not restrictive. The scope of this disclosure is indicated by the claims rather than the description of the embodiments above, and further includes all modifications (variations) in the sense and scope equivalent to the claims.

[0108] For example, the above embodiment shows an example where the robot is a vertical articulated robot, but this disclosure is not limited to this. For example, the robot may be a horizontal articulated robot or the like.

[0109] Furthermore, while the above embodiment shows an example in which a work unit is placed at the tip of a robot and the work unit is moved by the robot to move the work unit relative to the workpiece, the present disclosure is not limited to this. In this disclosure, as shown in the example in Figure 19, a workpiece 200 may be provided at the tip of a robot 10, and the work unit 20 may be moved relative to the workpiece 200 by the robot 10 to move the workpiece 200. In this case, the work unit 20 may perform work on the workpiece 200 at predetermined movement amounts L3. Also, when a workpiece 200 is provided at the tip of a robot 10, an end effector may be provided at the tip of the robot 10, and the workpiece 200 may be held by the end effector by gripping or the like.

[0110] Alternatively, the workpiece may be placed at the tip of the robot, and the robot may move the workpiece, thereby moving the workpiece relative to the workpiece. Alternatively, the workpiece and workpiece may be placed at the tip of two robots, respectively, and both the workpiece and workpiece may be moved by the two robots, thereby moving the workpiece relative to the workpiece. Furthermore, when the workpiece is moved by a conveyor, the relative movement of the workpiece relative to the workpiece may be obtained in synchronization with the workpiece being moved by the conveyor. In addition, when the robot moves using an external axis, an AGV (Automated Guided Vehicle), or an AMR (Autonomous Mobile Robot), the relative movement of the workpiece relative to the workpiece may be obtained by taking into account the movement of the robot using the external axis, AGV, or AMR. Furthermore, when the workpiece is moved by a positioner, AGV, AMR, etc., the relative movement of the work unit relative to the workpiece may be obtained by taking into account the movement of the workpiece by the external axis, AGV, AMR, etc. Also, when these are combined, the relative movement of the work unit relative to the workpiece may be obtained.

[0111] Furthermore, while the above embodiment shows an example where the real-time field network is EtherCAT, this disclosure is not limited thereto. For example, the real-time field network may be CC-Link IE Field, DeviceNet, DeviceNet Safety, EtherNet® / IP adapter, Profibus Master, Profibus Slave, PROFINET I / O, or Dual channel PROFINET, etc.

[0112] Furthermore, while the above embodiment shows an example of obtaining the relative movement of the work unit with respect to the workpiece based on the movement of the robot's control point, this disclosure is not limited to this. In this disclosure, the relative movement of the work unit with respect to the workpiece may be obtained based on the movement of any position of the robot.

[0113] Furthermore, although the above embodiment shows an example where the master control unit, the robot control unit, and the work unit control unit are separate control units, this disclosure is not limited to this. In this disclosure, two or more of the master control unit, the robot control unit, and the work unit control unit may be a common control unit.

[0114] Furthermore, while the above embodiment shows an example in which the three-dimensional position of a predetermined location related to work on a workpiece is shown on the actual workpiece and in which the three-dimensional position of a predetermined location related to work on a workpiece is shown on a three-dimensional image of the workpiece, the present disclosure is not limited thereto. In this disclosure, either showing the three-dimensional position of a predetermined location related to work on a workpiece on the actual workpiece or showing the three-dimensional position of a predetermined location related to work on a workpiece on a three-dimensional image of the workpiece is performed by only one of these methods.

[0115] Furthermore, although the above embodiment shows an example in which the instruction unit is positioned on a work robot, this disclosure is not limited to this. In this disclosure, an instruction robot with an instruction unit positioned separately from the work robot may be provided. The instruction robot operates to show the three-dimensional position of a predetermined location related to work on the workpiece to the actual workpiece. In addition, the location where work is performed on the workpiece by the work robot and the location where instructions are given to the workpiece by the instruction robot may be separate and distant locations.

[0116] Furthermore, although the above embodiment shows an example where the indicator unit is a laser irradiation unit, this disclosure is not limited thereto. In this disclosure, the indicator unit is not particularly limited as long as it is possible to indicate the three-dimensional position on the workpiece. For example, the indicator unit may be an ink application unit that applies ink to indicate the three-dimensional position on the workpiece. Alternatively, for example, the indicator unit may be a stamping unit that presses a stamp to indicate the three-dimensional position on the workpiece. Alternatively, for example, the indicator unit may be a paint gun that sprays paint to indicate the three-dimensional position on the workpiece. Alternatively, for example, the indicator unit may be an attachment unit that attaches an object such as a sticky note to indicate the three-dimensional position on the workpiece. In addition, unlike the above embodiment, the three-dimensional position may be indicated on the actual workpiece by an augmented reality display device that displays augmented reality. The augmented reality display device displays an augmented reality image that indicates the three-dimensional position on the workpiece.

[0117] 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.

[0118] [Embodiments] The exemplary embodiments described above will be understood by those skilled in the art to be specific examples of the following embodiments.

[0119] (Aspect 1) A robot system comprising: a robot; a work unit that performs work on a workpiece; and a control unit that communicates via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard, acquires a trace log for tracking the movements of the robot and the work unit, and performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace log.

[0120] (Aspect 2) The robot system according to aspect 1, wherein the trace log includes the amount of movement of the robot and the coordinate values ​​of the robot, and the control unit performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the amount of movement of the robot and the coordinate values ​​of the robot.

[0121] (Aspect 3) The robot system according to aspect 2, wherein the work unit includes an inspection unit that performs inspection work on the workpiece, and the control unit detects the target of the workpiece in the inspection image based on the inspection image acquired by the inspection unit, acquires the three-dimensional position of the target based on the amount of movement of the robot and the coordinate values ​​of the robot, and controls the robot to show the three-dimensional position of the target on the actual workpiece or on a three-dimensional image of the workpiece.

[0122] (Aspect 4) The robot system according to any one of aspects 1 to 3, wherein the trace log includes working conditions on the workpiece by the work unit and the coordinate values ​​of the robot, and the control unit performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the working conditions and the coordinate values ​​of the robot.

[0123] (Aspect 5) The robot system according to aspect 4, wherein the control unit acquires a specific three-dimensional position of the work condition or the switching of the work condition based on the work condition and the coordinate values ​​of the robot, and performs control to show the specific three-dimensional position of the work condition or the switching of the work condition on the actual workpiece or a three-dimensional image of the workpiece.

[0124] (Aspect 6) The robot system according to any one of aspects 1 to 5, wherein the real-time field network has a time synchronization function for performing time synchronization.

[0125] (Aspect 7) The robot system according to aspect 6, wherein the time synchronization function includes a distribute clock function.

[0126] (Aspect 8) The robot system according to any one of aspects 1 to 7, wherein the real-time field network has an on-the-fly processing function that reads and writes to addressed data.

[0127] (Aspect 9) The robot system according to any one of aspects 1 to 8, wherein the real-time field network is Ethernet®.

[0128] (Aspect 10) The robot system according to any one of aspects 1 to 9, wherein the work unit includes at least one of the following: an imaging unit, a three-dimensional shape measurement unit, a distance measuring sensor, a coating unit, a pasting unit, a spraying unit, a welding unit, a sewing unit, an ultrasonic flaw detection unit, an eddy current flaw detection unit, a tapping inspection unit, a peeling laser irradiation unit, and a hardening UV irradiation unit.

[0129] (Aspect 11) A method for controlling a robot system, comprising: communicating via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard; acquiring a trace log for tracking the movements of the robot and a work unit that performs work on a workpiece; and performing control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace log.

[0130] 10 Robot 20 Work Unit 30 Control Unit 100 Robot System 200 Work IM Inspection Image L Trace Log N Real-time Field Network T Target

Claims

1. A robot system comprising: a robot; a work unit that performs work on a workpiece; and a control unit that communicates via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard, acquires trace logs to track the movements of the robot and the work unit, and performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace logs.

2. The robot system according to claim 1, wherein the trace log includes the amount of movement of the robot and the coordinate values ​​of the robot, and the control unit performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the amount of movement of the robot and the coordinate values ​​of the robot.

3. The robot system according to claim 2, wherein the work unit includes an inspection unit that performs inspection work on the workpiece, and the control unit detects an object of the workpiece in the inspection image based on an inspection image acquired by the inspection unit, acquires the three-dimensional position of the object based on the amount of movement of the robot and the coordinate values ​​of the robot, and performs control to show the three-dimensional position of the object on the actual workpiece or on a three-dimensional image of the workpiece.

4. The robot system according to claim 1, wherein the trace log includes working conditions on the workpiece by the work unit and the coordinate values ​​of the robot, and the control unit performs control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the working conditions and the coordinate values ​​of the robot.

5. The robot system according to claim 4, wherein the control unit acquires a specific three-dimensional position of the work condition or the switching of the work condition based on the work condition and the coordinate values ​​of the robot, and performs control to show the specific three-dimensional position of the work condition or the switching of the work condition on the actual workpiece or a three-dimensional image of the workpiece.

6. The robot system according to claim 1, wherein the real-time field network has a time synchronization function for performing time synchronization.

7. The robot system according to claim 6, wherein the time synchronization function includes a distribute clock function.

8. The robot system according to claim 1, wherein the real-time field network has an on-the-fly processing function that reads and writes to addressed data.

9. The robot system according to claim 1, wherein the real-time field network is Ethernet.

10. The robot system according to claim 1, wherein the work unit includes at least one of the following: an imaging unit, a three-dimensional shape measurement unit, a distance measuring sensor, a coating unit, a pasting unit, a spraying unit, a welding unit, a sewing unit, an ultrasonic flaw detection unit, an eddy current flaw detection unit, a tapping inspection unit, a peeling laser irradiation unit, and a hardening UV irradiation unit.

11. A control method for a robot system, comprising: communicating via a real-time field network capable of guaranteeing real-time communication in accordance with the Ethernet standard; acquiring a trace log for tracking the movements of the robot and a work unit that performs work on a workpiece; and performing control to acquire the three-dimensional position of a predetermined location related to the work on the workpiece based on the trace log.