(57)【要約】【課題】複数の加工ユニットを備える工作機械で複数のワークの同時加工を行う際に、同期制御を行うことなく、加工ユニット間の干渉を回避することができる数値制御装置を提供する。【解決手段】数値制御装置１００は、２つの加工ユニットが互いに同期をとらずに同一方向に同時に動作を開始した後、２つの加工ユニット間の遅延時間を監視する監視部１１４と、遅延時間が所定時間を越えたか否かを判定する判定部１１５と、遅延時間が所定時間を越えた場合に、２つの加工ユニットのうちの一方の加工ユニットを停止させる制御部１１２とを備える。【選択図】図４
2018101338.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの加工ユニットを備える工作機械で少なくとも２つのワークの同時加工を行うための数値制御装置であって、
前記２つの加工ユニットが互いに同期をとらずに同一方向に同時に動作を開始した後、前記２つの加工ユニット間の遅延時間を監視する監視部と、
前記遅延時間が所定時間を越えたか否かを判定する判定部と、
前記遅延時間が所定時間を越えた場合に、前記２つの加工ユニットのうちの一方の加工ユニットを停止させるか、又は、前記一方の加工ユニットの速度を変更する制御部と、を備える数値制御装置。
【請求項２】
前記２つの加工ユニットの許容相対距離と指令速度とに基づいて、前記所定時間を算出する基準算出部をさらに備え、
前記許容相対距離は、前記２つの加工ユニットが衝突しないために必要な相対距離であり、許容可能な前記２つの加工ユニットの接近距離である、請求項１に記載の数値制御装置。
【請求項３】
前記遅延時間は、前記２つの加工ユニットが同一ブロックの終点に到達する終点到達時間の差である、請求項１又は２に記載の数値制御装置。
【請求項４】
前記監視部は、ブロックの中間点において一定時間間隔で設定された１以上のチェックポイントにおいて、前記遅延時間を監視し、
前記遅延時間は、同一チェックポイントにおける前記２つの加工ユニットの到達距離の差と指令速度とに基づく到達時間の差である、請求項１又は２に記載の数値制御装置。
【請求項５】
前記監視部は、常時、前記遅延時間を監視し、
前記遅延時間は、前記２つの加工ユニットの同一ブロックの終点までの残りの距離と指令速度とに基づく遅延時間である、請求項１又は２に記載の数値制御装置。
【請求項６】
前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記ブロックの終点に先に到達した前記一方の加工ユニットを停止させる、請求項３に記載の数値制御装置。
【請求項７】
前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記到達距離が大きい前記一方の加工ユニットの速度を減速するか、又は、前記到達距離が小さい前記一方の加工ユニットの速度を加速する、請求項４に記載の数値制御装置。
【請求項８】
前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記残りの距離が小さい前記一方の加工ユニットの速度を減速するか、又は、前記残りの距離が大きい前記一方の加工ユニットの速度を加速する、請求項５に記載の数値制御装置。
【請求項９】
監視対象のブロックが切削加工であり、かつ、次のブロックが切削加工である場合、前記制御部は、前記一方の加工ユニットを停止させるか否かを選択可能である、請求項６に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の加工ユニット間の干渉を回避する機能を有する数値制御装置に関する。
【背景技術】
【０００２】
例えばツインスピンドル加工機のように、工具を備える複数のヘッドと、ワークを搭載する複数のテーブルとを備え、複数のワークを同時に加工する工作機械がある。このような工作機械では、加工ユニットである複数のヘッド（又は複数のテーブル）の送り軸（例えばＸ軸）がこの送り軸方向に並置され、並置された送り軸の可動領域が重なることがある。このように並置された送り軸方向において複数の加工ユニットが衝突（干渉）しないように制御する技術として同期制御がある。
【０００３】
特許文献１は、複数の加工ユニットを同期制御する数値制御装置を開示している。この数値制御装置は、加工ユニット間の相対距離を同期距離に保ちながら複数の加工ユニットを移動させることにより、加工ユニットの衝突を回避する。
【０００４】
また、特許文献２及び３は、同期制御ではないが、共通経路上の２つの可動体を同時制御する数値制御装置を開示している。この数値制御装置は、共通の移動経路に沿って互いに接近離間する方向に移動可能な２つの可動体を個別の数値制御プログラムに従ってそれぞれ送り制御する。この数値制御装置は、２つの可動体のうちのいずれかの移動許容範囲を縮小することにより、可動体の干渉を回避する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−３２０７１４号公報
【特許文献２】特開平１１−２４２５１１号公報
【特許文献３】特開２００２−３２８７１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
同期制御では、スレーブ軸をマスタ軸の動きに合わせて動作させるため、マスタ軸とスレーブ軸とのそれぞれに個別に工具補正（工具位置補正、工具長補正、工具径補正等）を行ったり、個別にワーク座標系を用いたりすることができない。
【０００７】
この点に関し、特許文献２及び３に記載のように、同期制御を使用せず、各加工ユニットを独立して制御することが考えられる。しかし、特許文献２及び３に開示の装置では、可動体の干渉を回避するために２つの可動体のうちのいずれかの移動許容範囲を縮小する必要があり、複数のワークを同時に加工する用途には不向きである。
【０００８】
本発明は、複数の加工ユニットを備える工作機械で複数のワークの同時加工を行う際に、同期制御を行うことなく、加工ユニット間の干渉を回避することができる数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る数値制御装置（例えば、後述の数値制御装置１００）は、少なくとも２つの加工ユニットを備える工作機械で少なくとも２つのワークの同時加工を行うための数値制御装置であって、前記２つの加工ユニットが互いに同期をとらずに同一方向に同時に動作を開始した後、前記２つの加工ユニット間の遅延時間を監視する監視部（例えば、後述の監視部１１４）と、前記遅延時間が所定時間を越えたか否かを判定する判定部（例えば、後述の判定部１１５）と、前記遅延時間が所定時間を越えた場合に、前記２つの加工ユニットのうちの一方の加工ユニットを停止させるか、又は、前記一方の加工ユニットの速度を変更する制御部（例えば、後述の制御部１１２）と、を備える。
【００１０】
前記数値制御装置は、前記２つの加工ユニットの許容相対距離と指令速度とに基づいて、前記所定時間を算出する基準算出部（例えば、後述の基準算出部１１３）をさらに備えてもよく、前記許容相対距離は、前記２つの加工ユニットが衝突しないために必要な相対距離であり、許容可能な前記２つの加工ユニットの接近距離であってもよい。
【００１１】
前記遅延時間は、前記２つの加工ユニットが同一ブロックの終点に到達する終点到達時間の差であってもよい。
【００１２】
また、前記監視部は、ブロックの中間点において一定時間間隔で設定された１以上のチェックポイントにおいて、前記遅延時間を監視してもよく、前記遅延時間は、同一チェックポイントにおける前記２つの加工ユニットの到達距離の差と指令速度とに基づく到達時間の差であってもよい。
【００１３】
また、前記監視部は、常時、前記遅延時間を監視してもよく、前記遅延時間は、前記２つの加工ユニットの同一ブロックの終点までの残りの距離と指令速度とに基づく遅延時間であってもよい。
【００１４】
前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記ブロックの終点に先に到達した前記一方の加工ユニットを停止させてもよい。
【００１５】
また、前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記到達距離が大きい前記一方の加工ユニットの速度を減速してもよいし、又は、前記到達距離が小さい前記一方の加工ユニットの速度を加速してもよい。
【００１６】
また、前記制御部は、前記遅延時間が前記所定時間を越えた場合に、前記残りの距離が小さい前記一方の加工ユニットの速度を減速してもよいし、又は、前記残りの距離が大きい前記一方の加工ユニットの速度を加速してもよい。
【００１７】
また、監視対象のブロックが切削加工であり、かつ、次のブロックが切削加工である場合、前記制御部は、前記一方の加工ユニットを停止させるか否かを選択可能であってもよい。
【発明の効果】
【００１８】
本発明によれば、複数の加工ユニットを備える工作機械で複数のワークの同時加工を行う際に、同期制御を行うことなく、加工ユニット間の干渉を回避することができる数値制御装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に係る加工システムの工作機械における加工ユニットを示す概略図である。
【図２】２系統の加工ユニットが干渉する様子を示す模式図である。
【図３】本発明の第１実施形態に係る制御システムの構成を示す図である。
【図４】本発明の第１実施形態に係る数値制御装置の構成を示す図である。
【図５】第１実施形態に係る数値制御装置による動作を示すフローチャートである。
【図６】第１実施形態に係る数値制御装置による加工ユニット間の干渉回避動作を示す模式図である。
【図７】本発明の第２実施形態に係る数値制御装置による加工ユニット間の干渉回避動作（指令速度の変更前）を示すフローチャートである。
【図８】本発明の第２実施形態に係る数値制御装置による加工ユニット間の干渉回避動作（指令速度の変更後）を示すフローチャートである。
【図９】第２実施形態に係る数値制御装置による加工ユニット間の干渉回避動作を示す模式図である。
【図１０】本発明の第３実施形態に係る数値制御装置による加工ユニット間の干渉回避動作（指令速度の変更前）を示すフローチャートである。
【図１１】本発明の第３実施形態に係る数値制御装置による加工ユニット間の干渉回避動作（指令速度の変更後）を示すフローチャートである。
【図１２】第３実施形態に係る数値制御装置による加工ユニット間の干渉回避動作を示す模式図である。
【発明を実施するための形態】
【００２０】
以下、添付の図面を参照して本発明の実施形態の一例について説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【００２１】
まず、本発明の実施形態に係る数値制御装置が制御する工作機械について説明する。図１は、本発明の実施形態に係る加工システムの工作機械における加工ユニットを示す概略図である。本実施形態の工作機械２００は、ツインスピンドル加工機であり、２系統の加工ユニット３１０，３２０を備える。第１系統の加工ユニット３１０は、工具ＴＬを備えるヘッド３１１と、ワークＷを搭載するテーブル３１２とを備える。同様に、第２系統の加工ユニット３２０は、工具ＴＬを備えるヘッド３２１と、ワークＷを搭載するテーブル３２２とを備える。
【００２２】
工作機械２００は、２つの工具ＴＬを回転駆動することにより、２つのワークＷを同時に切削加工することができる。また、工作機械２００は、ヘッド３１１，３２１を送り軸（例えば、Ｘ軸、Ｙ軸及びＺ軸）方向に移動することができる。なお、テーブル３１２，３２２は固定されている。
【００２３】
加工ユニット３１０，３２０は、Ｘ軸方向に並んで配置されている。そのため、ヘッド３１１，３２１は、Ｘ軸方向において衝突（干渉）する可能性がある。図２は、２系統の加工ユニット３１０，３２０が干渉する様子を示す模式図である。図２に示すように、加工ユニット３１０におけるヘッド３１１のＸ軸方向の可動範囲Ｘ１と、加工ユニット３２０におけるヘッド３２１のＸ軸方向の可動範囲Ｘ２とが重なることがある。この場合、ヘッド３１１，３２１を同一の指令速度で駆動制御したとしても、これらの実速度が異なることがあり、その結果、時刻ｔから所定時間αだけ経過したときに、ヘッド３１１，３２１同士、すなわち加工ユニット３１０，３２０同士が衝突（干渉）する可能性がある。
【００２４】
加工ユニット３１０，３２０同士の干渉を回避する技術として同期制御技術がある。しかし、同期制御では、スレーブ軸をマスタ軸の動きに合わせて動作させるため、マスタ軸とスレーブ軸とのそれぞれに個別に工具補正（工具位置補正、工具長補正、工具径補正等）を行ったり、個別にワーク座標系を用いたりすることができない。そこで、本発明は、同期制御を行うことなく、加工ユニット間の干渉３１０，３２０を回避する。
【００２５】
（第１実施形態）
図３は、本発明の第１実施形態に係る加工システムの構成を示す図である。この加工システム１は、数値制御装置１００と工作機械２００とを備える。
【００２６】
上述したように、工作機械２００は例えばツインスピンドル加工機であり、２系統の加工ユニット３１０，３２０を備える。また、工作機械２００は、第１系統の加工ユニット３１０を各送り軸方向に移動させるためのＸ軸サーボモータ２１１、Ｙ軸サーボモータ２１２及びＺ軸サーボモータ２１３と、回転駆動のためのスピンドルモータ２１４とを備える。また、工作機械２００は、第２系統の加工ユニット３２０を各送り軸方向に移動させるためのＸ軸サーボモータ２２１、Ｙ軸サーボモータ２２２及びＺ軸サーボモータ２２３と、回転駆動のためのスピンドルモータ２２４とを備える。
【００２７】
Ｘ軸サーボモータ２１１は速度検出器を備え、第１速度フィードバック値（図３及び後述の図４では「第１速度ＦＢ」と記載）を数値制御装置１００に供給する。同様に、Ｘ軸サーボモータ２２１は速度検出器を備え、第２速度フィードバック値（図３及び後述の図４では「第２速度ＦＢ」と記載）を数値制御装置１００に供給する。同様に、その他のサーボモータ２１２〜２１３，２２２〜２２３も速度フィードバック値を数値制御装置１００に供給する。
【００２８】
加工ユニット３１０は位置検出器を備え、第１位置フィードバック値（図３及び後述の図４では「第１位置ＦＢ」と記載）を数値制御装置１００に供給する。同様に、加工ユニット３２０は位置検出器を備え、第２位置フィードバック値（図３及び後述の図４では「第２位置ＦＢ」と記載）を数値制御装置１００に供給する。
【００２９】
数値制御装置１００は、工作機械２００における各モータ２１１〜２１４，２２１〜２２４の駆動制御を行う。数値制御装置１００は、数値制御部１１０を備える。また、数値制御装置１００は、第１系統の各軸サーボモータ２１１〜２１３を駆動制御するＸ軸サーボ制御部１２１、Ｙ軸サーボ制御部１２２及びＺ軸サーボ制御部１２３と、第１系統のスピンドルモータ２１４を回転制御するスピンドル制御部１２４とを備える。また、数値制御装置１００は、第２系統の各軸サーボモータ２２１〜２２３を駆動制御するＸ軸サーボ制御部１３１、Ｙ軸サーボ制御部１３２及びＺ軸サーボ制御部１３３と、第２系統のスピンドルモータ２２４を回転制御するスピンドル制御部１３４とを備える。以下、数値制御装置１００を詳細に説明する。
【００３０】
図４は、数値制御装置１００の構成を示す図である。図４では、図３に示すＹ軸サーボ制御部１２２、Ｚ軸サーボ制御部１２３、スピンドル制御部１２４、Ｙ軸サーボ制御部１３２、Ｚ軸サーボ制御部１３３、スピンドル制御部１３４を省略している。以下では、本発明の特徴に関するＸ軸方向の移動制御について説明するが、Ｙ軸方向及びＺ軸方向の移動制御についても同様である。
【００３１】
この数値制御装置１００における数値制御部１１０は、記憶部１１１と、制御部１１２と、基準算出部１１３と、監視部１１４と、判定部１１５とを備える。
【００３２】
記憶部１１１は、外部から入力された加工プログラムを格納する。また、記憶部１１１は、外部から入力された許容相対距離Ｄｒを格納する。許容相対距離Ｄｒは、２系統の加工ユニット３１０,３２０のＸ軸方向の中心間の相対距離であって、加工ユニット３１０,３２０が衝突しないために必要な相対距離、換言すれば、許容できる加工ユニット３１０,３２０の接近距離である。記憶部１１１は、例えばＥＥＰＲＯＭ等の書き換え可能なメモリである。また、記憶部１１１は、数値制御部１１０の各種機能を実現するための所定のソフトウェア（プログラム）を格納する。
【００３３】
制御部１１２は、記憶部１１１に格納された加工プログラムから、系統ごとにかつ１ブロックごとに、動作指令（例えば、早送り又は切削加工）と、各軸移動量Ｍと、指令速度Ｆとを読み出す。制御部１１２は、各軸移動量Ｍに基づいて、分配周期ごとの各軸の分配移動量を求める。また、制御部１１２は、指令速度Ｆに基づいて、出力のための指令速度ｖを求める。
【００３４】
制御部１１２は、必要に応じて、指令速度ｖにオーバライドを乗算して、指令速度ｖを変更する。また、制御部１１２は、必要に応じて、各軸移動量Ｍの工具補正（工具位置補正、工具長補正、工具径補正等）を行う。また、制御部１１２は、必要に応じて、第１位置フィードバック値及び第２位置フィードバック値とワーク座標系とに基づいて、各加工ユニット３１０，３２０の現在位置を監視する。
【００３５】
制御部１１２は、系統ごとに、分配移動量と指令速度ｖとを移動指令値としてＸ軸サーボ制御部１２１，１３１に出力する。本実施形態では、２つのワークＷに同時に同一の切削加工を行うため、２つの系統の移動指令値は同一である。また、制御部１１２は、後述する判定部１１５の判定結果に基づいて、Ｘ軸サーボ制御部１２１，１３１への移動指令値の出力開始及び出力停止を制御する。
【００３６】
Ｘ軸サーボ制御部１２１は、この移動指令値と、第１速度フィードバック値と、第１位置フィードバック値とに基づいて、Ｘ軸サーボモータ２１１を駆動制御する。同様に、Ｘ軸サーボ制御部１３１は、この移動指令値と、第２速度フィードバック値と、第２位置フィードバック値とに基づいて、Ｘ軸サーボモータ２２１を駆動制御する。
【００３７】
基準算出部１１３は、記憶部１１１に格納された許容相対距離Ｄｒを取得すると共に、制御部１１２から指令速度ｖを取得する。基準算出部１１３は、これらの許容相対距離Ｄｒと指令速度ｖとに基づいて、下記（１）式より許容遅延時間Ｔｑを算出する。
Ｔｑ＝Ｄｒ／ｖ  ・・・（１）
この許容遅延時間Ｔｑは、加工ユニット３１０,３２０が衝突しないために必要な遅延時間、換言すれば、許容できる遅延時間であり、加工ユニット３１０，３２０間の干渉を判定するための加工ユニット３１０，３２０間の遅延時間である。
【００３８】
監視部１１４は、２系統の加工ユニット３１０，３２０が互いに同期をとらずにＸ軸方向に同時に動作を開始してから、各加工ユニット３１０，３２０がブロックの終点に到達する終点到達時間を取得し、各終点到達時間の差ΔＴを監視する。例えば、監視部１１４は、移動量Ｍと、第１速度フィードバック値（実速度）又は第２速度フィードバック値（実速度）とに基づいて、系統ごとに、すなわち加工ユニット３１０，３２０ごとに終点到達時間を求め、これらの終点到達時間の差ΔＴを求める。
【００３９】
判定部１１５は、終点到達時間の差ΔＴが許容遅延時間Ｔｑ以下であるか否かの判定を行う。ΔＴ≦Ｔｑである場合、制御部１１２は、ブロックの終点に到達次第、次のブロックの各系統への分配移動量の出力を開始する。一方、ΔＴ＞Ｔｑである場合、制御部１１２は、ブロックの終点に先に到達した系統の加工ユニットへの分配移動量の出力を停止する。これにより、制御部１１は、ブロックの終点に先に到達した系統の加工ユニットを停止させ、待ち合わせを行わせる。
【００４０】
制御部１１２、基準算出部１１３、監視部１１４及び判定部１１５は、例えば、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の演算プロセッサで構成される。これらの機能は、記憶部１１１に格納された所定のソフトウェア（プログラム）を実行することで実現される。これらの機能は、ハードウェアとソフトウェアとの協働で実現されてもよいし、ハードウェア（電子回路）のみで実現されてもよい。
【００４１】
次に、数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作を説明する。図５は、数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作を示すフローチャートである。
【００４２】
まず、数値制御装置１００の数値制御部１１０における制御部１１２は、記憶部１１１に格納された加工プログラムから、系統ごとにかつ１ブロックごとに、動作指令（例えば、早送り又は切削加工）と、各軸移動量Ｍと、指令速度Ｆとを読み出す。制御部１１２は、各軸移動量Ｍに基づいて、分配周期ごとの各軸の分配移動量を求め、また、指令速度Ｆに基づいて、出力のための指令速度ｖを求める。制御部１１２は、系統ごとに、分配移動量と指令速度ｖとを移動指令値としてＸ軸サーボ制御部１２１，１３１に出力する。これにより、２系統の加工ユニット３１０，３２０が互いに同期をとらずにＸ軸方向に同時に動作を開始する。
【００４３】
このとき、基準算出部１１３は、記憶部１１１に格納された許容相対距離Ｄｒを取得し、この許容相対距離Ｄｒと指令速度ｖとに基づいて上記（１）式より許容遅延時間Ｔｑを算出する（Ｓ１１）。なお、許容遅延時間Ｔｑの算出は、ブロックごとではなく、早送り処理と切削加工処理との両方について予め行われてもよい。
【００４４】
次に、監視部１１４は、監視対象の同一ブロックにおける各系統の加工ユニット３１０，３２０の終点到達時間の差を監視する。例えば、監視部１１４は、移動量Ｍと、第１速度フィードバック値（実速度）又は第２速度フィードバック値（実速度）とに基づいて、系統ごとに、すなわち加工ユニット３１０，３２０ごとに終点到達時間を求め、これらの終点到達時間の差ΔＴを求める（Ｓ１２）。
【００４５】
次に、判定部１１５は、終点到達時間の差ΔＴが許容遅延時間Ｔｑ以下であるか否かの判定を行う（Ｓ１３）。ΔＴがＴｑ以下である場合（ステップＳ１３においてＹＥＳ）、次のブロックにおいて加工ユニット３１０，３２０同士が衝突（干渉）する可能性がないため、後述するステップＳ１６に進む。
【００４６】
一方、ΔＴがＴｑよりも大きい場合（ステップＳ１３においてＮＯ）、次のブロックにおいて加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２は、監視対象のブロックの終点に先に到達した第１系統の加工ユニット３１０（移動方向の後段）への分配移動量の出力を停止する（Ｓ１４）。このようにして、監視対象のブロックの終点において、すなわち次のブロックの始点において、第１系統の加工ユニット３１０が停止され、待ち合わせが行われる。
【００４７】
待ち合わせは、現在動作中のブロックが切削であり次のブロックが早送りである場合、現在動作中のブロックが早送りであり次のブロックも早送りである場合、及び、現在動作中のブロックが早送りであり次のブロックが切削である場合に行われる。一方、現在動作中のブロックが切削であり次のブロックも切削である場合には、切削加工中に待ち合わせを行うこととなるため、切削加工に影響を及ぼす可能性がある。この場合には、制御部１１２は、予め設定された情報に基づいて、待ち合わせを実行するか否か、すなわち分配移動量の出力を停止するか否かを選択してもよい。
【００４８】
次に、制御部１１２は、第１位置フィードバック値及び第２位置フィードバック値に基づいて、２系統の加工ユニット３１０，３２０が共に監視対象のブロックの終点に到達したか否かを判定する（Ｓ１５）。第２系統がまだ監視対象のブロックの終点に到達していない場合（ステップＳ１５においてＮＯ）、ステップＳ１４に戻り、上述したステップＳ１４及びステップＳ１５の動作が繰り返される。
【００４９】
一方、第２系統も監視対象のブロックの終点に到達した場合（ステップＳ１５においてＹＥＳ）、制御部１１２は、次のブロックの各系統の加工ユニット３１０，３２０への分配移動量の出力を開始する。これにより、次のブロックの２系統の加工ユニット３１０，３２０の動作が開始される。以上の動作は、ブロックごとに繰り返される。
【００５０】
図６は、数値制御装置１００による加工ユニット間の干渉回避動作を示す模式図である。図６において、Ｇ００は早送り動作指令を示し、Ｇ０１は切削加工動作指令を示す。また、ｔｍｎはｍ系統の第ｎブロックにおける移動時間を示す。
【００５１】
図６に示すように、第１ブロックにおける第１系統の加工ユニット３１０の移動時間すなわち終点到達時間ｔ１１と、第２系統の加工ユニット３２０の移動時間すなわち終点到達時間ｔ２１との差ΔＴ１がＴｑ以下である場合（図５のステップＳ１３においてＹＥＳ）、待ち合わせを行うことなく次の第２ブロックの各系統の加工ユニット３１０，３２０の動作が開始される（図５のステップＳ１６）。
【００５２】
次に、第２ブロックにおける第１系統の加工ユニット３１０の移動時間すなわち終点到達時間ｔ１２と、第２系統の加工ユニット３２０の移動時間すなわち終点到達時間ｔ２２との差ΔＴ２がＴｑよりも大きい場合（図５のステップＳ１３においてＮＯ）、先に到達した第１系統の加工ユニット３１０は第２ブロックの終点、すなわち次の第３ブロックの始点で待ち合わせを行う（図５のステップＳ１４）。その後、第２系統の加工ユニット３２０も第２ブロックの終点に到達したときに（図５のステップＳ１５においてＹＥＳ）、次の第３ブロックの各系統の加工ユニット３１０，３２０の動作が開始される（図５のステップＳ１６）。
【００５３】
以上説明したように、本実施形態の数値制御装置１００によれば、監視部１１４が、加工ユニット３１０，３２０がブロックの終点到達時間の差ΔＴを監視し、終点到達時間の差ΔＴが許容遅延時間Ｔｑよりも大きい場合に、次のブロックにおいて加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２が、このブロックの終点、すなわち次のブロックの始点で、ブロックの終点に先に到達した加工ユニット（移動方向の後段）３１０を停止させて待ち合わせを行う。これにより、加工ユニット３１０，３２０間の干渉を回避することができる。
【００５４】
（第２実施形態）
第１実施形態では、ブロックの終点において加工ユニット３１０，３２０同士の干渉を監視し、干渉の可能性がある場合にはこのブロックの終点、すなわち次のブロックの始点で待ち合わせを行った。これに対して、第２実施形態では、ブロック中の中間点において一定時間間隔で加工ユニット３１０，３２０同士の干渉を監視し、干渉の可能性がある場合には即時に待ち合わせを行う。
【００５５】
また、第１実施形態では、速い方の系統の動作を停止することにより加工ユニット３１０，３２０同士の干渉を回避した。これに対して、第２実施形態では、速い方の系統の指令速度を変更（減速）することにより加工ユニット３１０，３２０同士の干渉を回避する。
【００５６】
第２実施形態に係る加工システムの構成は、図３及び図４に示す第１実施形態の加工システム１の構成と同一である。なお、第２実施形態に係る加工システムでは、数値制御装置１００の機能及び動作が第１実施形態の加工システム１の機能及び動作と異なる。
【００５７】
図７は、本発明の第２実施形態に係る数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作（指令速度の変更前）を示すフローチャートであり、図８は、本発明の第２実施形態に係る数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作（指令速度の変更後）を示すフローチャートである。
【００５８】
（指令速度の変更前）
図７を参照して、指令速度の変更前の動作を説明する。まず、２系統の加工ユニット３１０，３２０が互いに同期をとらずにＸ軸方向に同時に動作を開始する。
【００５９】
このとき、基準算出部１１３は、制御部１１２から現在出力されている指令速度（早送り速度又は切削加工速度）ｖを取得し、この指令速度ｖと許容相対距離Ｄｒとに基づいて許容遅延時間Ｔｑを算出する（Ｓ２１）。
【００６０】
次に、監視部１１４は、監視対象のブロックの中間点に一定時間間隔でチェックポイントを設定し、監視対象の同一チェックポイントにおける各系統の加工ユニット３１０，３２０の到達時間の差（遅延時間）ΔＴを監視する。例えば、監視部１１４は、系統ごとに、同一チェックポイントにおける加工ユニット３１０，３２０の中心間の距離と現在の指令速度ｖとに基づいて、加工ユニット３１０，３２０の到達時間の差（遅延時間）ΔＴを求める（Ｓ２２）。
【００６１】
次に、判定部１１５は、到達時間の差（遅延時間）ΔＴが許容遅延時間Ｔｑ以下であるか否かの判定を行う（Ｓ２３）。ΔＴがＴｑ以下である場合（ステップＳ２３においてＹＥＳ）、その後も加工ユニット３１０，３２０同士が衝突（干渉）する可能性がないため、制御部１１２は速度を変更しない。
【００６２】
一方、ΔＴがＴｑよりも大きい場合（ステップＳ２３においてＮＯ）、その後、加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２は、到達距離が長い第１系統の加工ユニット３１０（移動方向の後段）のためのオーバライドを変更することにより、指令速度を変更（減速）する（Ｓ２４）。このようにして、ブロックの中間点において即時に、第１系統の加工ユニット３１０が減速され、待ち合わせが行われる。
【００６３】
（指令速度の変更後）
図８を参照して、指令速度の変更前の動作を説明する。上述したように、ステップＳ２１〜Ｓ２３の動作が行われる。ステップＳ２３においてΔＴがＴｑ以下である場合（ＹＥＳ）、その後、加工ユニット３１０，３２０同士が衝突（干渉）する可能性がなくなったため、制御部１１２は、第１系統の加工ユニット３１０のためのオーバライドを元に戻すことにより、指令速度を元の速度に戻す（Ｓ２４Ａ）。
【００６４】
一方、ステップＳ２３においてΔＴがＴｑよりも大きい場合（ＮＯ）、加工ユニット３１０，３２０同士が干渉する可能性がまだあるため、制御部１１２は、第１系統の加工ユニット３１０のための指令速度を元の速度に戻さない。
【００６５】
図９は、数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作を示す模式図である。図９において、破線矢印は移動経路を示し、破線矢印上の丸印は一定時間間隔のチェックポイントにおける位置を示す。
【００６６】
図９に示すように、第１チェックポイントにおける２系統の加工ユニット３１０，３２０の遅延時間ΔＴ１がＴｑ以下であるとき（図７のステップＳ２３においてＹＥＳ）、指令速度を変更することなく動作を継続する。
【００６７】
次に、第２チェックポイントにおける２系統の加工ユニット３１０，３２０の遅延時間ΔＴ２がＴｑよりも大きくなると（図７のステップＳ２３においてＮＯ）、第１系統の加工ユニット３１０の指令速度を変更（減速）する（図７のステップＳ２４）。その後のチェックポイントにおいて、２系統の加工ユニット３１０，３２０の遅延時間ΔＴがＴｑ以下となったときに（図８のステップＳ２３においてＹＥＳ）、第１系統の加工ユニット３１０の指令速度を元の速度に戻す（図８のステップＳ２４Ａ）。
【００６８】
この第２実施形態の数値制御装置１００によれば、監視部１１４が、ブロック中の中間点において一定時間間隔で加工ユニット３１０，３２０間の遅延時間ΔＴを監視し、遅延時間ΔＴが許容遅延時間Ｔｑよりも大きい場合に、その後に加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２が、即時に加工ユニット（移動方向の後段）３１０の動作速度を減速させて待ち合わせを行う。これにより、加工ユニット３１０，３２０間の干渉を回避することができる。
【００６９】
（第３実施形態）
第２実施形態では、ブロック中の中間点において一定時間間隔で加工ユニット３１０，３２０同士の干渉を監視した。これに対して、第３実施形態では、ブロック中において常時、加工ユニット３１０，３２０同士の干渉を監視する。
【００７０】
第３実施形態に係る加工システムの構成は、図３及び図４に示す第１実施形態の加工システム１の構成と同一である。なお、第３実施形態に係る加工システムでは、数値制御装置１００の機能及び動作が第１実施形態の加工システム１の機能及び動作と異なる。
【００７１】
図１０は、本発明の第３実施形態に係る数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作（指令速度の変更前）を示すフローチャートであり、図１１は、本発明の第３実施形態に係る数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作（指令速度の変更後）を示すフローチャートである。
【００７２】
（指令速度の変更前）
図１０を参照して、指令速度の変更前の動作を説明する。まず、２系統の加工ユニット３１０，３２０が互いに同期をとらずにＸ軸方向に同時に動作を開始する。
【００７３】
このとき、基準算出部１１３は、制御部１１２から現在出力されている指令速度（早送り速度又は切削加工速度）ｖを取得し、この指令速度ｖと許容相対距離Ｄｒとに基づいて許容遅延時間Ｔｑを算出する（Ｓ３１）。
【００７４】
次に、監視部１１４は、常時、監視対象の２系統の加工ユニット３１０，３２０の遅延時間ΔＴｐａｔｈを監視する。例えば、監視部１１４は、系統ごとに、第１位置フィードバック値及び第２位置フィードバック値に基づいてブロックの終点までの残りの距離ｄ１，ｄ２を求める。そして、監視部１１４は、残りの距離ｄ１，ｄ２と現在の指令速度ｖ１，ｖ２とに基づいて、下記（２）式より２系統の加工ユニット３１０，３２０の遅延時間ΔＴｐａｔｈを求める（Ｓ３２）。このとき、残りの距離ｄ１，ｄ２との関係は、ｄ１＞ｄ２とする。
ΔＴｐａｔｈ＝ｄ１／ｖ１−ｄ２／ｖ２  ・・・（２）
【００７５】
次に、判定部１１５は、遅延時間ΔＴｐａｔｈが許容遅延時間Ｔｑ以下であるか否かの判定を行う（Ｓ３３）。ΔＴｐａｔｈがＴｑ以下である場合（ステップＳ３３においてＹＥＳ）、その後も加工ユニット３１０，３２０同士が衝突（干渉）する可能性がないため、制御部１１２は速度を変更しない。
【００７６】
一方、ΔＴｐａｔｈがＴｑよりも大きい場合（ステップＳ３３においてＮＯ）、その後、加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２は、残りの距離が短い第１系統の加工ユニット３１０（移動方向の後段）のためのオーバライドを変更することにより、指令速度ｖ１を変更（減速）する（Ｓ３４）。このようにして、ブロックの動作中において即時に、第１系統の加工ユニット３１０が減速され、待ち合わせが行われる。
【００７７】
オーバライドの値は、予め設定した固定値でもよいし、ΔＴｐａｔｈの大きさに応じてこれに比例した値に設定してもよい。なお、ブロック始点及び終点では加減速が掛かるため、本速度監視は指令速度に到達した後に行ってもよい。
【００７８】
（指令速度の変更後）
図１１を参照して、指令速度の変更前の動作を説明する。上述したように、ステップＳ３１〜Ｓ３２の動作が行われる。
【００７９】
次に、判定部１１５は、遅延時間ΔＴｐａｔｈが０以下であるか否かの判定を行う（Ｓ３３Ａ）。ΔＴｐａｔｈが０以下である場合（ステップＳ３３ＡにおいてＹＥＳ）、その後、加工ユニット３１０，３２０同士が衝突（干渉）する可能性がなくなったため、制御部１１２は、第１系統の加工ユニット３１０のためのオーバライドを元に戻すことにより、指令速度ｖ１を元の速度に戻す（Ｓ３４Ａ）。
【００８０】
一方、ΔＴｐａｔｈが０よりも大きい場合（ステップＳ３３ＡにおいてＮＯ）、加工ユニット３１０，３２０同士が干渉する可能性がまだあるため、制御部１１２は、第１系統のための指令速度ｖ１を元の速度に戻さない。
【００８１】
図１２は、数値制御装置１００による加工ユニット３１０，３２０間の干渉回避動作を示す模式図である。図１２に示すように、２系統の加工ユニット３１０，３２０の遅延時間ΔＴｐａｔｈ１がＴｑ以下であるとき（図１０のステップＳ３３においてＹＥＳ）、指令速度を変更することなく動作を継続する。
【００８２】
その後、２系統の加工ユニット３１０，３２０の遅延時間ΔＴｐａｔｈ２がＴｑよりも大きくなると（図１０のステップＳ３３においてＮＯ）、第１系統の加工ユニット３１０の指令速度を変更（減速）する（図１０のステップＳ３４）。その後、２系統の加工ユニット３１０，３２０の遅延時間ΔＴｐａｔｈが０以下となったときに（図１１のステップＳ３３ＡにおいてＹＥＳ）、第１系統の加工ユニット３１０の指令速度を元の速度に戻す（図１１のステップＳ３４Ａ）。
【００８３】
この第３実施形態の数値制御装置１００によれば、監視部１１４が、常時、加工ユニット３１０，３２０間の遅延時間ΔＴｐａｔｈを監視し、遅延時間ΔＴｐａｔｈが許容遅延時間Ｔｑよりも大きい場合に、その後に加工ユニット３１０，３２０同士が干渉する可能性があるため、制御部１１２が、即時に加工ユニット（移動方向の後段）３１０の動作速度を減速させて待ち合わせを行う。これにより、加工ユニット３１０，３２０間の干渉を回避することができる。
【００８４】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【００８５】
例えば、上述した実施形態では、２系統の加工ユニットを備えて２つのワークを同時に加工する工作機械を例示した。しかし、本発明はこれに限定されず、複数系統の加工ユニットを備えて複数のワークの加工を同時に行う工作機械に適用可能である。
【００８６】
また、上述した実施形態では、ワークを搭載するテーブルを固定し、工具を備えるヘッドを送り軸（例えば、Ｘ軸、Ｙ軸及びＺ軸）方向に移動する形態を例示した。しかし、本発明は、ヘッドを固定し、テーブルを送り軸方向に移動する形態にも適用可能である。
【００８７】
また、上述した第２実施形態及び第２実施形態では、動作速度が早い第１系統の加工ユニット（移動方向の後段）の指令速度を変更（減速）したが、動作速度が遅い第２系統の加工ユニット（移動方向の前段）の指令速度を変更（加速）してもよい。
【符号の説明】
【００８８】
１  加工システム
１００  数値制御装置
１１０  数値制御部
１１１  記憶部
１１２  制御部
１１３  基準算出部
１１４  監視部
１１５  判定部
１２１，１３１  Ｘ軸サーボ制御部
１２２，１３２  Ｙ軸サーボ制御部
１２３，１３３  Ｚ軸サーボ制御部
１２４，１３４  スピンドル制御部
２００  工作機械
２１１  Ｘ軸サーボモータ
２１２  Ｙ軸サーボモータ
２１３  Ｚ軸サーボモータ
２１４  スピンドルモータ
２２１  Ｘ軸サーボモータ
２２２  Ｙ軸サーボモータ
２２３  Ｚ軸サーボモータ
２２４  スピンドルモータ
３１０，３２０  加工ユニット
３１１，３２１  ヘッド
３１２，３２２  テーブル
ＴＬ  工具
Ｗ  ワーク
【図１】
2018101338.tif 000003
【図２】
2018101338.tif 000004
【図３】
2018101338.tif 000005
【図４】
2018101338.tif 000006
【図５】
2018101338.tif 000007
【図６】
2018101338.tif 000008
【図７】
2018101338.tif 000009
【図８】
2018101338.tif 000010
【図９】
2018101338.tif 000011
【図１０】
2018101338.tif 000012
【図１１】
2018101338.tif 000013
【図１２】
2018101338.tif 000014