Robot parameter setting device

JPWO2024024036A5Pending Publication Date: 2025-04-04
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024536690
Authority / Receiving Office
JP · JP
Patent Type
Applications
Filing Date
2024-12-05
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

Existing robot parameter setting devices are prone to misalignment due to unintended tension and inertial forces on the visual sensor cable, which can lead to inaccurate coordinate system correspondence between the robot, tool, and work object, potentially causing errors during robotic operations.

Method used

A robot parameter setting device that includes a control unit to arrange a first setting element (object or sensor) at multiple positions, acquiring check data before and after the operation to determine if there has been a change in position, ensuring accurate alignment and parameter setting by comparing first and second check data.

Benefits of technology

This solution ensures accurate alignment of the robot's coordinate systems, reducing the likelihood of errors during robotic operations by detecting and accounting for any positional changes in the visual sensor or object, thereby enhancing operational precision and reliability.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

This robot parameter setting device comprises: a first setting element which is one of an object (60) and a sensor (50) and which is attached to an arm (10a); a second setting element which is the other of the object (60) and the sensor (50); and a control unit which causes the arm (10a) to execute a parameter setting operation for disposing the first setting element at multiple positions. In the first half of the parameter setting operation or prior to the parameter setting operation, the control unit causes the sensor (50) to acquire first check data (23e) concerning the object in a state where the first setting element is being disposed at a setting check position. In the second half of the parameter setting operation or after the parameter setting operation, the control unit disposes the first setting element at the setting check position and also causes the sensor (50) to acquire second check data (23f) concerning the object, and then determines whether or not there has been a positional change on the basis of the two sets of data.
Need to check novelty before this filing date? Find Prior Art

Description

Robot parameter setting device

[0001] The present invention relates to a parameter setting device for a robot.

[0002] There is known a device that measures the position of a tool tip point relative to the end of a robot arm. There is also known a device that associates position information in an image obtained by a visual sensor with position information of the robot. There is also known a device that uses a master workpiece to associate a camera coordinate system with a robot coordinate system. There is also known a robot system in which a robot mounted on a carriage performs work on a fixed target device. In this robot system, a plurality of marks are provided on the target device, and the position of the target device relative to the robot on the carriage is grasped using the marks as landmarks. For example, see Patent Documents 1 to 4.

[0003] Japanese Patent No. 4191080 Japanese Patent Application Laid-Open No. 2015-174191 Japanese Patent Application Laid-Open No. 2018-034271 Japanese Patent Application Laid-Open No. 2020-163518

[0004] In order for a robot to perform a task on a work object, it is necessary to establish correspondence between the robot's coordinate system and the coordinate system of the tool at the tip of the robot, and between the coordinate system of the robot and the coordinate system of the work object, etc. For example, it is necessary to establish correspondence between the coordinate system of the tool at the tip of the robot and the coordinate system of the work object being transported by a conveyor.

[0005] When setting the correspondence between the coordinate systems, one of the target, such as a mark, imaged by the visual sensor and the visual sensor is held by a robot arm, while the other is supported by a predetermined support. Then, based on a coordinate system setting program, the tip of the arm moves to various positions. Also, based on the coordinate system setting program, the visual sensor images the target at each position, and the coordinate system is associated based on the obtained image data.

[0006] This setting is performed under the assumption that the positions of the target and the visual sensor will not change. However, for example, unintended tension or inertial force may act on the visual sensor cable, which may cause the visual sensor to shift position during the setting. For this reason, a robot parameter setting device that can ensure that unintended situations do not occur is desired.

[0007] A robot parameter setting device of one aspect of the present invention comprises a first setting element which is one of an object and a sensor and is attached to an arm of the robot, a second setting element which is the other of the object and the sensor, and a control unit which causes the arm to perform a parameter setting operation to place the first setting element at multiple positions, wherein the control unit causes the sensor to acquire first check data regarding the object in a state in which the first setting element is placed at a setting check position during the first half of the setting operation or before the setting operation, and the control unit causes the arm to perform an operation to place the first setting element at the setting check position during the second half of the setting operation or after the setting operation, and also causes the sensor to acquire second check data regarding the object, and the control unit determines whether or not there has been a change in the position of the first setting element or the second setting element based on the first check data and the second check data.

[0008] 1 is a schematic perspective view of a robot parameter setting device according to a first embodiment and a robot system in which the setting device is used; FIG. 2 is a schematic side view of the robot system according to the first embodiment; FIG. 3 is a block diagram of a control device of the robot parameter setting device according to the first embodiment; FIG. 4 is a block diagram of an image processing device of the robot parameter setting device according to the first embodiment; FIG. 5 is a flowchart of an example of processing performed by a control unit of the robot parameter setting device according to the first embodiment; FIG. 6 is a flowchart of an example of processing performed by a control unit of the robot parameter setting device according to the first embodiment; FIG. 7 is a display example of a display device of the robot parameter setting device according to the first embodiment; FIG. 8 is a schematic perspective view of a robot parameter setting device according to a second embodiment and a robot system in which the setting device is used; FIG. 9 is a flowchart of an example of processing performed by a control unit of the robot parameter setting device according to the second embodiment;

[0009] In the first embodiment, a robot parameter setting device will be described with reference to the drawings. As shown in FIG. 1, the setting device includes, for example, a control device 20 for a robot 10, a visual sensor (sensor) 50 connected to the control device 20, and an image processing device 40. The control device 20 may perform the functions of the image processing device 40, in which case the image processing device 40 can be omitted. Also, some of the processing described below may be performed by another computer. In this case, the setting device includes the other computer.

[0010] The robot 10 is not limited to a specific type, but the robot 10 of the first embodiment is a multi-joint robot having six axes. The robot 10 may also be a horizontal multi-joint robot, a multi-link robot, or the like. The arm 10a is equipped with a plurality of servo motors 11 that respectively drive a plurality of movable parts 12 (see FIGS. 1 and 3). Each servo motor 11 has an operating position detection device 11a for detecting its operating position, and the operating position detection device 11a is, for example, an encoder. The control device 20 receives the detection value of the operating position detection device 11a.

[0011] As shown in Figure 2, for example, a tool 30 is attached to the tip of an arm 10a, and the arm 10a is part of a robot system that performs work on a work object W on a transport device 2. In the example of Figure 2, a camera 3 separate from the visual sensor 50 is provided upstream of the transport device 2 to check the position and posture of the work object W. In addition, an encoder (operating position detection device) 2b that detects the transport amount of the transport device 2 is provided on a motor (drive device) 2a that drives the transport device 2. Furthermore, using the position of the work object W detected based on the output of the camera 3 and the transport amount of the transport device 2, a control device 20 causes the tip of the arm 10a to follow the work object W during work.

[0012] The work is well-known work such as removing the work object W, processing the work object W, and attaching parts to the work object W. The processing of the work object W is well-known work such as machining, painting, and cleaning. The transport device 2 may be a conveyor, an AGV (Automatic Guided Vehicle), or anything that can move the work object W such as a car under manufacture. In the case of a car under manufacture, the chassis, tires, motor, etc. function as the transport device 2, and the work object W such as the body on the chassis is transported.

[0013] In one example, the tool 30 is a hand, and the tool 30 is equipped with a servo motor 31 that drives a claw (FIG. 3). The servo motor 31 has an operating position detection device for detecting its operating position, and the operating position detection device is, for example, an encoder. The detected value of the operating position detection device is transmitted to the control device 20. Various types of servo motors, such as rotary motors and linear motors, can be used as the servo motors 11 and 31.

[0014] In one example, the visual sensor 50 is supported on the upper surface of the transport device 2. In the first embodiment, the visual sensor 50 is supported on a predetermined support 70 ( FIG. 1 ), such as a plate, placed on the upper surface of the transport device 2. The visual sensor 50 is, for example, a camera, such as a two-dimensional camera. Other types of sensors that can acquire imaging data or detection data of the target 60 can also be used as the visual sensor 50.

[0015] As shown in FIG. 3 , the control device 20 has a processor 21 having one or more processor elements such as a CPU, a microcomputer, etc., and a display device 22. The control device 20 has a storage unit 23 having a non-volatile storage, a ROM, a RAM, etc. The control device 20 has servo controllers 24 corresponding to the servo motors 11 of the robot 10, and a servo controller 25 corresponding to the servo motors 31 of the tool 30. The control device 20 also has an input unit 26 connected to the control device 20 by wire or wirelessly. In one example, the input unit 26 is an input device such as a control panel that can be carried by the user. In another example, the input unit 26 is a tablet computer. In the case of a tablet computer, the input is performed using a touch screen function. The control panel or tablet computer may also have the display device 22.

[0016] The memory unit 23 stores a system program 23a, which performs the basic functions of the control device 20. The memory unit 23 also stores an operation program 23b. The memory unit 23 also stores a parameter setting program 23c and a setting check program 23d. The control device 20 controls the arm 10a to perform a predetermined task on the work object W based on the operation program 23b.

[0017] 4, the image processing device 40 has a processor 41 having one or more processor elements such as a CPU, a microcomputer, an image processor, etc. The image processing device 40 is connected to the control device 20 and the visual sensor 50, and includes an input unit 42 and a storage unit 43 having a non-volatile storage, a ROM, a RAM, etc. A known image processing program 43a is stored in the storage unit 43.

[0018] The image processing device 40 performs known image processing on the image data obtained by the visual sensor 50 based on the image processing program 43a. For example, the image processing device 40 performs known image processing such as binarization, blob analysis, and edge detection on the image data of the object 60. The image processing device 40 may obtain position detection data such as the feature position and center of gravity position of the object 60. The image processing device 40 can also obtain orientation detection data of the object 60. The image processing device 40 sequentially transmits the image data, position detection data, orientation detection data, etc. that have been subjected to image processing to the control device 20.

[0019] The control device 20 may perform some or all of the functions of the image processing device 40, or the image processing device 40 may perform some or all of the functions of the control device 20. Furthermore, another computer may perform some or all of the functions of the image processing device 40 and the control device 20. In the following description, the image processing device 40, the control device 20, and the other computer are referred to as a control unit, and the following computer processing is performed by one or more processors of the control unit. The one or more processors are processor 21, processor 41, etc.

[0020] The control unit performs the following processing for parameter setting based on the parameter setting program 23c and the setting check program 23d. An example of parameter setting will be described with reference to the flowcharts of FIGS. 5 and 6. Here, as shown in FIG. 1, a reference coordinate system 101 of the arm 10a of the robot 10 is set in advance with reference to, for example, the base 13 that supports the arm 10a. The control unit can also calculate the position and orientation of a tip coordinate system 102 of the tip of the arm 10a, such as the flange 10b, based on the detection results of the operating position detection device 11a.

[0021] In the first embodiment, a target (first setting element) 60 such as a calibration jig is attached to the tip of the arm 10a for parameter setting. In one example, as shown in FIG. 1 , the target 60 is held by the tool 30. The target 60 may be attached to the wrist flange 10b by a magnet such as an electromagnet, a bolt, or other attachment means. In the first embodiment, the center position of a mark 61 on the target 60 is located at a position corresponding to the tool center point (TCP) of the tool 30.

[0022] In the first embodiment, the visual sensor (second setting element) 50 is supported by a support unit 70 for parameter setting. The support unit 70 may be the upper surface of the transport device 2 or a support device such as a tripod. For example, the position and orientation of the visual sensor 50 on the support unit 70 correspond to a work reference coordinate system for the work object W. The work reference coordinate system corresponds to the position and orientation of the work object W, the position and orientation of the mounting portion for the work object W, etc. In the first embodiment, the work reference coordinate system and the sensor coordinate system 103 of the visual sensor 50 coincide. This allows the arm 10a to accurately perform work on the work object W by setting the parameters described below. In the first embodiment, the optical axis of the visual sensor 50 corresponds to one axis, such as the Z axis, of the sensor coordinate system 103 and extends vertically upward, but the optical axis of the visual sensor 50 may be oriented in another direction.

[0023] In the first embodiment, the target 60 has a mark 61, and the control unit recognizes the size, shape, arrangement of each element, etc. of the mark 61 in advance. This allows the control unit to calculate the position and orientation of the mark 61 and the target 60 relative to the visual sensor 50 based on image data of the mark 61. For example, the center position of the mark 61 is calculated as the position of the mark 61, and the orientation of the mark 61 is calculated based on the relative positions of three or more characteristic shapes or characteristic points in the mark 61. The mark 61 may be a dot pattern, a single or multiple three-dimensional shape, etc. When the target 60 is a work object W, a single or multiple characteristic shapes, etc. of the work object W function as the mark 61. A thin tip may be provided on the target 60, and the tip may be used in place of the mark 61.

[0024] First, upon receiving a parameter setting start input (step S1-1), the control unit performs the following processing based on the setting check program 23d. In one example, the start input is based on a user's input to the input unit 26. Here, the user moves the tip of the arm 10a so that the target 60 is within the field of view of the visual sensor 50. At this time, a parameter setting screen 23g shown in FIG. 7 is displayed on the display device 22. Preferably, the control unit displays a preparatory image or text 23h on the display device 22 to prompt the user to place the tip of the arm 10a in the setting check position (step S1-2). The control unit may also display the preparatory image or text 23h on the display device 22 to prompt the user to place the target 60 in the setting check position.

[0025] The term "setting check position" refers to the position and orientation of the tip of the arm 10a, and the setting check position is the position and orientation of the tip where the target 60 is positioned within the field of view of the visual sensor 50. The preparatory image or text 23h in step S1-2 may be a screen that informs the user that the setting check position will be used for the determination in step S1-17, which will be described later. In this case, the user can appropriately set the position and orientation of the tip in step S1-1 while taking various conditions into consideration. The various conditions include the configuration of the robot 10, including its wiring, the configuration of the visual sensor 50, including its wiring, the size of the robot 10, the type and size of the tool 30, etc. Note that if the content of step S1-2 is described in an instruction manual or the like, the control unit may be configured not to perform step S1-2.

[0026] When the control unit receives a parameter setting process start input (step S1-3), it causes the visual sensor 50 to acquire first check data 23e (FIG. 3) at the set check position (step S1-4). The control unit also stores the first check data 23e, which is image data or detection data acquired by the visual sensor 50, in the storage unit 23 or the like (step S1-5). Prior to step S1-4, the control unit may cause the arm 10a to perform an operation to eliminate the effects of backlash in the arm 10a. For example, for this operation, the control unit slightly rotates each servo motor 11 and then returns it to its original position.

[0027] Next, the control unit performs the following process based on the parameter setting program 23c. The control unit controls the arm 10a to place the target 60 at multiple positions, for example, three or more calibration positions, and causes the visual sensor 50 to capture images at each calibration position. The posture of the target 60 at each calibration position may be different from each other.

[0028] For example, the control unit places the target 60 at a first calibration position (step S1-6) and causes the visual sensor 50 to acquire data at the first calibration position (step S1-7). The control unit also places the target 60 at a second calibration position (step S1-8) and causes the visual sensor 50 to acquire data at the second calibration position (step S1-9). The control unit also places the target 60 at a third calibration position (step S1-10) and causes the visual sensor 50 to acquire data at the third calibration position (step S1-11).

[0029] The control unit calculates the position and orientation of the target 60 relative to the visual sensor 50 at each calibration position from the image data obtained in steps S1-7, S1-9, and S1-11 (step S1-12). These positions and orientations are those on the sensor coordinate system 103 of the visual sensor 50. The control unit also recognizes the positions and orientations of at least one of the tip of the arm 10a, the tool 30, and the tip coordinate system 102 at each calibration position. The control unit sets parameters using the positions and orientations on the sensor coordinate system 103 and, for example, the position and orientation of the tip coordinate system 102 at each calibration position (step S1-13).

[0030] The parameters, for example, correspond between the sensor coordinate system 103, the tip coordinate system 102, and the reference coordinate system 101. The parameters, for example, correspond between the work reference coordinate system and the positions and orientations of the tip of the arm 10a, the tool 30, and the tip coordinate system 102. If the sensor coordinate system 103 corresponds to the coordinate system of the transport device 2, the work performed by the arm 10a can be performed accurately. Alternatively, the parameters correspond between the tip coordinate system 102 and the tip of the tool 30 (TCP). The parameters may be for other purposes, and other calculations may be used to set the parameters. In the first embodiment, the position and orientation of the visual sensor 50 correspond to the work reference coordinate system for the work object W. Alternatively, the control device 20 may recognize the position and orientation of the TCP without this correspondence.

[0031] Next, the control unit performs the following processes based on the setting check program 23d. The control unit controls the arm 10a so that the tip of the arm 10a is positioned at the setting check position (step S1-14). The control unit also causes the visual sensor 50 to acquire second check data 23f (FIG. 3) at the setting check position (step S1-15). The control unit then stores the second check data 23f, which is the image data or detection data acquired by the visual sensor 50, in the storage unit 23 or the like (step S1-16).

[0032] Next, the control unit compares the two check data 23e and 23f to determine whether or not there has been a position change in the visual sensor 50 or the target 60 (step S1-17). For example, if the amount of position change in the target 60 in the second check data 23f relative to the first check data 23e is less than a threshold, it is determined that there has been no position change. In this case, the control unit displays a message on the display device 22 indicating that parameter setting has been completed (step S1-21) and successfully completes the parameter setting process. Furthermore, it is determined that there has been a position change when the amount of position change is equal to or greater than a threshold. The threshold is, for example, three pixels in the image data of the visual sensor 50, but if it is determined that there has been a position change when the threshold is two pixels or greater, the parameter setting will be more accurate.

[0033] It is also possible to determine whether or not a position change has occurred by setting the threshold at 0.5 mm. For example, the amount of position change is the amount of position change at the portion of the mark 61 on the object 60 where the greatest positional deviation has occurred. Determining that a position change has occurred when the amount of position change is 0.3 mm or 0.2 mm or greater rather than 0.5 mm or greater will result in more accurate parameter setting. For example, tension on the cable of the visual sensor 50 may cause the position of the visual sensor 50 to shift slightly during parameter setting. Because this event occurs during a relatively short period of parameter setting, even slight positional changes in the visual sensor 50 or the object 60 can be accurately determined. Note that, depending on the situation or conditions, a threshold greater than the above value may also be used.

[0034] Subsequently, when it is determined in step S1-17 that the position change has occurred, the control unit displays the amount of the position change on the display device 22 (step S1-18). The amount of the position change may be expressed in the number of pixels, a numerical value in millimeters, or the like. In step S1-18, the control unit may also display on the display device 22 the determination that the position change has occurred. The determination may also be displayed as an error message, a message indicating that the parameter cannot be set, or the like. This allows the user to be notified of the position change in a timely manner.

[0035] When it is determined in step S1-17 that there is no position change, the control unit may display on the display device 22 a message indicating that there is no position change. This message allows the user to know in a timely manner that the set parameters are accurate. The amount of position change may be displayed on the display device 22 to indicate that there is no position change. By using different colors for the text and screen when displaying the amount of position change than in step S1-18, the user can easily recognize that there is no position change.

[0036] Furthermore, the display of the position change amount allows the user to estimate the accuracy of the parameter setting. For example, the tool 30 may be a long, thin welding gun or a hand with long claws, and the target 60 may be attached to the tip of the tool. For example, the work performed by the tool 30 may not require high positional accuracy. There are also various conditions mentioned above. When these conditions exist, the user can determine whether or not 4 pixels are appropriate based on the above conditions, experience, etc. Then, based on the appropriateness, the user may be able to estimate the accuracy of the parameter setting.

[0037] The control unit may display the direction of the position change on the display device 22. In this case, the direction of the position change of the visual sensor 50, the direction of the position change of the target 60, etc. are displayed on the display device 22. The direction may be an approximate direction. This display makes it easier for the user to estimate the cause of the position change, which leads to improved efficiency in the setting work.

[0038] In anticipation of such a case, when it is determined in step S1-17 that there is a position change, the control unit may display a selection screen on the display device 22 to prompt the user to select whether or not to use the parameter (step S1-19). This allows the user to decide whether or not to use the parameter based on the conditions, experience, etc. Note that the control unit is configured not to perform step S1-19 if there is no need for such selection.

[0039] When the user selects to use the parameter in step S1-19, the control unit may store data linking the content of the selection, the amount of position change, and the parameter in the storage unit 23. Alternatively, when it is determined in step S1-17 that a position change has occurred, the control unit may store data linking the amount of position change and the parameter in the storage unit 23. The control unit may also transmit the data to an external computer. The external computer may be a server for production management or quality control, or the like. The data may be used for subsequent quality control work, design and improvement of the robot system, design and improvement of the work object W, etc.

[0040] If the control unit receives an input indicating that the parameter is to be used via the input unit 26 or the like (step S1-20), the parameter is set and a message indicating that parameter setting has been completed is displayed (step S1-21).If the control unit does not receive an input indicating that the parameter is to be used (step S1-20), the control unit ends the process without setting the parameter (step S1-22).

[0041] Instead of step S1-2, the control unit may automatically position the tip of the arm 10a at the setting check position. In this case, the control unit may display, by means of illustration or the like, a plurality of setting check positions as options on the display device 22. In this case, the control unit displays, on the display device 22, a screen for selecting one of the plurality of setting check positions. The control unit accepts a selection input by the user via the input unit 26, and automatically positions the tip of the arm 10a at the setting check position corresponding to the selection input.

[0042] The control unit may also display a screen on the display device 22 for setting a setting check position. For example, a screen showing at least the position of the visual sensor 50 may be displayed. The screen allows the user to specify at least the position of the tip of the arm 10a, the tool 30, or the target 60. The control unit accepts setting input from the user via the input unit 26, and automatically positions the tip of the arm 10a at the setting check position corresponding to the setting input.

[0043] A robot parameter setting device according to a second embodiment will be described with reference to the drawings. In the first embodiment, a target (first setting element) 60 is attached to the tip of the arm 10a, and a visual sensor (second setting element) 50 is supported by a support 70. In the second embodiment, a visual sensor (first setting element) 50 is attached to the tip of the arm 10a, and the target (second setting element) 60 is supported by a support 70 ( FIG. 8 ). In the second embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and a description of the same components and the same effects obtained by the same components will be omitted. Note that the modifications described in the first embodiment can also be applied to the second embodiment as appropriate.

[0044] In the second embodiment, the visual sensor 50 is removably attached to the tip of the arm 10a. In one example, the visual sensor 50 is attached to the wrist flange 10b of the arm 10a, similar to the tool 30. In one example, the object 60 is supported on the upper surface of the conveying device 2. In the second embodiment, the object 60 is supported on a support portion 70 placed on the upper surface of the conveying device 2. The object 60 may be the work object W, or may be another item other than the work object W, a part of a structure, etc. The part of the structure may be a part of the conveying device, etc.

[0045] In the second embodiment, the following processing for parameter setting is also performed based on the parameter setting program 23c and the setting check program 23d: An example of parameter setting will be described with reference to the flowcharts of FIGS.

[0046] In the second embodiment, a visual sensor 50 is attached to the tip of the arm 10a to set the parameters. In one example, the visual sensor 50 is attached to the wrist flange 10b by a magnet such as an electromagnet, a bolt, or other attachment means. The tool 30 may hold the visual sensor 50, thereby attaching the visual sensor 50 to the tip of the arm 10a.

[0047] In the second embodiment, the target 60 is supported by a support unit 70 for the parameter setting. The support unit 70 may be the upper surface of the transport device 2 or a support device such as a tripod. For example, the position and orientation of the target 60 on the support unit 70 correspond to a work reference coordinate system for the work target W. In this sense, using multiple or a single work target W as the target 60 allows the parameter setting to be suited to the work. For example, the parameter setting described below associates the camera coordinate system 103 with the reference coordinate system 101 and the tip coordinate system 102. For example, the parameter setting described below enables the arm 10a to accurately perform work on the work target W.

[0048] First, the control unit performs the following processing based on the setting check program 23d. In the second embodiment, the user moves the tip of the arm 10a in accordance with the instructions in the instruction manual so that the target 60 is within the angle of view of the visual sensor 50. In the second embodiment, the control unit does not display on the display device 22 a preparatory image or text 23h that prompts the user to position the tip of the arm 10a at the setting check position. The first embodiment can also be configured in this way.

[0049] When the control unit receives a parameter setting process start input (step S2-1), it causes the visual sensor 50 to acquire first check data 23e at the setting check position (step S2-2). The control unit also stores the first check data 23e, which is image data or detection data acquired by the visual sensor 50, in the storage unit 23 or the like (step S2-3). Before step S2-2, the control unit may cause the arm 10a to perform an operation to eliminate the effects of backlash in the arm 10a.

[0050] Next, the control unit performs the following processes based on the parameter setting program 23c, as in the first embodiment. For example, the control unit places the visual sensor 50 at the first calibration position (step S2-4) and causes the visual sensor 50 to acquire data at the first calibration position (step S2-5). The control unit also places the visual sensor 50 at the second calibration position (step S2-6) and causes the visual sensor 50 to acquire data at the second calibration position (step S2-7). The control unit also places the visual sensor 50 at the third calibration position (step S2-8) and causes the visual sensor 50 to acquire data at the third calibration position (step S2-9).

[0051] The control unit calculates the position and orientation of the target 60 relative to the visual sensor 50 at each calibration position from the image data obtained in steps S2-5, S2-7, and S2-9 (step S2-10). These positions and orientations are those on the sensor coordinate system 103 of the visual sensor 50. The control unit also recognizes the positions and orientations of at least one of the tip of the arm 10a, the tool 30, and the tip coordinate system 102 at each calibration position. The control unit sets parameters using the positions and orientations on the sensor coordinate system 103 and the positions and orientations of each calibration position, for example, in the tip coordinate system 102 (step S2-11).

[0052] The parameters, for example, correspond to the sensor coordinate system 103, the tip coordinate system 102, and the reference coordinate system 101. The parameters may be for other purposes, and other calculations may be used to set the parameters.

[0053] Next, the control unit performs the following processes based on the setting check program 23d. The control unit controls the arm 10a so that the tip of the arm 10a is positioned at the setting check position (step S2-12). The control unit also causes the visual sensor 50 to acquire second check data 23f at the setting check position (step S2-13). The control unit then stores the second check data 23f, which is the image data or detection data acquired by the visual sensor 50, in the storage unit 23 or the like (step S2-14).

[0054] Next, the control unit determines whether or not there has been a change in the position of the visual sensor 50 or the target 60, similar to step S1-17 in the first embodiment (step S2-15). If there has been no change in position, the control unit displays a message on the display device 22 indicating that parameter setting has been completed (step S2-19), and the parameter setting process ends normally. The control unit also displays the amount of position change on the display device 22, similar to step S1-18 in the first embodiment (step S2-16). Displaying the amount of position change allows the user to estimate the accuracy of the parameter setting, similar to the first embodiment.

[0055] The control unit may also display a selection screen on the display device 22 (step S2-17), similar to step S1-19 in the first embodiment. This allows the user to decide whether or not to use the parameter based on the conditions, experience, and the like, similar to the first embodiment. When the control unit receives an input from the input unit 26 or the like indicating that the parameter will be used (step S2-18), the control unit sets the parameter and displays a message indicating that parameter setting is complete (step S2-19). When the control unit does not receive an input indicating that the parameter will be used (step S2-18), the control unit ends the process without setting the parameter (step S2-20).

[0056] Here, in the parameter setting process, the tip of the robot 10 moves sequentially to a plurality of positions and postures, as in steps S1-6 to S1-11 of the first embodiment, for example. Also, various objects, such as other equipment and the work object W, exist around the robot 10. Also, cables for the robot 10 exist around the robot 10, and the cables also move in accordance with the robot's movements. Therefore, during the parameter setting process, the user must be careful to prevent interference between the robot 10 and the cables and surrounding objects. For this reason, the user often does not notice the state of the visual sensor 50 or its cables.

[0057] Furthermore, the visual sensor 50 is attached to the robot 10 or a support unit by a user or the like for parameter setting, and its cable is also temporarily positioned by the user. Therefore, depending on the temporary position of the cable, slight tension may be applied to the cable of the visual sensor 50 during the parameter setting operation of the robot 10. This slight tension may or may not cause the visual sensor 50 to move. Furthermore, even if this slight tension causes the visual sensor 50 to shift slightly, the user often does not notice the shift. The position of the target 60 may also shift slightly due to vibrations, etc., but the user often does not notice the shift.

[0058] For example, even if there is a slight deviation, the parameter setting calculation itself is performed, so conventionally, parameter processing is completed normally and the user does not notice the deviation. Depending on the precision required for the robot 10 to perform the work on the work object W, there are some tasks in which the user does not notice the slight deviation at all. However, even in such tasks, if an error occurs, the cause may be related to the slight deviation.

[0059] In the first and second embodiments, the first and second check data 23e, 23f are measured and position changes are determined during a series of controls for parameter setting of the robot 10. In this configuration, the first and second check data 23e, 23f are measured during parameter setting, which takes a relatively short time, so that slight positional deviations of the visual sensor 50 or the target 60 that occur during parameter setting can be accurately determined.

[0060] For example, in step S1-17, if the position of the first check data 23e and the position of the second check data 23f deviate by three pixels or more, it is determined that a position change has occurred. In one example, the visual sensor 50 has several million pixels, and one side of the field of view of the visual sensor 50 at the position of the target 60 is approximately 10 cm to 20 cm. In this case, a position change of three pixels may correspond to a position change of 0.2 mm, 0.3 mm, or the like. Therefore, the above configuration can accurately determine slight positional deviations of the visual sensor 50 or the target 60.

[0061] Even if the visual sensor 50 is slightly misaligned in the direction of its optical axis when capturing an image at the setting check position for the second time, the misalignment will almost never occur only in the direction of the optical axis of the visual sensor 50. In other words, when the visual sensor 50 is misaligned in the direction of the optical axis for some unintended reason, it is unlikely that the visual sensor 50 will not also be misaligned in a direction intersecting the optical axis. The same is true for the target 60. Therefore, the above configuration can accurately determine slight positional misalignments of the visual sensor 50 or the target 60.

[0062] Furthermore, in the first and second embodiments, the user moves the tip of the arm 10a before steps S1-4 and S2-2, and this position is used as the setting check position. Therefore, the user can easily and reliably determine the setting check position, and there is no need to separately set the setting check position. This contributes to improved user convenience. Furthermore, the user can reliably position the visual sensor 50 at a position where it is in focus as the setting check position. This configuration is useful considering that many visual sensors 50 for robots do not have an autofocus function and the in-focus range is known from instruction manuals, etc.

[0063] In the first and second embodiments, a screen for selecting the setting check position is displayed, so that the user can easily select the setting check position that is suitable for conditions such as the wiring and position of the cable of the visual sensor 50.

[0064] In the first and second embodiments, a screen for setting the setting check position is displayed, which is useful for allowing the user to freely set the setting check position without any time and effort.

[0065] In the first and second embodiments, at least one of the calibration positions can also be used as the setting check position. For example, if the first calibration position is used as the setting check position, the tip of the arm 10a is placed at the first calibration position in steps S1-14 and S2-12. Even in this case, the same effects as those described above can be achieved. Note that the setting check position is preferably, for example, the first half of the setting operation of steps S1-6 to S1-11 in the first embodiment. In other words, it is preferably the first calibration position or the second calibration position. Also, for example, in the first embodiment, steps S1-12 and S1-13 are preferably performed in the second half of the setting operation of steps S1-6 to S1-11 or after the setting operation.

[0066] Furthermore, in the first and second embodiments, other setting check positions may be further set. The other setting check positions may be set, for example, at positions where tension is likely to be applied to the cable of the visual sensor 50. The other setting check positions may be any of the calibration positions. The setting check positions may be automatically set by the control unit, or may be preset in the control unit. In these cases, the control unit may be configured to display the setting check positions on the display device 22. For example, the control unit may display that the position where the arm 10a stops before the first calibration position, a position between the first calibration position and the second calibration position, or the like is a setting check position. In this case, the user can determine where the setting check positions are, which contributes to easier identification of the cause of errors during the setting work.

[0067] In the first and second embodiments, the visual sensor 50 may be a three-dimensional camera, a three-dimensional distance sensor, a light detection and ranging (LiDAR), a position sensing detector (PSD), or the like. In these cases, the configuration of the image processing device 40 is modified as appropriate. Furthermore, a visual sensor attached to the tip of the arm 10a while the work is being performed on the work object W may also be used as the visual sensor 50.

[0068] Although the embodiments of the present disclosure have been described in detail, the present disclosure is not limited to the individual embodiments described above. These embodiments can be variously added, replaced, modified, partially deleted, etc., without departing from the gist of the invention or the concept and spirit of the present invention derived from the content of the claims and their equivalents. For example, in the above-described embodiments, the order of each operation, the order of each process, the omission or addition of some operations depending on conditions, and the omission or addition of some processes depending on conditions can be changed without being bound by the above examples. The same applies when numerical values ​​or mathematical expressions are used in the description of the above embodiments.

[0069] 2 Conveying device 10 Robot 10a Arm 11 Servo motor 20 Control device 21 Processor 22 Display device 23 Memory unit 23a System program 23b Operation program 23c Parameter setting program 23d Setting check program 23e First check data 23f Second check data 26 Input unit 30 Tool 31 Servo motor 40 Image processing device 41 Processor 43 Memory unit 43a Image processing program 50 Visual sensor (sensor) 60 Object 61 Mark 70 Support unit 101 Reference coordinate system 102 Tip coordinate system 103 Sensor coordinate system W Work object

Claims

1. a first setting element, which is one of an object and a sensor, and which is attached to an arm of the robot; A second setting element, the second setting element being the other of the object and the sensor; a control unit that causes the arm to perform a parameter setting operation for arranging the first setting element at a plurality of positions, The control unit causes the sensor to acquire first check data regarding the target in a state in which the first setting element is placed in a setting check position during a first half of the setting operation or before the setting operation; The control unit causes the arm to perform an operation of placing the first setting element at the setting check position during a second half of the setting operation or after the setting operation, and causes the sensor to obtain second check data regarding the target; The control unit determines whether or not there has been a change in the position of the first setting element or the second setting element based on the first check data and the second check data.

2. 2. The robot parameter setting device of claim 1, wherein the control unit uses as the setting check position a position where a user moves the arm to place the first setting element before placing the first setting element at multiple positions for setting the parameters.

3. 3. The robot parameter setting device according to claim 1, further comprising a display device that displays the determination that a position change has occurred.

4. 3. The robot parameter setting device according to claim 1, further comprising a display device that displays an amount of said position change when said position change occurs.

5. 3. The robot parameter setting device according to claim 1, further comprising a display device that displays a direction of the position change when the position change occurs.

6. 3. The robot parameter setting device according to claim 1, further comprising a display device that displays a screen for allowing a user to set or select the setting check position.

7. 3. The robot parameter setting device according to claim 1 or 2, further comprising: after the control unit determines that there has been a position change, a screen is displayed on the display device that allows the user to select whether or not to use the set parameters.

8. 3. The robot parameter setting device according to claim 1, wherein the second setting element is supported by a predetermined support portion.

9. A robot comprising the robot parameter setting device according to claim 1 or 2.