JP7391255B1 - Information processing device and control program - Google Patents

Information processing device and control program Download PDF

Info

Publication number
JP7391255B1
JP7391255B1 JP2023018318A JP2023018318A JP7391255B1 JP 7391255 B1 JP7391255 B1 JP 7391255B1 JP 2023018318 A JP2023018318 A JP 2023018318A JP 2023018318 A JP2023018318 A JP 2023018318A JP 7391255 B1 JP7391255 B1 JP 7391255B1
Authority
JP
Japan
Prior art keywords
execution time
blocks
command
block
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023018318A
Other languages
Japanese (ja)
Inventor
優斗 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DMG Mori Co Ltd
Original Assignee
DMG Mori Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DMG Mori Co Ltd filed Critical DMG Mori Co Ltd
Priority to JP2023018318A priority Critical patent/JP7391255B1/en
Application granted granted Critical
Publication of JP7391255B1 publication Critical patent/JP7391255B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】NCプログラムの実行時間を正確に算出することが可能な情報処理装置と、そのような情報処理装置の制御プログラムと、を提供する。【解決手段】情報処理装置100は、複数のブロックを含むNCプログラムの実行時間を算出する。情報処理装置100は、複数のブロックの中の第1ブロックに対して工作機械で第1ブロックを実行した際の実際の実行に要する第1実行時間と、複数のブロックの中の第2ブロックに対して工作機械で第2ブロックを実行した際の実際の実行に要する第2実行時間とを含む複数のブロックに対応した実行時間に基づいて、NCプログラムの実行時間を算出する算出部120を備える。【選択図】図3An information processing device capable of accurately calculating the execution time of an NC program and a control program for such an information processing device are provided. An information processing apparatus calculates an execution time of an NC program including a plurality of blocks. The information processing device 100 calculates the first execution time required for actual execution when a machine tool executes the first block among the plurality of blocks, and the first execution time required for the second block among the plurality of blocks. On the other hand, the calculation unit 120 calculates the execution time of the NC program based on the execution time corresponding to a plurality of blocks, including the second execution time required for actual execution when the second block is executed by the machine tool. . [Selection diagram] Figure 3

Description

この発明は、情報処理装置および制御プログラムに関する。 The present invention relates to an information processing device and a control program.

特開2003-305624号公報(特許文献1)には、生産ラインを構成する生産設備の制御に用いられるプログラムまたはパラメータに基づいて、生産設備がワークの加工に要すると予測される時間を算出するサイクルタイム算出装置が開示されている。 Japanese Unexamined Patent Publication No. 2003-305624 (Patent Document 1) discloses that the estimated time required for production equipment to process a workpiece is calculated based on a program or parameter used to control production equipment constituting a production line. A cycle time calculation device is disclosed.

特開2003-305624号公報Japanese Patent Application Publication No. 2003-305624

上記の特許文献1に開示されるように、コンピュータによる数値制御により各種動作が自動化されたNC(Numerical Control)工作機械において、NCプログラムに基づいて、そのNCプログラムの実行に要する時間(実行時間)を算出するための情報処理装置が知られている。このような情報処理装置においては、正確な実行時間を算出することが難しい場合がある。 As disclosed in the above Patent Document 1, in an NC (Numerical Control) machine tool in which various operations are automated by numerical control by a computer, the time required to execute the NC program (execution time) based on the NC program. An information processing device for calculating is known. In such an information processing device, it may be difficult to calculate an accurate execution time.

たとえば、NCプログラムが主軸または刃物台等の移動体の軸移動を指令する場面において、滑らかな軸移動を実現するためのスムージング機能が工作機械に備わる場合がある。スムージング機能は、各NCメーカーが独自に作成した非公開のアルゴリズムにより、NCプログラムで規定された指令点間の経路に適当な補間点を設定するため、かかるスムージング機能を加味した実行時間を算出することは困難である。 For example, when an NC program instructs the axis movement of a movable body such as a spindle or a turret, a machine tool may be equipped with a smoothing function to achieve smooth axis movement. The smoothing function uses undisclosed algorithms created independently by each NC manufacturer to set appropriate interpolation points on the path between command points specified in the NC program, so the execution time is calculated with this smoothing function taken into account. That is difficult.

そこでこの発明の目的は、上記の課題を解決することであり、NCプログラムの実行時間を正確に算出することが可能な情報処理装置と、そのような情報処理装置の制御プログラムとを提供することである。 SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems, and to provide an information processing device that can accurately calculate the execution time of an NC program, and a control program for such an information processing device. It is.

[1]複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置であって、(i)上記複数のブロックの中の第1ブロックに対して工作機械で上記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)上記複数のブロックの中の第2ブロックに対して上記工作機械で上記第2ブロックを実行した際の実際の実行に要する第2実行時間とを含む上記複数のブロックに対応した実行時間に基づいて、上記NCプログラムの実行時間を算出する算出部を備える、情報処理装置。 [1] An information processing device that calculates the execution time of an NC program including a plurality of blocks, wherein (i) when a machine tool executes the first block among the plurality of blocks; and (ii) the second execution time required for actual execution when the machine tool executes the second block among the plurality of blocks. An information processing device comprising: a calculation unit that calculates an execution time of the NC program based on execution times corresponding to the plurality of blocks including the above.

このように構成された情報処理装置によれば、NCプログラムの実行時間の算出に、工作機械でNCプログラムの第1ブロックおよび第2ブロックをそれぞれ実行した際の実際の実行に要する第1実行時間および第2実行時間が反映されるため、NCプログラムの実行時間を正確に算出することができる。 According to the information processing device configured in this way, in calculating the execution time of the NC program, the first execution time required for the actual execution when the first block and the second block of the NC program are respectively executed by the machine tool is calculated. Since the second execution time is reflected, the execution time of the NC program can be calculated accurately.

[2]上記複数のブロックは、軸移動を指令し、上記第1ブロックおよび上記第2ブロックが含まれる複数の第1指令ブロックを含み、上記算出部は、上記軸移動の指令点および速度を含む第1パラメータに基づいて算出された各上記第1指令ブロックに対応した実行予測時間と、各上記第1指令ブロックを実行した際の実際の実行に要する実行時間との間の誤差に関する誤差データに基づいて、上記NCプログラムの実行時間を算出する、[1]に記載の情報処理装置。 [2] The plurality of blocks command axis movement and include a plurality of first command blocks including the first block and the second block, and the calculation unit calculates the command point and speed of the axis movement. Error data regarding the error between the predicted execution time corresponding to each of the first command blocks calculated based on the first parameters included and the actual execution time required for executing each of the first command blocks. The information processing device according to [1], which calculates the execution time of the NC program based on.

このように構成された情報処理装置によれば、軸移動の指令点および速度を含む第1パラメータに基づいて算出された各第1指令ブロックに対応した実行予測時間と、各第1指令ブロックを実行した際の実際の実行に要する実行時間との間の誤差に関する誤差データを利用して、NCプログラムの実行時間を正確に算出することができる。 According to the information processing device configured in this way, the predicted execution time corresponding to each first command block calculated based on the first parameter including the command point and speed of axis movement, and each first command block are calculated based on the first parameter including the command point and speed of axis movement. The execution time of the NC program can be accurately calculated by using error data regarding the error between the execution time and the actual execution time required for execution.

[3]上記算出部は、上記軸移動の速度の範囲毎に作成された上記誤差データに基づいて、上記NCプログラムの実行時間を算出する、[2]に記載の情報処理装置。 [3] The information processing device according to [2], wherein the calculation unit calculates the execution time of the NC program based on the error data created for each speed range of the axis movement.

このように構成された情報処理装置によれば、軸移動の速度は、軸移動の経路に対して影響を与える可能性があるため、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, since the speed of axis movement may affect the path of axis movement, it is possible to more accurately calculate the execution time of the NC program.

[4]上記第1パラメータは、上記軸移動の加速度をさらに含む、[2]または[3]に記載の情報処理装置。 [4] The information processing device according to [2] or [3], wherein the first parameter further includes acceleration of the axis movement.

このように構成された情報処理装置によれば、軸移動の加速度は、軸移動の実行時間に対して影響を与えるため、各第1指令ブロックの実行予測時間をより正確に算出することができる。 According to the information processing device configured in this way, the acceleration of the axis movement affects the execution time of the axis movement, so the predicted execution time of each first command block can be calculated more accurately. .

[5]上記工作機械から、上記工作機械で各上記第1指令ブロックを実行した際の実際の実行に要する実行時間を含む情報を受信する通信部と、上記情報に基づいて上記誤差データを更新する誤差データ更新部とをさらに備える、[2」から[4]のいずれかに記載の情報処理装置。 [5] A communication unit that receives information from the machine tool including the execution time required for actual execution when each of the first command blocks is executed by the machine tool, and updates the error data based on the information. The information processing device according to any one of [2] to [4], further comprising an error data updating unit that updates the error data.

このように構成された情報処理装置によれば、工作機械からの情報に基づき誤差データを更新することによって、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this manner, the execution time of the NC program can be calculated more accurately by updating the error data based on information from the machine tool.

[6]上記複数のブロックは、軸移動を指令し、上記第1ブロックおよび上記第2ブロックが含まれる複数の第1指令ブロックを含み、上記算出部は、上記軸移動の指令の種類毎に作成され、上記軸移動の指令点および速度を含む第2パラメータと、各上記第1指令ブロックを実行した際の実際の実行に要する実行時間との対応を示す実行時間データに基づいて、上記NCプログラムの実行時間を算出する、[1]に記載の情報処理装置。 [6] The plurality of blocks command axis movement, and include a plurality of first command blocks including the first block and the second block, and the calculation unit calculates the number of commands for each type of axis movement command. Based on the execution time data that is created and shows the correspondence between the second parameter including the command point and speed of the axis movement and the execution time required for actual execution when executing each of the first command blocks, the NC The information processing device according to [1], which calculates the execution time of a program.

このように構成された情報処理装置によれば、軸移動の指令点および速度を含む第2パラメータと、各第1指令ブロックを実行した際の実際の実行に要する実行時間との対応を示す実行時間データを利用して、NCプログラムの実行時間を正確に算出することができる。 According to the information processing device configured in this way, an execution method indicating the correspondence between the second parameter including the command point and speed of axis movement and the execution time required for actual execution when each first command block is executed. Using the time data, the execution time of the NC program can be accurately calculated.

[7]上記実行時間データにおいて、上記第2パラメータの各要素に対して規定される所定範囲と、上記第2パラメータの各要素が上記所定範囲を満たす場合の各上記第1指令ブロックを実行した際の実際の実行に要する実行時間の平均値とが対応付けられる、[6]に記載の情報処理装置。 [7] In the execution time data, each of the first command blocks is executed when each element of the second parameter satisfies the predetermined range defined for each element of the second parameter and the predetermined range. The information processing apparatus according to [6], wherein the information processing apparatus is associated with an average value of execution time required for actual execution.

このように構成された情報処理装置によれば、準備すべき実行時間データの量が少なくなるため、NCプログラムの実行時間をより簡易に算出することができる。 According to the information processing device configured in this manner, the amount of execution time data to be prepared is reduced, so that the execution time of the NC program can be calculated more easily.

[8]上記複数の第1指令ブロックは、上記算出部により実行時間が算出される特定ブロックと、上記特定ブロックの前後で実行される複数の前後ブロックとを含み、上記第2パラメータは、上記特定ブロックで規定される上記軸移動の指令点と、上記複数の前後ブロックで規定される上記軸移動の指令点とを含む、[6]または[7]に記載の情報処理装置。 [8] The plurality of first command blocks include a specific block whose execution time is calculated by the calculation unit, and a plurality of preceding and following blocks that are executed before and after the specific block, and the second parameter is The information processing device according to [6] or [7], including the command point for the axis movement defined by a specific block and the command point for the axis movement defined by the plurality of front and rear blocks.

このように構成された情報処理装置によれば、複数の前後ブロックで規定される軸移動の指令点は、軸移動の経路に対して影響を与える可能性があるため、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, the command points for axis movement specified by a plurality of front and rear blocks may affect the path of axis movement, so the execution time of the NC program is reduced. It can be calculated more accurately.

[9]上記第2パラメータは、ワークオフセット値および工具長の少なくともいずれか一方をさらに含む、[6]から[8]のいずれかに記載の情報処理装置。 [9] The information processing device according to any one of [6] to [8], wherein the second parameter further includes at least one of a work offset value and a tool length.

このように構成された情報処理装置によれば、ワークオフセット値および工具長は、軸移動の経路に対して影響を与える可能性があるため、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, the work offset value and tool length may affect the path of axis movement, so it is difficult to calculate the execution time of the NC program more accurately. can.

[10]上記工作機械から、上記工作機械で各上記第1指令ブロックを実行した際の実際の実行に要する実行時間を含む情報を受信する通信部と、上記情報に基づいて上記実行時間データを更新する実行時間データ更新部とをさらに備える、[6]から[9]のいずれかに記載の情報処理装置。 [10] A communication unit that receives, from the machine tool, information including the execution time required for actual execution when each of the first command blocks is executed by the machine tool, and a communication unit that receives the execution time data based on the information. The information processing device according to any one of [6] to [9], further comprising an execution time data update unit that updates.

このように構成された情報処理装置によれば、工作機械からの情報に基づき実行時間データを更新することによって、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, by updating the execution time data based on information from the machine tool, the execution time of the NC program can be calculated more accurately.

[11]上記複数のブロックは、軸移動を指令し、上記第1ブロックおよび上記第2ブロックが含まれる複数の第1指令ブロックを含み、上記算出部は、上記軸移動の指令の種類毎に作成され、上記軸移動の指令点および速度を含む第3パラメータを入力とし、各上記第1指令ブロックに対応した実行時間を出力とする学習済みの実行時間推定モデルに基づいて、上記NCプログラムの実行時間を算出する、[1]に記載の情報処理装置。 [11] The plurality of blocks command axis movement, and include a plurality of first command blocks including the first block and the second block, and the calculation unit calculates the number of commands for each type of axis movement command. The NC program is executed based on a learned execution time estimation model that has been created and inputs the third parameter including the command point and speed of the axis movement, and outputs the execution time corresponding to each of the first command blocks. The information processing device according to [1], which calculates execution time.

このように構成された情報処理装置によれば、軸移動の指令点および速度を含む第3パラメータを入力とし、各第1指令ブロックに対応した実行時間を出力とする学習済みの実行時間推定モデルを用いることによって、NCプログラムの実行時間を正確に算出することができる。 According to the information processing device configured in this way, the trained execution time estimation model takes as input the third parameter including the command point and speed of axis movement, and outputs the execution time corresponding to each first command block. By using , it is possible to accurately calculate the execution time of the NC program.

[12]上記複数の第1指令ブロックは、上記算出部により実行時間が算出される特定ブロックと、上記特定ブロックの前後で実行される複数の前後ブロックとを含み、上記第3パラメータは、上記特定ブロックで規定される上記軸移動の指令点と、上記複数の前後ブロックで規定される上記軸移動の指令点とを含む、[11]に記載の情報処理装置。 [12] The plurality of first command blocks include a specific block whose execution time is calculated by the calculation unit, and a plurality of preceding and following blocks that are executed before and after the specific block, and the third parameter is The information processing device according to [11], including a command point for the axis movement defined by a specific block and a command point for the axis movement defined by the plurality of front and rear blocks.

このように構成された情報処理装置によれば、複数の前後ブロックで規定される上記軸移動の指令点は、軸移動の経路に対して影響を与える可能性があるため、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, the command points for the axis movement specified by a plurality of front and back blocks may affect the path of the axis movement, so the execution time of the NC program is reduced. can be calculated more accurately.

[13]上記第3パラメータは、ワークオフセット値および工具長の少なくともいずれか一方をさらに含む、[11]または[12]に記載の情報処理装置。 [13] The information processing device according to [11] or [12], wherein the third parameter further includes at least one of a work offset value and a tool length.

このように構成された情報処理装置によれば、ワークオフセット値および工具長は、軸移動の経路に対して影響を与える可能性があるため、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this way, the work offset value and tool length may affect the path of axis movement, so it is difficult to calculate the execution time of the NC program more accurately. can.

[14]上記工作機械から、上記工作機械で各上記第1指令ブロックを実行した際の実際の実行に要する実行時間を含む情報を受信する通信部と、上記情報に基づいて、上記第3パラメータと、各上記第1指令ブロックに対応した実行時間との相関関係を再学習し、上記実行時間推定モデルを更新する機械学習部とをさらに備える、[11]から[13]のいずれかに記載の情報処理装置。 [14] A communication unit that receives, from the machine tool, information including the execution time required for actual execution when each of the first command blocks is executed by the machine tool, and a communication unit that receives the third parameter based on the information. and a machine learning unit that relearns the correlation with the execution time corresponding to each of the first command blocks and updates the execution time estimation model, according to any one of [11] to [13]. information processing equipment.

このように構成された情報処理装置によれば、工作機械からの情報に基づき実行時間推定モデルを更新することによって、NCプログラムの実行時間をより正確に算出することができる。 According to the information processing device configured in this manner, the execution time of the NC program can be calculated more accurately by updating the execution time estimation model based on information from the machine tool.

[15]複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置の制御プログラムであって、上記制御プログラムは、上記情報処理装置に、(i)上記複数のブロックの中の第1ブロックに対して工作機械で上記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)上記複数のブロックの中の第2ブロックに対して上記工作機械で上記第2ブロックを実行した際の実際の実行に要する第2実行時間との入力を受け付けるステップと、上記第1実行時間および上記第2実行時間を含む上記複数のブロックに対応した実行時間に基づいて、上記NCプログラムの実行時間を算出するステップとを実行させる、制御プログラム。 [15] A control program for an information processing device that calculates the execution time of an NC program including a plurality of blocks, the control program causing the information processing device to (i) execute a first block among the plurality of blocks; (ii) the first execution time required for the actual execution when the first block is executed by the machine tool; and (ii) the first execution time required for the actual execution when the first block is executed by the machine tool; a step of receiving an input of a second execution time required for actual execution when executing the NC; and a step of receiving an input of a second execution time required for actual execution when executing the A control program that executes a step of calculating the program execution time.

このように構成された制御プログラムによれば、情報処理装置において、NCプログラムの実行時間をより正確に算出することができる。 According to the control program configured in this way, the execution time of the NC program can be calculated more accurately in the information processing apparatus.

以上に説明したように、この発明に従えば、NCプログラムの実行時間を正確に算出することが可能な情報処理装置と、そのような情報処理装置の制御プログラムとを提供することができる。 As described above, according to the present invention, it is possible to provide an information processing device that can accurately calculate the execution time of an NC program, and a control program for such an information processing device.

情報処理装置と、その情報処理装置によりNCプログラムの実行時間が算出される工作機械との関係を模式的に示す図である。FIG. 2 is a diagram schematically showing the relationship between an information processing device and a machine tool whose execution time of an NC program is calculated by the information processing device. NCプログラムの一例を示す図である。FIG. 3 is a diagram showing an example of an NC program. この発明の実施の形態1における情報処理装置を示す機能ブロック図である。1 is a functional block diagram showing an information processing device in Embodiment 1 of the present invention. FIG. 図1中の工作機械を示す機能ブロック図である。2 is a functional block diagram showing the machine tool in FIG. 1. FIG. 誤差データのイメージを示す図である。FIG. 3 is a diagram showing an image of error data. 図1中の工作機械における軸移動の経路において、スムージング機能が発動された場合の変化を示す図である。FIG. 2 is a diagram showing changes when a smoothing function is activated in the path of axis movement in the machine tool in FIG. 1. FIG. この発明の実施の形態2における情報処理装置を示す機能ブロック図である。FIG. 2 is a functional block diagram showing an information processing device according to a second embodiment of the present invention. 図1中の工作機械における軸移動の経路を示す図である。2 is a diagram showing a path of axis movement in the machine tool in FIG. 1. FIG. 実行時間の算出に用いられる第2パラメータおよび第3パラメータを示す図である。It is a figure which shows the 2nd parameter and 3rd parameter used for calculation of execution time. 実行時間データのイメージを示す図である。FIG. 3 is a diagram showing an image of execution time data. この発明の実施の形態3における情報処理装置を示す機能ブロック図である。FIG. 3 is a functional block diagram showing an information processing device in Embodiment 3 of the present invention. 学習済み時間推定モデルを学習させるための処理を示す概略図である。FIG. 2 is a schematic diagram showing a process for learning a trained time estimation model.

この発明の実施の形態について、図面を参照して説明する。なお、以下で参照する図面では、同一またはそれに相当する部材には、同じ番号が付されている。 Embodiments of the invention will be described with reference to the drawings. In addition, in the drawings referred to below, the same numbers are attached to the same or corresponding members.

(実施の形態1)
図1は、情報処理装置と、その情報処理装置によりNCプログラムの実行時間が算出される工作機械との関係を模式的に示す図である。
(Embodiment 1)
FIG. 1 is a diagram schematically showing the relationship between an information processing device and a machine tool for which the execution time of an NC program is calculated by the information processing device.

図1を参照して、工作機械200は、コンピュータによる数値制御によって、ワーク加工のための各種動作が自動化されたNC(Numerical Control)工作機械である。 Referring to FIG. 1, machine tool 200 is an NC (Numerical Control) machine tool in which various operations for machining a workpiece are automated through numerical control by a computer.

工作機械200は、ワークの除去加工(SM(Subtractive Manufacturing))を行なう旋盤またはマシニングセンタである。工作機械200は、旋削機能と、ミーリング機能とを有する複合加工機であってもよいし、研削機械であってもよい。工作機械200は、ワークの除去加工と、ワークの付加加工(AM(Additive Manufacturing))とが可能なAM/SMハイブリッド加工機であってもよい。 The machine tool 200 is a lathe or a machining center that performs subtractive manufacturing (SM) on a workpiece. The machine tool 200 may be a multi-tasking machine having a turning function and a milling function, or may be a grinding machine. The machine tool 200 may be an AM/SM hybrid processing machine capable of removing a workpiece and performing additive manufacturing (AM) on the workpiece.

工作機械200は、操作盤240を有する。操作盤240は、加工に関する各種情報を表示するための表示部241と、工作機械200に対する各種操作を受け付ける操作部242とを有する。 Machine tool 200 has an operation panel 240. The operation panel 240 includes a display section 241 for displaying various information regarding machining, and an operation section 242 for accepting various operations on the machine tool 200.

情報処理装置100は、工作機械200においてNCプログラムの実行に要する時間(実行時間)を算出する機能を有する。より特定的には、情報処理装置100は、コンピュータ支援設計(CAD)から取得されるCADデータより、工作機械200で使用されるNCプログラムを作成するプログラム作成機能と、かかるプログラム作成機能によるNCプログラムの作成に続いて、NCプログラムの実行時間を算出する実行時間算出機能とを有する。 The information processing device 100 has a function of calculating the time required to execute an NC program (execution time) in the machine tool 200. More specifically, the information processing device 100 has a program creation function that creates an NC program to be used in the machine tool 200 from CAD data obtained from computer-aided design (CAD), and a program creation function that creates an NC program using the program creation function. It has an execution time calculation function that calculates the execution time of the NC program following the creation of the NC program.

情報処理装置100により工作機械200におけるNCプログラムの実行時間を算出する流れについて簡単に説明する。 The flow of calculating the execution time of the NC program in the machine tool 200 using the information processing device 100 will be briefly described.

ステップS1において、工作機械200は、各種のNCプログラムに従って動作するとともに、NCプログラムに含まれる各ブロックを実行した際の実際の実行に要する実行時間(以下、「実行実時間」ともいう)を計測する。工作機械200は、少なくとも実行実時間を含む情報を情報処理装置100に出力する。 In step S1, the machine tool 200 operates according to various NC programs, and measures the execution time required for actual execution of each block included in the NC program (hereinafter also referred to as "actual execution time"). do. The machine tool 200 outputs information including at least the actual execution time to the information processing device 100.

ステップS2において、情報処理装置100は、工作機械200より入力された情報を用いて、参照データDaを作成または更新する。参照データDaは、誤差データDa1(実施の形態1)、実行時間データDa2(後出の実施の形態2)、または、実行時間推定モデルDa3(後出の実施の形態3)に対応している。参照データDaは、典型的には、情報処理装置100の記憶部150内に格納される。 In step S2, the information processing device 100 uses the information input from the machine tool 200 to create or update the reference data Da. The reference data Da corresponds to error data Da1 (Embodiment 1), execution time data Da2 (Embodiment 2 described later), or execution time estimation model Da3 (Embodiment 3 described later). . Reference data Da is typically stored in storage unit 150 of information processing device 100.

ステップS3において、情報処理装置100は、参照データDaに基づいてNCプログラムの実行時間を算出する。より特定的には、情報処理装置100は、プログラム作成機能により作成されたNCプログラムの実行時間を、参照データDaに基づいて算出する。算出された実行時間は、典型的には、情報処理装置100の表示部130に表示される。 In step S3, the information processing device 100 calculates the execution time of the NC program based on the reference data Da. More specifically, the information processing device 100 calculates the execution time of the NC program created by the program creation function based on the reference data Da. The calculated execution time is typically displayed on the display unit 130 of the information processing device 100.

なお、参照データDaが誤差データDa1である場合、ステップS2において、情報処理装置100は、工作機械200より入力された情報に加えて、ステップS3の過程で算出される実行予測時間を用いて、誤差データDa1を作成または更新する。この点については、後で詳細に説明する。 Note that when the reference data Da is the error data Da1, in step S2, the information processing device 100 uses the predicted execution time calculated in the process of step S3 in addition to the information input from the machine tool 200. Create or update error data Da1. This point will be explained in detail later.

上記のステップS1およびステップS2は、情報処理装置100のメーカーが、各種のNCプログラムをランニングプログラムとして作成し、かかるNCプログラムを用いて工作機械200を動作させることによって実行される。ランニングプログラムから作成された参照データDaは、販売される前の情報処理装置100の記憶部150内に初期データとして格納される。参照データDaは、個別の工作機械200に対応して作成されてもよいし、同種の工作機械200に対応して(工作機械200の機種毎に)作成されてもよい。 The above steps S1 and S2 are executed by the manufacturer of the information processing device 100 creating various NC programs as running programs and operating the machine tool 200 using the NC programs. The reference data Da created from the running program is stored as initial data in the storage unit 150 of the information processing device 100 before being sold. The reference data Da may be created corresponding to each individual machine tool 200, or may be created corresponding to the same type of machine tool 200 (for each model of the machine tool 200).

さらに上記のステップS1およびステップS2は、ユーザが各種のNCプログラムを用いて工作機械200を動作させる場合に自動的に実行される。これにより、情報処理装置100の記憶部150内に格納された参照データDaが更新される。 Furthermore, the above steps S1 and S2 are automatically executed when the user operates the machine tool 200 using various NC programs. As a result, the reference data Da stored in the storage unit 150 of the information processing device 100 is updated.

図2は、NCプログラムの一例を示す図である。図2を参照して、情報処理装置100により実行時間が算出されるNCプログラムについて説明する。 FIG. 2 is a diagram showing an example of an NC program. Referring to FIG. 2, an NC program whose execution time is calculated by the information processing apparatus 100 will be described.

NCプログラムは、複数のブロックBLを含む。各ブロックBLは、NCプログラムの行の始まりから終わりまでの記載に対応し、工作機械200に対して各種の指令を行なっている。 The NC program includes multiple blocks BL. Each block BL corresponds to the description from the beginning to the end of the line of the NC program, and issues various commands to the machine tool 200.

複数のブロックBLは、複数の第1指令ブロックBLaを含む。第1指令ブロックBLaは、工作機械200における工具主軸、ワーク主軸、刃物台またはテーブル等の移動体の軸移動を制御対象としており、たとえば、直線移動または円弧補間を指令する。第1指令ブロックBLaは、G01(直線切削送り)、G02(曲線切削送り/時計回り)およびG03(曲線切削送り/反時計回り)等のGコードを用いて記載されている。図2中では、第1指令ブロックBLaが、軸移動の指令点(X軸、Y軸およびZ軸の座標値)と、速度(F値)とから構成されるパラメータを含む。 The multiple blocks BL include multiple first instruction blocks BLa. The first command block BLa controls the axis movement of a movable body such as a tool spindle, a workpiece spindle, a tool rest, or a table in the machine tool 200, and instructs, for example, linear movement or circular interpolation. The first command block BLa is written using G codes such as G01 (linear cutting feed), G02 (curved cutting feed/clockwise), and G03 (curved cutting feed/counterclockwise). In FIG. 2, the first command block BLa includes parameters including command points for axis movement (coordinate values of the X-axis, Y-axis, and Z-axis) and speed (F value).

複数のブロックBLは、複数の第2指令ブロックBLbをさらに含む。第2指令ブロックBLbは、工作機械200における主軸の回転、自動工具交換装置(ATC)による工具交換またはクーラントのON/OFF等の入出力を制御対象としている。第2指令ブロックBLbは、MコードまたはTコードを用いて記載されている。 The multiple blocks BL further include multiple second command blocks BLb. The second command block BLb controls input/output such as rotation of the spindle in the machine tool 200, tool change by an automatic tool changer (ATC), and coolant ON/OFF. The second command block BLb is written using an M code or a T code.

続いて、本実施の形態における情報処理装置100の構成について説明する。図3は、この発明の実施の形態1における情報処理装置を示す機能ブロック図である。図4は、図1中の工作機械を示す機能ブロック図である。図5は、誤差データのイメージを示す図である。 Next, the configuration of information processing device 100 in this embodiment will be described. FIG. 3 is a functional block diagram showing an information processing apparatus in Embodiment 1 of the present invention. FIG. 4 is a functional block diagram showing the machine tool in FIG. 1. FIG. 5 is a diagram showing an image of error data.

図1から図5を参照して、情報処理装置100の各構成要素は、CPU(Central Processing Unit)および各種コンピュータプロセッサなどの演算器、メモリおよびストレージなどの記憶装置、ならびに、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアとによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、または、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。 Referring to FIGS. 1 to 5, each component of information processing device 100 includes arithmetic units such as a CPU (Central Processing Unit) and various computer processors, storage devices such as memory and storage, and wired wires that connect them. Alternatively, it is realized by hardware including a wireless communication line and software stored in a storage device and supplying processing instructions to an arithmetic unit. A computer program may be configured by a device driver, an operating system, various application programs located in an upper layer thereof, or a library that provides common functions to these programs.

図3に示されるように、情報処理装置100は、プログラム作成部110を有する。プログラム作成部110は、工作機械200で使用されるNCプログラムPを作成する。 As shown in FIG. 3, the information processing device 100 includes a program creation section 110. The program creation unit 110 creates an NC program P used in the machine tool 200.

プログラム作成部110は、メインプロセッサ部111と、ポストプロセッサ部112とを有する。メインプロセッサ部111は、CAD装置より取得したCADデータに基づいて、工具位置データ(Cutter Location Data:以下、「CLデータ」という)を生成する。ポストプロセッサ部112は、メインプロセッサ部111で生成されたCLデータに基づいて、NCプログラムPを生成する。ポストプロセッサ部112は、生成したNCプログラムPを、後出の送信部161およびプログラム解析部121に出力する。 The program creation section 110 includes a main processor section 111 and a post-processor section 112. The main processor unit 111 generates cutter location data (hereinafter referred to as "CL data") based on CAD data obtained from a CAD device. The post-processor unit 112 generates an NC program P based on the CL data generated by the main processor unit 111. The post-processor unit 112 outputs the generated NC program P to the transmitting unit 161 and program analyzing unit 121, which will be described later.

情報処理装置100は、通信部160をさらに有する。通信部160は、情報処理装置100および工作機械200の間で通信可能に構成されている。通信部160における通信手段は、無線であってもよいし、有線であってもよい。一例として、工作機械200および情報処理装置100の通信規格には、EtherNET(登録商標)が採用される。 Information processing device 100 further includes communication section 160. The communication unit 160 is configured to be able to communicate between the information processing device 100 and the machine tool 200. The communication means in the communication unit 160 may be wireless or wired. As an example, EtherNET (registered trademark) is adopted as the communication standard for the machine tool 200 and the information processing device 100.

通信部160は、送信部161と、受信部162とを有する。送信部161は、ポストプロセッサ部112により生成されたNCプログラムPを工作機械200に送信する。受信部162は、後出の工作機械200のモニタリング部246により計測された実行実時間を含む情報Inf1を受信する。 The communication section 160 includes a transmitting section 161 and a receiving section 162. The transmitting unit 161 transmits the NC program P generated by the post-processor unit 112 to the machine tool 200. The receiving unit 162 receives information Inf1 including the actual execution time measured by the monitoring unit 246 of the machine tool 200, which will be described later.

なお、本実施の形態における情報処理装置100は、上記のプログラム作成機能を備えない構成であってもよい。この場合に、情報処理装置100および工作機械200は、CAM装置で作成されたNCプログラムを外部から取得してもよいし、手動または対話方式で作成されたNCプログラムを外部から取得してもよい。本発明が適用されるNCプログラムの作成方法は、特に限定されない。 Note that the information processing device 100 in this embodiment may have a configuration that does not include the above program creation function. In this case, the information processing device 100 and the machine tool 200 may obtain an NC program created by a CAM device from the outside, or may obtain an NC program created manually or interactively from the outside. . The method of creating an NC program to which the present invention is applied is not particularly limited.

図4に示されるように、工作機械200は、数値制御装置210と、機械制御装置220と、各種の機械要素230とをさらに有する。 As shown in FIG. 4, the machine tool 200 further includes a numerical control device 210, a machine control device 220, and various mechanical elements 230.

数値制御装置210は、工作機械200の動作を数値制御する。数値制御装置210は、NCプログラムを解釈するNCインタプリタ211と、工作機械200の制御指令を機械制御装置220に出力する指令出力部212とを有する。機械制御装置220は、指令出力部212からの制御指令に基づいて、機械要素230を制御する。機械要素230としては、たとえば、工具またはワークを回転させるための回転用モータ、または、工具主軸、ワーク主軸、刃物台もしくはテーブル等の移動体を移動させるための送り用モータが挙げられる。 Numerical control device 210 numerically controls the operation of machine tool 200. The numerical control device 210 includes an NC interpreter 211 that interprets an NC program, and a command output unit 212 that outputs control commands for the machine tool 200 to the machine control device 220. Machine control device 220 controls mechanical element 230 based on control commands from command output section 212. Examples of the mechanical element 230 include a rotation motor for rotating a tool or a workpiece, or a feed motor for moving a movable body such as a tool spindle, a workpiece spindle, a tool rest, or a table.

操作盤240は、モニタリング部246を有する。モニタリング部246は、指令出力部212と通信して、NCプログラムPの進行をモニタリングする。モニタリング部246は、NCプログラムPの進行を表示部241に表示する。モニタリング部246は、NCプログラムPの進行をモニタリングする間、NCプログラムPにおける各第1指令ブロックBLaを実行した際の実際の実行に要する時間(実行実時間)を計測する。工作機械200は、NCプログラムPと、上記の各第1指令ブロックBLaの実行実時間とを対応付けた情報Inf1を、情報処理装置100に送信する。 The operation panel 240 has a monitoring section 246. The monitoring unit 246 communicates with the command output unit 212 and monitors the progress of the NC program P. The monitoring unit 246 displays the progress of the NC program P on the display unit 241. While monitoring the progress of the NC program P, the monitoring unit 246 measures the time required for actual execution of each first command block BLa in the NC program P (actual execution time). The machine tool 200 transmits information Inf1 that associates the NC program P with the actual execution time of each first command block BLa described above to the information processing device 100.

なお、各第1指令ブロックBLaの実行実時間の計測手段は、特に限定されない。たとえば、NCプログラムのブロック毎に特定の指令を書き込むことによって、ブロック間の時間を計測する機能が利用されてもよい。 Note that the means for measuring the actual execution time of each first command block BLa is not particularly limited. For example, a function may be used to measure the time between blocks by writing a specific command for each block of the NC program.

図3に示されるように、情報処理装置100は、算出部120と、表示部130と、記憶部150とをさらに有する。算出部120は、ポストプロセッサ部112より入力されたNCプログラムPの実行時間を算出する。表示部130は、液晶ディスプレイ、有機ELディスプレイ、または、その他の表示機器から構成されている。表示部130は、算出部120により算出されたNCプログラムPの実行時間を表示する。 As shown in FIG. 3, the information processing device 100 further includes a calculation section 120, a display section 130, and a storage section 150. The calculation unit 120 calculates the execution time of the NC program P input from the post-processor unit 112. The display unit 130 is composed of a liquid crystal display, an organic EL display, or other display device. The display unit 130 displays the execution time of the NC program P calculated by the calculation unit 120.

記憶部150は、後出の誤差データDa1およびタイムテーブルTを記憶している。記憶部150は、情報処理装置100の制御プログラムをさらに記憶している。制御プログラムは、情報処理装置100にNCプログラムPの実行時間を算出させるためのプログラムである。 The storage unit 150 stores error data Da1 and timetable T, which will be described later. The storage unit 150 further stores a control program for the information processing device 100. The control program is a program for causing the information processing device 100 to calculate the execution time of the NC program P.

算出部120は、プログラム解析部121と、実行時間予測部122と、実行時間補正部123と、実行時間算出部124と、実行時間積算部126とを有する。 The calculation unit 120 includes a program analysis unit 121 , an execution time prediction unit 122 , an execution time correction unit 123 , an execution time calculation unit 124 , and an execution time integration unit 126 .

プログラム解析部121は、ポストプロセッサ部112より入力されたNCプログラムPを解析する。プログラム解析部121は、NCプログラムPに含まれる複数のブロックBLのうちの第1指令ブロックBLaを実行時間予測部122に出力し、NCプログラムPに含まれる複数のブロックBLのうちの第2指令ブロックBLbを実行時間算出部124に出力する。 The program analysis section 121 analyzes the NC program P input from the post-processor section 112. The program analysis unit 121 outputs the first command block BLa of the plurality of blocks BL included in the NC program P to the execution time prediction unit 122, and outputs the first command block BLa of the plurality of blocks BL included in the NC program P to the execution time prediction unit 122 The block BLb is output to the execution time calculation unit 124.

実行時間予測部122は、NCプログラムPに含まれる複数のブロックBLのうちの各第1指令ブロックBLaの実行時間(以下、「実行予測時間」ともいう)を算出する。第1指令ブロックBLaは、軸移動を指令するプログラムであって、Gコードを用いて記載されている。実行時間予測部122は、軸移動の指令点と、速度(送り速度)とを含む第1パラメータに基づいて、各第1指令ブロックBLaの実行予測時間を算出する。軸移動の指令点は、移動前後の指令点(実行時間を算出する第1指令ブロックBLaの1つ手前の第1指令ブロックBLaに規定される指令点、および、実行時間を算出する第1指令ブロックBLaに規定される指令点)に対応している。第1パラメータは、軸移動の加速度をさらに含んでもよい。実行時間予測部122は、算出した各第1指令ブロックBLaの実行予測時間を、実行時間補正部123と、後出の誤差データ更新部140とに出力する。 The execution time prediction unit 122 calculates the execution time (hereinafter also referred to as "predicted execution time") of each first command block BLa among the plurality of blocks BL included in the NC program P. The first command block BLa is a program for commanding axis movement, and is written using G code. The execution time prediction unit 122 calculates the predicted execution time of each first command block BLa based on a first parameter including a command point of axis movement and a speed (feed rate). The command points for axis movement are the command points before and after the movement (the command points specified in the first command block BLa that is one block before the first command block BLa for calculating the execution time, and the first command for calculating the execution time). (command point defined in block BLa). The first parameter may further include acceleration of the axis movement. The execution time prediction unit 122 outputs the calculated predicted execution time of each first instruction block BLa to the execution time correction unit 123 and the error data update unit 140, which will be described later.

実行時間補正部123は、記憶部150に記憶された誤差データDa1に基づいて、実行時間予測部122で算出された実行予測時間を補正する。 The execution time correction unit 123 corrects the predicted execution time calculated by the execution time prediction unit 122 based on the error data Da1 stored in the storage unit 150.

図5に示されるように、誤差データDa1は、工作機械200におけるモニタリング部246で計測された各第1指令ブロックBLaの実行実時間と、実行時間予測部122で算出された各第1指令ブロックBLaの実行予測時間との間の誤差(((実行予測時間/実行実時間)-1)×100)%に関する。 As shown in FIG. 5, the error data Da1 includes the actual execution time of each first command block BLa measured by the monitoring unit 246 in the machine tool 200 and each first command block calculated by the execution time prediction unit 122. It relates to the error (((predicted execution time/actual execution time)-1)×100)% between the predicted execution time of BLa.

誤差データDa1は、軸移動の速度の範囲毎に作成されている。一例として、誤差データDa1は、0を越え600mm/min以下の範囲、600mm/minを越え1200mm/min以下の範囲、および、1200mm/minを越え2400mm/min以下の速度範囲毎に作成されている。 The error data Da1 is created for each axis movement speed range. As an example, error data Da1 is created for each speed range of more than 0 and less than 600 mm/min, more than 600 mm/min and less than 1200 mm/min, and more than 1200 mm/min and less than 2400 mm/min. .

誤差データDa1では、軸移動の速度の各範囲において、第1指令ブロックBLaの実行実時間と、第1指令ブロックBLaの実行予測時間との間の誤差の平均値が算出されている。ここで算出された誤差の平均値は、工作機械200がNCプログラムPに含まれる各種の第1指令ブロックBLaに従って動作した場合に、実行時間予測部122で算出される実行予測時間と、実際の実行に要する実行実時間との間で生じる差の傾向を表わしている。 In the error data Da1, the average value of the error between the actual execution time of the first command block BLa and the predicted execution time of the first command block BLa is calculated in each range of the speed of the axis movement. The average value of the errors calculated here is the predicted execution time calculated by the execution time prediction unit 122 when the machine tool 200 operates according to the various first command blocks BLa included in the NC program P, and the actual It shows the tendency of the difference between the actual execution time required for execution and the actual execution time.

実行時間補正部123は、誤差データDa1における誤差の平均値を用いて、実行時間予測部122で算出された実行予測時間を補正する。たとえば、誤差データDa1に示される誤差の平均値が-5%である場合、第1指令ブロックBLaの実行予測時間は、実行予測時間/0.95の計算式により補正される。 The execution time correction unit 123 corrects the predicted execution time calculated by the execution time prediction unit 122 using the average value of the errors in the error data Da1. For example, when the average value of the errors indicated by the error data Da1 is -5%, the predicted execution time of the first command block BLa is corrected using the calculation formula: predicted execution time/0.95.

なお、誤差データDa1は、さらに、G01(直線切削送り)、G02(曲線切削送り/時計回り)およびG03(曲線切削送り/反時計回り)等のGコードの種類毎に作成されてもよい。軸移動の速度および指令の種類は、実行時間予測部122で算出される実行予測時間と、実際の実行に要する実行実時間との間で生じる差の傾向に影響を与える可能性があるため、各第1指令ブロックBLaの実行予測時間の補正をより正確に実行することができる。 Note that the error data Da1 may be further created for each type of G code, such as G01 (linear cutting feed), G02 (curved cutting feed/clockwise), and G03 (curved cutting feed/counterclockwise). The speed of axis movement and the type of command may affect the tendency of the difference between the predicted execution time calculated by the execution time prediction unit 122 and the actual execution time required for actual execution. The predicted execution time of each first instruction block BLa can be corrected more accurately.

図3に示されるように、実行時間補正部123は、補正した各第1指令ブロックBLaの実行時間を実行時間積算部126に出力する。 As shown in FIG. 3, the execution time correction unit 123 outputs the corrected execution time of each first command block BLa to the execution time integration unit 126.

実行時間算出部124は、NCプログラムPに含まれる複数のブロックBLのうちの各第2指令ブロックBLbの実行時間を算出する。第2指令ブロックBLbは、MコードまたはTコードを用いて記載されるNCプログラムである。 The execution time calculation unit 124 calculates the execution time of each second command block BLb among the plurality of blocks BL included in the NC program P. The second command block BLb is an NC program written using M code or T code.

実行時間算出部124は、記憶部150に記憶されたタイムテーブルTに基づいて、各第2指令ブロックBLbの実行時間を算出する。より具体的には、実行時間算出部124は、記憶部150からタイムテーブルTを読み出し、タイムテーブルTに各第2指令ブロックBLbに規定される指令を照らし合わせることによって、各第2指令ブロックBLbの実行時間の出力を得る。 The execution time calculation unit 124 calculates the execution time of each second command block BLb based on the time table T stored in the storage unit 150. More specifically, the execution time calculation unit 124 reads the timetable T from the storage unit 150, and compares the timetable T with the commands defined in each second command block BLb. Get the output of the execution time.

タイムテーブルTは、第2指令ブロックBLbで規定される指令毎に第2指令ブロックBLbの実行時間(たとえば、M06で指令される工具交換の実行に要する時間)を示している。NCプログラムがMコードおよびTコードを用いて記載される第2指令ブロックBLbは、一定の時間で実行される。このため、情報処理装置100のメーカーが、各種の指令を規定した第2指令ブロックBLbをランニングプログラムとして作成し、そのランニングプログラムを用いて工作機械200を実行させることによって、各第2指令ブロックBLbの実行時間を計測する。かかる計測に基づいて作成されたタイムテーブルTが、予め記憶部150に格納されている。 The time table T indicates the execution time of the second command block BLb for each command specified by the second command block BLb (for example, the time required to execute the tool change commanded in M06). The second command block BLb, in which the NC program is written using M code and T code, is executed at a constant time. Therefore, the manufacturer of the information processing device 100 creates a second command block BLb that defines various commands as a running program, and executes the machine tool 200 using the running program, so that each second command block BLb Measure the execution time. A timetable T created based on such measurements is stored in the storage unit 150 in advance.

実行時間算出部124は、算出した各第2指令ブロックBLbの実行時間を実行時間積算部126に出力する。 The execution time calculation unit 124 outputs the calculated execution time of each second command block BLb to the execution time integration unit 126.

実行時間積算部126は、実行時間補正部123より入力された各第1指令ブロックBLaの実行時間と、実行時間算出部124より入力された各第2指令ブロックBLbの実行時間とを積算することによって、NCプログラムPの実行時間を算出する。算出されるNCプログラムPの実行時間は、ワーク加工の一工程であってもよいし、ワーク加工の全工程であってもよい。実行時間積算部126は、算出したNCプログラムの実行時間を表示部130に出力する。 The execution time integration unit 126 integrates the execution time of each first command block BLa input from the execution time correction unit 123 and the execution time of each second command block BLb input from the execution time calculation unit 124. The execution time of the NC program P is calculated as follows. The calculated execution time of the NC program P may be one process of workpiece machining, or may be the entire process of workpiece machining. The execution time accumulating unit 126 outputs the calculated execution time of the NC program to the display unit 130.

情報処理装置100は、誤差データ更新部140をさらに有する。誤差データ更新部140は、工作機械200におけるモニタリング部246で計測された各第1指令ブロックBLaの実行実時間と、実行時間予測部122で算出された各第1指令ブロックBLaの実行予測時間とが新たに入力されることによって、誤差の平均値を更新する。 The information processing device 100 further includes an error data updating section 140. The error data updating unit 140 updates the actual execution time of each first command block BLa measured by the monitoring unit 246 in the machine tool 200 and the predicted execution time of each first command block BLa calculated by the execution time prediction unit 122. The average error value is updated by the new input.

初期データとしての誤差データDa1を作成する場面においては、ランニングプログラムを用いて工作機械200を実行させることにより、ランニングプログラムに含まれる各第2指令ブロックBLbの実行実時間のデータが収集され、かかるランニングプログラムを実行時間予測部122に入力することにより、ランニングプログラムに含まれる各第1指令ブロックBLaの実行予測時間のデータが収集される。誤差データ更新部140は、これらデータに基づいて、誤差データDa1を作成する。 In the scene of creating error data Da1 as initial data, by executing the machine tool 200 using a running program, data on the actual execution time of each second command block BLb included in the running program is collected. By inputting the running program to the execution time prediction unit 122, data on the predicted execution time of each first command block BLa included in the running program is collected. The error data update unit 140 creates error data Da1 based on these data.

なお、誤差データDa1およびタイムテーブルTを記憶する記憶部150の機能は、サーバー等の外部機器により実現されてもよい。また、誤差データ更新部140の機能は、情報処理装置100とは別のCPUにより実行されてもよい。 Note that the function of the storage unit 150 that stores the error data Da1 and the time table T may be realized by an external device such as a server. Further, the function of the error data updating unit 140 may be executed by a CPU different from the information processing device 100.

図6は、図1中の工作機械における軸移動の経路において、スムージング機能が発動された場合の変化を示す図である。 FIG. 6 is a diagram showing changes in the path of axis movement in the machine tool in FIG. 1 when the smoothing function is activated.

図6を参照して、指令点は、プログラム作成部110において算出される軸移動の座標値であり、この座標値は、NCプログラムの第1指令ブロックBLaに記載されている。複数の第1指令ブロックBLaは、指令点0→指令点1→指令点2→指令点3を順に移動する軸移動を指令している。この場合に、指令点間に適切な補間点を設けることによって、滑らかな軸移動を実現するスムージング機能が工作機械200に備わっている。スムージング機能は、NCプログラムに特定のGコードを記載することにより発動可能である。スムージング機能を発動させることによって、ワークの表面性状が改善され、特に自由曲線などを円滑にすることができる。 Referring to FIG. 6, the command point is the coordinate value of the axis movement calculated by the program creation unit 110, and this coordinate value is written in the first command block BLa of the NC program. The plurality of first command blocks BLa command axis movement to move in order from command point 0 → command point 1 → command point 2 → command point 3. In this case, the machine tool 200 is equipped with a smoothing function that realizes smooth axis movement by providing appropriate interpolation points between command points. The smoothing function can be activated by writing a specific G code in the NC program. By activating the smoothing function, the surface quality of the workpiece can be improved, and free curves in particular can be made smoother.

一方、スムージング機能は、軸移動の経路に影響を与えるため、NCプログラムの実行時間にも影響を与える。しかしながら、スムージング機能は、各NCメーカーが独自に作成した非公開のアルゴリズムによるため、スムージング機能により設定された補間点を加味して、NCプログラムの実行時間を算出することは困難である。 On the other hand, since the smoothing function affects the axis movement path, it also affects the execution time of the NC program. However, since the smoothing function is based on a non-disclosed algorithm uniquely created by each NC manufacturer, it is difficult to calculate the execution time of the NC program by taking into account the interpolation points set by the smoothing function.

これに対して、本実施の形態における情報処理装置100においては、軸移動の指令点と、速度とを含む第1パラメータに基づいて算出された各第1指令ブロックBLaの実行予測時間を、各第1指令ブロックBLaの実行実時間を含む誤差データDa1に基づいて補正している。このように算出された第1指令ブロックBLaの実行時間は、軸移動の実際の経路を加味しているため、NCプログラムPの実行時間を正確に算出することができる。 On the other hand, in the information processing device 100 according to the present embodiment, the predicted execution time of each first command block BLa calculated based on the first parameter including the command point of axis movement and the speed is The correction is made based on error data Da1 including the actual execution time of the first command block BLa. Since the execution time of the first command block BLa calculated in this way takes into account the actual path of axis movement, the execution time of the NC program P can be calculated accurately.

以上に説明した、この発明の実施の形態1における情報処理装置100の構成をまとめると、本実施の形態における情報処理装置100は、複数のブロックBLを含むNCプログラムPの実行時間を算出する。情報処理装置100は、複数のブロックBLの中の第1ブロック(第1指令ブロックBLaに対応)に対して工作機械200で第1ブロックを実行した際の実際の実行に要する第1実行時間(実行実時間)と、複数のブロックBLの中の第2ブロック(第1ブロックとは別の第1指令ブロックBLaに対応)に対して工作機械200で第2ブロックを実行した際の実際の実行に要する第2実行時間(実行実時間)とを含む複数のブロックBLに対応した実行時間に基づいて、NCプログラムPの実行時間を算出する算出部120を備える。 To summarize the configuration of the information processing apparatus 100 according to the first embodiment of the present invention described above, the information processing apparatus 100 according to the present embodiment calculates the execution time of the NC program P including a plurality of blocks BL. The information processing device 100 calculates the first execution time (corresponding to the first command block BLa) required for actual execution when the machine tool 200 executes the first block (corresponding to the first command block BLa) among the plurality of blocks BL. actual execution time) and the actual execution when the machine tool 200 executes the second block of the plurality of blocks BL (corresponding to the first command block BLa, which is different from the first block). The calculation unit 120 calculates the execution time of the NC program P based on the execution time corresponding to the plurality of blocks BL including the second execution time (actual execution time) required for the execution.

複数のブロックBLは、軸移動を指令し、第1ブロックおよび第2ブロックが含まれる複数の第1指令ブロックBLaを含む。算出部120は、軸移動の指令点および速度を含む第1パラメータに基づいて算出された各第1指令ブロックBLaに対応した実行予測時間と、各第1指令ブロックBLaを実行した際の実際の実行に要する実行時間(実行実時間)との間の誤差に関する誤差データDa1に基づいて、NCプログラムPの実行時間を算出する。 The plurality of blocks BL command axis movement and include a plurality of first command blocks BLa including a first block and a second block. The calculation unit 120 calculates the predicted execution time corresponding to each first command block BLa calculated based on the first parameter including the command point and speed of axis movement, and the actual execution time when each first command block BLa is executed. The execution time of the NC program P is calculated based on the error data Da1 regarding the error between the execution time required for execution (actual execution time).

また、本実施の形態における情報処理装置100の制御プログラムは、複数のブロックBLを含むNCプログラムPの実行時間を算出する。制御プログラムは、情報処理装置100に、(i)複数のブロックBLの中の第1ブロック(第1指令ブロックBLaに対応)に対して工作機械200で第1ブロックを実行した際の実際の実行に要する第1実行時間(実行実時間)と、(ii)複数のブロックBLの中の第2ブロック(第1ブロックとは別の第1指令ブロックBLaに対応)に対して工作機械200で第2ブロックを実行した際の実際の実行に要する第2実行時間(実行実時間)との入力を受け付けるステップと、第1実行時間および第2実行時間を含む複数のブロックBLに対応した実行時間に基づいて、NCプログラムの実行時間を算出するステップとを実行させる。 Further, the control program of the information processing apparatus 100 in this embodiment calculates the execution time of the NC program P including a plurality of blocks BL. The control program is configured to provide the information processing device 100 with information on (i) actual execution when the machine tool 200 executes the first block (corresponding to the first command block BLa) among the plurality of blocks BL; (ii) the first execution time (actual execution time) required for a step of receiving an input of a second execution time (actual execution time) required for actual execution when two blocks are executed; and a step of receiving an input of a second execution time (actual execution time) required for actual execution when two blocks are executed; Based on this, the step of calculating the execution time of the NC program is executed.

このように構成された、この発明の実施の形態1における情報処理装置100およびその制御プログラムによれば、NCプログラムPの実行時間の算出において、工作機械200でNCプログラムPの各第1指令ブロックBLaを実行した際の実際の実行に要する実行時間(実行実時間)を加味するため、NCプログラムPの実行時間を正確に算出することができる。 According to the information processing device 100 and its control program in Embodiment 1 of the present invention configured as described above, in calculating the execution time of the NC program P, the machine tool 200 calculates each first command block of the NC program P. Since the execution time (actual execution time) required for actual execution when executing BLa is taken into consideration, the execution time of the NC program P can be calculated accurately.

(実施の形態2)
図7は、この発明の実施の形態2における情報処理装置を示す機能ブロック図である。図8は、図1中の工作機械における軸移動の経路を示す図である。図9は、実行時間の算出に用いられる第2パラメータおよび第3パラメータを示す図である。図10は、実行時間データのイメージを示す図である。
(Embodiment 2)
FIG. 7 is a functional block diagram showing an information processing apparatus according to Embodiment 2 of the present invention. FIG. 8 is a diagram showing a path of axis movement in the machine tool in FIG. 1. FIG. 9 is a diagram showing the second and third parameters used to calculate the execution time. FIG. 10 is a diagram showing an image of execution time data.

本実施の形態における情報処理装置は、実施の形態1における情報処理装置100と比較して、基本的には、同様の構成を備える。以下、重複する構成については、その説明を繰り返さない。 The information processing apparatus according to the present embodiment basically has the same configuration as the information processing apparatus 100 according to the first embodiment. Hereinafter, descriptions of overlapping configurations will not be repeated.

図7から図10を参照して、本実施の形態では、工作機械200が、NCプログラムPおよびNCプログラムPの実行時の各種設定値(ワークオフセット値および工具長)と、モニタリング部246により計測された実行実時間とを対応付けた情報Inf2を、情報処理装置100に出力する。 Referring to FIGS. 7 to 10, in this embodiment, machine tool 200 uses NC program P and various setting values (work offset value and tool length) during execution of NC program P, and measurement by monitoring unit 246. The information Inf2 associated with the actual execution time is output to the information processing device 100.

算出部120は、プログラム解析部121と、実行時間算出部127と、実行時間算出部124と、実行時間積算部126とを有する。 The calculation unit 120 includes a program analysis unit 121 , an execution time calculation unit 127 , an execution time calculation unit 124 , and an execution time integration unit 126 .

プログラム解析部121は、NCプログラムPに含まれる複数のブロックBLのうちの第1指令ブロックBLaを実行時間算出部127に出力し、NCプログラムPに含まれる複数のブロックBLのうちの第2指令ブロックBLbを実行時間算出部124に出力する。 The program analysis unit 121 outputs the first command block BLa of the plurality of blocks BL included in the NC program P to the execution time calculation unit 127, and outputs the first command block BLa of the plurality of blocks BL included in the NC program P The block BLb is output to the execution time calculation unit 124.

実行時間算出部127は、記憶部150に記憶された実行時間データDa2に基づいて、各第1指令ブロックBLaの実行時間を算出する。より具体的には、実行時間算出部127は、記憶部150から実行時間データDa2を読み出し、実行時間データDa2に各第1指令ブロックBLaに対応する後出の第2パラメータを入力することで、各第1指令ブロックBLaの実行時間の出力を得る。 The execution time calculation unit 127 calculates the execution time of each first command block BLa based on the execution time data Da2 stored in the storage unit 150. More specifically, the execution time calculation unit 127 reads the execution time data Da2 from the storage unit 150, and inputs the second parameter described below corresponding to each first command block BLa into the execution time data Da2, thereby An output of the execution time of each first command block BLa is obtained.

実行時間算出部127は、算出した各第1指令ブロックBLaの実行時間を実行時間積算部126に出力する。実行時間算出部124は、記憶部150に記憶されたタイムテーブルTに基づいて、各第2指令ブロックBLbの実行時間を算出する。実行時間算出部124は、算出した各第2指令ブロックBLbの実行時間を実行時間積算部126に出力する。 The execution time calculation unit 127 outputs the calculated execution time of each first command block BLa to the execution time integration unit 126. The execution time calculation unit 124 calculates the execution time of each second command block BLb based on the time table T stored in the storage unit 150. The execution time calculation unit 124 outputs the calculated execution time of each second command block BLb to the execution time integration unit 126.

実行時間積算部126は、実行時間算出部127より入力された各第1指令ブロックBLaの実行時間と、実行時間算出部124より入力された各第2指令ブロックBLbの実行時間とを積算することによって、NCプログラムPの実行時間を算出する。 The execution time integration unit 126 integrates the execution time of each first command block BLa input from the execution time calculation unit 127 and the execution time of each second command block BLb input from the execution time calculation unit 124. The execution time of the NC program P is calculated as follows.

図8に示されるように、第1指令ブロックBLaであるNCブロックd0、NCブロックd1、NCブロックd2、NCブロックd3、NCブロックd4、NCブロックd5…は、G01のコードにより、指令点0→指令点1→指令点2→指令点3→指令点4→指令点5…を順に移動する軸移動を指令している。 As shown in FIG. 8, the first command block BLa, which is NC block d0, NC block d1, NC block d2, NC block d3, NC block d4, NC block d5..., is changed from command point 0 to Axis movement is commanded to move in the order of command point 1 → command point 2 → command point 3 → command point 4 → command point 5, and so on.

ここで、NCブロックd3の実行時間を算出する場合を想定すると、NCブロックd3が、実行時間を算出する対象である特定ブロックに対応し、NCブロックd0、NCブロックd1、NCブロックd2、NCブロックd4およびNCブロックd5が、特定ブロックの前後に実行される複数の前後ブロックに対応している。 Here, assuming that the execution time of the NC block d3 is calculated, the NC block d3 corresponds to a specific block for which the execution time is calculated, and the NC block d0, NC block d1, NC block d2, NC block d4 and NC block d5 correspond to a plurality of blocks before and after the specific block.

実行時間データDa2は、工作機械200からの情報Inf2に基づいて作成されている。実行時間データDa2は、軸移動の指令の種類毎に作成されている。軸移動の指令の種類は、各第1指令ブロックBLaに記載されているGコードの種類(G01、G02またはG03)に対応している。実行時間データDa2においては、軸移動の指令の種類(Gコード)毎に、第2パラメータと、各第1指令ブロックBLaの実行実時間(T)とが対応付けられている。 The execution time data Da2 is created based on information Inf2 from the machine tool 200. The execution time data Da2 is created for each type of axis movement command. The type of axis movement command corresponds to the type of G code (G01, G02, or G03) written in each first command block BLa. In the execution time data Da2, the second parameter is associated with the actual execution time (T) of each first command block BLa for each type of axis movement command (G code).

第2パラメータは、軸移動の指令点(x,y,z,i,j,k)と、軸移動の速度(F)とを含む。ここで、(x,y,z)は、指令点におけるX軸、Y軸およびZ軸の座標値を表わし、(i,j,k)は、工具姿勢(工具の回転軸の方向ベクトル)を表わしている。図8および図9中のNCブロックd3の実行時間、すなわち、指令点2から指令点3までの軸移動に要する時間を算出する場合において、第2パラメータに対応する軸移動の指令点は、NCブロックd2およびNCブロックd3に規定され、軸移動の速度は、NCブロックd3に規定されている。 The second parameter includes an axis movement command point (x, y, z, i, j, k) and an axis movement speed (F). Here, (x, y, z) represents the coordinate values of the X, Y, and Z axes at the command point, and (i, j, k) represents the tool posture (direction vector of the tool's rotation axis). It represents. When calculating the execution time of NC block d3 in FIGS. 8 and 9, that is, the time required to move the axis from command point 2 to command point 3, the command point of the axis movement corresponding to the second parameter is It is defined in block d2 and NC block d3, and the speed of axis movement is defined in NC block d3.

なお、軸移動の指令の種類が、円弧補間を指令するG02またはG03である場合、軸移動の指令点は、上記の(x,y,z)の座標値と、円弧中心の座標値との組合わせによって表わされる。 If the type of axis movement command is G02 or G03, which commands circular interpolation, the axis movement command point is the coordinate value of the above (x, y, z) and the coordinate value of the center of the arc. Represented by a combination.

本実施の形態では、第2パラメータが、特定ブロックに規定される指令点と、複数の前後ブロックに規定される指令点とを含む。指令点の追加によって定まる軸移動の経路は、実行時間を算出する軸移動の経路の前後で同じ数であることが好ましい。より具体的には、図8および図9中のNCブロックd3の実行時間を算出する場合において、NCブロックd0、NCブロックd1、NCブロックd4およびNCブロックd5に規定される指令点が追加されている。NCブロックd0およびNCブロックd1に規定される指令点が追加されることによって、指令点0から指令点1までの軸移動の経路と、指令点1から指令点2までの軸移動の経路との2つの経路が定まり、NCブロックd4およびNCブロックd5に規定される指令点が追加されることによって、指令点3から指令点4までの軸移動の経路と、指令点4から指令点5までの軸移動の経路との2つの経路が定まっている。 In this embodiment, the second parameter includes a command point defined in a specific block and a command point defined in a plurality of preceding and following blocks. It is preferable that the number of axis movement paths determined by adding command points is the same before and after the axis movement path for which the execution time is calculated. More specifically, when calculating the execution time of NC block d3 in FIGS. 8 and 9, command points specified in NC block d0, NC block d1, NC block d4, and NC block d5 are added. There is. By adding the command points specified in NC block d0 and NC block d1, the axis movement path from command point 0 to command point 1 and the axis movement path from command point 1 to command point 2 are changed. By determining the two paths and adding the command points specified in NC block d4 and NC block d5, the axis movement path from command point 3 to command point 4 and from command point 4 to command point 5 are determined. Two routes are determined, including the axis movement route.

このような構成によれば、スムージング機能においては、実行時間を算出する経路の前後の軸移動の経路が、実行時間を算出する経路に影響を与える。このため、第2パラメータに、特定ブロックに規定される指令点と、複数の前後ブロックに規定される指令点とを含めることによって、各第1指令ブロックBLaの実行時間をより正確に算出することができる。 According to such a configuration, in the smoothing function, the path of axis movement before and after the path for calculating the execution time affects the path for calculating the execution time. Therefore, by including the command point specified in a specific block and the command points specified in a plurality of preceding and following blocks in the second parameter, the execution time of each first command block BLa can be calculated more accurately. Can be done.

第2パラメータは、ワークオフセット値(cx,cy,cz,ca,cc)および工具長(h)の少なくともいずれか一方をさらに含んでもよい。ここで、(ca,cc)は、それぞれ、X軸およびZ軸の回転軸のオフセット値を表わしている。 The second parameter may further include at least one of a work offset value (cx, cy, cz, ca, cc) and a tool length (h). Here, (ca, cc) represent the offset values of the rotational axes of the X-axis and the Z-axis, respectively.

工具先端点制御では、ユーザは、F値を指令したときにワークに対する工具の速度を期待する。しかしながら、回転テーブルに搭載されたワークを主軸に保持された工具で加工する場合を想定すると、ワークの回転中心から近い位置でワークを加工する時のワークおよび工具の相対的な回転速度が、ワークの回転中心から遠い位置でワークを加工する時のワークおよび工具の相対的な回転速度よりも大きくなる。このため、図4中の数値制御装置210が、自動的に主軸の速度を制限する制御を行なう場合がある。そこで、第2パラメータにワークオフセット値を含めることによって、ワークおよび主軸の位置関係を把握可能とし、軸移動の実行時間の算出に上記制御を加味することができる。 In tool center point control, the user expects the speed of the tool relative to the workpiece when commanding the F value. However, assuming that a workpiece mounted on a rotary table is machined using a tool held on the spindle, the relative rotational speed of the workpiece and tool when machining the workpiece at a position close to the workpiece's rotation center is is greater than the relative rotational speed of the workpiece and tool when machining the workpiece at a position far from the center of rotation. For this reason, the numerical control device 210 in FIG. 4 may perform control to automatically limit the speed of the spindle. Therefore, by including the workpiece offset value in the second parameter, it is possible to grasp the positional relationship between the workpiece and the spindle, and the above control can be taken into consideration in calculating the execution time of the axis movement.

また、工具の回転軸に直交する平面内で旋回可能な主軸を想定した場合に、主軸に保持される工具の長さが大きいと、工具先端点が大きく旋回移動することになる。このため、このため、図4中の数値制御装置210が、自動的に主軸の旋回速度を制限する制御を行なう場合がある。そこで、第2パラメータに工具長を含めることによって、主軸に保持される工具長さを把握可能とし、軸移動の実行時間の算出に上記制御を加味することができる。 Furthermore, assuming a spindle that can pivot within a plane perpendicular to the rotational axis of the tool, if the length of the tool held by the spindle is long, the tip of the tool will pivot significantly. Therefore, the numerical control device 210 in FIG. 4 may perform control to automatically limit the rotation speed of the main shaft. Therefore, by including the tool length in the second parameter, the length of the tool held by the spindle can be grasped, and the above control can be taken into consideration in calculating the execution time of axis movement.

図10に示されるように、実行時間データDa2においては、上記の第2パラメータの各要素に対して規定される所定範囲と、第2パラメータの各要素がその所定範囲を満たす場合の各第1指令ブロックBLaの実行実時間の平均値とが対応付けられている。 As shown in FIG. 10, in the execution time data Da2, a predetermined range defined for each element of the second parameter, and each first The average value of the actual execution time of the command block BLa is associated with the command block BLa.

図10中では、図8および図9中のNCブロックd3の実行時間を算出する場合が想定されている。RangeSetAでは、NCブロックd0に規定される指令点0の座標x0が、x0A<x0Bの関係を満たすx0Aに対応し、NCブロックd0に規定される指令点0の座標y0が、y0B<y0C<y0Dの関係を満たすy0Cに対応し、NCブロックd0に規定される指令点0の座標z0が、z0A<z0B<z0Cの関係を満たすz0Bに対応し、NCブロックd0に規定される指令点0における工具姿勢のベクトル座標i0が、i0A<i0Bの関係を満たすi0Aに対応し、NCブロックd0に規定される指令点0における工具姿勢のベクトル座標j0が、j0B<j0C<j0Dの関係を満たすj0Cに対応し、NCブロックd0に規定される指令点0における工具姿勢のベクトル座標k0が、k0A<k0B<k0Cの関係を満たすk0Bに対応し、NCブロックd5に規定される指令点5の座標z5が、z0A<z0Bの関係を満たすz0Aに対応し、NCブロックd3に規定される速度Fが、F<Fの関係を満たすFに対応する第2パラメータが分類されている(説明を省略しているが、上記以外の第2パラメータについても、同様に範囲が規定されている)。この場合に、RangeSetAに規定された第2パラメータの範囲を満たす第1指令ブロックBLaの実行実時間の平均値が、RangeSetAにおける第1指令ブロックBLaの実行実時間TAとして算出されている。 In FIG. 10, it is assumed that the execution time of the NC block d3 in FIGS. 8 and 9 is calculated. In RangeSetA, the coordinate x0 of command point 0 defined in NC block d0 corresponds to x 0A that satisfies the relationship x 0A < x 0B , and the coordinate y0 of command point 0 defined in NC block d0 corresponds to y 0B. The coordinate z0 of the command point 0 defined in the NC block d0 corresponds to y 0C , which satisfies the relationship <y 0C < y 0D , and corresponds to z 0B , which satisfies the relationship z 0A < z 0B < z 0C , and the NC The vector coordinate i0 of the tool posture at the command point 0 specified in the block d0 corresponds to i 0A satisfying the relationship i 0A < i 0B , and the vector coordinate j0 of the tool posture at the command point 0 specified in the NC block d0 corresponds to j 0C that satisfies the relationship j 0B < j 0C < j 0D , and the vector coordinate k0 of the tool posture at command point 0 defined in NC block d0 satisfies the relationship k 0A < k 0B < k 0C . Corresponding to k 0B that satisfies, the coordinate z5 of the command point 5 specified in NC block d5 corresponds to z 0A that satisfies the relationship z 0A < z 0B , and the speed F specified in NC block d3 is F A The second parameters corresponding to F A that satisfy the relationship <F B are classified (although the description is omitted, the ranges are similarly defined for second parameters other than the above). In this case, the average value of the actual execution time of the first instruction block BLa that satisfies the range of the second parameter defined in RangeSetA is calculated as the actual execution time TA of the first instruction block BLa in RangeSetA.

また、RangeSetBでは、RangeSetAとは異なる範囲の組み合わせが規定されている。このように互いに異なる範囲が規定された複数のRangeSetが準備されており、各RangeSetにおいて第1指令ブロックBLaの実行実時間の平均値が算出されている。 Further, in RangeSetB, a combination of ranges different from that in RangeSetA is defined. In this way, a plurality of RangeSets in which mutually different ranges are defined are prepared, and the average value of the actual execution time of the first command block BLa is calculated in each RangeSet.

実行時間算出部127は、各第1指令ブロックBLaに対応する第2パラメータを、図10中のRangeSetのテーブルに照らし合わせ、その第2パラメータが範囲を満たすRangeSetを特定することによって、各第1指令ブロックBLaの実行実時間Tを得る。 The execution time calculation unit 127 compares the second parameter corresponding to each first command block BLa with the RangeSet table in FIG. Obtain the actual execution time T of the command block BLa.

図7に示されるように、本実施の形態における情報処理装置は、実施の形態1における誤差データ更新部140に替えて、実行時間データ更新部146を有する。実行時間データ更新部146は、工作機械200におけるモニタリング部246で計測された各第1指令ブロックBLaの実行実時間と、各第1指令ブロックBLaに対応する第2パラメータとが新たに入力されることによって、RangeSetにおける第1指令ブロックBLaの実行実時間の平均値を更新する。 As shown in FIG. 7, the information processing apparatus in this embodiment includes an execution time data update section 146 in place of the error data update section 140 in the first embodiment. The execution time data updating unit 146 receives new input of the actual execution time of each first command block BLa measured by the monitoring unit 246 in the machine tool 200 and the second parameter corresponding to each first command block BLa. As a result, the average value of the actual execution time of the first command block BLa in the RangeSet is updated.

なお、初期データとしての実行時間データDa2を作成する場面においては、ランニングプログラムを用いて工作機械200を実行させることにより、ランニングプログラムに含まれる各第1指令ブロックBLaの実行実時間と、各第1指令ブロックBLaに対応する第2パラメータとを対応付けたデータが収集される。実行時間データ更新部146は、これらデータに基づいて、実行時間データDa2を作成する。 In addition, in the scene of creating the execution time data Da2 as initial data, by executing the machine tool 200 using a running program, the actual execution time of each first command block BLa included in the running program and each first command block are calculated. Data is collected in which one command block BLa is associated with a corresponding second parameter. The execution time data updating unit 146 creates execution time data Da2 based on these data.

以上に説明した、この発明の実施の形態2における情報処理装置の構成をまとめると、本実施の形態では、NCプログラムの複数のブロックBLが、軸移動を指令する複数の第1指令ブロックBLaを含む。算出部120は、軸移動の指令の種類毎に作成され、軸移動の指令点および速度を含む第2パラメータと、各第1指令ブロックBLaを実行した際の実際の実行に要する実行時間(実行実時間)との対応を示す実行時間データDa2に基づいて、NCプログラムPの実行時間を算出する。 To summarize the configuration of the information processing apparatus according to the second embodiment of the present invention described above, in this embodiment, the plurality of blocks BL of the NC program execute the plurality of first command blocks BLa for commanding axis movement. include. The calculation unit 120 is created for each type of axis movement command, and calculates a second parameter including the axis movement command point and speed, and the execution time (execution time) required for actual execution when each first command block BLa is executed. The execution time of the NC program P is calculated based on the execution time data Da2 indicating the correspondence with the real time).

以上に説明した、この発明の実施の形態2における情報処理装置によれば、実施の形態1における情報処理装置100と同様の効果を奏することができる。 According to the information processing apparatus according to the second embodiment of the present invention described above, the same effects as the information processing apparatus 100 according to the first embodiment can be achieved.

(実施の形態3)
図11は、この発明の実施の形態3における情報処理装置を示す機能ブロック図である。図12は、時間推定モデルを学習させるための処理を示す概略図である。
(Embodiment 3)
FIG. 11 is a functional block diagram showing an information processing apparatus according to Embodiment 3 of the present invention. FIG. 12 is a schematic diagram showing a process for learning a time estimation model.

本実施の形態における情報処理装置は、実施の形態1における情報処理装置100と比較して、基本的には、同様の構成を備える。以下、重複する構成については、その説明を繰り返さない。 The information processing apparatus according to the present embodiment basically has the same configuration as the information processing apparatus 100 according to the first embodiment. Hereinafter, descriptions of overlapping configurations will not be repeated.

図11および図12を参照して、本実施の形態では、工作機械200が、NCプログラムPおよびNCプログラムPの実行時の各種設定値(ワークオフセット値および工具長)と、モニタリング部246により計測された実行実時間とを対応付けた情報Inf3を、情報処理装置100に出力する。 Referring to FIGS. 11 and 12, in the present embodiment, machine tool 200 uses NC program P and various setting values (work offset value and tool length) during execution of NC program P, and measurement by monitoring unit 246. The information Inf3 associated with the actual execution time is output to the information processing device 100.

算出部120は、プログラム解析部121と、実行時間算出部128と、実行時間算出部124と、実行時間積算部126とを有する。 The calculation unit 120 includes a program analysis unit 121 , an execution time calculation unit 128 , an execution time calculation unit 124 , and an execution time integration unit 126 .

プログラム解析部121は、NCプログラムPに含まれる複数のブロックBLのうちの第1指令ブロックBLaを実行時間算出部128に出力し、NCプログラムPに含まれる複数のブロックBLのうちの第2指令ブロックBLbを実行時間算出部124に出力する。 The program analysis unit 121 outputs the first command block BLa of the plurality of blocks BL included in the NC program P to the execution time calculation unit 128, and outputs the first command block BLa of the plurality of blocks BL included in the NC program P to the execution time calculation unit 128 The block BLb is output to the execution time calculation unit 124.

実行時間算出部128は、学習済みの実行時間推定モデルDa3に基づいて、各第1指令ブロックBLaの実行時間を算出する。実行時間算出部128は、算出した各第1指令ブロックBLaの実行時間を実行時間積算部126に出力する。実行時間算出部124は、記憶部150に記憶されたタイムテーブルTに基づいて、各第2指令ブロックBLbの実行時間を算出する。実行時間算出部124は、算出した各第2指令ブロックBLbの実行時間を実行時間積算部126に出力する。 The execution time calculation unit 128 calculates the execution time of each first command block BLa based on the learned execution time estimation model Da3. The execution time calculation unit 128 outputs the calculated execution time of each first command block BLa to the execution time integration unit 126. The execution time calculation unit 124 calculates the execution time of each second command block BLb based on the time table T stored in the storage unit 150. The execution time calculation unit 124 outputs the calculated execution time of each second command block BLb to the execution time integration unit 126.

実行時間積算部126は、実行時間算出部127より入力された各第1指令ブロックBLaの実行時間と、実行時間算出部124より入力された各第2指令ブロックBLbの実行時間とを積算することによって、NCプログラムPの実行時間を算出する。 The execution time integration unit 126 integrates the execution time of each first command block BLa input from the execution time calculation unit 127 and the execution time of each second command block BLb input from the execution time calculation unit 124. The execution time of the NC program P is calculated as follows.

図9および図12に示されるように、実行時間推定モデルDa3は、各第1指令ブロックBLaに対応する第3パラメータを入力とし、各第1指令ブロックBLaの実行時間を出力とする人工知能モデルである。実行時間算出部128は、記憶部150から実行時間推定モデルDa3を読み出し、実行時間推定モデルDa3に第3パラメータを入力することによって、各第1指令ブロックBLaの実行時間の出力を得る。 As shown in FIGS. 9 and 12, the execution time estimation model Da3 is an artificial intelligence model that inputs the third parameter corresponding to each first command block BLa and outputs the execution time of each first command block BLa. It is. The execution time calculation unit 128 reads the execution time estimation model Da3 from the storage unit 150 and inputs the third parameter to the execution time estimation model Da3, thereby obtaining an output of the execution time of each first instruction block BLa.

実行時間推定モデルDa3は、ニューラルネットワークを含む。実行時間推定モデルDa3は、たとえば、畳み込みニューラルネットワーク(CNN)などのディープニューラルネットワークを含む。 The execution time estimation model Da3 includes a neural network. The execution time estimation model Da3 includes, for example, a deep neural network such as a convolutional neural network (CNN).

実行時間推定モデルDa3は、軸移動の指令の種類(Gコード)毎に作成されている。第3パラメータは、実施の形態2における第2パラメータに対応している。より具体的には、第3パラメータは、軸移動の指令点および速度を1次データとして含む。さらに、第3パラメータに、ワークオフセット値もしくは工具長といった特徴量、または、軸移動の加速度が、2次データとして追加されてもよく、この場合、実行時間推定モデルDa3を用いた実行時間の予測精度を高めることができる。 The execution time estimation model Da3 is created for each type of axis movement command (G code). The third parameter corresponds to the second parameter in the second embodiment. More specifically, the third parameter includes the command point and speed of axis movement as primary data. Furthermore, feature quantities such as workpiece offset value or tool length, or acceleration of axis movement may be added as secondary data to the third parameter. In this case, execution time prediction using execution time estimation model Da3 Accuracy can be increased.

本実施の形態における情報処理装置は、実施の形態1における誤差データ更新部140に替えて、機械学習部147を有する。機械学習部147は、工作機械200からの情報Inf3に基づいて、上記の第3パラメータと、第1指令ブロックBLaの実行時間との相関関係を機械学習する。 The information processing device in this embodiment includes a machine learning unit 147 in place of the error data updating unit 140 in the first embodiment. The machine learning unit 147 performs machine learning on the correlation between the third parameter and the execution time of the first command block BLa based on the information Inf3 from the machine tool 200.

以下において、機械学習部147により実行時間推定モデルDa3を学習させるための処理について説明する。 Below, a process for causing the machine learning unit 147 to learn the execution time estimation model Da3 will be described.

まず、工作機械200を動作させるためのNCプログラグをランニングプログラムとして作成する。ランニングプログラムは、第3パラメータの各要素を様々に変更させた複数の第1指令ブロックBLaを含む。作成したランニングプログラムを工作機械200に入力する。 First, an NC program for operating the machine tool 200 is created as a running program. The running program includes a plurality of first command blocks BLa in which each element of the third parameter is variously changed. The created running program is input into the machine tool 200.

次に、工作機械200をランニングプログラムに従って動作させるととともに、各第1指令ブロックBLaの実行実時間を計測する。各第1指令ブロックBLaに対応する第3パラメータと、計測した各第1指令ブロックBLaの実行実時間とを対応付けた学習用データセットを作成する。機械学習部147は、工作機械200から学習用データセットを取得する。 Next, the machine tool 200 is operated according to the running program, and the actual execution time of each first command block BLa is measured. A learning data set is created in which the third parameter corresponding to each first command block BLa is associated with the measured actual execution time of each first command block BLa. The machine learning unit 147 acquires a learning data set from the machine tool 200.

機械学習部147は、記憶部150から実行時間推定モデルDa3を読み出す。実行時間推定モデルDa3は、図12に示されるニューラルネットワークを含む。ニューラルネットワークは、入力層と、中間層と、出力層とを含む。入力層、中間層および出力層の各層は、1または複数のニューロンを有する。各層のニューロンの数は、適宜設定され得る。互いに隣接する層のニューロン同士は、結合されており、各結合には重み(結合荷重)が設定されている。ニューロンの結合数は、適宜設定され得る。各ニューロンには、閾値が設定されており、各ニューロンへの入力値と重みとの積の和が閾値を超えているか否かによって、各ニューロンの出力値が決定される。 The machine learning unit 147 reads the execution time estimation model Da3 from the storage unit 150. Execution time estimation model Da3 includes the neural network shown in FIG. 12. A neural network includes an input layer, a hidden layer, and an output layer. Each of the input layer, hidden layer, and output layer has one or more neurons. The number of neurons in each layer can be set as appropriate. Neurons in adjacent layers are connected to each other, and a weight (connection weight) is set for each connection. The number of neuron connections can be set as appropriate. A threshold value is set for each neuron, and the output value of each neuron is determined depending on whether the sum of the products of the input value and the weight for each neuron exceeds the threshold value.

機械学習部147は、工作機械200から取得した各第1指令ブロックBLaに対応する第3パラメータを入力層に入力し、出力層から各第1指令ブロックBLaの実行時間を出力する。たとえば、機械学習部147は、第3パラメータを入力層の入力として用いて、ニューラルネットワークの順方向の演算処理を行なう。これにより、機械学習部147は、ニューラルネットワークの出力層から出力される出力値として、各第1指令ブロックBLaの実行時間を推定した値を得る。 The machine learning unit 147 inputs the third parameter corresponding to each first command block BLa acquired from the machine tool 200 to the input layer, and outputs the execution time of each first command block BLa from the output layer. For example, the machine learning unit 147 uses the third parameter as an input to the input layer to perform forward calculation processing of the neural network. Thereby, the machine learning unit 147 obtains the estimated execution time of each first command block BLa as the output value output from the output layer of the neural network.

機械学習部147は、工作機械200から取得した各第1指令ブロックBLaの実行実時間(真値)に対する各第1指令ブロックBLaの実行時間の推定値の誤差を算出する。機械学習部147は、かかる誤差の算出を通じて、同じ第3パラメータが入力されたならば真値により近い出力値が得られるように、各ニューロン間の結合の重み、および、各ニューロンの閾値などの実行時間推定モデルDa3のパラメータを設定する。 The machine learning unit 147 calculates an error in the estimated value of the execution time of each first instruction block BLa with respect to the actual execution time (true value) of each first instruction block BLa acquired from the machine tool 200. Through this error calculation, the machine learning unit 147 calculates the weights of the connections between each neuron, the threshold value of each neuron, etc. so that if the same third parameter is input, an output value closer to the true value is obtained. Parameters of the execution time estimation model Da3 are set.

機械学習部147は、最終的には、出力する第1指令ブロックBLaの実行時間の推定値が工作機械200から取得する各第1指令ブロックBLaの実行実時間と一致するまで上記の機械学習のステップを繰り返す。これにより、学習済みの実行時間推定モデルDa3が作成される。 The machine learning unit 147 performs the machine learning described above until the estimated value of the execution time of the output first instruction block BLa finally matches the actual execution time of each first instruction block BLa obtained from the machine tool 200. Repeat steps. As a result, a learned execution time estimation model Da3 is created.

なお、上記では、学習済みの実行時間推定モデルDa3の作成時のステップを説明したが、実行時間推定モデルDa3の更新時にも同様のステップが実行される。ユーザによる工作機械200の使用に伴って、機械学習部147は、工作機械200から新たな情報Inf3を取得する。機械学習部147は、情報Inf3に基づいて、第3パラメータと、各第1指令ブロックに対応した実行時間との相関関係を再学習し、実行時間推定モデルDa3を更新する。 In addition, although the steps at the time of creating the trained execution time estimation model Da3 have been described above, the same steps are executed when the execution time estimation model Da3 is updated. As the user uses the machine tool 200, the machine learning unit 147 acquires new information Inf3 from the machine tool 200. The machine learning unit 147 relearns the correlation between the third parameter and the execution time corresponding to each first instruction block based on the information Inf3, and updates the execution time estimation model Da3.

以上に説明した、この発明の実施の形態3における情報処理装置の構成をまとめると、本実施の形態では、複数のブロックBLは、軸移動を指令する複数の第1指令ブロックBLaを含む。算出部120は、軸移動の指令の種類毎に作成され、軸移動の指令点および速度を含む第3パラメータを入力とし、各第1指令ブロックBLaに対応した実行時間を出力とする学習済みの実行時間推定モデルDa3に基づいて、NCプログラムPの実行時間を算出する。 To summarize the configuration of the information processing apparatus according to Embodiment 3 of the present invention described above, in this embodiment, the plurality of blocks BL include the plurality of first command blocks BLa that command axis movement. The calculation unit 120 is a learned machine that is created for each type of axis movement command, receives a third parameter including the axis movement command point and speed, and outputs the execution time corresponding to each first command block BLa. The execution time of the NC program P is calculated based on the execution time estimation model Da3.

以上に説明した、この発明の実施の形態3における情報処理装置によれば、実施の形態1における情報処理装置100と同様の効果を奏することができる。 According to the information processing apparatus according to the third embodiment of the present invention described above, the same effects as the information processing apparatus 100 according to the first embodiment can be achieved.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims rather than the above description, and it is intended that all changes within the meaning and range equivalent to the claims are included.

100 情報処理装置、110 プログラム作成部、111 メインプロセッサ部、112 ポストプロセッサ部、120 算出部、121 プログラム解析部、122 実行時間予測部、123 実行時間補正部、124,127,128 実行時間算出部、126 実行時間積算部、130,241 表示部、140 誤差データ更新部、146 実行時間データ更新部、147 機械学習部、150 記憶部、160 通信部、161 送信部、162 受信部、200 工作機械、210 数値制御装置、211 インタプリタ、212 指令出力部、220 機械制御装置、230 機械要素、240 操作盤、242 操作部、246 モニタリング部、BL ブロック、BLa 第1指令ブロック、BLb 第2指令ブロック、Da 参照データ、Da1 誤差データ、Da2 実行時間データ、Da3 実行時間推定モデル、Inf1,Inf2,Inf3 情報、P プログラム、T タイムテーブル。 100 information processing device, 110 program creation section, 111 main processor section, 112 post-processor section, 120 calculation section, 121 program analysis section, 122 execution time prediction section, 123 execution time correction section, 124, 127, 128 execution time calculation section , 126 execution time integration unit, 130, 241 display unit, 140 error data update unit, 146 execution time data update unit, 147 machine learning unit, 150 storage unit, 160 communication unit, 161 transmission unit, 162 reception unit, 200 machine tool , 210 numerical control device, 211 interpreter, 212 command output unit, 220 mechanical control device, 230 mechanical element, 240 operation panel, 242 operation unit, 246 monitoring unit, BL block, BLa first command block, BLb second command block, Da reference data, Da1 error data, Da2 execution time data, Da3 execution time estimation model, Inf1, Inf2, Inf3 information, P program, T time table.

Claims (9)

複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置であって、
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間とを含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出する算出部を備え
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、
前記算出部は、前記軸移動の指令点および速度を含む第1パラメータに基づいて算出された各前記第1指令ブロックに対応した実行予測時間と、各前記第1指令ブロックを実行した際の実際の実行に要する実行時間との間の誤差に関する誤差データに基づいて、前記NCプログラムの実行時間を算出する、情報処理装置。
An information processing device that calculates an execution time of an NC program including a plurality of blocks,
(i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; The execution time of the NC program is determined based on the execution time corresponding to the plurality of blocks, including the second execution time required for actual execution when the second block is executed by the machine tool for two blocks. Equipped with a calculation unit that calculates
The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
The calculation unit calculates a predicted execution time corresponding to each of the first command blocks calculated based on a first parameter including a command point and speed of the axis movement, and an actual time when each of the first command blocks is executed. An information processing device that calculates an execution time of the NC program based on error data regarding an error between the execution time and the execution time required for execution of the NC program .
複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置であって、
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間とを含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出する算出部を備え、
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、
前記算出部は、前記軸移動の指令の種類毎に作成され、前記軸移動の指令点および速度を含む第2パラメータと、各前記第1指令ブロックを実行した際の実際の実行に要する実行時間との対応を示す実行時間データに基づいて、前記NCプログラムの実行時間を算出する、情報処理装置。
An information processing device that calculates an execution time of an NC program including a plurality of blocks,
(i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; The execution time of the NC program is determined based on the execution time corresponding to the plurality of blocks, including the second execution time required for actual execution when the second block is executed by the machine tool for two blocks. Equipped with a calculation unit that calculates
The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
The calculation unit is created for each type of axis movement command, and calculates a second parameter including a command point and speed of the axis movement, and an execution time required for actual execution when each of the first command blocks is executed. An information processing device that calculates an execution time of the NC program based on execution time data indicating a correspondence with the NC program.
複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置であって、
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間とを含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出する算出部を備え、
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、
前記算出部は、前記軸移動の指令の種類毎に作成され、前記軸移動の指令点および速度を含む第3パラメータを入力とし、各前記第1指令ブロックに対応した実行時間を出力とする学習済みの実行時間推定モデルに基づいて、前記NCプログラムの実行時間を算出する、情報処理装置。
An information processing device that calculates an execution time of an NC program including a plurality of blocks,
(i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; The execution time of the NC program is determined based on the execution time corresponding to the plurality of blocks, including the second execution time required for actual execution when the second block is executed by the machine tool for two blocks. Equipped with a calculation unit that calculates
The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
The calculation unit is created for each type of axis movement command, inputs a third parameter including the axis movement command point and speed, and outputs the execution time corresponding to each first command block. An information processing device that calculates an execution time of the NC program based on a completed execution time estimation model.
前記複数の第1指令ブロックは、前記算出部により実行時間が算出される特定ブロックと、前記特定ブロックの前後で実行される複数の前後ブロックとを含み、
前記第3パラメータは、前記特定ブロックで規定される前記軸移動の指令点と、前記複数の前後ブロックで規定される前記軸移動の指令点とを含む、請求項に記載の情報処理装置。
The plurality of first command blocks include a specific block whose execution time is calculated by the calculation unit, and a plurality of preceding and following blocks that are executed before and after the specific block,
The information processing apparatus according to claim 3 , wherein the third parameter includes a command point for the axis movement defined by the specific block and a command point for the axis movement defined by the plurality of front and rear blocks.
前記第3パラメータは、ワークオフセット値および工具長の少なくともいずれか一方をさらに含む、請求項3または4に記載の情報処理装置。 The information processing apparatus according to claim 3 or 4 , wherein the third parameter further includes at least one of a work offset value and a tool length. 前記工作機械から、前記工作機械で各前記第1指令ブロックを実行した際の実際の実行に要する実行時間を含む情報を受信する通信部と、
前記情報に基づいて、前記第3パラメータと、各前記第1指令ブロックに対応した実行時間との相関関係を再学習し、前記実行時間推定モデルを更新する機械学習部とをさらに備える、請求項3または4に記載の情報処理装置。
a communication unit that receives, from the machine tool, information including an execution time required for actual execution when each of the first command blocks is executed by the machine tool;
4. The method further comprises a machine learning unit that relearns the correlation between the third parameter and the execution time corresponding to each of the first command blocks based on the information, and updates the execution time estimation model. 5. The information processing device according to 3 or 4 .
複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置の制御プログラムであって、
前記制御プログラムは、前記情報処理装置に、
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間との入力を受け付けるステップと、
前記第1実行時間および前記第2実行時間を含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出するステップとを実行させ
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、
前記NCプログラムの実行時間を算出するステップは、前記軸移動の指令点および速度を含む第1パラメータに基づいて算出された各前記第1指令ブロックに対応した実行予測時間と、各前記第1指令ブロックを実行した際の実際の実行に要する実行時間との間の誤差に関する誤差データに基づいて、前記NCプログラムの実行時間を算出するステップを含む、制御プログラム。
A control program for an information processing device that calculates an execution time of an NC program including a plurality of blocks,
The control program causes the information processing device to
(i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; a step of receiving an input of a second execution time required for actual execution when the second block is executed by the machine tool for two blocks;
calculating an execution time of the NC program based on execution times corresponding to the plurality of blocks including the first execution time and the second execution time ;
The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
The step of calculating the execution time of the NC program includes a predicted execution time corresponding to each of the first command blocks calculated based on a first parameter including a command point and speed of the axis movement, and a predicted execution time of each of the first commands. A control program comprising the step of calculating an execution time of the NC program based on error data regarding an error between execution time required for actual execution when executing a block .
複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置の制御プログラムであって、A control program for an information processing device that calculates an execution time of an NC program including a plurality of blocks,
前記制御プログラムは、前記情報処理装置に、 The control program causes the information processing device to
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間との入力を受け付けるステップと、 (i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; a step of receiving an input of a second execution time required for actual execution when the second block is executed by the machine tool for two blocks;
前記第1実行時間および前記第2実行時間を含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出するステップとを実行させ、 calculating an execution time of the NC program based on execution times corresponding to the plurality of blocks including the first execution time and the second execution time;
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、 The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
前記NCプログラムの実行時間を算出するステップは、前記軸移動の指令の種類毎に作成され、前記軸移動の指令点および速度を含む第2パラメータと、各前記第1指令ブロックを実行した際の実際の実行に要する実行時間との対応を示す実行時間データに基づいて、前記NCプログラムの実行時間を算出するステップを含む、制御プログラム。 The step of calculating the execution time of the NC program is created for each type of axis movement command, and includes a second parameter including a command point and speed of the axis movement, and a time difference when each of the first command blocks is executed. A control program comprising a step of calculating an execution time of the NC program based on execution time data indicating a correspondence with an execution time required for actual execution.
複数のブロックを含むNCプログラムの実行時間を算出する情報処理装置の制御プログラムであって、A control program for an information processing device that calculates an execution time of an NC program including a plurality of blocks,
前記制御プログラムは、前記情報処理装置に、 The control program causes the information processing device to
(i)前記複数のブロックの中の第1ブロックに対して工作機械で前記第1ブロックを実行した際の実際の実行に要する第1実行時間と、(ii)前記複数のブロックの中の第2ブロックに対して前記工作機械で前記第2ブロックを実行した際の実際の実行に要する第2実行時間との入力を受け付けるステップと、 (i) the first execution time required for actual execution when the first block among the plurality of blocks is executed by a machine tool; and (ii) the first execution time required for the actual execution of the first block among the plurality of blocks; a step of receiving an input of a second execution time required for actual execution when the second block is executed by the machine tool for two blocks;
前記第1実行時間および前記第2実行時間を含む前記複数のブロックに対応した実行時間に基づいて、前記NCプログラムの実行時間を算出するステップとを実行させ、 calculating an execution time of the NC program based on execution times corresponding to the plurality of blocks including the first execution time and the second execution time;
前記複数のブロックは、軸移動を指令し、前記第1ブロックおよび前記第2ブロックが含まれる複数の第1指令ブロックを含み、 The plurality of blocks include a plurality of first command blocks that command axis movement and include the first block and the second block,
前記NCプログラムの実行時間を算出するステップは、前記軸移動の指令の種類毎に作成され、前記軸移動の指令点および速度を含む第3パラメータを入力とし、各前記第1指令ブロックに対応した実行時間を出力とする学習済みの実行時間推定モデルに基づいて、前記NCプログラムの実行時間を算出するステップを含む、制御プログラム。 The step of calculating the execution time of the NC program is created for each type of axis movement command, inputs a third parameter including the axis movement command point and speed, and calculates the execution time corresponding to each of the first command blocks. A control program comprising the step of calculating an execution time of the NC program based on a learned execution time estimation model that outputs an execution time.
JP2023018318A 2023-02-09 2023-02-09 Information processing device and control program Active JP7391255B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023018318A JP7391255B1 (en) 2023-02-09 2023-02-09 Information processing device and control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023018318A JP7391255B1 (en) 2023-02-09 2023-02-09 Information processing device and control program

Publications (1)

Publication Number Publication Date
JP7391255B1 true JP7391255B1 (en) 2023-12-04

Family

ID=89023132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023018318A Active JP7391255B1 (en) 2023-02-09 2023-02-09 Information processing device and control program

Country Status (1)

Country Link
JP (1) JP7391255B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003175439A (en) 2001-12-11 2003-06-24 Mori Seiki Co Ltd Machining time estimating apparatus for nc machine tool
JP2016031605A (en) 2014-07-28 2016-03-07 ファナック株式会社 Machining time prediction device for predicting machining time after nc program correction
JP2017138827A (en) 2016-02-04 2017-08-10 ファナック株式会社 Processing time prediction device
JP2020201982A (en) 2020-08-31 2020-12-17 ファナック株式会社 Operation management device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003175439A (en) 2001-12-11 2003-06-24 Mori Seiki Co Ltd Machining time estimating apparatus for nc machine tool
JP2016031605A (en) 2014-07-28 2016-03-07 ファナック株式会社 Machining time prediction device for predicting machining time after nc program correction
JP2017138827A (en) 2016-02-04 2017-08-10 ファナック株式会社 Processing time prediction device
JP2020201982A (en) 2020-08-31 2020-12-17 ファナック株式会社 Operation management device

Similar Documents

Publication Publication Date Title
US8938316B2 (en) Numerical controller with machining time prediction unit and machining error prediction unit
CN102681483B (en) Coordinate system for automatically compensating temperature deformation and tool shape offset
EP3213161B1 (en) Method for optimizing the productivity of a machining process of a cnc machine
CN106774144B (en) A kind of intelligent CNC processing method based on industrial robot
US8825192B2 (en) Apparatus and method for dimensional metrology
CN103180791B (en) Control device, control system and control method
US7251580B2 (en) Method for measuring curved surface of workpiece, program and medium thereof
CN108073137B (en) numerical controller
EP2252954B1 (en) Method and device for composite machining
CN106292545B (en) Utilize the method for macroprogram numerical control processing Cylinder Surface
CN101526812A (en) Numerical controller controlling five-axis processing machine
Königs et al. Process-parallel virtual quality evaluation for metal cutting in series production
JP7011064B2 (en) Toolpath Virtualization and Optimization Systems, Methods and Equipment
JP2019188558A (en) Tool selection device and machine learning device
Martinova et al. Practical aspects of ensuring accuracy of machining on CNC machine tools within framework of “smart manufacturing”
Shirase et al. Machine tool automation
CN108472808B (en) Synchronization of multiple robots
JP7391255B1 (en) Information processing device and control program
US20230244213A1 (en) Operating an at least two-axle machine tool
CN108829032B (en) Interpolation method for high-precision control
WO2022162944A1 (en) Simulation device, machine tool system, simulation method, and machining method
US20220382265A1 (en) Online multi-force-adaption during machining
JP6914452B1 (en) Numerical control device and machine learning device
CN111113423A (en) Hub deburring robot programming system
WO2022149569A1 (en) Machining system provided with machine tool, method of revising parameter for revising parameter in machining system, program revision system for revising machining program, and method of revising program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230510

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230828

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231121

R150 Certificate of patent or registration of utility model

Ref document number: 7391255

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150