(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6672470
(24)【登録日】2020年3月6日
(45)【発行日】2020年3月25日
(54)【発明の名称】プリプロセスシミュレーションを用いた工作機械の動作方法及び機械加工システム
(51)【国際特許分類】
G05B 19/4062 20060101AFI20200316BHJP
G05B 19/4069 20060101ALI20200316BHJP
B23Q 15/00 20060101ALI20200316BHJP
【FI】
G05B19/4062
G05B19/4069
B23Q15/00 B
【請求項の数】41
【全頁数】25
(21)【出願番号】特願2018-540819(P2018-540819)
(86)(22)【出願日】2017年2月3日
(65)【公表番号】特表2019-504421(P2019-504421A)
(43)【公表日】2019年2月14日
(86)【国際出願番号】US2017016382
(87)【国際公開番号】WO2017136645
(87)【国際公開日】20170810
【審査請求日】2018年10月11日
(31)【優先権主張番号】15/015,860
(32)【優先日】2016年2月4日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】507241735
【氏名又は名称】マキノ インコーポレイテッド
(74)【代理人】
【識別番号】100088605
【弁理士】
【氏名又は名称】加藤 公延
(74)【代理人】
【識別番号】100130384
【弁理士】
【氏名又は名称】大島 孝文
(72)【発明者】
【氏名】ワン・ジガン
(72)【発明者】
【氏名】中島 省吾
(72)【発明者】
【氏名】ラーソン・マーク・ダブリュ
【審査官】
武市 匡紘
(56)【参考文献】
【文献】
国際公開第2002/003155(WO,A1)
【文献】
米国特許第07933679(US,B1)
【文献】
特開平07−132440(JP,A)
【文献】
米国特許第04748554(US,A)
【文献】
国際公開第98/019822(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 1/00−21/02
B23Q 15/00−15/28
(57)【特許請求の範囲】
【請求項1】
工作機械の動作を監視する方法において、
a.NCプログラムに対応する複数のモーションステップの実行をシミュレートするステップと、
b.前記複数のモーションステップの複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記シミュレートするステップ中に、前記少なくとも1つのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を決定するステップと、
c.動作中に前記工作機械が経験するそれぞれの動作条件の少なくとも1つのそれぞれの実際値を決定するステップと、
d.前記少なくとも1つのそれぞれの実際値を、前記少なくとも1つのそれぞれの実際値と関連付けられた前記それぞれの動作条件に対応する前記シミュレートされた動作条件の前記少なくとも1つのそれぞれの予測値と比較するステップと、
e.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するステップと、
を含む、方法。
【請求項2】
請求項1に記載の方法において、
前記それぞれの動作条件のうちの少なくとも1つが、工作機械の動作条件を含む、方法。
【請求項3】
請求項1に記載の方法において、
前記それぞれの動作条件は、前記工作機械の工具ホルダにかかる半径方向荷重、前記工具ホルダにかかる曲げモーメント、前記工具ホルダとスピンドルとの境界面での曲げモーメント、スピンドルパワー、前記工作機械のトルク、前記工作機械の1つ以上の軸サーボにかかる荷重、および工具の温度からなる群から選択される、方法。
【請求項4】
請求項1に記載の方法において、
前記工作機械の動作に使用される工具の少なくとも1つのそれぞれの実際の温度値を決定するステップと、前記実際の温度値を前記工具の温度に対応する予測値と比較するステップと、を含む、方法。
【請求項5】
請求項1に記載の方法において、
前記工作機械の動作により、前記工作機械によって運ばれる工具が、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、それぞれの動作条件の少なくとも1つのそれぞれの実際値を決定するステップ、および少なくとも1つのそれぞれの実際値を比較するステップは、前記複数の連続した工具位置のうち複数について、繰り返される、方法。
【請求項6】
請求項1に記載の方法において、
前記工作機械の動作により、前記工作機械によって運ばれる工具が、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、それぞれの予測値が、前記工具の前記工具位置によって決まる、方法。
【請求項7】
請求項1に記載の方法において、
前記比較するステップは、前記少なくとも1つのそれぞれの実際値を、前記少なくとも1つのそれぞれの予測値を含むそれぞれの範囲と比較するステップを含む、方法。
【請求項8】
請求項1に記載の方法において、
少なくとも1つのそれぞれの予測値を決定するステップは、前記工作機械の実際の動作より前に行われる、方法。
【請求項9】
請求項1に記載の方法において、
少なくとも1つのそれぞれの予測値を決定するステップは、前記工作機械の実際の動作が始まった後で行われる、方法。
【請求項10】
請求項1に記載の方法において、
前記工作機械の動作を引き起こすために前記NCプログラムを実行するステップを含む、方法。
【請求項11】
請求項1に記載の方法において、
各少なくとも1つのそれぞれの実際値は、関連する工具位置を有し、
前記比較するステップは、前記関連する工具位置を、前記複数のモーションステップの前記複数のうちのそれぞれの1つと関連付けるステップを含む、方法。
【請求項12】
請求項1に記載の方法において、
前記関連付けられたそれぞれの動作条件のうちの少なくとも1つが、工具の動作条件を含む、方法。
【請求項13】
請求項1に記載の方法において、
前記工作機械の動作条件は、工具の動作条件を含む、方法。
【請求項14】
工作機械の動作を監視する方法において、前記工作機械の動作によって、前記工作機械によって運ばれる工具は、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、前記方法は、
a.前記工作機械の動作をコンピュータ上でシミュレートするステップと、
b.前記複数の連続した工具位置の複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記シミュレートするステップ中に、前記少なくとも1つのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を決定するステップと、
c.前記複数の連続した工具位置のうちの関連する1つにある間に、動作中に前記工作機械が経験するそれぞれの動作条件の少なくとも1つの実際値を決定するステップと、
d.前記少なくとも1つの実際値を、前記少なくとも1つのそれぞれの実際値と関連付けられた前記それぞれの動作条件に対応する前記シミュレートされた動作条件の前記少なくとも1つのそれぞれの予測値と比較するステップと、
e.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するステップと、
を含む、方法。
【請求項15】
請求項14に記載の方法において、
少なくとも1つの実際値を決定するステップおよび少なくとも1つの実際値を比較するステップは、前記複数の連続した工具位置のうちの複数について繰り返される、方法。
【請求項16】
請求項15に記載の方法において、
前記複数の連続した工具位置のうちの少なくとも2つについて対応する関連する動作条件の前記予測値は等しくない、方法。
【請求項17】
請求項14に記載の方法において、
前記少なくとも1つの予測値のうちの少なくとも1つを実際値と比較するステップは、前記少なくとも1つのそれぞれの実際値のうちの前記少なくとも1つを、前記予測値を含む範囲と比較するステップを含む、方法。
【請求項18】
機械加工システムにおいて、
a.現実の工作機械であって、複数の連続した工具位置のうちのそれぞれの1つについて、前記複数の連続した工具位置のうちのそのそれぞれの1つでの前記工作機械の動作によって生じる少なくとも1つの動作条件それぞれの少なくとも1つのそれぞれの実際値を、監視システムに提供するように構成されている、現実の工作機械と、
b.コンピュータであって、
i.NCプログラムに対応する複数のモーションステップの実行をモデル化することによって、前記工作機械の動作をシミュレートすることと、
ii.前記複数のモーションステップの複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記少なくとも1つのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を計算することと、
を行うように構成された、コンピュータと、
c.前記監視システムであって、
i.それぞれの実際値を、前記モーションステップに適合する前記工具位置における前記それぞれの実際値の前記動作条件に対応する、前記対応するシミュレートされた動作条件の前記予測値と比較することと、
ii.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するように、前記現実の工作機械にコマンドを送信することと、
を行うように構成された、前記監視システムと、
を含む、機械加工システム。
【請求項19】
請求項18に記載の機械加工システムにおいて、
前記現実の工作機械は、前記監視システムが送信した前記コマンドの内容に基づいて工具の送り速度を調節するように構成されている、機械加工システム。
【請求項20】
請求項19に記載の機械加工システムにおいて、
前記監視システムは、前記それぞれの実際値が所定の期間を超えて前記範囲外にある場合に、前記コマンドを送信するように構成されている、機械加工システム。
【請求項21】
請求項18に記載の機械加工システムにおいて、
ディスプレイを含み、前記機械加工システムは、現在の工具位置で、またその前に前記工作機械が経験した複数の前記少なくとも1つの動作条件の前記実際値を、前記ディスプレイによって表示するように構成されている、機械加工システム。
【請求項22】
請求項18に記載の機械加工システムにおいて、
前記機械加工システムは、現在の工具位置ならびに前の工具位置および将来の工具位置の複数のそれぞれの範囲を、ディスプレイによって表示するように構成され、それぞれの範囲は、前記現在の、前の、および将来の工具位置のそれぞれの実際の予測値を含む、機械加工システム。
【請求項23】
請求項18に記載の機械加工システムにおいて、
前記少なくとも1つのそれぞれの実際値のうちの少なくとも1つの前記動作条件は、前記工作機械の工具ホルダにかかる半径方向荷重、前記工具ホルダにかかる曲げモーメント、スピンドルパワー、前記工具ホルダとスピンドルとの境界面での曲げモーメント、前記工作機械のトルク、前記工作機械の1つ以上の軸サーボにかかる荷重、および工具の温度からなる群から選択される、機械加工システム。
【請求項24】
機械加工システムにおいて、
a.現実の工作機械であって、
i.ワークピースを機械加工するように少なくとも1つの工具を動作させることと、
ii.動作中に前記工作機械が経験する関連する動作条件の少なくとも1つのそれぞれの実際値を提供することと、
を行うように構成された、現実の工作機械と、
b.コンピュータであって、
i.命令の実行をシミュレートすることによって、複数のシミュレートされた動作条件をシミュレートすることと、
ii.前記命令の実行をシミュレートすることによって、前記複数のシミュレートされた動作条件のうちのそれぞれの1つに対応する少なくとも1つのそれぞれの予測値を決定することと、
を行うように構成された、コンピュータと、
c.前記少なくとも1つのそれぞれの実際値を、前記関連する動作条件に対応する前記シミュレートされた動作条件の前記それぞれの予測値と比較するように構成された、監視システムと、
d.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するよう、前記現実の工作機械にコマンドを送信することと、
を含む、機械加工システム。
【請求項25】
請求項24に記載の機械加工システムにおいて、
前記工作機械は、工作機械コントローラを含み、前記工作機械コントローラは、前記少なくとも1つのそれぞれの実際値を示すデータを提供するように構成されている、機械加工システム。
【請求項26】
請求項25に記載の機械加工システムにおいて、
前記工作機械は、前記関連する動作条件の前記それぞれの実際値を感知する少なくとも1つのセンサーを含む、機械加工システム。
【請求項27】
請求項24に記載の機械加工システムにおいて、
前記工作機械は、前記工作機械に前記少なくとも1つの工具を動作させるように前記命令を実行する工作機械コントローラを含み、前記監視システムは、前記少なくとも1つのそれぞれの実際値が所定の期間を超えて前記それぞれの予測値を含む範囲内でない場合に、コマンドを前記工作機械コントローラに送信するように構成されている、機械加工システム。
【請求項28】
請求項27に記載の機械加工システムにおいて、
前記所定の期間はゼロ秒である、機械加工システム。
【請求項29】
請求項27に記載の機械加工システムにおいて、
前記工作機械コントローラは、前記コマンドに応じて作用するように構成され、前記作用は、前記工具の送り速度の調節、および前記工具の動作の停止からなる群から選択される、機械加工システム。
【請求項30】
請求項24に記載の機械加工システムにおいて、
前記工作機械は、工作機械コントローラを含み、前記工作機械コントローラは、NCプログラムを実行して、前記少なくとも1つの工具を工具経路に沿って移動させるように構成されている、機械加工システム。
【請求項31】
機械加工システムにおいて、
a.現実の工作機械であって、複数の連続した工具位置のうちのそれぞれの1つについて、前記複数の連続した工具位置のうちのそのそれぞれの1つでの前記工作機械の動作中に前記工作機械が経験する少なくとも1つの動作条件それぞれの少なくとも1つのそれぞれの実際値を提供するように構成されている、現実の工作機械と、
b.コンピュータであって、
i.命令の実行をシミュレートすることによって、複数のシミュレートされた動作条件をシミュレートすることと、
ii.前記命令の実行をシミュレートすることによって、前記複数のシミュレートされた動作条件のうちのそれぞれの1つに対応する少なくとも1つのそれぞれの予測値を決定することと、
を行うように構成された、コンピュータと、
c.前記少なくとも1つのそれぞれの実際値を、関連する動作条件に対応する前記シミュレートされた動作条件の前記それぞれの予測値と比較するように構成された、監視システムと、
d.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するよう、前記現実の工作機械にコマンドを送信することと、
を含む、機械加工システム。
【請求項32】
請求項31に記載の機械加工システムにおいて、
前記監視システムが、前記少なくとも1つのそれぞれの実際値を、前記シミュレートされた動作条件の前記それぞれの予測値と比較するように構成されていることは、前記監視システムが、前記少なくとも1つのそれぞれの実際値を、前記シミュレートされた動作条件の前記それぞれの予測値を含む範囲と比較するように構成されていることを含む、機械加工システム。
【請求項33】
請求項32に記載の機械加工システムにおいて、
ディスプレイを含み、前記機械加工システムは、現在の工具位置で、またその前に前記工作機械が経験した複数の前記少なくとも1つの動作条件の前記実際値を、前記ディスプレイによって表示するように構成されている、機械加工システム。
【請求項34】
請求項33に記載の機械加工システムにおいて、
前記機械加工システムは、前記現在の工具位置ならびに前の工具位置および将来の工具位置の複数のそれぞれの範囲を、前記ディスプレイによって表示するように構成され、それぞれの範囲は、前記現在の、前の、および将来の工具位置のそれぞれの実際の予測値を含む、機械加工システム。
【請求項35】
機械加工システムにおいて、
a.工作機械であって、
i.前記工作機械によって運ばれる工具を、複数の連続した工具位置を含む工具経路に沿って移動させることと、
ii.前記複数の連続した工具位置の複数のうちのそれぞれの工具位置について、前記複数の連続した工具位置の前記複数のうちのそのそれぞれの工具位置での前記工作機械の動作によって生じる少なくとも1つの動作条件それぞれの少なくとも1つのそれぞれの実際値を、監視システムに提供することと、
を行うように構成されている、工作機械と、
b.それぞれの実際値を、前記それぞれの工具位置に対応する前記少なくとも1つの動作条件のそれぞれの予測値と比較するように構成された、前記監視システムと、
c.前記比較に基づき、前記少なくとも1つの実際値が、前記予測値を含む範囲内に入らない場合、前記工作機械の動作を調節するよう、前記工作機械にコマンドを送信することと、
を含む、機械加工システム。
【請求項36】
請求項35に記載の機械加工システムにおいて、
前記それぞれの予測値は、関連する工具位置を含み、
前記監視システムは、前記それぞれの工具位置を前記関連する工具位置と比較することによって前記それぞれの予測値を選択するように構成されている、機械加工システム。
【請求項37】
請求項35に記載の機械加工システムにおいて、
前記それぞれの予測値は、関連する工具位置を有し、
前記監視システムは、前記それぞれの工具位置の公差範囲内にある前記関連する工具位置の前記それぞれの予測値を選択することによって前記それぞれの予測値を選択するように構成されている、機械加工システム。
【請求項38】
請求項35に記載の機械加工システムにおいて、
前記それぞれの予測値は、関連する工具位置を有し、
前記監視システムは、前記それぞれの工具位置に最も近い前記関連する工具位置の前記それぞれの予測値を選択することによって前記それぞれの予測値を選択するように構成されている、機械加工システム。
【請求項39】
請求項35に記載の機械加工システムにおいて、
前記複数の連続した工具位置は、連続的な工具位置である、機械加工システム。
【請求項40】
請求項35に記載の機械加工システムにおいて、
前記工作機械は、複数のモーションステップを含むプログラムの実行によって前記工具を工具経路に沿って移動させるように構成され、前記複数の連続した工具位置のそれぞれは、それぞれのモーションステップに対応する、機械加工システム。
【請求項41】
請求項35〜40のいずれか1項に記載の機械加工システムにおいて、
前記監視システムは、任意のそれぞれの実際値が前記それぞれの予測値を含む範囲外にある場合に、前記工作機械にコマンドを送信するように構成されている、機械加工システム。
【発明の詳細な説明】
【0001】
〔技術分野〕
本開示は、概して工作機械に関する。少なくともその工作機械のNCプログラムの実行および結果として生じる動作条件をシミュレートし、そのような動作条件の値を予測するデータを生成する、方法および器具を特に開示する。実際の機械加工中に存在する動作条件を、動作条件の予測値と比較する方法および器具も開示する。
【0002】
〔背景〕
CAD/CAMに基づくサポートを伴う機械加工システムのコンピュータ制御は、生産性を改善し、生産費を減少させるために、広く受け入れられている。近年、よりインテリジェントな機能が開発され、CNC工作機械に組み込まれている。CAD/CAMは、ワークピースに使用される工具経路を作り監視する設備を提供する。いくつかのCAMソフトウェアプログラムでは、工作機械および機械仮想環境が、機械加工作業を動的にシミュレートするのに用いられ得る。これらの動的なシミュレーションは、NCプログラムの生成および確認、材料除去分析、ならびに衝突検出エラーを提供する。プロセスのシミュレーションにより、工具経路が、実際に部品を機械加工する前に分析および確認され得る。シミュレーション工具の進歩により、複雑な部品をより正確かつより迅速に機械加工しやすくなってきている。しかしながら、機械加工戦略を選択する上で、CAMソフトウェアにより提供される方法はしばしば、部品の幾何学的情報に基づいており、工作機械の能力または金属切削の物理的性質はほとんどまたは全く考慮されない。他方、工作機械(またはオペレータ)には、NCプログラムに関する限られた情報しかなく、そのため、機械加工が適切に行われるかどうかを判断するのは困難である。工作機械を望ましくない動作条件下で動作させると、工具、工作機械、またはワークピースに損傷を生じ得る。短時間、または長期間にわたって、機械の限界で、限界付近で、または限界を超えて動作させると、工具、工作機械、またはワークピースに損傷を引き起こし得る。
【0003】
さらに、実際、動作パラメータは依然として、典型的にはそれぞれ非常に保守的および攻撃的である、機械加工ハンドブックおよび/または工具製造業者のカタログのいずれかに基づいて、主に選択される。したがって、最適な条件下で機械加工を実行することは困難であり、これにより、低い生産性、または機械加工精度および表面粗さの低下のいずれかを引き起こす。さらに、工具が、急速に増大する切削荷重での切削に関与する切削工具である場合、切削工具、ならびに機械加工される被削材料に対して、損傷が容易に起こる。
【0004】
添付図面は、以下に続く詳細な説明を含む、明細書と共に、本発明の原理を説明するのに役立つ。
【0005】
〔詳細な説明〕
以下の説明では、同様の参照符号は、いくつかの図面にわたり、同様または対応する部品を示す。また、以下の説明では、前、後ろ、内側、外側などといった用語が、便宜上の単語であり、限定的な用語として解釈されるものではないことが、理解される。本特許で使用される用語は、本明細書に記載される装置またはその一部が他の向きで取り付けられるかまたは用いられ得る限りにおいて、限定的とすることは意味していない。図面をさらに詳細に参照して、本発明の教示に従って構築される実施形態を説明する。
【0006】
本明細書で使用される工具とは、工作機械の工具ホルダによって運ばれ、かつワークピースの特徴を変化させるように工作機械によって操作される、任意のタイプの工具を指す。本明細書では、切削工具は、本発明の態様および/または実施形態を説明する上でしばしば言及されるが、本明細書で使用されると工具は、任意の特定のタイプの工具に制限されず、切削工具への言及は、特にそのように制限されない限り、本発明を、切削を伴う工作機械の動作に制限するものではないとみなされ、解釈される。切削する、または切削することは、剪断変形によりワークピースから材料を除去することを意味し得るが、本明細書で使用される、切削する、または切削することは、特にそのように示されない限り、本発明を、剪断変形による材料の除去に制限するものではないとみなされ、解釈され、代わりに、ワークピースの任意の特徴を変化させる動作とみなされ、解釈されるものである。スピンドルは本発明の態様および/または実施形態を説明する上でしばしば言及されるが、本明細書で使用されるスピンドルは、任意の特定のタイプの工具ホルダに制限されず、工具ホルダへの言及は、任意の特定のタイプの工具ホルダに制限されるものではないとみなされ、解釈されるものである。必要な範囲で、本明細書に明白に記載される開示は、参照により本明細書に組み込まれる、あらゆる矛盾する資料に優先する。
【0007】
図1は、本発明のある態様を示すブロック図である。NCプログラム2から始めて、シミュレーション100は、NCプログラム2のシミュレートされた実行から生じる条件を計算し得る。望ましくない条件(すなわち、望ましくない結果をもたらし得る条件)が存在することをシミュレーション100が示した場合、シミュレーション100からの結果の分析のフィードバックは、NCプログラム2を修正するために150で使用され得、シミュレーション100は、次に、修正されたNCプログラム2をシミュレートすることができる。シミュレーション100は、望ましくない条件がシミュレーション100によって存在を示されなくなるまでNCプログラム2の連続した修正を繰り返しシミュレートし、また、計算された条件を示すデータを生成することができ、そのデータは、それらの条件の予測値を表す。NCプログラム2の最新バージョンは、実際には、工作機械にワークピースを機械加工させるように工作機械コントローラによって実行され得る。工作機械の動作中、ワークピースの機械加工中に存在する実際の動作条件に関する情報が、シミュレーション100によって計算されていてよい予測値に対して、実時間監視システム200によって実時間で評価され得る。実際の動作条件が予測値の許容範囲内ではない場合、それを示すフィードバックデータが250で生成され得、機械加工が中断され得る。
【0008】
図2を参照すると、2つの流れ図が、本発明の態様のうちの1つによるプリプロセスシミュレーション100と、本発明の態様のうちの別のものによる実時間監視システム200と、を示している。プリプロセスシミュレーション100および監視システム200は、互いと関連して示されているが、シミュレーション100または監視システム200は、他方から独立して実行されてよい。プリプロセスシミュレーション100は、送り速度、工具角度などを含め、工具経路をたどるよう、NCプログラムで指定された工具を工作機械が動作させる仮想環境でNCプログラムの実行をシミュレートする。プリプロセスシミュレーション100は、工具の種類、サイズおよび外形などの工具属性と、材料組成とに基づいて、切削経路と、送り速度、スピンドル速度、および切削深さなどの関連条件とをモデル化し、除去される幾何学的材料を計算することができる。プリプロセスシミュレーション100は、NCプログラムが望ましくない結果の可能性を低減または排除するために修正されるかまたは修正され得るように、そのような望ましくない結果を引き起こし得る、シミュレートされた動作条件を特定することができ、また、プリプロセスシミュレーション100が望ましくない結果を引き起こし得る条件を特定しないNCプログラムの最終的な修正のシミュレーションに基づいて、特定の動作条件の予測値を計算することができる。そのような予測値は、実時間監視システム200に提供され得、NCプログラムの修正は、工作機械コントローラに提供され得る。
図2および
図5が示すように、プリプロセスシミュレーション100によって生成されたデータは、実時間監視システム200に渡されてよく、NCプログラムの最終的な修正は、工作機械コントローラ300にロードされ得る。実時間監視システム200は、工作機械上でのワークピースの実際の工程内機械加工と関連して実時間で実行され、予測値を実際の機械加工からの実際値と比較し、かつ、その比較に基づいて反応することができる。
【0009】
図2に示すように、NCプログラム102は、プリプロセスシミュレーション100に提供され得る。NCプログラム102は、任意の起源のものであってよく、例えば、全体もしくは一部がCAD/CAMシステムによって生成され得るか、または、全体もしくは一部が手作業で作られ得る。104で示すように、プリプロセスシミュレーション100は、特定のコンピューティング環境のために初期化され、所定の工具外形の表にまとめられ得る、例えば工具形状、直径、フルートの数、ねじれ角などの工具属性;軸構成、スピンドルトルク−パワー曲線、軸ストロークなどであるがこれらに制限されない工作機械属性;原材料の形状(stock material shape)、材料特性、および材料の比切削圧力係数(material specific cutting pressure coefficients)などであるがこれらに制限されないワークピース属性;ならびに、ソリッドモデルの形態などであるがこれらに制限されない最終部品構成、などであるがこれらに制限されない、実際の工作機械、工具、ワークピース、および最終部品に関連するデータをロードされ得る。プリプロセスシミュレーション100の初期化は、必要な場合にのみ発生し得、必ずしもプリプロセスシミュレーション100が実行されるたびに行われるわけではない。関連データは、任意の様式で任意の時間に入力され得、例えば、一部のデータが、エンドユーザによってシミュレーション時に入力される。一部の関連データは、ドロップダウンリストからエンドユーザによって選択可能であってよい。
【0010】
描かれた実施形態では、プリプロセスシミュレーション100は、モーションステップごとに、NCプログラムに基づいて機械加工プロセスをシミュレートする。NCプログラムの各モーションステップの実行をモデル化するためのシミュレーションおよび関連する計算は、ステップ106で表される。NCプログラムの各モーションステップでは、プリプロセスシミュレーション100は、現在のモーションステップの機械加工条件を計算し得る。本明細書で使用されるモーションステップとは、ワークピースに対する工具の位置の変化を指す。プリプロセスシミュレーション100のモーションステップ解像度(motion step resolution)は、ステップ104中に設定され得る。機械加工条件は、工具、工作機械、もしくはワークピースへの損傷、または機械加工プロセスの不正確さなどの望ましくない結果をもたらし得る動作条件のステップ108でのその後の計算に関する情報を含む。ステップ106では、プリプロセスシミュレーション100は、除去される材料の体積、および、切削工具と材料との接触面積を、幾何学的ブール演算に基づいて計算し得る。計算された材料除去および接触面積に基づいて、シミュレーション100は、切削の軸方向深さおよび切削の幅を計算し得る。工具の各フルートのチップ荷重も、シミュレートされているNCプログラムのモーションステップの属性、例えば、送り速度およびスピンドル速度などの動作属性ならびに切削工具のフルートの数などの工具属性に基づいて計算され得る。半径方向の係合は、切削工具の直径に基づいて計算され得る。このようなNCプログラムのシミュレーションは、当技術分野で周知であり、例えばCGTechから入手可能なVericut Optipathソフトウェアを含む、いくつかの市販されている既存のCAMシミュレーションプログラムのうちのいずれかによって実行され得る。
【0011】
描かれた実施形態では、
図2に示すように、ステップ106における現在のモーションステップに関する機械加工条件のシミュレーション後、シミュレーション100は、望ましくない結果をもたらし得る、例えば工作機械がその値以上で動作し続けた場合に切削工具、工作機械、またはワークピースへの損傷を生じ得る、1つ以上の動作条件の値を、ステップ108で計算することができる。このような動作条件は、切削力、スピンドルパワー、スピンドルにおける(例えばスピンドル軸受における)半径方向荷重、工具の撓み、工具にかかる曲げモーメント、スピンドルにかかる、もしくはスピンドルの境界面での曲げモーメント、工具ホルダとスピンドルとの境界面での切削トルク、工具の温度、工作機械の軸サーボ(axes servos)のうちの1つ以上への荷重のうちのいずれかを含み得るがこれらに制限されない、工具動作条件および/または工作機械動作条件を含む。このような動作条件は、前述のようにステップ106でシミュレートされた現在のモーションステップの1つ以上の機械加工条件に基づいていてよい。ある実施形態では、動作条件のその後の計算に関する情報が、ステップ108での計算の基礎を形成するように、抽出された関連データと、既存のプログラムとによって、ステップ106でシミュレートされ得る。ステップ108での計算はそれぞれ、シミュレートされている特定のモーションステップのそのようなそれぞれの各動作条件の予測値と考えることができ、本明細書では予測値とも呼ばれる。
【0012】
ステップ110では、シミュレーション100は、現在のモーションステップについて、ステップ108において計算された任意の予測値が、その動作条件に関連する、所定の限界であってよい限界を超えるかどうかを決定する。さらに大まかに言えば、シミュレーション100は、所定の基準に対する1つ以上の予測値の評価が、工具、工作機械、もしくはワークピースに対する損傷を引き起こすかもしくは引き起こし得るかまたは機械加工プロセスの不正確さを引き起こすかもしくは引き起こし得る動作条件などの、望ましくない動作条件を示すかどうかに基づいて、NCプログラムのシミュレーションをそのときの形態で続けるかどうかを、現在のモーションステップについて決定する。このような評価は、例えば、工作機械仕様(例えばパワーおよびトルク限界)、その温度より下で切削工具材料がその機械的強度を維持し得る切削工具の特徴的な温度などであるがこれらに制限されない、1つ以上の駆動軸および切削工具限界に対する背分力限界、ならびにワークピース属性との、予測値の比較であってよい。このような評価は、それぞれの予測値が限界のそれぞれの所定の公差の範囲外であるかどうかを含み得る。
【0013】
現在のモーションステップの予測値が、関連する限界に任意の公差を加えたものに対して許容可能とみなされた場合、シミュレーション100は、ステップ112へ進んでよく、ここでは、シミュレーション100は、すべてのモーションステップが分析されているかどうかを考慮することができ、すべてのモーションステップが分析されていない場合には、次のモーションステップに進み、ステップ106に戻って、次のモーションステップについてステップ106、108、および110を反復することができる。いったんすべてのモーションステップが分析されたら、シミュレーション100は、ステップ112からステップ114へ進み、各モーションステップの予測値を含むデータファイルを作成することができる。このデータファイルは、任意の適切な構造を有し得る。
【0014】
ステップ110において、現在の形態のNCプログラムのシミュレーションを続けるべきではないと決定された場合、NCプログラムの修正が、1つ以上のモーションステップについて必要となり得る。このような修正は、現在のモーションステップについて必要となり得、1つ以上の前のモーションステップについて必要となり得、かつ/または1つ以上の後のモーションステップについて必要となり得る。
【0015】
シミュレーション100は、ステップ116で自動的にNCプログラムに対するそのような修正を作成することができ、破線で示すように、ステップ110からステップ116に進む。例えば、シミュレーション100は、送り速度を落とすことができる。シミュレーション100はその後、シミュレーション100の適切なステップに戻り得る。例えば、ステップ116において、現在のモーションステップより前の1つ以上のモーションステップに影響する修正が実行されなかった場合、シミュレーション100は、ステップ106に進んで、修正された現在のモーションステップから始まるシミュレーションを進めることができる。ステップ116において、現在のモーションステップより前の1つ以上のモーションステップが修正された場合、シミュレーション100は、ステップ106に進んで、例えば最初の修正されたモーションステップなどの適切なモーションステップから始まるシミュレーションを進めることができるか、または、シミュレーション100は、再初期化、データ入力などの、シミュレーションにおける前のステップに進むことができる。シミュレーション100は、ステップ106に進んで、どのモーションステップが修正されたかにかかわらず第1のモーションステップに移ることができる。修正がステップ104での初期化またはデータ入力の変更を必要とした場合、シミュレーション100はステップ104に進むことができる。
【0016】
あるいは、シミュレーション100は、NCプログラムに対する修正を自動的に作成しなくてもよい。その場合、破線で示すようにステップ110からステップ118へと進むシミュレーション100は、シミュレーションを停止させ、現在の形態でのNCプログラムのシミュレーションの継続を続けるべきでないとシミュレーション100が決定したことを示す出力を提供することができる。このような出力は、可聴もしくは視覚的警告、スクリーン上のポップアップ式通知などといった、人が認知できる形態のものであってよく、または、出力の形態に反応するシステムにより使用可能な形態のものであってよい。NCプログラムに対する修正は、プログラマーなどによって作成され得、シミュレーション100は、適切なステップで再始動または再開され得る。
【0017】
あるいは、シミュレーション100は、ステップ110での「はい」に続いて、特定の状況下ではステップ116に進み、他の状況下ではステップ118に進むことができる。
【0018】
ステップ110の後でNCプログラムに対する何らかの修正がある場合、シミュレーション100は、修正されたNCプログラムのすべてまたは一部を、ある時点でシミュレートすることに注意する。描かれたシミュレーション100の実施形態は、予測値がNCプログラムに基づいて計算され得るただ1つの方法であることにも注意する。例えば、ステップ106は、すべてのモーションステップについて実行され、その後、すべてのモーションステップについてステップ108および110が実行されるか、またはすべてのモーションステップについてステップ108が実行されて、それからすべてのモーションステップについてステップ110に進み、所定の限界を超えるすべての条件を報告することができる。
【0019】
図3は、プリプロセスシミュレーション100のステップ108を含み得る実施形態を示す。前述のようなステップ106の後、ステップ120で、切削力および温度が、現在のモーションステップについて計算され得る。ステップ122では、各モーションステップについて、工作機械のパワーおよびトルク限界が、現在のモーションステップのスピンドル回転速度に基づいて計算される。ステップ124では、工具ホルダとスピンドルとの境界面に加えられた曲げモーメントおよびねじりトルクが計算される。これらは、例えば切削工具の計算された荷重およびゲージ長に基づいて、計算され得る。
【0020】
図4は、ステップ108の一環として実行されるステップを含み得る実施形態を示す。切削工具は、本明細書ではフルートとそれぞれが呼ばれる、1つ以上の切削縁を有し得る。切削荷重は、材料と係合される切削縁の部分に沿って、モーションステップにおいて材料に係合する各切削縁に沿って分布する。切削荷重および温度は、各切削縁に沿った小さいセクションを分析することによって計算され得る。このような小さいセクションそれぞれについて、切削荷重および温度が、その小さいセクションのチップ荷重、切削速度、半径方向の係合、切削工具外形、および被削材料特性に基づいて、計算され得る。
図4は、130において、各モーションステップについて、各フルートが分析され得ることを示す。132では、そのような各フルートについて、フルートに沿った小さいセクションそれぞれが分析され得ることが示される。ステップ134では、現在のセクションが切削に関与しているかどうかが決定され得る。関与していない場合、分析は、138によって示される次のセクションに進むことができる。現在のセクションが切削に関与している場合、ステップ136において、そのセクションの、例えばスピンドルの境界面または工具における、温度および力が計算され得る。138で、分析は、現在のフルートの次の小さいセクションに進み、ステップ132に戻って、現在のフルートのすべての小さいセクションが検討されるまで、プロセスを繰り返すことができる。すべての小さいセクションが検討された後、そのフルートの切削力および温度が、ステップ140で計算され記憶され得る。フルートの力は、各セクションについて計算された力の合計であってよい。温度は、フルートの任意のセクションについて計算された最高温度であってよい。あるいは、力が合計され得、温度が、各セクションのループを通る各パスと比較され得る。現在のモーションステップのすべてのフルートが検討されたわけではない場合、分析は、142において現在のモーションステップ中に材料に係合する次のフルートへと進み得る。現在のモーションステップのすべてのフルートが検討された後、力および温度は、そのモーションステップについて144において計算され得る。温度は、モーションステップ中の最大チップ荷重のみに基づいて、またはそれのみについて、計算され得る。現在のモーションステップの温度は、この段落で説明する分析中に計算される最高温度であってよい。あるいは、力が合計され得、温度が各フルートのループを通る各パスと比較され得る。
【0021】
温度の計算は、当技術分野で既知の任意の方法を用いて行われ得る。既知のとおり、いったん剪断および摩擦力が、力の計算から分かると、剪断パワー(shearing power)および摩擦損失(friction power)が、これら2つの力に剪断速度とチップ排出速度(chip flow speed)をそれぞれ掛け合わせることで、計算され得る。剪断面温度は、すべての剪断パワーが熱に変換されるという前提に基づいて計算され得、これは、以下の式に従って行われ得、
【数1】
式中、T
sは剪断面温度であり、
T
rは基準の室温であり、
F
sは剪断力であり、
v
sは剪断速度であり、
bはチップの幅であり、
hはチップの厚さであり、
vは切削速度であり、
ρは被削材料の密度であり、
cは比熱であり、
K
Cは比切削圧力であり、
αはすくい角であり、
φは剪断角度であり、
θは結果として生じる力と剪断面とがなす角度である。
これらのパラメータはすべて、力の計算から得ることができる。いったん剪断面温度が分かったら、工具とチップとの境界面に沿った温度場が計算され得る。
【0022】
図2に戻ると、監視システム200は、監視プロセス200が工作機械上でのワークピースの実時間の実際の工程内機械加工と共に実行され得る点で、本明細書では実時間監視システム200とも呼ばれる。確定されたNCプログラム、およびそのNCプログラムの各モーションステップについて切削工具、工作機械、またはワークピースへの損傷を引き起こすなどの望ましくない結果をもたらさないであろう条件の予測値が、プリプロセスシミュレーション100などから利用可能な場合、実時間監視200は、部品の実際の機械加工と同時に実行され得る。確定されたNCプログラムおよび各モーションステップの予測値が、プリプロセスシミュレーション100の実行に由来するものでなくてもよいことに注意する。
【0023】
モーションステップに関連する予測値がデータ辞書(
図5を参照)に入力され分類され、かつNCプログラムが工作機械(
図5を参照)にロードされた後、202で、工具の現在位置が、工作機械から実時間監視システム200へと受信される。204で、その位置は、その位置をデータ辞書のデータ点と関連付けることによって、データファイルと同期され得る。206で、工作機械から実時間監視システム200に送られる力および温度などの、(工作機械上のセンサーによる測定によって、または例えば曲げモーメントの場合のようにそのようなセンサーに基づく計算によって、得ることができる)予測値に対応する動作条件の実際(実時間)値は、工具の現在位置に対応するモーションステップに関連する予測値と比較され得る。本明細書で使用される、1つの「実際値」および複数の「実際値」は、1つ以上のセンサーに基づいて直接もしくは間接的に感知されるような、またはそれに基づいて計算されるような、工作機械および/または工具についてそれぞれ実際に存在する、切削荷重および温度などであるがこれらに制限されない、動作条件の値を指す。実時間監視システム200は、予測値に対応するこのような実際値を検討する。208で、実時間監視システム200は、特定の実際値すべてが15%などの予測値の動的限界の範囲内にあるかどうかを決定することができる。すべてが範囲内にある場合、210で、実時間監視システム200は、実際の機械加工プロセスが完了したかどうかを検討することができる。実際の機械加工プロセスが完了していない場合、実時間監視システム200は、202に戻り、新しい現在位置を工作機械から得て、シミュレーションを繰り返すことができる。プロセスが完了している場合、実時間監視システム200は、212で終了してよく、すべての測定データは、ログファイルなどの任意の形態で保存され得、これは、同じ部品を後で機械加工するための基準データとして使用され得る、
【0024】
208で、実際値が、動的限界の上限値より高いか、または動的限界の下限値より低いなど、予測値の動的限界の範囲内にないことが決定され得る。動的限界の下限値より低い実際値は、破損するかまたは行方不明の工具などの問題を示すことができ、実時間監視システム200は、ステップ216に進んで、警告および/または警報メッセージを出力することができ、かつ、機械がユーザー入力を待機するのを停止させ得る。
【0025】
実際値のいずれかが動的限界の上限値より高い場合、監視システム200は、ステップ214に進んで、後続の実際値を動的限界の上限値より低くなるように下げることを目的として、工具の送り速度を調節することができる。監視システム200は、スクリーン上のポップアップメッセージなどの警告または通知を提供して、ステップ214で措置が講じられたことを示し得る。監視システム200は次に、ステップ202に進み得る。
【0026】
監視システム200により、動作条件の実際値は、所定の期間にわたりそのときの現在位置についてその動的限界の上限値を超えるか、またはその動的限界の下限値より低くなることができる。例えば、ステップ214での送り速度に対する調節の後、監視システム200は、この一連のものの中で第1の工具の送り速度調節を促した実際値が動的限界の上限値より低くないとしても、所定の期間であってよいある期間にわたり、ループ202−204−206−208−214−202を実行することができる。このような期間中、一実施形態では、監視システム200は、調節を行わなくてもよく、動作条件の実際値が動的限界の上限値より高いか下限値より低いかに関わらず、工具の送り速度への調節を行わずに、ステップ208の後、ステップ202に達する。
【0027】
あるいは、監視システム200は、送り速度に対するそのような調節を自動的に行わなくてもよい。例えば、監視システム200は、ステップ216に進んでよく、スクリーン上のポップアップメッセージなどの警告および/または警報メッセージが出力され得、機械加工プロセスがユーザー入力を待つのを停止させ得る。一実施形態では、監視システム200は、ステップ216で機械加工プロセスを停止させないが、ステップ202に進んでよく、先の段落で説明したのと同じように、動作条件の実際値が、所定の期間にわたりそのときの現在位置についてその動的限界の上限値を超えるか、または動的限界の下限値未満となることを可能にする。
【0028】
図5は、監視システム200の実施形態および工作機械コントローラ300との相互作用を図式的に示す。確定されたNCプログラムは、302で工作機械コントローラ300にロードされ得、工作機械に部品を機械加工させるように実行され得る。NCプログラムのモーションステップに関連する予測値を有するデータファイルが、220でデータ辞書に入力され分類され得る。工作機械が部品を機械加工するように動作すると、工作機械コントローラ300は、222で実時間監視システム200によって受信されたデータを304で送信し得る。このデータは、工具の現在位置および予測値に対応する動作条件の実際値を含み得る。224で、監視システム200は、工作機械コントローラ300から受信された現在の切削工具位置に最も近い点である、データ辞書中のデータ点を検索し得る。現在位置と点との間の距離がステップ226において、シミュレーション100のモーションステップ解像度の範囲内など、公差範囲内にあると決定されたら、マッチング点が見つけられたと考えられる。228で、実時間監視システム200は、実際値、予測値、および閾値範囲対機械加工時間を可視化することができる。(シミュレーション出力比較の例を、以下で説明する
図7Bに示す。)230で、実時間監視システム200は、実際値が動的限界の範囲内にあるかどうかを決定する。実際値が動的限界の上限値を超えるなど、動的限界の範囲内にない場合、232で、コマンドを工作機械コントローラ300に送信して、306で工具の送り速度を調節し、かつ/または警告をセットすることができる。送り速度の変更は、実際値を動的限界の範囲内におさめるよう、特定の動作条件の実際値と予測値との比率に基づいて決定され得る。送り速度の変更は、工作機械コントローラ300によって実施され得、機械加工プロセスは続けることができる。実際値が所定の期間内に、例えば5秒以内に、動的限界の範囲内に入らない場合、所定の期間の満了時に232で与えられるコマンドは、機械加工プロセスを停止させることであってよい。所定の期間は、例えばゼロ秒であってよく、この場合、コマンドが即座に与えられる。実際値が230で動的限界の範囲に入った場合、実時間監視システム200は、それがNCプログラムの終わりにおけるものであったかどうかを234で決定し、そうでない場合にステップ222に戻ることができる。NCプログラムの終わりに到達したら、監視システム200は、236ですべての測定データをファイルとして保存し(ステップ212を参照)、238で停止することができる。
【0029】
現在の切削工具位置とステップ226において検討された最も近いデータ点との間の距離が、シミュレーション100のモーションステップ解像度内など、公差範囲内にない場合、最も近いデータ点は、ステップ226でマッチング点と考えられず、マッチング点が見つからなかったことを示す。マッチング点が226で見つからなかった場合、これは、例えば工具変更コマンドが工作機械コントローラ300によって実行されているか、または、切削工具が切断に関与していないことを意味し得るが、ゼロ出力が240で行われ得、実時間監視システム200が、工作機械コントローラ300へのフィードバックなしで、234に進むことができる。
【0030】
図6は、プリプロセスシミュレーション100によって出力されたデータファイルのデータ構造の実施形態を示す。
図6は、プログラムID、シーケンスナンバー、関連する工具位置、ならびに切削荷重および温度を備えたデータ辞書として整理されたデータを示す。工作機械コントローラ300から実時間監視システム200に送信されたデータ点に対するマッチング点は、検索されるか、または204で参照されるように同期されると、プログラムIDとシーケンスナンバーとをマッチングさせることによって、データ辞書中で検索される。次に、マッチングするデータ点が、現在の切削工具位置に対して最も近い点を見つけることによって得られる。
【0031】
図7Aは、実際の機械加工中の工作機械の切削荷重、スピンドルパワー、および軸荷重など、実際値を監視するために警告限界を設定する先行技術の方法を示す。一定の警告上限が、監視されている特定の動作条件の最大許容値に基づいて設定される。
【0032】
図7Bは、前述した任意の実施形態と共に実行されるか、またはそれらとは完全に別個であってよい、本発明の態様の実施形態を示す。
図7Bには、上限値または上限境界400Uと、下限境界400Lと、を有する動的限界範囲400が示されている。測定された切削荷重は、線402によって表され、横軸が時間を表している。切削工具の各位置には、監視されている荷重についてそれぞれ独自の上限および下限がある。例えば、機械加工プロセス中の工具の実際の位置に対応する点404には、上限404Uおよび下限404Lがある。工具が点404に対応する位置にあるときに荷重が上限404Uの値を超えると、警告の設定または送り速度の低下などの措置が開始される。荷重が404Lを下回ると、このような状態は、工具の破損などの望ましくない状況を示すことができ、措置を講じることができる。工具が点406に対応する位置にある場合、実際の荷重は、点406の下限406Lより高いが、上限406Uより低く、いかなる警告も措置も開始されない。点408は、測定された荷重が動的限界400より高いことを示す。
【0033】
それぞれの各点の上限および下限は、本明細書に記載するシミュレーション実施形態を通じて決定され得る動作条件の予測値に公差をプラスまたはマイナスしたものに基づくなどであるがこれに制限されない、任意の適切な方法で、決定され得る。または、各位置の動作条件の予測値は、任意の他の方法によって決定され得、動的限界範囲と組み合わせて、実際の機械加工の動的限界を設定するのに使用され得る。
図7Bはまた、この実施形態に組み込まれ得るこの実施形態の追加態様である、工作機械、工具ホルダおよび/または工具の動的限界範囲の、将来へのある期間にわたるディスプレイを示す。
【0034】
図8は、開示されたテクノロジーのさまざまな実施形態および態様が活用され得る、動作環境を示す。
図8に示す、機械加工システム800の動作環境は、工作機械802と、工作機械コントローラ804と、システム806と、を含む。動作中、工作機械コントローラ804は、そのプロセッサ808を用いて、そのメモリ810に記憶されたさまざまなプログラム、例えばNCプログラム812および実時間監視プログラムまたはシステム814、を実行することができる。本明細書に記載するように、これは、工作機械コントローラ804がNCプログラム812に基づいて工作機械802の動作を制御する命令を生成し、工作機械802上またはその付近のセンサー(
図8では不図示)によって測定され得る、実際の動作条件などの、工作機械802の動作に関する情報を受信することを含み得る。この情報は、次に、前述したような実時間監視プログラム814によって使用され、動作条件が、工具のそのときの現在位置と一致しているNCプログラム812のモーションステップと関連付けられた所定の許容可能な動的限界範囲外にあることに基づいて、何らかのタイプの措置をとるべきかどうかを決定し得る。その後、措置がとられる場合、実時間監視プログラム814は、その措置を、独立して(例えば、警報をユーザーに提示することによって)、または1つ以上の他のプログラムと組み合わせて(例えば、ハイパーバイザーとして作用し、先に作成された仮想工作機械コントローラ例に対するNCプログラム812の動作を停止させるか、もしくは警報を出すことによって)実行し得る。システム806は、同様に動作することができ、そのプロセッサ816は、そのメモリ818に記憶されたプログラム、例えば、前述したように機能するであろうプリプロセスシミュレーション820を実行する:プリプロセスシミュレーション820はそれ自体が、NCプログラムをシミュレートすることができるか、または、NCシミュレーション822の実行から関連データを抽出することができる。プリプロセスシミュレーション820によって計算された予測値は、実時間監視814に提供され得る、計算された予測値であってよい。
【0035】
図8に示すものなどの動作環境では、描かれたコンポーネントおよびプログラムは、さまざまな例示されたコンポーネントを実行するのに使用され得るさまざまな異なるタイプのハードウェアにおいて、互いにおいて実行され、かつ互いと相互作用され得る。例えば、
図8に示すものなどのプロセッサは、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プログラマブルロジックデバイス(PLD)、プログラマブルロジックコントローラ(PLC)、状態機械、ゲートロジック、別々のハードウェア回路、および本開示全体にわたって記載されるさまざまな機能性を実行するように構成された他の適切なハードウェアを用いて実行され得る。同様に、プリプロセスシミュレーション820または実時間監視プログラム814などのプログラムは、ハイパーバイザーとして作用することに加えて(またはその代わりとして)さまざまな方法でNCプログラムまたはシミュレーションの動作に影響を与える措置をとることができる。例えば、監視プログラムは、並列通信経路を用いて是正措置を実行でき、例えば、実時間監視プログラム814は、NCプログラム812に基づくコマンドをオーバーライドする(例えばシャットダウンするコマンド)か、またはその影響を修正するコマンド(例えば、設定された期間にわたって減速するかもしくは一時停止するコマンド)を、工作機械802へと送信させる。別の代替案として、監視プログラムは、(例えば、シミュレーションプログラム822を、API呼び出しによりそれ自体のコードから呼び出すプリプロセスシミュレーション820によって)別のプログラムの実行をそれ自体の動作に一体化することができ、これにより、一体化されたプログラムの実行に対する直接的な制御が可能になる。監視プログラムによる措置が別のプログラムの動作に影響を及ぼすことを可能にする他のアプローチ(例えば、監視プログラムからのメッセージが、それを実行している装置による割り込みとして扱われる)
も可能である。
【0036】
図8の動作環境に対する変形体も可能である。例えば、
図8は、実時間監視プログラム814およびNCプログラム812の両方が工作機械コントローラ804によって実行されているところを示すが、いくつかの実施形態では、これらのプログラムは、物理的に別々の装置で実行されてよく、実時間監視プログラム814を実行する装置は、工作機械コントローラ804を通じて間接的に、または、工作機械802自体との別個の接続部を介して直接的に、工作機械802に関する情報を受信する。さまざまなプログラムが
図8に示すようなシングルプロセッサシステムではなくマルチプロセッサシステムにおいて実行される実施形態、および例示されるプログラムを記憶するために異なるタイプのメモリ(例えば、光媒体、磁気媒体、RAIDアレイ、取り外し可能なドライブなど)を使用する実施形態など、他の変形体も可能である。したがって、
図8の動作環境および付随する説明は、単に例示的なものとして理解すべきであり、本文書または本開示に全体的もしくは部分的に依存する任意の他の文書によってもたらされる保護に対する制限を含意するものとして扱うべきではない。
【0037】
本開示のさまざまな態様に従って、要素、または要素の任意の部分、または要素の任意の組み合わせが、プロセッサを含む1つ以上の物理的装置を含む「処理システム」で実行され得る。プロセッサの例は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プログラマブルロジックデバイス(PLD)、プログラマブルロジックコントローラ(PLC)、状態機械、ゲートロジック、別個のハードウェア回路、および本開示全体にわたって説明するさまざまな機能性を実行するように構成された他の適切なハードウェアを含む。処理システムにおける1つ以上のプロセッサは、プロセッサが実行可能な命令を実行することができる。ある結果をもたらすために命令を実行する処理システムは、処理システムの1つ以上の構成要素に、単独で、または処理システムの他の構成要素によって実行される他の措置と組み合わせて、その結果を引き起こすであろう措置を実行させる命令を、処理システムの1つ以上の構成要素に与えることなどによって、その結果を引き起こすタスクを実行するように構成された処理システムである。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、またはその他であるかにかかわらず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行のスレッド、プロシージャー、ファンクションなどを意味するものと広く解釈されるものである。ソフトウェアは、コンピュータ可読媒体上に存在し得る。コンピュータ可読媒体は、非一時的なコンピュータ可読媒体であってよい。コンピュータ可読媒体は、例として、磁気記憶装置(例えば、ハードディスク、フロッピーディスク、磁気ストリップ)、光ディスク(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD))、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、レジスター、リムーバブルディスク、ならびにコンピュータによってアクセスおよび読み取りされ得るソフトウェアおよび/または命令を記憶する任意の他の適切な媒体を含む。コンピュータ可読媒体は、処理システムに常駐するか、処理システムの外部にあるか、または、処理システムを含む複数のエンティティーにわたって分布していてよい。コンピュータ可読媒体は、コンピュータプログラム製品において具体化され得る。例として、コンピュータプログラム製品は、パッケージ材料内にコンピュータ可読媒体を含み得る。当業者は、特定の適用およびシステム全体に課される全体的な設計制約に応じて、本開示全体にわたって提示される説明した機能性を最良に実行する方法を認識するであろう。
【0038】
〔明示的な定義〕
「基づく」とは、何かが、「基づく」と示される物によって少なくとも部分的に決定されることを意味する。何かが、ある物によって完全に決定される場合は、その物に「のみ基づく」と記載される。
【0039】
「プロセッサ」は、個別にまたは他の装置と組み合わせて、本開示に記載されるさまざまな機能性を実行するように構成され得る装置を意味する。「プロセッサ」の例は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プログラマブルロジックデバイス(PLD)、プログラマブルロジックコントローラ(PLC)、状態機械、ゲートロジック、および別個のハードウェア回路を含む。語句「処理システム」は、単一の装置に含まれるか、または複数の物理的装置間に分配され得る、1つ以上のプロセッサを指すのに使用される。
【0040】
「命令」は、プロセッサによって実行され得る物理または論理演算を特定するのに使用され得るデータを意味する。命令は、ソフトウェア、ファームウェア、ハードウェア、マイクロコード、またはその他でコード化されているかどうかにかかわらず、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、ダイナミックリンクライブラリ、実行可能ファイル、実行のスレッド、プロシージャー、ファンクション、ハードウェア記述言語、ミドルウェアなどを含むよう、広く解釈すべきである。
【0041】
処理システムが1つ以上の行為を実行するように「構成されている」という表現は、処理システムが行うように「構成されている」特定の行為を実行するのに使用され得る(命令を含み得る)データを、処理システムが含むことを意味する。例えば、マイクロソフト・ワードをコンピュータにインストールするコンピュータ(ある種の「処理システム」)が、そのコンピュータをワードプロセッサとして機能するように「構成する」場合、オペレーティング・システム、およびさまざまな周辺装置(例えば、キーボード、モニターなど)といった他の入力と組み合わせて、マイクロソフト・ワードへの命令を用いてこれを行う。
【0042】
前述した説明は、本発明の例示および説明の目的で提示されている。網羅的とすること、または、本発明を、開示された厳密な形態に制限することは意図していない。「例えば」、「例として」、および「例」などの語句の使用を含むなどして、挙げられた例は、非限定的なものとして解釈される。明らかな改変または変形体が、前記の教示を鑑みれば可能である。実施形態は、本発明の原理およびそれらの実際の適用を最も良く例示し、それによって、当業者がさまざまな実施形態において、さまざまな形で、企図される特定の用途に適するようなさまざまな改変と共に、本発明を利用することを可能にするよう、選択され説明された。限られた数の実施形態のみを詳細に説明しているが、本発明の範囲は、先行する説明に記載するかまたは図面に例示した構成要素の構造および配置の詳細に制限されないことが、理解される。本イノベーションは、さまざまな方法で、さまざまな形で、また他の実施形態において、実施または実行され得る。また、特定の用語を、明瞭化のため使用した。特定の用語はそれぞれ、同様の目的を達成するため同じように動作するすべての技術的等価物を含むことが、理解される。本発明の範囲は、本明細書と共に提出する特許請求の範囲によって定められることが意図されている。
【0043】
〔実施の態様〕
(1) 工作機械の動作を監視する方法において、
実時間で、
a.動作中に前記工作機械が経験する関連する動作条件の少なくとも1つのそれぞれの実際値を決定するステップと、
b.前記少なくとも1つのそれぞれの実際値を前記関連する動作条件に対応するそれぞれの限界と比較するステップと、
を含む、方法。
(2) 実施態様1に記載の方法において、
前記関連する動作条件のうちの少なくとも1つが、工作機械の動作条件を含む、方法。
(3) 実施態様1に記載の方法において、
前記少なくとも1つのそれぞれの実際値のうちの少なくとも1つの前記関連する動作条件は、前記工作機械の工具ホルダにかかる半径方向荷重、前記工具ホルダにかかる曲げモーメント、前記工具ホルダとスピンドルとの境界面での曲げモーメント、前記工作機械のトルク、前記工作機械の1つ以上の軸サーボにかかる荷重、および前記工具の温度からなる群から選択される、方法。
(4) 実施態様1に記載の方法において、
前記工作機械の動作に使用される工具の少なくとも1つのそれぞれの実際の温度値を決定するステップと、前記実際の温度値を前記工具の温度に対応するそれぞれの限界と比較するステップと、を含む、方法。
(5) 実施態様1に記載の方法において、
前記工作機械の動作により、前記工作機械によって運ばれる工具が、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、関連する動作条件の少なくとも1つのそれぞれの実際値を決定するステップ、および少なくとも1つのそれぞれの実際値を決定するステップは、前記複数の連続した工具位置のうち複数について、繰り返される、方法。
【0044】
(6) 実施態様1に記載の方法において、
前記工作機械の動作により、前記工作機械によって運ばれる工具が、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、前記関連する動作条件に対応するそれぞれの限界が、前記工具の前記工具位置によって決まる、方法。
(7) 実施態様1に記載の方法において、
それぞれの限界は、前記関連する動作条件のそれぞれの予測値を含むそれぞれの範囲を含む、方法。
(8) 実施態様7に記載の方法において、
前記工作機械の動作をコンピュータ上でシミュレートすることによって前記それぞれの予測値のうちの少なくとも1つを決定するステップを含む、方法。
(9) 実施態様8に記載の方法において、
動作をシミュレートすることによって前記それぞれの予測値のうちの少なくとも1つを決定するステップは、前記工作機械の実際の動作より前に行われる、方法。
(10) 実施態様8に記載の方法において、
動作をシミュレートすることによって前記それぞれの予測値のうちの少なくとも1つを決定するステップは、前記工作機械の実際の動作が始まった後で行われる、方法。
【0045】
(11) 工作機械の動作を監視する方法において、前記工作機械の動作によって、前記工作機械によって運ばれる工具は、工具経路に沿って移動し、前記工具経路は、複数の連続した工具位置を含み、前記方法は、実時間で、
a.前記複数の連続した工具位置のうちの関連する1つにある間に、動作中に前記工作機械が経験する関連するそれぞれの動作条件の少なくとも1つの実際値を決定するステップと、
b.前記少なくとも1つの実際値を前記関連する動作条件に対応するそれぞれの限界と比較するステップであって、前記それぞれの限界は、前記複数の連続した工具位置のうちの前記関連する1つによって決まる、ステップと、
を含む、方法。
(12) 実施態様11に記載の方法において、
関連する動作条件の少なくとも1つの実際値を決定するステップおよび少なくとも1つの実際値を決定するステップは、前記複数の連続した工具位置のうちの複数について繰り返される、方法。
(13) 実施態様12に記載の方法において、
前記複数の連続した工具位置のうちの少なくとも2つについて対応する関連する動作条件の前記それぞれの限界は等しくない、方法。
(14) 実施態様12に記載の方法において、
それぞれの限界は、前記関連する動作条件のそれぞれの予測値を含むそれぞれの範囲を含む、方法。
(15) 実施態様14に記載の方法において、
前記複数の連続した工具位置のうちの少なくとも2つの前記それぞれの予測値は等しくない、方法。
【0046】
(16) 実施態様14に記載の方法において、
前記工作機械の動作をコンピュータ上でシミュレートすることによって前記それぞれの予測値を決定することを含む、方法。
(17) 工作機械の動作をシミュレートする方法において、
a.NCプログラムに対応する複数のモーションステップの実行をシミュレートするステップと、
b.前記複数のモーションステップの複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記少なくとも1つのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を計算するステップであって、前記シミュレートされた動作条件のうちの少なくとも1つは、シミュレートされた工作機械の動作条件を含む、ステップと、
を含む、方法。
(18) 実施態様17に記載の方法において、
複数のモーションステップの実行をシミュレートするステップは、一度に1つのモーションステップのシーケンスで実行され、少なくとも1つのそれぞれの予測値を計算するステップは、前記シーケンスの次のモーションステップに進む前に前記複数のモーションステップのうちの1つについて実行される、方法。
(19) 実施態様17に記載の方法において、
シミュレートされた各モーションステップについて、そのモーションステップの任意の予測値が、その予測値の前記シミュレートされた動作条件に関連する限界を超えるかどうかを決定するステップを含む、方法。
(20) 実施態様19に記載の方法において、
任意の予測値が前記限界を超えた場合に前記NCプログラムを修正するステップを含む、方法。
【0047】
(21) 実施態様17に記載の方法において、
前記シミュレートされた工作機械の動作条件は、前記工作機械の工具ホルダにかかるシミュレートされた半径方向荷重、前記工具ホルダにかかるシミュレートされた曲げモーメント、前記工具ホルダとスピンドルとの境界面におけるシミュレートされた曲げモーメント、前記工作機械のシミュレートされたトルク、および前記工作機械の1つ以上の軸サーボにかかるシミュレートされた荷重からなる群から選択される、方法。
(22) 機械加工システムにおいて、
a.現実の工作機械であって、複数の連続した工具位置のうちのそれぞれの1つについて、前記複数の連続した工具位置のうちのそのそれぞれの1つでの前記工作機械の動作によって生じる少なくとも1つの動作条件それぞれの少なくとも1つのそれぞれの実際値を、監視システムに提供するように構成されている、現実の工作機械と、
b.コンピュータであって、
i.NCプログラムに対応する複数のモーションステップの実行をモデル化することによって、前記工作機械の動作をシミュレートすることと、
ii.前記複数のモーションステップの複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記少なくとも1つのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を計算することと、
を行うように構成された、コンピュータと、
c.前記監視システムであって、
i.それぞれの実際値を、前記モーションステップに適合する前記工具位置における前記それぞれの実際値の前記動作条件に対応する、前記対応するシミュレートされた動作条件の前記予測値と比較することと、
ii.任意のそれぞれの実際値が前記予測値を含む範囲外にある場合に、前記現実の工作機械にコマンドを送信することと、
を行うように構成された、前記監視システムと、
を含む、機械加工システム。
(23) 実施態様22に記載の機械加工システムにおいて、
前記現実の工作機械は、前記監視システムが送信した前記コマンドの内容に基づいて工具の送り速度を調節するように構成されている、機械加工システム。
(24) 実施態様23に記載の機械加工システムにおいて、
前記監視システムは、前記それぞれの実際値が所定の期間を超えて前記範囲外にある場合に、前記コマンドを送信するように構成されている、機械加工システム。
(25) 機械加工システムにおいて、
a.現実の工作機械であって、
i.ワークピースを機械加工するように少なくとも1つの工具を動作させることと、
ii.動作中に前記工作機械が経験する関連する動作条件の少なくとも1つのそれぞれの実際値を提供することと、
を行うように構成された、現実の工作機械と、
b.前記少なくとも1つのそれぞれの実際値を、前記関連する動作条件に対応するそれぞれの限界と比較するように構成された、監視システムと、
を含む、機械加工システム。
【0048】
(26) 実施態様25に記載の機械加工システムにおいて、
前記工作機械は、工作機械コントローラを含み、前記工作機械コントローラは、前記少なくとも1つのそれぞれの実際値を示すデータを提供するように構成されている、機械加工システム。
(27) 実施態様26に記載の機械加工システムにおいて、
前記工作機械は、前記関連する動作条件の前記それぞれの実際値を感知する少なくとも1つのセンサーを含む、機械加工システム。
(28) 実施態様25に記載の機械加工システムにおいて、
前記監視システムは、前記少なくとも1つのそれぞれの実際値が所定の期間を超えて前記それぞれの限界以内でない場合に、コマンドを前記工作機械コントローラに送信するように構成されている、機械加工システム。
(29) 実施態様28に記載の機械加工システムにおいて、
前記所定の期間はゼロ秒である、機械加工システム。
(30) 実施態様28に記載の機械加工システムにおいて、
前記工作機械コントローラは、前記コマンドに応じて作用するように構成され、前記作用は、前記工具の送り速度の調節、および前記工具の動作の停止からなる群から選択される、機械加工システム。
【0049】
(31) 実施態様25に記載の機械加工システムにおいて、
それぞれの限界は、前記関連する動作条件のそれぞれの予測値を含むそれぞれの範囲を含む、機械加工システム。
(32) 実施態様31に記載の機械加工システムにおいて、
前記工作機械は、工作機械コントローラを含み、前記工作機械コントローラは、NCプログラムを実行して、前記少なくとも1つの工具を工具経路に沿って移動させるように構成され、前記NCプログラムをシミュレートすることによって前記それぞれの予測値を決定するように構成されたコンピュータを含む、機械加工システム。
(33) 機械加工システムにおいて、
a.現実の工作機械であって、複数の連続した工具位置のうちのそれぞれの1つについて、前記複数の連続した工具位置のうちのそのそれぞれの1つでの前記工作機械の動作中に前記工作機械が経験する少なくとも1つの動作条件それぞれの少なくとも1つのそれぞれの実際値を提供するように構成されている、現実の工作機械と、
b.前記少なくとも1つのそれぞれの実際値を前記関連する動作条件に対応するそれぞれの限界と比較するように構成された監視システムであって、前記それぞれの限界が、前記複数の連続した工具位置のうちの関連する1つによって決まる、監視システムと、
を含む、機械加工システム。
(34) 実施態様33に記載の機械加工システムにおいて、
それぞれの限界は、前記関連する動作条件のそれぞれの予測値を含むそれぞれの範囲を含む、機械加工システム。
(35) 実施態様34に記載の機械加工システムにおいて、
ディスプレイを含み、前記ディスプレイは、
a.現在の工具位置で、またその前に前記工作機械が経験した複数の前記少なくとも1つの動作条件の前記実際値と、
b.前記現在の工具位置、前の工具位置、および将来の工具位置の複数の前記それぞれの範囲と、
を含む、機械加工システム。
【0050】
(36) コンピュータを含む機械において、前記コンピュータは、
a.NCプログラムに対応する複数のモーションステップの実行をモデル化することによって工作機械の動作をシミュレートすることと、
b.前記複数のモーションステップの複数のうちのそれぞれの1つに対応する、少なくとも1つのそれぞれのシミュレートされた動作条件について、前記少なくとも1つのそれぞれのシミュレートされた動作条件それぞれの、少なくとも1つのそれぞれの予測値を計算することと、を行うように構成され、前記シミュレートされた動作条件のうちの少なくとも1つは、シミュレートされた工作機械の動作条件を含む、機械。
【図面の簡単な説明】
【0051】
【
図2】本発明の態様のうちの1つによるシミュレーション、および本発明の態様のうちの別のものによる機械加工プロセスの実時間監視方法の流れ図を示す。
【
図3】
図2のプリプロセスシミュレーションの一部であってよい実施形態の流れ図である。
【
図4】
図2のプリプロセスシミュレーションの一部であってよい実施形態の流れ図である。
【
図6】
図1のプリプロセスシミュレーションのデータファイルの例示的なデータ構造の実施形態の表示である。
【
図7A】工作機械、工具ホルダ、または工具の測定された荷重に限界を適用する先行技術方法の概略図である。
【
図8】プロセッサの動作環境の実施形態の概略図である。