(57)【要約】【課題】作業者による作業の要求が発生するような状態になった際の復帰時間の短縮が可能なロボットシステムの制御方法を提供する。【解決手段】Ａ〜Ｄ作業ユニット１１〜１４のうち、作業者による作業が要求される作業要求状態になった作業ユニットを検知すると、ロボットの現在位置からロボットが次に作業を実行する作業ユニットの位置までの間でロボットの動作を停止させるか否かを判断する。現在位置から次の作業ユニットの位置までの間でロボットの動作を停止すると判断した場合、次の作業ユニットの位置までにロボットを停止させる。次の作業ユニットの位置までにロボットの動作を停止させないと判断した場合、まず、作業要求状態の作業ユニット以外の作業ユニットに対するユニット関連工程を選択する。そして、選択されたユニット関連工程に対する作業ユニットの位置に至るまでロボットを移動させて動作を停止させる。【選択図】図１
2015027727.tif 000002
【特許請求の範囲】
【請求項１】
作業領域において異なる位置に配置され、所定の作業を行う複数の作業ユニットと、前記複数の作業ユニットのそれぞれの間を移動すること、及び前記複数の作業ユニットのそれぞれに対応する作業を実行することを含む複数のユニット関連工程が設定されたロボットとを備えたロボットシステムの制御方法において、
制御装置が、作業者による作業が要求される作業要求状態になった作業要求状態の作業ユニットを検知すると、前記ロボットの現在位置から前記ロボットが次に実行するユニット関連工程に対する次の作業ユニットの位置までの間で前記ロボットの動作を停止させるか否かを判断する判断工程と、
前記制御装置が、前記ロボットの現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させると判断した場合、前記動作を前記現在位置から前記次の作業ユニットの位置までの間で停止させる第１工程と、
前記制御装置が、前記ロボットの現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合、前記複数のユニット関連工程のうちの前記作業要求状態の作業ユニット以外の作業ユニットに対するユニット関連工程を選択し、前記選択されたユニット関連工程に対する作業ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる第２工程と、
を備えたことを特徴とするロボットシステムの制御方法。
【請求項２】
請求項１に記載のロボットシステムの制御方法において、
前記制御装置が、前記第２工程において、前記作業要求状態の作業ユニットを検知してから、次に前記作業要求状態の作業ユニットの位置に至るまでの間で、前記作業要求状態の作業ユニットの位置から最も離れた位置の作業ユニットに対するユニット関連工程を選択する。
【請求項３】
請求項１又は２に記載のロボットシステムの制御方法において、
前記制御装置が、前記第２工程において、前記選択されたユニット関連工程が実行される作業ユニットの位置に前記ロボットが至るまで前記ロボットの作業を継続する。
【請求項４】
請求項１乃至３の何れか１項に記載のロボットシステムの制御方法において、
前記複数の作業ユニットは、前記作業領域において前記ロボットを退避させる退避ユニットを備え、
前記複数のユニット関連工程は、前記退避ユニット以外の作業ユニットと前記退避ユニットとの間を移動すること、及び前記退避ユニットに対応する作業を実行することを含み、
前記制御装置が、前記第２工程において、前記退避ユニットに対するユニット関連工程を選択し、前記選択された退避ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる。
【請求項５】
請求項１乃至４の何れか１項に記載の各工程をコンピュータに実行させるためのロボットシステムの制御プログラム。
【請求項６】
請求項５に記載のロボットシステムの制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項７】
作業領域において異なる位置に配置され、所定の作業を行う複数の作業ユニットと、
前記複数の作業ユニットのそれぞれの間を移動すること、及び前記複数の作業ユニットのそれぞれに対応する作業を実行することを含む複数のユニット関連工程が設定されたロボットと、
作業者による作業が要求される作業要求状態となった作業要求状態の作業ユニットを検知する検知手段と、
前記検知手段が前記作業要求状態の作業ユニットを検知すると、前記ロボットの現在位置から前記ロボットが次に実行するユニット関連工程に対する次の作業ユニットの位置までの間で前記ロボットの動作を停止させるか否かを判断し、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止すると判断した場合には、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットを停止させ、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合には、前記複数のユニット関連工程のうち前記作業要求状態の作業ユニット以外の作業ユニットに対するユニット関連工程を選択し、前記選択されたユニット関連工程に対する作業ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる制御装置と、
を備えたことを特徴とするロボットシステム。
【請求項８】
請求項７に記載のロボットシステムであって、
前記制御装置は、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合には、前記作業要求状態の作業ユニットを検知してから、次に前記作業要求状態の作業ユニットに対するユニット関連工程に至るまでの間で、前記作業要求状態の作業ユニットから最も離れた位置の作業ユニットに対するユニット関連工程を選択し、その最も離れた位置の作業ユニットの位置まで前記ロボットを移動させ動作を停止させる。
【請求項９】
請求項７又は８に記載のロボットシステムであって、
前記制御装置は、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットを停止させないと判断した場合には、前記選択されたユニット関連工程が実行される作業ユニットの位置に前記ロボットが至るまで前記ロボットの作業を継続する。
【請求項１０】
請求項７乃至９の何れか１項に記載のロボットシステムであって、
前記複数の作業ユニットは、前記作業領域において前記ロボットを退避させるための退避ユニットを備え、
前記ロボットは、前記退避ユニット以外の作業ユニットと前記退避ユニットとの間を移動すること、及び前記退避ユニットに対応する作業を実行することを含む複数のユニット関連工程が設定され、
前記制御装置は、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合には、前記退避ユニットに対するユニット関連工程を選択し、前記退避ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の作業を行う作業ユニットの異常を検知した際のロボットシステムの制御方法及びロボットシステムに関する。
【背景技術】
【０００２】
一般に、多関節ロボットがワークを供給し、供給されたワークに対して作業ユニットが自動で所定の作業を行う場合、作業ユニットによる作業に異常が発生すると、システム全体を停止させ、作業者がシステムの復帰作業を行う。システムの復帰作業としては、例えば、作業者が発生した異常を解消した後、システムを初期状態に戻し、システムの再起動等を行っており、これには多大な時間を必要としていた。そのため、従来より、異常発生から短い時間での復帰が可能なロボットシステム（ロボット装置）が望まれていた。
【０００３】
これに対しては、異常発生時の多関節ロボットの動作を記憶し、作業者による異常解消後に、記憶した動作から再開することで復帰時間を短縮させたロボット装置が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０７−１６４２８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のロボット装置は、異常検知に基づいて装置全体を停止させた際、多関節ロボットの停止位置によっては、異常が発生した作業ユニットに対して多関節ロボットが障害となり、異常の解消が困難となる場合がある。また、この場合、ティーチングペンダント等を用いて多関節ロボットを移動させて異常解消処理を行うことになるため、異常解消後に再度多関節ロボットを動作開始位置に戻さなければならず、復帰時間が増加してしまう。
【０００６】
そこで、本発明は、作業者による作業の要求が発生するような状態になった際の復帰時間の短縮が可能な多関節ロボットの制御方法及びロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、作業領域において異なる位置に配置され、所定の作業を行う複数の作業ユニットと、前記複数の作業ユニットのそれぞれの間を移動すること、及び前記複数の作業ユニットのそれぞれに対応する作業を実行することを含む複数のユニット関連工程が設定されたロボットとを備えたロボットシステムの制御方法において、制御装置が、作業者による作業が要求される作業要求状態になった作業要求状態の作業ユニットを検知すると、前記ロボットの現在位置から前記ロボットが次に実行するユニット関連工程に対する次の作業ユニットの位置までの間で前記ロボットの動作を停止させるか否かを判断する判断工程と、前記制御装置が、前記ロボットの現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させると判断した場合、前記動作を前記現在位置から前記次の作業ユニットの位置までの間で停止させる第１工程と、前記制御装置が、前記ロボットの現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合、前記複数のユニット関連工程のうちの前記作業要求状態の作業ユニット以外の作業ユニットに対するユニット関連工程を選択し、前記選択されたユニット関連工程に対する作業ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる第２工程と、を備えたことを特徴とする。
【０００８】
また、本発明は、ロボットシステムにおいて、作業領域において異なる位置に配置され、所定の作業を行う複数の作業ユニットと、前記複数の作業ユニットのそれぞれの間を移動すること、及び前記複数の作業ユニットのそれぞれに対応する作業を実行することを含む複数のユニット関連工程が設定されたロボットと、作業者による作業が要求される作業要求状態となった作業要求状態の作業ユニットを検知する検知手段と、前記検知手段が前記作業要求状態の作業ユニットを検知すると、前記ロボットの現在位置から前記ロボットが次に実行するユニット関連工程に対する次の作業ユニットの位置までの間で前記ロボットの動作を停止させるか否かを判断し、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止すると判断した場合には、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットを停止させ、前記現在位置から前記次の作業ユニットの位置までの間で前記ロボットの動作を停止させないと判断した場合には、前記複数のユニット関連工程のうち前記作業要求状態の作業ユニット以外の作業ユニットに対するユニット関連工程を選択し、前記選択されたユニット関連工程に対する作業ユニットの位置に至るまで前記ロボットを移動させて動作を停止させる制御装置と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、作業者による作業の要求が発生するような状態になった際の復帰時間を短縮することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る組立て装置を模式的に示す平面図である。
【図２】本実施形態に係る組立て装置の制御部の構成を示すブロック図である。
【図３】本実施形態に係るユニット動作制御部のフローチャートである。
【図４】本実施形態に係るユニット異常判断部の異常判断テーブルを示す図である。
【図５】本実施形態に係るロボット停止位置判断部のフローチャートである。
【図６】本実施形態に係るロボット動作制御部の制御プログラムを示す図である。
【図７】本実施形態に係る工程順序管理・記憶部の構成を示すブロック図である。
【図８】本実施形態に係るロボット停止位置テーブルを示す図である。
【図９】本実施形態に係る教示点記憶領域の構成を示すブロック図である。
【図１０】本実施形態に係る組立て装置の複数工程動作のフローチャートである。
【図１１】本実施形態に係る装置状態監視サブルーチンのフローチャートである。
【図１２】異常発生時の組立て装置の状態を模式的に示す平面図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態に係るロボットシステムとしての組立て装置１００について、図１から図１２を参照しながら説明する。まず、本発明の実施形態に係る組立て装置１００全体の概略構成について、図１から図９を参照しながら説明する。
【００１２】
図１は、本発明の実施形態に係る組立て装置１００を模式的に示す平面図である。図２は、本実施形態に係る組立て装置１００の制御部２０の構成を示すブロック図である。図３は、本実施形態に係るユニット動作制御部２３のフローチャートである。図４は、本実施形態に係るユニット異常判断部２４の異常判断テーブルを示す図である。図５は、本実施形態に係るロボット停止位置判断部２５のフローチャートである。図６は、本実施形態に係るロボット動作制御部２６の制御プログラムを示す図である。図７は、本実施形態に係る工程順序管理・記憶部２７の構成を示すブロック図である。図８は、本実施形態に係るロボット停止位置テーブル２８を示す図である。図９は、本実施形態に係る教示点記憶領域２９の構成を示すブロック図である。
【００１３】
図１及び図２に示すように、組立て装置１００は、６軸の垂直多関節ロボット（以下、「多関節ロボット」という）１０と、自動で所定の作業を行うＡ〜Ｄ作業ユニット１１〜１４と、供給する各部品（ワーク）が載置される部品供給台１６と、を備えている。また、組立て装置１００は、作業が終了した部品を載置する排出台１７と、Ａ〜Ｄ作業ユニット１１〜１４の異常を検知可能な検知手段３０と、これらを制御する制御部（制御装置）２０と、を備えている。
【００１４】
なお、ここでいう異常とは、作業者による作業の要求が発生するような状態（作業要求状態）をいい、例えば、作業ユニット自身の故障や作業不良（組み付け不良や貼付不良等）が含まれる。
【００１５】
多関節ロボット１０は、６軸多関節のロボットアーム１０ａと、ロボットアーム１０ａの先端に接続されたハンド（エンドエフェクタ）１０ｂと、ハンド１０ｂに作用する力等を検出可能な不図示の力センサと、を備えている。多関節ロボット１０は、ハンド１０ｂで部品を把持し、ロボットアーム１０ａに内蔵されたアクチュエータを駆動することで、部品を所定の作業ユニットに移載する。このとき、力センサでロボットアーム１０ａ及びハンド１０ｂに作用する力を検出しながら部品を移動させる。
【００１６】
Ａ〜Ｄ作業ユニット１１〜１４は、作業台上（作業領域）の異なる位置に配置されている。Ａ〜Ｄ作業ユニット１１〜１４は、制御部２０からの指令に基づいて、多関節ロボット１０により移載された部品及び／又は多関節ロボットに対して、多関節ロボット１０の動作とは独立して、所定の作業を行う。例えば、Ａ〜Ｄ作業ユニット１１〜１４は、部品の組み付けやシール貼り等を行う。
【００１７】
なお、図１に示す教示点Ｐ１〜Ｐ７は、各工程（後述する工程１〜７）におけるロボット動作開始位置座標であり、教示点Ｐ２１〜Ｐ２４は、ユニット位置座標である。また、本実施形態においては、部品供給台１６には、ａ部品１６１、ｂ部品１６２及びｃ部品１６３が載置されており、ａ部品１６１、ｂ部品１６２及びｃ部品１６３は、各工程に応じて、多関節ロボット１０によりＡ〜Ｄ作業ユニット１１〜１４に与えられる。
【００１８】
図２に示すように、制御部２０は、ＣＰＵ２１と、メモリ２２と、を備えている。なお、制御部２０は、プログラマブルロジックコントローラやロボットコントローラ等で構成されていてもよい。ＣＰＵ２１は、ユニット動作制御部２３と、ユニット異常判断部２４と、ロボット停止位置判断部２５と、ロボット動作制御部２６と、を備えている。メモリ２２は、工程順序管理・記憶部２７と、ロボット停止位置テーブル２８と、教示点記憶領域２９と、を備えている。
【００１９】
ユニット動作制御部２３は、Ａ〜Ｄ作業ユニット１１〜１４の動作を制御する。具体的には、図３に示すように、ユニット動作制御部２３には、Ａ〜Ｄ作業ユニット１１〜１４の動作順（ルーチン）と、発生するエラー及びそのコード（異常コード）と、がコーディングされている。そして、ユニット動作制御部２３は、Ａ〜Ｄ作業ユニット１１〜１４を動作順に動作させると共に、異常が発生すると、異常コードをユニット異常判断部２４に送信し、Ａ〜Ｄ作業ユニット１１〜１４を停止させる。
【００２０】
ユニット異常判断部２４は、装置内の作業ユニットに異常が発生した際、Ａ〜Ｄ作業ユニット１１〜１４のどの作業ユニットで異常が発生したかを判断する。本実施形態においては、ユニット異常判断部２４は、異常コード２４ａとユニット番号（Ａ〜Ｄ）ごとのユニット異常２４ｂとが関連付けされた図４に示す異常判断テーブルを備えている。ユニット異常判断部２４は、作業ユニットのいずれかに異常が発生すると、その異常コードにより、どの作業ユニットで異常が発生したかを異常判断テーブルにて解析し、その結果をロボット停止位置テーブル２８に送信する。
【００２１】
ロボット停止位置判断部２５は、異常が発生した作業ユニット（作業要求状態の作業ユニット）を検知すると、多関節ロボット１０の動作を直ぐに停止させるかを判断する。すなわち、ロボット停止位置判断部２５は、多関節ロボット１０が次に実行する工程に対する次の作業ユニットの位置までの間で多関節ロボット１０の動作を停止させるか否かを判断する（判断工程）。ロボット停止位置判断部２５は、多関節ロボット１０が次に実行する工程に対する次の作業ユニットの位置までの間で多関節ロボット１０の動作を停止させると判断したとき、動作を現在位置から次の作業ユニットの位置までの間で停止させる（第１工程）。すなわち、多関節ロボット１０が次に実行する工程に対する次の作業ユニットが、異常が発生した作業ユニットである場合などは、多関節ロボット１０の動作を直ぐに停止させることを判断する。
【００２２】
また、ロボット停止位置判断部２５は、直ぐにロボットを停止させないと判断したとき、すなわち、ロボットが次に実行する工程に対する作業ユニットの位置までの間でロボットの動作を停止させないと判断したときは、以下のように制御する。即ち、異常が発生した作業ユニット以外の作業ユニットに対する工程を選択し、選択された工程に対する作業ユニットの位置に至るまで作業を継続しつつ多関節ロボット１０を移動させた後、動作を停止させる（第２工程）。
【００２３】
具体的には、ロボット停止位置判断部２５は、ロボット動作開始位置―ユニット位置座標間距離計算部２５ａと、座標間距離ソート部２５ｂと、動作可能ロボット開始位置照合部２５ｃと、を備えている。ロボット動作開始位置―ユニット位置座標間距離計算部２５ａが、ロボット動作開始位置座標記憶部２９ｂに登録された座標値とユニット位置座標記憶部２９ａに登録された座標全ての組み合わせから２点間距離を計算する（Ｓ１１、図５参照）。そして、座標間距離ソート部２５ｂが、その計算結果に従って、工程毎に、それぞれの作業ユニットから距離の大きくなるロボット動作開始位置順にソートする（Ｓ１２）。次に、動作可能ロボット開始位置照合部２５ｃが、工程順序管理部２７ａを参照し、ユニット異常が発生した際に座標間距離ソート部２５ｂで算出した工程毎の最も異常ユニットから最も離れたロボット動作開始位置に移動可能かどうかを判断する（Ｓ１３）。移動不可能であれば、次に最も異常ユニットから離れたロボット開始位置に移動可能かどうかを判断する。
【００２４】
また、本実施形態に係る組立て装置１００は、作業ユニットの１つとして、作業台上において多関節ロボット１０を退避させるための退避ユニットをさらに備えることもできる。停止すべきロボット開始位置が異常ユニットにアクセスする工程のロボット開始位置になる場合は、動作可能ロボット開始位置照合部２５ｃによって停止すべきロボット開始位置を、退避ユニットに対応するユニット退避位置に置き換える。このユニット退避位置では、どのメモリに格納されていてもよく、また、複数存在していてもよい。本実施形態においては、ユニット退避位置を一般教示点座標記憶部２９ｃに格納しているＰ１０１としており、その結果をロボット停止位置テーブル２８に送信する。
【００２５】
ロボット動作制御部２６は、工程毎の多関節ロボット１０の動作を制御（移動制御）する。例えば、ロボット動作制御部２６は、工程順序管理・記憶部２７より動作すべき工程の指示を受け、その情報に対応した工程と対応した動作を多関節ロボット１０に指令する。動作はロボット言語で記述されている工程動作プログラム（図６参照）より実行され、多関節ロボット１０はこのロボット動作制御部２６の通りに動作し、工程順序管理・記憶部２７よりロボット停止指令を受信すると、その位置でロボットを停止させる。
【００２６】
工程順序管理・記憶部２７は、Ａ〜Ｄ作業ユニット１１〜１４のどの工程が行われたかを記憶し、装置全体の状態によって行うべき工程を管理する。具体的には、図７に示すように、工程順序管理・記憶部２７は、工程順序管理部２７ａと、工程順序記憶部２７ｂとを備えている。工程順序管理部２７ａは、装置の工程順序と、工程毎に多関節ロボット１０がどの作業ユニットにアクセスするかを登録する部分である。また、装置が起動すると、各工程開始前に装置状態監視サブルーチン２７ｃを起動させ、その後、多関節ロボット１０及びＡ〜Ｄ作業ユニット１１〜１４に動作を指示する機能を有している。工程順序記憶部２７ｂは、動作がどこまで行われたかを記憶しており、例えば、工程１が動作終了すると、工程１完了のフラグがＯＮし、その情報が保存される。
【００２７】
ロボット停止位置テーブル２８は、Ａ〜Ｄ作業ユニット１１〜１４に異常が発生した際、作業ユニットの異常と、停止すべきロボット位置と、停止可能判断情報と、を関連づけた情報が記憶されている。具体的には、ロボット停止位置テーブル２８は、ユニット異常判断部２４、工程順序管理・記憶部２７及びロボット停止位置判断部２５とリンクされている。また、ロボット停止位置テーブル２８は、図８に示すように、工程停止位置格納領域２８ａと、異常ユニット一覧２８ｂと、停止すべきロボット位置２８ｃとを備えている。ロボット停止位置判断部２５より算出された位置が停止すべきロボット位置２８ｃに工程毎に格納されていて、ユニットの異常と関連付けられている。
【００２８】
教示点記憶領域２９には、多関節ロボット１０の教示点座標が記憶されている。具体的には、図９に示すように、教示点記憶領域２９は、ユニット位置座標記憶部２９ａと、ロボット動作開始位置座標記憶部２９ｂと、一般教示点座標記憶部２９ｃと、を備えている。例えば、教示点記憶領域２９は、教示点記憶領域２９の１つのメモリを３つに分ける。そして、Ｐ１からＰ７をロボット動作開始位置座標記憶部２９ｂ、Ｐ２１からＰ２４をユニット位置座標記憶部２９ａ、その他を一般教示点座標記憶部２９ｃとして、それぞれに位置座標が格納されている。なお、ロボット動作開始位置座標記憶部２９ｂ、ユニット位置座標記憶部２９ａ、一般教示点座標記憶部２９ｃのメモリを３箇所に構成してもよい。
【００２９】
次に、本実施形態に係る組立て装置１００の動作について、図１０から図１３を参照しながら説明する。まず、予め与えられた複数の作業工程と、複数の作業工程に基づいて予め設定されたルーチン（作業手順）について、図１０を参照しながら説明する。図１０は、本実施形態に係る組立て装置１００の複数工程動作のフローチャートである。
【００３０】
図１０に示すように、本実施形態に係る組立て装置１００は、組み立て工程が７工程存在し、予め設定されたルーチンに基づいて７工程が実行される。本実施形態においては、工程１から工程７が順次実行されるようになっている。また、実行される各工程の内容は以下となっている。
【００３１】
工程１は、ロボット動作制御部２６からの指令により多関節ロボット１０が部品供給台１６からａ部品１６１を取得し、Ａ作業ユニット１１に移載する（ユニットに対応する作業、ユニット関連工程）。そして、ユニット動作制御部２３からの指令により、Ａ作業ユニット１１がａ部品１６１に対して加工動作を行う。工程２は、ロボット動作制御部２６からの指令により多関節ロボット１０が部品供給台１６からｂ部品１６２を取得し、Ｂ作業ユニット１２に移載する（ユニットに対応する作業、ユニット関連工程）。そして、ユニット動作制御部２３からの指令により、Ｂ作業ユニット１２がｂ部品１６２に対して加工動作を行う。
【００３２】
工程３の動作は、ロボット動作制御部２６からの指令により多関節ロボット１０が部品供給台１６からｃ部品１６３を取得し、Ｃ作業ユニット１３に移載する（ユニットに対応する作業、ユニット関連工程）。そして、ユニット動作制御部２３からの指令により、Ｃ作業ユニット１３がｃ部品１６３に対して加工動作を行う。工程４は、ロボット動作制御部２６からの指令により、多関節ロボット１０がＡ作業ユニット１１から加工済ａ部品１６１を取得し、Ｄ作業ユニット１４に移載する（ユニットに対応する作業、ユニット関連工程）。工程５は、ロボット動作制御部２６からの指令により、多関節ロボット１０がＣ作業ユニット１３から加工済ｃ部品１６３を取得し、Ｄ作業ユニット１４に移載する（ユニットに対応する作業、ユニット関連工程）。
【００３３】
工程６は、ロボット動作制御部２６からの指令により、多関節ロボット１０がＢ作業ユニット１２から加工済ｂ部品１６２を取得し、Ｄ作業ユニット１４に移載する（ユニットに対応する作業、ユニット関連工程）。工程７は、Ｄ作業ユニット１４が移載された部品を組立てる。そして、組立てられた部品を多関節ロボット１０が排出台１７に移載する（ユニットに対応する作業、ユニット関連工程）。
【００３４】
次に、上述の各工程を実行中に、Ａ〜Ｄ作業ユニット１１〜１４のいずれかの異常を検知手段３０が検知した際の組立て装置１００の動作（ロボットシステムの制御方法）について、図１１を参照しながら説明する。図１１は、本実施形態に係る装置状態監視サブルーチン２７ｃのフローチャートである。
【００３５】
装置状態監視サブルーチン２７ｃは、組立て装置１００が起動すると起動するようになっている。まず、停止信号（後述）がセットされているかを判断する（ステップＳ１）。セットされていたらステップＳ６に移行し、そうでなければステップＳ２に移行する。次に、Ａ〜Ｄ作業ユニット１１〜１４に異常が発生していないかを判断する（ステップＳ２）。もし、Ａ〜Ｄ作業ユニット１１〜１４のいずれかに異常が発生していなければ終了し、発生していればステップＳ３に移行する。
【００３６】
次に、ステップＳ１で確認された異常がどのユニットの異常であるかの情報を取得する（ステップＳ３）。そして、取得後、ステップＳ４に移行する。次に、ロボットの動作を直ぐに停止させるかを判断する判断する。すなわち、ロボットが次に実行するユニット関連工程に対する作業ユニットの位置までの間でロボットの動作を停止させるか否かを判断する。直ぐにロボットを停止させないと判断したとき、すなわち、ロボットが次に実行するユニット関連工程に対する作業ユニットの位置までの間でロボットの動作を停止させないと判断したときに、次のように制御する。即ち、ステップＳ２での結果と、現在行われている工程から、ロボット停止位置をロボット停止位置テーブル２８より取得する（ステップＳ４）。次に、ロボット停止位置がロボット動作開始位置である工程に対応する停止信号を開始不可信号テーブル９１にセットする（ステップＳ５）。その停止信号を受け、多関節ロボット１０に停止信号を送信し、多関節ロボット１０は停止する。
【００３７】
次に、本実施形態に係る組立て装置１００のシステム設計からユニット異常発生時の動作について、図１２を参照しながら説明する。図１２は、異常発生時の組立て装置１００の状態を模式的に示す平面図である。
【００３８】
まず、工程順序管理・記憶部２７に工程順序と、工程毎に多関節ロボット１０がどの作業ユニットにアクセスするかを登録し、次に、教示点記憶領域２９にロボット動作開始座標、ユニット位置を登録しておく。登録後、組立て装置１００を起動すると、ロボット停止位置判断部２５が起動し、ロボット停止位置テーブル２８が生成される。本実施形態においては、ロボット停止位置テーブル２８は、工程数が７で、作業ユニット数が４なので、２８のテーブルが生成される。
【００３９】
ここで、図１２（Ａ）に示す工程４の動作中に、検知手段３０がＢ作業ユニット１２で異常を検知し、異常フロー（装置状態監視サブルーチン２７ｃ）になったと仮定する。すると、ユニット動作制御部２３からユニット異常判断部２４に異常コードが伝達される。ユニット異常判断部２４は、伝達された異常コードから、どの作業ユニットで異常が発生したかを特定する。
【００４０】
次に、ロボット停止位置テーブル２８より停止すべきロボット位置を取得する。図８に示すロボット停止位置テーブルによると、停止すべきロボット位置は、教示点Ｐ５となっている。これは、次にＢ作業ユニット１２に対するユニット関連工程（工程６）に至るまでの間で、Ｂ作業ユニット１２から最も離れた位置となるユニット関連工程が工程５となるので、工程５までユニット関連工程を実行させるためである（ユニット関連工程の選択）。なお、Ｂ作業ユニット１２から最も離れた位置は教示点Ｐ１となるが、教示点Ｐ１に移動するのは工程１であるため、この場合、教示点Ｐ１はロボット停止位置判断部２５により除外される。
【００４１】
次に、工程順序管理・記憶部２７に記憶された工程順序により、工程５に移行（教示点Ｐ５に移動）すると、ロボット動作制御部２６が多関節ロボット１０への停止命令を出力し、多関節ロボット１０が教示点Ｐ５で停止する（ロボット停止工程）。
【００４２】
以上説明したように、本実施形態に係る組立て装置１００は、検知手段３０が異常を検知すると、異常が発生した作業ユニットから最も離れたユニット関連工程となる位置（異なる位置）で多関節ロボット１０を停止させる。また、本実施形態に係る組立て装置１００は、作業ユニットの１つとして、作業台上において多関節ロボット１０を退避させるための退避ユニットをさらに備えていてもよい。この場合、多関節ロボット１０は、退避ユニット以外の作業ユニットと退避ユニットとの間を移動して退避ユニットに対応する作業を実行する（ユニットに対応する作業、ユニット関連工程）。そして、検知手段３０が異常を検知し、ロボット停止位置判断部２５が多関節ロボット１０の現在位置からロボットが次に実行するユニット関連工程に対する作業ユニットの位置までの間で多関節ロボット１０の動作を停止させないと判断したとする。この場合、ロボット動作制御部２６はユニット退避位置に多関節ロボット１０を移動させ停止させる。以上により、作業者が、異常が発生した作業ユニットに容易にアクセスすることができる。これにより、例えば、ティーチングペンダントやジョグ等で多関節ロボットを移動させてから作業をすること等を避けることができる。その結果、異常を検知してから作業復帰までの時間を短縮することができる。
【００４３】
また、多関節ロボット１０は、所定のユニット関連工程で停止するため、作業者が異常解消処理を行った後に、すぐに工程に戻ることが可能になり、更なる復帰時間の短縮が可能になる。
【００４４】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されない。
【００４５】
例えば、本実施形態においては、１つの多関節ロボットと第１〜第４の作業ユニットとが１つの架台上で複数の作業を行うセル生産方式を用いて説明したが、本発明はこれに限定されない。例えば、１つの多関節ロボットと少なくとも１つの作業ユニットとから構成されるロボットステーションを複数有するセル生産方式にも用いることができる。この場合、異常を検知することで停止した際のロボットステーション内の多関節ロボットを上述と同様の状態で停止させる。
【００４６】
また、本実施形態においては、多関節ロボットが、垂直多関節ロボットである場合について説明したが、水平多関節ロボット（スカラロボット）やパラレルリンクロボットなどであってもよい。
【００４７】
また、本実施形態の各処理動作は、制御部２０のＣＰＵ２１により実行されるものである。従って上述した機能を実現する制御プログラムを記録した記録媒体を制御部２０に供給し、制御部２０のコンピュータ（ＣＰＵやＭＰＵ）が記録媒体に格納された制御プログラムを読み出し実行することによって達成されるようにしてもよい。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体及びそのプログラムを記録した記録媒体は本発明を構成することになる。
【００４８】
また、本実施形態では、コンピュータ読み取り可能な記録媒体がメモリ２２であり、メモリ２２に制御プログラムが格納される場合について説明したが、これに限定するものではない。制御プログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、ＲＯＭ、外部記憶装置、記録ディスク等を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。また、本実施形態におけるプログラムを、ネットワークを介してダウンロードしてコンピュータにより実行するようにしてもよい。
【００４９】
また、コンピュータが読み出したプログラムコードを実行することにより、本実施形態の機能が実現されるだけに限定するものではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００５０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって本実施形態の機能が実現される場合も含まれる。
【符号の説明】
【００５１】
１０    多関節ロボット（ロボット）
１１〜１４    Ａ〜Ｄ作業ユニット（作業ユニット）
２０    制御部（制御装置）
３０    検知手段
１００    組立て装置（ロボットシステム）
【図１】
2015027727.tif 000003
【図２】
2015027727.tif 000004
【図３】
2015027727.tif 000005
【図４】
2015027727.tif 000006
【図５】
2015027727.tif 000007
【図６】
2015027727.tif 000008
【図７】
2015027727.tif 000009
【図８】
2015027727.tif 000010
【図９】
2015027727.tif 000011
【図１０】
2015027727.tif 000012
【図１１】
2015027727.tif 000013
【図１２】
2015027727.tif 000014