CN117621044A - Control method and robot system - Google Patents
Control method and robot system Download PDFInfo
- Publication number
- CN117621044A CN117621044A CN202311110663.4A CN202311110663A CN117621044A CN 117621044 A CN117621044 A CN 117621044A CN 202311110663 A CN202311110663 A CN 202311110663A CN 117621044 A CN117621044 A CN 117621044A
- Authority
- CN
- China
- Prior art keywords
- control
- coordinate system
- robot
- conversion function
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000006243 chemical reaction Methods 0.000 claims abstract description 107
- 238000012545 processing Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 86
- 238000010586 diagram Methods 0.000 description 16
- 230000007246 mechanism Effects 0.000 description 7
- 239000012636 effector Substances 0.000 description 6
- 102100026533 Cytochrome P450 1A2 Human genes 0.000 description 5
- 101000855342 Homo sapiens Cytochrome P450 1A2 Proteins 0.000 description 5
- 101710201952 Photosystem II 22 kDa protein, chloroplastic Proteins 0.000 description 5
- 102100021941 Sorcin Human genes 0.000 description 5
- 102100027518 1,25-dihydroxyvitamin D(3) 24-hydroxylase, mitochondrial Human genes 0.000 description 4
- 101000849787 Brucella melitensis biotype 1 (strain 16M / ATCC 23456 / NCTC 10094) Ribosome-recycling factor Proteins 0.000 description 4
- 102100031476 Cytochrome P450 1A1 Human genes 0.000 description 4
- 101000861278 Homo sapiens 1,25-dihydroxyvitamin D(3) 24-hydroxylase, mitochondrial Proteins 0.000 description 4
- 101000941690 Homo sapiens Cytochrome P450 1A1 Proteins 0.000 description 4
- 101000741271 Sorghum bicolor Phosphoenolpyruvate carboxylase 1 Proteins 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- -1 CP23 Chemical compound 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000001747 exhibiting effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Landscapes
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
The invention provides a control method with high position accuracy and a robot system. The control method is a control method of determining a control position of the robot with respect to a target position, including: a real reference position obtaining step of obtaining real reference positions in an ideal coordinate system of three or more points; a first control reference position acquisition step of acquiring a first control reference position in a first robot control coordinate system when a control point of the robot is located at each real reference position; a first conversion function obtaining step of obtaining a first conversion function according to the real reference position and the first control reference position, wherein the first conversion function is used for converting the control position in the first robot control coordinate system into a target position in an ideal coordinate system; and a control position determining step of converting the control position in the first robot control coordinate system into a target position in the ideal coordinate system using the first conversion function, and determining a new control position according to the target position.
Description
Technical Field
The invention relates to a control method and a robot system.
Background
For example, the robot system described in patent document 1 has the following configuration: a plurality of operation origins are set in a real coordinate system, measurement positions are acquired for the plurality of operation origins based on a photographed image of a camera, and positional information of each operation origin is corrected based on the measurement positions, thereby improving the operation accuracy of the robot.
Patent document 1: japanese patent application laid-open No. 2018-134695
In addition to a method of converting a target position in a real coordinate system into a robot control coordinate system to determine a control position as in patent literature 1, there is a method of directly specifying a control position in a robot control coordinate system as in direct teaching. Hereinafter, for convenience of explanation, the former method is also referred to as a first determination method, and the latter method is also referred to as a second determination method.
Here, when the robot control coordinate system changes with a change in the mechanism parameter due to maintenance or the like after the control position in the first robot control coordinate system is determined, the determined control position must be corrected to a value corresponding to the new robot control coordinate system. In the case where the control position is determined by the first determination method, a new control position can be determined by converting the target position in the real coordinate system into the second robot control coordinate system.
In contrast, in the case where the control position is determined by the second determination method, the target position in the real coordinate system corresponding to the control position is not present, and therefore, conversion to the second robot control coordinate system cannot be performed by the same method as the first determination method. Therefore, there is a possibility that improvement of operation accuracy cannot be achieved.
Disclosure of Invention
The control method of the present invention is a control method for determining a control position of a robot with respect to a target position, including: a real reference position obtaining step of obtaining real reference positions in an ideal coordinate system of three or more points; a first control reference position obtaining step of obtaining a first control reference position in a first robot control coordinate system when a control point of the robot is located at each of the real reference positions; a first conversion function obtaining step of obtaining a first conversion function based on the real reference position and the first control reference position, the first conversion function representing a correspondence between the control position in the first robot control coordinate system and the target position in the ideal coordinate system; and a control position determining step of converting the control position in the first robot control coordinate system into the target position in the ideal coordinate system using the first conversion function, and determining a new control position based on the target position.
The robot system of the present invention includes a robot and a control device that controls driving of the robot, wherein the control device determines a control position of the robot with respect to a target position, and the control device acquires a true reference position in an ideal coordinate system of three or more points; acquiring a first control reference position in a first robot control coordinate system when the control point of the robot is positioned at each real reference position; acquiring a first conversion function representing a correspondence relationship between the control position in the first robot control coordinate system and the target position in the ideal coordinate system based on the real reference position and the first control reference position; and converting the control position in the first robot control coordinate system to the target position in the ideal coordinate system using the first conversion function, and determining a new control position based on the target position.
Drawings
Fig. 1 is a configuration diagram of a robot system according to a preferred embodiment.
Fig. 2 is a diagram showing a method of using the stand.
Fig. 3 is a diagram showing a modification of the stand.
Fig. 4 is a block diagram of the control device.
Fig. 5 is a diagram showing an error in position control of the robot.
Fig. 6 is a flowchart showing a control method.
Fig. 7 is a diagram showing an example of robot operation.
Fig. 8 is a diagram showing a graph for controlling position determination.
Fig. 9 is a diagram showing a graph for controlling position determination.
Fig. 10 is a diagram showing a graph for controlling position determination.
Description of the reference numerals
10 robot system, 2 robot, 21 base, 22 robot arm, 221 arm, 222 arm, 223 arm, 224 arm, 225 arm, 226 arm, 23 end effector, 3 control device, 31 processor, 310 control position determining section, 32 memory, 33 interface circuit, 34 input device, 35 display section, 5 stand, 51 positioning jig, 53 positioning jig, 531 substrate, 532 wall section, 54 positioning auxiliary, CD control position correction data, CP1 first control reference position, CP11 first control reference position, CP12 first control reference position, CP13 first control reference position, CP14 first control reference position, CP2 second control reference position, CP21 second control reference position, CP22 second control reference position, CP23 second control reference position, the method comprises the steps of a CP24 second control reference position, a G graph, a G1 graph, a G2 graph, a J1 joint, a J2 joint, a J3 joint, a J4 joint, a J5 joint, a J6 joint, an MP action program, an RP true reference position, an RP1 true reference position, an RP2 true reference position, an RP3 true reference position, an RP4 true reference position obtaining step, an S1 true reference position obtaining step, an S2 first control reference position obtaining step, an S3 first conversion function obtaining step, an S4 target position and other obtaining step, an S5 first control position determining step, an S6 robot control coordinate system confirming step, an S7 second control reference position obtaining step, an S8 second conversion function obtaining step, an S9 second control position determining step, an S10 robot control step and a TCP control point.
Detailed Description
The control method and the robot system according to the present invention will be described in detail below with reference to the embodiments shown in the drawings.
Fig. 1 is a configuration diagram of a robot system according to a preferred embodiment. Fig. 2 is a diagram showing a method of using the stand. Fig. 3 is a diagram showing a modification of the stand. Fig. 4 is a block diagram of the control device. Fig. 5 is a diagram showing an error in position control of the robot. Fig. 6 is a flowchart showing a control method. Fig. 7 is a diagram showing an example of robot operation. Fig. 8 to 10 are diagrams showing graphs for controlling position determination, respectively.
The robot system 1 shown in fig. 1 includes a robot 2, a control device 3 that controls driving of the robot 2, and a gantry 5. Fig. 1 illustrates three axes of an orthogonal coordinate system defining a three-dimensional space, that is, an X axis, a Y axis, and a Z axis. The X-axis and the Y-axis are axes in the horizontal direction, and the Z-axis is an axis in the vertical direction. Hereinafter, this three-dimensional space (real space) is also referred to as an "ideal coordinate system".
As shown in fig. 1, the robot 2 is a six-axis vertical multi-joint robot having six drive axes. The robot 2 includes a base 21, a robot arm 22 rotatably coupled to the base 21, and an end effector 23 attached to a distal end of the robot arm 22. The robot arm 22 is a robot arm to which a plurality of arms 221, 222, 223, 224, 225, 226 are rotatably coupled, and includes six joints J1, J2, J3, J4, J5, J6. The joints J2, J3, and J5 among the six joints J1 to J6 are bending joints, and the joints J1, J4, and J6 are torsion joints.
The joints J1, J2, J3, J4, J5, and J6 are respectively provided with a motor and an encoder, not shown. During operation of the robot system 1, the control device 3 performs servo control (feedback control) for matching the rotation angle of the joint indicated by the output of the encoder with the control position for each joint J1 to J6. This enables the robot 2 to take a desired posture.
The end effector 23 may be appropriately selected according to the work to be performed by the robot 2. A control point TCP of the robot 2 is set at the tip end portion of the end effector 23. The position of the control point TCP can be arbitrarily set, but in order to determine the position of the control point TCP using a positioning jig 51 described later, it is preferable to set the control point TCP at the tip end portion of the end effector 23 as in the present embodiment.
Although the robot 2 has been described above, the configuration of the robot 2 is not particularly limited. For example, a SCARA robot (horizontal multi-joint robot), a double-arm robot having two robot arms 22, or the like may be used. Further, the robot may be a self-propelled robot in which the base 21 is not fixed.
The mount 5 is used when acquiring the first conversion function and the second conversion function for reducing the positional deviation of the robot 2, and is not used during the robot work.
To briefly explain the positional deviation of the robot 2, in the robot system 1, the control device 3 controls the driving of the robot 2 based on a target position received from a host computer or the like, not shown. Specifically, the control device 3 calculates the position of the control point TCP based on the length of each arm 221 to 226, the origin of the rotation axis of each joint J1 to J6, the parallelism and orthogonality of each joint J1 to J6, and other designed mechanism parameters, and controls the driving of the robot 2 so that the control point TCP coincides with the target position.
However, there are cases where actual mechanism parameters deviate from designed mechanism parameters due to component variations, assembly variations, and the like. In this way, when the actual mechanism parameter is deviated, the calculated position of the control point TCP is deviated from the actual position of the control point TCP, and therefore, even if the control point TCP is brought into agreement with the target position in control, the control point TCP is deviated from the target position in practice. This deviation is also referred to as "error in position control" hereinafter.
Therefore, in the robot system 1, a conversion function is configured to be acquired, the conversion function representing a correspondence relationship between the ideal coordinate system and the robot control coordinate system, and to reduce an error in position control. The stand 5 is a prop for acquiring the conversion function. As shown in fig. 1, the stand 5 has four positioning jigs 51. Each positioning jig 51 is a jig used for positioning the control point TCP. The number of the positioning jigs 51 is not particularly limited as long as it is three or more.
In addition, a true reference position RP is set at the tip of the positioning jig 51. The three-dimensional positional relationship between the true reference positions RP of the positioning jigs 51 in the ideal coordinate system is measured in advance. Further, as shown in fig. 2, by bringing the control point TCP of the robot 2 into contact with the real reference position RP, the control position in the robot control coordinate system at this time can be acquired as the control reference position corresponding to the real reference position RP.
The positioning jig is not particularly limited, and for example, a positioning jig 53 as shown in fig. 3 may be used. The positioning jig 53 includes a flat plate-shaped substrate 531 and an L-shaped wall portion 532 provided on the substrate 531. The wall portion 532 is bent at a right angle, and a true reference position RP is set at a point where the bent portion of the wall portion 532 contacts the surface of the substrate 531. On the other hand, a positioning auxiliary 54 is connected to the distal end of the robot arm 22. The positioning auxiliary 54 has a rectangular parallelepiped shape, and a control point TCP is set at the apex of the bottom surface thereof.
By bringing the control point TCP into contact with the true reference position RP of the positioning jig 53, the control position of the robot control coordinate system at this time can be acquired as a control reference position corresponding to the true reference position RP. In addition, since the posture of the control point TCP of the robot 2 is uniquely determined even in a state where the positioning jig 53 and the positioning auxiliary 54 are in contact with each other in three planes, the control posture of the robot control coordinate system at this time can be acquired as the control reference posture corresponding to the true posture at the true reference position RP.
The three-dimensional measuring instrument may be used to acquire the actual reference position and the control reference position of the robot control coordinate system, instead of the positioning jigs 51 and 53 described above. In this case, first, the control point TCP of the robot 2 is positioned using the control reference position of the robot control coordinate system, and in this state, the three-dimensional position in the ideal coordinate system of the control point TCP is measured by the three-dimensional position measuring device and set as the real reference position RP.
The control device 3 controls the driving of the robot 2. As shown in fig. 4, the control device 3 is configured by, for example, a computer, and includes a processor 31, a memory 32, an interface circuit 33, an input device 34 connected to the interface circuit 33, and a display unit 35.
The processor 31 functions as a control position determining unit 310 that determines the control position of the robot 2. The function of controlling the position determining section 310 is realized by the processor 31 executing a computer program stored in the memory 32. However, a part or all of the functions of the control position determining unit 310 may be realized by a hardware circuit.
The memory 32 stores control position correction data CD and an operation program MP. The control position correction data CD includes a pattern G, first and second conversion functions a11, a12, and A2, which will be described later. The operation program MP is composed of a plurality of operation commands for operating the robot 2.
Next, the error in the position control of the robot 2 will be described with reference to fig. 5. The control position in the robot control coordinate system is shown on the left side of fig. 5, and the error of the position control in the ideal coordinate system is shown on the right side. The "robot control coordinate system" refers to a coordinate system representing the position and orientation of the robot 2 used for controlling the operation command of the robot 2.
In the example shown in fig. 5, assuming a state in which control positions are set at 30mm intervals in the X-direction and the Y-direction in the robot control coordinate system, an arrow drawn in the ideal coordinate system shows an error in position control. That is, the start point of the arrow is the target position, and the front side of the arrow is the control point TCP containing an error. However, for ease of illustration, the error amount is enlarged 200 times to draw the length of the arrow.
In order to reduce such errors in position control, conventionally, the following method has been used: the target position in the ideal coordinate system is converted into a control position in the robot control coordinate system using a conversion coefficient or the like, and the driving of the robot 2 is controlled based on the control position.
However, in such a method, the following problems occur. As described above, the actual mechanical parameters such as the length of each arm 221 to 226, the origin of the rotation axis of each joint J1 to J6, the parallelism and the orthogonality of each joint J1 to J6 deviate from the designed mechanical parameters, and thus, a deviation occurs between the robot control coordinate system and the ideal coordinate system. In the case where the joints J1 to J6 and the arms 221 to 226 are replaced, there is a possibility that the mechanism parameters may be changed due to the environmental temperature or the like when the installation site of the robot 2 is changed or when the end effector 23 is changed. Thus, when the mechanism parameters change, the robot control coordinate system also changes. Hereinafter, for convenience of explanation, the robot control coordinate system before the change is also referred to as a first robot control coordinate system, and the robot control coordinate system after the change is also referred to as a second robot control coordinate system.
Here, in the method for determining the control position in the robot control coordinate system, there is a method for directly setting the control position in the robot control coordinate system as in the direct teaching, in addition to a method for converting the target position in the ideal coordinate system into the control position in the robot control coordinate system. Hereinafter, for convenience of explanation, the former method is also referred to as a first determination method, and the latter method is also referred to as a second determination method.
When the robot control coordinate system is changed from the first robot control coordinate system to the second robot control coordinate system due to the above-described various factors after the control position in the first robot control coordinate system is determined by such a method, an error in position control occurs if the driving of the robot 2 is controlled based on the control position as it is, that is, the control position in the first robot control coordinate system. Therefore, the control position in the first robot control coordinate system must be corrected to the control position in the second robot control coordinate system.
In the case where the control position is determined by the first determination method, the control position has the target position in the ideal coordinate system, and therefore, if the target position is converted into the control position in the second robot control coordinate system, a new control position in the second robot control coordinate system can be determined. In contrast, in the case where the control position is determined by the second determination method, the control position does not have the target position in the ideal coordinate system, and therefore, conversion to the second robot control coordinate system cannot be performed using the same method as the first determination method. Therefore, the robot system 1 is configured to: even in the case where the control position is determined by the second determination method, a new control position in the second robot control coordinate system can be determined by the same method as the first determination method. Thus, errors in position control can be effectively reduced. The control device 3 will be described below as a control method of the robot 2.
As shown in fig. 6, the control method of the robot 2 includes a real reference position acquisition step S1, a first control reference position acquisition step S2, a first transfer function acquisition step S3, a target position and the like acquisition step S4, a first control position determination step S5, a robot control coordinate system confirmation step S6, a second control reference position acquisition step S7, a second transfer function acquisition step S8, a second control position determination step S9, and a robot control step S10. These steps S1 to S10 will be described in order.
True reference position acquisition step S1
In the true reference position acquisition step S1, the control position determining section 310 acquires the true reference position RP in the ideal coordinate system of three or more points. As described above, in the present embodiment, the stand 5 has four positioning jigs 51, and the true reference position RP is set at the tip thereof. Therefore, in the present embodiment, as shown in fig. 7, the control position determining unit 310 acquires four real reference positions RP1, RP2, RP3, RP4.
A first control reference position acquisition step S2
In the first control reference position acquisition step S2, the control position determination unit 310 acquires the first control reference position CP1 in the first robot control coordinate system when the control point TCP is located at the real reference position RP. Specifically, first, the control position determining unit 310 positions the control point TCP at the true reference position RP1. Next, the control position determining unit 310 acquires the first control reference position CP11, which is the position of the control point TCP in the first robot control coordinate system when the control point TCP is located at the real reference position RP1. The control position determining unit 310 performs the same operation for the other real reference positions RP2, RP3, RP4, and acquires the first control reference positions CP12, CP13, CP14. By the above operation, the control position determining unit 310 acquires four first control reference positions CP11, CP12, CP13, CP14.
A first conversion function acquisition step S3
In the first conversion function obtaining step S3, first, as shown in fig. 8, the control position determining unit 310 sets a graph G of a triangle having three real reference positions RP as vertices in an ideal coordinate system. In the real reference position acquisition step S1, since the four real reference positions RP1 to RP4 are acquired as described above, in the present embodiment, the area surrounded by the four real reference positions RP1 to RP4 is divided into two triangular graphics G1, G2. As the subdivision method, for example, any subdivision method such as a dironi triangle subdivision may be used.
Next, as shown in fig. 9, the control position determining unit 310 obtains a first conversion function indicating a correspondence relation between the target position and the control position in each of the graphics G1 and G2. The control position determining unit 310 obtains, as a first conversion function, a first conversion function a11 and a first conversion function a12, the first conversion function a11 being a function of converting the target position in the ideal coordinate system into the control position in the robot control coordinate system, and the first conversion function a12 being a function of converting the control position in the robot control coordinate system into the target position in the ideal coordinate system. The first conversion function a12 is an inverse conversion function of the first conversion function a 11.
The first conversion function a11 in the graph G1 is obtained based on the differences between the vertices of the graph G1, that is, the true reference positions RP1, RP2, RP3, and the first control reference positions CP11, CP12, CP13 corresponding to them. The first conversion function a11 in the graph G2 is obtained based on the differences between the vertices of the graph G2, that is, the actual reference positions RP2, RP3, RP4, and the first control reference positions CP12, CP13, CP14 corresponding to the actual reference positions RP2, RP3, RP4. The first conversion function a12 can be obtained from the obtained first conversion function a 11. The first conversion functions a11, a12 can be expressed by the following equations, respectively.
Pctrl=A11·Preal……(1)
Preal=A12·Pctrl……(5)
Where Pctrl is the control position in the first robot control coordinate system and Preal is the target position in the ideal coordinate system. In addition, xctrl is an X-coordinate of a control position in the first robot control coordinate system, and Yctrl is a Y-coordinate of a control position in the first robot control coordinate system. In addition, xreal is an X coordinate of the target position in the ideal coordinate system, and Yreal is a Y coordinate of the target position in the ideal coordinate system. A11 and a12 are first conversion functions, and are conversion formulas representing affine conversion. A11, a12, a21, a22, b1, b2 are coefficients, and are different from each other according to the first conversion functions a11, a12 and the graphs G1, G2. By using such a first conversion function a11, the target position Preal can be easily and highly accurately converted into the control position Pctrl. In addition, by using the first conversion function a12, the control position Pctrl can be easily and highly accurately converted into the target position Preal.
The conversion using such first conversion functions a11 and a12 is coordinate conversion operation based on a method other than parallel movement and rotational movement.
Note that the shape of the graph G may not be a triangle, and the first conversion function may not be affine conversion. For example, the graph G may be a quadrangle, and the first conversion function may be projection conversion. Alternatively, the first conversion function may be changed for each pattern G by dividing the first conversion function into a state in which a plurality of polygons are mixed. The pattern G may be a stereoscopic pattern. The first conversion function may be configured as a conversion formula, or may be configured in another form such as a lookup table.
Target position and the like acquisition step S4
In the target position or the like acquisition step S4, the control position determination unit 310 receives an input of the target position or the control position of the control point TCP. The target position can be input by the operator as a position in the ideal coordinate system using the input device 34, for example. The control position can be input directly as a position in the robot control coordinate system by the operator through direct teaching or the like, for example. When the operator creates the operation program MP and the target position and the control position of the control point TCP are described in the operation instruction in the operation program MP, the control position determining unit 310 may execute this step by acquiring the target position and the control position included in the operation instruction of the operation program MP.
The following description will be given by taking the following cases as examples: as shown in table 1 below, the target positions Q1, Q2 and the control position P3 are received, and the robot operation for one turn in the order of the target position Q1, the target position Q2 and the control position P3 is set as one cycle, and the cycle is repeated a predetermined number of times.
TABLE 1
First control position determining step S5
In the first control position determining step S5, the control position determining unit 310 performs the following processing for the target positions Q1, Q2. The control position determining unit 310 first selects a target pattern including the target position Q1 from the patterns G1 and G2. Next, the control position determining unit 310 calculates a control position in the first robot control coordinate system with respect to the target position Q1 using the first conversion function a11 corresponding to the selected target pattern. If the target position Q1 is located within the graph G1, the control position in the first robot control coordinate system with respect to the target position Q1 is calculated using the first conversion function a11 corresponding to the graph G1. If the target position Q1 is located within the graph G2, the control position in the first robot control coordinate system with respect to the target position Q1 is calculated using the first conversion function a11 corresponding to the graph G2. In this case, for example, by using the above formula (1), the coordinate value of the target position Q1 is input to Preal, and Pctrl can be calculated as the control position with respect to the target position Q1.
Similarly, the control position determining unit 310 first selects a target pattern including the target position Q2 from the patterns G1 and G2. Next, the control position determining unit 310 calculates a control position in the first robot control coordinate system with respect to the target position Q2 using the first conversion function a11 corresponding to the selected target pattern. If the target position Q2 is located in the graph G1, the control position in the first robot control coordinate system with respect to the target position Q2 is calculated using the first conversion function a11 corresponding to the graph G1. If the target position Q2 is located within the graph G2, the control position in the first robot control coordinate system with respect to the target position Q2 is calculated using the first conversion function a11 corresponding to the graph G2. In this case, for example, by using the above formula (1), the coordinate value of the target position Q2 is input to Preal, and Pctrl can be calculated as the control position with respect to the target position Q2.
From the above, as shown in table 2 below, control positions P1, P2 in the first robot control coordinate system of the target positions Q1, Q2 are obtained.
TABLE 2
Next, the control position determining unit 310 creates an operation command using the control positions P1 and P2 in the first robot control coordinate system of the target positions Q1 and Q2 calculated by the above method, and the control position P3 obtained in step S4, such as the target position. In the case where the operation program MP including the operation instruction is created in advance, the process can be executed by replacing the target position included in the operation instruction with the control position determined as described above.
Step S6 of confirming robot control coordinate system
In the robot control coordinate system confirmation step S6, the control position determining unit 310 confirms whether the robot control coordinate system is still the first robot control coordinate system. When the first robot control coordinate system is still present, the control position determining unit 310 proceeds to the robot control step S10. In contrast, when the robot control coordinate system is changed from the first robot control coordinate system to the second robot control coordinate system, the control position determining unit 310 proceeds to the second control reference position acquiring step S7.
Second control reference position acquisition step S7
In the second control reference position acquisition step S7, the control position determination section 310 acquires the second control reference position CP2 in the second robot control coordinate system when the control point TCP is located at the real reference position RP. Specifically, first, the control position determining unit 310 positions the control point TCP at the true reference position RP1. Next, as shown in fig. 10, the control position determining unit 310 acquires a second control reference position CP21, which is a position in the second robot control coordinate system of the control point TCP when the control point TCP is located at the real reference position RP1. The control position determining unit 310 performs the same operation for the other true reference positions RP2, RP3, RP4, and acquires the second control reference positions CP22, CP23, CP24. Through the above operation, the control position determining unit 310 acquires four second control reference positions CP21, CP22, CP23, CP24.
Second conversion function acquisition step S8
In the second conversion function acquisition step S8, as shown in fig. 10, the control position determination unit 310 obtains a second conversion function A2 indicating the correspondence relationship between the target position and the control position in each of the graphs G1 and G2. The second conversion function A2 in the graph G1 is obtained based on the differences between the vertices of the graph G1, that is, the true reference positions RP1, RP2, RP3, and the second control reference positions CP21, CP22, CP23 corresponding to the true reference positions RP1, RP2, RP 3. The second conversion function A2 in the graph G2 is obtained based on the differences between the vertices of the graph G2, that is, the true reference positions RP2, RP3, RP4, and the second control reference positions CP22, CP23, CP24 corresponding to the true reference positions RP2, RP3, RP4. The second conversion function A2 can be expressed by the following equation.
Pctrl=A2·Preal……(9)
Where Pctrl is the control position in the second robot control coordinate system and Preal is the target position in the ideal coordinate system. In addition, xctrl is an X-coordinate of a control position in the second robot control coordinate system, and Yctrl is a Y-coordinate of a control position in the second robot control coordinate system. In addition, xreal is an X coordinate of the target position in the ideal coordinate system, and Yreal is a Y coordinate of the target position in the ideal coordinate system. In addition, A2 is a second conversion function, and is a conversion formula representing affine conversion. A11, a12, a21, a22, b1, and b2 are coefficients, respectively, and are different from each other in accordance with graphs G1 and G2. These coefficients may be different from the coefficients used in the first conversion function a 11. By using such a second conversion function A2, the target position Preal can be easily and highly accurately converted into the control position Pctrl.
Second control position determining step S9
In the second control position determining step S9, the control positions in the second robot control coordinate system with respect to the target positions Q1, Q2 and the control position P3 received in the target position or the like acquiring step S4 are determined.
The control position determining unit 310 performs the following processing for the target positions Q1 and Q2. The control position determining unit 310 calculates the control position P10 in the second robot control coordinate system with respect to the target position Q1 using the second conversion function A2 corresponding to the graph G1, similarly to the first control position determining step S5. Similarly, the control position P20 in the second robot control coordinate system with respect to the target position Q2 is calculated using the second conversion function A2 corresponding to the graph G2. The results are shown in Table 3 below.
TABLE 3 Table 3
The control position determining unit 310 performs the following processing for the control position P3. As described above, the control position P3 is directly set in the first robot control coordinate system, and therefore, does not have the target position in the ideal coordinate system. Therefore, the control position determining unit 310 first obtains the target position Q3 in the ideal coordinate system of the control position P3 using the first conversion function a12. In this case, for example, by inputting the coordinate value of the control position P3 to Pctrl using the above equation (5), preal can be calculated as the target position Q3 in the ideal coordinate system.
Next, the control position determining unit 310 selects a target pattern including the target position Q3 from the patterns G1 and G2. Next, the control position determining unit 310 calculates a control position P30 in the second robot control coordinate system with respect to the target position Q3 using the second conversion function A2 corresponding to the selected target pattern. In this case, by using the above equation (9), the coordinate value of the target position Q3 is input to Preal, and Pctrl can be calculated as the control position P30. This allows the control position P30 in the second robot control coordinate system to be calculated with high accuracy. The results are shown in table 4 below.
TABLE 4 Table 4
Next, the control position determining unit 310 creates an operation command using the control positions P10, P20, and P30 in the second robot control coordinate system calculated by the above method. In the case where the operation program MP including the operation instruction is created in advance, the process can be executed by replacing the target position and the control position included in the operation instruction with the control position determined as described above. As described above, the target positions Q1, Q2 and the control position P3 are replaced with new control positions P10, P20, P30 in the second robot control coordinate system.
In addition to the case of directly converting the control position P3 in the first robot control coordinate system into the new control position P30 in the second robot control coordinate system as described above, a case of converting the control position P3 in the first robot control coordinate system into the new control position P30 in the second robot control coordinate system by relatively moving the control position P3 in the first robot control coordinate system is also conceivable. The relative movement herein includes, for example, parallel movement in the X-axis direction and the Y-axis direction, rotational movement about the Z-axis, and the like. In this case, the control position determining unit 310 first obtains the target position Q3 in the ideal coordinate system of the control position P3 using the first conversion function a12. Then, the relative movement amount is added to the target position Q3 to obtain a target position Q3'. Here, the relative movement amount means a movement amount from a predetermined position, and the calculation of the target position Q3 'by adding the relative movement amount to the target position Q3 means the calculation of the coordinate of the target position Q3' by adding the movement amount to the coordinate (x 3, y3, z 3) of the target position Q3. Then, the target position Q3' is converted into a control position P30 in the second robot control coordinate system using the second conversion function A2. By adding the relative movement amount to the target position Q3 instead of the control position P3 in this way, the control position P30 in the second robot control coordinate system can be calculated with high accuracy.
Robot control step S10
In the robot control step S10, the control position determining unit 310 controls the driving of the robot 2 using the latest operation program MP including the operation instruction created. When one cycle of the robot operation is completed, the control position determining unit 310 determines whether or not the robot operation has reached a predetermined number of times. If the driving of the robot 2 is stopped, if the driving is not achieved, the control coordinate system of the robot is returned to the confirmation step S6. Each time the robot control coordinate system is returned to the robot control coordinate system confirmation step S6, the current robot control coordinate system is changed to the first robot control coordinate system, and the changed robot control coordinate system is changed to the second robot control coordinate system.
According to the control method described above, the target position Q3 in the ideal coordinate system is calculated for the control position P3 directly set in the first robot control coordinate system. Therefore, the control position P3 can be also determined in the new robot control coordinate system by the same method as the target positions Q1 and Q2. Therefore, the robot system 1 is capable of effectively reducing errors in positional accuracy by a simple method and exhibiting excellent operation accuracy.
In addition, when the control position P3 in the first robot control coordinate system is not converted into the new control position P30 in the second robot control coordinate system and is relatively moved, it is also preferable to add a relative movement amount to the target position O3 in the ideal coordinate system. This is to prevent that if the relative movement amount is added to the first robot control coordinate system, the relative movement amount is different from the amount in the ideal coordinate system, and thus the desired relative movement amount cannot be obtained. Specifically, the target position Q3 in the ideal coordinate system of the control position P3 is obtained using the first conversion function a12. Then, the relative movement amount is added to the target position Q3 to obtain a target position Q3'. Then, the target position Q3 'is converted into a control position P3' in the first robot control coordinate system using the first conversion function a 11. In this way, by adding the relative movement amount to the target position Q3 instead of the control position P3, the relative movement amount can be added with high accuracy.
The robot system 1 is described above. As described above, the control method of such a robot system 1 is a control method of determining a control position of the robot 2 with respect to a target position, including: a real reference position obtaining step S1 of obtaining a real reference position RP in an ideal coordinate system with more than three points; a first control reference position acquisition step S2 of acquiring a first control reference position CP1 in a first robot control coordinate system when the control point TCP of the robot 2 is located at each real reference position RP; a first conversion function acquisition step S3 of acquiring a first conversion function a12 based on the real reference position RP and the first control reference position CP1, the first conversion function a12 representing a correspondence relationship between a control position in the first robot control coordinate system and a target position in the ideal coordinate system; and a second control position determining step S9 of converting the control position P3 in the first robot control coordinate system into a target position Q3 in the ideal coordinate system using the first conversion function a12, and determining a new control position P30 based on the target position Q3. According to such a control method, the control position P30 in the new robot control coordinate system can be determined by the same method as the target positions Q1 and Q2 set in the ideal coordinate system, with respect to the control position P3 set directly in the first robot control coordinate system. Therefore, the robot system 1 is capable of effectively reducing errors in positional accuracy by a simple method and exhibiting excellent operation accuracy.
In addition, as described above, the control position P3 in the first robot control coordinate system is directly set in the first robot control coordinate system. In this way, the control position P30 in the new robot control coordinate system can be determined by the same method as the target positions Q1 and Q2 even for the control position P3 having no target position in the ideal coordinate system. Therefore, calculation of the control position becomes easy.
As described above, when the robot control coordinate system in which the control position is set is changed from the first robot control coordinate system to the second robot control coordinate system, the second control position determining step S9 is preceded by: a second control reference position acquisition step S7 of acquiring a second control reference position CP2 in a second robot control coordinate system when the control point TCP is located at the true reference position RP; and a second conversion function acquisition step S8 of acquiring a second conversion function A2 of converting the target position in the ideal coordinate system into the control position in the second robot control coordinate system based on the real reference position RP and the second control reference position CP2, and in the second control position determination step S9, after converting the control position P3 in the first robot control coordinate system into the target position Q3 in the ideal coordinate system using the first conversion function a12, converting into a new control position P30 in the second robot control coordinate system using the second conversion function A2. This allows the control position P30 in the second robot control coordinate system to be calculated with high accuracy.
In addition, as described above, in the first control position determining step S5 or the second control position determining step S9, the control position P3 in the first robot control coordinate system is converted into the target position Q3 in the ideal coordinate system using the first conversion function a12, and the relative movement amount is added to the target position Q3, and then converted into the control position P3' in the first robot control coordinate system using the first conversion function a11 or converted into the new control position P30 in the second robot control coordinate system using the second conversion function A2. This allows the relative movement amount to be added with high accuracy.
As described above, in the first conversion function obtaining step S3, at least one graph G having three or more real reference positions RP as vertices is set in the ideal coordinate system, and the first conversion functions a11 and a12 indicating the correspondence between the target position and the control position in the graph G are obtained. This allows the control position in the first robot control coordinate system to be calculated with high accuracy.
In addition, as described above, the robot system 1 includes the robot 2 and the control device 3 that controls the driving of the robot 2, the control device 3 determines the control position of the robot 2 with respect to the target position, in this robot system 1, the control device 3 acquires the real reference position RP in the ideal coordinate system, acquires the first control reference position CP1 in the first robot control coordinate system when the control point TCP of the robot 2 is located at the real reference position RP, acquires the first conversion function a12 that indicates the correspondence relationship between the control position in the first robot control coordinate system and the target position in the ideal coordinate system based on the real reference position RP and the first control reference position CP1, converts the control position P3 in the first robot control coordinate system into the target position Q3 in the ideal coordinate system using the first conversion function a12, and determines the new control position P30 based on the target position Q3. With this configuration, the control position P30 in the new robot control coordinate system can be determined by the same method as the target positions Q1 and Q2 set in the ideal coordinate system, even for the control position P3 set directly in the first robot control coordinate system. Therefore, the robot system 1 is capable of effectively reducing errors in positional accuracy by a simple method and exhibiting excellent operation accuracy.
The control method and the robot system according to the present invention have been described above based on the illustrated embodiments, but the present invention is not limited to these. The constitution of each part may be replaced by an arbitrary constitution having the same function. In addition, any other structure may be added to the present invention.
Claims (6)
1. A control method characterized by determining a control position of a robot with respect to a target position, the control method comprising:
a real reference position obtaining step of obtaining real reference positions in an ideal coordinate system of three or more points;
a first control reference position obtaining step of obtaining a first control reference position in a first robot control coordinate system when a control point of the robot is located at each of the real reference positions;
a first conversion function obtaining step of obtaining a first conversion function based on the real reference position and the first control reference position, the first conversion function representing a correspondence between the control position in the first robot control coordinate system and the target position in the ideal coordinate system; and
a control position determining step of converting the control position in the first robot control coordinate system into the target position in the ideal coordinate system using the first conversion function, and determining a new control position based on the target position.
2. The control method according to claim 1, wherein,
the control position in the first robot control coordinate system is set directly in the first robot control coordinate system.
3. The control method according to claim 1, wherein,
when the robot control coordinate system for setting the control position is changed from the first robot control coordinate system to the second robot control coordinate system,
the control method includes, before the control position determining step:
a second control reference position acquisition step of acquiring a second control reference position in the second robot control coordinate system when the control point is located at the real reference position; and
a second conversion function obtaining step of obtaining a second conversion function based on the real reference position and the second control reference position, the second conversion function converting the target position in the ideal coordinate system to the control position in the second robot control coordinate system,
in the control position determining step, after converting the control position in the first robot control coordinate system to the target position in the ideal coordinate system using the first conversion function, the control position is converted to a new control position in the second robot control coordinate system using the second conversion function.
4. The control method according to claim 1, wherein,
in the control position determining step, a relative movement amount, which is a movement amount from a prescribed position, is added to the target position converted in the control position determining step, thereby determining a new control position.
5. The control method according to claim 1, wherein,
in the first conversion function obtaining step, at least one pattern having three or more of the real reference positions as vertices is set in the ideal coordinate system, and the first conversion function indicating the correspondence between the target position and the control position in the pattern is obtained.
6. A robot system comprising a robot and a control device for controlling driving of the robot, wherein the control device determines a control position of the robot with respect to a target position,
the control device
Acquiring real reference positions in an ideal coordinate system with more than three points;
acquiring a first control reference position in a first robot control coordinate system when the control point of the robot is positioned at each real reference position;
acquiring a first conversion function representing a correspondence relationship between the control position in the first robot control coordinate system and the target position in the ideal coordinate system based on the real reference position and the first control reference position; and, in addition, the processing unit,
the control position in the first robot control coordinate system is converted to the target position in the ideal coordinate system using the first conversion function, and a new control position is determined based on the target position.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022137619A JP2024033790A (en) | 2022-08-31 | 2022-08-31 | Control method and robot system |
JP2022-137619 | 2022-08-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117621044A true CN117621044A (en) | 2024-03-01 |
Family
ID=90022357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311110663.4A Pending CN117621044A (en) | 2022-08-31 | 2023-08-30 | Control method and robot system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024033790A (en) |
CN (1) | CN117621044A (en) |
-
2022
- 2022-08-31 JP JP2022137619A patent/JP2024033790A/en active Pending
-
2023
- 2023-08-30 CN CN202311110663.4A patent/CN117621044A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2024033790A (en) | 2024-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111331592B (en) | Mechanical arm tool center point correcting device and method and mechanical arm system | |
JP5670416B2 (en) | Robot system display device | |
EP1936458B1 (en) | Device, method, program and recording medium for robot offline programming | |
JP2005300230A (en) | Measuring instrument | |
JP3644991B2 (en) | Coordinate system coupling method in robot-sensor system | |
JP3326175B2 (en) | Method and apparatus for calibrating the motion axis of an industrial robot | |
US20230256615A1 (en) | Robot device controller for controlling position of robot | |
US7957834B2 (en) | Method for calculating rotation center point and axis of rotation, method for generating program, method for moving manipulator and positioning device, and robotic system | |
KR102243694B1 (en) | Method for restoring position information of robot | |
JP4345607B2 (en) | Rotation center calculation method and work positioning apparatus using this method | |
CN114670188B (en) | Method for determining control position of robot and robot system | |
CN117621044A (en) | Control method and robot system | |
King et al. | Vision guided robots for automated assembly | |
Cheng | The method of recovering robot TCP positions in industrial robot application programs | |
CN117584115A (en) | Control method and robot system | |
JP7384653B2 (en) | Control device for robot equipment that controls the position of the robot | |
TWI710441B (en) | Coordinate calibration method of manipulator | |
CN117584114A (en) | Control method and robot system | |
JP2012007934A (en) | Mobile object control system, program and mobile object control method | |
US20240066701A1 (en) | Simulation device using three-dimensional position information obtained from output from vision sensor | |
TWI746004B (en) | Origin calibration method of manipulator | |
JP2024102425A (en) | Correction method, correction system, and program | |
JP2024017442A (en) | Autonomous robot and calibration method thereof | |
JP2000033586A (en) | Error compensation method of robot and device thereof | |
CN113459084A (en) | Robot parameter calibration method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |