(57)【要約】  ＮＣ工作機械システムは、ＮＣ工作機械（１０）、ＮＣ工作機械用の第１操作盤（２２）、第２操作盤（２４）、多関節ロボット（４０）、メモリ（４５０）、及びロボット制御装置（５０）を備える。多関節ロボット（４０）は、ＮＣ工作機械用の上方に配置されている。メモリ（４５０）は、多関節ロボット（４０）を動作させるための待機位置復帰プログラムを記憶する。ロボット制御装置（５０）は、プログラムに従って多関節ロボット（４０）を制御する。第１操作盤（２２，２４）には、メモリ（４５０）に記憶した待機位置復帰プログラムを実行して多関節ロボット（４０）を動作させるために操作されるスイッチキー（２２ｃ，２４ｃ）がそれぞれ設けられている。
2013027283.tif 000002
【特許請求の範囲】
【請求項１】
ＮＣ工作機械と、前記ＮＣ工作機械用の操作盤と、前記ＮＣ工作機械の上方に配置された多関節ロボットと、前記多関節ロボットを動作させるためのプログラムを記憶するプログラム記憶手段と、前記プログラムに従って前記多関節ロボットを制御するロボット制御装置とを備えたＮＣ工作機械システムにおいて、
前記操作盤には、前記プログラム記憶手段に記憶したプログラムを実行して前記多関節ロボットを動作させるスイッチ手段が設けられ、
前記プログラムは、前記多関節ロボットの目標位置姿勢が設定されると共に、前記スイッチ手段がオン操作されたときの前記多関節ロボットの位置姿勢に応じて移動経路が選択され、その選択された移動経路に沿って前記目標位置姿勢を取るよう前記多関節ロボットを移動させるようにプログラミングされ、
前記ロボット制御装置は、前記プログラムに従って前記多関節ロボットを制御することを特徴とするＮＣ工作機械システム。
【請求項２】
前記ＮＣ工作機械の側部には、ワークのパレットが配置され、
前記多関節ロボットは、前記ＮＣ工作機械と前記パレットとの間を移動可能であり、
前記パレット及び前記ＮＣ工作機械の周囲は安全柵で囲われ、
前記プログラムは、前記多関節ロボットの目標位置姿勢が設定されると共に、前記スイッチ手段がオン操作されたときの前記多関節ロボットの位置姿勢に応じて移動経路が選択され、その選択された移動経路に沿って前記安全柵との干渉を回避しながら前記目標位置姿勢を取るよう前記多関節ロボットを移動させるようにプログラミングされ、
前記ロボット制御装置は、前記プログラムに従って前記多関節ロボットを制御することを特徴とする請求項１に記載のＮＣ工作機械システム。
【請求項３】
前記操作盤は、前記ＮＣ工作機械付近に配置された第１操作盤と、前記パレット付近に配置された第２操作盤とを含み、
前記第１及び第２操作盤のそれぞれには、前記プログラムを実行するために操作される前記スイッチ手段が設けられていることを特徴とする請求項１又は請求項２に記載のＮＣ工作機械システム。
【請求項４】
前記プログラムは、前記ＮＣ工作機械で使用される直交座標系の下でプログラミングされていることを特徴とする請求項１乃至請求項３のうちいずれか１項に記載のＮＣ工作機械システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＣ工作機械システムに関する。
【背景技術】
【０００２】
従来から、多関節ロボットは、複数の回転軸により構成されている。そのため、作業者がティーチングボックスを用いて多関節ロボットを手動で操作することは、極めて困難である。操作に習熟した作業者であっても、多関節ロボットの周囲に干渉物が存在する場合、軸の選択や移動方向を間違えると、多関節ロボットを干渉物に干渉させてしまう虞がある。このため、作業者は、最適な軸の選択や移動方向を慎重に考慮しながら、多関節ロボットを少しずつ動かすようにしている。このように、作業者にとって多関節ロボットの操作は、非常に神経を使う作業であり、扱い難い作業である。特に日本では、多関節ロボットを操作するのに、法令で定められた講習を受けて資格を取得しなければならない。【０００３】
ロボットを操作したことのない一般の作業者は、ＮＣ工作機械の附属品としてシステム化された多関節ロボットを操作できない。このため、多関節ロボットによる作業を必要とする特殊なケースを除いて、上記のような工作機械の導入は敬遠されてきた。【０００４】
特許文献１は、複数の動作プログラムにそれぞれ対応したスイッチを設け、押されたスイッチに応じて読み出されたプログラムに従い作業を実行する工業用ロボットを開示する。特許文献２は、ティーチングペンダントの起動スイッチを長い時間で操作すると連続動作モードでロボットが起動し、短い時間で操作するとシングルブロック運転でロボットが起動することを開示する。いずれの特許文献も、多関節ロボットを用いてＮＣ工作機械をシステム化した場合において、ロボット操作の扱いになれていない作業者への考慮がされていない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】実開平０６−００２４０８号公報
【特許文献２】特開平０５−３０１１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、多関節ロボットとＮＣ工作機械を備えるＮＣ工作機械システムにおいて、多関節ロボットを初めて操作する作業者であっても、安全に操作することのできるＮＣ工作機械システムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の第一の態様によれば、ＮＣ工作機械と、ＮＣ工作機械用の操作盤と、ＮＣ工作機械の上方に配置された多関節ロボットと、多関節ロボットを動作させるためのプログラムを記憶するプログラム記憶手段と、プログラムに従って多関節ロボットを制御するロボット制御装置とを備えたＮＣ工作機械システムが提供される。操作盤には、プログラム記憶手段に記憶したプログラムを実行して多関節ロボットを動作させるスイッチ手段が設けられている。プログラムは、多関節ロボットの目標位置姿勢が設定されると共にスイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて移動経路が選択されその選択された移動経路に沿って目標位置姿勢を取るよう多関節ロボットを移動させるようにプログラミングされている。ロボット制御装置は、プログラムに従って多関節ロボットを制御する。【０００８】
この構成によれば、作業者が、操作盤のスイッチ手段を操作すると、プログラムが実行されて、多関節ロボットが動作する。これにより、多関節ロボットを初めて操作する作業者であっても、安全に操作することができる。また、スイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて移動経路が選択され、選択された移動経路に沿って多関節ロボットが目標位置姿勢を取るように移動する。このため、作業者は、多関節ロボットの位置姿勢に応じて多関節ロボットを操作する必要がなくなる。【０００９】
上記のＮＣ工作機械システムにおいて、ＮＣ工作機械の側部には、ワークのパレットが配置され、多関節ロボットは、ＮＣ工作機械とパレットとの間を移動可能であり、パレット及びＮＣ工作機械の周囲は安全柵で囲われ、プログラムは、多関節ロボットの目標位置姿勢が設定されると共にスイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて移動経路が選択されその選択された移動経路に沿って安全柵との干渉を回避しながら目標位置姿勢を取るよう多関節ロボットを移動させるようにプログラミングされ、ロボット制御装置は、プログラムに従って多関節ロボットを制御することが好ましい。【００１０】
この構成によれば、プログラムが実行されると、スイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて移動経路が選択されると共に安全柵との干渉を回避しながら目標位置姿勢を取るように多関節ロボットが移動する。このため、作業者は、多関節ロボットの位置姿勢に応じて安全柵との干渉を回避しながら多関節ロボットを操作する必要がなくなる。【００１１】
上記のＮＣ工作機械システムにおいて、操作盤は、ＮＣ工作機械付近に配置された第１操作盤と、パレット付近に配置された第２操作盤とを含み、第１及び第２操作盤のそれぞれには、プログラムを実行するために操作されるスイッチ手段が設けられていることが好ましい。【００１２】
この構成によれば、ＮＣ工作機械付近に多関節ロボットが位置している場合、ＮＣ工作機械付近にある第１操作盤のスイッチ手段を操作すれば、プログラムを実行することができる。一方、パレット付近に多関節ロボットが位置している場合、パレット付近の第２操作盤にあるスイッチ手段を操作すれば、プログラムを実行することができる。【００１３】
上記のＮＣ工作機械システムにおいて、プログラムは、ＮＣ工作機械で使用される直交座標系の下でプログラミングされていることが好ましい。【００１４】
この構成によれば、ＮＣ工作機械で使用される直交座標系の下でプログラムを実行させることができる。このため、ＮＣ工作機械の操作に慣れている作業者にとって、多関節ロボットの動作の理解が容易である。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るＮＣ工作機械システムの正面図。
【図２】前フェンスを省略したＮＣ工作機械システムの正面図。
【図３】工作機械内に移動したときの多関節ロボットの側面図。
【図４】パレットの上方に移動したときの多関節ロボットの側面図。
【図５】多関節ロボットの斜視図。
【図６】システムのブロック図。
【図７】ワンタッチボタンで起動したプログラムのフローチャート。
【図８】ワンタッチボタンで起動したプログラムのフローチャート。
【図９】パターン５のフローチャート。
【図１０】パターン５〜パターン１６の各処理と、前フェンス近傍、前フェンス離反、本機近傍、走行端近傍及び本機・走行端離反との関係を表す説明図。
【図１１】ロボットハンドの斜視図。
【図１２】待機位置において待機姿勢を取る多関節ロボットの側面図。
【図１３】（ａ）は、パターン５〜パターン１６の各処理が行われるロボットハンドの位置を示す模式図、（ｂ）は、パターン５〜パターン１６の各処理が行われるロボットハンドの位置を示す模式図。
【図１４】前フェンスと干渉しない場合の多関節ロボットの動きを示す模式図。
【図１５】前フェンスと干渉する場合の多関節ロボットの動きを示す模式図。
【図１６】Ｊ２軸給油姿勢を取る多関節ロボットの側面図。
【図１７】Ｊ５，Ｊ６軸給油姿勢を取る多関節ロボットの側面図。
【発明を実施するための形態】
【００１６】
以下、本発明を具体化したＮＣ工作機械システムの一実施形態を図１〜図１７を参照して説明する。
【００１７】
図１及び図６に示すように、ＮＣ工作機械システムは、ＮＣ工作機械１０、ＮＣ工作機械１０を制御するＮＣ制御装置２０、多関節ロボット４０、及び多関節ロボット４０を制御するロボット制御装置５０を備えている。多関節ロボット４０は、ＮＣ工作機械１０の上方に配置されるガントリーレール３０上を走行する。ＮＣ工作機械１０は、対向主軸型複合旋盤である。図１の右側に示すように、ＮＣ工作機械１０の側方には、ワーク供給・排出用のパレット６０が配置されている。ガントリーレール３０は、ＮＣ工作機械１０の上面とパレット６０の上面との間を跨るように延びている。なお、本実施形態において、図１及び図２に示すＮＣ工作機械１０を正面から見た場合の上下方向，前後方向，左右方向をそれぞれ、Ｚ軸方向，Ｘ軸方向，Ｙ軸方向とする。また、図１〜図５に示すように、＋Ｘ軸方向は手前方向であり、＋Ｙ軸方向は右方向であり、＋Ｚ軸方向は上方向である。
【００１８】
ＮＣ工作機械１０のベッド１０ａ上には、第１主軸台１０ｂ及び第２主軸台１０ｃが配置されている。第１主軸台１０ｂには、ワークを保持するチャック１０ｆを備えた主軸ヘッド１０ｄが配置されている。第２主軸台１０ｃには、ワークを保持するチャック１０ｇを備えた主軸ヘッド１０ｅが配置されている。ＮＣ工作機械１０は、工具主軸ユニット１０ｈを備えている。工具主軸ユニット１０ｈは、コラム及びサドルにより支持されている。コラムは、ベース部に対しＸ軸方向へ移動可能である。ベース部は、Ｙ軸方向へ移動可能である。サドルは、コラムに対してＺ軸方向に移動可能である。
【００１９】
コラムは、図６に示すＸ軸モータ３２０によりＸ軸方向に移動する。また、コラムは、Ｙ軸モータ３３０により駆動されたベース部によってＹ軸方向にも移動する。また、サドルは、図６に示すＺ軸モータ３４０により駆動されてＺ軸方向にも移動する。工具主軸ユニット１０ｈには、加工工具１０ｊが装着されている。
【００２０】
図５に示すように、多関節ロボット４０は、６軸（Ｊ１軸〜Ｊ６軸）を有する。多関節ロボット４０は、水平方向と一致するＪ１軸に沿って移動するロボットベース４１を備えている。ロボットベース４１は、ガントリーレール３０に対し、ガントリーレール３０の長手方向に沿って移動可能に取り付けられている。ロボットベース４１には、ラックアンドピニオン型のレール駆動部が設けられている。レール駆動部は、図６に示すＪ１軸モータＭ１を備えている。ガントリーレール３０のラックにＪ１軸モータＭ１の出力軸に設けられたピニオンが噛み合うため、Ｊ１軸モータＭ１が駆動されると、ロボットベース４１は、図２に示すガントリーレール３０の右側走行端ＲＥと左側走行端ＬＥの間を移動する。Ｊ１軸は、走行軸である。
【００２１】
ロボットベース４１上には、Ｊ１軸と平行なＪ２軸周りに揺動するＪ２軸アーム４２が連結されている。Ｊ２軸アーム４２は、ロボットベース４１に設けられた減速機構付きのＪ２軸モータＭ２により揺動する。Ｊ２軸アーム４２の先端には、Ｊ２軸と平行なＪ３軸周りに揺動するＪ３軸ケーシング４３が連結されている。Ｊ３軸ケーシング４３は、Ｊ３軸ケーシング４３に内蔵された減速機構付きのＪ３軸モータＭ３により揺動する。
【００２２】
Ｊ３軸ケーシング４３の先端には、Ｊ３軸と直交するＪ４軸周りに回動するＪ３軸アーム４４が連結されている。Ｊ３軸アーム４４は、Ｊ３軸ケーシング４３に設けられた減速機構付きのＪ４軸モータＭ４により回動する。Ｊ３軸アーム４４の先端には、Ｊ４軸と直交するＪ５軸周りに揺動するＪ６軸ユニット４５が連結されている。Ｊ６軸ユニット４５は、Ｊ３軸アーム４４に内蔵された減速機構付きの図６に示すＪ５軸モータＭ５により揺動する。図４及び図５に示すように、Ｊ６軸ユニット４５の先端部は、Ｊ５軸と直交するＪ６軸周りに回動する。Ｊ６軸ユニット４５の先端部は、Ｊ６軸ユニット４５に内蔵された減速機構付きのＪ６軸モータＭ６により回動する。Ｊ６軸ユニット４５の先端部には、ロボットハンド４６が連結されている。
【００２３】
図１１に示すように、ロボットハンド４６は、ベース４６ａを介してＪ６軸ユニット４５に固定されている。ベース４６ａの対向する一対の端面のうち一方にはローディングハンド４６ｂが固定され、他方にはアンローディングハンド４６ｃが固定されている。ローディングハンド４６ｂ及びアンローディングハンド４６ｃのそれぞれには、複数のジョー４６ｄが設けられている。ジョー４６ｄが作動して、ワーク８０が把持されたり、ワーク８０の把持が解除されたりする。Ｊ２軸からＪ６軸はいずれも旋回軸である。
【００２４】
図５に示すように、Ｊ２軸アーム４２が水平状態で＋Ｘ方向に向いたときのＪ２軸周りの回転角を０度とする。Ｊ２軸アーム４２が０度から上方向へ回転するときの回転角度を＋とし、下向き方向へ回転するときの回転角度を−とする。Ｊ３軸アーム４４が鉛直下方（−Ｚ方向）に向いたときの回転角を＋１８０度とする。すなわち、Ｊ３軸アーム４４が鉛直上方（＋Ｚ方向）に向いたときの回転角が０度である。Ｊ３軸アーム４４が０度から前方向へ回転するときのＪ３軸周りの回転角度を＋とし、後方向へ回転するときのＪ３軸周りの回転角度を−とする。Ｊ３軸アーム４４の基準部位４４ａが＋Ｘ方向に向いたときのＪ４軸周りの回転角を０度とする。０度の位置からＪ３軸アーム４４の基準部位４４ａが＋Ｙ方向へ向くときのＪ４軸周りの回転角度を＋とし、−Ｙ方向へ回転するときのＪ４軸周りの回転角度を−とする。Ｊ６軸ユニット４５がＪ３軸アーム４４と一直線状態に配置されたときのＪ５軸周りの回転角を０度とする。Ｊ６軸ユニット４５が０度から一方向（図５の前方向）へ回転するときのＪ５軸周りの回転角度を−とし、反対方向（図５の後方向）へ回転するときのＪ５軸周りの回転角度を＋とする。
【００２５】
図１１に示すように、Ｊ６軸ユニット４５に取り付けられたロボットハンド４６の基準部位４６ｅがＪ３軸アーム４４の基準部位４４ａと同一方向に向いたときのＪ６軸周りの回転角を０度とする。すなわち、この状態は、ローディングハンド４６ｂ及びアンローディングハンド４６ｃが水平状態で、かつＹ軸に沿って並んでいる状態に対応する。ロボットハンド４６の基準部位４６ｅが０度から＋Ｙ方向へ向くときのＪ６軸周りの回転角度を＋とし、−Ｙ方向へ回転するときのＪ６軸周りの回転角度を−とする。ロボットハンド４６は、パレット６０上のワーク８０を把持してＮＣ工作機械１０へ供給するとともに、ＮＣ工作機械１０で加工が終了したワーク８０をパレット６０上に排出する。
【００２６】
図１、図２、図３及び図４に示すように、ＮＣ工作機械１０及びパレット６０の周囲には、安全柵としての前フェンス７０、側面フェンス７２、及び後フェンス７４が配置されている。前フェンス７０には、ＮＣ工作機械１０及びパレット６０にそれぞれ対応するドア７６、７８が開閉自在に設けられている。ドア７６，７８には、窓７６ａ，７８ａが設けられている。前フェンス７０において、ＮＣ工作機械１０の窓７６ａ付近には、第１操作盤２２が設けられている。パレット６０の窓７８ａ付近には、第２操作盤２４が設けられている。第１操作盤２２及び第２操作盤２４は、ＮＣ工作機械用の操作盤に相当する。窓７８ａ付近には、ティーチングボックス２６が設けられている。ティーチングボックス２６は、図６に示すロボット制御装置５０に対し電気的に接続されている。
【００２７】
次に、ＮＣ工作機械システムの電気的構成について図６を参照して説明する。
【００２８】
図６に示すように、ＮＣ制御装置２０のＣＰＵ（中央処理装置）１１０は、ＮＣ制御装置２０を全体的に制御する。ＣＰＵ１１０には、バス線１２０を介して、ＲＯＭ１３０、ＲＡＭ１４０、メモリ１５０、インターフェイス１６０、通信インターフェイス１７０、Ｘ軸制御部２１０、Ｙ軸制御部２２０、Ｚ軸制御部２３０、主軸制御部２４０等が接続されている。ＲＯＭ１３０には、ＮＣ制御装置２０の全体を制御するための各種のシステムプログラムが格納されている。ＲＡＭ１４０には、一時的な計算データや表示データ及び第１操作盤２２、第２操作盤２４を介して、オペレータが入力した各種データ等が格納される。
【００２９】
インターフェイス１６０には、第１操作盤２２及び第２操作盤２４が接続されている。第１操作盤２２及び第２操作盤２４は、表示装置２２ａ，２４ａ及びデータ入力のためのキーボード２２ｂ，２４ｂを備えている。図１及び図６に示すように、キーボード２２ｂ，２４ｂには、多関節ロボット４０を待機位置へ復帰させるときに操作されるスイッチキー２２ｃ，２４ｃ、及び多関節ロボット４０を上昇させる際に操作されるボタン２２ｄ，２４ｄが設けられている。スイッチキー２２ｃ，２４ｃ及びボタン２２ｄ，２４ｄは、スイッチ手段である。
【００３０】
Ｘ軸制御部２１０は、ＣＰＵ１１０からのＸ軸の位置制御指令を受けて、位置制御指令をサーボアンプ２８０に出力する。サーボアンプ２８０は、位置制御指令に基づいてＸ軸モータ３２０を駆動し、コラムをＸ軸方向に移動する。Ｙ軸制御部２２０は、ＣＰＵ１１０からのＹ軸の位置制御指令を受けて、位置制御指令をサーボアンプ２９０に出力する。サーボアンプ２９０は、位置制御指令に基づいてＹ軸モータ３３０を駆動し、コラムをＹ軸方向に移動する。Ｚ軸制御部２３０は、ＣＰＵ１１０からのＺ軸の位置制御指令を受けて、位置制御指令をサーボアンプ３００に出力する。サーボアンプ３００は、位置制御指令に基づいてＺ軸モータ３４０を駆動し、サドルをＺ軸方向に移動する。
【００３１】
主軸制御部２４０は、ＣＰＵ１１０からの主軸回転制御指令を受け、主軸アンプ３１０に主軸速度信号を出力する。主軸アンプ３１０は、主軸速度信号に基づいて、指令された主軸回転数で主軸モータ３５０を回転させ、加工工具１０ｊを駆動する。通信インターフェイス１７０は、通信線Ｌを介して、ロボット制御装置５０と通信可能である。Ｘ軸モータ３２０、Ｙ軸モータ３３０、Ｚ軸モータ３４０及び主軸モータ３５０は、サーボモータからなる。
【００３２】
次に、ロボット制御装置５０を説明する。
【００３３】
ロボット制御装置５０のＣＰＵ４１０には、バス線４２０を介して、ＲＯＭ４３０、ＲＡＭ４４０、メモリ４５０、インターフェイス４６０、通信インターフェイス４７０、Ｊ１軸制御部５１０、Ｊ２軸制御部５２０、Ｊ３軸制御部５３０、Ｊ４軸制御部５４０、Ｊ５軸制御部５５０、Ｊ６軸制御部５６０等が接続されている。
【００３４】
ＲＯＭ４３０には、ロボットの動作制御を実行するための制御プログラムと、実行条件等のデータとが記憶されている。ＲＡＭ４４０には、多関節ロボット４０の教示プログラムが記憶される。ＲＡＭ４４０は、ＣＰＵ４１０のワーキングエリアとして用いられる。ＲＡＭ４４０には、計算途中のデータが一時的に格納される。メモリ４５０は、例えば、ハードディスク又は不揮発性の半導体メモリからなる。メモリ４５０には、教示データが記憶されている。教示データは、多関節ロボット４０に対し手動制御により教示されるとともに教示プログラムの実行時に読み込まれるデータである。メモリ４５０には、待機位置復帰プログラムが記憶されている。メモリ４５０は、プログラム記憶手段に相当する。待機位置復帰プログラムは、Ｘ軸、Ｙ軸、Ｚ軸の直交座標系の下で動作するようにプログラミングされている。Ｘ軸、Ｙ軸、Ｚ軸の直交座標系は、ＮＣ工作機械で使用される直交座標系である。
【００３５】
多関節ロボット４０のロボットベース４１の任意の点を基点とするベース座標系、各アームの基点を原点とする各アームの座標系、及びロボットハンド４６の取付位置である任意の点を原点とするツール座標系はいずれも、既知である。このため、待機位置復帰プログラムにＸ軸、Ｙ軸、Ｚ軸の直交座標系で記述された各種指令は、既知のデータから得られる同次変換行列を用いて各座標系の指令に変換された後、各軸制御部に出力される。インターフェイス４６０には、多関節ロボット４０の教示データの入力及び手動制御時に使用されるティーチングボックス２６が接続されている。
【００３６】
Ｊ１軸制御部５１０〜Ｊ６軸制御部５６０はそれぞれサーボアンプ６１０〜６６０に接続されている。Ｊ１軸制御部５１０〜Ｊ６軸制御部５６０は、ＣＰＵ４１０からの回転制御指令と、Ｊ１軸モータＭ１〜Ｊ６軸モータＭ６の各ロータリエンコーダＥ１〜Ｅ６からの現在位置情報（現在回転角度）とに基づいて、各サーボアンプのフィードバック制御を実行する。Ｊ１軸モータＭ１〜Ｊ６軸モータＭ６はサーボモータからなる。サーボアンプ６１０〜６６０は、Ｊ１軸制御部５１０〜Ｊ６軸制御部５６０からの指令に基づいて、Ｊ１軸モータＭ１〜Ｊ６軸モータＭ６を駆動し、ロボットハンド４６を移動する。通信インターフェイス４７０は、通信線Ｌを介してＮＣ制御装置２０と通信が可能である。
【００３７】
次に、ＮＣ工作機械システムの作用について図７〜図９のフローチャートを参照して説明する。
【００３８】
本実施形態で実行される待機位置復帰プログラムは、多関節ロボット４０を待機位置Ｇへ復帰させるためのプログラムである。図２に示すように、待機位置Ｇは、ＮＣ工作機械１０のパレット６０に面する端部の上方に設定されている。待機位置復帰プログラムは、メモリ４５０に格納されており、起動時にＣＰＵ４１０により読み込まれて、ＲＡＭ４４０に記憶される。
【００３９】
多関節ロボット４０を待機位置へ復帰させたい場合、オペレータは、工作機械付近で作業している場合、第１操作盤２２のスイッチキー２２ｃを操作する。一方、オペレータは、パレット６０付近で作業している場合、第２操作盤２４のスイッチキー２４ｃを操作する。スイッチキー２２ｃ，２４ｃのいずれかが操作されると、第１操作盤２２又は第２操作盤２４からプログラム起動のための信号が出力されて、ＮＣ制御装置２０のインターフェイス１６０に入力される。そして、プログラム起動のための信号は、通信インターフェイス１７０及び通信インターフェイス４７０を介してロボット制御装置５０のＣＰＵ４１０に入力される。ＣＰＵ４１０は、プログラム起動のための信号に基づいて、待機位置復帰プログラムを起動する。
【００４０】
図７に示すように、ＣＰＵ４１０は、Ｓ１０において、Ｊ１軸〜Ｊ６軸の全軸が、多関節ロボット４０が図２及び図１２に示す待機位置Ｇに復帰したときの位置姿勢になっているか否かを判定する。多関節ロボット４０が待機位置Ｇに復帰した場合の位置姿勢は、予めプログラムに設定されている。このため、ＣＰＵ４１０は、Ｊ１軸〜Ｊ６軸の全軸がその位置姿勢になっているか否かを判定する。多関節ロボット４０の作動時、ロータリエンコーダＥ１〜Ｅ６は、Ｊ１軸モータＭ１〜Ｊ６軸モータＭ６の現在位置情報を所定周期で検出する。このため、ＣＰＵ４１０は、現在位置情報に基づいてＳ１０の判定を行う。多関節ロボット４０が待機位置Ｇに復帰したときの位置姿勢になっている場合、ＣＰＵ４１０は、待機位置復帰プログラムの実行を終了する。多関節ロボット４０が待機位置Ｇに位置していない場合、ＣＰＵ４１０はＳ２０に移行する。
【００４１】
Ｓ２０では、ＣＰＵ４１０は、現在位置情報に基づいて、多関節ロボット４０が段取り位置に位置しているか否かを判定する。段取りとは、一般的にオペレータがＮＣ工作機械システムを作動させるために種々の準備をするための作業を指すが、ここでは、多関節ロボットのハンドを交換するための作業を示す。従って、段取り位置は、オペレータが多関節ロボットのハンドを交換するときの多関節ロボット４０の位置であり、待機位置とは異なる。詳しくは、多関節ロボット４０は、所定のプログラムにより実行されるか、ティーチングボックス２６の手動操作により移動させられて、段取り位置に移動し、段取りのための姿勢を取る。Ｓ２０では、ＣＰＵ４１０は、多関節ロボット４０がその段取り位置にあるか否かを判定する。多関節ロボット４０が段取り位置に位置している場合、ＣＰＵ４１０は、Ｓ２２においてプログラムされたパターン１の処理を行う。
【００４２】
パターン１の処理では、ＣＰＵ４１０は、段取り位置に位置している多関節ロボット４０を待機位置Ｇに復帰させるため、各軸モータに対して回転制御指令を付与する。段取り位置に位置する多関節ロボット４０の各アーム及びロボットハンド４６の位置姿勢は、予め待機位置復帰プログラムにより設定されている。このため、多関節ロボット４０は、その位置姿勢から待機位置Ｇに復帰させられる。この場合、終点である待機位置Ｇと現在位置情報に基づく現在位置との間が複数の区間に区分されている。そして、ＣＰＵ４１０は、ロボットハンド４６を、区間毎に直線補間、円弧補間又は関節補間により動作制御して、待機位置Ｇに移動させる。パターン１のプログラムは、多関節ロボット４０が待機位置Ｇまで各区間を移動する場合、前フェンス７０，後フェンス７４、及び側面フェンス７２と干渉しないように設定されている。なお、多関節ロボット４０が待機位置Ｇに復帰したときの各アーム及びロボットハンド４６の位置姿勢は、後述するＳ３２，Ｓ４２，Ｓ５６，Ｓ８３，Ｓ８４，Ｓ８６，Ｓ８７，Ｓ９３，Ｓ９４，Ｓ９６，Ｓ９７，Ｓ１０３，Ｓ１０４，Ｓ１０６，Ｓ１０７の各処理において待機位置Ｇに復帰したときの位置姿勢と同じである。
【００４３】
Ｓ２２において、ＣＰＵ４１０は、待機位置Ｇに多関節ロボット４０を復帰させた後、待機位置復帰プログラムの実行を終了する。
【００４４】
Ｓ２０において段取り位置及び姿勢になっていない場合、ＣＰＵ４１０はＳ３０に移行する。
【００４５】
Ｓ３０では、ＣＰＵ４１０は、現在位置情報に基づいて、多関節ロボット４０がＪ２軸の給油のための位置及び姿勢になっているか否かを判定する。
【００４６】
ここで、Ｊ２軸の給油のための位置及び姿勢について説明する。
【００４７】
図１６は、多関節ロボット４０のＪ２軸給油姿勢を示す。Ｊ２軸給油姿勢では、Ｊ２軸−９０度、Ｊ３軸＋１０５度、Ｊ４軸０度、Ｊ５軸＋７５度、Ｊ６軸０度である。Ｊ２〜Ｊ６軸の座標位置を上記の角度に位置決めしてから、給油が行われる。Ｊ２軸の給油のための位置及び姿勢は、多関節ロボット４０を構成する各アームの構造に応じて変更される。
【００４８】
Ｓ３０において、多関節ロボット４０がＪ２軸の給油のための位置及び姿勢になっている場合、ＣＰＵ４１０は、Ｓ３２においてパターン２の処理を行う。
【００４９】
パターン２の処理では、ＣＰＵ４１０は、Ｊ２軸給油位置にある多関節ロボット４０を待機位置Ｇに復帰させるため、各軸モータに対し回転制御指令を付与する。Ｊ２軸の給油位置にある多関節ロボット４０の各アーム及びロボットハンド４６の位置姿勢は、予め待機位置復帰プログラムにより設定されている。このため、多関節ロボット４０は、そのＪ２軸給油のための位置姿勢から待機位置Ｇに復帰させられる。この場合、終点である待機位置Ｇと現在位置情報に基づく現在位置との間が複数の区間に区分されている。そして、ＣＰＵ４１０は、ロボットハンド４６を、区間毎に直線補間、円弧補間又は関節補間により動作制御して、待機位置Ｇに移動させる。パターン２のプログラムは、多関節ロボット４０が待機位置Ｇまで各区間を移動する場合、前フェンス７０，後フェンス７４、及び側面フェンス７２と干渉しないように設定されている。
【００５０】
ＣＰＵ４１０は、待機位置Ｇに多関節ロボット４０が復帰した後、待機位置復帰プログラムの実行を終了する。Ｓ３０において、多関節ロボット４０がＪ２軸の給油のための位置及び姿勢になっていない場合、ＣＰＵ４１０はＳ４０に移行する。
【００５１】
Ｓ４０では、ＣＰＵ４１０は、現在位置情報に基づいて、多関節ロボット４０が図１７のＪ５軸及びＪ６軸の給油のための位置及び姿勢になっているか否かを判定する。本実施形態において、Ｊ５軸及びＪ６軸の給油姿勢は、Ｊ２軸−３０度、Ｊ３軸＋２２０度、Ｊ４軸０度、Ｊ５軸＋５０度、Ｊ６軸０度である。Ｊ５軸及びＪ６軸の給油のための位置及び姿勢の説明は、多関節ロボット４０を構成する各アームの構造に応じて変更される。
【００５２】
Ｓ４０において、多関節ロボット４０がＪ５軸及びＪ６軸の給油のための位置及び姿勢になっている場合、ＣＰＵ４１０は、Ｓ４２においてパターン３の処理を行う。
【００５３】
パターン３の処理では、ＣＰＵ４１０は、Ｊ５軸及びＪ６軸給油のための位置にある多関節ロボット４を待機位置Ｇに復帰させるため、各軸モータに対し回転制御指令を付与する。Ｊ５軸及びＪ６軸給油のための位置にある多関節ロボット４０の各アーム及びロボットハンド４６の位置姿勢は、予め待機位置復帰プログラムにより設定されている。このため、多関節ロボット４０は、その位置姿勢から待機位置Ｇに復帰する。この場合、終点である待機位置Ｇと現在位置情報に基づく現在位置との間が複数の区間に区分されている。そして、ＣＰＵ４１０は、ロボットハンド４６を、区間毎に直線補間、円弧補間又は関節補間により動作制御して、待機位置Ｇに移動させる。パターン３のプログラムは、多関節ロボット４０が待機位置Ｇまで各区間を移動する場合、前フェンス７０，後フェンス７４、及び側面フェンス７２と干渉しないように設定されている。
【００５４】
ＣＰＵ４１０は、待機位置Ｇに多関節ロボット４０が復帰した後、待機位置復帰プログラムの実行を終了する。Ｓ４０において、多関節ロボット４０がＪ５軸及びＪ６軸の給油のための位置及び姿勢になっていない場合、ＣＰＵ４１０はＳ５０に移行する。
【００５５】
Ｓ５０では、ＣＰＵ４１０は、現在位置情報に基づいて、多関節ロボット４０のロボットハンド４６が、本機上にあるか否かを判定する。すなわち、ＣＰＵ４１０は、Ｙ軸方向に沿った範囲内においてＮＣ工作機械１０が占有する領域にロボットハンド４６が位置しているか否かを判定する。以下、場合によっては、ＮＣ工作機械１０のことを本機と称す。多関節ロボット４０は、ガントリーレール３０の走行端ＬＥ、ＲＥ間の範囲内を走行する。ＣＰＵ４１０は、走行端ＬＥ、ＲＥ間の範囲内においてＮＣ工作機械１０が占有する領域にロボットハンド４６が位置しているか否かを判定する。
【００５６】
Ｓ５０において、ＣＰＵ４１０は、ロボットハンド４６が本機上にあると判定した場合、Ｓ５２に移行する。Ｓ５２では、ＣＰＵ４１０は、ロボットハンド４６がＺ軸方向において機内、即ち、ＮＣ工作機械１０内に位置しているか否かを判定する。ここで言う機内とは、チャック１０ｆ、１０ｇへワーク８０を着脱するためにＮＣ工作機械１０内にロボットハンド４６が侵入している場合を想定している。ＮＣ工作機械１０内にロボットハンド４６が侵入しているか否かを判定するための閾値であるＺ軸座標値は、予め入力されている。
【００５７】
ＣＰＵ４１０は、ロボットハンド４６のＺ軸上の現在位置情報（Ｚ軸座標値）が閾値以下の場合、ロボットハンド４６が機内に位置していると判定して、Ｓ５４に移行する。Ｚ軸座標値が閾値を超えている場合、ＣＰＵ４１０は、ロボットハンド４６が機内に位置していないと判定して、Ｓ５６に移行する。
【００５８】
Ｓ５４では、ＣＰＵ４１０は、第１操作盤２２の表示装置２２ａ並びに第２操作盤２４の表示装置２４ａに対し、ロボットハンド４６が機内に位置しているため待機位置復帰プログラムでは動作不可であり他の操作キーを用いて操作する必要がある、旨の警告を表示させる。具体的には、ＣＰＵ４１０は、表示装置２２ａ，２４ａに対し、「上昇操作ボタンを使用して下さい」と表示させる。ＣＰＵ４１０は、表示装置２２ａ，２４ａに上記の警告を表示させた後、待機位置復帰プログラムの実行を終了する。
【００５９】
この場合、オペレータは、キーボード２２ｂ，２４ｂにあるロボット上昇操作のためのボタン２２ｄ，２４ｄを操作する。ボタンが操作されると、上昇指令信号は、第１操作盤２２からＮＣ制御装置２０のインターフェイス１６０に入力される。そして、上昇指令信号は、通信インターフェイス１７０及び通信インターフェイス４７０を介して、ロボット制御装置５０のＣＰＵ４１０に入力される。ＣＰＵ４１０は、上昇指令信号に基づいて、別途用意された機内上昇プログラムを起動させる。
【００６０】
機内上昇プログラムは、本機内の工具主軸ユニット１０ｈやワーク主軸ヘッド１０ｃの位置を確認した後、待機位置復帰プログラムの処理と同様の処理を行うことにより、上記のユニットとの干渉を回避しながらロボットハンド４６を上昇させる。
【００６１】
Ｓ５２において、ロボットハンド４６が機内に位置していない場合、ＣＰＵ４１０はＳ５６に移行する。
【００６２】
Ｓ５２からＳ５６に移行した場合、ロボットハンド４６は、機内ではないがＮＣ工作機械１０上に位置しているため、パターン４の処理を行う。
【００６３】
パターン４の処理では、ＣＰＵ４１０は、ＮＣ工作機械１０上に位置している多関節ロボット４０を待機位置Ｇに復帰させるため、各軸モータに対し回転制御指令を付与する。この場合、ロボットハンド４６はＮＣ工作機械１０上に位置しているため、想定される姿勢が極めて限定されるので、終点である待機位置Ｇまでの経路を、干渉物との干渉を回避した複数区間のプログラムとして予め作成しておくことができる。そして、ＣＰＵ４１０は、ロボットハンド４６を、区間毎に直線補間、円弧補間又は関節補間により動作制御して、待機位置Ｇに移動させる。パターン４のプログラムも、多関節ロボット４０が待機位置Ｇまで各区間を移動する場合、前フェンス７０，後フェンス７４、及び側面フェンス７２と干渉しないように設定されている。ＣＰＵ４１０は、待機位置Ｇに多関節ロボット４０が復帰した後、待機位置復帰プログラムの実行を終了する。
【００６４】
Ｓ５０において、ＣＰＵ４１０はロボットハンド４６が本機上にはないと判定した場合、Ｓ６０に移行する。Ｓ１０，Ｓ２０，Ｓ３０，Ｓ４０及びＳ５０で全てＮＯと判定された場合は、多関節ロボット４０がパレット６０のワーク８０に対するハンドリングを行っていた場合である。
【００６５】
以後の処理は、多関節ロボット４０がパレット６０のワーク８０に対するハンドリング操作を行っていた場合を想定している。
【００６６】
Ｓ６０では、ＣＰＵ４１０は、ロボットハンド４６の現在位置をＷ軸で見て、Ｙ軸補正値を演算する。Ｗ軸は、Ｘ軸の周りの回転軸である。
【００６７】
図１１に示すように、ロボットハンド４６は、ローディングハンド４６ｂと、アンローディングハンド４６ｃとから構成されている。ロボットハンド４６は、Ｊ６軸周りに１８０度回転することで、使用するハンドを切り換える。また、プログラムに書き込まれたロボットハンド４６の位置を読み取ったり、ロボットハンド４６の位置を指令したりする場合、どちらのハンドに対して指示を行っているかを、ツール座標系を選択することで切り替えられる。具体的には、ツール座標系はローディングハンド座標系とアンローディング座標系の２種類あり、ロボットハンド４６の現在位置を、ローディングハンド座標系で読むと、ローディングハンド４６ｂの基準部位４７の座標値が示され、アンローディング座標系で読むとアンローディングハンド４６ｃの基準部位４７の座標値が示される。
【００６８】
待機位置復帰プログラムでは、ロボットハンド４６によりローディング又はアンローディングを行う訳ではなく、ロボットハンド４６を待機位置へ復帰させるための動作を指令する。このため、一義的にローディングハンド座標系を用いて、ロボットハンド４６の位置が読み取られたり、ロボットハンド４６の位置の指令が行われるようにしている。従って、本明細書では、ロボットハンド４６の現在位置あるいは座標値と表現するとき、全てローディングハンド座標系における値である。ところが、待機位置復帰プログラムが動作するときのロボットハンド４６のＪ６軸の角度は未定である。このため、読み取った座標値をそのまま用いて、ロボットハンド４６と干渉物との間の距離を計算することはできない。例えば、Ｘ軸座標値だけでＸ軸方向の距離、Ｙ軸座標値だけでＹ軸方向の距離、Ｚ軸座標値だけでＺ軸方向の距離をそれぞれ計算すると、ロボットハンド４６と干渉物との間の正しい距離は得られない。ロボットハンド４６と干渉物との間の距離に余裕があれば、ロボットハンド４６をＪ６軸周りに３６０度回転させることができるクリアランスを確保することで、ロボットハンド４６と干渉物との干渉を判定することはできる。しかしながら、ロボットハンド４６と干渉物との間の距離に余裕がない場合、Ｙ軸補正を行った上で、Ｙ軸方向での干渉判定を行うようにしている。
【００６９】
ロボットハンド４６のＷ軸座標値とは、Ｊ６軸でロボットハンド４６を３６０度旋回させたときに基準部位４７が描く真円の中心座標を基点としかつ基準部位４７の座標を終点とするベクトルのＸ軸周りの回転角を意味する。Ｗ軸座標値により、ローディングハンド４６ｂが上向き、下向き、右向き、左向きのいずれであるかを大まかに判定することができる。そして、ロボットをこのときの姿勢に維持しつつＪ６軸だけを回転させてローディングハンド４６を左向きにしたときの基準部位４７のＹ軸座標値を計算する。こうして計算された座標値と現在のＹ軸座標値との誤差は、Ｙ軸補正値として記憶されて、この後行われる干渉判定に用いられる。
【００７０】
ＣＰＵ４１０は、Ｓ６０でＹ軸補正値を算出した後、Ｓ７０において、ロボットハンド４６がＸ軸上における後フェンス７４の近傍に位置するか否かを判定する。即ち、ＣＰＵ４１０は、現在のロボットハンド４６が位置するＸ軸座標値においてＪ４軸〜Ｊ６軸周りにロボットハンド４６を旋回させても後フェンス７４に干渉しないか否かを判定する。
【００７１】
ＣＰＵ４１０は、予めメモリ４５０に格納された判定Ｘ軸座標値よりもロボットハンド４６のＸ軸座標値が後フェンス７４に近い場合、ロボットハンド４６が後フェンス近傍に位置しており、Ｊ４軸〜Ｊ６軸周りにロボットハンド４６を旋回させると後フェンス７４に干渉する可能性があると判定する。
【００７２】
Ｓ７０において、ＣＰＵ４１０は、ロボットハンド４６がＸ軸方向で後フェンス７４の近傍に位置すると判定した場合、Ｓ７２において、ロボットハンド４６を旋回しても後フェンス７４に干渉しないＸ軸方向の位置にＪ２軸、Ｊ３軸、Ｊ５軸のいずれかを旋回して移動させる。このとき、Ｊ２軸、Ｊ３軸、Ｊ５軸のどれを移動するか、どの軸を組み合わせて移動させるかは適宜組み合わせればよい。
【００７３】
ＣＰＵ４１０は、Ｓ７２の処理を行った後、或いは、Ｓ７０でロボットハンド４６がＸ軸方向で後フェンス７４の近傍に位置しないと判定した場合、Ｓ８０に移行する。
【００７４】
Ｓ８０では、ＣＰＵ４１０は、Ｙ軸座標値にＳ６０で計算したＹ軸補正値を加えた値（以後、「補正後のＹ軸座標値」と言う）に基づいて、Ｙ軸においてロボットハンド４６の位置が本機近傍にあるか否かを判定する。この判定処理には、補正後のＹ軸座標値が予めメモリ４５０に格納された本機近傍判定閾値ＨＳ１よりも本機に近いか否かの判定処理が含まれる。補正後のＹ軸座標値が本機近傍判定閾値ＨＳ１よりも本機に近い場合、ＣＰＵ４１０は、ロボットハンド４６の位置が本機近傍であると判定する。本機近傍判定閾値ＨＳ１は、Ｙ軸上の判定のための座標値である。ロボットハンド４６の位置が本機に近いと判定した場合、ＣＰＵ４１０はＳ８１に移行し、ロボットハンド４６の位置が本機に近くないと判定した場合、ＣＰＵ４１０はＳ９０に移行する。
【００７５】
Ｓ８１では、ＣＰＵ４１０は、現在位置情報に基づいて、Ｘ軸方向でロボットハンド４６の位置が前フェンス７０近傍にあるか否かを判定する。この判定処理には、Ｘ軸座標値が予めメモリ４５０に格納された前フェンス近傍判定閾値ＭＳ１よりも前フェンス７０に近いか否かの判定処理が含まれる。ＣＰＵ４１０は、現在のＸ軸座標値が前フェンス近傍判定閾値ＭＳ１よりも前フェンス７０に近い場合、ロボットハンド４６の現在位置が前フェンス７０に近傍であると判定する。前フェンス近傍判定閾値ＭＳ１は、Ｘ軸上の判定のための座標値である。
【００７６】
ロボットハンド４６の現在位置が前フェンス７０に近いと判定した場合、ＣＰＵ４１０はＳ８２に移行する。
【００７７】
Ｓ８２では、ＣＰＵ４１０は、現在位置情報に基づいて、Ｚ軸方向でロボットハンド４６の位置がパレット６０近傍か否かを判定する。この判定処理には、Ｚ軸座標値が予めメモリ４５０に格納されたパレット近傍判定閾値ＰＳ１よりもパレット６０に近いか否かの判定処理が含まれる。ＣＰＵ４１０は、現在のＺ軸座標値がパレット近傍判定閾値ＰＳ１よりもパレット６０に近い場合、ロボットハンド４６の現在位置がパレット６０近傍であると判定する。パレット近傍判定閾値ＰＳ１は、Ｚ軸方向の位置判定のための座標値である。なお、パレット近傍判定閾値ＰＳ１は、パレット６０にワーク８０がある場合を考慮した値であり、ワーク８０に対してロボットハンド４６が干渉しない値である。
【００７８】
ロボットハンド４６の現在位置がパレット近傍であると判定した場合、ＣＰＵ４１０はＳ８３に移行する。Ｓ８３では、ＣＰＵ４１０は、パターン５の復帰処理を行って、多関節ロボット４０を待機位置Ｇに移動した後、このフローチャートを終了する。
【００７９】
Ｓ８２において、ロボットハンド４６の現在位置がパレット６０近傍ではない判定すると、ＣＰＵ４１０はＳ８４に移行する。そして、ＣＰＵ４１０は、パターン６の復帰処理を行ってから多関節ロボット４０を待機位置Ｇに移動した後、このフローチャートを終了する。
【００８０】
Ｓ８１において、ロボットハンド４６の現在位置が前フェンス７０の近傍ではないと判定した場合、ＣＰＵ４１０はＳ８５に移行する。Ｓ８５の処理は、Ｓ８２と同様である。Ｓ８５において、ロボットハンド４６のＺ軸座標値がパレット近傍であると判定した場合、ＣＰＵ４１０はＳ８６に移行する。そして、ＣＰＵ４１０は、パターン７の復帰処理を行った後、このフローチャートを終了する。Ｓ８５において、ロボットハンド４６のＺ軸座標値がパレット近傍でないと判定した場合、ＣＰＵ４１０はＳ８７に移行する。そして、ＣＰＵ４１０は、パターン８の復帰処理を行った後、このフローチャートを終了する。
【００８１】
Ｓ９０では、ＣＰＵ４１０は、現在位置情報に基づいて、Ｙ軸においてロボットハンド４６の位置が走行端ＲＥ近傍にあるか否かを判定する。この判定処理は、補正後のＹ軸座標値が予めメモリ４５０に格納された走行端近傍判定閾値ＨＳ２よりも走行端ＲＥに近いか否かの判定処理である。
【００８２】
ロボットハンド４６の補正後のＹ軸座標値が走行端近傍判定閾値ＨＳ２よりも走行端ＲＥに近い場合、ＣＰＵ４１０は、ロボットハンド４６の位置が走行端ＲＥに近傍にあると判定する。即ち、ＣＰＵ４１０は「ＹＥＳ」と判定する。走行端近傍判定閾値ＨＳ２は、Ｙ軸上の判定のための座標値である。ロボットハンド４６の位置が走行端ＲＥに近いと判定した場合、ＣＰＵ４１０はＳ９１に移行する。一方、ロボットハンド４６の位置が走行端ＲＥの近傍ではないと判定した場合、ＣＰＵ４１０はＳ１０１に移行する。
【００８３】
Ｓ９１以降の処理について説明する。
【００８４】
Ｓ９１、Ｓ９２、及びＳ９５の各判定処理は、Ｓ８０において「ＹＥＳ」と判定された後の、Ｓ８１，Ｓ８２，及びＳ８５の各判定処理と同様のため、説明を省略する。
【００８５】
ＣＰＵ４１０は、Ｓ９１において「ＹＥＳ」、Ｓ９２において「ＹＥＳ」と判定した場合、Ｓ９３においてパターン９の処理を行った後、このフローチャートを終了する。又、ＣＰＵ４１０は、Ｓ９２において「ＮＯ」と判定した場合、Ｓ９４においてパターン１０の処理を行った後、このフローチャートを終了する。一方、ＣＰＵ４１０は、Ｓ９１において「ＮＯ」と判定し、Ｓ９５において「ＹＥＳ」と判定した場合、Ｓ９６においてパターン１１の処理を行った後、このフローチャートを終了する。ＣＰＵ４１０は、Ｓ９５において「ＮＯ」と判定した場合、Ｓ９７においてパターン１２の処理を行った後、このフローチャートを終了する。
【００８６】
Ｓ１０１以降の処理について説明する。
【００８７】
Ｓ１０１、Ｓ１０２、及びＳ１０５の各判定処理は、ＣＰＵ４１０がＳ８０で「ＹＥＳ」と判定した後の、Ｓ８１，Ｓ８２，及びＳ８５の各判定処理とそれぞれ同様のため、説明を省略する。
【００８８】
ＣＰＵ４１０は、Ｓ１０１において「ＹＥＳ」、Ｓ１０２において「ＹＥＳ」と判定した場合、Ｓ１０３においてパターン１３の処理を行った後、このフローチャートを終了する。ＣＰＵ４１０は、Ｓ１０２において「ＮＯ」と判定した場合、Ｓ１０４においてパターン１４の処理を行った後、このフローチャートを終了する。一方、ＣＰＵ４１０は、Ｓ１０１において「ＮＯ」と判定し、Ｓ１０５において「ＹＥＳ」と判定した場合、Ｓ１０６においてパターン１５の処理を行った後、このフローチャートを終了する。ＣＰＵ４１０は、Ｓ１０５において「ＮＯ」と判定した場合、Ｓ１０７においてパターン１６の処理を行った後、このフローチャートを終了する。
【００８９】
上記のように、Ｓ８０，Ｓ８１，Ｓ８２，Ｓ８５、Ｓ９０，Ｓ９１，Ｓ９２，Ｓ９５、Ｓ１０１，Ｓ１０２，Ｓ１０５の処理で判定したときのロボットハンド４６の位置について、図１３（ａ）、（ｂ）を参照して説明する。
【００９０】
図１３（ａ）、（ｂ）に示すように、パターン５〜パターン１６の処理で対象となるロボットハンド４６の位置が、Ｐにパターン番号を付して示されている。図１３（ａ）は、本機近傍判定閾値ＨＳ１、走行端近傍判定閾値ＨＳ２及び前フェンス近傍判定閾値ＭＳ１で区分された各領域を示す。図１３（ｂ）は、本機近傍判定閾値ＨＳ１、走行端近傍判定閾値ＨＳ２及びパレット近傍判定閾値ＰＳ１で区分された各領域を示す。各領域内にロボットハンド４６が位置している場合、各領域に対応するパターン５〜パターン１６の処理がそれぞれ行われる。
【００９１】
次に、パターン５〜パターン１６の処理について図９及び図１０を参照して説明する。
【００９２】
図１０に示すように、パターン５〜パターン１６は、特異点チェック、Ｊ５軸チェック、干渉角チェック、軸移動、干渉回避チェック、及び待機位置復帰の全処理項目、又は一部の処理項目の組み合わせからなる。まず、全ての処理項目が組み合わされているパターン５の処理のフローチャートについて図９を参照して説明する。他のパターン６〜パターン１６については、パターン５の処理で行われる項目と比較して説明する。
【００９３】
パターン５の処理では、ＣＰＵ４１０は、特異点チェック、Ｊ５軸チェック、干渉角チェック、軸移動、干渉回避チェック及び待機位置復帰の処理を順に行う。
【００９４】
特異点チェックでは、Ｓ２００において、ＣＰＵ４１０は、Ｊ６軸ユニット４５の姿勢が特異点近傍の姿勢になっていないか否かを、Ｊ５軸の現在回転角度に基づき判定する。具体的には、Ｊ５軸の値が−５度〜＋５度の範囲にあるか否かを確認する。そして、ＣＰＵ４１０は、Ｊ６軸ユニット４５の姿勢が特異点近傍でなければ、次のＳ２０２に移行する。ＣＰＵ４１０は、Ｊ６軸ユニット４５の姿勢が特異点近傍であると判定した場合、Ｓ２０１において特異点近傍から離間するようにＪ５軸を回転させる。こうして、Ｊ５軸の角度を修正した後、ＣＰＵ４１０はＳ２０２に移行する。
【００９５】
なお、ロボットが特異点、即ち、特異姿勢にある場合は、指定した直交座標値による形態が無限に存在することになる。この場合、ロボットが動作できなくなる。このため、ＣＰＵ４１０は、現在のロボットハンド４６の位置が特異点近傍にあるか否かを判定して、この後の動作により特異点に位置させないようにする。
【００９６】
Ｊ５軸チェックのＳ２０２では、ＣＰＵ４１０は、ロボットハンド４６の手首の角度であるＪ５軸を見て、手首を回転させても、具体的にはＪ４軸、Ｊ６軸を回転させても
ロボットハンド４６がパレット６０に干渉しないＺ軸の座標値を算出する。ＣＰＵ４１０は、算出したＺ軸の座標値を後で使用するため、ＲＡＭ４４０に記憶する。次の干渉角チェックでは、多関節ロボット４０を構成する部材同士が干渉するか否かを判定する。具体的には、Ｊ２軸アーム４２とＪ３軸アーム４４とが接近したとき、その後の動作によって干渉し易い。
【００９７】
そこで、ＣＰＵ４１０は、Ｓ２０４において、Ｊ２軸及びＪ３軸のそれぞれの現在回転角度に基づいて、Ｊ２軸アーム４２とＪ３軸アーム４４とがなす角度（干渉角）が干渉角閾値以下であるかを確認する。そして、ＣＰＵ４１０は、干渉角が干渉角閾値以下であれば干渉する虞があると判定し、Ｓ２０５に移行する。Ｓ２０５では、ＣＰＵ４１０は、Ｊ２軸モータＭ２を駆動し、干渉角が干渉角閾値を超えるようにＪ２軸を動かす。なお、ＣＰＵ４１０は、Ｊ２軸モータＭ２に代えてＪ３軸モータＭ３を駆動し、干渉角が干渉角閾値を超えるようにＪ３軸ケーシング４３を回転させてもよい。Ｓ２０４において、干渉角が干渉角閾値以下でなければ、ＣＰＵ４１０はＳ２０６に移行する。
【００９８】
Ｓ２０６の軸移動は、ロボットハンド４６について、現在位置及び待機位置Ｇ間の中間位置まで移動させるための処理である。まず、中間位置までの移動の説明の前に、中間位置の設定について説明する。ロボットハンド４６が、前フェンス７０、パレット６０、走行端ＲＥ及び本機のうち、少なくともいずれか１つ物の近傍に位置する場合、それらから所定の距離だけ離れた位置を中間位置とする。具体的には、ロボットハンド４６が前フェンス７０のみに近接している場合、ロボットハンド４６の現在位置のＸ軸座標値にさらに所定値を加算した値が、中間位置のＸ軸座標値となる。Ｘ軸座標値に加算する所定値は、Ｓ８１において、前フェンス近傍判定閾値ＭＳ１で判定した場合に「ＮＯ」と判定できる値である。
【００９９】
中間位置のＹ軸座標値及びＺ軸座標値は、ロボットハンド４６の現在位置の補正後のＹ軸座標値及びＺ軸座標値とする。ロボットハンド４６がパレット６０のみに近接している場合、中間位置のＸ軸座標値及びＹ軸座標値は、ロボットハンド４６の現在位置のＸ軸座標値及び補正後のＹ軸座標値となる。又、ＣＰＵ４１０は、Ｊ５軸チェックで算出した値を中間位置のＺ軸座標値とする。
【０１００】
ロボットハンド４６が本機、又は走行端ＲＥのみに近接している場合、中間位置のＸ軸座標値及びＺ軸座標値は、ロボットハンド４６の現在位置のＸ軸座標値及びＺ軸座標値となる。又、中間位置のＹ軸座標値は、ロボットハンド４６の補正後のＹ軸座標値にさらに所定値を加算した値となる。本機、又は走行端ＲＥのみに近接している場合、それぞれ補正後のＹ軸座標値に加算する所定値は、Ｓ８０において本機近傍判定閾値ＨＳ１で判定した場合に「ＮＯ」と判定できる値、又は、Ｓ９０において走行端近傍判定閾値ＨＳ２で判定した場合に「ＮＯ」と判定できる値である。
【０１０１】
次に、ロボットハンド４６が前フェンス７０、本機、走行端ＲＥ、パレットのいずれか２つ以上に近接している場合の中間位置の設定について説明する。
【０１０２】
２つ以上のものにロボットハンド４６が近接している場合、１つのものに近接しているときと同様に、それぞれの近傍の座標軸における現在の座標値に所定値をそれぞれ加算したものを、中間位置の座標値とする。
【０１０３】
又、上述した干渉物に近傍していない場合、ロボットハンド４６の現在位置の座標値がそのまま中間位置の座標値として採用される。ロボットハンド４６の現在位置がパレット６０近傍である場合、Ｊ５軸チェックで算出した値を中間位置のＺ軸座標値とする。ロボットハンド４６がいずれの干渉物にも近接していない場合、ロボットハンド４６の現在位置が中間位置の座標値となり、結果として、ＣＰＵ４１０は中間位置への移動を行わない。
【０１０４】
上記のように、ＣＰＵ４１０は、中間位置を設定後、Ｓ２０６の軸移動において、ロボットハンド４６を現在位置から中間位置へと移動させるようにロボットハンド４６を制御する。なお、中間位置は、いずれかの干渉物に対し干渉し得るときに設定される。このため、中間位置への移動は、直線補間によって制御される。
【０１０５】
次の干渉回避チェックでは、ロボットハンド４６が中間位置に位置する状態から多関節ロボット４０を待機位置Ｇまで関節補間により移動させた場合、ロボットハンド４６が前フェンス７０に干渉する虞があるか否かがチェックされる。
【０１０６】
ＣＰＵ４１０は、中間位置のＺ軸座標値とＺ軸上における判定閾値との比較に基づいて、Ｓ２０８において干渉回避チェックを行う。判定閾値は、試験値等により得られた値であり、メモリ４５０に格納されている。
【０１０７】
図１５は、中間位置ＣのＺ軸座標値が判定閾値以下である場合、中間位置Ｃから待機位置Ｇに多関節ロボット４０が戻るまでにＪ２軸及びＪ３軸で関節補間が行われた場合の多関節ロボット４０の移動軌跡を示す。図１５に示すように、ロボットハンド４６は、前フェンス７０から前方に出て前フェンス７０と干渉してしまう。中間位置Ｃから待機位置Ｇまで多関節ロボット４０を関節補間により移動させる場合、Ｊ２軸、Ｊ３軸の関節補間による移動範囲が大きいため、ロボットハンド４６が前フェンス７０と干渉する虞がある。このような場合を想定して、後述する干渉回避点Ｋへのロボットハンド４６の移動が必要となる。
【０１０８】
多関節ロボット４０が待機位置Ｇに復帰したときの位置姿勢は、図１２に示すように、回転角度をＪ２軸＋６３度、Ｊ３軸＋１４９度、Ｊ４軸０度、Ｊ５軸＋３１度、Ｊ６軸０度とした場合の姿勢となっている。このため、後述するＳ２１０における待機位置への移動のための関節補間では、各軸の回転角度が、現在回転角度から、待機位置Ｇでの上記回転角度を目標として制御される。
【０１０９】
Ｓ２０８において、中間位置ＣのＺ軸座標値がＺ軸上における判定閾値以下である場合、ＣＰＵ４１０はＳ２０９に移行して、干渉回避点Ｋへロボットハンド４６を移動させた後、Ｓ２１０の待機位置復帰の処理に移行する。干渉回避点Ｋは、中間位置ＣよりもＺ軸上の上方に位置すると共に、干渉回避点Ｋから待機位置Ｇへと多関節ロボット４０を関節補間により移動させた場合に前フェンス７０と干渉しない位置である。
【０１１０】
図１４は、干渉回避点Ｋから待機位置Ｇに多関節ロボット４０が戻るまでにＪ２軸及びＪ３軸で関節補間が行われた場合の多関節ロボット４０の移動軌跡を示す。図１４に示すように、ロボットハンド４６は、前フェンス７０と干渉することなくＺ軸に沿って上方に移動する。即ち、干渉回避点ＫがＺ軸上における判定閾値より上方に位置するため、Ｊ２軸及びＪ３軸の移動軌跡が狭くなり、ロボットハンド４６は前フェンス７０と干渉しない。
【０１１１】
次の待機位置復帰では、Ｓ２１０において、ＣＰＵ４１０は、中間位置Ｃ又は干渉回避点Ｋから待機位置Ｇまで、多関節ロボット４０を関節補間により復帰させる。
【０１１２】
次に、パターン１３及びパターン９について図１０を参照して説明する。
【０１１３】
図１０に示すように、パターン９及びパターン１３では、パターン５と同様に、特異点チェック、Ｊ５軸チェック、干渉角チェック、軸移動、干渉回避チェック、及び待機位置復帰の全ての処理項目が行われる。
【０１１４】
パターン６、パターン１０、及びパターン１４では、Ｊ５軸チェックが省略されて、特異点チェック、干渉角チェック、軸移動、干渉回避チェック、及び待機位置復帰の処理項目が行われる。パターン６、パターン１０、及びパターン１４では、Ｊ５軸チェックが省略されているため、パターン６、パターン１０、及びパターン１４のフローチャートでは、図９のフローチャートにおいてＳ２００が「ＮＯ」又はＳ２０１の後、ＣＰＵ４１０はＳ２０４に移行する。
【０１１５】
パターン６、パターン１０、及びパターン１４は、図１３（ｂ）に示すように、パレット近傍判定閾値ＰＳ１よりも上方にロボットハンド４６が位置している場合である。この場合、ロボットハンド４６の手首の角度であるＪ５軸を見て、手首を回転させても、ロボットハンド４６がパレット６０に干渉しない十分な高さを有している。このため、パターン６、パターン１０、及びパターン１４では、Ｊ５軸チェックが省略されている。
【０１１６】
パターン７、パターン１１、及びパターン１５では、パターン５と同様に、特異点チェック、Ｊ５軸チェック、干渉角チェック、軸移動、干渉回避チェック、及び待機位置復帰の全ての処理項目が行われる。パターン７、パターン１１、及びパターン１５のフローチャートは、図９のフローチャートと同様である。
【０１１７】
パターン８及びパターン１２では、パターン５とは異なり、特異点チェック、Ｊ５軸チェック、及び干渉角チェックが省略され、軸移動、干渉回避チェック、及び待機位置復帰の処理項目が行われる。
【０１１８】
パターン８及びパターン１２では、現在位置から待機位置Ｇまで復帰するまでの間に特異点が発生しないため、特異点チェックが省略されている。又、図１３（ｂ）に示すように、パレット近傍判定閾値ＰＳ１よりも上方にロボットハンド４６が位置している。即ち、ロボットハンド４６の手首の角度であるＪ５軸を見て、手首を回転させても、ロボットハンド４６がパレット６０に干渉しない十分な高さを有している。このため、Ｊ５軸チェックが省略されている。又、パターン８及びパターン１２では、現在位置から待機位置Ｇまで復帰するまでの間に各部材同士が干渉する虞がない。このため、干渉角チェックが省略されている。
【０１１９】
パターン１６は、パターン５とは異なり、特異点チェック、Ｊ５軸チェック、干渉角チェック及び軸移動が省略され、干渉回避チェック及び待機位置復帰の処理項目が行われる。パターン１６で、特異点チェック、Ｊ５軸チェック、及び干渉角チェックが省略されている理由は、パターン８及びパターン１２の場合と同じ理由である。又、図１３（ａ），（ｂ）に示すように、全ての干渉物の近傍に位置していないため、現在位置している地点が中間位置Ｃであり、パターン５からパターン１５における軸移動が完了した状態と同じ状態である。このため、パターン１６では、軸移動が省略されている。従って、パターン１６では、干渉回避チェックと待機位置復帰とを行うだけでよい。
【０１２０】
このように、スイッチキー２２ｃ，２４ｃのいずれかがオン操作されたときに、オン操作されたときの多関節ロボット４０の位置姿勢に応じて移動経路が選択され、その選択された移動経路に沿って待機位置Ｇへとロボットハンド４６が移動するように制御される。選択される移動経路に対応する各プログラムには、パターン１〜パターン１６がそれぞれプログラミングされている。
【０１２１】
ＮＣ工作機械システムの第１操作盤２２、第２操作盤２４には、メモリ４５０に記憶した待機位置復帰プログラムを実行させて多関節ロボット４０を動作させるスイッチキー２２ｃ，２４ｃが設けられている。このため、作業者が第１操作盤２２、第２操作盤２４のスイッチキー２２ｃ，２４ｃをオン操作すれば、待機位置復帰プログラムが実行されて、多関節ロボット４０が動作する。これにより、多関節ロボット４０を初めて操作する作業者であっても、安全に操作することができる。
【０１２２】
又、待機位置復帰プログラムは、ＮＣ工作機械１０で使用される直交座標系の下で動作するようプログラミングされている。このため、ＮＣ工作機械１０で使用される直交座標系の下で多関節ロボット４０を動作させることができる。このため、ＮＣ工作機械１０の操作に慣れている作業者にとって、多関節ロボット４０の動作の理解が容易である。
【０１２３】
待機位置復帰プログラムは、以下のようにプログラミングされている。即ち、多関節ロボット４０の待機位置Ｇ（目標位置姿勢）が設定されると共に、待機位置Ｇ（目標位置姿勢）になるように多関節ロボット４０が移動する際、スイッチキー２２ｃ，２４ｃがオン操作されたときの多関節ロボット４０の位置姿勢に応じて移動経路が選択され、選択された移動経路に沿って多関節ロボット４０を移動させる。ロボット制御装置５０は、プログラムに従って多関節ロボット４０を制御する。よって、作業者は、多関節ロボット４０の位置姿勢に応じて多関節ロボット４０を操作する必要がなくなる。
【０１２４】
ＮＣ工作機械１０の側部には、ワーク８０のパレット６０が配置されている。多関節ロボット４０は、ＮＣ工作機械１０とパレット６０との間を移動可能である。パレット６０とＮＣ工作機械１０の周囲は、前フェンス７０、側面フェンス７２、及び後フェンス７４（安全柵）によって囲われている。待機位置復帰プログラムには、多関節ロボット４０の待機位置Ｇ（目標位置姿勢）が設定されている。待機位置復帰プログラムは、スイッチキー２２ｃ，２４ｃがオン操作されたときの多関節ロボット４０の位置姿勢に応じて選択された移動経路に沿って、多関節ロボット４０が移動するようにプログラミングされている。また、待機位置復帰プログラムには、前フェンス７０、側面フェンス７２、及び後フェンス７４（安全柵）との干渉を回避しながら待機位置Ｇ（目標位置姿勢）になるよう多関節ロボット４０を移動させるようにもプログラミングされている。
【０１２５】
ロボット制御装置５０は、待機位置復帰プログラムに従って多関節ロボット４０を制御する。このため、待機位置復帰プログラムが実行されると、スイッチキー２２ｃ，２４ｃがオン操作されたときの多関節ロボット４０の位置姿勢に応じて移動経路が選択され、前フェンス７０（安全柵）との干渉を回避しながら待機位置Ｇ（目標位置姿勢）になるように多関節ロボット４０を移動させることができる。このため、作業者は、多関節ロボット４０の位置姿勢に応じて前フェンス７０（安全柵）に干渉しないように多関節ロボットを操作する必要がなくなる。
【０１２６】
ＮＣ工作機械１０には第１操作盤２２が設けられ、パレット６０には第２操作盤２４が設けられている。各操作盤２２，２４には、待機位置復帰プログラムを実行させるスイッチキー２２ｃ，２４ｃがそれぞれ設けられている。このため、多関節ロボット４０がパレット６０付近に位置している場合、第２操作盤２４のスイッチキー２４ｃをオン操作すれば、待機位置復帰プログラムを実行することができる。一方、ＮＣ工作機械１０付近に多関節ロボット４０が位置している場合、第１操作盤２２を操作すれば、プログラムを実行することができる。このため、パレット６０及びＮＣ工作機械１０のいずれかの付近に多関節ロボット４０が位置しているかよって、作業者は、パレット６０及びＮＣ工作機械１０のいずれか近い方の操作盤のスイッチ手段を操作することができる。これにより、多関節ロボット４０を作動するための共通のプログラムが実行される。
【０１２７】
この実施形態において、パレット６０をＮＣ工作機械１０の右側に配置したが、パレット６０をＮＣ工作機械１０の左側に配置してもよい。
【０１２８】
この実施形態において、多関節ロボット４０は、走行軸であるＪ１軸を旋回軸に代えて、６軸の多関節ロボットであってもよい。
【０１２９】
この実施形態において、多関節ロボット４０は、６軸ロボット以外に、７軸以上の多関節ロボットであってもよい。
【図１】
2013027283.tif 000003
【図２】
2013027283.tif 000004
【図３】
2013027283.tif 000005
【図４】
2013027283.tif 000006
【図５】
2013027283.tif 000007
【図６】
2013027283.tif 000008
【図７】
2013027283.tif 000009
【図８】
2013027283.tif 000010
【図９】
2013027283.tif 000011
【図１０】
2013027283.tif 000012
【図１１】
2013027283.tif 000013
【図１２】
2013027283.tif 000014
【図１３】
2013027283.tif 000015
【図１４】
2013027283.tif 000016
【図１５】
2013027283.tif 000017
【図１６】
2013027283.tif 000018
【図１７】
2013027283.tif 000019
【手続補正書】
【提出日】平成24年4月9日(2012.4.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
先行技術文献
特許文献
［０００５］
特許文献１：実開平０６−００２４０８号公報
特許文献２：特開平０５−３０１１８４号公報
発明の概要
発明が解決しようとする課題
［０００６］
本発明の目的は、多関節ロボットとＮＣ工作機械を備えるＮＣ工作機械システムにおいて、多関節ロボットを初めて操作する作業者であっても、安全に操作することのできるＮＣ工作機械システムを提供することにある。
課題を解決するための手段
［０００７］
上記目的を達成するため、本発明の第一の態様によれば、ＮＣ工作機械と、ＮＣ工作機械用の操作盤と、ＮＣ工作機械の上方に配置された多関節ロボットと、多関節ロボットを動作させるためのプログラムを記憶するプログラム記憶手段と、プログラムに従って多関節ロボットを制御するロボット制御装置とを備えたＮＣ工作機械システムが提供される。プログラムには、多関節ロボットの待機位置が設定されている。プログラムは、スイッチ手段がオン操作されたときの多関節ロボットの位置に対応して予め作成された複数のプログラムのうちの一つである。操作盤には、プログラム記憶手段に記憶したプログラムを実行して多関節ロボットを動作させるときに操作されるスイッチ手段が設けられている。スイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて、複数のプログラムから一つのプログラムが選択される。ロボット制御装置は、選択されたプログラムにプログラミングされた移動経路に沿って多関節ロボットを移動させることにより、多関節ロボットを現在位置から待機位置に復帰させるように多関節ロボットを制御する。
［０００８］
この構成によれば、作業者が、操作盤のスイッチ手段を操作すると、予め作成されてプログラム記憶手段に記憶されたプログラムが実行され、多関節ロボットが動作する。これにより、多関節ロボットを初めて操作する作業者であっても、多関節ロボットを安全に操作することができる。また、スイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて複数の
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
プログラムから一つのプログラムが選択される。そして、選択されたプログラムにプログラミングされた移動経路に沿って多関節ロボットが移動し、多関節ロボットが現在位置から待機位置に復帰する。このため、作業者は、多関節ロボットの位置姿勢に応じて多関節ロボットを操作する必要がなくなる。
［０００９］
上記のＮＣ工作機械システムにおいて、ＮＣ工作機械の側部には、ワークのパレットが配置され、多関節ロボットは、ＮＣ工作機械とパレットとの間を移動可能であり、パレット及びＮＣ工作機械の周囲は安全柵で囲われ、ロボット制御装置は、選択されたプログラムにプログラミングされた移動経路に沿って安全柵との干渉を回避しながら多関節ロボットを移動させることが好ましい。
［００１０］
この構成によれば、プログラムが実行されると、スイッチ手段がオン操作されたときの多関節ロボットの位置姿勢に応じて移動経路が選択されると共に安全柵との干渉を回避しながら目標位置姿勢を取るように多関節ロボットが移動する。このため、作業者は、多関節ロボットの位置姿勢に応じて安全柵との干渉を回避しながら多関節ロボットを操作する必要がなくなる。
［００１１］
上記のＮＣ工作機械システムにおいて、操作盤は、ＮＣ工作機械付近に配置された第１操作盤と、パレット付近に配置された第２操作盤とを含み、第１及び第２操作盤のそれぞれには、プログラムを実行するために操作されるスイッチ手段が設けられていることが好ましい。
［００１２］
この構成によれば、ＮＣ工作機械付近に多関節ロボットが位置している場合、ＮＣ工作機械付近にある第１操作盤のスイッチ手段を操作すれば、プログラムを実行することができる。一方、パレット付近に多関節ロボットが位置している場合、パレット付近の第２操作盤にあるスイッチ手段を操作すれば、プログラムを実行することができる。
［００１３］
上記のＮＣ工作機械システムにおいて、プログラムは、ＮＣ工作機械で使用される直交座標系の下でプログラミングされていることが好ましい。
［００１４］
この構成によれば、ＮＣ工作機械で使用される直交座標系の下でプログラ
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＮＣ工作機械と、前記ＮＣ工作機械用の操作盤と、前記ＮＣ工作機械の上方に配置された多関節ロボットと、前記多関節ロボットを動作させるためのプログラムを記憶するプログラム記憶手段と、前記プログラムに従って前記多関節ロボットを制御するロボット制御装置とを備えたＮＣ工作機械システムにおいて、
前記プログラムには、前記多関節ロボットの待機位置が設定され、
前記プログラムは、前記スイッチ手段がオン操作されたときの多関節ロボットの位置に対応して予め作成された複数のプログラムのうちの一つであり、
前記操作盤には、前記プログラム記憶手段に記憶したプログラムを実行して前記多関節ロボットを動作させるときに操作されるスイッチ手段が設けられ、
前記スイッチ手段がオン操作されたときの前記多関節ロボットの位置姿勢に応じて、前記複数のプログラムから一つのプログラムが選択され、
前記ロボット制御装置は、前記選択されたプログラムにプログラミングされた移動経路に沿って前記多関節ロボットを移動させることにより、前記多関節ロボットを現在位置から前記待機位置に復帰させるように前記多関節ロボットを制御することを特徴とするＮＣ工作機械システム。
【請求項２】
前記ＮＣ工作機械の側部には、ワークのパレットが配置され、
前記多関節ロボットは、前記ＮＣ工作機械と前記パレットとの間を移動可能であり、
前記パレット及び前記ＮＣ工作機械の周囲は安全柵で囲われ、
前記ロボット制御装置は、前記選択されたプログラムにプログラミングされた移動経路に沿って前記安全柵との干渉を回避しながら前記多関節ロボットを移動させることを特徴とする請求項１に記載のＮＣ工作機械システム。
【請求項３】
前記操作盤は、前記ＮＣ工作機械付近に配置された第１操作盤と、前記パレット付近に配置された第２操作盤とを含み、
前記第１及び第２操作盤のそれぞれには、前記プログラムを実行するために操作される前記スイッチ手段が設けられていることを特徴とする請求項１又は請求項２に記載のＮＣ工作機械システム。
【請求項４】
前記プログラムは、前記ＮＣ工作機械で使用される直交座標系の下でプログラミングされていることを特徴とする請求項１乃至請求項３のうちいずれか１項に記載のＮＣ工作機械システム。
【国際調査報告】
2013027283.tif 000020
2013027283.tif 000021
2013027283.tif 000022
2013027283.tif 000023