(57)【要約】【課題】ＣＮＣ工作機械における加工時間予測において、処理時間を短くすることを可能とする加工時間予測システムを提供する。【解決手段】工作機械で実行するＮＣプログラムを複数に分割して、ＰＣ端末や他の工作機械等の演算手段に転送して、演算手段において分割されたＮＣプログラムの加工時間の演算を行う。これにより、特に加工時間の算出を行うための演算処理装置のハードウェアのリソースが不足している場合などに、他の管理装置や工作機械等と協同して必要な演算を行うことによって、処理時間の短縮を実現することが可能となる。【選択図】図３
2019040311.tif 000002
【特許請求の範囲】
【請求項１】
加工時間を予測する加工時間予測システムであって、
工作機械で実行する加工プログラムを複数に分割する加工プログラム分割手段と、
分割された前記加工プログラムを、少なくとも１つの演算手段に転送する加工プログラム転送手段と、
前記演算手段によって算出された加工時間を受信する加工時間受信手段と、
前記加工時間受信手段で受信された加工時間を積算する加工時間積算手段と、
を有する加工時間予測システム。
【請求項２】
請求項１に記載の加工時間予測システムであって、
前記加工プログラム分割手段は、前記加工プログラムに記載された指令のうち、前記工作機械の全ての軸が停止する指令の位置で前記加工プログラムを分割する加工時間予測システム。
【請求項３】
請求項１に記載の加工時間予測システムであって、
前記加工プログラム分割手段は、前記加工プログラムの分割位置の前後でオーバーラップさせて分割し、
前記加工時間積算手段は、前記加工時間受信手段で受信された加工時間の積算を行った後に、前記オーバーラップさせた部分の加工時間を差し引く加工時間予測システム。
【請求項４】
加工時間を予測する加工時間予測システムに使用可能な工作機械であって、
加工プログラムを複数に分割する加工プログラム分割手段と、
分割された前記加工プログラムを、少なくとも１つの演算手段に転送する加工プログラム転送手段と、
前記演算手段によって算出された加工時間を受信する加工時間受信手段と、
前記加工時間受信手段で受信された加工時間を積算する加工時間積算手段と、
を有する工作機械。
【請求項５】
請求項４に記載の工作機械であって、
前記加工プログラム分割手段は、前記加工プログラムに記載された指令のうち、前記工作機械の全ての軸が停止する指令の位置で前記加工プログラムを分割する工作機械。
【請求項６】
請求項４に記載の工作機械であって、
前記加工プログラム分割手段は、前記加工プログラムの分割位置の前後でオーバーラップさせて分割し、
前記加工時間積算手段は、前記加工時間受信手段で受信された加工時間の積算を行った後に、前記オーバーラップさせた部分の加工時間を差し引く工作機械。
【請求項７】
加工時間を予測する加工時間予測システムに使用可能な管理装置であって、
工作機械で実行する加工プログラムを複数に分割する加工プログラム分割手段と、
分割された前記加工プログラムを、少なくとも１つの演算手段に転送する加工プログラム転送手段と、
前記演算手段によって算出された加工時間を受信する加工時間受信手段と、
前記加工時間受信手段で受信された加工時間を積算する加工時間積算手段と、
を有する管理装置。
【請求項８】
請求項７に記載の管理装置であって、
前記加工プログラム分割手段は、前記加工プログラムに記載された指令のうち、前記工作機械の全ての軸が停止する指令の位置で前記加工プログラムを分割する管理装置。
【請求項９】
請求項７に記載の管理装置であって、
前記加工プログラム分割手段は、前記加工プログラムの分割位置の前後でオーバーラップさせて分割し、
前記加工時間積算手段は、前記加工時間受信手段で受信された加工時間の積算を行った後に、前記オーバーラップさせた部分の加工時間を差し引く管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加工時間予測システムに関し、特に複数のＣＮＣ工作機械で協同して加工時間予測を実行する加工時間予測システムに関する。
【背景技術】
【０００２】
ＮＣプログラムを作成または修正するオペレータは、ＮＣプログラムを作成または修正した際に、ＮＣプログラムによる加工時間の確認を望むことが多い。
そのため、加工前のシミュレーションの１つとして、加工時間予測機能によって、実際に加工に要する時間を予測することが行われている。
【０００３】
加工時間予測を高速に短時間で行うためには、ＣＰＵの高性能な演算性能や十分な量のメモリなど、ハードウェアのリソースが必要とされる。
しかしながら、加工の形状が複雑だったり、作業者が他のアプリケーションを実行して、ＣＰＵやメモリを使用している場合など、ハードウェアのリソースが不足している場合には、加工時間予測をするのに時間がかかったり、実行ができないおそれもある。
【０００４】
特許文献１には、制御装置において、ワークを加工するための加工プログラムを加工工程ごとに分割し、分割された加工工程ごとのサイクルタイム（加工時間）を制御装置で算出して、その結果を表示部に表示する技術が開示されている。
【０００５】
特許文献２には、大量のデータを効率的に計算するために、計算タスクの分散処理を統括するマスターサーバと、当該マスターサーバとネットワークを介して接続され、分散された計算タスクの計算処理を実行する複数のスレーブサーバとを接続し、計算タスクを分散させて処理する分散処理システムに関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−２２７０２８号公報
【特許文献２】特開２００６−１０６８５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に開示されている技術は、ワークの加工プログラムの加工工程ごとのサイクルタイムの算出を行っているが、算出は１台の制御装置のみで行っており、サイクルタイムの算出の目的も、ワークに対して行う加工の順序が適切か否かを作業者が判断するためである。そのため、制御装置のハードウェアのリソースが不足している場合などに、サイクルタイムの算出に時間がかかったりするおそれがある。
【０００８】
特許文献２に開示されている技術は、計算タスクを分割して複数のスレーブサーバに分散させて処理させているが、各スレーブサーバの累積計算量を均等にすることは想定していても、各スレーブサーバの処理能力等を考慮したものではないため、スレーブサーバの状況によっては、計算を適切な時間で行えないおそれがある。
【０００９】
そこで、本発明の目的は、ＣＮＣ工作機械における加工時間予測において、処理時間を短くすることを可能とする加工時間予測システムを提供することにある。
【課題を解決するための手段】
【００１０】
本願の請求項１に係る発明は、加工時間を予測する加工時間予測システムであって、工作機械で実行する加工プログラムを複数に分割する加工プログラム分割手段と、分割された前記加工プログラムを、少なくとも１つの演算手段に転送する加工プログラム転送手段と、前記演算手段によって算出された加工時間を受信する加工時間受信手段と、前記加工時間受信手段で受信された加工時間を積算する加工時間積算手段と、を有する加工時間予測システムが提供される。
【００１１】
請求項１に係る発明では、特に加工時間の算出を行うための演算処理装置のハードウェアのリソースが不足している場合などに、他の管理装置や工作機械等と協同して必要な演算を行うことによって、処理時間の短縮を実現できたり、一部の工作機械に負荷が偏ることを防いで負荷の軽減を行ったり、ネットワーク上のリソースの効率的な使用を実現することが可能となる。
【００１２】
本願の請求項２に係る発明は、請求項１に記載の加工時間予測システムであって、前記加工プログラム分割手段は、前記加工プログラムに記載された指令のうち、前記工作機械の全ての軸が停止する指令の位置で前記加工プログラムを分割する加工時間予測システムが提供される。
請求項２に係る発明では、加工プログラムの分割を、工作機械の全ての軸が停止する指令の位置で行うため、加工プログラムの分割位置の前後の動作の影響を受けずに、確実に全体の加工時間の算出を行うことが可能となる。
【００１３】
本願の請求項３に係る発明は、請求項１に記載の加工時間予測システムであって、前記加工プログラム分割手段は、前記加工プログラムの分割位置の前後でオーバーラップさせて分割し、前記加工時間積算手段は、前記加工時間受信手段で受信された加工時間の積算を行った後に、前記オーバーラップさせた部分の加工時間を差し引く加工時間予測システムが提供される。
請求項３に係る発明では、加工プログラムの分割を、分割位置の前後でオーバーラップさせて分割して、積算時にオーバーラップさせた部分の加工時間を差し引くため、加工プログラムの分割位置の前後の動作の影響を受けることなく、確実に全体の加工時間の算出を行うことが可能となる。
【発明の効果】
【００１４】
本発明により、ＣＮＣ工作機械における加工時間予測において、処理時間を短くすることを可能とする加工時間予測システムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の全体構成を示す模式図である。
【図２】本発明の実施形態における要部ブロック図である。
【図３】本発明の実施形態における演算処理装置の機能ブロック図である。
【図４】本発明の実施形態における処理の流れを説明するフローチャートである。
【図５】図３に示された演算処理装置の機能ブロック図のうち、ＮＣプログラムを分割する場合に用いる機能を抽出した図である。
【図６】図３に示された演算処理装置の機能ブロック図のうち、ＮＣプログラムを分割しない場合に用いる機能を抽出した図である。
【図７】ＮＣプログラムの分割手法について説明するための図である。
【図８】他の工作機械等における加工時間の算出を説明するための図である。
【図９】加工時間の算出結果の一例を示した図である。
【図１０】ＮＣプログラムの分割手法について説明するための図である。
【発明を実施するための形態】
【００１６】
（第１の実施形態）
以下、本発明の実施形態を図面と共に説明する。
本発明の加工時間予測システムは、管理装置であるＰＣなどと、各工作機械から構成される。図１は、本発明の全体構成を示す模式図である。図１に示されているように、本発明の加工時間予測システムは、ネットワーク３００に、ＰＣ４００と、工作機械１（５００ａ）〜工作機械４（５００ｄ）の各工作機械５００が接続されており、互いにＮＣプログラム３２や、各工作機械５００に特有の加減速度等のパラメータ、モーダル情報等の機械状態情報等を転送することが可能である。
【００１７】
図２は、本実施形態における、ＰＣ４００や各工作機械５００内の演算処理装置１００等の要部ブロック図である。演算処理装置１００は、演算処理を行うプロセッサであるＣＰＵ１０と、ＲＡＭやＲＯＭからなるメモリ１２、表示器１４０を制御する表示コントローラ１４、電源スイッチ１６０からのオン・オフ信号により演算処理装置１００の電源をオン・オフ制御する電源コントローラ１６、外部入力機器１８０を制御する入力機器コントローラ１８、ＣＰＵ１０やメモリ１２等のハードウェアのリソースの状態を判定するハードウェアリソース判定手段４０、他の工作機械５００等へプログラムを送信するプログラム送信手段５０、他の工作機械５００等からのプログラムを受信するプログラム受信手段６０、他の工作機械５００で算出された加工時間受信手段７０がバス２０を介して接続される。
【００１８】
メモリ１２は、工作機械の加工用のＮＣプログラム３２や、工作機械ごとの特有の加減速パラメータや、モーダル情報等のパラメータ３４、外部入力機器１８０などにより外部から入力された各種データを格納して記憶しておく記憶手段である。外部入力機器１８０の例としてはキーボードなどがあり、入力機器コントローラ１８により外部入力機器１８０からの入力データが演算処理装置１００に取り込まれる。その他の、ハードウェアリソース判定手段４０、プログラム送信手段５０、プログラム受信手段６０、加工時間受信手段７０の機能については後述する。
【００１９】
図３は、本実施形態における演算処理装置１００の機能ブロック図である。演算処理装置１００は、ハードウェアリソース判定手段４０、送信先決定手段４２、プログラム区分手段４４、プログラム送信手段５０、加工時間受信手段７０、プログラム受信手段６０、加工時間演算手段８０、加工時間送信手段５２、加工時間積算手段９０を備えている。
【００２０】
ハードウェアリソース判定手段４０は、メモリ１２に記憶されているＮＣプログラム３２や各種パラメータ３４を参照して、当該演算処理装置１００が組み込まれているＰＣ４００や各工作機械５００において、演算処理装置１００内のＣＰＵ１０やメモリ１２の動作状況を確認し、当該演算処理装置１００の動作処理にあたっての余裕度を判定する。また、後述するように、他の工作機械におけるハードウェアリソース判定手段４０による当該演算処理装置１００が組み込まれている工作機械５００におけるＣＰＵ１０やメモリ１２の動作状況、動作処理にあたっての余裕度を受信する。
【００２１】
本実施形態においては、ハードウェアリソース判定手段４０において、演算処理装置１００におけるＣＰＵ１０やメモリ１２等のハードウェアのリソースを確認し、オペレータが他の作業を行っているなどして、ハードウェアのリソースに動作処理にあたっての余裕度がないと判定された場合には、他の工作機械５００やＰＣ４００に対して、分割したプログラム及び計算に必要なパラメータを転送して、分割したプログラムについて加工時間の算出をそれぞれの工作機械５００やＰＣ４００において実行する。
【００２２】
以下、これらの処理について詳細に説明する。図４は、本実施形態における処理の流れを説明するフローチャートであり、図５は、図３に示された演算処理装置１００の機能ブロック図のうち、ＮＣプログラム３２を分割する場合に用いる機能を抽出した図であり、図６は、図３に示された演算処理装置１００の機能ブロック図のうち、ＮＣプログラム３２を分割しない場合に用いる機能を抽出した図である。
【００２３】
次に、図４のフローチャートに基づいて、本実施形態の動作をステップごとに説明する。
・（ステップＳＡ１）ハードウェアリソース判定手段４０において、当該工作機械５００の演算処理装置１００において、ＮＣプログラム３２全体の加工時間予測の算出を行うための十分なハードウェアリソースがあるかどうかを判定する。十分なハードウェアリソースがある場合（ＹＥＳ）はステップＳＡ８に進み、ハードウェアリソースが足りない場合（ＮＯ）はステップＳＡ２に進む。
以下のステップＳＡ２からＳＡ７までのハードウェアリソースが足りない場合の例において用いられる機能は、図５に抽出して示されている。
【００２４】
・（ステップＳＡ２）ステップＳＡ１と同様に、他の工作機械５００等におけるハードウェアリソース判定手段において判定された、当該工作機械５００におけるハードウェアリソースの判定結果を受信する。
・（ステップＳＡ３）送信先決定手段４２において、分割した後のプログラムを演算する演算手段としての送信先を決定する。送信先の決定にあたっては、ステップＳＡ２で受信した他の工作機械５００の台数や、他の工作機械５００におけるハードウェアリソース判定手段の判定結果を参照して、プログラムの送信先を決定する。送信先の決定方法としては、他の工作機械５００におけるハードウェアリソースの使用状況が、所定のしきい値を超えている場合には、加工時間予測の算出を行う余裕がないものとして判断し、しきい値を超えていない工作機械の台数でＮＣプログラム３２を均等に分割して送信する。また、工作機械５００ごとのＣＰＵ１０等の処理能力に応じて、分割するプログラムの量の比率を変更して送信することもできる。
【００２５】
・（ステップＳＡ４）プログラム区分手段４４において、プログラムを分割する。具体的には、送信先決定手段４２において、他の工作機械５００におけるハードウェアリソースの使用状況がしきい値を超えていない工作機械の台数に合わせた数にプログラムを分割してもよいし、送信先の工作機械の台数に無関係に、プログラムの分割可能な点においてプログラムを分割するようにしてもよい。後者の場合には、プログラムの分割後に、分割したプログラムを送信先の工作機械に合わせてまとめる処理が必要となる。また、分割したプログラムは、すべて他の工作機械に送信するようにしてもよいし、一部送信せずに当該演算処理装置内で計算するようにしてもよい。プログラムの分割処理の詳細については後述する。
・（ステップＳＡ５）送信先決定手段４２で決定されたプログラムの送信先に、プログラム区分手段４４において分割されたＮＣプログラム３２、及び、ＮＣプログラム３２の加工時間の算出に必要なパラメータ３４を送信する。送信後の他の工作機械５００におけるＮＣプログラム３２の加工時間の算出については後述する。
【００２６】
・（ステップＳＡ６）プログラム区分手段４４において、一部のＮＣプログラム３２を送信せずに当該演算処理装置内で計算する場合に、加工時間演算手段８０において送信しなかったＮＣプログラム３２の加工時間を算出する。
・（ステップＳＡ７）加工時間受信手段７０において、他の工作機械５００において算出されたＮＣプログラム３２の加工時間を受信する。
・（ステップＳＡ８）ＮＣプログラム３２を分割することなく加工時間の算出が可能であるため、加工時間演算手段８０において、ＮＣプログラム３２全体の加工時間を算出する。
・（ステップＳＡ９）加工時間積算手段９０において、当該演算処理装置内で演算された加工時間、及び、他の工作機械５００において算出された加工時間を積算する。
【００２７】
ＮＣプログラムの加工時間の算出にあたっては、従来から行われている一般的な算出方法を用いることができる。一般的な加工においては、加工長さと加工速度の関係から加工時間を算出し、さらに時定数パラメータを用いて立ち上がり、立ち下がり時の時間を加算して全体の加工時間を算出することができる。また、他の手法としては、工具経路を細かい切片であるセグメントに分割した上で、セグメントごとにセグメントの長さや、セグメント内の工具の移動速度を用いて、加工時間の算出及び積算を行って算出することもできる。また、分割されたＮＣプログラムが補助機能の場合には、あらかじめテーブル形式などで当該補助機能にかかる時間を記憶しておき、かかるデータを読み出すことによって時間を算出することもできる。
【００２８】
図７は、ＮＣプログラム３２の分割手法について説明するための図である。プログラム区分手段４４は、メモリ１２から読み込まれたＮＣプログラム３２をブロック毎に処理し、「区間分割条件」を判別して複数のブロック毎の区間に区切る処理を行う。
ここで、「区間分割条件」の判別にあたっては、まずＮＣプログラムにおける各区間を区分けするために、補助コードを含むブロックや、サブプログラム呼び出しといった命令を先頭に持つブロックに分け、その上で、ＴコードやＭコードの工具交換が必要とされるコード部分や、ドゥエル指令など全軸が停止する指令を本実施形態における「区間分割条件」として、かかる箇所においてＮＣプログラムを分割する。
【００２９】
プログラム区分手段４４では、これらの区間分割条件を満たす箇所すべてでＮＣプログラム３２を分割するようにしてもよいし、送信先決定手段４２で判定された送信先の台数等を考慮して、分割する箇所の数や、分割されたブロックのプログラムの分量を変更するようにすることもできる。
【００３０】
図８は、図４のフローチャートにおけるステップＳＡ６において、送信先決定手段４２で決定された他の工作機械５００等のプログラムの送信先における加工時間の算出を説明するための図である。基本的な構成は図３に示された演算処理装置１００の機能ブロック図と同様であり、分割されたＮＣプログラム３２の加工時間の算出に用いる機能を抽出している。
プログラム受信手段６０において、他の工作機械５００等から送信されてきた、分割されたＮＣプログラム３２を受信する。受信されたＮＣプログラム３２は、加工時間演算手段８０に送られ、送られてきた分割されたＮＣプログラム３２における加工時間を演算して、加工時間送信手段５２に送り、加工時間送信手段５２は、送信元の他の工作機械５００等に加工時間を送信する。
【００３１】
このように、分割されたＮＣプログラム３２は各工作機械５００等において加工時間の演算を行い、演算された加工時間を、送信元の加工時間受信手段７０において、他の工作機械５００において算出された加工時間を受信して集約し、加工時間積算手段９０において、当該演算処理装置内で演算された加工時間、及び、他の工作機械５００において算出された加工時間を積算することで、全体の加工時間を算出する。図９は、加工時間の算出結果の一例を示した図であり、ＮＣプログラム３２を４つの部分に区分して、各工作機械５００において加工時間の算出を行った後、加工時間の積算を行うことで合計の加工時間が７分として算出されている。
【００３２】
なお、ＮＣプログラム３２を分割して加工時間を算出する場合、ＮＣプログラム３２全体で加工時間を算出する場合と比較して、分割前後の箇所等で処理にかかる時間に差が生じる場合もあるが、本実施例の説明においては、本発明の特徴をわかりやすくするために、その差による影響はないものとして説明を行っている。
【００３３】
（第２の実施形態）
次に、図１０に基づいて、本実施形態を説明する。本実施形態においては、先の実施形態と基本的な構成は同様であるが、ＮＣプログラム３２の分割方法の点で異なっている。先の実施形態においては、ＮＣプログラム３２の工具交換部分や、ドゥエル指令の位置など、全軸が停止する部分でプログラムの分割を行っていたが、本実施形態においては、図１０に示されているように、分割にあたって、分割箇所の前後を一部オーバーラップさせて分割している。
【００３４】
図１０の区間２と区間３との間に見られるように、区間の分割箇所としては、Ｇ００やＧ０１などの補間方法が切り替わる部分においてオーバーラップさせて分割する。分割されたＮＣプログラム３２を他の工作機械５００等に送信して演算を行う点については、先の実施形態と同一である。分割して加工時間を算出した後、演算された加工時間を、送信元の加工時間受信手段７０において、他の工作機械５００において算出された加工時間を受信して集約し、加工時間積算手段９０において、当該演算処理装置内で演算された加工時間、及び、他の工作機械５００において算出された加工時間を積算した後、オーバーラップ分については削除することによって、全体の加工時間を算出する。オーバーラップ分の加工時間の計算においては、オーバーラップした箇所における加工距離及び加工速度から算出することが可能である。
【００３５】
なお、これらの実施形態の説明においては、一の工作機械５００におけるＮＣプログラム３２が当該工作機械５００の演算処理装置１００において、ハードウェアのリソースが不足している場合に、ＮＣプログラム３２を分割して、ハードウェアリソースの使用状況がしきい値を超えていない他の工作機械５００に分割したＮＣプログラム３２を送信する例で説明してきたが、これに限ったものではない。これらの実施形態においては、分割されたＮＣプログラム３２は、他の複数の工作機械５００に送信する例で説明しているが、演算手段としての送信先として、例えば処理能力の高い他の１台の工作機械５００や、ＰＣ４００等の管理装置に、ＮＣプログラム３２を分割することなく一括して送信して加工時間の算出を行ったり、分割数を２にして、当該工作機械５００と他の１台の工作機械５００の２台によって、加工時間の算出を行うようにしてもよい。
【００３６】
また、他の工作機械５００のハードウェアリソースの使用状況がしきい値を超えているかどうかの判定は、他の工作機械５００自身の演算処理装置内のハードウェアリソース判定手段４０において行っているが、ＮＣプログラム３２を送信する側の工作機械５００によって、他の工作機械５００のハードウェアリソースを判定したり、ネットワーク３００上に接続されたＰＣ４００等の管理装置によって判定したりするようにしてもよい。
【００３７】
さらに、ＮＣプログラム３２の加工時間の予測を行いたい工作機械５００においてハードウェアリソースが不足しているか否かの判定や、その後のＮＣプログラム３２の分割、他の工作機械５００への分割したプログラムの転送、加工時間を算出した後の加工時間の積算処理等を、工作機械５００で行うことに代えて、ＰＣ４００等の管理装置において行うようにしてもよい。
【符号の説明】
【００３８】
１０  ＣＰＵ
１２  メモリ
１４  表示コントローラ
１６  電源コントローラ
１８  入力機器コントローラ
２０  バス
３２  ＮＣプログラム
３４  パラメータ
４０  ハードウェアリソース判定手段
４２  送信先決定手段
４４  プログラム区分手段
５０  プログラム送信手段
５２  加工時間送信手段
６０  プログラム受信手段
７０  加工時間受信手段
８０  加工時間演算手段
９０  加工時間積算手段
１００  演算処理装置
１４０  表示器
１６０  電源スイッチ
１８０  外部入力機器
３００  ネットワーク
４００  ＰＣ
５００  工作機械
【図１】
2019040311.tif 000003
【図２】
2019040311.tif 000004
【図３】
2019040311.tif 000005
【図４】
2019040311.tif 000006
【図５】
2019040311.tif 000007
【図６】
2019040311.tif 000008
【図７】
2019040311.tif 000009
【図８】
2019040311.tif 000010
【図９】
2019040311.tif 000011
【図１０】
2019040311.tif 000012