(57)【要約】  加工プログラムの途中で作業者が運転を中断したり、衝突検知して運転を中断したりした場合でも、加工プログラムの運転再開時から正しい位置で衝突チェックが行なえるよう、先行チェック処理系列２を、実際の機械制御のための機械制御処理系列１とは別に設けこの先行チェック処理系列にて実際の機械制御に先立って衝突可能性チェックを行うものにおいて、機械が停止してから運転を再開するまでの間に、先行チェック処理系列２の状態を、機械制御処理系列１の状態に合わせる制御状態同期部２３を設けた。
2009130759.tif 000002
【特許請求の範囲】
【請求項１】
実際の機械制御のための機械制御処理系列とは別に先行チェック処理系列を設け、この先行チェック処理系列にて実際の機械制御に先立って衝突可能性チェックを行うとともに、機械が停止してから運転を再開するまでの間に、前記先行チェック処理系列の状態を、前記機械制御処理系列の状態に合わせることを特徴とする数値制御方法。
【請求項２】
前記状態は、現在値であることを特徴とする請求項１に記載の数値制御方法。
【請求項３】
前記状態は、現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データであることを特徴とする請求項１に記載の数値制御方法。
【請求項４】
前記先行チェック処理系列は、特定の命令を実行中には衝突可能性チェックの実施を中止することを特徴とする請求項１〜３の何れかに記載の数値制御方法。
【請求項５】
前記特定の命令は、スキップ命令であることを特徴とする請求項４に記載の数値制御方法。
【請求項６】
前記先行チェック処理系列は、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、この取得したデバイス毎の応答時間分だけ応答を遅らせることを特徴とする請求項１〜５の何れかに記載の数値制御方法。
【請求項７】
前記先行チェック処理系列は、衝突と見なす距離と補間周期に基づいて先行チェック用送り速度を算出するとともに、先行チェック用送り速度と加工プログラムに記述されている送り速度の比率を算出し、且つ前記算出した比率に基づいて先行チェック用の送り速度を決定することを特徴とする請求項１〜６の何れかに記載の数値制御方法。
【請求項８】
前記先行チェック処理系列は、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、且つこの取得したデバイス毎の応答時間を、前記送り速度の比率に基づいて調整することを特徴とする請求項７に記載の数値制御方法。
【請求項９】
加工プログラム解析部、送り速度制御部、指令生成部、プログラマブルロジックコントロール部、及び先行チェック処理系列からのチェック結果を受信し、衝突が検知された場合、衝突検知位置に到達する以前に機械を停止させる指令出力判定部を有し、実際の機械制御を行う機械制御処理系列と、
加工プログラム解析部、送り速度制御部、指令生成部、プログラマブルロジックコントロール部、形状データを使って衝突可能性チェックを行い、チェック結果を前記機械制御処理系列の指令出力判定部に渡す衝突チェック処理部、及びNC制御軸以外の機器に割り付けられたデバイスの応答信号をシミュレーションする機器デバイス信号シミュレーション部を有し、前記機械制御処理系列による実際の機械制御に先立って衝突可能性チェックを行う先行チェック処理系列と、
実際の機械で加工していく様子を、形状データを用いてシミュレーションし、それを画面上に逐次表示するモニタ表示部と、
機械が停止してから運転を再開するまでの間に、前記先行チェック処理系列の状態を、前記機械制御処理系列の状態に合わせる制御状態同期部と、
を備えてなる数値制御装置。
【請求項１０】
前記状態は、現在値であることを特徴とする請求項９に記載の数値制御装置。
【請求項１１】
前記状態は、現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データであることを特徴とする請求項９に記載の数値制御装置。
【請求項１２】
前記先行チェック処理系列は、特定の命令を実行中には衝突可能性チェックの実施を中止することを特徴とする請求項９〜１１の何れかに記載の数値制御装置。
【請求項１３】
前記特定の命令は、スキップ命令であることを特徴とする請求項１２に記載の数値制御装置。
【請求項１４】
前記先行チェック処理系列の機器デバイス信号シミュレーション部は、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、この取得したデバイス毎の応答時間分だけ応答を遅らせるものであることを特徴とする請求項９〜１３の何れかに記載の数値制御装置。
【請求項１５】
前記先行チェック処理系列は、衝突と見なす距離と補間周期に基づいて先行チェック用送り速度を算出するとともに、先行チェック用送り速度と加工プログラムに記述されている送り速度の比率を算出する速度比率算出部を備え、前記送り速度制御部は、前記算出した比率に基づいて先行チェック用の送り速度を決定するものであることを特徴とする請求項９〜１４の何れかに記載の数値制御装置。
【請求項１６】
前記先行チェック処理系列の機器デバイス信号シミュレーション部は、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、且つこの取得したデバイス毎の応答時間を、前記送り速度の比率に基づいて調整するものであることを特徴とする請求項１５に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、衝突を未然に防止する数値制御（Numerical Control；以下ＮＣという）方法及びその装置に係り、特に、工具とワーク、工具と治具、機械と周辺機器などの衝突（干渉）をチェックする衝突チェックの高速化および正確さの向上に関するものである。
【背景技術】
【０００２】
近年はNC工作機械が多軸・多系統化してきて運転が難しくなったことから、ＮＣ装置は衝突を防止する機能を備えるようになってきた。（例えば特許文献１参照）
実際の機械が衝突する前に停止させるためには、衝突有無のチェックを実際の機械動作に先だって実施する必要があり、そのために、衝突を検知した位置までの減速に要する時間分だけ機械への指令出力を遅延させるように構成されている。（例えば特許文献２参照）【０００３】
また、別のＮＣ装置は、次の軸制御周期における仮想移動位置を算出し、その時の軸移動速度から減速停止するまでに必要な距離を算出し、その距離で機械各部位間の近接チェックを行なうように構成されている。（例えば特許文献３参照）【０００４】
ところで、通常ＮＣ装置は、NC制御軸以外の機器、例えば加工プログラムからM・T指令によって指令される工具交換、タレット刃物台の旋回、芯押し台の出し入れなど（以後、NC制御軸以外の位置制御される機器を「補機」と呼ぶ）に関わる命令は、NC装置内に備えたプログラマブルロジックコントローラ（以後「PLC」と呼ぶ）か、あるいはそれと同等の機能が処理している。また、ドアロックセンサや機械操作盤などの機器の状態もPLCが処理している。
各補機やセンサ等も含めた機器の状態量は、PLCのデバイスに対する信号に割り付けられており、例えば動作が完了するとあるデバイスの信号がONになり、それによってNC装置が次の処理に進むというように機器とはデバイス（以後、「機器デバイス」と呼ぶ）を通じてハンドシェイクを取っている。【０００５】
【特許文献１】特開2004-227047号公報
【特許文献２】特開2007-172068号公報
【特許文献３】特開2006-195862号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
先述した従来のＮＣ装置では、図９に示すように、衝突有無をチェックするための先行位置指令の生成は、実際の工作機械を制御するための処理に組込まれているため、補機を動作させてその完了を待たなければ次の処理に進めない場合、先行位置指令の生成も一旦停止しなければならないという問題があった。
特に三次元形状データを元に衝突有無をチェックするNC制御装置の場合、補機の状態を待つ都度停止してしまうと、NC軸制御の処理に比べて衝突チェック処理に要する時間が大きいため、加工プログラム全体を通した待ち時間がかなり大きくなってしまう。【０００７】
また、衝突チェック処理は、計算機内に仮想機械・仮想ワークを構築し、それらを実際の機械動作に先行してシミュレーションで動作させて衝突することを検知するため、先ほど述べた補機とのハンドシェイクを必要としない箇所を実行している限りは、実際の機械がまだ到達していない加工プログラムのブロックを実行することになる。しかし、このように衝突チェック処理を先行させると、次のような問題も発生する。【０００８】
例えば図１０に示すように、実際の機械は加工プログラムのiブロック目を実行しており、このとき衝突チェック処理は、k番目（i < k）のブロックを実行しているとする。この状態で衝突チェック処理が衝突を検知すると、 j番目のブロックに来る以前（図12ではj番目のブロック）に実際の機械を停止する。
従って、衝突チェック処理が形状データを用いたワークの切削シミュレーションを行なう機能を備えたNC装置の場合には、ワークの形状が実際にはまだ加工していない命令で既に削られた形状に変ってしまっているので、機械が停止した後作業者が手動でNC軸を対比させたり加工プログラムを修正して再度自動運転させたりするときなどに実際の素材と形が合わずに、衝突検知を正確に行なえなくなってしまう。【０００９】
この発明は、かかる問題点を解決するためになされたもので、衝突チェック機能を有効化して加工プログラムを運転させた場合にも、正確に衝突チェックを行ない、かつ、加工時間の増加を極力抑制することができるＮＣ装置を得ることを目的としている。
【課題を解決するための手段】
【００１０】
この発明に係る数値制御方法は、実際の機械制御のための機械制御処理系列とは別に先行チェック処理系列を設け、この先行チェック処理系列にて実際の機械制御に先立って衝突可能性チェックを行うとともに、機械が停止してから運転を再開するまでの間に、前記先行チェック処理系列の状態を、前記機械制御処理系列の状態に合わせることを特徴とするものである。【００１１】
また、この発明の数値制御方法は、前記状態が、現在値であることを特徴とするものである。【００１２】
また、この発明の数値制御方法は、前記状態が、現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データであることを特徴とするものである。【００１３】
また、この発明の数値制御方法は、前記先行チェック処理系列が、特定の命令を実行中には衝突可能性チェックの実施を中止することを特徴とするものである。【００１４】
また、この発明の数値制御方法は、前記特定の命令が、スキップ命令であることを特徴とするものである。【００１５】
また、この発明の数値制御方法は、前記先行チェック処理系列が、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、この取得したデバイス毎の応答時間分だけ応答を遅らせることを特徴とするものである。【００１６】
また、この発明の数値制御方法は、前記先行チェック処理系列が、衝突と見なす距離と補間周期に基づいて先行チェック用送り速度を算出するとともに、先行チェック用送り速度と加工プログラムに記述されている送り速度の比率を算出し、且つ前記算出した比率に基づいて先行チェック用の送り速度を決定することを特徴とするものである。【００１７】
また、この発明の数値制御方法は、前記先行チェック処理系列が、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、且つこの取得したデバイス毎の応答時間を、前記送り速度の比率に基づいて調整することを特徴とするものである。【００１８】
また、この発明の数値制御装置は、加工プログラム解析部、送り速度制御部、指令生成部、プログラマブルロジックコントロール部、及び先行チェック処理系列からのチェック結果を受信し、衝突が検知された場合、衝突検知位置に到達する以前に機械を停止させる指令出力判定部を有し、実際の機械制御を行う機械制御処理系列と、加工プログラム解析部、送り速度制御部、指令生成部、プログラマブルロジックコントロール部、形状データを使って衝突可能性チェックを行い、チェック結果を前記機械制御処理系列の指令出力判定部に渡す衝突チェック処理部、及びNC制御軸以外の機器に割り付けられたデバイスの応答信号をシミュレーションする機器デバイス信号シミュレーション部を有し、前記機械制御処理系列による実際の機械制御に先立って衝突可能性チェックを行う先行チェック処理系列と、実際の機械で加工していく様子を、形状データを用いてシミュレーションし、それを画面上に逐次表示するモニタ表示部と、機械が停止してから運転を再開するまでの間に、前記先行チェック処理系列の状態を、前記機械制御処理系列の状態に合わせる制御状態同期部と、を備えてなるものである。【００１９】
また、この発明の数値制御装置は、前記状態が、現在値であることを特徴とするものである。【００２０】
また、この発明の数値制御装置は、前記状態が、現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データであることを特徴とするものである。【００２１】
また、この発明の数値制御装置は、前記先行チェック処理系列が、特定の命令を実行中には衝突可能性チェックの実施を中止することを特徴とするものである。【００２２】
また、この発明の数値制御装置は、前記特定の命令が、スキップ命令であることを特徴とするものである。【００２３】
また、この発明の数値制御装置は、前記先行チェック処理系列の機器デバイス信号シミュレーション部が、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、この取得したデバイス毎の応答時間分だけ応答を遅らせるものであることを特徴とするものである。【００２４】
また、この発明の数値制御装置は、前記先行チェック処理系列が、衝突と見なす距離と補間周期に基づいて先行チェック用送り速度を算出するとともに、先行チェック用送り速度と加工プログラムに記述されている送り速度の比率を算出する速度比率算出部を備え、前記送り速度制御部が、前記算出した比率に基づいて先行チェック用の送り速度を決定するものであることを特徴とするものである。【００２５】
また、この発明の数値制御装置は、前記先行チェック処理系列の機器デバイス信号シミュレーション部が、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を取得し、且つこの取得したデバイス毎の応答時間を、前記送り速度の比率に基づいて調整するものであることを特徴とするものである。
【発明の効果】
【００２６】
この発明によれば、先行チェック処理系列を実際の機械制御のための機械制御処理系列とは別に設け、機械が停止してから運転を再開するまでの間に、前記先行チェック処理系列の状態を、前記機械制御処理系列の状態に合わせるので、先行チェック処理が実際の機器の応答を待つことなく処理を行なえ、かつ、加工プログラムの途中で作業者が運転を中断したり、衝突検知して運転を中断したりした場合でも、加工プログラムの運転再開時から正しい位置で衝突チェックが行なえるという効果がある。【００２７】
また、この発明によれば、工具と機械の一部である工具計測センサが接触する工具計測等の予め設定した特定の命令に対して衝突チェックを行わないので、機械本来の動作として接触しても良い命令を衝突と判定することなく、機械を動作させる事ができるようになるという効果がある。【００２８】
また、この発明によれば、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間分だけ応答を遅らせるので、実際の機械と同じタイミングで機器が動作したように振舞え、衝突チェックの正確さが向上するという効果がある。【００２９】
また、この発明によれば、先行チェック処理に必要なチェック位置を安全かつ高速に生成するために、実際の機械の送り速度に対して衝突とみなす距離に応じた送り速度となる比率を算出するので、衝突チェックが常に実際の機械の処理している箇所よりも先行できるようになり、衝突チェックを実施しても加工時間を増加させないという効果がある。【００３０】
また、この発明によれば、衝突チェックのために機器デバイス信号シミュレーションを実行する際、予め設定されたデバイス毎の応答時間を、送り速度の比率に基づいて調整するので、実際の機械の動きよりもNC軸の動きも機器の応答も同じ割合で短縮されるため、信号の発生タイミングや補機を含めた全ての機械部位の相対位置関係が実際の機械と同じになり、衝突チェックを実施しても加工時間を増加させず、かつ、衝突チェックの正確さが向上するという効果がある。
【図面の簡単な説明】
【００３１】
【図１】この発明の実施の形態１に係るＮＣ装置の一構成例を示すブロック図である。
【図２】この発明の実施の形態１に係る、機械制御処理系列と先行チェック処理系列の処理進捗状況を説明するための図である。
【図３】この発明の実施の形態１に係る、機械制御処理系列と先行チェック処理系列の所定時刻時の素材形状データを示す図である。
【図４】この発明の実施の形態１に係る制御状態同期部の動作を説明するための図である。
【図５】この発明の実施の形態１に係るスキップ命令の動作を説明するための図である。
【図６】この発明の実施の形態１に係る、スキップ命令があったときの制御状態同期部の動作を説明するための図である。
【図７】この発明の実施の形態２に係るＮＣ装置の一構成例を示すブロック図である。
【図８】この発明の実施の形態２に係る、機械制御処理系列と先行チェック処理系列の処理進捗状況を説明するための図である。
【図９】従来の課題を説明するための図である。
【図１０】従来の他の課題を説明するための図である。
【符号の説明】
【００３２】
１  機械制御処理系列
２  先行チェック処理系列
３、１２  プログラム解析部
４、１３  送り速度制御部
５、１４  指令生成部
６、１６  プログラマブルロジックコントロール部
７  サーボコントローラとモータ
８、１７  制御データ
９  機器デバイス入出力信号
１０、１８  形状データ
１１  切削モニタ部
１５  機器デバイス信号シミュレーション部
１９  衝突チェック部
２０  加工プログラム、工具データ、パラメータ
２１  制御状態同期部
２２  指令出力判定部
２３  速度比率算出部
【発明を実施するための最良の形態】
【００３３】
実施例１．
以下、この発明の実施例１を、図１〜図６を用いて説明する。なお、この実施例１は、先行チェック処理系列が機械制御処理系列と同速で動作する場合の実施例である。
図１はこの発明の実施例１に係るＮＣ装置の構成を示すブロック図であり、１は実際の機械を制御する機械制御処理系列、２は衝突可能性を実際の機械の動作に先立ってチェックする先行チェック処理系列、３は機械制御処理系列１の中にあって加工プログラムを解析する加工部プログラム解析部、４は機械制御処理系列１の中にあって工具の送り速度を制御する送り速度制御部、５は機械制御処理系列１の中にあって各軸の指令値を生成する指令生成部、６は機械制御処理系列１の中にあって機器デバイスの信号入出力を制御し、全信号のうちNC制御に必要な信号を制御データに格納するプログラマブルロジックコントロール部（以後、「PLC」と呼ぶ）、７は機械制御処理系列１に接続されたNCサーボコントローラとモータ、８は機械制御処理系列１にあって実際の機械を制御する際の例えば補間タイプや平面選択や工具系補正等の制御モード、座標系、現在の各軸の座標値（以降現在値と呼ぶ）、選択されている工具、機器デバイスの信号等からなる制御データ（制御データはNC装置内の各処理部から参照されるため、敢えてどの処理部とも結線を図示しない）、９は機械制御処理系列１に接続された機器デバイスの入出力信号、１０は機械制御処理系列１の中にあって実際の機械の動作を形状シミュレーションで表示するための機械、工具、治具、素材等の形状データ、１１は形状データ１０を使って実際の機械の動作および素材が切削される様子をシミュレーションして表示する切削モニタ部である。【００３４】
また、１２は先行チェック処理系列２の中にあって加工プログラムを解析する加工プログラム解析部、１３は先行チェック処理系列２の中にあって工具の送り速度を制御する送り速度制御部、１４は先行チェック処理系列２の中にあって各軸の指令値を生成する指令生成部、１５は先行チェック処理系列２の中にあって機器デバイスの入出力信号をシミュレーションする機器デバイス信号シミュレーション部、１６は機器デバイス信号シミュレーション部１５の信号入出力を制御し、全信号のうちNC制御に必要な信号を制御データに格納するPLC、１７は先行チェック処理系列２の中にあって衝突チェックするために機械の動きを模擬するための、例えば現在値、補間タイプや平面選択や工具系補正等の制御モード、座標系、選択されている工具、機器デバイスの信号等からなる制御データ、１８は先行チェック処理系列２の中にあって衝突チェックを行なうための機械、工具、治具、素材等の形状データ、１９は先行チェック処理系列２の中にあって形状データ１８を用いて形状シミュレーションを行ない、衝突可能性や素材切削シミュレーションを行なう衝突チェック部、２０は機械制御処理系列１と先行チェック処理系列２が共通に参照する加工プログラム、工具データ、制御パラメータ等のNC制御用の各データ、２１は機械制御処理系列１の制御データ、形状データ（あるいは形状データのうち切削モニタ部で切削シミュレーションした素材形状データのみでも良い）を、先行チェック処理系列２にセットし、先行チェック処理系列２のデータを、機械制御処理系列１のデータと同一にする制御状態同期部、２２は指令生成部５と衝突チェック部１９との信号を入力し、機械への移動指令の出力を停止させるか否かを判断する指令出力判定部である。【００３５】
次に図１の構成によるＮＣ装置の各処理部の動作について説明する。
プログラム解析部３（１２）は加工プログラム２０内に記述されている命令を解析し、NC軸制御に関わる命令である場合、例えば送り速度の設定、指令生成時の補間モードの設定、座標系の設定などを行い、PLC６（１６）が処理すべき命令である場合にはPLC６（１６）に命令を送出する。
送り速度制御部４（１３）は、加工プログラム解析部３（１２）が読み取った送り速度に対し、補間周期時間当りの送り速度を算出する。
指令生成部５（１４）は、プログラム解析部３（１２）が設定した各種のデータと送り速度制御部４（１３）が算出した補間周期時間あたりの送り速度で指令軌跡上を補間し、補間周期時間当りに移動する位置を算出する。
PLC６（１６）は、加工プログラム２０に指令されている命令のうち、NC装置は直接制御しない機器デバイスに対して動作信号を出し、そのデバイスに接続された機器からの動作完了通知などを受け取って制御を行ない、NC装置内の制御データとして信号を保持させる。
これらの処理部は、機械制御処理系列１でも先行チェック処理系列２でも同じ処理を行なう。【００３６】
先行チェック処理系列２にある衝突チェック部１９は、指令生成部１４からの指令および制御データに保持された機器デバイス信号シミュレーション部１５がシミュレーションした機器デバイスの信号を指令1点が生成される毎に取得し、計算機内で加工プログラムを運転するまでに予め設定された機械各部位の形状データ（NC制御軸で動作する形状のみでなく、タレット刃物台や芯押し台などの補機の形状も含まれる）、工具形状データ、チャックや爪、あるいはバイスやクランプなどの治具形状データ、素材形状データを動作させ、素材形状に対して切削シミュレーションを実施したり、これらの形状間の衝突可能性をチェックしたりして、１つの指令毎あるいは１つのブロックをチェックし終える毎にチェック結果を機械制御処理系列１の指令出力判定部２２に送信する。【００３７】
なお、具体的な形状間の衝突チェックの方法や形状データの切削シミュレーション手法に関しては種々の方法があるが、そのどれを用いてもこの発明の請求するところには影響しないため、いかなる方法を採用してもよい。
さらに、形状間が実際に衝突した場合はもちろん、予め設定された距離以下に形状が互いに接近した時も衝突とみなしてもよい。
また、衝突チェック部１９が送信するチェック結果には、衝突したか否かを示すデータを少なくとも含み、その他に、衝突した部位を識別する部品番号や部品名等のデータ、衝突したブロックを識別するためのブロック番号等のデータ、衝突した指令を識別するために指令生成部が指令生成時に割り振った指令番号等のデータ、衝突とみなした形状間の距離などを含んでもよい。【００３８】
機器デバイス信号シミュレーション部１５は、予め設定された、実際の機械制御処理系列１に接続されている機器デバイスの応答時間および、各機器デバイスに対する命令とその命令に対応する応答信号（例えば、工具交換命令であれば工具交換完了信号であり、工具計測器の出し入れであれば工具計測器の出し入れ完了信号、芯押し台の位置決め目標位置など）を個々に有しており、機器デバイスへの命令が来ると、機器デバイス毎の応答時間分経過した後応答信号をPLC１６に返す。【００３９】
機械制御処理系列１にある切削モニタ部１１は、加工プログラム２０を運転するまでに予め設定された機械各部位の形状データ、工具形状データ、治具形状データ、素材形状データを、機械制御処理系列１の指令生成部５からの指令および機器信号を元に計算機内で動作させ、素材形状に対して切削シミュレーションを実施し、刻々その様子を表示装置に表示する。
なお表示装置はNC装置においては極一般的な装置であるため、説明図には図示しない。【００４０】
先行チェック処理系列２の衝突チェック部１９が先行チェックして指令出力判定部２２へ衝突を通知してきた場合には、機械制御処理系列１の指令出力判定部２２は機械への移動指令の出力を停止して機械各部位の移動を安全に停止させ、切削モニタ部１１は先行チェック処理系列２から送信されたチェック結果データに含まれる衝突した部位を強調表示したり、アラームを表示したりする。
一方、衝突チェック部１９が現在チェックした指令に関して指令出力判定部２２へ衝突なしと通知して来た場合には、機械制御処理系列１の指令出力判定部２２は、その衝突チェックが完了した指令をサーボモータ７に出力して実際の機械の軸動作を行なう。
以降の指令も同様に上記の処理を繰り返し行なって、加工を進めて行く。
また、機械制御処理系列１は、予め設定された時間、あるいはブロック数、あるいは距離分だけ常に先行チェック処理系列２が先行していることを確認してから機械を動作させる。先行チェック処理系列２が予め設定された先行量分先に進んでいない場合には、送り速度を次第にさげ、設定された先行量分先行したら本来の送り速度に戻るように加速する。【００４１】
続いて、制御状態同期部２１の動作について説明する。
この発明のNC装置を搭載したNC機械を運転する作業者は、これから加工するための加工プログラムを図示しないキーボードやマウス等の入力装置を用いて選択し、運転起動ボタン等の起動装置によって加工プログラムの運転をNC装置に実行させると、上記説明した各処理部は順番に動作することを繰り返しながら加工が進捗して行く。
ところで、運転している途中で先行チェック処理系列２の衝突チェック部が衝突を検知して機械が停止した場合、あるいは作業者が自身の操作によって加工プログラムの途中で運転解除した場合、図２に示すとおり、先行チェック処理系列２が現在処理している加工プログラムの箇所（図２の先行チェック処理系列２のブロック番号N（i+7））と、機械制御処理系列１が処理している加工プログラムの箇所（図２の機械制御処理系列１のブロック番号N（i+3））が異なっている。【００４２】
このような状態では、機械制御処理系列１の素材形状データが例えば図３（Ａ）、先行チェック処理系列２の素材形状データが例えば図３（Ｂ）に示す状態となる。即ち、先行チェック処理系列２の衝突チェック部１９が使用している素材形状データは、実際の素材ではまだ削られていない箇所が削られてしまっていたり、あるいは、先行チェック処理系列２の機器デバイスは既に動作完了信号が立っているが機械制御側の機器デバイスはまだ動作しておらず動作完了信号が立っていないなど、NC装置内の処理系列間で状態が異なってしまう。【００４３】
この状態のまま再度加工プログラムを実行すると、先行チェック処理系列２と機械制御処理系列１の状態が異なっているため、正確な衝突チェックはできない。
そこで、制御状態同期部２１は、図４に示すように、加工プログラムの自動運転解除時に先行チェック処理系列２の状態を機械制御処理系列１の状態に合わせる処理を実行する。ここでいう状態とは、形状データと制御データである。
制御状態同期部２１は、加工プログラムの自動運転が途中で中止されたかどうかを常に監視し、加工プログラムの途中で中止された場合には、機械制御処理系列１内の少なくとも素材形状データを先行チェック処理系列２の素材形状データ１８として転送して置き換え、同じく機械制御処理系列１内の制御データ８を先行チェック処理系列２内の制御データ１７に転送して置き換える。【００４４】
以上では、制御状態同期部２１は加工プログラムの運転起動時にこれらの状態を合わせるようにしても良いし、制御データは加工プログラムの運転起動時に状態合わせを行い、素材形状データは加工プログラムの自動運転が中止されたときに合わせるようにしてもよい。
また、NC装置には加工プログラムの自動運転中に工具計測センサで工具を計測して磨耗補正を行なったり、旋削主軸が2つある機械の場合には旋削主軸間で素材を受け渡したりする機能を備えているものがあり、これらの機能は、図５（Ａ）に示すように、加工プログラムで記述した指令位置に達するまでに工具計測センサや押付け用センサ等の機器からの信号が入力されたときに、その位置で軸送りを停止するという命令（スキップ命令）を使用している。【００４５】
このような、機器からの信号によって終点位置が変る命令を実行する際に、先行チェック処理系列２と機械制御処理系列１の状態を合わせる方法を以下に説明する。
スキップ命令では、実際のセンサ等の機器からの信号が入力されるタイミングによって軸がどこまで移動するかが変るため、図５（Ｂ）に示すように、この命令が先行チェック処理系列２の加工プログラム解析部１２で解析されたときには衝突チェック部１９で全ての形状に対して衝突チェックを実施せずに命令を実行し、この命令を実行し終えた箇所（途中で機器からの信号が無かったものとして動作しきった位置）で先行チェック処理系列２を一時停止しておくようにする。
そして、機械制御処理系列１がこの命令を処理した直後に、図６に示すように制御状態同期部２１が先行チェック処理系列２の状態を機械制御処理系列１の状態に合わせ、その後先行チェック処理系列２を再開し、機械制御処理系列１は予め設定された分だけ先行チェック処理系列２を待って処理を行なうようにする。【００４６】
この実施例１によれば、衝突チェックを実際の機械の動作に先行して行なう先行チェック処理系列２を実際の機械の運転を行なう機械制御処理系列１とは別に設け、さらに機器デバイスの信号をシミュレーションするようにして、実際の機器デバイスの応答を待つこと無く先行チェックを行なうことができるようになるので、実際の機械の動作に対して常に先行して衝突チェックを行なうことができる。
さらに、加工プログラムの運転開始時あるいは終了時に、先行チェック処理系列２の状態を機械制御処理系列１の状態に合わせるようにしたので、常に先行チェック処理系列２の状態と機械制御処理系列１の状態が同一であるので、正確な衝突チェックができる。
なお、実施例１において、極めて正確な衝突チェックを行うため、先行チェック処理系列２のデータとして、現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データを、機械制御処理系列１のデータ（現在値、選択工具，制御モード，座標系，プログラマブルロジックコントロール用のデバイスに保持している信号，及び素材形状データ）と同一のものとすることについて説明したが、先行チェック処理系列２のデータとして、現在値のみを、機械制御処理系列１の現在値と一致させるようにしても、所期の目的は達成できる。【００４７】
実施例２．
（先行チェック処理系列２にオーバライドをかけて機械制御処理系列１より速く動作する場合。請求項１、２、４、５に対応）
図７は、この発明の実施例２に係るＮＣ装置を示すもので、実施例１に比して、先行チェック処理系列２には、補間周期あたりの補間長さが加工プログラムの運転起動の前に予め設定された衝突とみなす距離となるようにしたときの送り速度を求め、加工プログラムに記述されている送り速度に対する比率を算出する送り速度比率算出部２３が追加されている。
また、機器デバイス信号シミュレーション部１５の動作も実施例１と異なる。
以下では、実施例１とは異なる処理について説明する。
先行チェック処理系列２の送り速度制御部１３は、送り速度比率算出部２３が上記の通り算出した先行チェック用の送り速度比率を、加工プログラムに記述されている送り速度に乗じて先行チェック用の送り速度を決定する。
この方法は特開２００４−３２６２５７号公報で示されているように、衝突チェックにとって過剰な補間点を、衝突とみなす距離を越えないように間引くため、形状シミュレーションによる衝突チェックを漏れなくかつ高速に行なうことができる方法である。【００４８】
先行チェック処理系列２において送り速度を実際の加工プログラムに対して増大させるということは、先行チェック処理系列２内のブロック消化時間を短縮することになる。
従って同じ先行チェック処理系列２内の機器デバイス信号シミュレーション部１５においては、シミュレーションする機器デバイスの応答時間も先行チェック用の送り速度比率に応じて短縮しなければならない。
さもないと機械制御処理系列１でのNC軸や機器デバイスの動作タイミングと先行チェック処理系列２でのそれらの動作タイミングが一致しなくなるからである。【００４９】
以降では、機器デバイス信号シミュレーション部１５が先行チェック用の送り速度比率に応じて各機器デバイスの信号応答時間を調整する方法を説明する。
先行チェック処理系列２において先行チェック用送り速度が増大されても、加工プログラムが指示している位置に関する指令や補間タイプ（直線補間指定、円弧補間指定など）は当然変更が無いから、先行チェック処理系列２の工具の形状データと機械制御処理系列１の実際の工具が移動する距離はほぼ同じである。
移動時間は移動距離を送り速度で除して求められるから、送り速度に先行チェック用の比率が乗じられたならば、移動時間は送り速度比率で除した値となる。【００５０】
NCで制御される軸の送り速度と移動時間の間にはこのような関係があるから、NCで制御されない補機に接続される機器デバイスの信号の応答時間を送り速度比率で除した値にすればNC軸も機器デバイスも同一の時間軸で動作する。例えば図８のN（i+2）が機器デバイスに対する命令ブロックで、その他のブロック（N（i）、N（i+1）、N（i+3））はNC軸への命令ブロックであるとすると、先行チェック処理系列２においてNC軸の送り速度に先行チェック用の比率が乗じられてNC軸移動ブロックの消化が早められた分、機器デバイスに対するブロックの消化（応答までの時間）も同じ比率で早める。【００５１】
即ち、機器デバイス信号シミュレーション部１５は、速度比率決定部２３が算出した先行チェック用の送り速度比率を取得し、各デバイスに対応する信号の応答時間を先行チェック用の送り速度で除した値を求め、先行チェック用の機器信号の応答時間を調整する。
このように送り速度比率に応じて機器デバイスの応答時間を調整することで、先行チェック処理系列２においても機械制御処理系列１でのNC軸と補機の相対位置関係を保つようにする。【００５２】
これまでの説明では、機器デバイス信号シミュレーション部１５は、単に各機器デバイスの応答時間を調整して各機器デバイスの応答信号を模擬するシミュレーションを行なったが、さらに次のように機器デバイスに接続された補機の応答信号と共に移動途中もシミュレーションしても良い。
例えば、加工プログラム中にNC軸で制御されない、PLCから他の制御装置への指令で動作する芯押し台を素材端面付近まで前進させる指令があったとする。
補機の芯押し台の移動制御は、 PLCからは例えば位置Aまで動けという命令を芯押し台の制御装置に発行するのみであり、実際の移動制御に関しては芯押し台の制御装置が位置Aまでの刻々の位置を算出して芯押し台を移動させる、という2段階の処理になる。移動し終えるとPLCに芯押し台移動完了の信号が入り、さらにPLCがNC装置内の制御データにその状態を通知する。【００５３】
芯押し台に限らず、補機に関しては一般的にこのような処理手順を経ているため、NC装置では補機の移動途中の位置は知り得ない。
そこで先行チェック処理系列２の機器デバイス信号シミュレーション部１５では、先行チェック処理系列２のPLCから命令を受信すると、その命令に対応する補機の機器デバイス信号シミュレーションが動作して、補機の動きと応答信号をシミュレーションするようにする。そのために、動作中／動作完了／停止中などの状態を示す応答信号だけでなく、予め設定された補機軸の速度等を基に刻々の位置を算出して送信し、PLCは応答信号と共に補機の位置を制御データに格納し、衝突チェック部は受信した位置を機械形状のうち補機に対応する形状に与え、NC制御軸によって制御される形状と共に移動させ、衝突チェックを行なうようにする。【００５４】
このように構成されたＮＣ装置においては、先行チェック処理系列２がチェックする点数が衝突を見落とさない範囲で間引かれるため、処理負荷が高くなりがちな形状データを用いた衝突チェック処理に要する時間が減少し、実際の機械の動作に対して常に先行して衝突チェックを行なうことができる。
【産業上の利用可能性】
【００５５】
この発明の数値制御方法及び数値制御装置は、衝突チェックを行う数値制御装に用いられるのに適している。
【図１】
2009130759.tif 000003
【図２】
2009130759.tif 000004
【図３】
2009130759.tif 000005
【図４】
2009130759.tif 000006
【図５】
2009130759.tif 000007
【図６】
2009130759.tif 000008
【図７】
2009130759.tif 000009
【図８】
2009130759.tif 000010
【図９】
2009130759.tif 000011
【図１０】
2009130759.tif 000012
【国際調査報告】
2009130759.tif 000013
2009130759.tif 000014
2009130759.tif 000015
2009130759.tif 000016