Belt conveyor calibration method, robot control method, robot system, and program

The method addresses inefficiencies in measuring meandering on conveyor belts by using a dual-camera system to track markers and calculate correction values, ensuring accurate and efficient robot operations on conveyor systems.

JP7600600B2Active Publication Date: 2024-12-17SEIKO EPSON CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2020169797
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-10-07
Publication Date
2024-12-17
Estimated Expiration
2040-10-07

AI Technical Summary

Technical Problem

Existing methods for correcting meandering of objects on conveyor belts due to belt flexure are inefficient, particularly in large work areas, as they require numerous measurements of mark positions, prolonging the measurement process.

Method used

A method involving a belt conveyor that conveys markers, with a first camera capturing images divided into sections, a second camera tracking and photographing the markers, and a robot system that calculates and stores correction values for positional deviations, allowing efficient correction of object positions using these values during work operations.

Benefits of technology

Enables accurate and efficient measurement of meandering caused by belt deflection, enhancing productivity and quality of robot operations by continuously tracking markers without intermittent stops, thereby improving measurement efficiency and positional accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007600600000001
    Figure 0007600600000001
  • Figure 0007600600000002
    Figure 0007600600000002
  • Figure 0007600600000003
    Figure 0007600600000003
Patent Text Reader

Abstract

To provide a method for measuring efficiently, meander due to swag or the like of a belt.SOLUTION: A belt conveyor calibration method is configured so that, a belt 6 of a belt conveyor 3 transports a marker 23, a first camera 13 images the marker 23, the marker 23 passing one section 21r out of a plurality of sections 21r which is obtained by dividing a first imaging region 21 of the first camera 13 is detected from an image imaged by the first camera 13, a robot 15 moves a second camera 18 therefore the second camera 18 tracks and images the detected marker 23, then a correction value being a difference between the position of the marker 23 estimated on the basis of a transport amount of the belt 6 and a position of the marker 23 detected from the image of the marker 23 which is tracked and imaged, is calculated and stored.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a belt conveyor calibration method, a robot control method, a robot system, and a program. [Background technology]

[0002] A robot system is known in which a robot performs work on an object transported by a belt conveyor. The belt of a belt conveyor changes over time and warps. An object transported by the warped belt moves in a meandering manner. Patent Document 1 discloses a method for correcting the meandering of an object caused by belt warping, etc., in order to control a robot while taking into account the meandering caused by belt warping, etc. According to this method, a mark is placed on the belt, and the belt moves intermittently. When the mark is stopped, an operator brings the tip of the robot hand into contact with the mark and stores the coordinates of the mark. In other words, the position of the mark is measured. The meandering of the mark caused by belt warping, etc. is measured by repeating the movement of the belt, stopping the belt, and measuring the position of the mark. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2015-174171 A Summary of the Invention [Problem to be solved by the invention]

[0004] However, in the method of Patent Document 1, when the working area is large, the number of times the position of the mark is measured increases, resulting in poor measurement efficiency. In detail, in this method, the operator operates the teaching pendant to move the tip of the robot hand to the position of the mark. This takes time to measure the location of the mark. Therefore, there has been a demand for a method to efficiently measure meandering caused by belt deflection, etc. [Means for solving the problem]

[0005] A belt conveyor calibration method includes a conveyor belt transporting a marker, a first camera photographing the marker, detecting the marker passing through one of a plurality of sections into which the photographing area of ​​the first camera is divided from the image photographed by the first camera, a robot moving a second camera so that the second camera follows and photographs the detected marker, and calculating and storing a correction value which is the difference between the position of the marker estimated from the amount of transport of the belt and the position of the marker detected from the image of the marker photographed by following the marker.

[0006] The robot control method calculates the correction value using the belt conveyor calibration method described above and stores it in a memory unit; when the robot performs work on an object on the belt, the first camera photographs the object, detects one of the multiple sections through which the object passes, and obtains from the memory unit the correction value corresponding to the section through which the object passes; the robot corrects position information of the object with the correction value, and performs work on the object using the corrected position information of the object.

[0007] The robot system includes a belt conveyor having a transport belt and transporting markers and objects, a robot whose operating range includes the belt, a first camera that photographs the markers and the objects on the belt, a second camera attached to an arm or hand of the robot and follows and photographs the marker on the belt, and a control unit that controls the operation of the robot and has a memory unit, wherein the control unit detects the marker passing through one of a plurality of compartments into which an imaging area of ​​the first camera is divided, calculates a correction value that is a difference between a position of the marker estimated from the transport amount of the belt and a position of the marker detected from an image of the marker photographed by following the marker, and stores the correction value in the memory unit, and when the robot performs work on the object on the belt, the control unit causes the first camera to photograph the object, detects a compartment among the plurality of compartments through which the object passes, obtains the correction value from the memory unit corresponding to the object passing through the compartment in which the object is included, corrects position information of the object with the correction value, and has the robot perform work on the object using the corrected position information of the object.

[0008] The program includes a computer included in the control unit of a robot of a robot system including a belt conveyor whose belt carries markers and objects, a robot whose operating range includes the belt, a first camera that photographs the markers and the objects on the belt, a second camera that is moved by the robot and follows and photographs the markers on the belt, and a control unit that controls the operation of the robot and has a memory unit, the computer including a first detection means that detects the marker passing through one of a plurality of sections that divide the photographing area of ​​the first camera, and a position and tracking of the marker estimated from the transport amount of the belt. Accordingly, the system functions as a correction value calculation means which calculates and stores a correction value which is the difference between the position of the marker detected from the captured image of the marker; a second detection means which, when the robot performs work on the object on the belt, inputs an image including the object captured by the first camera and detects one of the multiple sections through which the object passes; a correction means which obtains from the memory unit the correction value corresponding to the object passing through the detected section and corrects position information of the object with the correction value; and an operation control means which causes the robot to perform work on the object using the corrected position information of the object. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 is a schematic side view showing a configuration of a robot system according to a first embodiment. [Diagram 2] FIG. 2 is a schematic plan view showing the configuration of a belt conveyor. [Diagram 3] FIG. 2 is a schematic plan view showing the configuration of a belt conveyor. [Figure 4] FIG. 2 is a schematic plan view showing the configuration of a belt conveyor. [Diagram 5] Electrical block diagram of the robot system. [Figure 6] 4 is a flowchart of a calibration method. [Figure 7] FIG. 11 is a diagram showing a display example of a calibration result. [Figure 8] FIG. 13 is a diagram showing an example of approximating the amount of deviation using an approximation formula. [Figure 9] 1 is a flowchart of a method for controlling a robot. [Figure 10] FIG. 4 is a schematic plan view for explaining a method for controlling the robot. [Figure 11] FIG. 4 is a schematic plan view for explaining a method for controlling the robot. [Figure 12] FIG. 11 is a schematic plan view showing the configuration of a belt conveyor according to a second embodiment. [Figure 13] FIG. 2 is a schematic plan view showing the configuration of a belt conveyor. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] First embodiment In this embodiment, a characteristic example of a robot system, a calibration method for a belt conveyor, and a robot control method will be described.

[0011] As shown in Fig. 1, the robot system 1 includes a belt conveyor 3 on a base 2. The belt conveyor 3 includes a first pulley 4 and a second pulley 5. A belt 6 is hung between the first pulley 4 and the second pulley 5. The belt conveyor 3 includes a first motor 7. The torque of the first motor 7 is transmitted to the first pulley 4 by a transmission mechanism including a timing belt 8 and the like. When the shaft of the first motor 7 rotates, the first pulley 4 rotates and the conveyor belt 6 moves.

[0012] The direction from the first pulley 4 to the second pulley 5 is the X positive direction. The width direction of the belt conveyor 3 is the Y direction. The direction from the base 2 to the belt conveyor 3 is the Z positive direction. The X direction, Y direction, and Z direction are perpendicular to each other.

[0013] When the belt conveyor 3 is installed on the base 2, the belt 6 is adjusted so that it does not meander. The direction in which the belt 6 moves at this time is defined as a first direction 9. With respect to the belt 6, the first pulley 4 side is the upstream side, and the second pulley 5 side is the downstream side. The first direction 9 is the positive X direction. A plate 11 is placed on the belt 6. The plate 11 is transported by the belt conveyor 3 on which the belt 6 moves. When a workpiece is placed on the belt 6, the workpiece is transported by the belt conveyor 3 on which the belt 6 moves. The traveling direction of the belt 6 may meander due to aging. When the belt 6 meanders, the traveling direction of the belt 6 deviates from the first direction 9.

[0014] A first encoder 12 is attached to the first pulley 4. The first encoder 12 is a rotary encoder, and detects the rotation angle of the first pulley 4. The rotation angle of the first pulley 4 and the amount of movement of the belt 6 are directly proportional to each other. Therefore, the amount of movement of the plate 11 in the first direction 9 is detected from the output of the first encoder 12.

[0015] A first camera 13 is disposed downstream of the first pulley 4 in the positive Z direction of the belt 6. The first camera 13 photographs the upstream side of the belt 6.

[0016] The plate 11 is placed within the photographing range of the first camera 13. Therefore, after the plate 11 is placed on the belt 6, the plate 11 is photographed by the first camera 13.

[0017] A robot 15 is installed between the first camera 13 and the second pulley 5. The robot 15 includes a robot body 15a and a control device 15b as a control unit. The robot body 15a is installed on an installation stand 16 installed on the base 2. The robot body 15a includes a plurality of arms 15c that are connected to each other. The arms 15c include actuators 17 as hands at their tips.

[0018] The robot body 15a includes a plurality of second motors 15d and second encoders 15e for rotating the arms 15c. The control device 15b drives the second motors 15d and second encoders 15e to control the position of the actuator 17.

[0019] The arm 15c has an elevator 15f at its tip. The elevator 15f raises and lowers the actuator 17. The control device 15b drives the elevator 15f to control the position of the actuator 17 in the Z direction.

[0020] The actuator 17 is, for example, a hand that grips the plate 11, a motor driver, etc. The control device 15b controls the driving of the actuator 17.

[0021] A second camera 18 is attached to the arm 15c or the actuator 17 of the robot 15. The second camera 18 captures an image of the plate 11 moving in the first direction 9. The movement range of the robot 15 includes the belt 6.

[0022] The robot 15 is omitted in Fig. 2. As shown in Fig. 2, a direction perpendicular to the first direction 9 in the XY plane is defined as a second direction 19. The second direction 19 is the negative Y direction. In Fig. 2, a first imaging area 21 is shown by a dotted line as an imaging area that is a range imaged by the first camera 13. A second imaging area 22 is shown by a dotted line as an imaging area that is a range imaged by the second camera 18. The first imaging area 21 and the second imaging area 22 are rectangular. The position of the first imaging area 21 is fixed.

[0023] The first shooting area 21 is divided into 49 sections 21r of 7 rows and 7 columns. The first row 21a, the second row 21b, the third row 21c, the fourth row 21d, the fifth row 21e, the sixth row 21f, and the seventh row 21g are allocated from the Y positive direction side to the Y negative direction side. The first column 21h, the second column 21j, the third column 21k, the fourth column 21m, the fifth column 21n, the sixth column 21p, and the seventh column 21q are allocated from the X negative direction side to the X positive direction side.

[0024] The corner section 21r on the negative X direction side and the positive Y direction side is in the first row 21a and the first column 21h. The corner section 21r on the positive X direction side and the negative Y direction side is in the seventh row 21g and the seventh column 21q.

[0025] The second imaging area 22 has a smaller range and a higher resolution than the first imaging area 21. The second camera 18 and the second imaging area 22 are moved by the robot 15.

[0026] 3, a marker 23 is formed on the plate 11. The marker 23 has a circular shape that makes it easy to calculate the center of gravity.

[0027] The first camera 13 photographs the marker 23 on the belt 6. When a workpiece is present on the belt 6, the first camera 13 photographs the workpiece on the belt 6.

[0028] The belt 6 of the belt conveyor 3 carries the marker 23. The first camera 13 captures an image of the marker 23. From the image captured by the first camera 13, the control device 15b detects the marker 23 passing through one of the multiple sections 21r obtained by dividing the first photographing area 21, which is the photographing area of ​​the first camera 13.

[0029] As shown in Fig. 4, the belt 6 of the belt conveyor 3 transports the marker 23 in the first direction 9. As the robot 15 moves the second camera 18, the second camera 18 follows and photographs the detected marker 23. The robot 15 moves the second camera 18 so that the position of the marker 23 estimated from the transport amount of the belt 6 is at the center of the second photographing area 22.

[0030] The control device 15b calculates and stores a correction value that is the difference between the position of the marker 23 estimated from the amount of conveyance of the belt 6 and the position of the marker 23 detected from an image of the marker 23 captured by tracking the marker 23.

[0031] 5, the control device 15b includes a CPU 24 (Central Processing Unit) as a computer that performs various types of calculation processing, and a memory 25 as a storage unit that stores various types of information. A robot driving device 26, a first camera 13, a second camera 18, a belt conveyor 3, an input device 28, and an output device 29 are connected to the CPU 24 via an input / output interface 31 and a data bus 32.

[0032] The robot driving device 26 is a device that drives the robot body 15a. The robot driving device 26 drives the second motor 15d, the second encoder 15e, the lifting device 15f, and the actuator 17 of the robot body 15a.

[0033] The image data captured by the first camera 13 and the second camera 18 is transmitted to the CPU 24 via the input / output interface 31 and the data bus 32 .

[0034] The output of the first encoder 12 of the belt conveyor 3 is transmitted to the CPU 24 via an input / output interface 31 and a data bus 32 .

[0035] The input device 28 is a keyboard, a joystick, etc. The worker operates the input device 28 to input various instructions.

[0036] The output device 29 is a display device, an external output device, etc. The worker checks various information by looking at the display device. The output device 29 has an external interface for communicating with an external device.

[0037] The memory 25 is composed of semiconductor memories such as RAM (Random Access Memory) and ROM (Read Only Memory). The memory 25 stores a program 33 in which the operation procedure of the robot main body 15a is described. In addition, the memory 25 stores belt measurement data 34. The belt measurement data 34 is data indicating meandering and positional deviation of the belt 6. In addition, the memory 25 stores work position data 35. The work position data 35 is data indicating the position of the work on the belt 6. In addition, the memory 25 stores image data 36. The image data 36 is data of images captured by the first camera 13 and the second camera 18. In addition, the memory 25 has a memory area that functions as a work area for the operation of the CPU 24, a temporary file, etc., and various other memory areas.

[0038] The CPU 24 drives the robot system 1 according to a program 33 stored in the memory 25. The CPU 24 on which the program 33 runs has a robot control unit 37 as an operation control means, which is a specific function realization unit. In the control device 15b, the robot control unit 37 controls the operation of the robot main body 15a. When the robot 15 works on a workpiece on the belt 6, the first camera 13 is caused to photograph the workpiece.

[0039] Additionally, the CPU 24 has an image capture control unit 38. The image capture control unit 38 controls the timing at which the first camera 13 and the second camera 18 capture images.

[0040] The first detection unit 39 as the first detection means detects the marker 23 passing through one of the multiple sections 21r obtained by dividing the first shooting area 21 of the first camera 13.

[0041] The correction value calculation unit 41, which serves as a correction value calculation means, calculates a correction value which is the difference between the position of the marker 23 estimated from the conveyance amount of the belt 6 and the position of the marker 23 detected from an image of the marker 23 captured during tracking, and stores the correction value in the memory 25 as part of the belt measurement data 34.

[0042] Specifically, when second camera 18 captures an image of marker 23, imaging control unit 38 detects the amount of deviation between the center of the image captured by second camera 18 and the center of marker 23. The amount of deviation includes the distance shifted in first direction 9 and the distance shifted in second direction 19.

[0043] The second detection unit 42 as the second detection means inputs an image including the workpiece captured by the first camera 13 when the robot 15 works on the workpiece on the belt 6, and detects the section 21r among the multiple sections 21r through which the workpiece passes.

[0044] Additionally, the CPU 24 has a position correction calculation unit 43 as a correction means. The position correction calculation unit 43 calculates the position of the workpiece that has changed due to the deviation or meandering of the belt 6. The position correction calculation unit 43 acquires a correction value corresponding to the workpiece passing through the section 21r detected in the first photographing area 21 from the memory 25, and corrects the position information of the workpiece with the correction value.

[0045] The robot control unit 37 causes the robot 15 to perform the task on the workpiece using the corrected position information of the workpiece.

[0046] Additionally, the CPU 24 has a work position calculation unit 44. The work position calculation unit 44 calculates the position of the work when the belt 6 is not meandering, from the output of the first encoder 12.

[0047] Additionally, the CPU 24 has a belt control unit 45. The belt control unit 45 controls the moving speed of the belt 6. The belt control unit 45 receives the output of the first encoder 12 and recognizes the moving speed and amount of movement of the belt 6.

[0048] Next, the procedure of the belt conveyor calibration method of the robot system 1 will be described. Fig. 6 shows a procedure for calibrating the belt conveyor 3 of the robot system 1. In Fig. 6, in step S1, an operator places the plate 11 on the belt 6. Initially, the plate 11 is placed so that it is photographed in the first row 21h. Next, the process proceeds to steps S2 and S3. Steps S2 and S3 are performed in parallel.

[0049] In step S2, the belt 6 moves on the plate 11. The belt 6 of the belt conveyor 3 carries the marker 23. When the belt 6 meanders, the marker 23 also meanders. Next, the process proceeds to step S6.

[0050] In step S3, the first camera 13 captures an image of the marker 23. The first detection unit 39 detects, from the image captured by the first camera 13, the marker 23 passing through one of the multiple sections 21r obtained by dividing the first capturing area 21 of the first camera 13. The first detection unit 39 first detects the marker 23 passing through the section 21r in the first row 21a of the first column 21h.

[0051] In step S4, the second camera 18 tracks and measures one of the photographed markers 23. The second camera 18 tracks the marker 23 that passes through the section 21r of the first row 21a of the first column 21h that was detected in step S3. The image of the marker 23 is stored in the memory 25 as part of the belt measurement data 34. In other words, by moving the second camera 18 by the robot 15, the second camera 18 tracks the detected marker 23 and photographs the marker 23. Next, the process proceeds to step S5.

[0052] In step S5, data on the positional deviation from the center of the second photographing region 22, which is the photographing range, is calculated by the correction value calculation unit 41. The data on the positional deviation is stored in the memory 25 as a part of the belt measurement data 34. Next, the process proceeds to step S6.

[0053] In step S6, it is determined whether or not all of the markers 23 to be measured have been measured. If there are markers 23 at locations that have not been measured, the process proceeds to step S1.

[0054] In the first column 21h, the markers 23 are measured in order from the first row 21a to the seventh row 21g. After all measurements of the markers 23 in the first column 21h are completed, the plate 11 is then positioned in step S1 so that the markers 23 of the plate 11 are photographed in the second column 21j. Furthermore, the plate 11 is positioned so that the markers 23 of the plate 11 are photographed in order from the third column 21k to the seventh column 21q.

[0055] In step S3, the rows are switched sequentially in one column. When the measurement of the markers 23 in the first row 21a is completed, the markers 23 in the second row 21b are then photographed. Furthermore, the markers 23 in the third row 21c to the seventh row 21g are photographed. In step S4, the markers 23 photographed in step S3 are tracked. When it is determined in step S6 that the measurement of the markers 23 passing through all sections 21r has been completed, the process proceeds to step S7.

[0056] In step S7, the measured data is displayed on the screen of the output device 29. Next, the process proceeds to step S8. In step S8, a calculation for correcting the amount of deviation is performed. An approximate formula for correcting the amount of deviation of the belt 6 is calculated from the trajectory of the marker 23 measured by the second camera 18 following the marker 23, and the formula is stored in the memory 25 as a part of the belt measurement data 34.

[0057] In other words, the correction value calculation unit 41 calculates and stores a correction value which is the difference between the position of the marker 23 estimated from the conveyance amount of the belt 6 and the position of the marker 23 detected from an image of the marker 23 captured during tracking.

[0058] The second camera 18 follows and photographs the passing marker 23 in each of the multiple sections 21r, and the correction value calculation unit 41 calculates the correction value.

[0059] According to this method, the trajectory of the marker 23 passing through each of the multiple sections 21r is detected. Then, a correction value is calculated. Therefore, the trajectory of the workpiece passing through any of the multiple sections 21r can be estimated with high accuracy.

[0060] The number of the multiple sections 21r can be changed by an operator. According to this method, the number of the multiple sections 21r can be changed by an operator. Increasing the number of sections 21r allows each section 21r to be finer, so that the positional accuracy can be detected with high accuracy. However, the number of measurements increases, so the labor required for the measurements increases. By setting a small number of sections 21r among the number of sections 21r that satisfies the required positional accuracy, an operator can perform calibration of the belt conveyor 3 with high productivity.

[0061] FIG. 7 shows an example of a screen displayed in step S7. An image of the marker 23 captured by the first camera 13 is shown in the left frame. Two graphs are shown in the right frame. The upper part of the right frame shows the amount of deviation of the belt 6 in the first direction 9. The horizontal axis of the graph shows the position of the marker 23 in the first direction 9. The vertical axis shows the amount of deviation of the belt 6 in the first direction 9. The lower part of the right frame shows the amount of deviation of the belt 6 in the second direction 19. The horizontal axis of the graph shows the position of the marker 23 in the first direction 9. The vertical axis shows the amount of deviation of the belt 6 in the second row 21b. The graph is an example in which the belt 6 is meandering.

[0062] The measurement conditions are shown in the center. The calibration section column number indicates which column of the first column 21h to the seventh column 21q the marker 23 passed through for the data. The number 5 indicates the fifth column 21n.

[0063] The vision sequence is an identification name of the program 33 in which the robot 15 moves the second camera 18. The calibration mark number indicates which row of the first row 21a to the seventh row 21g the marker 23 has passed through in the data. The number 6 indicates the sixth row 21f.

[0064] The calibration number indicates the identification number of the section 21r. The object indicates the identification name of the captured image. The deviation amount indicates the deviation amount at a specific position. The maximum deviation amount indicates the maximum deviation amount within the course followed by the second camera 18.

[0065] FIG. 8 is an example of a graph showing the results of the calculation of the deviation correction performed in step S8. The horizontal axis shows the position of the belt 6 in the first direction 9. The vertical axis shows the deviation in the second direction 19. More specifically, it shows the deviation of the center of gravity of the marker 23 from the center of the second shooting area 22. The solid line is a line graph passing through the plot of the measurement values. The dotted line shows an approximation calculated by the least squares method using the plot of the measurement values. The approximation is a cubic equation. The approximation is calculated for all 49 sections 21r of the first shooting area 21.

[0066] The row number and column number in section 21r of first shooting region 21 are CamX and CamY, respectively. The position in first direction 9 of second shooting region 22 is CnvX. If an approximation formula for the amount of deviation in first direction 9 is a function FX, the correction value for the amount of deviation in first direction 9 is represented as FX(CamX, CamY, CnvX). If an approximation formula for the amount of deviation in second direction 19 is a function FY, the correction value for the amount of deviation in second direction 19 is represented as FY(CamX, CamY, CnvX).

[0067] FX(CamX, CamY, CnvX) and FY(CamX, CamY, CnvX) are stored in memory 25 as part of belt measurement data 34. This completes the procedure of the belt conveyor calibration method.

[0068] Next, a procedure of the robot control method that follows the procedure of the belt conveyor calibration method will be described. The procedure of the robot control method is a procedure when the robot 15 works on the workpiece on the belt 6. The correction values ​​have already been calculated and stored in the memory 25 using the above-mentioned belt conveyor calibration method. FIG. 9 shows a procedure in which the robot 15 of the robot system 1 performs an operation on a workpiece being transported by the belt 6.

[0069] In Fig. 9, in step S11, the first camera 13 photographs the workpiece. Next, the process proceeds to step S12. In step S12, the second detection unit 42 detects the section 21r through which the workpiece passes among the multiple sections 21r. Next, the process proceeds to step S13. In step S13, the position correction calculation unit 43 obtains from the memory 25 a correction value corresponding to the section 21r through which the workpiece passes. The workpiece position calculation unit 44 calculates the position of the workpiece when the belt 6 is not meandering from the output of the first encoder 12. The position correction calculation unit 43 uses the correction value to correct the coordinates at which the workpiece is located.

[0070] The row number of the section 21r through which the work passes is CamX, and the column number is CamY. The position of the work in the first direction 9 obtained from the first encoder 12 is CnvX. The position of the work in the first direction 9 before correction is RbXb, and the position of the work after correction is RbXa. This is expressed as RbXa = RbXb + FX (CamX, CamY, CnvX). The position of the work in the second direction 19 before correction is RbYb, and the position of the work after correction is RbYa. This is expressed as RbYa = RbYb + FY (CamX, CamY, CnvX). Next, proceed to step S14.

[0071] In step S14, the actuator 17 moves to the workpiece. The robot control unit 37 moves the actuator 17 to the corrected coordinates (RbXa, RbYa). Next, the process proceeds to step S15.

[0072] In step S15, the actuator 17 performs a task. For example, the actuator 17 picks up a workpiece. In this manner, the robot 15 corrects the position information of the workpiece with the correction value, and performs a task on the workpiece using the corrected position information of the workpiece.

[0073] Fig. 10 is a diagram corresponding to step S12. As shown in Fig. 10, the second detection unit 42 detects the section 21r through which the workpiece 46 as an object passes. For example, the workpiece 46 passes through the section 21r in the third row 21c and the second column 21j.

[0074] 11 is a diagram corresponding to step S14. As shown in FIG 11, the workpiece 46 is transported by the belt 6 and moves in the first direction 9. The actuator 17 moves toward the workpiece 46.

[0075] Since the position of the workpiece 46, which is the target position of the actuator 17, is corrected for the amount of deviation of the belt 6, the actuator 17 can reach the workpiece 46 with good positional accuracy.

[0076] According to the belt conveyor calibration method, the configuration of the robot system 1, and the program 33, the marker 23 conveyed by the belt 6 is detected as passing through the predetermined section 21r. Then, the second camera 18 tracks the marker 23. Thus, the trajectory of the marker 23 moving through the predetermined section 21r is measured. The belt 6 is equipped with a first encoder 12, and the position of the marker 23 is estimated from the amount of movement of the belt 6. The estimated movement of the marker 23 proceeds along a straight line. Meanwhile, the measured trajectory of the marker 23 includes the influence of meandering of the belt 6, etc. The difference between the measured trajectory of the marker 23 and the estimated trajectory of movement is stored as a correction value.

[0077] When the workpiece 46 passing through the predetermined section 21r instead of the marker 23 is transported on the belt 6, the robot 15 can use the correction value to accurately estimate the trajectory along which the workpiece 46 moves. In other words, the position of the workpiece 46 can be accurately grasped, including the effect of the meandering of the belt 6.

[0078] One method for measuring the trajectory of the movement of the marker 23 is to use the actuator 17 of the robot 15. The belt 6 is intermittently operated, the actuator 17 of the robot 15 comes into contact with the marker 23, and the robot 15 measures the position of the marker 23. In other words, the robot 15 measures the trajectory of the marker 23 by using the robot 15 as a three-dimensional measuring device. Compared to this method, the method using the first camera 13 and the second camera 18 is more productive and can calculate a correction value because it can measure the position of the marker 23 while continuously driving the belt 6. Therefore, it is possible to provide a method for efficiently measuring meandering caused by deflection of the belt 6, etc.

[0079] According to this robot control method, the position of the workpiece 46 is corrected using the correction value, so the robot 15 accurately estimates the position of the workpiece 46. Therefore, the robot 15 works on the workpiece 46 whose position is recognized with high accuracy, so that the planned work can be performed with high quality.

[0080] Second embodiment In the first embodiment, an approximate correction formula is calculated based on the matrix of the section 21r that has passed through the first shooting region 21 and the position in the second direction 19. The position in the first direction 9 may be divided into a plurality of sections, and a correction value for each section may be calculated.

[0081] 12, a motion range 49 in which the robot 15 can move the actuator 17 in the first direction 9 is divided into seven sections. Each motion range 49 is made up of a first section 49a to a seventh section 49g. In step S5, the correction value calculation unit 41 calculates data on the average value of the positional deviation from the center of the second photographing area 22, which is the photographing range, in each section. The data on the average value of the positional deviation is stored in the memory 25 as a part of the belt measurement data 34.

[0082] The belt measurement data 34 in the memory 25 stores a table of average value data of the first section 49a to the seventh section 49g in each section 21r of the first shooting area 21. The average value data in this table becomes the correction value. The table of average value data sets the correction value for the marker 23 that has passed through each of the 49 sections 21r of the first shooting area 21. The first section 49a to the seventh section 49g are designated CnvL. The parameters of the correction value for the amount of deviation in the first direction 9 are CamX, CamY, and CnvL. The parameters of the amount of deviation in the second direction 19 are also CamX, CamY, and CnvL.

[0083] 13, the workpiece 46 is transported by the belt 6. In step S12, the second detection unit 42 detects the section 21r in the first photographing area 21 through which the workpiece 46 passes, among the sections 21r in the first photographing area 21. In step S13, the position correction calculation unit 43 acquires, from the memory 25, a correction value corresponding to the section 21r in the first photographing area 21 through which the workpiece 46 passes. The memory 25 stores a table of correction value data.

[0084] The work position calculation unit 44 calculates the position of the work when the belt 6 is not meandering from the output of the first encoder 12. The position correction calculation unit 43 corrects the coordinates where the work 46 is located using a correction value corresponding to CnvL. For example, when the work 46 is in the fourth section 49d, the position correction calculation unit 43 refers to the correction value for the fourth section 49d from the table. In step S14, the actuator 17 moves to the work 46. In step S15, the actuator 17 performs work. Therefore, even if the correction values ​​are stored in a table, it is possible to provide a belt conveyor calibration method that efficiently measures meandering caused by deflection of the belt 6, and a robot control method in which the robot 15 works using the correction values. [Explanation of symbols]

[0085] 3...conveyor belt, 6...belt, 13...first camera, 15...robot, 15b...control device as control unit, 15c...arm, 17...actuator as hand, 18...second camera, 21...first shooting area as shooting area, 23...marker, 24...CPU as computer, 25...memory as storage unit, 33...program, 37...robot control unit as operation control means, 39...first detection unit as first detection means, 41...correction value calculation unit as correction value calculation means, 42...second detection unit as second detection means, 43...position correction calculation unit as correction means, 46...work as target object.

Claims

1. The conveyor belt transports the markers, A first camera photographs the marker; Among a plurality of sections obtained by dividing the photographing area of ​​the first camera from the photographed image of the first camera, detecting the marker passing through one of the sections; As the robot moves the second camera, the second camera tracks the detected marker. I followed suit and took photos. The position of the marker estimated from the conveyance amount of the belt and the image of the marker captured while tracking the position of the marker are Calculating and storing a correction value which is a difference between the position of the marker detected from the image of the car and the position of the marker; The marker passing through each of the plurality of sections is detected by the second camera. and calculating the correction value by a camera that follows the conveyor. Method of application.

2. 2. The belt conveyor calibration method according to claim 1, A belt conveyor characterized in that the number of the plurality of sections can be changed by an operator. Calibration methods.

3. The belt conveyor calibration method according to claim 1 or 2 is used to calculate the correction value. Calculate and store in the memory unit, When the robot performs an operation on an object on the belt, the first camera Photographed the A section through which the object passes is detected from among the plurality of sections; acquiring, from the storage unit, the correction value corresponding to a section through which the object passes; The robot corrects the position information of the object with the correction value, and calculates the corrected position of the object. A robot control method comprising the steps of: performing a task on the object by using position information;

4. a belt conveyor having a conveying belt and conveying the markers and the objects; a robot whose motion range includes the belt; a first camera for photographing the markers and the object on the belt; Attached to the arm or hand of the robot and follows the marker on the belt. A second camera for taking pictures; A control unit that controls the operation of the robot and has a memory unit, The control unit is The first camera is photographed by dividing a photographing area into a plurality of sections, and the first camera passes through one of the sections. Detect the camera and The position of the marker estimated from the conveyance amount of the belt and the image of the marker captured while tracking the position of the marker are A correction value, which is a difference between the position of the marker detected from the image of the car, is calculated and stored in the memory. Remember, When the robot performs an operation on the object on the belt, causing the first camera to photograph the object; A section through which the object passes is detected from among the plurality of sections; The correction value corresponding to the section through which the object passes, the correction value corresponding to the section through which the object passes from the storage unit, The position information of the object is corrected by the correction value, and the corrected position information of the object is used causing the robot to perform a task on the object; The marker passing through each of the plurality of sections is detected by the second camera. The robot system is characterized in that the camera follows the object, takes photos, and calculates the correction value.

5. a belt conveyor along which the belt transports the markers and the objects; a robot whose motion range includes the belt; a first camera for photographing the markers and the object on the belt; A second camera is moved by the robot to follow and photograph the marker on the belt. Mela and A robot system including a control unit that controls the operation of the robot and has a memory unit. A computer included in the control unit of the robot, The first camera is photographed by dividing a photographing area into a plurality of sections, and the first camera passes through one of the sections. A first detection means for detecting a target; The position of the marker estimated from the conveyance amount of the belt and the image of the marker captured while tracking the position of the marker are A correction value, which is a difference between the position of the marker detected from the image of the car, is calculated and stored. A value calculation means; When the robot performs an operation on the object on the belt, the first camera An image including the photographed object is input, and a section through which the object passes is selected from among the plurality of sections. A second detection means for detecting the partition; The correction value corresponding to the section through which the object passing through the detected section passes is stored. a correction means for acquiring position information of the object from the position information acquisition unit and correcting the position information of the object with the correction value; The robot performs a task on the object using the corrected position information of the object. and a control means for controlling the movement of the The correction value calculation means is configured to calculate the correction value of the The second camera follows and photographs the marker, and calculates the correction value. Program.

Citation Information

Patent Citations

  • Simulation device and simulation method

    CN107015530B

  • Picking device

    JP2004001122A

  • Robot control device

    JP2015174171A

  • Work system, method for implementing work on article and robot

    JP2019072792A

  • Conveyor tracking system and calibration method

    JP2019141935A