Route teaching data creation device, method and program
The route teaching data creation device adjusts interpolation points to match teaching points in robot teaching systems, ensuring accurate passage through intended locations and reliable process execution.
Patent Information
- Application Number
- JP2021091032
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-05-31
- Publication Date
- 2025-03-19
- Estimated Expiration
- 2041-05-31
AI Technical Summary
Spline interpolation in robot teaching systems can result in interpolation points being shifted relative to teaching points, potentially causing the robot to miss processing locations set by the user.
A route teaching data creation device and method that performs spline interpolation to generate interpolation points and then adjusts the position information of these points to match the teaching points, ensuring the robot passes through the intended locations.
This approach ensures that the robot reliably passes through the teaching points set by the user, allowing for accurate execution of processes such as coating at the intended positions.
Smart Images

Figure 0007648893000001 
Figure 0007648893000002 
Figure 0007648893000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a route teaching data creation device, a method thereof, and a program. [Background technology]
[0002] Based on teaching points (nodes) set by the user, a path for the robot tool is set (for example, Patent Document 1). For example, based on this path, any process specified by the user, such as the start or end of coating, is performed. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 1-217608 Summary of the Invention [Problem to be solved by the invention]
[0004] Since the teaching points are spaced apart, spline interpolation is used to insert interpolation points between the teaching points, and the tool path is determined by the interpolation points. The tool is driven along a spline curve that connects the interpolation points in order, and various processes (such as painting) can be performed by the tool at the positions of the interpolation points.
[0005] However, when performing spline interpolation on teaching points, the positions of the generated interpolated points may deviate from the positions of the teaching points. In such a case, the teaching points will not be included on the spline path connecting the interpolated points, and it may not be possible to perform processing such as coating by the robot at the positions of the teaching points set by the user.
[0006] The present disclosure has been made in consideration of the above circumstances, and aims to provide a path teaching data creation device, method, and program capable of creating path teaching data for a robot that reliably passes through teaching points. [Means for solving the problem]
[0007] A first aspect of the present disclosure includes a spline interpolation unit that performs spline interpolation based on a plurality of given teaching points to generate a plurality of interpolation points between adjacent teaching points, and a path teaching data creation unit that creates path teaching data indicating positions through which a tool of a robot passes so as to pass through the positions of the teaching points, based on position information of the plurality of interpolation points generated by the spline interpolation unit and position information of the plurality of teaching points. The path teaching data creation unit specifies one of the interpolation points corresponding to one of the teaching points based on the position information of the plurality of teaching points and the position information of the plurality of interpolation points generated by the spline interpolation unit, and changes the position information of the specified interpolation point to the position information of the corresponding teaching point. This is a route teaching data creation device.
[0008] A second aspect of the present disclosure is a method for manufacturing a robot that includes a spline interpolation step of performing spline interpolation based on a plurality of given teaching points to generate a plurality of interpolation points between adjacent teaching points, and a path teaching data creation step of creating path teaching data indicating positions through which a tool of a robot passes so as to pass through the positions of the teaching points, based on position information of the plurality of interpolation points generated in the spline interpolation step and position information of the plurality of teaching points. The path teaching data creation step includes identifying one of the interpolation points corresponding to one of the teaching points based on position information of the plurality of teaching points and position information of the plurality of interpolation points generated in the spline interpolation step, and changing the position information of the identified interpolation point to the position information of the corresponding teaching point. This is a method for creating route teaching data.
[0009] A third aspect of the present disclosure is a route teaching data creation program for causing a computer to function as the above-mentioned route teaching data creation device. Effect of the Invention
[0010] According to the present disclosure, it is possible to create path teaching data for a robot that reliably passes through teaching points. [Brief description of the drawings]
[0011] [Figure 1] FIG. 2 is a diagram illustrating an example of a hardware configuration of a control device according to an embodiment of the present disclosure. [Diagram 2] FIG. 2 is a functional block diagram illustrating functions of a control device according to an embodiment of the present disclosure. [Diagram 3] FIG. 13 is a diagram illustrating an example of setting teaching points according to an embodiment of the present disclosure. [Figure 4] FIG. 11 is a diagram illustrating an example of setting a section according to an embodiment of the present disclosure. [Diagram 5] FIG. 13 is a diagram illustrating an example of generating interpolation points in a target section according to an embodiment of the present disclosure. [Figure 6] FIG. 13 is a diagram illustrating an example of grouping according to an embodiment of the present disclosure. [Figure 7] FIG. 13 illustrates an example of correction of an interpolation point according to an embodiment of the present disclosure. [Figure 8] FIG. 13 illustrates an example of a correction according to an embodiment of the present disclosure. [Figure 9] 10 is a flowchart illustrating an example of a procedure for a route instruction data creation process according to an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] Hereinafter, an embodiment of a route teaching data creation device, a method thereof, and a program thereof according to the present disclosure will be described with reference to the drawings.
[0013] A path teaching data creating device 20 (see FIG. 2) according to an embodiment of the present disclosure is provided in, for example, a control device 10 that controls a robot that performs processing on a workpiece. Then, the path teaching data creating device 20 creates path teaching data that indicates a movement path of the tool of the robot. That is, based on the path teaching data created by the path teaching data creating device 20, the tool of the robot moves relative to the workpiece and performs a predetermined processing. In this embodiment, an example will be described in which the robot paints (starts and finishes painting) the workpiece, but the processing that is executed is not limited to painting.
[0014] Fig. 1 is a schematic diagram showing an example of a hardware configuration of a control device 10 according to an embodiment of the present invention. As shown in Fig. 1, the control device 10 is a so-called computer, and includes, for example, a CPU (Central Processing Unit) 11, a main memory 12, a storage unit 13, an external interface 14, a communication interface 15, an input unit 16, and a display unit 17. These units are connected to each other directly or indirectly via a bus, and cooperate with each other to execute various processes.
[0015] The CPU 11 controls the entire control device 10 using, for example, an OS (Operating System) stored in a memory unit 13 connected via a bus, and performs various processes by executing various programs stored in the memory unit 13.
[0016] The main memory 12 is composed of writable memory such as a cache memory or a RAM (Random Access Memory), and is used as a working area for reading out execution programs of the CPU 11, writing processing data by the execution programs, and the like.
[0017] The storage unit 13 is a non-transitory computer readable storage medium, such as a ROM (Read Only Memory), an HDD (Hard Disk Drive), a flash memory, etc. The storage unit 13 stores, for example, an OS for controlling the entire device, such as Windows (registered trademark), iOS (registered trademark), Android (registered trademark), a BIOS (Basic Input / Output System), various device drivers for operating peripheral devices as hardware, various application software, and various data and files. The storage unit 13 also stores programs for implementing various processes and various data required for implementing various processes.
[0018] The external interface 14 is an interface for connecting to an external device. Examples of the external device include an external monitor, a USB memory, an external HDD, etc. Although only one external interface is illustrated in the example shown in FIG. 1, multiple external interfaces may be provided.
[0019] The communication interface 15 functions as an interface for connecting to a network to communicate with other devices and for transmitting and receiving information. For example, the communication interface 15 communicates with other devices by wire or wirelessly. Examples of wireless communication include Bluetooth (registered trademark), Wi-Fi, and communication using a dedicated communication protocol. An example of wired communication is a wired LAN (Local Area Network).
[0020] The input unit 16 is a user interface such as a keyboard, a mouse, a touch pad, etc., through which a user gives instructions to the route teaching data creating device 1.
[0021] The display unit 17 is, for example, a liquid crystal display, an organic EL (Electroluminescence) display, etc. Furthermore, the display unit 17 may be a touch panel display on which a touch panel is superimposed.
[0022] Fig. 2 is a functional block diagram showing functions of the control device 10. As shown in Fig. 2, the control device 10 includes a path teaching data creating device 20 and a tool driving device 24. In this embodiment, the control device 10 is configured to include the path teaching data creating device 20, but the path teaching data creating device 20 may be provided separately from the control device 10. The path teaching data created by the path teaching data creating device 20 may be provided to the control device 10 to drive the robot.
[0023] The functions realized by these units are realized, for example, by processing circuitry. For example, a series of processes for realizing the functions shown below is stored in the storage unit 13 in the form of a program (for example, a route teaching data creation program), and the CPU 11 reads this program into the main memory 12 and executes information processing and calculation processing to realize various functions.
[0024] The program may be pre-installed in the storage unit 13, provided in a state stored in another computer-readable storage medium, or distributed via wired or wireless communication means, etc. Computer-readable storage media include magnetic disks, magneto-optical disks, CD-ROMs, DVD-ROMs, semiconductor memories, etc.
[0025] The path teaching data creating device 20 includes a teaching point setting section 21, a spline interpolation section 22, and a path teaching data creating section .
[0026] The teaching point setting unit 21 sets teaching points (nodes). Teaching points are positions through which the tool of the robot is desired to pass, and are set by the user. Teaching points are also set as positions where a predetermined process is desired to be performed on a workpiece. In this way, teaching points are instruction points set by instructions from the user. Note that teaching points are not limited to being set by the user, and may be set automatically by calculation processing.
[0027] The teaching points are set, for example, for three-dimensional shape data (three-dimensional CAD data) of a workpiece. FIG. 3 is a diagram showing an example of setting teaching points. As shown in FIG. 3, teaching points P1 to P12 are set, for example. The teaching points include a number element, and a start point and an end point can be specified. In the example of FIG. 3, the teaching point P1 is the start point, and the teaching point P12 is the end point. In this manner, a sequence of teaching points is set. In FIG. 3, for the purpose of explanation, a spline curve for the teaching points P1 to P12 is virtually shown as S1. The spline curve of S1 may be calculated by the path teaching data creation device 20, or may be calculated by a subsequent device that receives the path teaching data from the path teaching data creation device 20.
[0028] The spline interpolation unit 22 performs spline interpolation based on a plurality of given teaching points, and generates a plurality of interpolation points between adjacent teaching points. In this embodiment, the spline interpolation unit 22 performs spline interpolation based on a plurality of teaching points set by the teaching point setting unit 21. When a large number of teaching points are set, the processing load is large if spline interpolation calculations are performed for all teaching points at once. For this reason, the spline interpolation unit 22 divides the plurality of teaching points into a plurality of sections, and generates an interpolation point for each section.
[0029] For this reason, the spline interpolation unit 22 includes a section setting unit 31 and an interpolation calculation unit 32 .
[0030] The section setting unit 31 divides the sequence of teaching points set by the teaching point setting unit 21 into a plurality of sections. Each section is set to include a plurality of teaching points, for example. For example, a section may be set for each predetermined number of teaching points. FIG. 4 shows an example in which sections are set and divided for the teaching points set as in FIG. 3. In the example of FIG. 4, the section from P1 to P5 is set as the first section, the section from P5 to P7 is set as the second section, and the section from P7 to P12 is set as the third section. The method of setting the sections is not limited to that shown in FIG. 4.
[0031] The interpolation calculation unit 32 performs spline interpolation calculation for each section. Specifically, the interpolation calculation unit 32 sets one of the multiple sections set by the section setting unit 31 as a target section and performs spline interpolation on this target section. In spline interpolation, an interpolation point is generated between teaching points to interpolate between the teaching points. For example, when performing spline interpolation on five teaching points, an interpolation point is generated on a spline curve (a polynomial approximation curve that passes through a plurality of teaching points) that passes through each of the five teaching points. Note that various techniques have already been proposed for spline interpolation itself. Therefore, a known technique may be appropriately adopted. That is, an interpolation point is generated between teaching points by executing processing according to a known algorithm.
[0032] Here, if known spline interpolation is performed based only on the teaching points included in the target section, there is a possibility that the vicinity of the boundary between sections cannot be connected smoothly. For this reason, the interpolation calculation unit 32 sets one of the multiple sections as the target section, and generates multiple interpolation points in the target section based on the teaching points included in the target section, multiple teaching points in the section before the target section that are continuous with the teaching points of the target section, and multiple teaching points in the section after the target section that are continuous with the teaching points of the target section.
[0033] FIG. 5 shows an example of calculating the interpolation points of the second section in FIG. 4 as the target section. As shown in FIG. 5, when calculating the interpolation points of the second section, the interpolation points are calculated based on the teaching points (P5, P6, P7) included in the second section, the teaching points (P3, P4) before the second section (starting point side), and the teaching points (P8, P9) after the second section (end point side). The teaching points (P3, P4) before the second section (starting point side) become a plurality of teaching points that are continuous with the teaching points (P5, P6, P7) of the second section in the section (first section) before the second section. The teaching points (P8, P9) after the second section (end point side) become a plurality of teaching points that are continuous with the teaching points (P5, P6, P7) of the second section in the section (third section) after the second section. Then, interpolation points corresponding to a spline curve passing through each teaching point from P3 to P9 are generated. As a result, when a spline curve is generated based on these interpolation points, it becomes possible to smoothly generate a spline curve near teaching point P5 and near teaching point P7 in the second section. In Fig. 5, the spline curve passing through teaching points P3 to P9 is virtually shown as S2.
[0034] In this way, when the interpolation points from teaching points P3 to P9 are calculated, only the portion of the second section, which is the target section, is trimmed to obtain the interpolation points of the second section. In the example of FIG. 5, although S1 and S2 almost coincide in the second section, there is a possibility that S2 may deviate from S1 on the end side of S2 (P3 side or P9 side). For this reason, by generating the interpolation points from P3 to P9 and trimming (cutting the end side) only the portion of the second section, it is possible to set the same interpolation points as when all teaching points (P1 to P12) are considered. For the other sections, in the same manner, spline interpolation calculation is performed using not only the teaching points included in the section, but also multiple teaching points before and after the section, and unnecessary parts are cut off.
[0035] Note that if the starting point of the section is the start point of the taught point (P1), there are no taught points before this section. Therefore, when calculating the interpolation points of this section, the taught points before the section are not used. Similarly, if the ending point of the section is the end point of the taught point (P12), there are no taught points after this section. Therefore, when calculating the interpolation points of this section, the taught points after the section are not used.
[0036] When calculating the interpolation points of the target section, the calculation is performed using not only the teaching points contained in the target section, but also multiple teaching points in the section before the target section that are consecutive to the teaching points of the target section, and multiple teaching points in the section after the target section that are consecutive to the teaching points of the target section.Since only the interpolation points of the target section are used, the continuity with the interpolation points of adjacent sections can be improved.
[0037] Based on the position information of the plurality of interpolation points and the position information of the plurality of teaching points generated by the spline interpolation unit 22, the path teaching data creation unit 23 creates path teaching data indicating positions through which the tool of the robot passes so as to pass through the positions of the teaching points. Specifically, based on the position information of the plurality of teaching points and the position information of the plurality of interpolation points generated by the spline interpolation unit 22, the path teaching data creation unit 23 identifies any one of the interpolation points corresponding to any one of the teaching points. Then, the path teaching data creation unit 23 changes the position information of the identified interpolation point to the position information of the corresponding teaching point. For this reason, the path teaching data creation unit 23 includes a grouping unit 33 and a correction unit 34.
[0038] The grouping unit 33 sets one of the multiple interpolation points sandwiched between adjacent teaching points and the adjacent teaching points as one group. Specifically, the interpolation points located from the position of a certain teaching point to the position before the position of the next teaching point are grouped as the interpolation points belonging to the certain teaching point. For example, the interpolation points located from the position of the teaching point P5 (including the position of the teaching point P5) to the position of the teaching point P6 are grouped as the interpolation points belonging to the teaching point P5. For example, the grouping is performed by adding information of the teaching point to which the interpolation point belongs (for example, the teaching point number) to the interpolation point. FIG. 6 shows an example in which the interpolation points located from the position of the teaching point P5 to the position of the teaching point P6 are grouped. Information from 5-1 to 5-6 is added to each interpolation point. For example, 5-3 means that it is the third interpolation point among the interpolation points belonging to P5. Similarly, information from 6-1 to 6-5 is added to the interpolation points located from the position of the teaching point P6 to the position of the teaching point P7.
[0039] The correction unit 34 corrects the position information of the interpolation points generated by the spline interpolation unit 22. FIG. 7 is a diagram showing an example of the arrangement of teaching points and interpolation points. In FIG. 7, a spline curve passing through teaching points Pa and Pb is shown as S3. As shown in FIG. 7, the spline interpolation unit 22 generates the interpolation points by spline interpolation calculation. Here, when looking at an enlarged view of the vicinity of the teaching point Pb, an interpolation point is set between the teaching points, but an interpolation point is not set at a position that coincides with the position of the teaching point. Therefore, the correction unit 34 replaces the position information of the interpolation point with the position information of the teaching point. That is, the correction unit 34 performs processing so that an interpolation point is set at the position of the teaching point. As a result, an interpolation point having the position information of the teaching point Pb is generated.
[0040] For example, the correction unit 34 checks the sequence of interpolation points generated by the spline interpolation unit 22 in order from the starting point, and when a group is switched, identifies the first interpolation point of the group. The first interpolation point of the group is the interpolation point that is closest to the teaching point to which it belongs within the group. Therefore, the correction unit 34 identifies the first interpolation point of the group as the interpolation target, and replaces the position information of this interpolation point with the position information of the teaching point to which it belongs.
[0041] An example of correction made to Figure 7 is shown in Figure 8. In the group of interpolation points (6-1 to 6-5) belonging to teaching point P6, the interpolation point 6-1 is the closest interpolation point to teaching point P6. Therefore, by replacing the interpolation point 6-1 with the position of teaching point P6 (rewriting the position information of the interpolation point with the position information of the teaching point), an interpolation point is set at the position of teaching point P6.
[0042] In the above example, the interpolation point in the group after the switch that is closest to the set position of the teaching point is moved to the teaching point position, but it is also possible to move the interpolation point in the group before the switch that is closest to the set position of the teaching point to the teaching point position.
[0043] In the above example, the interpolation point closest to the set position of the teaching point in the group is identified, but the method is not limited to the above as long as an interpolation point close to the teaching point can be identified. That is, the setting unit may identify an interpolation point adjacent to the set position of the teaching point among the interpolation points on the spline curve, and replace the interpolation point with the set position of the teaching point. The method of identifying the interpolation point to be corrected is not limited.
[0044] In the above example, the interpolation points are replaced with the teaching point positions, but it is also possible to set new interpolation points (not generated by the spline interpolation unit 22) at the teaching point positions.
[0045] In this manner, the interpolation points generated by the spline interpolation section 22 are corrected by the correction section 34. This makes it possible to more reliably set the interpolation points having the position information of the positions where the teaching points are set.
[0046] When the interpolation points are set in this manner, the sequence of the interpolation points becomes the route teaching data. That is, the route teaching data includes the interpolation points that are inserted between the teaching points and the interpolation points having the position information of the teaching points corrected by the correction unit 34, and the position information of each interpolation point can be referred to.
[0047] The tool driving device 24 drives the tool of the robot based on the path teaching data. In the path teaching data, the positions through which the tool of the robot passes are indicated as the positions of the interpolation points, and the tool of the robot moves from one interpolation point to another in the order of the row of the interpolation points. Even at the section switching position, the tool moves in the order of the row of the interpolation points. And since the path teaching data includes position information of the interpolation points, it is also possible to cause the robot to perform a predetermined process such as painting at the positions of the interpolation points. In particular, since the path teaching data includes the interpolation points having position information of each teaching point, it is possible for the user to perform any process at the positions intended by the user (positions of the teaching points).
[0048] Next, an example of a route teaching data creation process by the above-mentioned route teaching data creation device 20 will be described with reference to Fig. 9. Fig. 9 is a flowchart showing an example of a procedure of the route teaching data creation process according to this embodiment. The flow shown in Fig. 9 will be described by taking as an example a case where route teaching data is generated for a certain section, and when the tool moves to a predetermined position set in the middle of the certain section, route teaching data for the next section is generated.
[0049] First, a plurality of teaching points are set (S101). Then, the set plurality of teaching points are divided into a plurality of sections (S102). Note that a section number (e.g., first section=1, second section=2, third section=3) is set to each section.
[0050] Next, the section number of the target section for performing spline interpolation is set (S103). In S103, the section number is set as the first section (for example, 1). Note that one section or multiple sections may be set as the target section.
[0051] Spline interpolation is performed on the target section to set the interpolation points (S104).
[0052] Next, the interpolation points are grouped (S105), whereby the interpolation points are associated with the teaching points to which they belong.
[0053] Next, the interpolation point to be corrected is specified, and the position information of this interpolation point is converted to the position information of the teaching point to which it belongs (S106). Since the interpolation point is set for the target section by the processes from S104 to S106, the robot can move the tool according to the set interpolation point.
[0054] Next, it is determined whether the target section is the final section (i.e., N) (S107). If it is the final section (YES in S107), the process ends.
[0055] If it is not the final section (NO in S107), it is determined whether the tool has reached a predetermined position (S108). The predetermined position is preset as a position within the section (e.g., a midpoint). If the predetermined position has not been reached (NO in S108), S108 is repeatedly executed.
[0056] If the predetermined position has been reached (YES in S108), the number of the next section to be executed is set (S109), and the process returns to S104.
[0057] Through this process, interpolation points for the sections are generated sequentially according to the position to which the tool has been moved. For example, if an interpolation point is set in the first section and the tool is moving through the first section, an interpolation point for the second section is generated when the tool reaches a predetermined position (e.g., an intermediate point) within the first section. The tool moves from the first section to the second section by tracing the row of interpolation points in order, and when the tool reaches a predetermined position (e.g., an intermediate point) within the second section, an interpolation point for the third section is generated. In other words, it is no longer necessary to generate interpolation points for all teaching points before the tool starts moving, which can save memory capacity.
[0058] As described above, the path teaching data creation device, method, and program according to this embodiment creates path teaching data indicating positions through which the tool of the robot passes so as to pass through the positions of each teaching point, based on the position information of the interpolation points and the teaching points generated by the spline interpolation unit 22. This allows the user to execute any process at the position (position of the teaching point) intended by the user. This makes it possible to improve user convenience.
[0059] By identifying one of the interpolation points corresponding to one of the teaching points and changing the position information of the identified interpolation point to the position information of the corresponding teaching point, the position information of the generated interpolation point can be modified to generate an interpolation point having the position information of the teaching point.
[0060] By identifying one of the multiple interpolation points generated by the spline interpolation unit 22 that is adjacent to the position of one of the teaching points as the interpolation point corresponding to the teaching point, the interpolation point close to the teaching point can be modified to have the position information of the teaching point.
[0061] A plurality of interpolation points sandwiched between adjacent teaching points and any one of the adjacent teaching points are set as one group. Then, by identifying the interpolation point closest to the teaching point in the group as the interpolation point corresponding to the teaching point, the interpolation point close to the teaching point can be corrected to have the position information of the teaching point.
[0062] By dividing multiple teaching points into multiple intervals and generating multiple interpolation points for each interval, the processing load can be reduced compared to the case where spline interpolation is performed for all teaching points at once. It is also expected that memory capacity can be saved.
[0063] One of the multiple sections is set as a target section, and multiple interpolation points in the target section are generated based on teaching points included in the target section, multiple teaching points in a section before the target section that are continuous with the teaching points of the target section, and multiple teaching points in a section after the target section that are continuous with the teaching points of the target section. This makes it possible to improve the continuity between the interpolation points of adjacent sections. In addition, since complex calculation processing (e.g., endpoint conditions) for improving the continuity can be suppressed, the processing load can be reduced.
[0064] The present disclosure is not limited to the above-described embodiment, and various modifications are possible without departing from the spirit and scope of the invention. [Explanation of symbols]
[0065] 10: Control device 11: CPU 12: Main memory 13: Storage section 14: External interface 15: Communication interface 16: Input section 17:Display section 20: Route teaching data creation device 21: Teaching point setting section 22: Spline Interpolation Section 23: Route instruction data creation section 24: Tool drive unit 31: Section setting section 32: Interpolation calculation section 33: Grouping section 34: Correction section P1~P12: Teaching points
Claims
1. a spline interpolation unit that performs spline interpolation based on a plurality of given teaching points to generate a plurality of interpolation points between adjacent teaching points; a path teaching data creation unit that creates path teaching data indicating positions through which a tool of a robot passes so as to pass through the positions of the teaching points, based on position information of the plurality of interpolation points generated by the spline interpolation unit and position information of the plurality of teaching points; Equipped with The route teaching data creation unit is A route teaching data creation device that identifies one of the interpolation points corresponding to one of the teaching points based on position information of the plurality of teaching points and position information of the plurality of interpolation points generated by the spline interpolation unit, and changes the position information of the identified interpolation point to the position information of the corresponding teaching point.
2. The route teaching data creation unit is The route teaching data creation device according to claim 1 , wherein among the plurality of interpolation points generated by the spline interpolation unit, any one of the interpolation points adjacent to the position of any one of the teaching points is identified as the interpolation point corresponding to the teaching point.
3. The route teaching data creation unit is setting any one of the plurality of interpolation points and the adjacent teaching points sandwiched between the adjacent teaching points as one group; 2. The route teaching data generating device according to claim 1, wherein the interpolation point that is closest to the teaching point within the group is identified as the interpolation point that corresponds to the teaching point.
4. The spline interpolation unit 4. The route teaching data generating device according to claim 1, wherein the plurality of teaching points are divided into a plurality of sections, and a plurality of the interpolation points are generated for each of the sections.
5. The spline interpolation unit A route teaching data creation device as described in claim 4, wherein one of the plurality of sections is set as a target section, and a plurality of interpolation points in the target section are generated based on the teaching point included in the target section, a plurality of teaching points in the section before the target section that are consecutive to the teaching point of the target section, and a plurality of teaching points in the section after the target section that are consecutive to the teaching point of the target section.
6. a spline interpolation step of performing spline interpolation based on a plurality of given teaching points to generate a plurality of interpolation points between adjacent teaching points; a path teaching data creating step of creating path teaching data indicating positions through which a tool of a robot passes so as to pass through the positions of the teaching points, based on position information of the plurality of interpolation points generated in the spline interpolation step and position information of the plurality of teaching points; The computer executes The route teaching data creating step includes: A route teaching data creation method, which identifies one of the interpolation points corresponding to any one of the teaching points based on position information of the plurality of teaching points and position information of the plurality of interpolation points generated in the spline interpolation process, and changes the position information of the identified interpolation point to the position information of the corresponding teaching point.
7. A route teaching data creating program for causing a computer to function as the route teaching data creating device according to any one of claims 1 to 5.
Citation Information
Patent Citations
Generation of spline curve
JP1989217608A
Repeating the spline function control positioning device
JP1989503010A
Tool path generation method and tool path generation device
WO2012056554A1