(57)【特許請求の範囲】
【請求項１】
加工プログラムに基づいて工作機械内のアイテムを駆動制御して加工運転を行う数値制御装置と、前記工作機械の加工運転と連動して動作する周辺機器とを備えたシステムにおいて、
前記数値制御装置は、
前記アイテムの形状を示す形状データを記憶する形状データ記憶部と、
前記加工プログラムと、前記形状データとに基づいて、前記工作機械の前記工作機械内における前記アイテムの配置と、当該アイテム配置の保持時間とを含むアイテム配置データを生成する加工プログラム先読処理部と、
前記アイテム配置データを出力するデータ出力部と、
を備え、
前記周辺機器は、
前記周辺機器が動作する際に占有する作業領域にかかる情報を含む空間データと前記動作に要する時間に係る作業時間とを関連付けて記憶する作業情報記憶部と、
前記データ出力部が出力するアイテム配置データと、前記空間データと前記作業時間とに基づいて、前記周辺機器の動作が前記工作機械内で駆動する前記アイテムと干渉しないタイミングに前記周辺機器の動作の開始を指令する干渉判断処理部と、
前記干渉判断処理部の指令を受けて周辺機器の動作を開始するプログラム実行部と、
を備えることを特徴とする自立制御システム。
【請求項２】
前記加工プログラム先読処理部は、前記加工プログラムを先読みし、前記加工運転に先立って前記アイテム配置データを生成し、
前記データ出力部は、前記加工プログラムに基づく加工運転と同期して前記アイテム配置データを出力する、
ことを特徴とする請求項１に記載された自立制御システム。
【請求項３】
前記周辺機器の作業時間は、実際に動作に要する時間に所定の余裕時間を加えたものである、
ことを特徴とする請求項１または２に記載された自立制御システム。
【請求項４】
前記数値制御装置の内部時計と前記周辺機器の内部時計が同一時刻を指すように時間調整されており、
前記保持時間は時刻範囲により定義されている、
ことを特徴とする請求項１〜３の何れか１つに記載された自立制御システム。
【請求項５】
前記形状データおよび前記形状データの基準位置を前記数値制御装置と前記周辺機器とによりあらかじめ共有し、
前記アイテム配置データに含まれる前記アイテムの配置は、前記形状データの基準位置により定義される、
ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システム。
【請求項６】
前記工作機械内の空間はグリッドで区分けされた複数の領域の集合としてモデル化されており、
前記数値制御装置と前記周辺機器は、あらかじめ前記複数の領域の位置と範囲を示す座標情報とを共有しており、
前記アイテム配置データに含まれる前記アイテムの配置は、前記アイテムが干渉する前記領域の前記座標情報により定義される、
ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システム。
【請求項７】
前記アイテムの形状を示す形状データは前記アイテムの３次元形状を示すポリゴン形状データであり、
前記アイテム配置データ、及び前記空間データは３次元座標系の情報に基づいて定義される、
ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械の周辺機器が工作機械と連動して動作を行う際、周辺機器が自立的に工作機械と連動することを可能とするシステムに関する。
【背景技術】
【０００２】
従来、工作機械と周辺機器が連動して動作する場合、工作機械内のワーク、工具、チャック等のアイテムと周辺機器が干渉しないようタイミングを計る目的で「Ｍコードによる待合せ制御のプログラム」を工作機械の数値制御装置および周辺機器のプログラムに挿入して、両者の干渉を防いでいた（例えば、特許文献１，２）。
【０００３】
Ｍコードは、待合せ制御において工作機械から周辺機器に任意の動作を指示する際に使用する信号群を意味する。
図１２は、従来技術における待ち合わせ制御における工作機械の動作のフローチャートである。
●［ステップＳＸ０１］加工プログラム１による加工が終了して工具を交換した後、工作機械は次の加工プログラム２を実行するまでの合間に周辺機器に動作してほしいタイミングでＭコードを周辺機器に送信し、周辺機器からの動作完了信号が届くまで待機する。
●［ステップＳＸ０２］周辺機器からの動作完了信号を受信すると工作機械は加工プログラム２による加工へと移行する。
【０００４】
また、待ち合わせ制御における周辺機器の動作の流れは以下の通りである。
●［ステップＳＹ０１］周辺機器は工作機械からＭコード信号を受信するまで待機し、工作機械からのＭコード信号を受信すると周辺機器は動作（切粉排出など）を開始する。
●［ステップＳＹ０２］周辺機器は動作が完了すると工作機械に動作完了信号を発信する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０６−０２８０１９号公報
【特許文献２】特開昭６２−２６４８５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術では、工作機械と周辺機器を連動させるために数値制御装置と周辺機器それぞれのプログラムにＭコードのプログラムを挿入する必要があるため、オペレータが待合せプログラムを作成するコストがかかるという問題があった。また、加工プログラムと周辺機器のプログラムを対にして作成する必要があるため、加工プログラム側に変更が発生した場合、周辺機器のプログラムも対応して変更が必要となる場合があり、そのような場合、変更内容が周辺機器のプログラムに及ぼす影響の解作業がオペレータの大きな負担となるという問題があった。
【０００７】
そこで本発明の目的は、工作機械の周辺機器が工作機械と連動して動作を行う際、周辺機器が自立的に工作機械と連動することを可能とするシステムを提供することである。
【課題を解決するための手段】
【０００８】
本願の請求項１に係る発明は、加工プログラムに基づいて工作機械内のアイテムを駆動制御して加工運転を行う数値制御装置と、前記工作機械の加工運転と連動して動作する周辺機器とを備えたシステムにおいて、前記数値制御装置は、前記アイテムの形状を示す形状データを記憶する形状データ記憶部と、前記加工プログラムと、前記形状データとに基づいて、前記工作機械の前記工作機械内における前記アイテムの配置と、当該アイテム配置の保持時間とを含むアイテム配置データを生成する加工プログラム先読処理部と、前記アイテム配置データを出力するデータ出力部と、を備え、前記周辺機器は、前記周辺機器が動作する際に占有する作業領域にかかる情報を含む空間データと前記動作に要する時間に係る作業時間とを関連付けて記憶する作業情報記憶部と、前記データ出力部が出力するアイテム配置データと、前記空間データと前記作業時間とに基づいて、前記周辺機器の動作が前記工作機械内で駆動する前記アイテムと干渉しないタイミングに前記周辺機器の動作の開始を指令する干渉判断処理部と、前記干渉判断処理部の指令を受けて周辺機器の動作を開始するプログラム実行部と、を備えることを特徴とする自立制御システムである。
【０００９】
本願の請求項２に係る発明は、前記加工プログラム先読処理部は、前記加工プログラムを先読みし、前記加工運転に先立って前記アイテム配置データを生成し、前記データ出力部は、前記加工プログラムに基づく加工運転と同期して前記アイテム配置データを出力する、ことを特徴とする請求項１に記載された自立制御システムである。
【００１０】
本願の請求項３に係る発明は、前記周辺機器の作業時間は、実際に動作に要する時間に所定の余裕時間を加えたものである、ことを特徴とする請求項１または２に記載された自立制御システムである。
【００１１】
本願の請求項４に係る発明は、前記数値制御装置の内部時計と前記周辺機器の内部時計が同一時刻を指すように時間調整されており、前記保持時間は時刻範囲により定義されている、ことを特徴とする請求項１〜３の何れか１つに記載された自立制御システムである。
【００１２】
本願の請求項５に係る発明は、前記形状データおよび前記形状データの基準位置を前記数値制御装置と前記周辺機器とによりあらかじめ共有し、前記アイテム配置データに含まれる前記アイテムの配置は、前記形状データの基準位置により定義される、ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システムである。
【００１３】
本願の請求項６に係る発明は、前記工作機械内の空間はグリッドで区分けされた複数の領域の集合としてモデル化されており、前記数値制御装置と前記周辺機器は、あらかじめ前記複数の領域の位置と範囲を示す座標情報とを共有しており、前記アイテム配置データに含まれる前記アイテムの配置は、前記アイテムが干渉する前記領域の前記座標情報により定義される、ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システムである。
【００１４】
本願の請求項７に係る発明は、前記アイテムの形状を示す形状データは前記アイテムの３次元形状を示すポリゴン形状データであり、前記アイテム配置データ、及び前記空間データは３次元座標系の情報に基づいて定義される、ことを特徴とする請求項１〜４のいずれか１つに記載された自立制御システムである。
【発明の効果】
【００１５】
本発明により、オペレータによる待合せプログラミングが不要になり、また、加工プログラムを変更しても周辺機器のプログラム変更は不要になるため、オペレータの作業コストを削減するという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】本発明における周辺機器の自立制御技術の概要について説明する図である。
【図２】本発明の実施の形態における数値制御装置と周辺機器から構成される自立制御システムの要部ブロック図である。
【図３】本発明の実施の形態におけるポリゴン形状データを示す図である。
【図４】本発明の実施の形態におけるアイテム配置データを示す図である。
【図５】本発明の実施の形態における周辺機器の空間データを示す図である。
【図６】本発明の実施の形態における干渉判断処理の概要を示す図である。
【図７】本発明の実施の形態における数値制御装置と周辺機器上で実行される各処理のシーケンス図である。
【図８】本発明の実施の形態における加工プログラム先読処理部が実行する処理の概略フローチャートである。
【図９】本発明の実施の形態における、干渉判断処理部が実行する処理の概略フローチャートである。
【図１０】本発明の実施の形態における、グリッドモデルを用いたデータ表現について説明する図である。
【図１１】本発明の実施の形態における、アイテムの基準位置を用いたデータ表現について説明する図である。
【図１２】従来技術における待ち合わせ制御における工作機械の動作のフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を図面と共に説明する。最初に本発明における周辺機器の自立制御技術の概要について説明する。
本発明の数値制御装置は、加工プログラムを実行する際、加工プログラムの内容を先読みし、工作機械内のアイテムの配置を示すデータとその配置が保持される時間とが記録されたデータを作成し、周辺機器に送信する。また、周辺機器は数値制御から提供されたデータに対して自らの作業範囲と作業時間を照らし合わせ、動作可能な時間が確保されたタイミングで動作することで、自立的な制御を行う。
このような手法を導入することにより、図１の本発明の概略フローチャートに示すように、従来技術と比較してＭコードなどを用いた待ち合わせ制御が不要なプログラムで工作機械とロボットの連携した動作を実現する。
【００１８】
図２は、本発明の一実施の形態における数値制御装置と周辺機器から構成されるシステムの要部ブロック図である。本実施の形態の数値制御装置１０は、加工プログラム先読処理部１１、運転実行部１２、データ出力部１３、サーボ制御部１４から構成されている。
【００１９】
加工プログラム先読処理部１１は、数値制御装置１０が備えるメモリ（図示せず）などに記憶されている加工プログラム１００を、該加工プログラム１００に基づいた加工運転が行われる前に先読みして解析し、該加工プログラム１００による加工運転中に制御対象となる工作機械が備える各アイテムが配置される位置に関するデータであるアイテム配置データ１２０を生成する。
【００２０】
加工プログラム先読処理部１１によるアイテム配置データ１２０の生成処理では、加工プログラム１００に加えて、制御対象となる工作機械に用いられている工具やワーク、チャックなどの工作機械内の一部を占有するアイテムの形状データが用いられる。これらアイテムの形状データは、例えばポリゴンによりアイテムの形状を示したデータとして生成され、加工プログラムによる加工運転を開始する前に各アイテム固有のＩＤと関連付けて数値制御装置１０のメモリ（図示せず）などに設定しておく。
【００２１】
ポリゴンを用いたアイテムの形状データの一例として、図３に示すように、該アイテムを内部に収めることができる直方体の形状を示すデータとして生成してもよく、このように簡易な形状を採用することで演算能力が低い数値制御装置１０や周辺機器２０でも高速にアイテムの配置などを演算することができる。なお、座標軸に対して向きが変化するアイテムや、形状が変化するアイテムについては、アイテムの向きや形状が変化しても内部に収めることができる程度の大きさで直方体を形成しておくとよい。
【００２２】
加工プログラム先読処理部１１は、図４に示すように、加工プログラム１００を解析することで、各アイテムの工作機械内における座標位置と、該各アイテムの工作機械内における座標位置が保持される時間を算出し、アイテムの配置が保持される保持時間と各アイテムの座標情報とを関連付けたアイテム配置データ１２０を生成する。アイテム配置データ１２０は、各アイテムの配置に変化が起こるたびに生成される。
【００２３】
そして、生成されたアイテム配置データ１２０は、データ出力部１３を通して周辺機器へと出力される。アイテム配置データ１２０の出力は、当該アイテム配置データ１２０の生成元の加工プログラムによる加工運転に略遅延することなく周辺機器へと出力される。データ出力部１３によるアイテム配置データ１２０の出力は、運転実行部１２における加工プログラム１００による加工運転と同期して出力される。
【００２４】
運転実行部１２は、加工プログラム先読処理部１１を介して加工プログラムを読み出し、該加工プログラムに基づいて主軸モータ１５やサーボモータ１６などに対する指令データを生成して出力する。サーボ制御部１４は、運転実行部１２が出力した指令データを受け付け、該指令データに基づいて主軸モータ１５やサーボモータ１６などを制御する。
【００２５】
一方で、本実施の形態の周辺機器２０は、干渉判断処理部２１、プログラム実行部２２、周辺機器ハードウェア制御部２３を備えている。
干渉判断処理部２１は、データ出力部１３が出力したアイテム配置データ１２０を受け付け、アイテム配置データ１２０に記録されている各アイテムの工作機械内での位置が、周辺機器自身の動作と干渉するか否かを判断し、干渉しないタイミングでプログラム実行部２２へとプログラム実行の指令を出力する。
【００２６】
干渉判断処理部２１による干渉の判断処理では、データ出力部１３から受け付けたアイテム配置データ１２０に加えて、周辺機器動作プログラム１４０を動作させた際に、周辺機器自身が作業領域として占有する工作機械内での空間データ、および周辺機器動作プログラム１４０の開始から終了までの作業時間に係るデータが用いられる。図５は、３次元空間で表現された周辺機器の空間データと、作業時間に係るデータの一例である。これらデータは、周辺機器の設計者により、予め周辺機器のメモリ（図示せず）に設定しておく。なお、該作業時間は数値制御の作業開始タイミングが多少遅れても工作機械に干渉することのないよう余裕を持った作業時間を設定しておくとよい。
【００２７】
干渉判断処理部２１は、アイテム配置データ１２０を受信した時点から、工作機械内で該アイテム配置データ１２０に示される順に各アイテムが配置されるとみなす。そして、該アイテム配置データ１２０に示される各アイテムの形状データの配置と、周辺機器の空間データに基づいて、各アイテムと周辺機器の作業空間が干渉しない時間帯を抽出し、抽出した時間帯が周辺機器の作業時間よりも長い場合に、周辺機器動作プログラムを起動できると判断する。
【００２８】
図６は、干渉判断処理部２１が、アイテム配置データ１２０と、周辺機器の空間データおよび作業時間に係るデータに基づいて、各アイテムの工作機械内での配置が、周辺機器自身の動作と干渉するか否かを判断する処理を図で示したものである。図６では、１番目のアイテム配置データ１２０に示される各アイテムの配置が、周辺機器の作業空間と干渉するため、１０００ｍｓの間は周辺機器動作プログラムが起動できないと判断するが、２，３番目のアイテム配置データ１２０に示される各アイテムの配置は、周辺機器の作業空間と干渉せず、また、アイテムの保持時間からすると少なくとも連続して６０００ｍｓは干渉しない状態が維持され、周辺機器の作業時間５０００ｍｓよりも長いので、１０００ｍｓ後に周辺機器動作プログラムの開始が可能であると判断し、１０００ｍｓ後にプログラム実行部２２へとプログラム実行の指令を出力する。
【００２９】
プログラム実行部２２は、干渉判断処理部２１からのプログラム実行の指令を受けて、周辺機器動作プログラム１４０を動作させ、ロボットアームなどのハードウェア２４に対する指令データを生成して出力する。周辺機器ハードウェア制御部２３は、プログラム実行部２２が出力した指令データを受け付け、該指令データに基づいてロボットアームなどのハードウェア２４を制御する。
【００３０】
図７は、本実施の形態における数値制御装置１０と周辺機器２０としての切粉排出ロボットとにおいて実行される各処理のシーケンスを示す図である。図に示すように、加工プログラムによる加工運転がされる際に、先読みされた加工プログラムに基づいてアイテム配置データ１２０が生成されて周辺機器に対して出力される。そして、周辺機器２０では、取得したアイテム配置データ１２０を解析して、干渉しないタイミングでロボットプログラムを起動する。このように、切粉排出ロボット側では、ロボットプログラムの開始タイミングを待合せ処理をすることなく自律的に判断することができる。
【００３１】
図８は、本実施の形態における、加工プログラム先読処理部１１が実行する処理の概略フローチャートである。
●［ステップＳＡ０１］工作機械で用いられているアイテムの形状データを読み込む。
●［ステップＳＡ０２］加工プログラム１００から１行分先読みする。
●［ステップＳＡ０３］加工プログラム１００を解析して、加工に用いられている各アイテムの、工作機械内での座標を算出する。
【００３２】
●［ステップＳＡ０４］加工プログラム１００を解析して、各アイテムがステップＳＡ０３で算出された各アイテムの座標位置が保持される時間を算出する。
●［ステップＳＡ０５］ステップＳＡ０３で算出した各アイテムの座標位置と、ステップＳＡ０４で算出した保持時間とに基づいて、アイテム配置データ１２０を生成する。
●［ステップＳＡ０６］加工プログラム１００のプログラム終了まで先読みしたか否かを判断する。プログラム終了まで先読みした場合には本処理を終了し、まだプログラム行が残っている場合にはステップＳＡ０２へ戻る。
【００３３】
図９は、本実施の形態における、干渉判断処理部２１が実行する処理の概略フローチャートである。
●［ステップＳＢ０１］工作機械内の各アイテムと、周辺機器動作プログラムを起動するタイミングを表す変数である開始時間Ｔstと周辺機器２０の作業領域とが干渉しない累積時間を表す変数である処理時間Ｔpを０に初期化する。
●［ステップＳＢ０２］数値制御装置１０から受信したアイテム配置データ１２０と周辺機器２０の空間データとに基づいて、工作機械内の各アイテムと周辺機器２０の作業領域の位置関係を解析する。
●［ステップＳＢ０３］ステップＳＡ０１で解析した結果、解析対象としたアイテム配置データ１２０に示される各アイテムの配置が周辺機器２０の作業領域と干渉しないか否かを判定する。干渉しない場合にはステップＳＢ０４へ進み、干渉する場合にはステップＳＢ０５へ進む。
【００３４】
●［ステップＳＢ０４］解析対象としたアイテム配置データ１２０の保持時間を、処理時間Ｔpへと加算する。
●［ステップＳＢ０５］開始時間Ｔstに処理時間Ｔpを代入した後、処理時間Ｔpを０にクリアする。
●［ステップＳＢ０６］処理時間Ｔpが、周辺機器２０の作業時間よりも長いか否かを判定する。処理時間Ｔpが周辺機器２０の作業時間よりも長い場合には、ステップＳＢ０７へ進み、そうでない場合にはステップＳＢ０８へ進む。
●［ステップＳＢ０７］開始時間Ｔst後に周辺機器動作プログラムを起動するようにタスクを設定する。開始時間Ｔstが０の場合には、周辺機器動作プログラムを即時起動する。
●［ステップＳＢ０８］次のアイテム配置データ１２０が無いか判定する。次のアイテム配置データ１２０が無い場合には本処理を終了し、次のアイテム配置データ１２０がある場合にはステップＳＢ０２へ戻る。
【００３５】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例に限定されることなく、適宜の変更を加えることにより、その他の態様で実施することができる。例えば、上述した実施の形態では、アイテム配置データ１２０の生成に用いる形状データとして簡易な直方体のポリゴン形状を用いているが、数値制御装置１０や周辺機器２０の演算部における３次元データの処理能力が十分に高い場合には、よりアイテムの形状に近似されたポリゴン形状を用いるようにしてもよい。
【００３６】
また、工作機械内の空間をグリットで区分けした領域の集合としてモデル化して各々の領域の座標位置を数値制御装置１０と周辺機器２０であらかじめ共有しておき、アイテムが干渉する全ての領域の識別情報又は座標位置をアイテム配置データ１２０の代わりとして周辺機器に通知してもよい。
例えば、図１０左に示すように工作機械内の空間を３次元グリッドで区分けした立方体の集合としてモデル化した時、図１０右に示すように、アイテムが下から４段目の真ん中の４つの立方体内に含まれる位置に存在する場合には、数値制御装置１０から周辺機器２０に対してアイテム配置データとして当該４つの立方体の座標位置のみを伝達する。また、周辺機器２０側でも周辺機器２０の作業における占有空間が干渉する立方体（図１０右の上下方向で右下の２立方体）の識別情報又は座標位置を事前に記憶しておくようにすれば、アイテム配置データ１２０と空間データとに同じ立方体が含まれていないかを判定するだけで、工作機械内のアイテムと周辺機器２０の作業空間とが干渉しないことが簡易に判定することができる。
【００３７】
また、図１１に示すように、アイテムの形状データおよびアイテム形状の基準位置をあらかじめ数値制御装置１０および周辺機器２０で共有しておくことで、加工プログラム実行時に数値制御装置１０から周辺機器２０に送られるアイテム配置データにアイテムの基準位置のみを送ることでデータを簡易化を実現することもできる。
【００３８】
また、数値制御装置１０内の内部時計と周辺機器２０の内部時計とを、手動時刻合わせする、数値制御装置１０と周辺機器２０とをそれぞれネットワークに接続してＮＴＰサーバで時刻合わせする、または電波時計を採用して自動的に時刻合わせする、など、何らかの手法で同一時刻を指すようにしておくことにより、アイテム配置データ１２０内の保持時間を時刻範囲として指定することができる。このようにすることで、周辺機器２０は工作機械内のアイテム配置を絶対時刻の範囲として解析することができるため、アイテム配置データ１２０を運転実行部１２による加工運転に同期して送信する必要がなくなり、例えば事前にこれから行われる加工工程のアイテム配置データ１２０をすべて生成して送信しておき、周辺機器２０側でより計画的に周辺機器動作プログラムの起動タイミングを決定することができる。
【００３９】
また、上述した本発明の各実施の形態では、工作機械内のアイテムの形状、アイテムの配置、周辺機器２０が占有する空間データ、工作機械内の空間モデルなどについて、３次元のデータにより表現された例に基づいて説明してきたが、本発明を、例えば工作機械内におけるアイテムや周辺機器のハードウェアがＸ−Ｙ座標などの２次元方向でのみ動作するような工作機械に適用する場合には、工作機械内のアイテムの形状、アイテムの配置、周辺機器２０が占有する空間、工作機械内の空間モデルを２次元のデータにより表現するようにしてもよい。このような工作機械においては各データを２次元のデータとして表現したとしても本発明の効果は十分に得られると共に、数値制御装置１０や周辺機器２０の演算部における処理を大幅に軽減することができる。
【符号の説明】
【００４０】
１０    数値制御装置
１１    加工プログラム先読処理部
１２    運転実行部
１３    データ出力部
１４    サーボ制御部
１５    主軸モータ
１６    サーボモータ
２０    周辺機器
２１    干渉判断処理部
２２    プログラム実行部
２３    周辺機器ハードウェア制御部
２４    ハードウェア
１００    加工プログラム
１１０    形状データ
１２０    アイテム配置データ
１３０    周辺機器の空間データと作業時間データ
１４０    周辺機器動作プログラム
【図１】
0006026484.tif 000002
【図２】
0006026484.tif 000003
【図７】
0006026484.tif 000004
【図８】
0006026484.tif 000005
【図３】
0006026484.tif 000006
【図４】
0006026484.tif 000007
【図５】
0006026484.tif 000008
【図６】
0006026484.tif 000009
【図９】
0006026484.tif 000010
【図１０】
0006026484.tif 000011
【図１１】
0006026484.tif 000012
【図１２】
0006026484.tif 000013