Robot parameter setting device

The robot parameter setting device addresses the issue of unintentional shifts in visual sensor position by using a controller to record test data before and after adjusting the sensor and target positions, ensuring accurate coordinate system assignments and improved robot operation precision.

DE112022007205T5Pending Publication Date: 2025-03-13FANUC LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
DE112022007205
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-07-28
Publication Date
2025-03-13

AI Technical Summary

Technical Problem

Existing robot parameter setting devices fail to prevent unintentional shifts in visual sensor position due to factors like tension and inertia in cables, which can lead to inaccurate coordinate system assignments and robot operations.

Method used

A robot parameter setting device comprising a first adjustment element (either a destination or a sensor) attached to a robot arm, a second adjustment element (the other of the two), and a controller that performs a parameter setting process by recording test data before and after adjusting the elements' positions, determining if any position change has occurred.

Benefits of technology

Ensures accurate and reliable assignment of coordinate systems by detecting and accounting for any shifts in the visual sensor or target positions, thereby enhancing the precision and reliability of robot operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A robot parameter setting device comprising a first setting element, which is either a target (60) or a sensor (50) and which is attached to an arm (10a), a second setting element, which is the other, and a controller configured to control the arm to perform a parameter setting operation by attaching the first setting element to a plurality of positions. The controller controls the sensor (50) to acquire initial test data (23e) in a state where the first setting element is attached to a setting test position in the first half or before the setting operation, and controls the arm to perform a movement to attach the first setting element to the setting test position in the later half or after the setting operation, and then controls the sensor to acquire second test data (23f) and, based on the data, to determine whether there is a change in position.
Need to check novelty before this filing date? Find Prior Art

Description

{Technical field}

[0001] The present disclosure relates to a robot parameter setting device. {State of the art}

[0002] A device is also known that associates position information contained in an image captured by a visual sensor with the position information of the robot. A device is also known that associates a camera coordinate system with a robot coordinate system using a master workpiece. Furthermore, a robot system that performs work on a fixed target, with the robot mounted on a carriage, is known. In this robot system, a plurality of markers are provided on the target device, and a position of the target device relative to the robot on the carriage is detected by using the plurality of markers as landmarks. See, for example, Patent Literature (PTL) 1 to 4. {Reference list}{Patent specifications} Japanese Patent No. 4191080 Japanese Patent Application Laid-Open No. 2015-174191 Japanese Patent Application Laid-Open No. 2018-034271 Japanese Laid-Open Patent Application No. 2020-163518 {Explanation of the invention}{Technical problem}

[0003] To make a robot work on a target, it is necessary to map a robot coordinate system to a coordinate system of a tool located at a distal end portion of the robot, map a coordinate system related to the robot to a coordinate system related to the target, and so on. For example, a tool located at the distal end of the robot must be mapped to the coordinate system of the target transported by a conveyor belt.

[0004] When assigning these coordinate systems, one arm of the robot holds a target, such as a marker detected by a vision sensor, and the vision sensor is supported by a predetermined support section. Based on a coordinate system setting program, the distal end of the arm moves to different positions. Furthermore, based on the coordinate system setting program, the vision sensor acquires images of the target at each position, and the coordinate systems are assigned based on the acquired image data.

[0005] This adjustment assumes that the positions of the target and the visual sensor remain constant. However, there may be situations where tension, inertial force, and the like act on a visual sensor cable, and in this case, displacement of the visual sensor may occur at the time of the above adjustment. Therefore, there is a need to provide a robot parameter adjustment device that ensures that no unintended situations occur. {Solution to the task}

[0006] A robot parameter setting device according to one aspect of the present invention comprises: a first setting element, which is either a target or a sensor, and which is attached to an arm of a robot; a second setting element, which is the other of the two, i.e., the target or the sensor; and a controller configured to control the arm to perform a parameter setting operation for setting parameters by attaching the first setting element to a plurality of positions, wherein the controller is configured to control the sensor to acquire first check data with respect to the target in a state where the first setting element is arranged in a setting check position in a first half of the setting operation or before the setting operation is performed, the controller is configured to control the arm,to perform a movement for attaching the first adjustment element to the adjustment inspection position in a later half of the adjustment process or after the adjustment process has been performed, and then to control the sensor to acquire second inspection data with respect to the target, and the controller is configured to determine whether or not there is a position change of the first adjustment element or the second adjustment element based on the first inspection data and the second inspection data. {Brief description of the drawings} { Fig. 1} Fig. 1 is a schematic perspective view of a parameter setting device and a robot system in which the parameter setting device according to a first embodiment is used. { Fig. 2} Fig. 2 is a schematic side view of the robot system of the first embodiment. { Fig. 3} Fig. 3 is a block diagram of a controller of the robot parameter setting device of the first embodiment. { Fig. 4} Fig. 4 is a block diagram of an image processor of the robot parameter setting device of the first embodiment. { Fig. 5} Fig. 5 is a flowchart of an example of processing executed by the controller of the robot parameter setting device of the first embodiment. { Fig. 6} Fig. 6 is a flowchart of an example of processing executed by the controller of the robot parameter setting device of the first embodiment. { Fig. 7} Fig. 7 is a display example of a display device of the robot parameter setting device of the first embodiment. { Fig. 8} Fig. 8 is a schematic perspective view of a parameter setting device and a robot system in which the parameter setting device according to a second embodiment is used. { Fig. 9} Fig. 9 is a flowchart of an example of processing executed by the controller of the robot parameter setting device of the second embodiment. { Fig. 10} Fig. 10 is a flowchart of an example of processing executed by the controller of the robot parameter setting device of the second embodiment. {Description of the embodiments}

[0007] A robot parameter setting device according to a first embodiment will be described with reference to the drawings. As shown in Fig. As shown in Figure 1, this adjustment device includes a controller 20 for a robot 10, a visual sensor (a sensor) 50 connected to the controller 20, and an image processor 40. The controller 20 may perform a function of the image processor 40, in which case the image processor 40 may be omitted. Another computer may also partially perform the function of a processing described later. In this case, the other computer is included in this adjustment device.

[0008] The robot 10 is not limited to a specific type, but the robot 10 according to the first embodiment is a six-axis articulated robot. The robot 10 may be a horizontal articulated robot, a multi-joint robot, and the like. An arm 10a includes a plurality of servomotors 11, each of which drives a plurality of movable parts 12 (see the Fig. 1 and Fig. 3). Each servo motor 11 has an operating position detecting device 11a for detecting its operating position. An example of the operating position detecting device 11a is an encoder. The controller 20 receives the detected value of the operating position detecting device 11a.

[0009] As in Fig. 2, for example, a tool 30 is attached to a distal end portion of the arm 10a, and the arm 10a is part of a robot system that performs work on a work target W in a conveyor device 2. In an example of Fig. 2, in addition to the visual sensor 5, a camera 3 is provided to check the position and orientation of the target located at an upstream side of the conveyor device 2. Furthermore, an encoder (operation position detecting device) 2b that detects the conveying amount of the conveyor device 2 is provided in a motor (drive device) 2a for driving the conveyor device 2. Furthermore, the controller 20 controls the distal end portion of the arm 10a to follow the work target W during the working time by using the position of the work target W detected based on an output of the camera 3 and the conveying amount of the conveyor device 2.

[0010] The work described above is known work such as picking up the target W, machining the target W, mounting parts on the target W, and the like. The processing of the target W involves known processes such as machining, painting, washing, and the like. The conveying device 2 can be any device as long as it can move the target W, such as a conveyor belt, an AGV (Automatic Guided Vehicle), a vehicle in production, and the like. In such a case where the conveying device 2 is a vehicle in production, a chassis, a tire, an engine, and the like function as the conveying device 2, and a body and the like on the chassis are conveyed as the work target W.

[0011] In one example, the tool 30 is a hand, and the tool 30 includes a servo motor 31 that drives claws (see Fig. 3). The servo motor 31 has an operating position detection device for detecting its operating position, and an example of an operating position detection device is an encoder. The value detected by the operating position detection device is transmitted to the controller 20. Various types of servo motors, such as a rotary motor, a linear motor, and the like, can be used as each of the servo motors 11 and 31.

[0012] In one example, the visual sensor 50 is supported by an upper surface of the conveyor device 2. In the first embodiment, the visual sensor 50 is supported by a predetermined support portion 70 ( Fig. 1), such as a plate and the like, mounted on the upper surface of the conveyor device 2. The visual sensor 50 is a camera, such as a two-dimensional camera and the like. Another type of sensor capable of capturing image data or detected data of the target 60 may also be used as the visual sensor 50.

[0013] As in Fig. 3, the controller 20 includes a CPU, a processor 21 having one or more processing elements, such as a microcomputer and the like, and a display device 22. The controller 20 has a storage unit 23 including non-volatile memory, ROM, RAM, and the like. The controller 20 has servo controllers 24 corresponding to the respective servo motors 11 of the robot 10, and a servo controller 25 corresponding to the servo motor 31 of the tool 30. The controller 20 also includes an input unit 26 connected to the controller 20 in a wired or wireless manner. In one example, the input unit 26 is an input device, such as a control panel or the like, that can be worn by a user. In another example, the input unit 26 is a tablet computer. In such a case where the input unit 26 is a tablet computer, input is performed via a touchscreen function.There is also a case where the control panel or the tablet computer has the display device 22.

[0014] The storage unit 23 stores a system program 23a, and the system program 23a executes basic functions of the controller 20. Furthermore, the storage unit 23 stores an operation program 23b. The storage unit 23 also stores a parameter setting program 23c and a setting check program 23d. The controller 20 controls the arm 10a to perform a predetermined operation on the target W based on the operation program 23b.

[0015] As in Fig. As illustrated in Figure 4, the image processor 40 includes a processor 41 having one or more processing elements such as a CPU, a microcomputer, an image processing processor, and the like. The image processor 40 is connected to the controller 20 and the visual sensor 50 and includes an input unit 42 and a storage unit 43 having a non-volatile memory, a ROM, a RAM, and the like. The storage unit 43 stores a known image processing program 43a.

[0016] The image processor 40 performs known image processing on the image data acquired by the visual sensor 50 based on the image processing program 43a. For example, the image processor 40 performs processing such as known binarization processing, blob analysis processing, edge detection processing, and the like on the image data of the target 60. The image processor 40 can acquire position detection data such as a characteristic position, a center of gravity position, and the like of the target 60. The image processor 40 can also acquire orientation detection data of the target 60. The image processor 40 sequentially transmits the image data on which the image processing is performed, the position detection data, the orientation detection data, and the like to the controller 20.

[0017] The controller 20 may perform part or all of the function of the image processor 40, and the image processor 40 may perform part or all of the function of the controller 20. Another computer may also perform part or all of the function of the image processor 40 and the controller 20. In the following description, the image processor 40, the controller 20, and the other computer are referred to as the controller, and one or more processors of the controller perform the computer processing described later. One or more processors are a processor 21, a processor 41, and the like.

[0018] The controller performs the following processing to set the parameters based on the parameter setting program 23c and the setting check program 23d. An example of parameter setting is shown using the flowcharts in the Fig. 5 and Fig. 6 described.

[0019] Here, as in Fig. 1, a reference coordinate system 101 of the arm 10a of the robot 10 is set in advance, for example, with respect to a base portion 13 for supporting the arm 10a as a reference. Furthermore, the controller can calculate a position and orientation of the distal end portion coordinate system 102 of the distal end portion of the arm 10a, such as a flange 10b and the like, based on the detected result of the operating position detecting device 11a.

[0020] In the first embodiment, a target (a first adjustment element) 60, such as a calibration device or the like, is attached to the distal end portion of the arm 10a to adjust the parameter. In an example, as shown in Fig. As shown in Figure 1, the target 60 is held by the tool 30. The target 60 can be attached to a flange 10b on the wrist by means of a magnet, e.g., an electromagnet, a fastener, e.g., a bolt, and the like. In the first embodiment, a center position of a mark 61 of the target 60 is attached at a position corresponding to a tool center point (TCP) of the tool 30.

[0021] In the first embodiment, a visual sensor (a second adjustment element) 50 is also supported by a support portion 70 for parameter adjustment. The support portion 70 may be an upper surface of the conveyor device 2, and it may be a support device such as a tripod and the like. For example, the position and orientation of the visual sensor 50 on the support portion 70 are associated with a work reference coordinate system for the target W. The work reference coordinate system is associated with the position and orientation of the target W, the position and orientation of a placement portion of the target W, and the like. In the first embodiment, the work reference coordinate system and a sensor coordinate system 103 are associated with each other. Thus, the parameter adjustment described below enables the arm 10a to accurately perform work on the work target W.In the first embodiment, an optical axis of the visual sensor 50 is associated with an axis such as the Z-axis and the like of the sensor coordinate system 103 and extends in a vertically upward direction, but the optical axis of the visual sensor 50 may be oriented in another direction.

[0022] The target 60 of the first embodiment includes the mark 61, and the controller detects in advance the size and shape of the mark 61, the position of each element, and the like. In this way, the controller calculates the position and orientation of the mark 61 and the target 60 with respect to the visual sensor 50 based on the acquired 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 three or more feature shapes of the mark 61 or a relative position of a feature point. The mark 61 may be a dot pattern, a single or multiple three-dimensional shapes, and the like. When the target 60 is the work target W, one or more of the feature shapes and the like of the work target W function as the mark 61.The target 60 may be provided with a narrow distal end portion which may be used instead of the marker 61.

[0023] First, if the input to start a parameter setting is accepted (step S101), the controller executes the following processing based on the setting check program 23d. In one example, the input for starting is based on the user's input to the input unit 26.

[0024] The user moves the distal end portion of the arm 10a so that the target 60 enters the field of view of the visual sensor 50. At this time, the Fig. 7 is displayed on the display device 22. Preferably, the controller displays a preparation screen or letter 23h on the display device 22 to prompt the user to place the distal end portion of the arm 10a in the adjustment check position (step S1-2). The controller may display a preparation screen or letter 23h on the display device to encourage the user to place the target 60 in the adjustment check position.

[0025] The terms used for the adjustment check position refer to the position and orientation of the distal end portion of the arm 10a, and the adjustment check position is the position and orientation of the distal end portion where the target 60 is mounted in the field of view of the visual sensor 50. The preparation screen or the letters 23h of step S1-2 may be a screen informing the user that the adjustment check position is used for the determination in step S1-17 described below. In this case, the user can appropriately adjust the position and orientation of the distal end portion in step S1-1, taking various conditions into account.The various conditions are a structure including wiring of the robot 10, a structure including wiring of the visual sensor 50, a size of the robot 10, a type of the tool 30, a size of the tool 30, and the like. The controller may also be configured not to execute step S1-2 if content related to step S1-2 is provided in an instruction manual or the like.

[0026] When an input to start the parameter setting processing is accepted (step S1-3), the controller controls the visual sensor 50 to output first test data 23e ( Fig. ) at the adjustment check position (step S1-4). Furthermore, the controller stores the first check data 23e, which is image data or data acquired by the visual sensor 50, in the storage unit 23 (step S1-5). Before step S1-4, the controller may cause the arm 10a to perform an operation for eliminating an effect of the backlash of the arm 10a. As an example of such an operation, the controller causes the servo motors 11 to move to their original positions after being slightly rotated.

[0027] The controller then performs the following processing based on the parameter setting program 23c. The controller controls the arm 10a to attach the target 60 to multiple positions, for example, more than three calibration positions, and controls the visual sensor 50 to capture images at each calibration position. The orientation of the target 60 at each calibration position may be different.

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

[0029] The controller calculates the position and orientation of the target 60 relative to the visual sensor 50 at each of the calibration positions from the image data acquired in steps S1-7, S1-9, and S1-11 (step S1-12). These positions and orientations are the positions and orientations of the target 60 on the sensor coordinate system 103 of the visual sensor 50. Furthermore, the controller detects at least one of the positions and orientations of the distal end portion of the arm 10a, the tool 30, and the distal end portion coordinate system 102 at each of the calibration positions. The controller sets the parameter using the position and orientation in the sensor coordinate system 103 and the position and orientation in the distal end portion coordinate system 102 at each of the calibration positions (step S1-13).

[0030] This parameter is used to assign the distal end portion coordinate system 102 and the reference coordinate system 101, for example, to the sensor coordinate system 103. This parameter is used to assign the work reference coordinate system to the positions and orientations of the distal end portion of the arm 10a, the tool 30, and the reference coordinate system of the distal end portion, e.g., 102. The arm 10a can perform work accurately when the sensor coordinate system 103 is linked to a coordinate system of the conveyor device 2. Alternatively, the distal end portion coordinate system 102 can be assigned to a distal end portion of the tool 30 (TCP).

[0031] This parameter can be used for a different purpose, and a different calculation method can be chosen for setting this parameter. In the first embodiment, the position and orientation of the visual sensor 50 are associated with the working reference coordinate system for the target W. Instead, the controller 20 can detect the position and orientation of the TCP without this association.

[0032] Next, the controller performs the following processing based on the adjustment check program 23d. The controller controls the arm 10a so that the distal end portion of the arm 10a is attached to the adjustment check position (step S1-14). Furthermore, the controller controls the visual sensor 50 to generate second check data 23f ( Fig. 3) at the adjustment inspection position (step S1-15). Furthermore, the controller stores the second inspection data 23f, which is image data or data acquired by the visual sensor 50, in the storage unit 23, etc. (step S1-16).

[0033] Subsequently, the controller determines whether or not there is a position change of the visual sensor 50 or the target 60 by comparing the inspection data 23e and the inspection data 23f (step S1-17). For example, it is determined that there is no position change when the amount of position change of the target 60 in the second inspection data 23f with respect to the data included in the first inspection data 23e is less than a threshold value. At this time, the controller displays a parameter setting completion indication on the display device 22 (step S1-21) and properly terminates the parameter setting processing. Furthermore, it is determined that there is a position change when the amount of position change is greater than the threshold value. The threshold value is, for example, three pixels of the image data acquired by the visual sensor 50.However, if it is determined that a position change occurs when the threshold is two pixels or more, the parameter can be adjusted more precisely.

[0034] A threshold value of 0.5 mm can be set to determine whether a position change occurs. For example, the amount of position change is the amount of position change at a section where the largest displacement occurs at the mark 61 on the target 60. Parameter adjustment will be more accurate if a position change is determined to occur when the amount of position change is more than 0.3 mm or 0.2 mm, rather than more than 0.5 mm. For example, the position of the visual sensor 50 may shift slightly during parameter adjustment due to the tension acting on a cable of the visual sensor 50. Since this phenomenon occurs during parameter adjustment, which lasts a relatively short time, it is possible to accurately determine the slight position change of the visual sensor 50 or the target 60.It is also possible to use a threshold greater than the values ​​described above, depending on the situation or condition.

[0035] Subsequently, if it is determined in step S1-17 that a position change has occurred, the controller displays an indication of the amount of position change on the display device 22 (step S1-18). The number of pixels, a value in millimeter scale, and the like are used as the amount of position change. In step S1-18, the controller may display a determination of the position change on the display device 22. An error display, a display indicating that the parameter cannot be set, and the like may also be used as the displayed determination screen. This allows the user to recognize the position change in a timely manner.

[0036] Furthermore, if it is determined in step S1-17 that there is no position change, the controller may display the indication that there is no position change on the display device 22. This allows the user to timely recognize that the parameter set by the user is correct. As an indication that there is no position change, the amount of position change may be displayed on the display device 22. Furthermore, if the letters and color of the screen for displaying the amount of position change are designed differently from those in step S1-18 as described above, the user can easily recognize that there is no position change.

[0037] Furthermore, displaying the amount of position change allows the user to estimate the accuracy of the parameter setting. For example, the tool 30 may be an elongated welding gun, a hand with a long claw, or the like, to the distal end portion of which the target 60 can be attached. For example, a job with the tool 30 may require low position accuracy. In addition, there are various conditions described above. Under these conditions, the user can determine whether four pixels are sufficient based on the above conditions, their experience, and the like. It may also be the case that the user can estimate the accuracy of the parameter setting based on appropriateness.

[0038] The controller can display a direction of the position change on the display device 22. In this case, the display device 22 displays a direction of the position change of the visual sensor 50, a direction of the position change of the target 60, and the like. These directions can be approximate directions. This display allows the user to easily estimate the cause of the position change, improving the efficiency of the adjustment work.

[0039] Considering the above case, the controller may display a selection screen allowing the user to select whether or not to use the parameter on the display device 22 when it is determined in step S1-17 (step S1-19) that a position change has occurred. Thus, the user can decide whether or not to use the parameter depending on the conditions, their experience, etc. Furthermore, the controller is configured to skip step S1-19 when it is not necessary to make the selection, etc.

[0040] In addition, when the user selects the use of the parameter in step S1-19, the controller may store the data in which the selection result, the amount of position change, and the parameter are associated with each other in the storage unit 23.

[0041] Alternatively, the controller may store data in which the amount of position change and the parameter are associated with each other in the storage unit 23 when it is determined in step S1-17 that there is a position change.

[0042] Or the controller can send the data to an external computer. This external computer is a server or similar device used for production management and quality management. This data can be used for quality management tasks, robot system design and improvement, work target design and improvement, and the like, which are performed later.

[0043] If the controller accepts input to use the parameter from the input unit 26 and the like (step S1-10), the controller sets the parameter and indicates completion of the parameter setting (step S1-21). If the controller does not accept the input to use the parameter (step S1-20), the step ends without setting the parameter (step S1-22).

[0044] Furthermore, the controller may automatically attach the distal end portion of the arm 10a to the adjustment check position instead of executing step S1-2. At this time, the controller may display a plurality of adjustment check positions as selection options using a figure displayed on the display device 22 or the like. In this case, the controller displays a screen on the display device 22 for selecting any one of the plurality of adjustment check positions. The controller accepts the user's selection input via the input unit 26 and automatically attaches the distal end portion of the arm 10a to the adjustment check position corresponding to the selection input.

[0045] The controller may also display a screen on which the user can set the adjustment check position. For example, a screen is displayed that displays at least the position of the visual sensor 50. This screen allows the user to determine at least the position of the distal end portion of the arm 10a, the tool 30, or the target 60. The controller accepts the user's adjustment input via the input unit 26 and automatically places the distal end portion of the arm 10a at the adjustment check position corresponding to the adjustment input.

[0046] A robot parameter adjustment device of a second embodiment will be described with reference to the drawings. In the first embodiment, the target (first adjustment element) 60 is attached to the distal end portion of the arm 10, and the visual sensor (second adjustment element) 50 is supported by the support portion 70. In the second embodiment, the visual sensor (a first adjustment element) 50 is attached to the distal end portion of the arm 10a, and the target (a second adjustment element) 60 is supported by a support portion 70 ( Fig. 8). In the second embodiment, a component identical to or corresponding to the first embodiment is represented by the same reference numerals, and a description thereof is omitted. Furthermore, a modified example explained in the first embodiment is also applicable to the second embodiment.

[0047] In the second embodiment, the visual sensor 50 is detachably attached to the distal end portion of the arm 10a. In one example, the visual sensor 50 is attached to a flange 10b on the wrist of the arm 10a in the same manner as the tool 30. In one example, the target 60 is supported by the upper surface of the conveyor 2. In the second embodiment, the target 60 is supported by the support portion 70 attached to the top of the conveyor 2. The target 60 may be a work target W, an object other than the work target W, a part of a structure, or the like. It is possible to use a part of the conveyor 2 and the like as part of the structure.

[0048] Also in the second embodiment, the following processing for setting the parameter is executed according to the parameter setting program 23c and the setting check program 23d. An example of the parameter setting is explained using the flowcharts in Fig. 9 and Fig. 10 described.

[0049] In the second embodiment, the visual sensor 50 is attached to the distal end portion of the arm 10a to adjust the parameter. In one example, the visual sensor 50 is attached to the flange 10b of the wrist by means of a magnet such as an electromagnet or the like, or a fastener such as a screw or the like. The visual sensor 50 can be attached to the distal end portion of the arm 10a by supporting the visual sensor 50 with the tool 30.

[0050] In the second embodiment, the target 60 is also supported by the support portion 70 for setting the parameter. The support portion 70 may be an upper surface of the conveyor device 2, and it may be a support device such as a tripod and the like. For example, the position and orientation of the target 60 on the support portion 70 are associated with those of the work reference coordinate system for the target W. In this sense, it is possible to set the parameter to be suitable for work when the plurality or single target W is used as the target 60. The camera coordinate system 103 and the reference coordinate system 101, as well as the distal end portion coordinate system 102, are associated with each other, for example, through the parameter setting described later. In addition, the parameter setting described later enables the arm 10a to accurately machine the work target W, for example.

[0051] First, the controller performs the following processing based on the setting check program 23d.

[0052] In the second embodiment, the user moves the distal end portion of the arm 10a so that the target 60 enters the field of view of the visual sensor 50 according to the descriptions in the instruction manual. In the second embodiment, the controller does not display a preparation image or the letters 23h prompting the user to attach the distal end portion of the arm 10a to the adjustment check position. The first embodiment can also be configured similarly.

[0053] When the input to start parameter adjustment processing is accepted (step S2-1), the controller controls the visual sensor 50 to acquire the first inspection data 23e at the adjustment inspection position (step S2-2). Furthermore, the controller stores the first inspection data 23e, which is image data or data acquired by the visual sensor 50, in the storage unit 23 and the like (step S2-3). Before executing step S2-2, the controller may control the arm 10a to perform an operation for eliminating an effect of backlash of the arm 10a.

[0054] Then, the controller performs the following processing according to the parameter setting program 23c in the same manner as in the first embodiment.

[0055] For example, the controller places the visual sensor 50 at the first calibration position (step S2-4) and controls the visual sensor 50 to acquire data at the first calibration position (step S2-5). Furthermore, the controller places the visual sensor 50 at the second calibration position (step S2-6) and controls the visual sensor 50 to acquire data at the second calibration position (step S2-7). Furthermore, the controller places the visual sensor 50 at the third calibration position (step S2-8) and controls the visual sensor 50 to acquire data at the third calibration position (step S2-9).

[0056] The controller calculates the position and orientation of the target 60 relative to the visual sensor 50 at each of the calibration positions from the acquired image data in steps S2-5, S2-7, and S2-9 (step S2-10). These positions and orientations are the positions and orientations of the visual sensor 60 on the sensor coordinate system 103. Furthermore, the controller detects the position and orientation of the distal end portion of the arm 10a, the tool 30, or the distal end portion coordinate system 102. The controller sets the parameter using the position and orientation on the sensor coordinate system 103 and the position and orientation on the distal end portion coordinate system 102 at each of the calibration positions, for example (step S2-11).

[0057] The parameter is used, for example, to assign the sensor coordinate system 103 to the distal end section coordinate system 102 and the reference coordinate system 101.

[0058] The parameter may be a parameter for other purposes and other calculation methods may be used to determine the parameter.

[0059] Subsequently, the controller executes the following processing based on the adjustment check program 23d. The controller controls the arm 10a to attach the distal end portion of the arm 10a to the adjustment check position (step S2-12). Furthermore, the controller controls the visual sensor 50 to acquire the second check data 23f at the adjustment check position (step S2-13). The controller stores the image data or the data acquired by the visual sensor 50 in the storage unit 23, etc. (step S2-14).

[0060] Next, the controller determines whether or not there is a position change of the visual sensor 50 or the target 60 in the same manner as in step S1-17 of the first embodiment (step S2-15). If there is no position change, the controller displays the parameter setting completion indication on the display device 22 (step S2-19) and successfully completes the parameter setting processing.

[0061] In addition, the controller displays the position change amount indication on the display device 22 in the same manner as in step S1-18 of the first embodiment (step S2-16). This position change amount indication allows the user to estimate the accuracy of the parameter setting in the same manner as in the first embodiment.

[0062] In addition, the controller may display the selection screen on the display device 22 in the same manner as in step S1-19 of the first embodiment (step S2-17). Thus, the user can decide whether or not to use the parameter based on the condition, experience, and the like, in the same manner as in the first embodiment.

[0063] Further, if the controller accepts the input to use the parameter input from the input unit 26 and the like (step S2-19), the controller sets and displays the parameter setting completion indication (step S2-19). In such a case where the controller does not accept the input to use the parameter (step S2-18), the controller terminates processing without setting the parameter (step S2-20).

[0064] Here, during the parameter setting processing, the distal end portion of the robot 10 sequentially moves to a variety of positions and orientations in the same manner as, for example, steps S1-6 to S1-11 of the first embodiment. Also, various objects such as other devices, work targets W, and the like exist around the robot 10. A cable for the robot 10 is also provided around the robot 10, and the cable also moves according to the operation of the robot 10. For this reason, when setting the parameters, the user must pay attention to ensure that the robot 10 and the cable do not interfere with the surrounding objects. Therefore, in many cases, the user does not notice the state of the visual sensor 50 and its cable.

[0065] In addition, the visual sensor 50 is attached to the robot 10 or the support section to allow the user to adjust the parameters, and its cable is also temporally attached by the user. Therefore, during the parameter adjustment process of the robot 10, the visual sensor 50 can exert a slight tension on the cable depending on the temporal position of the cable. The visual sensor 50 may or may not be moved by this slight tension. If the visual sensor 50 is slightly displaced by the slight tension, the user will often not notice it. Although the target 60 may be slightly displaced due to vibration and the like, the user will also often not notice it.

[0066] In one example, the parameter setting calculation is performed even with a slight shift, so the parameter editing is completed smoothly, and the user doesn't notice the shift. Depending on the accuracy required by the robot 10 at the target W, there are jobs where the user may not notice the slight shift at all. However, even in this type of work, if an error occurs, the cause may lie in the slight shift.

[0067] In the first and second embodiments, the measurement of the first and second inspection data 23e, 23f and the determination of whether there is a position change are performed during a series of checks for parameter setting of the robot 10. In this configuration, the first and second inspection data 23e, 23f are measured during the parameter setting, which takes a relatively short time, it is possible to accurately determine whether it is the slight displacement of the visual sensor 50 or the target 60 that occurs during the parameter setting.

[0068] For example, it is determined that a position change has occurred when the positions in the first inspection data 23e and the second inspection data 23e differ by three pixels or more in step S1-17. In one example, the visual sensor 50 has millions of pixels, and one side of the angle of view of the visual sensor 50 at the position of the target 60 is approximately ten to twenty centimeters. In this case, the position change of three pixels may correspond to a position change of 0.2 mm, 0.3 mm, and the like. Therefore, with the configuration described above, it can be accurately determined whether there is a slight displacement of the visual sensor 50 or the target 60.

[0069] When capturing images at a second adjustment check position, if the visual sensor 50 is slightly displaced in the direction of its optical axis, the displacement is unlikely to occur only in the direction of the optical axis of the visual sensor 50. That is, if the position of the visual sensor 50 is displaced in the direction of the optical axis for an inadvertent reason, it is unlikely that the visual sensor 50 will not be displaced in the direction intersecting the optical axis. The same applies to the target 60. Therefore, with the above configuration, it can be accurately determined whether there is a slight displacement of the visual sensor 50 or the target 60.

[0070] Furthermore, in the first and second embodiments, the user moves the distal end portion of the arm 10a before executing steps S1-4 and S2-2, and the position of the distal end portion of the arm 10a is used as the adjustment check position. As a result, the user can easily and securely determine the adjustment check position, so the user does not need to separately set the adjustment check positions. This contributes to improving user convenience. In addition, the user can securely attach the visual sensor 50 to a position where the visual sensor 50 is in focus as the adjustment check position. This configuration is useful considering that many of the visual sensors 50 for the robot 10 do not have an autofocus function and a focus range is known from an instruction manual and the like.

[0071] Furthermore, in the first and second embodiments, the setting check position selection screen is displayed. Therefore, the user can easily use the setting check position suitable for conditions such as wiring, a position, and the like of the cable of the visual sensor 50.

[0072] Furthermore, in the first and second embodiments, the screen for setting the adjustment check position is displayed. This is useful for the user to arbitrarily set the adjustment check position without wasting time and effort.

[0073] In the first and second embodiments, any of the calibration positions can also be used as the adjustment check position. For example, in such a case where the first calibration position is used as the adjustment check position, the distal end portion of the arm 10a is attached to the first calibration position in steps S1-14 and S2-12. In this case, too, the same effect can be achieved. Also, it is preferable that the adjustment check position is the position in the first half of the adjustment process in steps S1-6 to S1-11 of the first embodiment, for example. That is, it is preferable that the adjustment check position is the first calibration position or the second calibration position. Furthermore, in the first embodiment, steps S1-12 and S1-13 are preferably performed in the second half of the adjustment process in steps S1-6 to S1-11 or after this adjustment process.

[0074] Furthermore, in the first and second embodiments, another adjustment check position may be set. For example, as the other adjustment check position, a position where the cable of the visual sensor 50 is most likely to be taut, and the like, may be set. The other adjustment check position may be one of the calibration positions. The adjustment check position may be automatically set by the controller, or it may be set by the controller in advance. In these cases, the controller may be configured to display the adjustment check position on the display device 22. For example, the controller displays, as the adjustment check position, a position where the arm 10a has stopped before the first calibration position, a position located between the first calibration position and the second calibration position, and the like.In this case, the user can know where the adjustment check position is, and this helps to easily identify the cause of the error at the time of adjustment operation and the like.

[0075] Note that in the first and second embodiments, the visual sensor 50 may be a three-dimensional camera, a three-dimensional distance sensor, a LiDAR (Light Detection and Ranging), a PSD (Position Sensing Detector), and the like. In these cases, the configuration of the image processor 40 may be changed accordingly. A visual sensor mounted on the distal end portion of the arm 10a while performing work on the target W may also be used as the visual sensor 50.

[0076] 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 may be variously added, replaced, modified, partially deleted, etc., as long as they do not deviate from the gist of the invention or the spirit and purpose of the invention as set forth in the claims and their equivalents. For example, in the embodiment described above, the order of operations, the order of processing, the omission or addition of some operations according to conditions, and the omission or addition of some processing according to conditions can be performed without being limited to the above-described example. The same applies when numerical values ​​or mathematical formulas are used in the description of the embodiment described above. {Reference symbol list} 2 Conveyor device 10 robots 10a Arm 11 Servo motor 20 controllers 21 processor 22 Advertisement 23 Storage unit 23a System program 23b Operating program 23c Parameter setting program 23d Pre-employment Examination Program 23e first test data 23f second test data 26 Input unit 30 tools 31 Servo motor 40 image processor 41 processor 43 storage unit 43a image editing program 50 visual sensor (sensor) 60 Target 61 Marking 70 support section 101 Reference coordinate system 102 Distal end section coordinate system 103 Sensor coordinate system W Work goal QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] JP 4191080

[0002] JP 2015-174191

[0002] JP 2018-034271

[0002] JP 2020-163518

[0002]

Claims

[1] Robot parameter setting device, comprising: a first adjustment element, which is either a target or a sensor and which is attached to an arm of a robot; a second setting element which is the other of the two, ie the target or the sensor; and a controller configured to control the arm to perform a parameter setting operation for setting parameters by attaching the first setting member to a plurality of positions, wherein the controller is configured to control the sensor to acquire first inspection data with respect to the target in a state in which the first adjustment element is arranged in an adjustment inspection position in a first half of the adjustment process or before the adjustment process is performed, the controller is configured to control the arm to perform a movement for attaching the first adjustment element to the adjustment inspection position in a later half of the adjustment process or after the adjustment process has been performed, and then to control the sensor to acquire second inspection data with respect to the target, and the controller is configured to determine, based on the first test data and the second test data, whether or not there is a change in position of the first adjustment element or the second adjustment element. [2] The robot parameter setting device according to claim 1, wherein the controller uses, as the setting check position, a position where the first setting member is attached by a user who moves the arm before the first setting member is attached to the plurality of positions for the parameter setting operation. [3] A robot parameter setting device according to claim 1 or 2, further comprising a display device configured to display a determination that there is a position change. [4] The robot parameter setting device according to claim 1 or 2, further comprising a display device configured to display an amount of position change when there is a position change. [5] The robot parameter setting device according to claim 1 or 2, further comprising a display device configured to display a direction of position change when there is a position change. [6] The robot parameter setting device according to claim 1 or 2, further comprising a display device configured to display a screen for the user to allow the setting check position to be set or a screen for causing the user to select the setting check position. [7] The robot parameter setting device according to claim 1 or 2, wherein the robot parameter setting device is adapted to display a screen for allowing the user to select whether or not to use the set parameter when the controller detects that there is a position change. [8] A robot parameter setting device according to claim 1 or 2, wherein the second setting member is supported by a predetermined support portion. [9] A robot comprising the robot parameter setting device according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • JP1981143056U

  • Robot system, calibration method of robot system and position correction method of robot system

    JP2015174191A

  • Failure factor specification method in carrying-in and -out work of carrying-in and -out device

    JP2018034271A

  • Transfer device and delivery system

    JP2020163518A

  • 2015-174191