Route teaching data generation device, method, and recording medium
By selecting other curves that connect to the endpoint of the source curve as the target curve, and generating path teaching data based on the tangent direction, the problem of users having to specify multiple spline curves one by one in the prior art is solved, and the path teaching data is automatically generated, reducing the burden on users.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-26
- Publication Date
- 2026-03-17
AI Technical Summary
In existing technologies, generating robot path teaching data requires specifying multiple spline curves one by one, which places a heavy burden on users.
The selection unit selects other curves that connect to the endpoint of the source curve as the target curves for connection, and generates path teaching data based on the tangent direction of the source curve and the tangent direction of other curves, thus automatically generating path teaching data.
It reduces the burden on users when generating path teaching data and improves generation efficiency and accuracy.
Smart Images

Figure CN115401673B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a path teaching data generation apparatus, a path teaching data generation method, and a recording medium. Background Technology
[0002] For example, industrial robots can be controlled by providing the path of the robot's tool movement as teaching data. For instance, Patent Document 1 describes the use of two-dimensional CAD (Computer-Aided Design) data to generate teaching data for the robot.
[0003] Existing technical documents
[0004] Patent documents
[0005] Patent Document 1: Japanese Patent Application Publication No. 2005-332347 Summary of the Invention
[0006] Technical problems to be solved
[0007] However, the path teaching data used to drive and control the robot needs to represent a single path without branches. However, in the 3D CAD data used for design, multiple spline curves are connected in multiple ways (as an example, see...). Figure 4 Therefore, in the past Figure 4 In a 3D shape depicted by 3D CAD, as shown, the user needs to specify the path of the robot's tool movement one by one, which is a heavy burden for the user.
[0008] The present invention was made in view of the following circumstances, and its object is to provide a path teaching data generation apparatus, a path teaching data generation method, and a recording medium that can reduce the burden on users.
[0009] Technical means used to solve technical problems
[0010] A first aspect of the present invention is a path teaching data generation apparatus for generating path teaching data required for the drive control of a robot using design data containing information of multiple curves. The path teaching data generation apparatus includes: a selection unit that selects other curves connected to the endpoint of a connection source curve (which serves as a connection source curve) as connection target curves, and sequentially selects the selected other curves as the next connection source curve, and so on; and a path generation unit that generates the path teaching data based on the multiple curves selected by the selection unit. When multiple other curves connected to the endpoint of the connection source curve exist, the selection unit selects any one of the other curves as the connection target curve based on the final tangent direction of the connection source curve and the starting tangent directions of each of the multiple other curves.
[0011] A second aspect of the present invention is a path teaching data generation method for generating path teaching data required for the drive control of a robot using design data containing information of multiple curves. The method involves a computer performing the following steps: determining whether multiple other curves exist that connect to the endpoint of a connection source curve; selecting one of the other curves as a connection target curve if no such other curves exist; selecting any one of the other curves as the connection target curve based on the final tangent direction of the connection source curve and the starting tangent directions of each of the multiple other curves if multiple such other curves exist; using the selected other curve as the next connection source curve; and generating the path teaching data based on the selected multiple curves.
[0012] A third aspect of the invention is a computer-readable recording medium containing a program for enabling a computer to function as the aforementioned path teaching data generation device.
[0013] Technical effect
[0014] According to the present invention, it can reduce the burden on users. Attached Figure Description
[0015] Figure 1 This is a schematic diagram of the overall structure of a robot system according to one embodiment of the present invention.
[0016] Figure 2 This is a schematic structural diagram illustrating an example of the hardware structure of a path teaching data generation device according to an embodiment of the present invention.
[0017] Figure 3 This is a functional block diagram illustrating an example of the functions of a path teaching data generation device according to an embodiment of the present invention.
[0018] Figure 4 This is a diagram representing an example of a three-dimensional model.
[0019] Figure 5 This is a diagram illustrating the selection process performed by the selection unit according to one embodiment of the present invention.
[0020] Figure 6 This is a diagram illustrating the selection process performed by the selection unit according to one embodiment of the present invention.
[0021] Figure 7 This is a diagram illustrating the selection process performed by the selection unit according to one embodiment of the present invention.
[0022] Figure 8 This is a diagram illustrating the selection process performed by the selection unit according to one embodiment of the present invention.
[0023] Figure 9 This is a flowchart illustrating an example of the sequence of a path teaching data generation method according to an embodiment of the present invention.
[0024] Figure 10 This is a flowchart illustrating an example of the sequence of a path teaching data generation method according to an embodiment of the present invention.
[0025] Figure 11 This is a flowchart illustrating an example of the sequence of a path teaching data generation method according to an embodiment of the present invention. Detailed Implementation
[0026] Hereinafter, with reference to the accompanying drawings, a path teaching data generation apparatus, a path teaching data generation method, and a recording medium according to an embodiment of the present invention will be described.
[0027] Figure 1 This is a schematic diagram of the overall structure of a robot system 100 according to one embodiment of the present invention. Figure 1 As shown, the robot system 100 includes, for example, a path teaching data generation device 1, a robot control device 2, and a robot 3.
[0028] The path teaching data generation device 1 is a device used to generate the path teaching data required for the drive control of the robot 3 using design data containing information of multiple curves.
[0029] Robot control device 2 is a control device that drives and controls robot 3. Robot control device 2 drives and controls robot 3, for example, based on path teaching data generated by path teaching data generation device 1.
[0030] For example, the path teaching data generation device 1 and the robot control device 2 are connected via a network, forming a structure capable of sending and receiving data. The path teaching data generated by the path teaching data generation device 1 is sent to the robot control device 2 via the network, for example, and used in the robot control device 2.
[0031] Robot 3 is, for example, an industrial robot. For instance, a tool (hereinafter referred to as "robot tool") mounted on the end of the arm moves along a path based on path teaching data, and performs various set processes such as applying adhesive, deburring, and tightening screws, based on the drive control of robot control device 2.
[0032] Figure 2This is a schematic structural diagram illustrating an example of the hardware structure of a path teaching data generation device 1 according to an embodiment of the present invention. Figure 2 As shown, the path teaching data generation device 1 is a so-called computer, which 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 various parts are directly or indirectly connected to each other via a bus and cooperate to perform various processes. In addition, the input unit 16 and the display unit 17 may also be connected via a network, for example.
[0033] CPU 11 controls the entire path teaching data generation device 1, for example, by using an OS (Operating System) stored in a storage unit 13 connected via a bus, and performs various processes by executing various programs stored in the storage unit 13.
[0034] The main memory 12 is composed of writable memory such as cache memory or RAM (Random Access Memory), and is used as the work area for reading the program executed by the CPU 11 and writing the processing data processed by the program.
[0035] Storage unit 13 is a non-transitory computer-readable storage medium, such as ROM (Read Only Memory), HDD (Hard Disk Drive), flash memory, etc. Storage unit 13 stores, for example, operating systems such as Windows, iOS, and Android used to control the path teaching data generation device 1, BIOS (Basic Input / Output System), various device drivers used for hardware operations of peripheral devices, various application software, and various data and files. In addition, storage unit 13 stores programs for implementing various processes and various data required for implementing those processes.
[0036] External interface 14 is an interface for connecting to external devices. Examples of external devices include external monitors, USB storage devices, and external HDDs. It should be noted that... Figure 1 The example shown illustrates only one external interface, but multiple external interfaces are also possible.
[0037] The communication interface 15 connects to the network and communicates with other devices, serving as an interface for sending and receiving information.
[0038] For example, communication interface 15 can communicate with other devices via wired or wireless means. Examples of wireless communication include Bluetooth (registered trademark), Wi-Fi, and communication using proprietary communication protocols. Examples of wired communication include wired LANs (Local Area Networks).
[0039] The input unit 16 is, for example, a keyboard, mouse, touchpad, or other user interface used by the user to give instructions to the path teaching data generation device 1.
[0040] Display unit 17 may be, for example, a liquid crystal display (LCD) or an organic EL (Electroluminescence) display. Alternatively, display unit 17 may be a touch panel display with a touch panel superimposed on it.
[0041] Figure 3 This is a functional block diagram illustrating an example of the functions of the path teaching data generation device 1. For example... Figure 3 As shown, the path teaching data generation device 1 includes, for example, a CAD data storage unit 21, a CAD data acquisition unit 22, a display control unit 23, a selection unit 24, a path generation unit 25, a path teaching data storage unit 26, and a path modification unit 27.
[0042] All or part of these functions are implemented, for example, through processing circuitry. For example, a series of processes for implementing the functions shown below are stored in storage unit 13 in the form of a program (e.g., a path teaching data generation program). The CPU 11 reads the program into main memory 12 and performs information processing and arithmetic to realize various functions.
[0043] It should be noted that the program can be provided in a manner that is pre-installed in the storage unit 13, in a state stored on other computer-readable storage media, or distributed via wired or wireless communication units. Computer-readable storage media refers to disks, optical disks, CD-ROMs, DVD-ROMs, semiconductor memories, etc.
[0044] The CAD data storage unit 21 stores, for example, multiple 3D CAD data sets. These 3D CAD data sets are design data related to the products processed by the robot 3. The design data can be for the final processed product or for intermediate products.
[0045] 3D CAD data may contain information about multiple curves (spline curves). Here, "curve" also includes the concept of "straight line," and spline curves can be cited as an example. The information for each curve includes the coordinates of its first end and second end, as well as information used to connect the first and second ends.
[0046] As an example of information used to connect the first and second ends, tangent information, vector information, etc., can be listed. Additionally, each curve may also have orientation information. In this case, one of the first and second ends has information as a starting point, and the other has information as an ending point.
[0047] When the input information for any one of the multiple three-dimensional CAD data stored in the CAD data storage unit 21 is input from the input unit 16, the CAD data acquisition unit 22 acquires the specified three-dimensional CAD data from the CAD data storage unit 21.
[0048] The display control unit 23 displays the three-dimensional model represented by the three-dimensional CAD data acquired by the CAD data acquisition unit 22 on the display unit 17.
[0049] Furthermore, the display control unit 23 displays the path based on the path teaching data generated by the path generation unit 25 (described later) on the display unit 17. This allows the user to be visually guided along the path the robot tool will take.
[0050] For example, when the user input unit 24 inputs input information specifying an arbitrary curve and its starting point through the user operation input unit 16, it sets the specified curve as the connection source curve and selects other curves connected to the endpoint of the connection source curve as the connection target curve.
[0051] For example, suppose in Figure 4 When the 3D model is displayed on the display unit 17, the user operates the input unit 16 to specify point A and curve L. In this case, as shown... Figure 5 As shown, the selection unit 24 sets point A as the starting point P1 and sets the curve L1 containing the starting point P1 as the connection source curve.
[0052] Next, the selection unit 24 determines other curves that connect to the endpoint of the source curve based on the 3D CAD data. Thus, for example, as... Figure 6 As shown, the other curve connected to the endpoint P2 of the source curve L1 is determined as curve L2. Then, if there is only one other curve, the other curve is selected as the target curve for connection, and the selected other curve is selected as the next source curve for connection, and the curve is selected as the target curve for connection.
[0053] For example, in Figure 6 In the example shown, since there is only one other curve L2 connecting to the endpoint P2, curve L2 is selected as the target curve for connection, and this curve L2 is set as the next source curve for connection. Then, other curves connecting to the endpoint P3 of the source curve L2 are identified. This process is then repeated, for example, as follows: Figure 6 As shown, curves L2 to L6 are selected as the target curves for connection, and are set as the source curves for connection in turn.
[0054] In addition, when there are multiple other curves connected to the source curve, the selection unit 24 selects any one of the other curves as the target curve for connection based on the final tangent direction (e.g., terminal vector) of the source curve and the starting tangent directions (e.g., beginning vectors) of each of the multiple other curves.
[0055] More specifically, the selection unit 24 calculates the angle θ between the final tangent direction of the source curve and the initial tangent directions of multiple other curves, and selects the other curve with the smallest calculated connection angle θ as the target curve for connection.
[0056] For example, in Figure 6 In the illustrated 3D model, curves L7 and L8 exist as other curves connected to the endpoint P7 of curve L6, which serves as the source curve. In this case, the selection unit 24 calculates, for example, the connection angle between curve L6 and curve L7, and the connection angle between curve L6 and curve L8, respectively. Figure 7 It is a magnified view of the periphery of curve L6.
[0057] The connection angle θ can be represented by, for example, the following formula.
[0058]
[0059] in, The terminal vector connecting the source curves. This is the starting vector connecting the target curve.
[0060] Selection unit 24 selects the curve with the smallest connection angle among the calculated connection angles as the connection target curve. For example, selection unit 24 selects the curve whose cosθ value, as expressed by the above formula (1), is closest to 1 as the connection target curve.
[0061] Therefore, in Figure 7 In the illustrated 3D model, curve L7 is selected as the target curve connecting curve L6. It should be noted that... Figure 7In the 3D model shown, since curves L6, L7 and L8 are roughly represented by straight lines, they are represented without distinguishing between the initial and final vectors. However, in the case of spline curves, since the initial and final tangent directions of the curve may be different, it is necessary to distinguish them in this case.
[0062] Furthermore, when the connection angles of the source curve and multiple other curves are equal, the selection unit 24 determines a plane based on the starting point of the curve connected to the starting point of the source curve, as well as the starting and ending points of the source curve. Then, based on this plane and the starting tangent directions of the multiple other curves, any one of the other curves is selected as the target curve for connection.
[0063] For example, in a three-dimensional model Figure 8 In the case of the cuboid shown, curve L serves as the connecting source curve (which also contains straight lines). n The other curves connected are curve L. n+1 And curve L n+2 Furthermore, since these curves each intersect the source curve at a right angle, the connection angles are equal. In this case, the selection unit 24 selects the source curve L based on the connection angle. n The starting point P n Connecting curve L n-1 The starting point P n-1 and the connection source curve L n The starting point P n and endpoint P n+1 To determine the plane ( Figure 8 (The oblique part in the text). Then, the normal vector of the plane determined by the calculation is intersected with the curve L. n+1 Curve L n+2 The curve with the smallest complementary angle in the starting tangent direction is selected as the target curve for connection.
[0064] Here, when the angle between the normal vector of the plane and the initial tangent vector of the curve is set as D, the complementary angle E is represented by the following equation (2).
[0065]
[0066] As a result, in Figure 8 In the 3D model shown, select curve L. n+1 As the target curve for connection.
[0067] It should be noted that in the absence of a curve connected to the starting point of the source curve (e.g., the case of a starting point), the normal vector of any plane (e.g., the XY plane) in the orthogonal coordinate system of the 3D model can also be used.
[0068] The path generation unit 25 generates path teaching data based on multiple curves selected by the selection unit 24. Specifically, the path generation unit 25 generates path teaching data by adding connection information for sequentially connecting the curves selected by the selection unit 24 to the information of each curve.
[0069] The path teaching data generated by the path generation unit 25 is stored in the path teaching data storage unit 26.
[0070] For example, when a user inputs a correction instruction for the path of the robot tool displayed on the display unit 17 by the display control unit 23, the path modification unit 27 modifies the path teaching data based on the input correction instruction and updates the path teaching data in the path teaching data storage unit 26.
[0071] Next, refer to Figures 9-11 The method for generating path teaching data involved in this embodiment will be described. Figures 9-11 This is a flowchart illustrating an example of the processing sequence of the path teaching data generation method according to this embodiment. The processing described below is implemented, for example, by the CPU 11 reading the program (path teaching data generation program) stored in the storage unit 13 into the main memory 12 and executing it.
[0072] First, when the user specifies arbitrary 3D CAD data, the specified 3D CAD data is retrieved from the CAD data storage unit 21 (SA1), and the 3D model represented by the retrieved 3D CAD data is displayed on the display unit 17 (SA2). Next, when the user specifies arbitrary curves and starting points, the specified curve is set as the connection source curve (SA3), and other curves connected to the endpoint of the connection source curve are determined (SA4). Then, it is determined whether there are multiple determined other curves (SA5). As a result, if there is only one other curve (SA5: no), the determined other curve is selected as the connection target curve (SA6), and the process proceeds to step SA14.
[0073] On the other hand, in the case of multiple other curves (SA5: Yes), the angle between the final tangent direction (e.g., terminal vector) of the source curve and the starting tangent direction (e.g., beginning vector) of each of the other curves is calculated, which is the connection angle. Figure 10 (SA7). Next, identify other curves with the smallest angle among the connected angles in the calculation (SA8), and determine whether the identified other curves are indeed one (SA9). As a result, if they are indeed one (SA9: yes), select the identified other curve as the target curve for connection (SA10), and proceed to... Figure 9 Step SA14.
[0074] On the other hand, in step SA9, if none of the other determined curves are determined as one (SA9: No), for example, such as Figure 8 As illustrated, when multiple other curves with equal connection angles exist, a plane (SA11) is determined based on the starting point of the curve connected to the starting point of the source curve, as well as the starting and ending points of the source curve. Then, the complementary angle (SA12) between the normal vector of the determined plane and the starting tangent directions of each of the multiple other curves is calculated. Next, the other curve with the smallest complementary angle is selected as the target curve for connection (SA13), and the process is transferred to... Figure 9 Step SA14.
[0075] exist Figure 9 In step SA14, it is determined whether the endpoint of the selected target connection curve meets the processing termination condition (SA14). Examples of processing termination conditions include the endpoint of the selected target connection curve being the starting point of the original source connection curve, or the endpoint of the selected target connection curve being the endpoint specified by the user.
[0076] As a result, if the processing termination condition is not met (SA14: No), the selected target curve is set as the source curve (SA15), and the process returns to step SA4 to repeat the above process. Thus, multiple curves that are connected are selected sequentially.
[0077] On the other hand, in step SA14, if the endpoint of the target curve meets the processing termination condition (SA14: Yes), path teaching data is generated based on the information of the selected multiple curves. Figure 11 (SA16). Next, the generated path teaching data is stored in the path teaching data storage unit (SA17), and the display unit 17 displays the drive path of the robot tool based on the path teaching data (SA18).
[0078] Next, it is determined whether the user has input a correction instruction for the robot tool's drive path (SA19). For example, if the user checks whether the robot tool's movement path displayed on the display unit 17 is incorrect, and if so, the user manually corrects it through the operation input unit 16. In this case, if the user has corrected the drive path (SA19: Yes), the path teaching data in the path teaching data storage unit 26 is changed based on the correction instruction (SA20), and the process proceeds to step SA21.
[0079] On the other hand, in step SA19, if no correction instruction is input from the user (SA19: No), proceed to step SA21.
[0080] In step SA21, it is determined whether the user has input an end instruction. If no end instruction was input (SA21: No), the process returns to step SA19 and repeats the subsequent processing. Conversely, if the user has input an end instruction in step SA21 (SA21: Yes), the processing ends.
[0081] By performing the above processing, path teaching data generated based on 3D CAD data is stored in the path teaching data storage unit 26. Then, for example, according to the data from the robot control device 2 (see reference 2), the path teaching data is stored in the path teaching data storage unit 26. Figure 1 Upon receiving a request instruction, the specified path teaching data is read from the path teaching data storage unit 26 and used for drive control of the robot 3 in the robot control device 2.
[0082] As explained above, the path teaching data generation device 1, the path teaching data generation method, and the recording medium according to this embodiment have the following effects.
[0083] According to this embodiment, other curves connected to the endpoint of the connection source curve (which serves as the connection source curve) are selected as connection target curves. These selected other curves are then set as the next connection source curve, and further selections are made of other curves connected to this connection source curve. By repeating this process, multiple connected curves are selected, and path teaching data is generated based on these selected curves. Thus, path teaching data can be automatically generated from 3D CAD data. As a result, the burden of generating path teaching data for the user is reduced.
[0084] In addition, when there are multiple other curves that connect to the endpoint of the source curve, in other words, when there are multiple candidates for curves that connect to the source curve, any one of the other curves is selected as the target curve for connection based on the final tangent direction (e.g., the terminal vector) of the source curve and the starting tangent directions (e.g., the starting vectors) of each of the multiple other curves.
[0085] More specifically, the connection angle is calculated by taking the angle between the final tangent direction of the source curve and the initial tangent directions of multiple other curves, and the other curve with the smallest connection angle is selected as the target curve for connection.
[0086] In this way, by considering the connection angle of other curves relative to the source curve when selecting the target curve, it is possible to select an appropriate curve as the target curve.
[0087] Furthermore, when the connection angles of multiple candidate curves that become connection targets are equal, a plane is determined based on the starting point of the curve connected to the starting point of the source curve, as well as the starting and ending points of the source curve. Then, based on the starting tangent directions of this plane and each of the multiple other curves, any one of the other curves is selected as the connection target curve. Thus, for example, as... Figure 8 As illustrated, even when multiple other curves connected at the same angle relative to the source curve exist as candidates for the target curve, it is possible to select an appropriate target curve.
[0088] Additionally, an input section 16 is provided for the user to specify the initial connection source curve and its starting point. Thus, the user can specify the desired starting point and, from that starting point, specify the direction of the path.
[0089] Furthermore, since the drive path of the robot 3 based on the generated path teaching data is displayed on the display unit 17, the user can easily confirm the drive path of the robot 3 based on the automatically generated path teaching data.
[0090] Furthermore, when the user corrects the robot's drive path, the path teaching data is modified based on the correction instruction. Thus, if the robot's drive path based on the path teaching data is inappropriate, the user can easily perform the correction operation.
[0091] The present invention has been described above using embodiments, but the technical scope of the present invention is not limited to the scope described in the above embodiments. Various changes or modifications can be made to the above embodiments without departing from the spirit of the invention, and such changes or modifications are also included within the technical scope of the present invention. Furthermore, the above embodiments can be appropriately combined.
[0092] Furthermore, the process of the path teaching data generation method described in the above embodiments is also an example, and unnecessary steps can be deleted, new steps can be added, and the processing order can be changed without departing from the spirit of the present invention.
[0093] For example, in the above embodiment, the case where the user specifies the initial curve and starting point has been described, but the setting of the curve and starting point is not limited to the above example. For example, if the initial conditions are predetermined, the initial connection source curve and starting point can be automatically set based on the initial conditions. Alternatively, other methods can also be used.
[0094] Furthermore, in the above embodiment, a threshold for the connection angle can be set in the determination criteria when the selection unit 24 selects the target curve to be connected. For example, if the target curve is connected to the source curve at an acute angle, it is likely not the connection desired by the user. To avoid such inappropriate connections, the selection unit 24 may, for example, perform the following determination.
[0095] For example, when the selection unit 24 determines other curves that connect to the endpoint of the source curve, it calculates the connection angle of the determined other curves and determines whether the calculated connection angle is above a threshold. Then, if the connection angle is less than the threshold, the determined other curve is selected as the target curve for connection. Alternatively, if the connection angle is above the threshold, it can determine whether there are other curves that connect to the source curve, and if there are, exclude those other curves from the candidates. Furthermore, for example, the connection relationship between the source curve and the target curve can be displayed on the display unit 17 for the user to select. Such determination processing can be set, for example, in... Figure 9 Between steps SA4 and SA5, or between steps SA5 and SA6.
[0096] The threshold for the aforementioned connection angle can be set to any value greater than 90°.
[0097] Furthermore, while the above embodiment exemplifies the case where multiple 3D CAD data are stored in the CAD data storage unit 21, the storage location of the 3D CAD data is not particularly limited. For example, it may be stored in a specific server connected to a network, and the 3D CAD data may be downloaded from that server via the network, thereby acquiring the 3D CAD data by the CAD data acquisition unit 22. Alternatively, the 3D CAD data may be stored in a computer-readable storage medium (e.g., a hard disk, optical disk, CD-ROM, DVD-ROM, semiconductor memory, etc.) that can be attached to and detached from the path teaching data generation device 1, and may be configured such that the CAD data acquisition unit 22 acquires the 3D CAD data in these states connected to the path teaching data generation device 1.
[0098] Similarly, in the above embodiment, the path teaching data is exemplified as being stored in the path teaching data storage unit 26, but the storage location of the path teaching data is not limited to this example. That is, similar to the 3D CAD data described above, it can be stored in a specific server or in a computer-readable storage medium that can be attached to and removed from the path teaching data generation device 1.
[0099] Furthermore, in the above embodiment, the path teaching data generation device 1 and the robot control device 2 are connected via a network to send and receive path teaching data. However, the sending and receiving of path teaching data is not limited to this example. For instance, path teaching data can also be provided from the path teaching data generation device 1 to the robot control device 2 via a computer-readable recording medium.
[0100] Furthermore, the robot control device 2 may include the path teaching data generation device 1, or the path teaching data may be generated within the robot control device 2. That is, it may be configured such that the robot control device 2 incorporates all the functions of the path teaching data generation device 1.
[0101] Symbol Explanation
[0102] 1…Path teaching data generation device, 2…Robot control device, 3…Robot, 11…CPU, 12…Main memory, 13…Storage unit, 14…External interface, 15…Communication interface, 16…Input unit, 17…Display unit, 21…CAD data storage unit, 22…CAD data acquisition unit, 23…Display control unit, 24…Selection unit, 25…Path generation unit, 26…Path teaching data storage unit, 27…Path modification unit, 100…Robot system.
Claims
1. A path teaching data generation apparatus for generating path teaching data required for drive control of a robot using design data containing information of a plurality of curves, comprising: a selection section that selects another curve connected to a terminal point of a connection source curve that is a curve of a connection source as a connection target curve, and selects, as the next connection source curve, the selected another curve as the connection target curve, and sequentially selects a curve that becomes the connection target curve; and a path generation section that generates the path teaching data based on the plurality of curves selected by the selection section; wherein the selection section selects, as the connection target curve, any one of the plurality of another curves connected to the terminal point of the connection source curve based on a final tangent direction of the connection source curve and each start tangent direction of the plurality of another curves in a case where the plurality of another curves connected to the terminal point of the connection source curve exist; and the selection section calculates an angle of an angle that the final tangent direction of the connection source curve and each start tangent direction of the plurality of another curves form, that is, a connection angle, and selects one of the another curves having the smallest connection angle as the connection target curve in a case where the plurality of another curves connected to the terminal point of the connection source curve exist.
2. The path teaching data generation apparatus according to claim 1, wherein the selection section selects, as the connection target curve, any one of the plurality of another curves based on a plane determined based on a start point of a curve connected to a start point of the connection source curve and the start point and the terminal point of the connection source curve, and each start tangent direction of the plurality of another curves in a case where the connection angle is equal.
3. The path teaching data generation apparatus according to claim 1, comprising an input section for specifying, by a user, an initial connection source curve and a start point thereof.
4. The path teaching data generation apparatus according to claim 1, comprising: a display control section for displaying a drive path of the robot based on the path teaching data generated by the path generation section; and a path change section for changing the path teaching data based on a correction instruction input by a user by correcting the drive path of the robot in a case where the correction instruction is input.
5. A path teaching data generation method for generating path teaching data required for drive control of a robot using design data containing information of a plurality of curves, comprising the following steps performed by a computer: a step of determining whether or not a plurality of another curves connected to a terminal point of a connection source curve that is a curve of a connection source exist; a step of selecting the another curve as a connection target curve in a case where the plurality of another curves do not exist; a step of calculating an angle of an angle that a final tangent direction of the connection source curve and each start tangent direction of the plurality of another curves form, that is, a connection angle, and selecting one of the another curves having the smallest connection angle as the connection target curve in a case where the plurality of another curves exist; a step of selecting the selected another curve as the next connection source curve; and a step of generating the path teaching data based on the plurality of selected curves.
6. A computer-readable recording medium, A program for causing a computer to function as the path demonstration data generation device according to claim 1 is recorded.
Citation Information
Patent Citations
Multi-axes moving robot
JP2005332347A
Teaching data generation method for industrial robot, teaching data generation device for industrial robot and industrial robot system
JP1997244723A