Robot programming device

The robot programming device addresses the challenge of generating accurate robot programs for perfect circles by using a three-dimensional model placement, coordinate system, and teaching point generation units to specify geometric information and operating conditions, enabling precise machining along desired shapes.

WO2026126343A1PCT designated stage Publication Date: 2026-06-18FANUC LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
FANUC LTD
Filing Date
2024-12-10
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

Existing robot programming devices struggle to generate accurate robot programs for machining perfect circles due to inaccuracies in processing line specification and CAD model accuracy, making it difficult to perform operations along desired shapes like a perfect circle.

Method used

A robot programming device that includes a three-dimensional model placement unit, coordinate system placement unit, information specification unit, and teaching point generation unit to arrange models in a virtual space, set a coordinate system with perpendicular vectors, specify geometric information and operating conditions, and generate teaching points for a robot program to follow a predetermined shape, such as a perfect circle.

🎯Benefits of technology

Enables the generation of a robot program that accurately performs machining operations along a desired shape, such as a perfect circle, by specifying geometric information, number of teaching points, and operating conditions, improving the precision of robot programming.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024043657_18062026_PF_FP_ABST
    Figure JP2024043657_18062026_PF_FP_ABST
Patent Text Reader

Abstract

This robot programming device comprises: a three-dimensional model disposition unit that disposes a robot model, a tool model, and a workpiece model in a virtual space; a coordinate system disposition unit that disposes, on a surface designated on the workpiece model, a coordinate system having a vector perpendicular to said surface as a coordinate axis component; an information designation unit that designates geometric information of a trajectory of a prescribed shape with reference to the coordinate system, the number of teaching points, and a movement condition; and a teaching point generation unit that, on the basis of the geometric information, the number of teaching points, and the movement condition that have been set, generates teaching points of a robot program that causes the tool model to move along the trajectory of the prescribed shape.
Need to check novelty before this filing date? Find Prior Art

Description

Robot programming device 【0001】 The present disclosure relates to a robot programming device. 【0002】 There is known a robot programming device that can arrange models of each object constituting a robot system such as a robot model and a work model in a virtual space and teach a processing operation of the work model to the robot model. 【0003】 Patent Document 1 describes an example of such a robot programming device. Patent Document 2 describes a configuration example in which information on a welding locus is created on a personal computer for a robot system that performs laser welding using a laser scanner. 【0004】 Japanese Unexamined Patent Application Publication No. 2013 - 099815, Japanese Unexamined Patent Application Publication No. 2012 - 218029 【0005】 In the prior art related to robot programming devices, a method of generating a robot program for performing a processing operation based on a processing line specified on a work model and specified operating conditions or the like may be employed. However, when it is assumed to generate a robot program for machining a perfect circle for the purpose of laser cutting or the like on a robot programming device, in the prior art, since the processing line is treated as a point sequence, it is generally impossible to determine whether the processing line is a perfect circle, or due to various factors such as the performance of CAD software that creates a three-dimensional model of the work, the accuracy of specifying the processing line, and the accuracy of the original shape of the CAD model, it is often not possible to easily obtain a robot program that appropriately machines a perfect circle in the way of generating a robot program based on the processing line specified on the work model. There is a need for a robot programming device that can easily generate a robot program for appropriately performing processing along a locus of a desired shape such as a perfect circle. 【0006】One aspect of the present disclosure is a robot programming device comprising: a three-dimensional model placement unit for arranging a robot model, a tool model, and a work model in a virtual space; a coordinate system placement unit for arranging a coordinate system having vectors perpendicular to a surface as coordinate axis components on a surface specified on the work model; an information specification unit for specifying geometric information, the number of teaching points, and operating conditions of a trajectory of a predetermined shape based on the coordinate system; and a teaching point generation unit for generating teaching points for a robot program that operates the tool model along the trajectory of the predetermined shape based on the set geometric information, the number of teaching points, and the operating conditions. 【0007】 These and other objects, features, and advantages of the present invention will become even clearer from the detailed description of typical embodiments of the present invention shown in the accompanying drawings. 【0008】 This figure shows the external configuration of a robot programming device according to one embodiment. This is a functional block diagram of the robot programming device. This is a flowchart showing the teaching point generation process executed in the robot programming device. This figure shows a state in which a robot model, a tool model, and a work model are arranged in a virtual space. This figure shows a state in which a coordinate system is arranged on the surface of the work model. This figure shows an example of a setting screen for trajectories and teaching points. This figure is for explaining the specification of the radius of a circular trajectory on the setting screen. This figure is for explaining the specification of the starting position of a trajectory on the setting screen. This figure is for explaining the specification of the number of divisions of a circular trajectory on the setting screen. This figure is for explaining the specification of the start point and end point on the setting screen. This figure is for explaining the specification of changing the position of a teaching point on the setting screen. This figure is for explaining the specification of changing the position of a teaching point on the setting screen. This figure is for explaining the specification of the operating conditions of a teaching point on the setting screen. This figure is for explaining the specification of the operating conditions of a teaching point on the setting screen. This figure shows a state in which a simulation based on the generated robot program is being executed. This is a reference diagram for explaining the advantages of this embodiment. 【0009】Next, embodiments of the present disclosure will be described with reference to the drawings. In the drawings, similar components or functional parts are given the same reference numerals. For ease of understanding, the scale of these drawings has been appropriately changed. Furthermore, the embodiments shown in the drawings are just one example of how to carry out the present invention, and the present invention is not limited to the illustrated embodiments. 【0010】 Figure 1 shows the external configuration of a robot programming device 10 according to one embodiment. The robot programming device 10 has the function of arranging a robot model, tool model, work model, etc. in a virtual space and generating teaching points for performing a predetermined machining operation using the tool model (i.e., the function of generating a robot program). 【0011】 The robot programming device 10 may be composed of a PC (personal computer), a tablet terminal, or other various information processing devices. The robot programming device 10 may have a hardware configuration as a general computer, including at least one processor 11, memory (ROM, RAM, non-volatile memory, etc.), storage unit 12, display unit 13, operation unit 14, input / output interface, network interface, etc. (see Figures 1 and 2). The storage unit 12 may be composed of, for example, non-volatile memory or a hard disk drive. The display unit 13 may be equipped with, for example, a liquid crystal display. The operation unit 14 may be equipped with a keyboard, mouse, or other various input devices. 【0012】 As will be described in detail below, the robot programming device 10 according to this embodiment places a coordinate system having coordinate axis components perpendicular to a surface specified on a work model, specifies information including geometric information of the trajectory of a predetermined shape, the number of teaching points, and operating conditions on the coordinate system, and provides a function to generate teaching points for a robot program in which a tool model performs machining operations along a trajectory of a predetermined shape based on the specified geometric information, the number of teaching points, operating conditions, etc. 【0013】In the following description of the embodiment, an example configuration is described in which the robot programming device 10 accepts the setting of a circular trajectory as a trajectory of a predetermined shape. However, this function can be extended to the function of setting a trajectory of any shape on a coordinate system placed on a specified surface of the work model. 【0014】 Figure 2 is a functional block diagram of the robot programming device 10. The robot programming device 10 includes a virtual space creation unit 111, a three-dimensional model placement unit 112, a coordinate system placement unit 113, an information specification unit 130, a teaching point generation unit 121, and a simulation execution unit 122. The information specification unit 130 provides the function of specifying geometric information of a predetermined shape of trajectory based on a coordinate system set on the surface of the work model by the coordinate system placement unit 113, the number of teaching points, and the operating conditions. In this embodiment, the information specification unit 130 includes a radius specification unit 114, a start position specification unit 115, a division number specification unit 116, a start / end point setting unit 117, a coordinate system position change unit 118, a teaching point position change unit 119, and an operating condition specification unit 120. These functional blocks may also be realized by the processor 11 of the robot programming device 10 executing software. 【0015】 Figure 2 illustrates the storage unit 12 as a hardware component. The storage unit 12 is a storage device consisting of, for example, non-volatile memory or a hard disk drive. The storage unit 12 stores three-dimensional model data of various objects, positional information of the three-dimensional models, robot programs, and various other setting information. 【0016】 The virtual space creation unit 111 creates a virtual space on the robot programming device 10. The three-dimensional model placement unit 112 places three-dimensional models of each object that constitutes the robot system model, such as the robot model, tool model, and work model, within the virtual space. The three-dimensional model placement unit 112 can place the robot model, tool model, work model, peripheral device model, etc., in the virtual space based on their actual placement information in the workspace. The models of these objects placed in the virtual space are displayed on the display unit 13. 【0017】The coordinate system placement unit 113 has the function of setting a coordinate system having coordinate axis components perpendicular to a surface specified on the work model. The coordinate system placement unit 113 may accept a user operation to specify a surface on the work model and set the origin of the coordinate system at the position specified on that surface by the user operation. Alternatively, the coordinate system placement unit 113 may automatically set the origin of the coordinate system at a predetermined position (such as the center position) on the surface of the work model specified by the user operation. 【0018】 The radius specification unit 114 provides a function to set the radius of a circular trajectory on the coordinate system set up by the coordinate system placement unit 113. The radius specification unit 114 may be configured to accept user operations to specify a radius on the coordinate system. 【0019】 The starting position specification unit 115 provides a function to specify the starting position of the set circular trajectory. The starting position specification unit 115 may also have a function to accept user input to specify the starting position of the set circular trajectory. 【0020】 The division number specification unit 116 provides a function for specifying the number of divisions to divide the set circular trajectory into equally spaced angles. The division number specification unit 116 may be configured to accept user input to specify the number of divisions to divide the set circular trajectory into equally spaced angles. The division number specification unit 116 sets teaching points at positions where the circular trajectory is divided into equally spaced angles by the specified number of divisions. In other words, the division number specification unit 116 provides a function for specifying the number of teaching points to set on the trajectory. 【0021】 The start / end point setting unit 117 provides a function to specify whether or not to set teaching points as start and end points before and after the set trajectory. The start / end point setting unit 117 may be configured to accept user operations to specify whether or not to set teaching points as start and end points before and after the set trajectory. 【0022】 The teaching point position changing unit 119 provides a function to change the position of a teaching point on a set circular trajectory. The teaching point position changing unit 119 may be configured to accept user input to change the position of a teaching point on a set circular trajectory. 【0023】 The operating condition specification unit 120 provides a function to specify operating conditions, including the operation type and speed, for a teaching point. The operating condition specification unit 120 may also be configured to accept user input to specify operating conditions, including the operation type and speed, for a teaching point. 【0024】 The coordinate system position change unit 118 provides a function to change the position of a coordinate system placed on the surface of the work model via the functions of the coordinate system placement unit 113. The coordinate system position change unit 118 may be configured to accept user operations to change the position of a coordinate system placed on the surface of the work model. 【0025】 The teaching point generation unit 121 generates teaching points for a robot program that operates the tool model along a circular trajectory, based on the geometric information, number of teaching points, and operating conditions set as described above for the circular trajectory. The simulation execution unit 122 has the function of executing a simulation that simulates the robot model's operation in a virtual space according to the generated robot program. 【0026】 In the following, the teaching point generation process performed in the robot programming device 10 will be described with reference to the flowchart in Figure 3 and Figures 4 to 17. This teaching point generation process is performed under the control of the processor 11 of the robot programming device 10. 【0027】When the teaching point generation process begins, first, the virtual space creation unit 111 and the three-dimensional model placement unit 112 generate a virtual space on the robot programming device 10, and the robot model, tool model, and work model are placed within the virtual space (step S1). Figure 4 shows the state in which the robot model 30M, tool model 35M, and work model WM are placed within the virtual space. These models are placed within the virtual space according to the actual placement position information in the workspace. The tool model 35M is attached to a predetermined position on the tip of the arm of the robot model 30M. The state in which the robot model 30M, tool model 35M, and work model WM are placed within the virtual space is displayed on the display unit 13 of the robot programming device 10. 【0028】 Next, the coordinate system placement unit 113 sets a coordinate system on a surface specified on the work model WM, having a vector perpendicular to that surface (surface-perpendicular vector) as a coordinate axis component (step S3). The coordinate system placement unit 113 may be configured to accept user input to specify the surface on the work model WM where the coordinate system should be set. Figure 5 shows a situation where the user operates a pointing device on the work model WM displayed on the display screen to specify the top surface 80, thereby setting the coordinate system C on the surface 80. The coordinate system placement unit 113 may place the coordinate system C at a position specified by user input on the surface 80, or it may automatically place the coordinate system C at a predetermined position on the surface 80 (for example, the center position). The coordinate system C has a Z-axis perpendicular to the specified surface 80. 【0029】 Steps S3 to S9 below are processing steps for making various settings related to the trajectory and teaching points, which are performed by the radius specification unit 114, the start position specification unit 115, the number of divisions specification unit 116, the start / end point setting unit 117, the coordinate system position change unit 118, the teaching point position change unit 119, and the operation condition specification unit 120. These settings are made via the setting screen (user interface screen) 200 shown in Figure 6. 【0030】As shown in Figure 6, the settings screen 200 includes a specification field 211 for specifying the radius of the circular trajectory, a specification field 212 for specifying the starting position, a specification field 213 for specifying the number of divisions of the teaching points, a specification field 214 for specifying whether or not to set a start point and an end point, a specification field 215 for specifying the amount of movement of the teaching point's position, and a specification field 216 for specifying the operating conditions related to the teaching points. The settings screen 200 also includes a trajectory display area 220 that shows the settings status of the trajectory and teaching points. As shown in Figure 6, default values ​​(e.g., radius 50.0 mm, division angle of teaching points: 90.0 degrees, number of divisions: 4) may be set in each specification field of the settings screen 200. In the trajectory display area 220, the circular trajectory T is positioned so that its center coincides with the origin of coordinate system C. The Z axis of coordinate system C is perpendicular to the plane of paper in Figure 6. 【0031】 In step S3, the radius specification unit 114 provides a function to specify the radius of a circular trajectory based on coordinate system C. Specifically, as shown in Figure 7, the radius specification unit 114 accepts a user operation to specify the radius of the circular trajectory in the specification field 211 on the setting screen 200. Figure 7 shows the state where 100.00 mm is specified as the radius in the specification field 211, and the size of the image of the circular trajectory T in the trajectory display area 220 is set to a size corresponding to the radius value specified in the specification field 211. At this stage, the number of divisions and division angle of the teaching points may be set to the default values ​​(number of divisions: 4, division angle: 90 degrees). The user can also generate teaching points for the robot program using the default values. 【0032】In step S4, the start position specification unit 115 provides a function to specify the start position of the circular trajectory T with respect to the coordinate system C. Specifically, as shown in Figure 8, the start position specification unit 115 accepts a user operation to specify the start position of the circular trajectory in the specification field 212 on the setting screen 200. Here, the start position of the circular trajectory is specified in a format in which the starting position is an angular position in the clockwise direction with respect to the X-axis of the coordinate system. As illustrated in Figure 8, if the start position is specified as 45 degrees, the start position of the circular trajectory (the position where the first teaching point P1 is placed) will be a position on the trajectory T rotated 45 degrees clockwise from the X-axis. 【0033】 In step S5, the division number specification unit 116 specifies the number of divisions to divide the circular trajectory at equally spaced angles, and provides a function to set the number of teaching points for the robot program based on the number of divisions. Specifically, as shown in Figure 9, the division number specification unit 116 accepts a user operation to specify the division angle in the specification field 213 on the setting screen 200. In this case, the division number specification unit 116 determines the number of divisions when the circular trajectory is divided at equally spaced intervals by the specified division angle, and sets the number of teaching points for the robot program based on the number of divisions. Figure 9 shows a situation where 45 degrees is set as the division angle in the specification field 213, and as a result the number of teaching points on the circular trajectory T is set to 8. The trajectory display area 220 displays the state in which teaching points P (only some are labeled) are set at 8 positions at 45-degree intervals on the trajectory T. 【0034】In step S6, the start / end point setting unit 117 provides a function to set whether or not to generate a start point or an end point (start or end teaching point) before and after the circular trajectory. Specifically, the start / end point setting unit 117 accepts user operations on checkboxes 214a and 214b in the specification field 214 to specify whether or not to generate a start point and an end point, and sets whether or not to generate a start point or an end point according to the operations on those checkboxes 214a and 214b. Figure 10 shows the setting screen 200 with both checkboxes 214a and 214b checked, indicating that it is specified to generate a start point and an end point. The start point is a teaching point corresponding to a waiting position for moving towards the start position of the circular trajectory T (corresponding to the position of the first teaching point P1), and the end point is a teaching point corresponding to a retreat position for moving the tool model away from the end position (corresponding to the position of the first teaching point P1) on the circular trajectory. The starting point may be set relatively close to the beginning of the circular trajectory, making it easy for the tool model to enter the circular trajectory, and the ending point may be set relatively close to the end of the circular trajectory, making it easy for the tool model to move after it has moved along the circular trajectory. 【0035】 In step S7, the teaching point position change unit 119 provides a function to change the position of the teaching point on the circular trajectory along the circular trajectory. More specifically, as shown in Figure 11, the teaching point position change unit 119 may have a function to accept the specification of changing the position of the selected teaching point by numerical input in the specification field 215 on the setting screen 200. In this case, the selection of the teaching point may be done by selecting the teaching point with a mouse or the like on the trajectory display area 220. Alternatively, the teaching point position change unit 119 may have a function to accept the change of the teaching point's position as a user operation in which the teaching point on the circular trajectory T is moved by a mouse or the like on the trajectory display area 220. Figure 11 shows, as an example, a state in which a numerical input has been made in the specification field 215 to move the position of the first teaching point P1 by -5 degrees (5 degrees counterclockwise) along the circular trajectory T. 【0036】Furthermore, the teaching point position change unit 119 may also have a function to accept a specification for selecting multiple teaching points and changing the positions of those selected teaching points. Figure 12 shows, as an example, a state in which three teaching points P1, P2, and P3 are selected by operation with a mouse or the like on the trajectory display area 220, and numerical input has been made in the specification field 215 to specify that the selected teaching points be rotated by 5 degrees. In this case, as shown in Figure 12, the teaching point position change unit 119 moves the positions of each of the selected teaching points P1, P2, and P3 by 5 degrees clockwise on the circular trajectory T. 【0037】 In step S8, the operation condition specification unit 120 provides a function to specify operation conditions at the teaching point of the robot program, including the operation type, speed, etc. As illustrated in Figure 13, the operation conditions may include the operation type (each axis, linear, etc.), positioning type (single-point, smooth, etc.), speed, and offset (offset amount of the position and orientation of the tool model 35M (X, Y, Z, W, P, R)). Note that 'single-point' in the positioning type represents a control type that includes an operation to stop the robot's control part at the teaching point, and 'smooth' represents a control type that ensures the trajectory of the robot's control part is smoothly connected before and after the teaching point. 【0038】 The operation condition specification unit 120 may have the function of accepting an operation to select a teaching point in the trajectory display area 220 and an operation to specify an operation condition for the selected teaching point in the specification field 216. Figure 13 shows a situation in which a first teaching point P1 has been selected in the trajectory display area 220 and a user operation to specify an operation condition for the first teaching point P1 in the specification field 216 has been accepted. 【0039】 Furthermore, the operation condition specification unit 120 may be configured to accept an operation to select multiple teaching points and specify operation conditions for those selected teaching points. Figure 14 shows a situation in which all teaching points P (only some are labeled) have been selected by operation with a mouse or the like on the trajectory display area 220, and operation conditions have been specified in the specification field 216 for the selected teaching points P. 【0040】 In step S9, the coordinate system position change unit 118 provides a function to change the position of coordinate system C. Figure 15 shows the situation in step S2 where the position of coordinate system C, which is placed on the surface 80 of the work model WM, is moved on the surface 80 in response to user operation. The coordinate system position change unit 118 may be configured to change the position of coordinate system C by accepting numerical input to specify the change position on the screen in which the work model WM is displayed, or by accepting user operation to move coordinate system C by dragging it with a mouse. As coordinate system C moves, the position of the circular trajectory T set as described above will also move. 【0041】 In step S10, the teaching point generation unit 121 generates teaching points for the robot program based on setting information including the geometric information of the trajectory, the number of teaching points, and the operating conditions, which were set in steps S3 to S9. Here, generating teaching points for the robot program corresponds to generating information in which the operating format is specified for each set teaching point (the position and orientation (X, Y, Z, W, P, R) of the tool model). That is, based on the radius of the circular trajectory relative to coordinate system C, the starting position, the number of teaching points, the operating conditions, etc., the teaching point generation unit 121 generates a robot program in which the robot model 30M operates on the surface 80 specified by the work model WM in a circular trajectory T centered on the origin of coordinate system C, using the tool model 35M. 【0042】 Based on the teaching point information (robot program) generated by the above teaching point generation process, the simulation execution unit 122, as schematically shown in Figure 16, simulates the operation of machining along a circular trajectory T on the surface 80 of the workpiece model WM using the tool model 35M in a virtual space (display screen) according to the robot program. This allows the user to check the movement of the robot model according to the robot program and modify various setting information as needed. 【0043】As described above, according to the teaching point generation process according to the present embodiment, it is possible to appropriately generate teaching points of a robot program that performs machining on the machining target surface of a work model along a perfect circle trajectory. 【0044】 Here, referring to the reference diagram of FIG. 17, the advantageous points of the teaching point generation process according to the present embodiment will be described. As shown in FIG. 17, in some cases, a method of generating a machining line by projecting a perfect circle trajectory (indicated by reference numeral T0) onto the machining surface SA of the work model is used. In this case, if the machining surface SA is inclined as shown in FIG. 17, the shape of the machining line T1 on the machining surface SA will be an ellipse rather than a perfect circle. The teaching point generation process according to the present embodiment is positioned to overcome such problems in the conventional method. 【0045】 In the above-described embodiment, a configuration example in which the information specifying unit 130 receives specification of information regarding a circular trajectory and teaching points on the trajectory has been described. This function of the information specifying unit 130 can be extended to a function of receiving specification of information regarding a trajectory of an arbitrary shape such as a polygon and teaching points on the trajectory. For example, assume a case of generating a square trajectory. In this case, the information specifying unit 130 may be configured to receive specification of the size of the square trajectory (such as the length of one side), the start position of the trajectory, the number of divisions (number of teaching points) for equally dividing the trajectory (for example, one side of the square), whether to generate teaching points corresponding to the start and end points before and after the trajectory, change of the position of the coordinate system, and specification of operation conditions. 【0046】 Therefore, according to the present embodiment, it is possible to easily generate a robot program for appropriately performing machining along a trajectory of a desired shape such as a perfect circle. 【0047】 In the above-described embodiment, a configuration example in which a vertically articulated robot model is used as the robot model has been described. However, as the robot model, various types of robot models such as a horizontally articulated robot, a parallel link type robot, and a dual-arm robot may be used according to the work target. 【0048】Note that in the functional configuration of the robot programming device 10 shown in Fig. 2, it should be understood that not all of the illustrated functional blocks are essential components. For example, in the configuration of the functional block diagram of Fig. 2, the start / end point setting unit 117, the coordinate system position changing unit 118, and the teaching point position changing unit 119 may be omitted. 【0049】 In the functional block diagram of Fig. 2, each functional block described as a function of the robot programming device may be realized by one or more processors of the robot programming device executing various software stored in the storage device, or in this case, a part of the function may be constituted by hardware such as a discrete circuit (that is, the realization of the functional block by a combination of a processor and a discrete circuit), or the function shown in the functional block diagram may be realized by a configuration mainly composed of hardware such as an ASIC (Application Specific Integrated Circuit). 【0050】 A program for executing various processes such as the above-described teaching point generation process (Fig. 3), or a computer program for executing the processes of each part of the processor 11, may be provided in the form of a program product recorded on various computer-readable recording media (for example, semiconductor memories such as ROM, EEPROM, and flash memory, magnetic recording media, or optical recording media such as CD-ROM and DVD-ROM). 【0051】 Although the present disclosure has been described in detail, the present disclosure is not limited to the above-described individual embodiments. These embodiments can be variously added, replaced, changed, partially deleted, etc., without departing from the gist of the present disclosure or without departing from the gist of the present disclosure derived from the content described in the claims and its equivalents. Also, these embodiments can be implemented in combination. For example, in the above-described embodiments, the order of each operation and the order of each process are shown as examples and are not limited thereto. The same applies when numerical values or mathematical formulas are used in the description of the above-described embodiments. 【0052】The following additional notes are provided with respect to the above embodiments and modifications. (Note 1) A robot programming device (10) comprising: a three-dimensional model placement unit (112) for arranging a robot model, a tool model, and a work model in a virtual space; a coordinate system placement unit (113) for arranging a coordinate system having vectors perpendicular to a surface as coordinate axis components on a surface specified on the work model; an information specification unit (130) for specifying geometric information, the number of teaching points, and operating conditions of a predetermined trajectory shape based on the coordinate system; and a teaching point generation unit (121) for generating teaching points for a robot program that operates the tool model along the predetermined trajectory shape based on the set geometric information, the number of teaching points, and the operating conditions. (Note 2) The robot programming device (10) according to Note 1, wherein the information specification unit (130) has the function of specifying the starting position of the predetermined trajectory. (Note 3) The robot programming device (10) according to Note 1 or 2, wherein the information designation unit (130) has a function to specify the number of divisions to divide the predetermined shape trajectory into equal intervals, and sets the number of teaching points according to the specified number of divisions. (Note 4) The robot programming device (10) according to any one of Notes 1 to 3, wherein the information designation unit (130) is configured to specify whether or not to set start and end teaching points at positions before and after the predetermined shape trajectory on the coordinate system. (Note 5) The robot programming device according to any one of Notes 1 to 4, wherein the information designation unit (130) has a function to change the position of teaching points on the predetermined shape trajectory. (Note 6) The robot programming device (10) according to any one of Notes 1 to 5, wherein the operating conditions include at least the operating mode and speed of the robot model. (Note 7) The robot programming device (10) according to any one of Notes 1 to 6, wherein the information designation unit (130) accepts an operation to change the position of the coordinate system on the surface.(Note 8) The robot programming device (10) according to any one of Notes 1 to 7, wherein the information designation unit (130) displays on a display screen a user interface for specifying geometric information of a predetermined shape trajectory based on the coordinate system, the number of teaching points, and the operating conditions. (Note 9) The robot programming device (10) according to Note 8, wherein the information designation unit (130) displays on the user interface an image of the predetermined shape trajectory according to the specified geometric information, and displays teaching points on the image of the predetermined shape trajectory according to the specified number of teaching points. (Note 10) The robot programming device (10) according to any one of Notes 1 to 9, wherein the predetermined shape trajectory is a circular trajectory, and the geometric information includes the radius of the circular trajectory. (Note 11) The robot programming device (10) according to any one of Notes 1 to 10, wherein the coordinate system placement unit (113) accepts a user operation to specify the surface on the work model where the coordinate system is placed. 【0053】 10 Robot Programming Device 11 Processor 12 Memory Unit 13 Display Unit 14 Operation Unit 30M Robot Model 35M Tool Model WM Work Model 111 Virtual Space Creation Unit 112 Three-Dimensional Model Placement Unit 113 Coordinate System Placement Unit 114 Radius Specification Unit 115 Start Position Specification Unit 116 Number of Divisions Specification Unit 117 Start and End Point Setting Unit 118 Coordinate System Position Change Unit 119 Teaching Point Position Change Unit 120 Operation Condition Specification Unit 121 Teaching Point Generation Unit 122 Simulation Execution Unit 130 Information Specification Unit

Claims

1. A robot programming device comprising: a three-dimensional model placement unit for arranging a robot model, a tool model, and a work model in a virtual space; a coordinate system placement unit for arranging a coordinate system having vectors perpendicular to a surface as coordinate axis components on a surface specified on the work model; an information specification unit for specifying geometric information, the number of teaching points, and operating conditions of a predetermined shape of trajectory based on the coordinate system; and a teaching point generation unit for generating teaching points for a robot program that operates the tool model along the predetermined shape of trajectory based on the set geometric information, the number of teaching points, and the operating conditions.

2. The robot programming device according to claim 1, wherein the information designation unit has the function of designating the starting position of the predetermined trajectory.

3. The robot programming device according to claim 1 or 2, wherein the information designation unit has a function to specify the number of divisions to divide the trajectory of the predetermined shape into equal intervals, and sets the number of teaching points according to the specified number of divisions.

4. The robot programming device according to any one of claims 1 to 3, wherein the information designation unit is configured to specify whether or not to set start and end teaching points at positions before and after the predetermined shape of the trajectory in the coordinate system.

5. The robot programming device according to any one of claims 1 to 4, wherein the information designation unit has a function to change the position of the teaching point on the trajectory of the predetermined shape.

6. The robot programming device according to any one of claims 1 to 5, wherein the operating conditions include at least the operating mode and speed of the robot model.

7. The robot programming device according to any one of claims 1 to 6, wherein the information designation unit accepts an operation to change the position of the coordinate system on the surface.

8. The robot programming device according to any one of claims 1 to 7, wherein the information specification unit displays geometric information of a predetermined shape of trajectory based on the coordinate system, the number of teaching points, and a user interface for specifying the operating conditions on a display screen.

9. The robot programming device according to claim 8, wherein the information designation unit displays an image of the trajectory of the predetermined shape on the user interface according to the designated geometric information, and displays teaching points on the image of the trajectory of the predetermined shape according to the designated number of teaching points.

10. The robot programming device according to any one of claims 1 to 9, wherein the predetermined trajectory is a circular trajectory, and the geometric information includes the radius of the circular trajectory.

11. The robot programming device according to any one of claims 1 to 10, wherein the coordinate system placement unit accepts a user operation to specify the surface on which the coordinate system is placed on the work model.