Apparatus, robot system, and method for determining the position of a recess to be formed by scraping
The robot system automates the determination of recess positions on a workpiece surface using shape and pattern information, improving the efficiency of scraping operations by simplifying setup processes.
Patent Information
- Application Number
- JP2022576675
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-01-22
- Filing Date
- 2022-01-17
- Publication Date
- 2025-11-12
- Estimated Expiration
- 2042-01-17
AI Technical Summary
Existing robot systems face challenges in efficiently forming multiple recesses on a workpiece surface through scraping, requiring improved methods for determining the positions of these recesses.
A robot system that includes an input receiving unit and a position determining unit to automatically determine the positions of recesses based on shape and pattern information, using a scraper to flatten the surface.
Simplifies the setup process for robot systems by enabling automatic determination of recess positions, enhancing the efficiency of scraping operations.
Smart Images

Figure 0007768905000002 
Figure 0007768905000003 
Figure 0007768905000004
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to an apparatus, a robot system, and a method for determining the location of a recess to be formed in the surface of a workpiece by scraping. [Background technology]
[0002] A robot that performs scraping processing is known (for example, Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2004-042164 Summary of the Invention [Problem to be solved by the invention]
[0004] In some cases, a robot is required to repeatedly perform scraping to form multiple recesses on the surface of a workpiece. There is a demand for a robot system that can perform such scraping more easily. [Means for solving the problem]
[0005] In one aspect of the present disclosure, an apparatus for determining the positions of multiple recesses to be formed on a surface of a workpiece by scraping, in which a robot scrapes the surface with a scraper to flatten the surface, includes an input receiving unit that receives input of shape information of the surface and pattern information of multiple recesses on the surface, and a position determining unit that automatically determines the position of each recess on the surface based on the shape information and pattern information received by the input receiving unit.
[0006] In another aspect of the present disclosure, a method for determining the positions of multiple recesses to be formed on a surface of a workpiece by scraping, in which a robot scrapes the surface with a scraper to flatten the surface, comprises a processor receiving input of shape information of the surface and pattern information of multiple recesses on the surface, and automatically determining the position of each recess on the surface based on the received shape information and pattern information. [Effects of the Invention]
[0007] According to the present disclosure, the position of a recess on the surface of a workpiece can be automatically determined, thereby simplifying the work involved in setting up a robot system for scraping. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a schematic diagram of a robot system according to an embodiment. [Figure 2] FIG. 2 is a block diagram of the robot system shown in FIG. [Figure 3] 2 is an enlarged view of the scraper shown in FIG. 1, as seen from the direction of arrow B in FIG. [Figure 4] This shows the scraper shown in Figure 1 pressed against the surface of the workpiece. [Figure 5] 1 shows an example of teaching points set on the surface of a workpiece. [Figure 6] 10A and 10B are diagrams for explaining a speed command as a position control command and a speed command as a force control command. [Figure 7] An example of the trajectory that the scraper actually moves during scraping is shown below. [Figure 8] The state of the scraper handle during scraping is shown schematically. [Figure 9] 10A and 10B show schematic diagrams of recesses formed by scraping. [Figure 10] 10A and 10B show schematic diagrams of recesses formed by scraping. [Figure 11] 1 shows an example of the shape of the surface of a workpiece. [Figure 12] 10 shows another example of the shape of the surface of the workpiece. [Figure 13] 10 shows yet another example of the shape of the surface of the workpiece. [Figure 14] Indicates the translation pattern specified by the pattern information. [Figure 15] Indicates the houndstooth pattern specified by the pattern information. [Figure 16] FIG. 10 is a diagram for explaining an angle set by angle information. [Figure 17] FIG. 10 is a diagram for explaining an offset distance set in offset information. [Figure 18] 10 shows an example in which the positions of a plurality of recesses are determined as a translational pattern. [Figure 19] 10 shows an example in which the positions of a plurality of recesses are determined in a staggered pattern. [Figure 20] An example is shown in which the positions of multiple recesses are determined as a translational pattern tilted at an angle of 45°. [Figure 21] 3 is a block diagram showing other functions of the control device 18 in the robot system shown in FIG. 2. FIG. [Figure 22] An example of the order in which the positions of the recesses are determined will be shown. [Figure 23] 22 is a flowchart showing an example of an operation flow of the robot system shown in FIG. 21. [Figure 24] 22 is a flowchart showing another example of the operation flow of the robot system shown in FIG. 21. [Figure 25] An example of the flow of step S27 in FIG. 24 is shown below. [Figure 26] FIG. 25 is a diagram for explaining step S21 in FIG. 24. [Figure 27] 25 is a diagram for explaining a method for determining the position of a recessed portion in the flow shown in FIG. 24. FIG. [Figure 28] 25 is a diagram for explaining a method for determining the position of a recessed portion in the flow shown in FIG. 24. FIG. [Figure 29] 25 is a diagram for explaining a method for determining the position of a recessed portion in the flow shown in FIG. 24. FIG. [Figure 30] All positions of the recesses determined by the flow shown in FIG. 24 are shown. [Figure 31] The positions of the recesses that are determined in the flow shown in FIG. 24 and that are not canceled are shown. [Figure 32] FIG. 10 is a diagram for explaining the position cancellation condition, showing a state in which the virtual occupation area of the recess whose position has been determined protrudes from the edge of the surface of the workpiece. [Figure 33] This shows the state in which a machining area is set on the surface of the workpiece. [Figure 34] This shows a state in which a non-machining area is set on the surface of the workpiece. [Figure 35] Another example of the trajectory that the scraper actually moves during scraping is shown below. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In the various embodiments described below, like elements will be designated by like reference numerals, and duplicated descriptions will be omitted. In the following description, the positive x-axis direction of a robot coordinate system C1 in the drawings will be referred to as the right, the positive y-axis direction as the front, and the positive z-axis direction as the up.
[0010] First, a robot system 10 according to one embodiment will be described with reference to Figures 1 and 2. The robot system 10 is a system that performs scraping to flatten the surface Q of a workpiece W. The scraping is a process of scraping the surface Q of the workpiece W so that the dimensions of minute irregularities formed on the surface Q of the workpiece W in the thickness direction of the workpiece W fall within a predetermined range (for example, on the order of μm). These minute irregularities function as so-called "oil reservoirs" for storing lubricating oil on the surface Q, which is used as a sliding surface.
[0011] For example, scraping includes rough processing to reduce the minute irregularities formed when the surface of a workpiece is processed using a milling machine or the like to a first dimension (e.g., 10 μm) or less, and finishing processing to reduce the minute irregularities after the rough processing to a second dimension (e.g., 5 μm) or less that is smaller than the first dimension.
[0012] The robot system 10 includes a robot 12, a force sensor 14, a scraper 16, and a control device 18. In this embodiment, the robot 12 is a vertically articulated robot and includes a robot base 20, a rotating body 22, a lower arm 24, an upper arm 26, and a wrist 28. The robot base 20 is fixed on the floor of a work cell. The rotating body 22 is mounted on the robot base 20 so as to be rotatable about a vertical axis.
[0013] Lower arm 24 is rotatably mounted on rotating body 22 around a horizontal axis, and upper arm 26 is rotatably mounted on the distal end of lower arm 24. Wrist 28 has wrist base 28a rotatably mounted on the distal end of upper arm 26, and wrist flange 28b mounted on wrist base 28a so as to be rotatable around wrist axis A1.
[0014] Each component of the robot 12 (robot base 20, rotating body 22, lower arm 24, upper arm 26, wrist 28) is provided with a servo motor 34 (FIG. 2). These servo motors 34 rotate each movable element of the robot 12 (rotating body 22, lower arm 24, upper arm 26, wrist 28, wrist flange 28b) around a drive shaft in response to a command from the control device 18. As a result, the robot 12 can move the scraper 16 and place it in any position and posture.
[0015] The force sensor 14 detects the pressing force F with which the robot 12 presses the scraper 16 against the surface of the workpiece W. For example, the force sensor 14 is a six-axis force sensor having a cylindrical main body and a plurality of strain gauges provided on the main body, and is interposed between the wrist flange 28b and the scraper 16. In this embodiment, the force sensor 14 is positioned so that its central axis coincides with the wrist axis A1.
[0016] The scraper 16 is fixed to the tip of the force sensor 14 and scrapes the surface of the workpiece W for scraping. Specifically, the scraper 16 has a flexible handle 30 and a blade 32 fixed to the tip of the handle 30. The base end of the handle 30 is fixed to the tip of the force sensor 14. The handle 30 extends linearly from the tip of the force sensor 14 along the axis A2. The blade 32 extends from its base end 32b to its tip 32a along the axis A2. Note that the axis A2 may be approximately perpendicular to the wrist axis A1.
[0017] 3, when viewed from above (the direction of arrow B in FIG. 1), the tip 32a of the cutting edge 32 is curved so as to bulge outward from both ends in the width direction toward the center. The scraper 16 presses the tip 32a of the cutting edge 32 against the surface Q of the workpiece W, scraping the surface Q with the tip 32a.
[0018] The control device 18 controls the operation of the robot 12. As shown in Fig. 2, the control device 18 is a computer having a processor 40, a memory 42, an I / O interface 44, an input device 46, and a display device 48. The processor 40 has a CPU or a GPU, etc., and is communicatively connected to the memory 42, the I / O interface 44, the input device 46, and the display device 48 via a bus 50, and performs arithmetic processing for executing scraping while communicating with these components.
[0019] The memory 42 has RAM, ROM, or the like, and temporarily or permanently stores various data used in the arithmetic processing executed by the processor 40 and various data generated during the arithmetic processing. The I / O interface 44 has, for example, an Ethernet (registered trademark) port, a USB port, an optical fiber connector, or an HDMI (registered trademark) terminal, and communicates data with external devices via wired or wireless communication under instructions from the processor 40. In this embodiment, the servo motors 34 and force sensors 14 of the robot 12 are communicatively connected to the I / O interface 44.
[0020] The input device 46 has a keyboard, a mouse, a touch panel, or the like, and allows an operator to input data. The display device 48 has a liquid crystal display, an organic EL display, or the like, and visibly displays various data under instructions from the processor 40. The input device 46 or the display device 48 may be incorporated integrally into the housing of the control device 18, or may be separate from the housing of the control device 18 and externally attached to the housing.
[0021] 1, a robot coordinate system C1 is set for the robot 12. The robot coordinate system C1 is a coordinate system for controlling the operation of each movable element of the robot 12, and is fixed relative to the robot base 20. In this embodiment, the robot coordinate system C1 is set for the robot 12 so that its origin is located at the center of the robot base 20 and its z axis coincides with the rotation axis of the rotating body 22.
[0022] Meanwhile, a tool coordinate system C2 is set for the scraper 16. The tool coordinate system C2 is a coordinate system that defines the position and posture of the scraper 16 (or the wrist flange 28b) in the robot coordinate system C1. In this embodiment, the tool coordinate system C2 is set for the scraper 16 so that its origin (so-called TCP) is located at the center of the tip 32a of the cutting portion 32 when the handle 30 is not bent, and its z-axis is parallel to the axis A2 (or the normal direction of the curved surface of the tip 32a at the center of the tip 32a).
[0023] When moving the scraper 16, the processor 40 of the control device 18 sets a tool coordinate system C2 in the robot coordinate system C1 and generates commands (position commands, speed commands, torque commands, etc.) to each servo motor 34 of the robot 12 so as to position the scraper 16 at the position and posture represented by the set tool coordinate system C2.
[0024] In this way, the processor 40 positions the scraper 16 at an arbitrary position and orientation in the robot coordinate system C1, thereby performing scraping. In this way, in this embodiment, the processor 40 functions as a robot control unit 52 (FIG. 2) that controls the operation of the robot 12 so as to perform scraping.
[0025] On the other hand, a sensor coordinate system C3 is set for the force sensor 14. The sensor coordinate system C3 is a coordinate system that defines the direction of a force acting on the force sensor 14. In this embodiment, the sensor coordinate system C3 is set for the force sensor 14 so that its origin is located at the center of the force sensor 14 and its z-axis coincides with the wrist axis A1 (or its x-axis is parallel to the z-axis of the tool coordinate system C2).
[0026] 4 shows a state in which the robot 12 has brought the tip 32a of the cutting edge 32 of the scraper 16 into contact with the surface Q of the workpiece W. When the robot 12 presses the tip 32a of the scraper 16 against the surface Q with a pressing force F in a direction perpendicular to the surface Q, a reaction force F' against the pressing force F is applied from the surface Q to the force sensor 14 via the scraper 16.
[0027] Each strain gauge of the force sensor 14 transmits detection data corresponding to the force acting on the force sensor 14 to the control device 18. Based on the detection data received from the force sensor 14 via the I / O interface 44, the processor 40 calculates a force f acting on the force sensor 14 in the directions of the x-, y-, and z-axes of the sensor coordinate system C3 and a torque τ acting around the x-, y-, and z-axes. Based on the force f and torque τ and the status data CD of the scraper 16 at this time, the processor 40 calculates the magnitude of a reaction force F' acting on the tip 32a of the cutting portion 32 in a direction perpendicular to the surface Q.
[0028] The status data CD includes, for example, at least one of the angle θ1 between the axis A2 and the surface Q, the distance d from the wrist axis A1 (or the origin of the sensor coordinate system C3) to the tip 32a of the blade 32, position data indicating the position and attitude of the tool coordinate system C2 (or the sensor coordinate system C3) in the robot coordinate system C1, and deflection data of the handle 30 (for example, the amount of deflection or elastic modulus of the handle 30). In this way, the force sensor 14 detects the reaction force F' as the pressing force F, and the control device 18 can determine the magnitude of the pressing force F (reaction force F') based on the detection data of the force sensor 14.
[0029] Next, the scraping process performed by the robot 12 will be described with reference to Figures 5 to 7. As shown in Figure 5, a plurality of teaching points TP1, TP2, and TP3 at which the tip 32a (i.e., TCP) of the scraper 16 should be positioned to perform the scraping process are set along the surface Q of the workpiece W positioned at a known position in the robot coordinate system C1.
[0030] In this embodiment, the teaching point TP2 is set at a position spaced to the right of the teaching point TP1, and the teaching point TP3 is set at a position spaced to the upper right of the teaching point TP2. The positions of the teaching points TP1 and TP2 in the z-axis direction of the robot coordinate system C1 are approximately the same. n (n=1,2,3) are expressed as coordinates in the robot coordinate system C1.
[0031] When scraping is performed, the processor 40 starts position control and moves the scraper 16 to the teaching point TP by the robot 12. n Position control command PC for moving to n The processor 40 generates the position control command PC n By operating each servo motor 34 of the robot 12 in accordance with the above, the scraper 16 is positioned at the teaching points TP1, TP2, and TP3 in this order. n The object is moved along a moving path MP defined by:
[0032] In this embodiment, for ease of understanding, it is assumed that the surface Q of the workpiece W is approximately parallel to the xy plane of the robot coordinate system C1, and the direction MD of the movement path MP is approximately parallel to the xz plane of the robot coordinate system C1. n aligns the scraper 16 (i.e., the wrist flange 28b of the robot 12) with the teaching point TP n The velocity V when moving to P_n Speed command PC that specifies V_n It has.
[0033] After starting the position control, the processor 40 operates the robot 12 in accordance with the position control command PC1 to move the scraper 16 to the teaching point TP1. When the tip 32a of the scraper 16 is positioned at the teaching point TP1, the tip 32a moves upward away from the surface Q, as shown in FIG.
[0034] When the scraper 16 reaches the teaching point TP1, the processor 40 starts the force control. After the force control starts, the processor 40 sets the pressing force F with which the robot 12 presses the scraper 16 against the surface Q of the workpiece W to a target value F based on the detection data of the force sensor 14. T The position of the wrist flange 28b (or TCP) of the robot 12 is controlled so as to accurately control the position.
[0035] Specifically, in the force control, the processor 40 calculates the pressing force F (specifically, the reaction force F') obtained based on the detection data of the force sensor 14 to the target value F T In order to control the robot 12 in this manner, the processor 40 generates a force control command FC for controlling the position of the wrist flange 28b (TCP) of the robot 12. Then, the processor 40 converts the force control command FC into a position control command PC n In addition, the servo motor 34 of the robot 12 is operated.
[0036] As a result, the processor 40 outputs the position control command PC nThe scraper 16 (or the wrist flange 28b) is moved in the direction MD of the movement path MP according to the force control command FC, and the scraper 16 is moved in a direction approaching or receding from the surface Q of the workpiece W (i.e., in the z-axis direction of the robot coordinate system C1) according to the force control command FC. The force control command FC is a speed command FC that specifies the speed at which the scraper 16 is moved in the z-axis direction of the robot coordinate system C1. V It has.
[0037] When the scraper 16 reaches the teaching point TP1, the processor 40 outputs a speed command PC as a position control command PC2 for moving the scraper 16 to the teaching point TP2. V_2 and generates a velocity command FC as a force control command FC. V_0 6 shows the speed command PC generated by the processor 40 when the scraper 16 reaches the teaching point TP1. V_2 and speed command FC V_0 is shown schematically.
[0038] After the scraper 16 reaches the teaching point TP1, the processor 40 outputs a speed command PC V_2 The robot 12 is operated in accordance with the speed command PC V_2 The velocity V corresponds to (specifically, coincides with) P_2 Then move in the direction MD.
[0039] At the same time, the processor 40 sets the pressing force F to the target value F T The speed command FC is used to control V_0 and generates a speed command PC to the servo motor 34. V_2 , the scraper 16 is moved in the direction toward the surface Q (i.e., downward) by the speed command FC V_0 The velocity V corresponds to (specifically, coincides with) F_0 As a result, the robot 12 moves the scraper 16 in the direction MD' in FIG. 6 after passing the teaching point TP1.
[0040] 7 shows the trajectory TR actually followed by the scraper 16 (specifically, the tip 32a) during scraping using a solid line. After passing the teaching point TP1, the scraper 16 moves toward the surface Q on the trajectory TR inclined to form an angle θ2 with respect to the surface Q, and abuts against the surface Q at a position P1.
[0041] Here, if the distances in the x-axis and z-axis directions of the robot coordinate system C1 between the teaching point TP1 and the position P1 in FIG. 7 are distances x1 and z1, respectively, the distances x1 and z1 and the velocity command PC V_2 (Speed V P_2 ), and speed command FC V_0 (Speed V F_0 ) satisfies the following formula (1). z1 / x1=FC V_0 / PC V_2 =V F_0 / V P_2 …(1)
[0042] In addition, the angle θ2, the distance x1 and z1, and the speed command PC V_2 (Speed V P_2 ), and speed command FC V_0 (Speed V F_0 ) satisfies the following formula (2). θ2=tan -1 (z1 / x1)=tan -1 (FC V_0 / PC V_2 )=tan -1 (V F_0 / V P_2 ) …(2)
[0043] Therefore, if the scraping conditions MC are set to x1 = 10 [mm] and z1 = 5 [mm], then the angle θ2 can be determined as ≒ 26.6° from equation (2). In this case, the speed V P_2 (i.e., speed command PC V_2 ) is set to 100 [mm / sec], the velocity V F_0 (i.e., speed command FC V_0 ) can be determined as 50 [mm / sec].
[0044] While the scraper 16 is in contact with the surface Q, the processor 40 moves the scraper 16 in the direction MD (i.e., rightward) in accordance with the position control command PC2, and controls the pressing force F to a target value F. T The force control command FC is used to control the velocity V_1 Generate.
[0045] This speed command FC V_1 The position of the wrist flange 28b of the robot 12 is adjusted in the z-axis direction of the robot coordinate system C1 by the speed command FC V_1 The velocity V corresponds to (specifically, coincides with) F_1 Here, the speed command FC generated while the scraper 16 is in contact with the surface Q is V_1 (i.e., velocity V F_1 ) is the maximum value of the speed command FC generated before the scraper 16 contacts the surface Q. V_0 (i.e., velocity V F_0 ) can be set larger than
[0046] In this way, the scraper 16 reaches the target value F T The scraper 16 is moved to the right along the surface Q while being pressed with a pressing force F of a magnitude corresponding to the target value F of force control, thereby performing scraping by scraping the surface Q with the tip 32a of the scraper 16. The state of the scraper 16 during scraping is shown in FIG. 8. As shown in FIG. 8, during scraping, the robot 12 presses the tip 32a of the scraper 16 against the surface Q with a pressing force F, thereby causing the handle 30 of the scraper 16 to bend and bulge downward. In other words, the target value F of force control T is set as a value that allows the handle portion 30 to bend during scraping.
[0047] 7, when the scraper 16 (or wrist flange 28b) reaches a position corresponding to the teaching point TP2, the processor 40 ends the force control and generates a position control command PC3 for moving the scraper 16 to the teaching point TP3. The processor 40 operates the robot 12 in accordance with the position control command PC3, thereby moving the scraper 16 upward and to the right toward the teaching point TP3.
[0048] As a result, the scraper 16 moves upward and to the right on a trajectory TR inclined to form an angle θ3 with respect to the surface Q of the workpiece W, and the tip 32a of the scraper 16 separates from the surface Q at position P2. In this manner, the scraper 16 scrapes the surface Q over a distance x2 from position P1 to position P2, completing the scraping process. In this embodiment, the coordinate of position P2 in the x-axis direction of the robot coordinate system C1 is assumed to be substantially the same as that of the teaching point TP2. The scraper 16 then reaches the teaching point TP3.
[0049] Here, if the distance in the x-axis direction of the robot coordinate system C1 between the teaching point TP2 (or position P2) and the teaching point TP3 in Figure 7 is distance x3, and the distance in the z-axis direction of the robot coordinate system C1 between the position P2 and the teaching point TP3 is distance z2, in this embodiment, the distances x3 and z2 satisfy the following equation (3). θ3=tan -1 (z2 / x3) …(3)
[0050] By scraping thus performed, a curved recess R is formed in the surface Q so as to extend rightward from position P1 to position P2, as shown in Figures 9 and 10. In the example shown in Figures 9 and 10, the recess R has a length x2 in the x-axis direction of the robot coordinate system C1, a width y1 in the y-axis direction, and a depth z3 in the z-axis direction.
[0051] 9, for ease of understanding, the depth z3 of the recess R is shown enlarged, but it should be understood that the actual depth z3 of the recess R is approximately 10 μm or less. Also, as shown in FIG. 10, a midpoint P3 of the line connecting positions P1 and P2 is determined in the recess R. Each of positions P1, P2, and midpoint P3 becomes a reference point RP that indicates the position of the recess R in the robot coordinate system C1.
[0052] The processor 40 repeatedly performs the scraping process as described above to form a plurality of recesses R on the surface Q of the workpiece W. Here, in this embodiment, the processor 40 determines the positions of the plurality of recesses R to be formed on the surface Q by the scraping process. This function will be described below.
[0053] First, the processor 40 receives input of shape information SI of the surface Q. As an example of input of the shape information SI, the operator operates the input device 46 of the control device 18 to input, as the shape information SI, coordinates P(x, y, z) of each vertex of the surface Q in the robot coordinate system C1 and information SI specifying the shape of the surface Q (rectangle, octagon, trapezoid, etc.). D Enter .
[0054] 11 shows an example of the surface Q of the workpiece W. In the example shown in FIG. 11, the operator operates the input device 46 to input, as shape information SI, coordinates P11(x 11 ,y 11 ,z 11 ), P12(x 12 ,y 12 ,z 12 ), P13(x 13 ,y 13 ,z 13 ), and P14(x 14 ,y 14 ,z 14 ).
[0055] The operator also operates the input device 46 to input information SI specifying the shape of the surface Q. D11, the operator inputs the order in which the vertices P11, P12, P13, and P14 are to be recognized to the processor 40. In the example shown in Fig. 11, the operator inputs the order in which the vertices are to be recognized to the processor 40 in the order P11 → P12 → P13 → P14 → P11. Then, the processor 40 recognizes the shape of the rectangular surface Q by drawing imaginary lines in the order of the vertices P11 → P12 → P13 → P14 in the robot coordinate system C1.
[0056] Alternatively, the operator may use information SI that specifies the shape. D For example, in the example shown in Fig. 11, the operator may input information specifying a vertex to be used as the starting point for shape recognition and information specifying the direction in which other vertices are to be recognized. For example, in the example shown in Fig. 11, the operator may input information to specify that the vertex P11 is used as the starting point and that other vertices P12, P13, and P14 are to be recognized in order in a "clockwise direction" as viewed from above.
[0057] In this case, the processor 40 can recognize the shape of the rectangular surface Q by drawing a virtual line starting from the vertex P11 in the order of vertices P11 → P12 → P13 → P14 → P11. Note that the "counterclockwise direction" may be specified as information specifying the direction in which to recognize the other vertices. In this case, the processor 40 recognizes each vertex starting from the vertex P11 in the order of vertices P11 → P14 → P13 → P12 → P11.
[0058] In the example shown in FIG. 12, the operator inputs information SI specifying the shape of the surface Q. D The processor 40 then inputs the vertices P11, P13, P12, P14, and P11 in this order, and recognizes the surface Q of the workpiece W as two surfaces Q1 and Q2 of a triangle, as shown in FIG.
[0059] In the example shown in FIG. 13, the operator sets, as the shape information SI, coordinates P11(x 11 ,y 11 ,z 11 )~P18(x 18 ,y 18 ,z18 ) and specify the order of vertices P11 → P12 → P13 → P14 → P15 → P16 → P17 → P18 → P11. D Then, the processor 40 recognizes the octagonal surface Q shown in Fig. 13. In this way, the operator inputs the coordinates of each vertex of the shape of the surface Q as shape information SI, and the information SI D By inputting the above, the processor 40 can recognize surfaces Q of various shapes.
[0060] As another example of inputting shape information SI, the operator operates the input device 46 to input drawing data (CAD data) of the workpiece W from an external device (e.g., a CAD device or an external memory) to the control device 18 as shape information SI, and also inputs information specifying the positional relationship between the model coordinate system C4 that defines the position of the drawing data and the robot coordinate system C1.
[0061] Alternatively, if the drawing data of the workpiece W is stored in advance in the memory 42, the operator may operate the input device 46 to input, as shape information SI, information specifying the drawing data of the workpiece W stored in the memory 42 and information specifying the positional relationship between the model coordinate system C4 of the drawing data and the robot coordinate system C1.
[0062] As yet another example of input of the shape information SI, the robot system 10 may further include a visual sensor (not shown) capable of capturing an image of an object, and the visual sensor may input image data of the surface Q of the workpiece W to the control device 18 as the shape information SI of the surface Q. Specifically, the visual sensor may be, for example, a three-dimensional visual sensor or a two-dimensional camera, and may be attached to a known position on the robot 12 and moved by the robot 12, or may be fixed to a known position in the robot coordinate system C1. The processor 40 may receive input of the shape information SI (image data) from the visual sensor and acquire the coordinates of the surface Q in the robot coordinate system C1.
[0063] In this way, the processor 40 receives input of the shape information SI through the input device 46 (or the visual sensor). Therefore, in this embodiment, the processor 40 functions as an input receiving unit 54 (FIG. 2) that receives input of the shape information SI. Based on the input shape information SI, the processor 40 obtains the position of the surface Q in the robot coordinate system C1 (i.e., the coordinates of the vertices and edges). In this way, the position of the surface Q in the robot coordinate system C1 becomes known.
[0064] The processor 40 also receives input of pattern information PI that determines how the multiple recesses R to be formed on the surface Q are to be arranged on the surface Q. The pattern information PI includes, for example, design information PI1, pitch information PI2, angle information PI3, and offset information PI4. The pattern information PI1 is information for specifying the type of pattern in which the multiple recesses R are arranged in a grid pattern in the row direction G and column direction H defined on the surface Q.
[0065] Fig. 14 shows a translational pattern as an example of a pattern. In the translational pattern shown in Fig. 14, a plurality of recesses R are arranged in a grid pattern in a row direction G and a column direction H that are orthogonal to each other. In the example shown in Fig. 14, the row direction G and the column direction H are defined to be parallel to the x-axis direction and the y-axis direction of the robot coordinate system C1, respectively. The recesses R in Fig. 14 k_m represents the recessed portion R in the kth row and the mth column. In the translation pattern shown in Fig. 14, the reference points RP (position P1, position P2, midpoint P3) of the recessed portions R aligned in the row direction G are aligned in the same position in the column direction H, and the reference points RP of the recessed portions R aligned in the column direction H are aligned in the same position in the row direction G.
[0066] Fig. 15 shows a houndstooth pattern as another example of a pattern. In the houndstooth pattern shown in Fig. 15, a plurality of recesses R are arranged in a grid pattern in the row direction G and column direction H, and while the reference points RP of recesses R arranged in the column direction H are aligned in the row direction G, the reference points RP of recesses arranged in the row direction G are alternately shifted in the column direction H by a shift amount Δ. The pattern information PI1 specifies the type of pattern, such as the above-mentioned "translational pattern" or "houndstooth pattern."
[0067] The pitch information PI2 is a pitch PT between two adjacent recesses R in the row direction G in a pattern (for example, a translation pattern or a houndstooth pattern) specified by the pattern information PI1. G and the pitch PT between two adjacent recesses R in the row direction H. H This is information for setting the following.
[0068] In the staggered pattern shown in FIG. 15, the amount of deviation Δ of the reference points RP (for example, the midpoints P3) of two recesses R adjacent to each other in the row direction G is equal to the pitch PT H may be determined as a value obtained by multiplying Δ by a predetermined coefficient ρ (0≦ρ<1). In the example shown in FIG. 15, ρ=0.5 (i.e., Δ=PT H / 2) This coefficient ρ may be included in the pattern information PI1 or the pitch information PI2.
[0069] The angle information PI3 is information for setting the angle θ4 of the row direction G or column direction H with respect to the reference direction. This angle θ4 will be explained with reference to FIG. 16. In the example shown in FIG. 16, the workpiece W is placed at a known position in the robot coordinate system C1 so that its longitudinal direction is parallel to the x-axis direction of the robot coordinate system C1. In this case, for example, if the reference direction is defined as the x-axis direction of the robot coordinate system C1, in the example shown in FIG. 16, the row direction G is defined to be inclined at an angle θ4 with respect to the reference direction (x-axis direction).
[0070] When the row direction G and column direction H are determined in this manner, the recesses R are arranged in a lattice pattern so that they are aligned in the row direction G and column direction H inclined at an angle θ4 with respect to the reference direction (x-axis direction), as shown in Figure 16. The angle information PI3 sets the angle θ4 as described above. It should be understood that the angle θ4 may be determined as the angle of the column direction H with respect to the reference direction (x-axis direction), or the y-axis direction of the robot coordinate system C1 may be determined as the reference direction.
[0071] When the type of pattern, pitch PT, and angle θ4 are determined by the pattern information PI1, pitch information PI2, and angle information PI3, it is possible to uniquely determine the positional relationship of multiple recesses R (specifically, reference points RP) on the surface Q. In other words, when one recess R is placed at an arbitrary position on the surface Q, it is also possible to uniquely determine the positions of other recesses R.
[0072] The offset information PI4 is information for setting an offset distance δ between the edge O of the surface Q and the recess R. This offset distance δ indicates the distance by which the recess R is shifted relative to the edge O of the adjacent surface Q when determining the position of the recess R. This offset distance δ will be described with reference to FIG.
[0073] 17, the offset distance δ1 indicates the distance between the leading edge O2 of the surface Q and the position P1 (or midpoint P3) of the recessed portion R adjacent to the leading edge O2. The offset distance δ2 indicates the shortest distance between the leading edge O2 and the outer edge of the recessed portion R adjacent to the leading edge O2.
[0074] On the other hand, the offset distance δ3 indicates the distance between the left edge O1 of the surface Q and the midpoint P3 of the recessed portion R adjacent to the left edge O1. Moreover, the offset distance δ4 indicates the shortest distance between the left edge O1 and the outer edge of the recessed portion R adjacent to the left edge O1 (i.e., the distance between the left edge O1 and the position P1).
[0075] Although not shown, the offset distance δ1 may define the distance between the trailing edge O3 (FIGS. 11 and 13) of the surface Q and the position P1 (midpoint P3) of the recessed portion R adjacent to the trailing edge O3, and the offset distance δ2 may define the shortest distance between the trailing edge O3 and the outer edge of the recessed portion R adjacent to the trailing edge O3. Furthermore, the offset distance δ3 may define the distance between the right edge O4 (FIGS. 11 and 13) of the surface Q and the midpoint P3 of the recessed portion R adjacent to the right edge O4, and the offset distance δ4 may define the shortest distance between the right edge O4 and the outer edge (i.e., position P2) or position P1 of the recessed portion R adjacent to the right edge O4.
[0076] The operator operates the input device 46 of the control device 18 to input design information PI1, pitch information PI2, angle information PI3, and offset information PI4 as pattern information PI. The processor 40 functions as an input receiving unit 54 and receives input of the pattern information PI through the input device 46. In this manner, the processor 40 acquires the shape information SI and the pattern information PI. The processor 40 may also cause the display device 48 to display an input screen for inputting the shape information SI or the pattern information PI.
[0077] The processor 40 automatically determines the position of each recess R on the surface Q based on the shape information SI and pattern information PI received from the operator. This function will be described below. As an example, assume that shape information of a rectangular workpiece W shown in FIG. 18 is input as the shape information SI.
[0078] In this case, based on the received pattern information PI1, pitch information PI2, angle information PI3, and offset information PI4, the processor 40 determines the position of the reference point RP of each recess R within the area of the surface Q located at a known position in the robot coordinate system C1, and obtains the position data (coordinates) of the reference point RP in the robot coordinate system C1.
[0079] In the example shown in Fig. 18, the virtual occupied area of the recessed portion R for which the reference point RP has been determined is shown as a dotted line area R'. Fig. 18 shows an example in which a translational pattern is specified as the pattern information PI1 and θ4 = 0° is specified as the angle information PI3. For example, in the example shown in Fig. 18, the position P1 of the recessed portion R is determined as the reference point RP.
[0080] In this case, to determine the position P1 of the recess R, for example, the processor 40 may determine an initial position P1 on the surface Q. _1 The first position P1 is determined. _1 can be determined as a position that is an offset distance δ1 defined in the offset information PI4 from the leading edge O2 and an offset distance δ4 from the left edge O1.
[0081] This first position P1 _1 18, the processor 40 can automatically determine another position P1 as a point arranged in a translational pattern that is within the area of the surface Q and that is separated from the edges O1, O2, O3, and O4 by at least the offset distances δ1 and δ4 defined in the offset information PI4. In this way, the positions P1 of the multiple recesses R on the surface Q can be automatically determined.
[0082] 19 shows an example in which a houndstooth pattern is specified as the pattern information PI1 and θ4=0° is specified as the angle information PI3. In the example shown in FIG. 19, the processor 40, for example, _1 is determined as a position that is an offset distance δ1 from the leading edge O2 and an offset distance δ4 from the left edge O1. _1 Once the processor 40 has determined the position P1, it can automatically determine another position P1 from the pattern information PI.
[0083] 20 shows an example in which a translational pattern is specified as the pattern information PI1 and θ4=45° is specified as the angle information PI3. In the example shown in FIG. 20, the processor 40, for example, _1 is determined as a position that is an offset distance δ1 away from the trailing edge O3 and an offset distance δ4 away from the left edge O1.
[0084] First position P1 _1 , the processor 40 determines the other position P from the pattern information PI. 1 In this manner, in the present embodiment, the processor 40 functions as a position determination unit 56 (FIG. 2) that automatically determines the position of each recess R on the surface Q based on the shape information SI and pattern information PI input by the operator.
[0085] As described above, in this embodiment, the processor 40 functions as the input receiving unit 54 and the position determining unit 56 to determine the positions of the plurality of recesses R to be formed on the surface Q by the scraping process (specifically, the coordinates of the position P1). Therefore, the input receiving unit 54 and the position determining unit 56 constitute a device 60 (FIG. 2) that determines the positions of the plurality of recesses R to be formed on the surface Q by the scraping process. This device 60 can automatically determine the positions of the recesses R, thereby simplifying the work involved in starting up the robot system 10.
[0086] Next, other functions of the control device 18 will be described with reference to Fig. 21. In this embodiment, the processor 40 automatically generates a movement path MP for the robot 12 when forming the recess R. Specifically, the operator operates the input device 46 of the control device 18 to input processing conditions MC for causing the robot 12 to perform scraping processing.
[0087] The machining conditions MC include dimensional information DI of the recess R, trajectory control information TI of the scraper 16 moved by the robot 12, and a command CM for causing the robot 12 to perform scraping. The dimensional information DI includes, for example, a length x2 (i.e., a distance x2 from position P1 to position P2), a width y1, and a depth z3 shown in FIGS. 9 and 10.
[0088] The trajectory control information TI defines the angle θ2 (FIG. 7) at which the robot 12 moves the scraper 16 to contact the surface Q during scraping, and the angle θ3 at which the scraper 16 moves away from the surface Q. Specifically, the trajectory control information TI includes distances x1, z1, x3, and z2 shown in FIG. 7. The distances x1 and z1 define the angle θ2 as shown in the above formula (2), and the distances x3 and z2 define the angle θ3 as shown in the above formula (3).
[0089] The command CM to the robot 12 is, for example, the above-mentioned position control command PC n (Speed command PC V_n etc.) and force control command FC (speed command FC VThe processor 40 functions as an input receiving unit 54 and receives input of machining conditions MC (dimension information DI, trajectory control information TI, command CM) through the input device 46.
[0090] Next, the processor 40 automatically generates a movement path MP of the robot 12 when forming one recessed portion R, based on the machining conditions MC input by the operator and the position of the reference point RP (P1, P2 or P3) of one recessed portion R determined by functioning as the position determining unit 56. For example, when the processor 40 determines the coordinates (X1, Y1, Z1) of the position P1 of the recessed portion R as the position determining unit 56, it calculates the coordinates (X1+x2, Y1, Z1) of the position P2 ( FIG. 7 ) in the robot coordinate system C1 from the determined coordinates (X1, Y1, Z1) and the length x2 of the recessed portion R included in the dimension information DI as the machining conditions MC.
[0091] The processor 40 then determines the coordinates (X1-x1, Y1, Z1+z1) of the teaching point TP1 in the robot coordinate system C1 from the coordinates of the position P1 and the distances x1 and z1 included in the trajectory control information TI as the machining conditions MC. The processor 40 also determines the coordinates (X1+x2+x3, Y1, Z1+z2) of the teaching point TP3 in the robot coordinate system C1 from the coordinates of the position P2 and the distances x3 and z2 included in the trajectory control information TI. The processor 40 also determines the coordinates of the teaching point TP2 as (X1+x2, Y1, Z1+z1), which is spaced upward from the position P2 by the distance z1.
[0092] In this way, the processor 40 determines the teaching point TP based on the determined position of the recess R, the dimension information DI (length x2), and the trajectory control information TI (distances x1, z1, x3, z2). n is automatically calculated, and the teaching point TP n Therefore, in the present embodiment, the processor 40 functions as a route generation unit 58 (FIG. 21) that automatically generates the travel route MP.
[0093] The processor 40 determines the teaching point TP for each of the recesses R to be formed.n As described above, in this embodiment, the device 60 includes the input receiving unit 54, the position determining unit 56, and the path generating unit 58. According to this device 60, the robot 12 is instructed to calculate the teaching points TP for each recess R. n Therefore, the work required to start up the robot system 10 can be significantly reduced.
[0094] The processing conditions MC may further include information for specifying an order OR for forming the plurality of recesses R. In this case, the processor 40 may function as the position determination unit 56 and determine the positions of the reference points RP of the plurality of recesses R one by one in accordance with the order OR. An example of the order OR is shown in FIG. 22.
[0095] According to the example shown in FIG. 22, processor 40 _i At position P1 _1 , position P1 _2 , position P1 _3 ,...position P1 _18 , .... Then, the processor 40 machines the plurality of recesses R in accordance with this order OR. Note that the machining conditions MC may include information for specifying an order OR1 for determining the positions of the recesses R and an order OR2 for forming the recesses R whose positions have been determined.
[0096] Next, a method for performing scraping in the robot system 10 shown in Fig. 21 will be described. The processor 40 operates the robot 12 in accordance with a work program PG stored in the memory 42. Specifically, the work program PG moves the robot 12 to a teaching point TP n and a position control program PG1 for positioning at the teaching point TP based on the dimension information DI and the trajectory control information TI. n An example of the position control program PG1 is shown in Table 1 below.
[0097] [Table 1]
[0098] "MOVE [TP1]" in this position control program PG1 is a command statement for positioning the scraper 16 (or TCP) at the teaching point TP1. The processor 40 generates the above-mentioned position control command PC in accordance with the position control program PG1. n On the other hand, the teaching point calculation program PG2 generates the teaching point TP from the position data of the reference point RP (coordinates of the position P1), the dimension information DI (length x2), and the trajectory control information TI (distances x1, z1, x3, z2), as described above. n This is a computer program that causes the processor 40 to automatically calculate the above.
[0099] Next, an example of an operation flow of scraping performed by the robot system 10 will be described with reference to Fig. 23. The flow shown in Fig. 23 starts when the processor 40 receives input of shape information SI, pattern information PI (pattern information PI1, pitch information PI2, angle information PI3, offset information PI4), and machining conditions MC (dimension information DI, trajectory control information TI, command CM, sequence OR), and then receives a scraping start command from an operator, a higher-level controller, or a computer program (for example, a work program PG).
[0100] In step S1, the processor 40 determines the position P1 of the recess R. _i In step S2, the processor 40 sets the number "i" that identifies the position P1 of the i-th recess R. _i For example, if i=1 is set at the start of step S2, the processor 40 determines the position P1 of the first recess R according to the order OR specified in the machining conditions MC. _1 The position of (Figure 22) is determined by the method described above.
[0101] In step S3, the processor 40 functions as the path generating unit 58 and calculates the i-th position P1_i For the recess R having n Specifically, the processor 40 reads out the teaching point calculation program PG2 and calculates the position P1 determined in the most recent step S2. _i By applying the coordinates of the i-th position P1 to the teaching point calculation program PG2, the dimension information DI (length x2) and the trajectory control information TI (distance x1, z1, x3, z2) are calculated. _i Teaching point TP for forming a recess R having n (n=1,2,3) is calculated automatically. In this way, the i-th position P1 _i A movement path MP (FIG. 5) for forming the recess R having the shape shown in FIG.
[0102] In step S4, the processor 40 starts position control of the robot 12. Specifically, the processor 40 sequentially reads out the commands defined in the position control program PG1 shown in Table 1 above, and determines the teaching points TP defined in the commands. n Position control command PC for moving scraper 16 to n Generate.
[0103] At this time, the processor 40 applies the coordinates of the robot coordinate system C1 of the teaching points TP1, TP2, and TP3 calculated in the most recent step S3 to [TP1], [TP2], and [TP3] in the position control program PG1, respectively. In this way, the processor 40 operates the robot 12 in accordance with the position control program PG1, and starts position control to position the scraper 16 in the order of the teaching points TP1, TP2, and TP3 calculated in the most recent step S3.
[0104] In step S5, the processor 40 determines whether the scraper 16 has reached the teaching point TP1. For example, the processor 40 can determine the position of the scraper 16 in the robot coordinate system C1 based on feedback FB from a rotation detector (encoder, Hall element, etc.) provided on each servo motor 34 of the robot 12, and determine from the determined position whether the scraper 16 has reached the teaching point TP1. If the processor 40 determines that the scraper 16 has reached the teaching point TP1 (i.e., YES), it proceeds to step S6, but if it determines that the scraper 16 has not reached the teaching point TP1 (i.e., NO), it loops through step S5.
[0105] In step S6, the processor 40 starts the above-described force control. As a result, the scraper 16 moves toward the surface Q on a trajectory TR inclined to form an angle θ2 with respect to the surface Q, as shown in Fig. 7, and abuts against the surface Q at a position P1. In step S7, the processor 40 determines, based on the feedback FB, whether the scraper 16 (or the wrist flange 28b) has reached a position corresponding to the taught point TP2. If the processor 40 determines YES, it proceeds to step S8, but if the processor 40 determines NO, it loops step S7.
[0106] In step S8, the processor 40 ends the force control. As a result, the scraper 16 moves upward and to the right on a trajectory TR that is inclined so as to form an angle θ3 with respect to the surface Q of the workpiece W, and the tip 32a of the scraper 16 moves away from the surface Q at position P2. In step S9, the processor 40 determines, based on the feedback FB, whether or not the scraper 16 has reached the teaching point TP3. If the processor 40 determines YES, it proceeds to step S10, but if the processor 40 determines NO, it loops step S9.
[0107] In step S10, the processor 40 ends the position control. In step S11, the processor 40 determines the position P1 of the i-th recess R. _iIn step S12, the processor 40 increments the number "i" that identifies the position P1 of the i-th recess R by "1" (i=i+1). _i The number "i" that identifies the MAX It is determined whether or not
[0108] This maximum value i MAX specifies the number of recesses R to be formed on the surface Q (i.e., the number of times scraping is performed), and can be included in the information of the order OR as the processing condition MC. MAX If it is determined that i≦i MAX If it is determined that the answer is YES (that is, NO), the process returns to step S2.
[0109] In this way, the processor 40 repeatedly executes the loop of steps S2 to S12, and determines the position P1 of the recessed portion R in the order OR until the determination in step S12 is YES. _i 22, the position P1 of the recessed portion R is determined. _i By controlling the operation of the robot 12 based on the above, a plurality of recesses R are formed in order on the surface Q. The order OR is not limited to the example shown in FIG. 22, and can be determined arbitrarily by the operator.
[0110] As described above, in this embodiment, the processor 40 automatically determines the position of the recessed portion R and also determines the teaching point TP n By automatically calculating the above, the work program PG can be automatically created. Therefore, the work of creating the work program PG can be greatly simplified.
[0111] In this embodiment, the processor 40 performs scraping by detecting the teaching point TP defined in the position control program PG1. n (That is, the position data of the instruction statements [TP1], [TP2], and [TP3]) is updated. nA register is provided for storing the teaching point TP n Therefore, the teaching points TP for all recesses R are updated sequentially. n Since it is not necessary to store the above in the memory 42, the capacity of the memory 42 to be used can be saved.
[0112] Next, another example of the operation flow of scraping executed by the robot system 10 of Fig. 21 will be described with reference to Fig. 24. The flow shown in Fig. 24 starts when the processor 40 receives an instruction to start scraping from an operator, a higher-level controller, or a computer program (for example, a work program PG) after receiving input of shape information SI, pattern information PI (pattern information PI1, pitch information PI2, angle information PI3, offset information PI4), and machining conditions MC (dimension information DI, trajectory control information TI, command CM, sequence OR).
[0113] In this embodiment, it is assumed that the operator inputs shape information SI of the octagonal surface Q shown in FIG. 13. In step S21, the processor 40 functions as the position determination unit 56 to determine the position of the first recess R. Specifically, the processor 40 first sets a starting point P21 in the robot coordinate system C1 as shown in FIG. 26. Here, the x-coordinate of the left end point of the surface Q (vertices P11 and P18 in this embodiment) is set as X α and the y coordinate of the front end point (in this embodiment, the vertices P12 and P13) is Y α Let's say.
[0114] In this case, the processor 40 calculates the coordinates (X 21 ,Y 21 ) using the offset distance δ defined in the offset information PI4, 21 ,Y 21 )=(X α +δ4,Y αTherefore, the starting point P21 is set at a position that is offset rightward from the vertex P11 by an offset distance δ4 and backward from the vertex P12 by an offset distance δ1.
[0115] Next, the processor 40 determines the position of the reference point RP of the first recess R as the starting point P21. For example, when the position P1 of the recess R is used as the reference point RP, the processor 40 determines the position P1 of the first recess R as the starting point P21. _1 Coordinates of (X1 _1 ,Y1 _1 ), (X1 _1 ,Y1 _1 )=(X 21 ,Y 21 )=(X α +δ4,Y α As a result, as shown in FIG. 27, the initial position P1 _1 The processor 40 determines the starting point P21. _1 Coordinates of (X1 _1 ,Y1 _1 ) is stored in the memory 42.
[0116] In step S22, the processor 40 calculates the most recently determined position P1 _i It is determined whether the entire virtual occupation area R' corresponding to the recess R is within the area of the surface Q. Here, the virtual occupation area R' can be estimated from the length x2 and width y1 of the recess R included in the dimension information DI.
[0117] Therefore, the processor 40 calculates the dimension information DI (length x2, width y1) and the determined position P1 _i From the coordinates of the position P1 _i The position (coordinates) of the virtual occupation area R' in the robot coordinate system C1 corresponding to the position of the virtual occupation area R' can be calculated. Then, the processor 40 can determine whether or not at least a part of the virtual occupation area R' protrudes outward from the edge of the surface Q, based on the calculated position of the virtual occupation area R' and the shape information SI of the surface Q.
[0118] If the processor 40 determines that the entire virtual occupation area R' is within the area of the surface Q (i.e., YES), the process proceeds to step S27. On the other hand, if the processor 40 determines that at least a part of the virtual occupation area R' protrudes outside the area of the surface Q (i.e., NO), the processor 40 determines the position P1 of the most recently determined recess R. _i is cancelled (for example, erased from the memory 42), and the process proceeds to step S23.
[0119] In step S23, the processor 40 determines the position of the recessed portion R in the next row. For example, if the processor 40 has executed step S21 immediately before this step S23, the processor 40 21 Position P1 determined by _1 , the pitch PT defined in the pitch information PI2 H The position of the next recess R is P1 _2 Determine.
[0120] That is, the processor 40 determines the position P1 of the next recess R. _2 Coordinates of (X1 _2 ,Y1 _2 ), (X1 _2 ,Y1 _2 )=(X1 _1 ,Y1 _1 -PT H )=(X α +δ4,Y α -δ1-PT H As a result, as shown in FIG. 27, the position P1 of the second recess R is determined as _2 is the first position P1 _1 Distance PT from rear H The position is determined to be shifted by only 1.
[0121] The processor 40 repeatedly executes step S23 until it determines YES in step S24 described later, thereby determining the position P1 of the i-th recess R. _i Coordinates of (X1 _i ,Y1 _i ) at the position P1 of the i-1th recess R _i-1 Coordinates of (X1 _i-1 ,Y1_i-1 ) and Pitch PT H Using (X1 _i ,Y1 _i )=(X1 _i-1 ,Y1 _i-1 -PT H ) is determined as follows.
[0122] Thus, as shown in FIGS. 27 and 28, the first position P1 _1 , second position P1 _2 , third position P1 _3 ,... the (i-1)th position P1 _i-1 , and the i position P1 _i The processor 40 sequentially determines the position P1 determined in step S23. _i Coordinates of (X1 _i ,Y1 _i ) is stored in the memory 42.
[0123] In step S24, the i-th position P1 determined in the most recent step S23 is _i Here, the y coordinate of the rear end point of the surface Q (vertices P16 and P17 in this embodiment) is determined as Y β In this case, the end point P22 has coordinates (X,Y β ) (in other words, a point on an imaginary line passing through vertices P16 and P17).
[0124] In step S24, the processor 40 calculates the most recently determined position P1 _i y coordinate: Y1 _i But Y1 _i ≦Y β If _i The processor 40 then determines that the most recently determined position P1 _i is cancelled (for example, erased from the memory 42), and the process proceeds to step S25.
[0125] On the other hand, the processor 40 _i >Y βIf the above condition is satisfied, the result is determined as NO, and the process returns to step S22. For example, in the example shown in FIG. _i is behind the end point P22 (Y1 _i <Y β ), so the processor 40 _i is cancelled and the process proceeds to step S25.
[0126] In step S25, the processor 40 determines the position of the recessed portion R in the next row. For example, in the most recent step S23, the position P1 of the rear end of the first row shown in FIG. _i In this case, the processor 40 determines the position P1 of the recessed portion R in the second row. _i+1 As shown in Figure 27, the position of the front end of the first row is P1 _1 , the pitch PT defined in the pitch information PI2 G The position is determined to be displaced in the row direction G by
[0127] That is, the processor 40 determines the position P1 of the recessed portion R in the second row. _i+1 Coordinates of (X1 _i+1 ,Y1 _i+1 ), (X1 _i+1 ,Y1 _i+1 )=(X1 _1 +PT G ,Y1 _1 As a result, as shown in FIG. 27, the position P1 of the (i+1)th recess R is determined. _i+1 is the first position P1 _1 Distance PT to the right of G The processor 40 determines the position P1 determined in step S25 as being shifted by _i+1 is stored in the memory 42.
[0128] In step S26, the processor 40 calculates the i-th position P1 determined in the most recent step S25. _i An example of the end point P23 is shown in FIG. 29. Here, the x coordinate of the right end point of the surface Q (vertices P14 and P15 in this embodiment) is expressed as X β In this case, the end point P23 has the coordinates (X β, Y) (in other words, a point on an imaginary line passing through vertices P14 and P15).
[0129] In step S26, the processor 40 calculates the most recently determined position P1 _i x coordinate: X1 _i But, X1 _i ≧X β If _i The processor 40 then determines that the most recently determined position P1 has passed the end point P23 (i.e., YES). _i (for example, erased from the memory 42), and the flow shown in FIG. 24 ends.
[0130] On the other hand, processor 40 is X1 _i <X β If the above condition is satisfied, the result is determined to be NO, and the process proceeds to step S22. For example, in the example shown in FIG. 29, the position P1 _i is to the right of the end point P23 (X1 _i >X β ), so the processor 40 _i The flow shown in FIG. 24 is terminated.
[0131] If the determination in step S22 is YES, in step S27, the processor 40 _i This step S27 is shown in Fig. 25. In the flow shown in Fig. 25, the same processes as those in Fig. 23 are given the same step numbers, and redundant explanations will be omitted.
[0132] After the start of step S27, in step S3, the processor 40 calculates the machining conditions MC that have been input and the position P1 that has been determined most recently. _i Based on the teaching point TP n Calculate the teaching point TP n By executing steps S4 to S10 based on the above, position P1 _i From position P2 _i A recess R extending a distance x2 up to the
[0133] As described above, the processor 40 executes steps S21, S23, and S25 to obtain the position P1 corresponding to the virtual region R′ shown in FIG. _i and the determined position P1 _i Among these, the position P1 where the result of step S22 is NO _i As a result, the position P1 corresponding to the virtual region R' shown in FIG. _i Step S27 is executed for
[0134] In this embodiment, the starting point P21 (FIG. 27) is arranged at offset distances δ4 and δ1 from the vertices P11 and P12, respectively. _i is shifted to the right from the edge O1 by an offset distance δ4, and the position P1 of the first row of recesses R _i The positions of the recessed portions R are determined so that the recessed portions R are shifted rearward from the edge O2 by an offset distance δ1. According to this embodiment, the processor 40 automatically determines the positions of the recessed portions R and also automatically determines the positions of the teaching points TP n By automatically calculating the above, the work program PG can be automatically created.
[0135] It will be understood that the flow shown in Fig. 24 can determine the positions of the recessed portions R arranged in a staggered pattern as shown in Fig. 15. In addition, in the flow shown in Fig. 24, the processor 40 determines the position P1 of the recessed portions R in the next row in step S23. _i In step S25, the position P1 of the recessed portion R in the next row is determined. _i In this case, the processor 40 may determine the position P1 of the recess R. _i are determined in the row direction G, and the determined position P1 _i When the end point P23 is exceeded, the position P1 of the recess R in the first row of the next column _i This will be determined.
[0136] 23 or 25, the processor 40 may omit step S8 and end the position control and the force control in step S10. That is, in this case, the processor 40 executes the position control and the force control in parallel until it determines YES in step S9.
[0137] The pattern information PI may further include a position cancellation condition CC that determines whether or not to cancel the determined position when a part of the virtual occupation area R' of the recess R whose position has been determined by the processor 40 protrudes outward from the edge O of the surface Q. This position cancellation condition CC will be described with reference to FIG. 32. In the example shown in FIG. 32, when the processor 40 determines the sixth position P1 _6 When the position P1 is determined, _6 A part of the virtual occupation area R', that is, an area J, projects rearward from the rear end edge O3 of the workpiece W.
[0138] As in step S22 above, the processor 40 receives the dimension information DI (length x2, width y1) and the determined position P1 _6 From the coordinates of position P1 _6 The position (coordinates) of the virtual occupation area R' in the robot coordinate system C1 corresponding to the position P1 is calculated from the position of the virtual occupation area R' and the shape information SI of the surface Q. _6 It can be determined whether a portion of the virtual occupied area R' corresponding to the edge O1, O2, O3 or O4 of the surface Q protrudes outward.
[0139] The position cancellation condition CC is the determined position P1 _i When a part of the virtual occupied area R' corresponding to the _i For example, as a position cancellation condition CC, when the virtual occupied area R' protrudes from the edge O1, O2, O3, or O4 of the surface Q, the position P1 _i If the condition for canceling the determined position P1 is set, the processor 40 cancels the determined position P1 in the same manner as when the determination in step S22 above is NO. _iCancel and move to the next position P1 _i+1 That is, in the example shown in FIG. 32, the processor 40 determines the sixth position P1 _6 In this case, the processor 40 cancels the sixth position P1 _i No scraping process is performed to form the recess R having the above-mentioned shape.
[0140] On the other hand, as a position cancellation condition CC, when the virtual occupied area R' protrudes from the edge O1, O2, O3, or O4 of the surface Q, the position P1 _i If the condition is set that the determined position P1 is not canceled, the processor 40 _i The position data of the position P1 is stored in the memory 42. _i A scraping process is performed to form a recess R having the shape shown in FIG.
[0141] Here, position P1 in FIG. _6 When the recess R having the above-mentioned shape is formed by scraping, stress concentration occurs at the rear end edge O3 of the surface Q with which the tip 32a of the scraper 16 abuts during scraping, and the depth z3 of the recess R at the position of the rear end edge O3 may become excessive. _6 By setting the depth z3 to be cancelled, it is possible to avoid the formation of a recess R with an excessively large depth z3 at the trailing edge O3.
[0142] On the other hand, if the line L connecting the position P1 and the position P2 of the recess R to be formed (i.e., the trajectory TR of the tip 32a while it is in contact with the surface Q) is approximately perpendicular to the edge O1, O2, O3, or O4 of the surface Q, the stress concentration that occurs at the edge O1, O2, O3, or O4 when the recess R is formed by scraping can be alleviated. For example, in the example of Figure 29, the line L connecting the position P1 and the position P2 is approximately perpendicular to the edge O4 of the surface Q.
[0143] In such a case, even if the recess R is formed, the depth z3 may not be excessively large. _iTherefore, the operator may set the position cancellation condition CC to the following condition: if the line L is substantially perpendicular to the edge O1, O2, O3, or O4, the determined position P1 _i By defining the above so that they do not cancel each other, it is possible to allow the recess R to be formed.
[0144] In this case, processor 40 calculates the position P1 _i When the position P1 is determined, _i and position P2 _i It is determined whether the line L connecting the positions P1 and P2 is perpendicular to the edge O1, O2, O3, or O4. Note that the position cancellation condition CC is set to 0 if the line L connecting the positions P1 and P2 is not perpendicular to the edge O1, O2, O3, or O4. _i This may be set as a condition for canceling the contract.
[0145] In this way, according to this embodiment, the operator can input the position cancellation condition CC through the input device 46 to cancel the position P1 determined by the position determination unit 56. _i When a part of the virtual occupation area R' corresponding to the position P1 _i Cancel and do not perform scraping, or position P1 _i It is possible to arbitrarily select whether to hold the tool and perform scraping.
[0146] The position cancellation condition CC is that the position P1 _i The virtual occupation area R' corresponding to the amount of protrusion PA from the edge O of the workpiece W is a predetermined threshold value PA th If the determined position P1 _i For example, in the example shown in FIG. 32, the protrusion amount PA is set as a condition for canceling the amount of protrusion of the area J from the rear end edge O3. backward It may be defined as the distance y2 that projects to the
[0147] Alternatively, the protrusion amount PA may be defined as the volume of the region J or the area of the region J in the xy plane of the robot coordinate system C1. _i When the virtual occupation area R' is determined, the protrusion amount PA is calculated from the position of the virtual occupation area R' in the robot coordinate system C1 and the shape information SI of the surface Q, and the protrusion amount PA is equal to or smaller than the threshold value PA. th (PA≧PA th ) according to the position cancel condition CC. th The determined position P1 _i Cancel.
[0148] The pattern information PI may further include at least one of processing area setting information MI that sets a processing area ME where scraping is to be performed on the surface Q, and non-processing area setting information NI that sets a non-processing area NE where scraping is not to be performed on the surface Q. The processing area ME and the non-processing area NE will be described below with reference to Figures 33 and 34.
[0149] 33, a machining area ME is set in the central area of the surface Q. This machining area ME is an area of the surface Q where scraping is performed to form a recess R. The machining area setting information MI includes information on the position (coordinates) of the robot coordinate system C1 in which the machining area ME is set.
[0150] 34, a non-machining area NE is set in the central area of the surface Q. This non-machining area NE is an area of the surface Q where the formation of a recess R should be avoided by scraping. The non-machining area setting information NI includes information on the position (coordinates) of the robot coordinate system C1 in which the non-machining area NE is set.
[0151] The operator inputs machining area setting information MI or non-machining area setting information NI as pattern information PI. For example, the operator may input, as the machining area setting information MI or non-machining area setting information NI, coordinates in the robot coordinate system C1 of each vertex P31, P32, P33, and P34 of a polygon that defines the machining area ME or non-machining area NE, and information SI that specifies the shape of the polygon, as shown in Figures 33 and 34. D Enter '.
[0152] Information SI that specifies the shape D ' refers to the above information SI D Similarly, for example, the order in which vertices P31, P32, P33, and P34 are recognized (for example, "clockwise direction" or "counterclockwise direction") may be included. Alternatively, when the machining area ME or the non-machining area NE is circular, the operator may input the coordinates of the center point and the diameter of the circle as the machining area setting information MI or the non-machining area setting information NI.
[0153] The processor 40 sets the machining area ME in the robot coordinate system C1 by referring to the machining area setting information MI, and functions as the position determining unit 56 to determine the position of the recessed portion R (position of the reference point RP) within the set machining area ME. As a result, the position of the recessed portion R is determined within the machining area ME as shown in FIG.
[0154] Alternatively, the processor 40 sets a non-machining area NE in the robot coordinate system C1 by referring to the non-machining area setting information NI, and functions as the position determining unit 56 to determine the position of the recess R (e.g., position P1) so as to avoid the set non-machining area NE. As a result, as shown in Fig. 34, the position of the recess R is determined within an area on the surface Q other than the non-machining area NE. For example, the operator can set a hole, groove, or protrusion formed on the surface Q as the non-machining area NE using the non-machining area setting information NI, and arbitrarily avoid performing scraping on the hole, groove, or protrusion on the surface Q.
[0155] The offset information PI4 is calculated based on the machining area. MEAlternatively, the information may further include information for setting an offset distance δ between the boundary line of the non-machined area NE and the recessed area R. In this case, the processor 40 may set the position of the recessed area R to the boundary line of the non-machined area NE. ME Alternatively, it is determined as a position that is an offset distance δ away from the boundary line of the non-machined area NE.
[0156] Furthermore, when processor 40 receives input of the length x2 and width y1 of recess R as dimensional information DI of the machining conditions MC and input of offset distances δ2 and δ4 (FIG. 17) as offset information PI4, processor 40 may determine the position of recess R so that the distance between the corresponding virtual occupation area R' and edge O is equal to or greater than the offset distance δ2 or δ4. As described above, virtual occupation area R' can be estimated from the length x2 and width y1.
[0157] The processor 40 may automatically determine other parameters of the machining conditions MC according to some parameters of the machining conditions MC input by the operator. For example, if the operator sets the dimension information DI as the machining conditions MC to x1=10 [mm] and z1=5 [mm], and the command CM to the speed command PC V_2 (Speed V P_2 )=100 [mm / sec]. In this case, the processor 40 calculates a speed command FC as the machining condition MC from the input data of the machining condition MC and the above-mentioned equations (1) and (2). V_0 (Speed V F_0 ) to FC V_0 = 50 [mm / sec].
[0158] The above-mentioned machining conditions MC are the target value F of the pressing force F T Further, regarding the machining conditions MC, dimension information DI (length x2, width y1, and depth z3), trajectory control information TI (distances x1, z1, x3, and z2), and command CM (position control command PC n , and force control command FC) and the target value of force control F TA data table DT1 storing at least two of the above in association with each other may be stored in the memory 42. As an example, assume that the operator inputs a depth z3 as the dimension information DI of the machining condition MC. In this case, the processor 40 calculates a target value F corresponding to the input depth z3. T may be searched from the data table DT1 and set automatically.
[0159] In the above embodiment, as shown in Fig. 7, the case has been described in which the tip 32a of the scraper 16 reaches the teaching point TP3 at the end of scraping, and the x-coordinate of position P2 in the robot coordinate system C1 is approximately the same as that of the teaching point TP2. However, in practice, the tip 32a of the scraper 16 may deviate from the teaching point TP3 (e.g., downward) at the end of scraping, and the position P2 may deviate from the teaching point TP2 (e.g., to the right). Such an example is shown in Fig. 35.
[0160] In the example shown in Figure 35, in the actual trajectory TR of the scraper 16 during scraping, position P2 shifts to the right from teaching point TP2, and when the scraper 16 reaches a position corresponding to teaching point TP3, the tip 32a of the scraper 16 is positioned at trajectory end point P4, which is shifted downward from teaching point TP3.
[0161] In this trajectory TR, the distance x2' in the x-axis direction of the robot coordinate system C1 between the position P1 and the teaching point TP2 is smaller than the length x2 of the recess R to be formed. This distance x2' is a parameter highly correlated with the length x2, and can be included in the dimension information DI. Furthermore, the distance x3' in the x-axis direction of the robot coordinate system C1 between the position P2 and the trajectory end point P4 (or the teaching point TP3) is smaller than the distance x3 between the teaching points TP2 and TP3.
[0162] Furthermore, the distance z2' in the z-axis direction of the robot coordinate system C1 between the position P2 and the trajectory end point P4 is smaller than the distance z2 between the position P2 and the teaching point TP3. The distances x3 and z2 as the trajectory control information TI are parameters that have a high correlation with the distances x3' and z2' of the actual trajectory TR, and the distances x3' and z2' can be included in the trajectory control information TI together with the distances x3 and z2.
[0163] The trajectory TR shown in Fig. 35 can be formed, for example, when the processor 40 omits step S8 and ends the position control and force control in step S10 in the flow shown in Fig. 23 or 25. In such a case, the operator operates the input device 46 to input the length x2, width y1, and depth z3 of the recess R, as well as the distance x2', as dimension information DI, and inputs the distances x3 and z2 as trajectory control information TI.
[0164] Then, when the processor 40 determines the coordinates (X1, Y1, Z1) of the position P1 of the recess R in the above-mentioned step S2, S21, S23 or S25, in the above-mentioned step S3, it obtains the coordinates of the teaching point TP2 as coordinates (X1+x2', Y1, Z1+z1) and the coordinates of the teaching point TP3 as coordinates (X1+x2'+x3, Y1, Z1+z2) in accordance with the teaching point calculation program PG2. In this way, the processor 40 calculates the coordinates of the teaching points TP that define the movement path MP based on the dimension information DI and the trajectory control information TI. n can be calculated automatically.
[0165] In the example shown in FIG. 35, the length x2 of the recess R and the distances x2′, x3, and z2 (or the distances of the teaching point TP relative to the reference point RP of the recess R) n The memory 42 may store a data table DT2 in which the data (teach point position data indicating the position of the target object) and the teaching point position data (teach point position data indicating the position of the target object) are stored in association with each other.
[0166] In this case, the operator inputs the length x2 of the recess R as the dimension information DI, and the processor 40 searches the data table DT2 for the distances x2', x3, and z2 (or the teaching point position data) corresponding to the input length x2, and determines the teaching point TP in the robot coordinate system C1 from the distances x2', x3, and z2 (or the teaching point position data) and the position of the recess R (position P1) determined by the position determination unit 56. n The data table DT2 may be automatically calculated based on predetermined machining conditions MC and teaching points TP, for example, by an experimental method or a simulation. n It can be created by trying scraping processing.
[0167] Alternatively, a data table DT2' storing the length x2, the distances x3' and z2' and the distances x2', x3 and z2 (or teaching point position data) in association with each other may be stored in the memory 42. In this case, the operator may input the length x2 of the recess R as the dimension information DI and the distances x3' and z2' as the trajectory control information TI.
[0168] Then, the processor 40 searches the data table DT2' for distances x2', x3, and z2 (or teaching point position data) corresponding to the input lengths x2, x3', and z2', and determines the teaching point TP in the robot coordinate system C1 from the distances x2', x3, and z2 (or teaching point position data) and the position of the recess R (position P1) determined by functioning as the position determination unit 56. n The position may be calculated automatically.
[0169] The row direction G and the column direction H are not limited to the illustrated example, and may be set in any direction relative to the surface Q. In the flow shown in FIGS. 23 and 24, the teaching point TP n However, the present invention is not limited to this. Before performing scraping, the processor 40 may determine the positions of all recesses R and update the teaching points TP for all recesses R whose positions have been determined. nThen, the processor 40 may calculate the positions of all the recessed portions R and the teaching points TP calculated for all the recessed portions R. n After storing the above in the memory 42, scraping may be started.
[0170] Furthermore, the patterns that can be specified by the pattern information PI1 are not limited to the above-mentioned parallel patterns and houndstooth patterns, but may include any other patterns, such as an X-shaped pattern in which one recess R is superimposed on another recess R in an X-shape, or a random pattern in which recesses R are randomly arranged on the surface Q using a random number table or the like.
[0171] In the above embodiment, the reference point RP indicating the position of the recess R is set to position P1. However, the present invention is not limited to this, and the reference point may be, for example, position P2 or midpoint P3, or any point whose position relative to the recess R is known.
[0172] Furthermore, in the above-described embodiment, the processor 40 determines the position of the recessed portion R as coordinates in the robot coordinate system C1. However, this is not limiting, and the processor 40 may determine the position as coordinates in any other coordinate system, such as a workpiece coordinate system set for the workpiece W, a world coordinate system that defines the three-dimensional space of the work cell, or a user coordinate system arbitrarily set by an operator. While the present disclosure has been described above through the embodiments, the above-described embodiments do not limit the invention according to the claims. [Explanation of symbols]
[0173] 10 Robot Systems 12. Robot 16 Scraper 18 Control Device 40 processors 52 Robot control unit 54 Input reception section 56 Positioning section 58 Route Generation Unit 60 equipment
Claims
1. An apparatus for determining the positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface of the workpiece with a scraper by a robot, the apparatus comprising: an input receiving unit that receives input of shape information of the surface and pattern information that defines the positional relationship of the plurality of recesses on the surface through an input device that allows an operator to input data, the input receiving unit receiving coordinates that define the surface or drawing data of the workpiece as the input of the shape information; a position determination unit that automatically determines the position of each of the recesses on the surface based on the shape information and the pattern information received by the input reception unit.
2. An apparatus for determining the positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface of the workpiece with a scraper by a robot, the apparatus comprising: an input receiving unit that receives input of shape information of the surface and pattern information that defines a positional relationship between the plurality of recesses on the surface through an input device that allows an operator to input data, the pattern information including pattern information that specifies a type of pattern in which the plurality of recesses are arranged in a grid pattern in row and column directions defined on the surface; a position determination unit that automatically determines the position of each of the recesses on the surface based on the shape information and the pattern information received by the input reception unit.
3. The apparatus according to claim 2 , wherein the pattern information further includes angle information that sets an angle of the row direction or the column direction relative to a reference direction defined for the surface.
4. The apparatus according to claim 2 or 3, wherein the pattern information further includes pitch information that sets a pitch between two of the recesses adjacent to each other in the row direction or the column direction.
5. An apparatus for determining the positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface of the workpiece with a scraper by a robot, the apparatus comprising: an input receiving unit that receives input of shape information of the surface and pattern information of the plurality of recesses on the surface; a position determination unit that automatically determines the position of each of the recesses on the surface based on the shape information and the pattern information received by the input reception unit, The pattern information includes a position cancellation condition that defines whether to cancel the determined position when a portion of the virtual occupation area of the recess whose position has been determined by the position determination unit protrudes outward from the edge of the surface.
6. An apparatus for determining the positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface of the workpiece with a scraper by a robot, the apparatus comprising: an input receiving unit that receives input of shape information of the surface and pattern information that defines a positional relationship of the plurality of recesses on the surface through an input device that allows an operator to input data, the pattern information including offset information that sets an offset distance by which the positions of the recesses to be determined are shifted from an edge of the surface; a position determination unit that automatically determines the position of each of the recesses on the surface based on the shape information and the pattern information received by the input receiving unit, and determines the position so that the recesses are shifted by the offset distance from the edge.
7. The pattern information is Processing area setting information for setting a processing area on the surface where the scraping process is to be performed; or non-processing area setting information for setting a non-processing area on the surface where the scraping is not performed; The position determination unit determining the position within the processing area; or The apparatus according to any one of claims 1 to 6, wherein the position is determined so as to avoid the non-processing area.
8. the input receiving unit further receives input of processing conditions for causing the robot to execute the scraping processing, The device described in any one of claims 1 to 7, further comprising a path generation unit that automatically generates a movement path for the robot when forming one recess based on the processing conditions accepted by the input acceptance unit and the position of the one recess determined by the position determination unit.
9. The processing conditions are: Dimensional information of the recess; trajectory control information that defines an angle at which the robot moves the scraper to contact the surface during the scraping process; The apparatus according to claim 8 , wherein the path generation unit automatically calculates teaching points that define the movement path based on the dimension information and the trajectory control information.
10. A robot that moves the scraper; A device according to any one of claims 1 to 9; a robot control unit that controls the operation of the robot so as to perform the scraping process based on the position determined by the position determination unit.
11. A method for determining positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface with a scraper by a robot to flatten the surface, comprising: The processor: receiving input of shape information of the surface and pattern information that defines a positional relationship between the plurality of recesses on the surface through an input device that allows an operator to input data, and receiving input of coordinates that define the surface or drawing data of the workpiece as the input of the shape information; automatically determining the location of each of the recesses on the surface based on the received shape information and pattern information.
12. A method for determining positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface with a scraper by a robot to flatten the surface, comprising: The processor: receiving input of shape information of the surface and pattern information that defines a positional relationship of the plurality of recesses on the surface through an input device that allows an operator to input data; automatically determining the position of each of the recesses on the surface based on the received shape information and pattern information; The method, wherein the pattern information includes pattern information that specifies a type of pattern in which the plurality of recesses are arranged in a grid pattern in row and column directions defined on the surface.
13. A method for determining positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface with a scraper by a robot to flatten the surface, comprising: The processor: receiving input of shape information of the surface and pattern information of the plurality of recesses on the surface; automatically determining the position of each of the recesses on the surface based on the received shape information and pattern information; A method in which the pattern information includes a position cancellation condition that defines whether to cancel the determined position when a portion of the virtual occupied area of the recess whose position has been determined protrudes outward from the edge of the surface.
14. A method for determining positions of a plurality of recesses to be formed on a surface of a workpiece by scraping the surface with a scraper by a robot to flatten the surface, comprising: The processor: receiving input of shape information of the surface and pattern information defining a positional relationship of the plurality of recesses on the surface through an input device that allows an operator to input data, the pattern information including offset information that sets an offset distance by which the positions of the recesses to be determined are shifted from an edge of the surface; automatically determining the position of each of the recesses on the surface based on the received shape information and pattern information such that the recesses are offset relative to the edge by the offset distance.
Citation Information
Patent Citations
Scraping method by m / C
JP1995001229A
Automatic work surface machining device
JP1995276206A
Scraping device and scraping method
JP1999207477A
Cutting tool holder characterized by flexible structure and its use
JP2004042164A
Scraping apparatus and scraping method, using robot
JP2016137551A