Program editing support device
Through the analysis, shape acquisition and range calculation of the program editing auxiliary device, the problem of insufficient freedom in setting the indexing angle in the machine tool program is solved, and flexible indexing angle setting is achieved within the interference avoidance range.
Patent Information
- Application Number
- CN202380091754.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-30
- Publication Date
- 2025-09-05
AI Technical Summary
In the prior art, it is difficult to set the indexing angle range to avoid interference in machine tool program production, resulting in insufficient degrees of freedom.
Through the program editing auxiliary device, the analysis unit generates instruction data, the tool shape acquisition unit obtains the shape information of the tool components, the range calculation unit calculates the interference range, and the presentation unit outputs the indexing angle range to provide the degree of freedom of the indexing angle.
The degree of freedom in setting the indexing angle within the interference avoidance range is improved, and the operator can more easily grasp and set the indexing angle that does not cause interference.
Smart Images

Figure CN120604185A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a program editing assisting device. Background Art
[0002] A conventional machining method is known for enabling complex shapes to be machined with a single turning tool. This method involves dynamically changing the tool's indexing angle as viewed from the workpiece while performing turning. In this machining method, the tool tip position and indexing angle are specified for each block in the program. Based on these instructions and pre-set tool offsets, linear and rotary axes are controlled. Patent documents 1 to 4, for example, describe techniques related to machining using this indexing angle.
[0003] Prior art literature
[0004] Patent Literature
[0005] Patent Document 1: Japanese Patent Application Laid-Open No. 2002-304203
[0006] Patent Document 2: Japanese Patent Application Laid-Open No. 2002-79428
[0007] Patent Document 3: Japanese Patent Application Laid-Open No. 2011-83830
[0008] Patent Document 4: Japanese Patent Application Laid-Open No. 2005-305579 Summary of the Invention
[0009] Problems to be solved by the invention
[0010] When creating a program, it is sometimes desirable to arbitrarily set the indexing angle. While prior art can determine an indexing angle that avoids interference, it is difficult to determine the range within which interference occurs. From the perspective of allowing machine tool operators to set the indexing angle within a range that avoids interference, there is room for improvement in the prior art.
[0011] The present disclosure has been made in view of the above-mentioned problems, and an object of the present disclosure is to provide a technology capable of increasing the degree of freedom in setting the index angle while avoiding interference when creating a program for controlling the operation of a machine tool.
[0012] Solutions for solving problems
[0013] The present invention discloses a program editing assistance device for assisting in producing a program for turning a workpiece using a tool, the program editing assistance device comprising: an analysis unit for generating instruction data based on the program, the instruction data at least including a specified position of a specified point on a moving path of the tool and a relative indexing angle between the tool and the workpiece at the specified position; a tool shape acquisition unit for acquiring shape information of one or more components constituting the tool; a range calculation unit for calculating a range of indexing angles that does not cause interference between the workpiece and the tool at the specified position based on the instruction data and the shape information; and a presentation unit for outputting the indexing angle range.
[0014] Effects of the Invention
[0015] According to the present disclosure, it is possible to provide a technology that can improve the degree of freedom in setting the index angle while avoiding interference when creating a program for controlling the operation of a machine tool. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 This is a block diagram showing the configuration of the program editing support device according to the first embodiment.
[0017] Figure 2 This is a diagram showing an example of program instructions.
[0018] Figure 3 is a table showing the motion of the tool specified in the program instructions.
[0019] Figure 4 This is a diagram schematically showing the relationship between the operation of a tool based on program instructions and a workpiece.
[0020] Figure 5 This is a diagram schematically showing an example of components of a tool.
[0021] Figure 6 This is a diagram schematically showing an example of tool shape information.
[0022] Figure 7 This is a diagram schematically showing the relationship between the program path of the tool and the indexing angle.
[0023] Figure 8 This is a diagram showing an example of the indexing angle range presented to the operator in the first embodiment.
[0024] Figure 9 This is a diagram showing an example of the indexing angle range after the operator performs a change operation in the first embodiment.
[0025] Figure 10This is a flowchart showing an example of the flow of the creation support process performed by the program editing support device according to the present embodiment.
[0026] Figure 11 This is a diagram showing an example of the indexing angle range and recommended values presented to the operator in the second embodiment.
[0027] Figure 12 This is a diagram showing an example of the indexing angle range after the operator performs a change operation in the second embodiment. DETAILED DESCRIPTION
[0028] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In the description of the second embodiment and thereafter, the same reference numerals are given to the same components as those of the first embodiment, and their descriptions are omitted as appropriate.
[0029] [First embodiment]
[0030] Figure 1 This is a block diagram showing the configuration of the program editing support device 10 according to the first embodiment.
[0031] The program editing assistance device 10 is an information processing device that assists in creating a program for a machine tool that performs turning processing on a workpiece using a tool. The machine tool is, for example, a compound lathe having a mechanism for swinging the tool. The program for the machine tool is, for example, an NC program for controlling the motion of the machine tool. The program sets the position of a specified point (part) on the tool's movement path, the tool's movement method, the amount of movement, the relative indexing angle between the tool and the workpiece, and other command values for executing machining control. A portion of the command values may also be parameters pre-set in the machine tool. The machine tool performs turning processing on the workpiece based on the command values of the program, the parameters pre-set in the machine tool, and the like.
[0032] The program editing support device 10 is configured, for example, using a computer comprising memory such as ROM (read only memory) and RAM (random access memory), a CPU (control processing unit), and a communication control unit, all interconnected via a bus. The program editing support device 10 can be a numerical controller for machining control or a computer for creating programs independent of a machine tool.
[0033] The program editing support device 10 of this embodiment is connected to a display device 50 and an input device 51. The display device 50 is a display that presents various information to the operator through images, sounds, or both. The input device 51 is an interface that allows the operator to input various settings related to processing and machine tools. The display device 50 and input device 51 may be separate components, or they may be integrated into a touch panel display. The configuration of the display device 50 and input device 51 is not particularly limited.
[0034] The program editing support device 10 includes an analyzing unit 11, a tool shape acquiring unit 12, a range calculating unit 13, a presenting unit 14, a selection result acquiring unit 15, and a program correcting unit 16 as functional units operated by the CPU. The functions and operations of each functional unit of the program editing support device 10 are achieved through the cooperation of the CPU, memory, and a control program stored in the memory. Each functional unit will be described below.
[0035] The analysis unit 11 acquires motion information used to analyze the program and determine the tool's motion. This motion information, for example, includes information on the movement path used to determine the tool's tip position. The movement path corresponds to the shape of the workpiece. The program instructions describe the movement path in multiple blocks. For each block, position information, such as a start point indicating the tool's initial position and an end point indicating its final position, as well as the type of movement, are set.
[0036] The analysis unit 11 of this embodiment acquires motion information from the program. This motion information includes points at predetermined locations in each block on the movement path and the relative indexing angles between the tool and the workpiece at these points. These points may be, for example, the start or end point of the block, or interpolated points representing the tool position between the start and end points. Based on this motion information, the analysis unit 11 generates command data. This command data includes points at predetermined locations in each block on the movement path and the relative indexing angles between the tool and the workpiece at these points.
[0037] Reference Figures 2 to 4 Next, an analysis example of the analysis unit 11 will be described. In the following description, a point at a predetermined position of a block is described as an end point of the block. Figure 2 This is a diagram showing an example of program instructions. Figure 3 is a table showing the motion of the tool specified in the program instructions. Figure 4 Schematically illustrates the relationship between the operation of the tool 20 based on program instructions and the workpiece W. The tool 20 is configured to be rotatable about the B-axis on the ZX plane. The workpiece W is an object to be machined by a lathe that rotates about the Z-axis.
[0038] Figures 2 to 4N101 to N108 shown represent each block in the program instructions. The blocks starting from "G00" and "G01" specify linear motions and coordinates such as positioning and linear interpolation. The blocks starting from "G02" specify curvilinear motions and coordinates such as clockwise circular interpolation (arc CW). In addition, "X" in each block specifies the X coordinate, "Z" specifies the Z coordinate, and "F" specifies the feed rate. The front end position of the tool tip of the tool 20 is determined by the X coordinate and the Z coordinate. "R" specifies the radius in the circular interpolation. "B" is the indexing angle specified in the program instruction.
[0039] The program of this example is as follows: the tool 20 moves at an indexing angle of 15° in N101 to N104, moves at an indexing angle of 0° in N105 and N106, and moves at an indexing angle of -30° in N107 and N108. Figure 2 Procedural generation Figure 3 、 Figure 4 The position of the tip of the tool nose of the tool 20 and the indexing angle and the like shown represent motion command data.
[0040] The tool shape acquisition unit 12 acquires shape information related to the shapes of the components of the tool on the plane on which turning is performed. Components include, for example, the tool holder, the holder, the shank, and the tool tip. The tool shape acquisition unit 12 can acquire shape information from program command values or from a storage unit (not shown) external to the program editing support device 10.
[0041] Reference Figure 5 and Figure 6 An example in which the tool shape acquisition unit 12 acquires shape information will be described. Figure 5 Schematically shows an example of the components of a tool. Figure 5 2 shows a plurality of components 21 to 23 of the tool 20. The shape information is information indicating the shapes of the components 21 to 23 on the ZX plane where cutting is performed, for example.
[0042] Component 21 is the holder (or tool holder) portion of tool 20. Component 22 is the shank portion of tool 20. Component 23 is the blade tip portion of tool 20. In this example, tool shape acquisition unit 12 acquires the lengths of components 21 and 22 in the X-axis direction and the lengths of components 21 and 22 in the Z-axis direction, and acquires the length of component 23 in the X-axis direction and the blade tip angle.
[0043] Figure 6 2 is a diagram schematically showing an example of shape information of the tool 20. Figure 6As shown, the tool shape acquisition unit 12 obtains vectors from the tip of the tool to the left and right to the endpoints of each element based on the information of the lengths in the X-axis direction, the lengths in the Z-axis direction, and the tool nose angles of the components 21 to 23 .
[0044] exist Figure 6 In , dot-dash lines represent vectors on the left side of the paper, and dashed lines represent vectors on the right side of the paper. Figure 6 In the example of , the shape information of the component 23 is the left vector V1 of the tool tip and the right vector V2 of the tool tip. The left vector V1 of the tool tip is composed of the component V in the Z direction. 1z and the X-direction component V 1x The right vector V2 of the tool tip is composed of the component V in the Z direction. 2z and the X-direction component V 2x The shape information of the component 22 is the left vector V3 of the tool handle and the right vector V4 of the tool handle. The left vector V3 of the tool handle is composed of the component V in the Z direction. 3z and the X-direction component V 3x The right vector V4 of the tool handle is composed of the component V in the Z direction. 4z and the X-direction component V 4x The shape information of the component 21 is the first left vector V5 of the holder, the first right vector V6 of the holder, the second left vector V7 of the holder, and the second right vector V8 of the holder. They are also composed of components in the Z direction and the X direction. That is, the first left vector V5 is composed of the components V 5z 、V 5x The first right vector V6 is composed of components V 6z 、V 6x The second left vector V7 is composed of components V 7z 、V 7x The second right vector V8 is composed of components V 8z 、V 8x The shape in the ZX plane becomes complex, and as the number of edges to be considered increases, the number of shape information vectors also increases.
[0045] In this example, the indexing angle B represents the angle of inclination of the tool 20 when the direction of the imaginary straight line from the front end side (the blade tip side) toward the base end side of the tool 20 is aligned with the direction perpendicular to the Z-axis direction, which is set to 0 degrees (reference angle). The tool 20 is in an upright position when B = 0, and the method of inclination is determined by the positive or negative sign of B. The direction to which the positive or negative is set is arbitrary. In this example, the area is positive when tilted from the upright position to the left side of the paper. The area is set to negative when tilted from the upright position to the right side of the paper.
[0046] The range calculation unit 13 obtains the index angle of the tool 20 when the tool 20 interferes with the workpiece W based on the analysis results of the analysis unit 11 and the shape information obtained by the tool shape acquisition unit 12. The shape of the workpiece W can also be obtained by using the movement path of the tool 20 based on the command values of the program. For example, the movement path of the tool tip (front end), which is the component 23 of the tool 20, based on the command values, can be considered as a movement path along the surface of the workpiece W to be machined.
[0047] The indexing angle acquired by the range calculation unit 13 to set the indexing angle range is the angle at the position where the tool 20 interferes with the workpiece W at the start point or end point of a program instruction block. The range calculation unit 13 acquires the indexing angle at the start point or end point of each program instruction block when the tool 20 interferes with the workpiece W. The range calculation unit 13 determines the indexing angle range based on the acquired indexing angle.
[0048] If there are other mechanical structures (such as a chuck and tail shaft) besides the workpiece W, the range calculation unit 13 sets the indexing angle range by taking into account not only interference with the workpiece W but also interference with other mechanical structures. For example, the range calculation unit 13 determines whether there is interference between the tool 20 and the other mechanical structure based on the shape information of the other mechanical structure. The determination method can also be the same as the method for detecting interference between the tool 20 and the workpiece W. Furthermore, the indexing angle where the tool 20 interferes with the other mechanical structure is removed from the indexing angle range.
[0049] Reference Figure 7 An example of calculation of the index angle by the range calculation unit 13 will be described. Figure 7 Schematically shows the relationship between the program path of the tool 20 and the index angle. Figure 7 N101 to N108 in the command data are the program paths (workpiece W) of each block. Figure 7 As shown, the range calculation unit 13 calculates the indexing angle B at which the left side vector (dash line vector) of the tool 20 contacts the programmed path of the workpiece W (workpiece W) when the tip of the tool tip, which is the component 23 of the tool 20, is located at the end point of each block. L In addition, the range calculation unit 13 also calculates the indexing angle B when the vector indicated by the dotted line on the right side of the tool 20 contacts the program path. R .
[0050] The range calculation unit 13 calculates the index angle B for each block. L and indexing angle B R , get the maximum and minimum values for each block in each block. Figure 7In the example of N102, at the end point, the angle at which the vector represented by the dashed line on the left side of the component 23 (tool nose) contacts the workpiece W is the maximum indexing angle B. L = 5.0°. On the other hand, at the end point of N102, the angle at which the vector on the right side of the component 21 (holder or tool holder) contacts the workpiece W is the minimum indexing angle B. R = -60°. Therefore, the indexing angle range at the end point of the block is -60° to 5°.
[0051] The range calculation unit 13 calculates the minimum value of the index angle B for all blocks N101 to N108. R and the maximum index angle B L , to obtain the indexing angle range in which no interference occurs. Furthermore, in calculating the indexing angle range, the left and right inclinations of the tool 20 relative to the movement path indicated in the program can be specified in the program, or pre-stored settings in the program editing support device 10, an external computer, or the like can be used.
[0052] The presentation unit 14 presents the range of the index angle calculated by the range calculation unit 13 to the operator by displaying it on the display device 50. The operator is, for example, a user who operates the program editing support device 10.
[0053] Reference Figure 8 The indexing angle range (minimum and maximum values of the indexing angle) presented by the presentation unit 14 will be described. Figure 8 FIG. 1 is a diagram showing an example of the indexing angle range presented to the operator in the first embodiment. Figure 8 In the table, the information showing the minimum and maximum values of the indexing angles in each block of N101 to N108 is shown. Figure 8 In the table, a "Change command value" item is added to confirm whether to use the command value of the program as it is or to change the command value of the program. Figure 8 Since this is the stage of presentation to the operator, "No" is displayed in the "Change Command Value" column of each block N101 to N108. The "New Command Value" is the indexing angle set by the operator described later and is blank at this stage.
[0054] In addition, Figure 8In the example, if the index angle specified by the program instruction is outside the index angle range specified by the range calculation unit 13, this portion is displayed differently than when it is within the index angle range. For example, different display methods can include changing the color, pattern, or shape of characters, or using text to indicate that the range is exceeded. Alternatively, the color or pattern of the corresponding item can be changed. Furthermore, a time-varying display, such as flashing, can also be used as a different display method.
[0055] The selection result acquisition unit 15 acquires a selection result using the index angle instructed in the program or using the index angle within the range presented by the presentation unit 14. The selector is, for example, an operator.
[0056] The program correction unit 16 corrects the program based on the selection result of the selection result acquisition unit 15 .
[0057] Reference Figure 9 An example of the acquisition of the operator's selection result by the selection result acquisition unit 15 and the modification by the program modification unit 16 will be described. Figure 9 : is a diagram showing an example of the indexing angle range after the operator performs a change operation in the first embodiment. Figure 9 In the example shown in FIG1 , "Yes" is set in the "Change Command Value" column for N102 to N104, N107, and N108 in each of blocks N101 to N108. Furthermore, the "New Command Value" column for each of N102 to N104, N107, and N108, where "Yes" is set, has a scale angle of -45° entered by the operator. The operator inputs and sets the "Change Command Value" or "New Command Value" using, for example, input device 51 or an external computer. Alternatively, when the operator enters and confirms a numerical value in the "New Command Value," the display in the "Change Command Value" column automatically changes from "No" to "Yes."
[0058] In this example, the indexing angles of all blocks selected "Yes" are set to -45°, but different values within the indexing angle range may be input. The selection result acquisition unit 15 acquires, as the operator's selection result, the fact that the indexing angle of -45°, which differs from the command value, is set for blocks N102 to N104, N107, and N108.
[0059] In addition, the program correction unit 16 corrects the program based on the selection result acquired by the selection result acquisition unit 15. Figure 9In the example, "B-45" indicating the indexing angle is written into the block N102, and the indexing angle of the tools 20 of N102 to N104 becomes -45°. In addition, "B-45" is written into N107, which is the block where the indexing angle is to be changed in the program before correction, and the indexing angle of the tools 20 of N107 and N108 becomes -45°. The correction processing of the program correction unit 16 reflects the indexing angle of the new instruction value set by the operator in the program. The corrected portion is also reflected in the image displayed on the display device 50, and becomes Figure 9 The corrected portion is also displayed in a different manner from the other portions.
[0060] Next, refer to Figure 10 To illustrate the process of program production auxiliary processing. Figure 10 This is a flowchart showing an example of the flow of the creation support process performed by the program editing support device 10 according to the present embodiment. Figure 10 The flowchart shown is merely an example, and the order and content of the processing can be changed as appropriate.
[0061] In step S1 , the analyzing unit 11 analyzes the program to generate command data, and sends the command data to the range calculating unit 13 .
[0062] Next, in step S2 , the tool shape acquisition unit 12 acquires shape information on the plane on which turning is performed, and sends the shape information to the range calculation unit 13 .
[0063] Next, in step S3 , the range calculation unit 13 executes the above-described process for setting the indexing angle range of each block based on the analysis result (command data) of the analysis unit 11 and the shape information acquired by the tool shape acquisition unit 12 .
[0064] Next, in step S4, the range calculation unit 13 determines whether the indexing angle range that avoids interference can be set. If the range calculation unit 13 cannot set the indexing angle range that avoids interference, the process proceeds to step S8 (step S4: No). In step S8, the presentation unit 14 outputs to the display device 50 the fact that interference has occurred and that the indexing range angle cannot be set.
[0065] If the indexing angle range that avoids interference can be set, the range calculation unit 13 transfers the process to step S5 (step S4; YES). In step S5, the presentation unit 14 sends image information to the display device 50 to present the indexing angle range of each block of the program instruction to the operator.
[0066] In step S6, the selection result acquisition unit 15 acquires the selection result of the operator who has confirmed the information presented by the presentation unit 14. The selection result here is information based on the input operation of the operator.
[0067] In step S7, the program correction unit 16 corrects the program instructions based on the selection result acquired by the selection result acquisition unit 15. The program correction unit 16 also causes the presentation unit 14 to reflect the correction result on the information displayed on the display device 50.
[0068] The program editing support device 10 of the present embodiment described above provides the following advantages. The program editing support device 10 includes: an analysis unit 11 that generates command data based on a program, the command data including at least a predetermined position of a predetermined point on the movement path of the tool 20 and a relative indexing angle between the tool 20 and the workpiece W at the predetermined position; a tool shape acquisition unit 12 that acquires shape information of one or more components constituting the tool 20; a range calculation unit 13 that calculates, based on the command data and the shape information, an indexing angle range that prevents interference between the workpiece W and the tool 20 at the predetermined position; and a presentation unit 14 that outputs the indexing angle range.
[0069] This allows the operator to easily grasp the indexing angle range in which no interference occurs. Even when manually creating a program, the operator can easily specify an appropriate indexing angle based on the grasped indexing angle range.
[0070] In the present embodiment, the components 21 to 23 are at least one or more of a tool holder for accommodating the tool 20 , a holder, a shank of the tool 20 , and a tool tip.
[0071] This allows the operator to more appropriately present the indexing angle range in consideration of the shape of the tool 20 actually used in the cutting process.
[0072] In addition, in the present embodiment, the range calculation unit 13 sets the maximum value and the minimum value of the indexing angle range when the tool 20 contacts the movement path at a predetermined position.
[0073] This makes it possible to present the index angle range to the operator in an easily understandable manner using the maximum value and the minimum value.
[0074] In addition, in the present embodiment, the range calculation unit 13 reflects the interference with the structure of the machine that performs the turning process in the index angle range.
[0075] Thereby, an indexing angle range in which interference with mechanical structures can be avoided can be set, and the indexing angle can be set within this indexing angle range.
[0076] In addition, in the present embodiment, when the range calculation unit 13 determines that the interference between the tool 20 and the workpiece W cannot be avoided even if the index angle is changed, it notifies that the interference cannot be avoided.
[0077] This allows the operator to easily and quickly grasp the situation that interference cannot be avoided even if the index angle is changed.
[0078] In addition, the program editing assistance device 10 of this embodiment also includes: a selection result acquisition unit 15, which acquires a selection result indicating which of the indexing angle specified in the program and the indexing angle in the indexing angle range the operator has selected; and a program correction unit 16, which corrects the program based on the selection result.
[0079] Thus, when the operator selects an indexing angle within the indexing angle range, the program is automatically corrected, and cutting processing is performed by a command based on an indexing angle that is certain to avoid interference.
[0080] In this embodiment, the presentation unit 14 displays the following information in different display modes: information indicating that the indexing angle instructed in the program is within the indexing angle range, and information indicating that the indexing angle instructed in the program is outside the indexing angle range.
[0081] Thus, the operator can easily understand whether the indexing angle in the program instruction has the possibility of causing interference through different display methods.
[0082] [Second embodiment]
[0083] An example of the program editing support device 10 according to the first embodiment has been described above, but the present invention is not limited to this configuration. Next, a program editing support device 10 according to a second embodiment will be described.
[0084] The program editing support device 10 of the second embodiment has the same structure as the first embodiment. In the second embodiment, the information presented by the presentation unit 14 and the form of input by the operator are different. Figure 11 and Figure 12 Next, a process of displaying recommended values by the presentation unit 14 will be described.
[0085] Figure 11 FIG. 1 is a diagram showing an example of the indexing angle range and recommended values presented to the operator in the second embodiment. Figure 11 In the example of the first embodiment, Figure 8 and Figure 9 The "Change command value" is changed to "Use recommended value", and the "New command value" item is changed to "Recommended value".
[0086] The presentation unit 14 of the second embodiment displays one or more indexing angles within the calculated range as recommended values on the display device 50 together with the indexing angle range to present the recommended values to the operator.
[0087] The process of calculating the recommended value will be described. The presentation unit 14 obtains the representative value of the index angle range obtained by the range calculation unit 13 as the recommended value. The representative value can be, for example, the median or average value within the block's index angle range, or the maximum or minimum value within the index angle range can be used directly.
[0088] exist Figure 11 In the example of , the presentation unit 14 presents the median value of the index angle range to the operator as a recommended value. The recommended values are calculated in all blocks N101 to N108.
[0089] In the second embodiment, the presentation unit 14 also performs processing to display blocks whose index angles are outside the calculated index angle range based on the command value, distinguishing them from blocks within the index angle range. In this example, the presentation unit 14 displays the "No" in the "Use Recommended Value" column of the block and the recommended value on the display device 50 by changing the color of the characters.
[0090] Figure 12 : is a diagram showing an example of the indexing angle range after the operator performs a change operation in the second embodiment. Figure 12 The example shows a case where the operator changes the "Use recommended value" setting for blocks N102 to N104 and N107 to "Yes." The selection result acquisition unit 15 acquires the fact that recommended values, rather than command values, are set for blocks N102 to N104 and N107 set to "Yes" as the operator's selection result.
[0091] Here, the case where the instruction value of the indexing angle is replaced with the recommended value in a certain block and the "Use recommended value" column in the block after the block is set to "No" is explained. Generally speaking, when the indexing angle is set in a certain block, the indexing angle set in the certain block is directly applied until the indexing angle is newly set in the block after the next block. The program correction unit 16 of the present embodiment interprets the block set to "No" as an unintentional operator change, and newly sets the indexing angle applied in the program before the change instead of the recommended value. More specifically, the program correction unit 16 sets the indexing angle to the recommended value in N107 set to "Yes", and in N108 set to "No", instead of applying the recommended value of N107, sets the indexing angle to be applied when executing the program before the correction. In Figure 12 In the example, "B-30.0" is written in the block N108. These correction areas are also displayed differently from other areas.
[0092] As described above, in the second embodiment, the effects achieved by the first embodiment are achieved, and the following effects are achieved as well.
[0093] The presentation unit 14 of the second embodiment presents not only the indexing angle range but also one or more indexing angles within the indexing angle range as recommended values.
[0094] Thus, even if the operator does not specify an index angle by himself, the operator can easily set the index angle within the index angle range where interference does not occur using the recommended value.
[0095] In the second embodiment, the presentation unit 14 presents any value among the median value, the maximum value, the minimum value, and the average value of the index angle range as a recommended value.
[0096] This makes it possible to easily and reliably calculate the recommended value through simple processing.
[0097] The present disclosure has been described in detail, but the present disclosure is not limited to the above-mentioned embodiments. These embodiments can be variously added, replaced, changed, partially deleted, etc. without departing from the scope of the main purpose of the present disclosure or without departing from the scope of the purpose of the present disclosure derived from the contents recorded in the claims and their equivalents. In addition, these embodiments can also be implemented in combination. For example, in the above-mentioned embodiments, the order of each action and the order of each processing are shown as an example and are not limited to this. In addition, the same applies to the case where numerical values or formulas are used in the description of the above-mentioned embodiments.
[0098] The following supplementary notes are further disclosed regarding the above-mentioned embodiment and modifications.
[0099] (Note 1)
[0100] A program editing auxiliary device assists in creating a program for turning a workpiece (W) using a tool (20), the program editing auxiliary device comprising:
[0101] an analyzing unit (11) for generating instruction data according to the program, the instruction data including at least a predetermined position of a predetermined point on a moving path of the tool (20) and a relative indexing angle between the tool (20) and the workpiece (W) at the predetermined position;
[0102] A tool shape acquisition unit (12) that acquires shape information of one or more components (21) to (23) constituting the tool (20);
[0103] a range calculation unit (13) that calculates an indexing angle range that does not cause interference between the workpiece (W) and the tool (20) at the specified position based on the instruction data and the shape information; and
[0104] A presentation unit (14) outputs the indexing angle range.
[0105] (Note 2)
[0106] In the above-mentioned program editing auxiliary device (10),
[0107] The presenting unit (14) presents, in addition to the indexing angle range, one or more indexing angles in the indexing angle range as recommended values.
[0108] (Note 3)
[0109] In the above-mentioned program editing auxiliary device (10),
[0110] The presenting unit (14) presents any value among the median value, maximum value, minimum value and average value of the index angle range as the recommended value.
[0111] (Note 4)
[0112] In the above-mentioned program editing auxiliary device (10),
[0113] The constituent elements are at least one of a tool holder for accommodating the tool (20), a holder, a shank of the tool (20), and a tool tip.
[0114] (Note 5)
[0115] In the above-mentioned program editing auxiliary device (10),
[0116] The range calculation unit (13) sets the maximum value and the minimum value of the indexing angle range when the tool (20) contacts the moving path at the specified position.
[0117] (Note 6)
[0118] In the above-mentioned program editing auxiliary device (10),
[0119] The range calculation unit (13) reflects the interference with the structure of the machine performing the turning process in the indexing angle range.
[0120] (Note 7)
[0121] In the above-mentioned program editing auxiliary device (10),
[0122] When the range calculation unit (13) determines that the interference between the tool (20) and the workpiece (W) cannot be avoided even if the indexing angle is changed, it notifies that the interference cannot be avoided.
[0123] (Note 8)
[0124] In the above-mentioned program editing auxiliary device (10), it also has:
[0125] A selection result acquisition unit (15) that acquires a selection result indicating which of the indexing angle specified in the program and the indexing angle in the indexing angle range the operator has selected; and
[0126] A program modifying unit (16) modifies the program based on the selection result.
[0127] (Note 9)
[0128] In the above-mentioned program editing auxiliary device (10),
[0129] The presenting unit (14) distinguishes and displays the following information in different display modes: information indicating that the indexing angle indicated in the program is within the indexing angle range, and information indicating that the indexing angle indicated in the program is outside the indexing angle range.
[0130] Description of Reference Numerals
[0131] 10: Program editing assisting device; 11: Analyzing unit; 12: Tool shape acquiring unit; 13: Range calculating unit; 14: Presenting unit; 15: Selection result acquiring unit; 16: Program correcting unit; 20: Tool; 21-23: Constituent elements.
Claims
1. A program editing assisting device for assisting in creating a program for turning a workpiece using a tool, the program editing assisting device comprising: an analyzing unit for generating command data based on the program, the command data including at least a predetermined position of a predetermined point on a moving path of the tool and a relative indexing angle between the tool and the workpiece at the predetermined position; a tool shape acquiring unit for acquiring shape information of one or more components constituting the tool; a range calculation unit that calculates an indexing angle range that does not cause interference between the workpiece and the tool at the predetermined position based on the command data and the shape information; as well as A presentation unit outputs the indexing angle range.
2. The program editing assisting device according to claim 1, wherein: The presenting unit presents, in addition to the indexing angle range, one or more indexing angles in the indexing angle range as recommended values.
3. The program editing assisting device according to claim 2, wherein: The presentation unit presents any value among a median value, a maximum value, a minimum value, and an average value of the index angle range as the recommended value.
4. The program editing assisting device according to any one of claims 1 to 3, wherein: The component is at least one of a tool holder for accommodating the tool, a holder, a shank of the tool, and a tool tip.
5. The program editing assisting device according to any one of claims 1 to 4, wherein: The range calculation unit sets a maximum value and a minimum value of the indexing angle range when the tool contacts the movement path at the predetermined position.
6. The program editing assisting device according to any one of claims 1 to 5, wherein: The range calculation unit reflects interference with a structure of a machine that performs the turning process in the index angle range.
7. The program editing assisting device according to any one of claims 1 to 6, wherein: When the range calculation unit determines that the interference between the tool and the workpiece cannot be avoided even if the index angle is changed, the range calculation unit notifies the user that the interference cannot be avoided.
8. The program editing support device according to any one of claims 1 to 7, further comprising: a selection result acquiring unit that acquires a selection result indicating which of the indexing angle specified in the program and the indexing angle in the indexing angle range the operator has selected; and A program modifying unit modifies the program based on the selection result.
9. The program editing assisting device according to any one of claims 1 to 8, wherein: The presentation unit displays information indicating that the indexing angle instructed in the program is within the indexing angle range and information indicating that the indexing angle instructed in the program is outside the indexing angle range in different display modes.
Citation Information
Patent Citations
Composite machine tool
JP2002079428A
Nc machine tool and machining method
JP2002304203A
Control method and controller for NC machine tool
JP2005305579A
Device and method of determining optimal process, and device and method of supporting preparation of nc data
JP2011083830A