Evaluation device and computer-readable storage medium
The evaluation device and storage medium address the inefficiencies in machining systems with rotary axes by calculating indices from configuration and program data, enhancing operational efficiency and workpiece placement.
Patent Information
- Application Number
- PCT/JP2023/038255
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-10-24
- Publication Date
- 2026-03-05
AI Technical Summary
Existing machining systems with rotary axes lack a method for accurately evaluating operational efficiency, as the movement of the tool tip point and control axes do not necessarily match, affecting processing efficiency based on the configuration of the machine.
An evaluation device and computer-readable storage medium that acquire configuration information, process machining programs, and calculate indices to evaluate the operating efficiency of machining devices with rotary axes, including tools like lathes and three-dimensional printers, by analyzing tool movement, rotation axes, and workpiece positions.
Accurately evaluates the operating efficiency of machining systems with rotary axes, optimizing tool movement and workpiece placement for improved operational performance.
Smart Images

Figure JP2023038255_05032026_PF_FP_ABST
Abstract
Description
Evaluation device and computer-readable storage medium
[0001] The present disclosure relates to an evaluation device and a computer-readable storage medium.
[0002] Conventionally, there are known orthogonal three-axis machining centers that do not have a rotary axis. In such machines, the movement amount of the tool tip point and the movement amount of the control axis coincide with each other.
[0003] On the other hand, in a processing machine equipped with rotary axes such as the A-axis, B-axis, and C-axis, the tool posture is changed using the rotary axes (see, for example, Patent Document 1). Therefore, in a processing machine equipped with rotary axes, the movement amount of the tool tip point and the movement amount of the control axis do not necessarily match.
[0004] In addition, in a processing machine equipped with a rotary axis, when the tip point of the tool moves along a predetermined path and the tool rotates in a predetermined direction, the amount of movement of each control axis changes depending on configuration information that indicates the configuration of the processing machine including the rotary axis. In this case, the operating efficiency of the processing machine differs depending on how much each control axis or rotary axis is moved or rotated based on the configuration information of the processing machine.
[0005] Japanese Patent Application Publication No. 10-177406
[0006] However, there is no method for accurately evaluating the operational efficiency of a processing machine having a rotary axis, and therefore a method for accurately evaluating the operational efficiency of a processing machine having a rotary axis is required.
[0007] The evaluation device disclosed herein includes a configuration information acquisition unit that acquires configuration information indicating the configuration of a machining device including a first rotation axis; a program processing unit that acquires at least one first command block from a machining program; a calculation unit that calculates an index indicating the state or change in state of the machining device based on the configuration information acquired by the configuration information acquisition unit and the at least one first command block acquired by the program processing unit; an evaluation unit that calculates an evaluation value of the operating efficiency of the machining device based on the index calculated by the calculation unit; and an output unit that outputs the evaluation value calculated by the evaluation unit.
[0008] The computer-readable storage medium of the present disclosure stores instructions that cause a computer to execute the following: acquire configuration information indicating the configuration of a machining device including a first rotation axis; acquire at least one first command block from a machining program; calculate an index indicating the state or change in state of the machining device based on the acquired configuration information and the acquired at least one first command block; calculate an evaluation value of the operating efficiency of the machining device based on the calculated index; and output the calculated evaluation value.
[0009] FIG. 1 is a block diagram showing an example of the hardware configuration of a processing machine. FIG. 2 is a block diagram showing an example of the hardware configuration of an evaluation device. FIG. 3 is a block diagram showing an example of the functions of the evaluation device. FIG. 4 is a diagram for explaining a method for calculating an evaluation value. FIG. 5 is a flowchart showing an example of processing executed by the evaluation device. FIG. 6 is a diagram showing an example of the configuration of a processing machine. FIG. 7 is a diagram for explaining the movement of a first rotation axis and a second rotation axis. FIG. 8 is a diagram for explaining the movement of the first rotation axis and a second rotation axis. FIG. 9 is a diagram for explaining an example of a method for calculating an evaluation value. FIG. 10 is a block diagram showing an example of the functions of the evaluation device.
[0010] An evaluation device and a computer-readable storage medium according to an embodiment of the present disclosure will be described below with reference to the drawings. In the following description, components having the same or similar functions will be denoted by the same reference numerals. Duplicate descriptions of those components may be omitted.
[0011] In this application, "based on XX" means "based on at least XX," and includes cases where it is based on other elements in addition to XX. Furthermore, "based on XX" is not limited to cases where XX is used directly, but also includes cases where it is based on XX that has been calculated or processed. "XX" is any element (for example, any information).
[0012] First Embodiment The evaluation device is a device for evaluating the operational efficiency of a machining device having a rotary axis. The machining device is, for example, a machine tool, a three-dimensional printer, or a wire electric discharge machine. The machine tool is, for example, a lathe, a machining center, or a multi-tasking machine.
[0013] The processing machine has, for example, three mutually orthogonal control axes, namely, the X-axis, the Y-axis, and the Z-axis. The processing machine also has rotation axes such as the A-axis, the B-axis, and the C-axis. However, the processing machine does not need to have all of these control axes and rotation axes.
[0014] The operational efficiency is an index that indicates how efficiently the components constituting a processing machine operate when the tip point of the tool moves on the workpiece along a predetermined movement path. The operational efficiency is evaluated based on a predetermined evaluation value. The movement path is the path on the workpiece that the tool passes through when the tool and the workpiece move relative to each other.
[0015] 1 is a block diagram showing an example of the hardware configuration of a processing machine 1. The processing machine 1 includes a control device 2, an input / output device 3, a servo amplifier 4, a servo motor 5, a spindle amplifier 6, and a spindle motor 7.
[0016] The control device 2 includes, for example, a hardware processor 21 , a bus 22 , a read-only memory (ROM) 23 , a random access memory (RAM) 24 , and a non-volatile memory 25 .
[0017] The hardware processor 21 is a processor that controls the entire control device 2 in accordance with a system program. The hardware processor 21 reads the system program and the like stored in the ROM 23 via the bus 22. The hardware processor 21 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
[0018] The bus 22 is a communication path that connects the various pieces of hardware in the control device 2. The various pieces of hardware in the control device 2 exchange data via the bus 22.
[0019] The ROM 23 is a storage device that stores system programs, etc. The ROM 23 is a computer-readable storage medium.
[0020] The RAM 24 is a storage device that temporarily stores various data and functions as a work area for the hardware processor 21 to process various data.
[0021] The nonvolatile memory 25 is a storage device that retains data even when the power to the control device 2 is turned off. The nonvolatile memory 25 stores, for example, a machining program. The nonvolatile memory 25 is a computer-readable storage medium. The nonvolatile memory 25 is, for example, a battery-backed memory or an SSD (Solid State Drive).
[0022] The control device 2 further includes a first interface 26 , an axis control circuit 27 , a spindle control circuit 28 , and a second interface 29 .
[0023] The first interface 26 connects the bus 22 and the input / output device 3. The first interface 26 sends various data processed by the hardware processor 21 to the input / output device 3, for example.
[0024] The input / output device 3 receives various data via the first interface 26 and displays the various data on a display. The input / output device 3 also receives input of various data and sends the various data to, for example, the hardware processor 21 via the first interface 26.
[0025] The input / output device 3 is, for example, a touch panel. When the input / output device 3 is a touch panel, the input / output device 3 is, for example, a capacitive touch panel. The touch panel is not limited to a capacitive touch panel and may be a touch panel of another type. The input / output device 3 is installed in an operation panel (not shown) in which the control device 2 is housed.
[0026] The axis control circuit 27 is a circuit for controlling the servo motor 5. The axis control circuit 27 receives control commands from the hardware processor 21 and sends various commands to the servo amplifier 4 for driving the servo motor 5. The axis control circuit 27 sends, for example, a torque command for controlling the torque of the servo motor 5 to the servo amplifier 4.
[0027] The servo amplifier 4 receives a command from the axis control circuit 27 and supplies a current to the servo motor 5 .
[0028] The servo motors 5 are driven by receiving a current supply from the servo amplifier 4. The servo motors 5 are provided corresponding to each control axis of the processing machine 1. If the processing machine 1 is a machine tool having five axes, the servo motors 5 include, for example, an X-axis servo motor, a Y-axis servo motor, a Z-axis servo motor, a B-axis servo motor, and a C-axis servo motor. In this case, an axis control circuit 27 and a servo amplifier 4 are provided for each servo motor 5.
[0029] The servo motor 5 is connected to, for example, a ball screw that moves the table. When the servo motor 5 is driven, a structure of the processing machine 1, such as the table, moves along a predetermined control axis.
[0030] The servo motor 5 has a built-in encoder (not shown) that detects the position and feed speed of the control axis. Position feedback information and speed feedback information indicating the position and feed speed of the control axis detected by the encoder are fed back to the axis control circuit 27. In this way, the axis control circuit 27 performs feedback control of each control axis.
[0031] The spindle control circuit 28 is a circuit for controlling the spindle motor 7. The spindle control circuit 28 receives a control command from the hardware processor 21 and sends a command to the spindle amplifier 6 to drive the spindle motor 7. The spindle control circuit 28 sends, for example, a spindle speed command to the spindle amplifier 6 to control the rotation speed of the spindle motor 7.
[0032] The spindle amplifier 6 receives a command from the spindle control circuit 28 and supplies a current to the spindle motor 7 .
[0033] The spindle motor 7 is driven by receiving a current supplied from the spindle amplifier 6. The spindle motor 7 is connected to the main shaft and rotates the main shaft.
[0034] The second interface 29 is an interface for establishing a wired or wireless connection between the bus 22 and an external device. The second interface 29 connects the bus 22 to, for example, an evaluation device.
[0035] 2 is a block diagram showing an example of the hardware configuration of an evaluation device 10. The evaluation device 10 includes, for example, a hardware processor 11, a bus 12, a ROM 13, a RAM 14, a non-volatile memory 15, an input / output device 16, and an interface 17.
[0036] The hardware processor 11 is a processor that controls the entire evaluation device 10 in accordance with a system program. The hardware processor 11 reads the system program and the like stored in the ROM 13 via the bus 12. The hardware processor 11 is, for example, a CPU or an electronic circuit.
[0037] The bus 12 is a communication path that connects the various pieces of hardware in the evaluation device 10. The various pieces of hardware in the evaluation device 10 exchange data via the bus 12.
[0038] The ROM 13 is a storage device that stores system programs, etc. The ROM 13 is a computer-readable storage medium.
[0039] The RAM 14 is a storage device that temporarily stores various data and functions as a work area for the hardware processor 11 to process various data.
[0040] The nonvolatile memory 15 is a storage device that retains data even when the power to the evaluation device 10 is turned off. The nonvolatile memory 15 is a computer-readable storage medium. The nonvolatile memory 15 is configured, for example, by a battery-backed memory or an SSD.
[0041] The input / output device 16 is a device that displays various data processed by the hardware processor 11. The input / output device 16 displays the various data on a display. The input / output device 16 also accepts various data based on an input operation. The input / output device 16 sends the accepted data to, for example, the hardware processor 11. The input / output device 16 is, for example, a touch panel.
[0042] The interface 17 connects the bus 12 to an external device, such as the control device 2.
[0043] 3 is a block diagram showing an example of the functions of the evaluation device 10. The evaluation device 10 includes, for example, a configuration information acquisition unit 101, a program processing unit 102, a calculation unit 103, an evaluation unit 104, and an output unit 105. The configuration information acquisition unit 101, the program processing unit 102, the calculation unit 103, the evaluation unit 104, and the output unit 105 are realized, for example, by the hardware processor 11 performing arithmetic processing using a system program stored in the ROM 13 and various data stored in the non-volatile memory 15.
[0044] The configuration information acquisition unit 101 acquires configuration information indicating the configuration of the processing machine 1 including the first rotation axis. The configuration information acquisition unit 101 acquires, for example, the configuration information stored in a storage unit (not shown). The configuration information acquisition unit 101 may acquire the configuration information from the control device 2.
[0045] The configuration information is information indicating the mechanical configuration of the processing machine 1. The configuration information includes, for example, information indicating the number and type of control axes, information indicating the number and type of rotation axes, information indicating the tool length, and information indicating the length of the processing head. The configuration information may include a tool direction vector indicating the direction in which the tool faces, an offset vector indicating the deviation between the first rotation axis and the tool axis, and an offset vector indicating the deviation between the first rotation axis and the second rotation axis. Here, the first rotation axis is, for example, the B-axis. The second rotation axis is, for example, the C-axis.
[0046] The configuration information may include information indicating the distance between the tip point of the tool and the control point. The configuration information may include at least one of information indicating the distance between the workpiece and the first rotation axis, information indicating the distance between the workpiece and the second rotation axis, and information indicating the mounting orientation of the workpiece.
[0047] The program processing unit 102 reads, for example, a machining program stored in a storage unit. The program processing unit 102 acquires at least one first command block from the read machining program. The first command block is a command written in one line of the machining program. In other words, one or more commands written in one line of the machining program constitute the first command block.
[0048] In this specification, a command block included in a machining program is referred to as a first command block, and a command block included in a subprogram called from the machining program, as will be described later, is referred to as a second command block.
[0049] The calculation unit 103 calculates an index indicating the state of the machining device 1 or a change in the state of the machining device 1 based on the configuration information acquired by the configuration information acquisition unit 101 and at least one first command block acquired by the program processing unit 102.
[0050] An indicator indicating the state of the processing machine 1 or a change in the state of the processing machine 1 is an indicator indicating the state or change in state of a structure that constitutes the processing machine 1, the state or change in state of a part of the structure, or the state or change in state of a specified point of the structure.
[0051] The state of the processing machine 1 is, for example, the position of each structure of the processing machine 1. A change in the state of the processing machine 1 is, for example, the amount of movement before and after the change of each structure of the processing machine 1. Indicators indicating the state of the processing machine 1 or a change in state include, for example, the amount of movement of the tip point of the tool and the amount of movement of the control point.
[0052] The evaluation unit 104 calculates an evaluation value of the operation efficiency of the processing machine 1 based on the index calculated by the calculation unit 103. The evaluation unit 104 calculates the evaluation value using, for example, the ratio between the movement amount of the tip point of the tool and the movement amount of the control point.
[0053] Fig. 4 is a diagram for explaining a method for calculating an evaluation value. The processing machine 1 shown in Fig. 4 has an X-axis, a Y-axis, and a Z-axis as control axes. The processing machine 1 also includes a first rotation axis and a second rotation axis as rotation axes. The first rotation axis is, for example, the B-axis. The second rotation axis is, for example, the C-axis. In other words, the axis to which the tool is attached rotates and tilts around the B-axis, and also rotates around the C-axis.
[0054] The program processing unit 102 reads the machining program and acquires a first command block. The first command block acquired by the program processing unit 102 is a command block that includes a cutting command. In other words, the first command block acquired by the program processing unit 102 is a command block that commands movement of the tip point of the tool. The tip point of the tool is the end point of the tool on the side where the tool comes into contact with the workpiece.
[0055] The first command block is a command block that includes, for example, a linear interpolation command "G01," a circular interpolation command "G02," or a circular interpolation command "G03." In the machining program, these interpolation commands are used to specify a movement path in a workpiece coordinate system that is fixed to the workpiece.
[0056] The calculation unit 103 converts information indicating the position of the tip point of the tool specified in the machining program into position information indicating the position of each control point. A control point is a point at which the movement of each control axis is controlled by the control device 2.
[0057] The calculation unit 103 also calculates the amount of movement of the control point in a coordinate system fixed in three-dimensional space. The coordinate system fixed in three-dimensional space is, for example, a machine coordinate system.
[0058] For example, the position of the tip point of the tool specified in the k-th command block among the plurality of first command blocks including the cutting command acquired by the program processing unit 102 is expressed as x k tcp , the positions of the B-axis and C-axis at the tip point are r k (=(r k 1st ,r k 2nd)), where u is the configuration information acquired by the configuration information acquisition unit 101 and L is a conversion function that converts the coordinate values of the tool center point into the coordinate values of the control point, the calculation unit 103 calculates the position x of the control point using the following equation 1: k cntl Calculate.
[0059]
[0060] It is assumed that the number of command blocks including cutting commands among the plurality of first command blocks included in the machining program is n. In this case, the evaluation unit 104 calculates an evaluation value E cntl is calculated using the following equation 2.
[0061]
[0062] E cntl If the value of is equal to or less than 1 or is close to 1, the amount of movement of the control point by the first rotation axis is small. In this case, the evaluation unit 104 determines that there is no problem with the operating efficiency of the processing machine 1.
[0063] The output unit 105 outputs the evaluation value calculated by the evaluation unit 104. The output unit 105 outputs the evaluation value to a display device. The display device is, for example, the input / output device 16. That is, the output unit 105 outputs the evaluation value to the input / output device 16 and displays the evaluation value on the display of the input / output device 16. The output unit 105 may also output a judgment result of the evaluation value. The judgment result is, for example, information indicating that there is no problem with the operating efficiency of the processing machine 1.
[0064] 5 is a flowchart showing an example of processing executed by the evaluation device 10. In the evaluation device 10, first, the configuration information acquisition unit 101 acquires configuration information (step S1).
[0065] Next, the program processing unit 102 acquires the first command block (step S2). Next, the calculation unit 103 calculates an index indicating the state of the processing machine 1 or a change in the state of the processing machine 1 (step S3).
[0066] Next, the evaluation unit 104 calculates an evaluation value of the operation efficiency of the processing machine 1 based on the index (step S4). Finally, the output unit 105 outputs the evaluation value (step S5), and the processing in the evaluation device 10 ends.
[0067] Second Embodiment Next, a second embodiment will be described. In the second embodiment, the processing machine 1 includes at least a first rotation axis and a second rotation axis different from the first rotation axis. The evaluation device 10 calculates an evaluation value using the ratio between the amount of change in the tool attitude and the amount of rotation about the first rotation axis and the second rotation axis.
[0068] 6 is a diagram showing an example of the configuration of the processing machine 1. The first rotation axis is, for example, the A-axis. The second rotation axis is, for example, the C-axis. The first rotation axis and the second rotation axis are axes that rotate the table T. In other words, the A-axis is an axis that rotates the table T around a horizontal axis, and the C-axis is an axis that rotates the table T around a vertical axis.
[0069] The calculation unit 103 calculates an index indicating the state of the processing machine 1 or a change in the state of the processing machine 1. In the second embodiment, the index calculated by the calculation unit 103 is the amount of change in the attitude of the tool and the amount of rotation of the first rotation axis and the second rotation axis.
[0070] The tool attitude is the relative attitude of the tool with respect to the workpiece. In other words, if the workpiece placed on the table T is tilted and the relative attitude between the workpiece and the tool changes, the tool attitude can also be said to have changed. The tool attitude can be found from the control points described above.
[0071] The evaluation unit 104 calculates an evaluation value E rot is calculated using the following equation 3.
[0072]
[0073] However, l k , l k+1 are vectors indicating the tool orientation specified by the k-th and k+1-th command blocks of the first command block, respectively, and θ(l k , lk+1 ) is the angle between those vectors. r k ix indicates the coordinate value of the ix(1,2)th rotation axis specified in the kth command block among the first command blocks, i.e., the coordinate values of the first and second rotation axes. Also, n indicates the number of first command blocks that specify the cutting portion in the machining program.
[0074] The evaluation unit 104 calculates an evaluation value E rot is used to evaluate whether or not unnecessary movements are occurring in the rotational movements of the first rotation axis and the second rotation axis.
[0075] 7A and 7B are diagrams for explaining the movement of the first rotation axis and the second rotation axis. Figures 7A and 7B show the amount of rotation of each rotation axis when a command to change the orientation of the same tool is issued in processing machines having different machine configurations. The vector indicating the tool attitude changes when at least one of the first rotation axis and the second rotation axis rotates.
[0076] In the example shown in FIG. 7A, when the tip of the vector indicating the tool attitude is moved from P1 to P2, only the A axis needs to be rotated.
[0077] On the other hand, in the example shown in Fig. 7B, when the tip of the vector indicating the tool attitude is moved from P1 to P2, the vector is moved from P1 to P2 via P3 by rotating the A-axis and C-axis. In the example shown in Fig. 7B, since both the A-axis and C-axis are rotated simultaneously, the amount of rotation of the rotation axes when changing the orientation of the tool from P1 to P2 becomes larger than in the example shown in Fig. 7A, and therefore, machining is not efficient.
[0078] When the tip of the vector moves from P1 to P2 via P3, the amount of rotation about the first rotation axis and the second rotation axis is larger than when the tip of the vector moves directly from P1 to P2. In this case, the evaluation value E rot becomes larger as the amount of rotation of the first rotation axis and the second rotation axis increases. In other words, in this case, the evaluation is low.
[0079] The evaluation unit 104 calculates an evaluation value E cntland the evaluation value E rot The evaluation unit 104 may calculate another evaluation value E using the following equation 4.
[0080]
[0081] However, w cntl is the evaluation value E cntl weighting coefficient, w rot is the evaluation value E rot These weighting factors may be arbitrarily determined by the user, or may be used to calculate the evaluation value E cntl and the evaluation value E rot It may be decided to regularize these evaluation values if they are of different orders than .
[0082] Third Embodiment Next, a third embodiment will be described. In the third embodiment, the processing machine 1 includes a first rotation axis and a second rotation axis. The calculation unit 103 calculates an index indicating the state of the processing machine 1 or a change in the state of the processing machine. The indexes calculated by the calculation unit 103 are the distance between the first rotation axis and a control point and the distance between the second rotation axis and a control point.
[0083] The evaluation unit 104 calculates an evaluation value by weighting the first rotation axis and the second rotation axis based on the distance between the first rotation axis and the control point and the distance between the second rotation axis and the control point.
[0084] Specifically, the evaluation unit 104 calculates the evaluation value E rot The evaluation unit 104 calculates the evaluation value E by using a weighting coefficient obtained from the distance between the first rotation axis and the control point and the distance between the second rotation axis and the control point. rot Calculate.
[0085] However, w ix is expressed by the following equation 6.
[0086] However, c ix is the distance between the rotation axis ix and the control point. In addition, in Equation 6, the following relational expression in Equation 7 holds.
[0087]
[0088] When the distance between the control point and the first rotation axis is long, the movement distance of the control point that moves in accordance with the rotation of the first rotation axis is longer than when the distance is short. Also, when the distance between the control point and the second rotation axis is long, the movement distance of the control point that moves in accordance with the rotation of the second rotation axis is longer than when the distance is short. Therefore, the evaluation unit 104 can evaluate the operating efficiency of the processing machine 1, including the movement distances of the control axes that operate in accordance with the rotation of the first rotation axis and the second rotation axis.
[0089] 8A and 8B are diagrams illustrating an example in which an evaluation value is calculated based on the distance between a first rotation axis and a control point. In the example shown in FIGS. 8A and 8B, the first control axis is the C-axis. The C-axis is, for example, a vertical axis. In this case, a workpiece fixed to a table T rotates around the vertical axis.
[0090] When the workpiece rotates around the C-axis, the tool position needs to be moved about the C-axis to maintain the position of the tool tip relative to the workpiece. In such a case, if the distance between the first rotation axis and the control point is relatively long, the control point needs to move a relatively long distance.
[0091] On the other hand, when the distance between the first rotation axis and the control point is relatively short, the control point only needs to move a relatively short distance. In other words, the shorter the distance between the first rotation axis and the control point, the less the control point needs to move. Therefore, by reducing the weight of the evaluation value as the distance between the first rotation axis and the control point becomes shorter, the evaluation unit 104 can appropriately determine the operating efficiency of the processing machine 1.
[0092] Fourth Embodiment Next, a fourth embodiment will be described. In the fourth embodiment, the configuration information acquired by the configuration information acquisition unit 101 includes acceleration / deceleration setting information for a plurality of control axes included in the processing machine 1. The acceleration / deceleration setting information is, for example, information indicating the maximum allowable acceleration of the control axes.
[0093] The calculation unit 103 calculates an index that indicates the state of the processing machine 1 or a change in the state of the processing machine 1. The index calculated by the calculation unit 103 is the amount of movement of the control point.
[0094] The calculation unit 103 calculates, for example, the position (x k tcp ,r k ) and the position x of the control point k cntl =(x k cntl,1 ,x k cntl,2 ,x k cntl,3 )=L(x k tcp ,r k , u) are calculated, where cntl,1, cntl,2, and cntl,3 are, for example, the X-axis, the Y-axis, and the Z-axis, respectively.
[0095] The evaluation unit 104 calculates the movement amounts of the control points specified in all first command blocks including the cutting command. However, the evaluation unit 104 calculates the evaluation value by weighting each control axis based on the configuration information. For example, the evaluation unit 104 calculates the evaluation value E cntl Calculate.
[0096] However, w ix is expressed by the following equation 9.
[0097]
[0098] However, a max ix is the maximum allowable acceleration set for the control axis ix. Furthermore, in the above-mentioned equation 9, the relational expression of equation 7 is established.
[0099] [Correction based on Rule 91 18.12.2025] The higher the value of the maximum allowable acceleration set in the processing machine 1, the higher the rigidity of the control axis. Therefore, the maximum allowable acceleration a max ix The larger the value of the weighting coefficient w ixTherefore, the evaluation value E is set to a small value by operating the control axis with a larger maximum allowable acceleration than the other control axes. cntl In other words, in this case, the evaluation is high.
[0100] Fifth Embodiment Next, a fifth embodiment will be described. In the fifth embodiment, the evaluation device 10 searches for an optimal workpiece installation position and an optimal workpiece installation orientation based on the evaluation value.
[0101] The configuration information u acquired by the configuration information acquisition unit 101 includes at least one of information indicating the installation position of the workpiece and information indicating the attachment orientation of the workpiece. When the information indicating the installation position of the workpiece is t and the information indicating the attachment orientation of the workpiece is p, the configuration information u is expressed as u(t,p).
[0102] The calculation unit 103 calculates an index based on the installation position of the workpiece or the attachment attitude of the workpiece and the first command block acquired by the program processing unit 102. Here, the index is calculated based on the position of the tip point of the tool (x k tcp ,r k ) and the position x of the control point k cntl =L(x k tcp ,r k , u). The evaluation unit 104 calculates an evaluation value E cntl Calculate.
[0103] 9 is a block diagram showing an example of the functions of the evaluation device 10 according to the fifth embodiment. The evaluation device 10 includes a configuration information change unit 106 that changes configuration information in addition to the functions of the evaluation device 10 shown in FIG. 3. The configuration information change unit 106 changes information t indicating the installation position of the workpiece and information p indicating the attachment attitude of the workpiece.
[0104] The calculation unit 103 calculates the index again based on the installation position of the workpiece changed by the configuration information change unit 106 or the mounting posture of the workpiece changed by the configuration information change unit 106 and the first command block acquired by the program processing unit 102.
[0105] The evaluation unit 104 calculates an evaluation value using the index calculated based on the changed configuration information.
[0106] The configuration information change unit 106 calculates at least one of the workpiece installation position and the workpiece attachment attitude when the evaluation value calculated by the evaluation unit 104 is minimized. The configuration information change unit 106 calculates at least one of the workpiece installation position and the workpiece attachment attitude when the evaluation value is minimized, based on the following equation 10. In other words, the configuration information change unit 106 searches for a value at which the evaluation value converges, and calculates at least one of the workpiece installation position and the workpiece attachment attitude when the evaluation value converges.
[0107] However, argmin x E(x) is a function that finds x that minimizes E(x).
[0108] When the evaluation value is minimum, the workpiece is installed in the optimum installation position with the optimum installation posture.
[0109] [Correction Based on Rule 91, 18.12.2025] In at least one of the above-described embodiments, the evaluation unit 104 calculates the evaluation value using indicators such as the movement amount of the tool tip point and the movement amount of the control point. However, the indicators are not limited to the above examples. The indicators may include, for example, at least one of the number of sign reversals of the movement command for the tip point and the number of sign reversals of the movement command for the control point. In this case, the evaluation unit 104 calculates the evaluation value using the ratio between the number of sign reversals of the movement command for the tip point and the number of sign reversals of the movement command for the control point. The number of sign reversals refers to the change in coordinate value from a positive value to a negative value, and from a negative value to a positive value. The evaluation unit 104 may also calculate the evaluation value based on the ratio between the change in the tool attitude and the movement amount of the control point.
[0110] The program processing unit 102 may also have a dividing unit that divides the machining program into a plurality of parts. In this case, the calculation unit 103 calculates an index indicating the state of the machining machine 1 or a change in the state of the machining machine 1 for each part based on at least one first command block included in each of the plurality of parts. The evaluation unit 104 calculates an evaluation value for each part.
[0111] The program processing unit 102 may also acquire at least one second command block included in each of a plurality of subprograms called from the machining program. In this case, the calculation unit 103 calculates an index for each subprogram based on the configuration information acquired by the configuration information acquisition unit 101 and the at least one second command block acquired by the program processing unit 102. The evaluation unit 104 calculates an evaluation value for each subprogram based on the index calculated by the calculation unit 103.
[0112] In addition, if at least one first command block is a plurality of first command blocks, the output unit 105 may display the evaluation value in a graph for each first command block or for each machining part included in the plurality of machining parts.
[0113] Furthermore, when the calculation unit 103 calculates a plurality of indices indicating the state of the processing machine 1 or a change in the state of the processing machine 1 based on the configuration information or changed configuration information and at least one first command block, the evaluation unit 104 may calculate a plurality of evaluation values indicating the operating efficiency of the processing machine 1 based on the plurality of indices. In this case, the output unit 105 can display the plurality of evaluation values in a comparable manner.
[0114] As described above, the evaluation device 10 comprises a configuration information acquisition unit 101 that acquires configuration information indicating the configuration of the machining device 1 including the first rotation axis, a program processing unit 102 that acquires at least one first command block from the machining program, a calculation unit 103 that calculates an index indicating the state or change in state of the machining device 1 based on the configuration information acquired by the configuration information acquisition unit 101 and the at least one first command block acquired by the program processing unit 102, an evaluation unit 104 that calculates an evaluation value of the operating efficiency of the machining device 1 based on the index calculated by the calculation unit 103, and an output unit 105 that outputs the evaluation value calculated by the evaluation unit 104.
[0115] Therefore, the evaluation device 10 can accurately evaluate the operating efficiency of the processing machine 1 having the first rotation axis. Furthermore, the evaluation device 10 can visualize information indicating whether the content of the processing program is suitable for the mechanical configuration of the processing machine 1 by displaying the evaluation value on, for example, the input / output device 16.
[0116] The index includes at least one of the following: a movement amount of the tip point of the tool, a movement amount of the control point, a change amount of the tool attitude, a rotation amount of the first rotation axis, a rotation amount of a second rotation axis different from the first rotation axis, a distance between the first rotation axis and the control point, a distance between the second rotation axis and the control point, a position of the tip point, a position of the control point, a number of sign reversals of the movement command for the tip point, and a number of sign reversals of the movement command for the control point. The evaluation unit 104 calculates the evaluation value using at least one of the ratio of the movement amount of the tip point to the movement amount of the control point, a ratio of the change amount of the attitude to the movement amount of the control point, a ratio of the change amount of the attitude to the rotation amount of the first rotation axis and the second rotation axis, and a ratio of the number of sign reversals of the movement command for the tip point to the number of sign reversals of the movement command for the control point.
[0117] Therefore, the evaluation device 10 can calculate the evaluation value based on various indices, which allows the operator to select an index in accordance with the mechanical configuration of the processing machine 1, for example.
[0118] The program processing unit 102 may also have a dividing unit that divides the machining program into multiple parts. In this case, the calculation unit 103 calculates an index indicating the state of the machining machine 1 or a change in the state of the machining machine 1 for each part based on at least one first command block included in each of the multiple parts. The evaluation unit 104 also calculates an evaluation value for each part. Therefore, the evaluation device 10 can evaluate the operating efficiency of the machining machine 1 only for parts that require evaluation.
[0119] The program processing unit 102 may also acquire at least one second command block included in each of a plurality of subprograms called from the machining program. In this case, the calculation unit 103 calculates an index for each subprogram based on the configuration information acquired by the configuration information acquisition unit 101 and the at least one second command block acquired by the program processing unit 102. The evaluation unit 104 calculates an evaluation value for each subprogram based on the index calculated by the calculation unit 103.
[0120] Therefore, the evaluation device 10 can evaluate only those subprograms that require evaluation.
[0121] The configuration information also includes setting information for acceleration and deceleration of the multiple control axes of the processing machine 1, and the evaluation unit 104 calculates an evaluation value by weighting each control axis based on the configuration information. Therefore, the evaluation device 10 can perform a more accurate evaluation tailored to the processing machine 1.
[0122] Furthermore, the evaluation unit 104 calculates an evaluation value by weighting the first rotation axis and the second rotation axis based on the distance between the first rotation axis and the control point and the distance between the second rotation axis and the control point. Therefore, the evaluation device 10 can evaluate whether the amount of rotation about the first rotation axis and the amount of rotation about the second rotation axis are appropriately distributed.
[0123] The evaluation device 10 further includes a configuration information change unit 106 that changes the configuration information, and the configuration information includes at least one of information indicating the installation position of the workpiece and information indicating the attachment attitude of the workpiece. In this case, the calculation unit 103 calculates an index based on the installation position of the workpiece changed by the configuration information change unit 106 or the attachment attitude of the workpiece changed by the configuration information change unit 106 and the first command block acquired by the program processing unit 102. The evaluation unit 104 calculates an evaluation value based on the index calculated by the calculation unit 103.
[0124] Therefore, the evaluation device 10 can evaluate whether or not the workpiece is placed in an appropriate position and in an appropriate posture in the processing machine 1.
[0125] Furthermore, the configuration information change unit 106 calculates at least one of the installation position of the workpiece and the attachment posture of the workpiece when the evaluation value is minimum. Therefore, the evaluation device 10 can present to the operator at least one of information indicating whether the workpiece is installed at an appropriate position or information indicating whether the workpiece is installed in an appropriate posture or not.
[0126] The output unit 105 outputs the evaluation value to a display device. If the at least one first command block is a plurality of first command blocks, the output unit 105 displays a graph of the evaluation value for each first command block or for each machining portion included in the plurality of machining portions. If the calculation unit 103 calculates a plurality of indicators indicating the state or a change in state of the machining machine 1 based on the configuration information or changed configuration information and at least one first command block, the evaluation unit 104 calculates a plurality of evaluation values indicating the operating efficiency of the machining machine 1 based on the plurality of indicators, and the output unit 105 displays the plurality of evaluation values in a comparable manner. The evaluation values are thus visualized, allowing the operator to easily determine whether the machining program used for machining is suitable for the machining machine 1.
[0127] Although the present disclosure has been described in detail, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial deletions, etc. are possible to these embodiments without departing from the gist of the present disclosure or the gist of the present disclosure derived from the content of the claims and their equivalents. Furthermore, these embodiments can also be implemented in combination.
[0128] The following are notes related to embodiments of the present disclosure. Note [1] An evaluation device including: a configuration information acquisition unit that acquires configuration information indicating a configuration of a machining center including a first rotation axis, a program processing unit that acquires at least one first command block from a machining program, a calculation unit that calculates an index indicating a state of the machining center or a change in the state based on the configuration information acquired by the configuration information acquisition unit and the at least one first command block acquired by the program processing unit, an evaluation unit that calculates an evaluation value of operation efficiency of the machining center based on the index calculated by the calculation unit, and an output unit that outputs the evaluation value calculated by the evaluation unit. the index includes at least one of a movement amount of a tip point of a tool, a movement amount of a control point, a change amount of an attitude of the tool, a rotation amount of the first rotation axis, a rotation amount of a second rotation axis different from the first rotation axis, a distance between the first rotation axis and the control point, a distance between the second rotation axis and the control point, a position of the tip point, a position of the control point, a number of sign reversals of a movement command for the tip point, and a number of sign reversals of a movement command for the control point. Supplementary Note [4] The evaluation device according to any one of Supplementary Notes [1] to [3], wherein the program processing unit has a dividing unit that divides the machining program into a plurality of parts, the calculation unit calculates the index indicating the state of the machining machine or a change in the state for each of the parts based on the at least one first command block included in each of the plurality of parts, and the evaluation unit calculates the evaluation value for each of the parts.Supplementary Note [5] The evaluation device according to any one of Supplements [1] to [4], wherein the program processing unit acquires at least one second command block included in each of a plurality of subprograms called from the machining program, the calculation unit calculates the index for each of the subprograms based on the configuration information acquired by the configuration information acquisition unit and the at least one second command block acquired by the program processing unit, and the evaluation unit calculates the evaluation value for each of the subprograms based on the index calculated by the calculation unit. Supplementary Note [6] The evaluation device according to any one of Supplements [1] to [5], wherein the configuration information includes setting information for acceleration and deceleration of a plurality of control axes of the machining machine, and the evaluation unit calculates the evaluation value by weighting each of the control axes based on the configuration information. Supplementary Note [7] The evaluation device according to Supplementary Note [2] or [3], wherein the evaluation unit calculates the evaluation value by weighting the first rotation axis and the second rotation axis based on the distance between the first rotation axis and the control point and the distance between the second rotation axis and the control point. Supplementary Note [8] The evaluation device according to any one of Supplements [1] to [7], further comprising a configuration information change unit that changes the configuration information, wherein the configuration information includes at least one of information indicating an installation position of a workpiece and information indicating an attachment attitude of the workpiece, the calculation unit calculates the index based on the installation position of the workpiece changed by the configuration information change unit or the attachment attitude of the workpiece changed by the configuration information change unit and the first command block acquired by the program processing unit, and the evaluation unit calculates the evaluation value based on the index calculated by the calculation unit. Supplementary Note [9] The evaluation device according to Supplementary Note [8], wherein the configuration information change unit calculates at least one of the installation position of the workpiece and the attachment attitude of the workpiece when the evaluation value is minimum. Supplementary Note
[10] The evaluation device according to any one of Supplements [1] to [9], wherein the output unit outputs the evaluation value to a display device.Supplementary Note
[11] The evaluation device according to Supplementary Note [4], wherein, when the at least one first command block is a plurality of first command blocks, the output unit displays the evaluation value in a graph for each of the first command blocks or for each of the machining portions included in the plurality of machining portions. Supplementary Note
[12] The evaluation device according to Supplementary Note [8], wherein, when the calculation unit calculates a plurality of indices indicating the state of the processing machine or a change in the state based on the configuration information or the changed configuration information and the at least one first command block, the evaluation unit calculates a plurality of evaluation values indicating the operating efficiency of the processing machine based on the plurality of indices, and the output unit displays the plurality of evaluation values in a comparable manner. Supplementary Note
[13] A computer-readable storage medium storing instructions for causing a computer to execute the following: acquiring configuration information indicating a configuration of a machining device including a first rotation axis; acquiring at least one first command block from a machining program; calculating an index indicating a state of the machining device or a change in the state based on the acquired configuration information and the acquired at least one first command block; calculating an evaluation value of the operating efficiency of the machining device based on the calculated index; and outputting the calculated evaluation value.
[0129] REFERENCE SIGNS LIST 1 Machining machine 2 Control device 21 Hardware processor 22 Bus 23 ROM 24 RAM 25 Non-volatile memory 26 First interface 27 Axis control circuit 28 Spindle control circuit 29 Second interface 3 Input / output device 4 Servo amplifier 5 Servo motor 6 Spindle amplifier 7 Spindle motor 10 Evaluation device 11 Hardware processor 12 Bus 13 ROM 14 RAM 15 Non-volatile memory 16 Input / output device 17 Interface 101 Configuration information acquisition unit 102 Program processing unit 103 Calculation unit 104 Evaluation unit 105 Output unit 106 Configuration information change unit
Claims
1. An evaluation device comprising: a configuration information acquisition unit that acquires configuration information indicating the configuration of a machining device including a first rotation axis; a program processing unit that acquires at least one first command block from a machining program; a calculation unit that calculates an index indicating the state of the machining device or a change in the state based on the configuration information acquired by the configuration information acquisition unit and the at least one first command block acquired by the program processing unit; an evaluation unit that calculates an evaluation value of the operating efficiency of the machining device based on the index calculated by the calculation unit; and an output unit that outputs the evaluation value calculated by the evaluation unit.
2. The evaluation device of claim 1, wherein the index includes at least one of the amount of movement of the tip point of the tool, the amount of movement of a control point, the amount of change in the attitude of the tool, the amount of rotation of the first rotation axis, the amount of rotation of a second rotation axis different from the first rotation axis, the distance between the first rotation axis and the control point, the distance between the second rotation axis and the control point, the position of the tip point, the position of the control point, the number of sign reversals of the movement command for the tip point, and the number of sign reversals of the movement command for the control point.
3. The evaluation device according to claim 2, wherein the evaluation unit calculates the evaluation value using at least one of the ratio of the movement amount of the tip point to the movement amount of the control point, the ratio of the change amount of the attitude to the movement amount of the control point, the ratio of the change amount of the attitude to the rotation amount of the first rotation axis and the second rotation axis, and the ratio of the number of sign reversals of the movement command for the tip point to the number of sign reversals of the movement command for the control point.
4. An evaluation device according to any one of claims 1 to 3, wherein the program processing unit has a dividing unit that divides the machining program into a plurality of parts, the calculation unit calculates the index indicating the state of the machining machine or a change in the state for each of the plurality of parts based on the at least one first command block included in each of the plurality of parts, and the evaluation unit calculates the evaluation value for each of the parts.
5. An evaluation device according to any one of claims 1 to 4, wherein the program processing unit acquires at least one second command block included in each of a plurality of subprograms called from the machining program, the calculation unit calculates the index for each of the subprograms based on the configuration information acquired by the configuration information acquisition unit and the at least one second command block acquired by the program processing unit, and the evaluation unit calculates the evaluation value for each of the subprograms based on the index calculated by the calculation unit.
6. An evaluation device according to any one of claims 1 to 5, wherein the configuration information includes setting information for acceleration and deceleration of a plurality of control axes of the processing machine, and the evaluation unit calculates the evaluation value by weighting each of the control axes based on the configuration information.
7. An evaluation device as described in claim 2 or 3, wherein the evaluation unit calculates the evaluation value by weighting the first rotation axis and the second rotation axis based on the distance between the first rotation axis and the control point and the distance between the second rotation axis and the control point.
8. An evaluation device according to any one of claims 1 to 7, further comprising a configuration information modification unit that modifies the configuration information, wherein the configuration information includes at least one of information indicating the installation position of the workpiece and information indicating the mounting attitude of the workpiece, wherein the calculation unit calculates the index based on the installation position of the workpiece modified by the configuration information modification unit or the mounting attitude of the workpiece modified by the configuration information modification unit and the first command block acquired by the program processing unit, and wherein the evaluation unit calculates the evaluation value based on the index calculated by the calculation unit.
9. The evaluation device according to claim 8, wherein the configuration information change unit calculates at least one of the installation position of the workpiece and the mounting attitude of the workpiece when the evaluation value is minimized.
10. The evaluation device according to any one of claims 1 to 9, wherein the output unit outputs the evaluation value to a display device.
11. An evaluation device as described in claim 4, wherein when the at least one first command block is a plurality of first command blocks, the output unit displays the evaluation value in a graph for each of the first command blocks or for each machining portion included in the plurality of machining portions.
12. The evaluation device described in claim 8, wherein when the calculation unit calculates a plurality of indicators indicating the state of the machining device or a change in the state based on the configuration information or the changed configuration information and the at least one first command block, the evaluation unit calculates a plurality of evaluation values indicating the operating efficiency of the machining device based on the plurality of indicators, and the output unit displays the plurality of evaluation values in a comparable manner.
13. A computer-readable storage medium storing instructions that cause a computer to execute the following: acquiring configuration information indicating the configuration of a machining device including a first rotation axis; acquiring at least one first command block from a machining program; calculating an index indicating the state of the machining device or a change in the state based on the acquired configuration information and the acquired at least one first command block; calculating an evaluation value of the operating efficiency of the machining device based on the calculated index; and outputting the calculated evaluation value.