(57)【要約】【課題】作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制する。【解決手段】作業者の作業効率の低下を検出し、当該検出結果と、記憶部に記憶されたロボットが行う作業である第１の作業、及び第１の作業の後に作業者が行う第２の作業に関する情報とに基づいてロボットを制御する。ロボットは、作業者の作業効率の低下が検出されなかった場合には第１の作業を行い、作業者の作業効率の低下が検出された場合には第２の作業の少なくとも一部である第３の作業を行うように制御される。【選択図】図２
2014142814.tif 000002
【特許請求の範囲】
【請求項１】
ロボットと、
前記ロボットが行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報が記憶された記憶部と、
前記作業者の作業効率の低下を検出する検出部と、
前記記憶部に記憶された作業内容に基づいて前記ロボットを制御する制御部と、
を備え、
前記制御部は、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する
ことを特徴とする生産システム。
【請求項２】
請求項１に記載の生産システムにおいて、
前記検出部は、前記第１の作業により生成された生成品を置くことができる領域の大きさが閾値以上ない場合に、前記作業者の作業効率の低下を検出する
ことを特徴とする生産システム。
【請求項３】
請求項２に記載の生産システムにおいて、
前記検出部は、前記第１の作業により生成された生成品を置くことができる領域が閾値以上ない場合には、所定時間経過するまで待機し、当該所定時間経過した後で前記第１の作業により生成された生成品を置くことができる領域が閾値以上ない場合に、前記作業者の作業効率の低下を検出する
ことを特徴とする生産システム。
【請求項４】
請求項２又は３に記載の生産システムにおいて、
前記作業者が作業を行う作業台を含む画像を取得する画像取得部を備え、
前記検出部は、前記取得した画像に基づいて前記作業者の作業効率の低下を検出する
ことを特徴とする生産システム。
【請求項５】
請求項２又は３に記載の生産システムにおいて、
前記第１の作業により生成された生成品が載置された作業台の重量を測定する測定部を備え、
前記検出部は、前記測定した重力に基づいて前記作業者の作業効率の低下を検出する
ことを特徴とする生産システム。
【請求項６】
請求項１から５のいずれか一項に記載の生産システムにおいて、
前記作業者の作業効率が低下していることを示す情報を入力する入力部を備え、
前記検出部は、前記入力部からの入力を受け付けた場合には、前記作業者の作業効率の低下を検出する
ことを特徴とする生産システム。
【請求項７】
請求項１から６のいずれか一項に記載の生産システムにおいて、
前記ロボットに前記第１の作業及び前記第３の作業を教示する教示部を備え、
前記制御部は、前記教示部が教示した作業を前記ロボットに行わせる
ことを特徴とする生産システム。
【請求項８】
可動部と、
前記可動部が行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報を取得する作業情報取得部と、
前記作業者の作業効率の低下を検出する検出部と、
前記取得した作業内容に基づいて前記可動部を制御する制御部であって、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記可動部を制御する制御部と、
を備えることを特徴とするロボット。
【請求項９】
ロボットが行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報を取得する作業情報取得部と、
前記作業者の作業効率の低下を検出する検出部と、
前記取得した作業内容に基づいて前記ロボットを制御する制御部であって、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する制御部と、
を備えることを特徴とする制御装置。
【請求項１０】
ロボットが第１の作業を行ったワークに対して行う作業者の第２の作業について、作業効率の低下を検出する第１のステップと、
前記作業者の作業効率の低下が検出されなかった場合には、前記第１の作業を行い、前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する第２のステップと、
を含むことを特徴とする生産方法。
【請求項１１】
請求項１０に記載の生産方法において、
前記第１のステップの前に行われる第３のステップであって、前記ロボットに前記第１の作業及び前記第３の作業を教示する第３のステップと、
を含み、
前記第２のステップでは、前記第３のステップで教示された作業を行うように前記ロボットを制御する
ことを特徴とする生産方法。
【請求項１２】
ロボットが第１の作業を行ったワークに対して行う作業者の第２の作業について、作業効率の低下を検出する第１のステップと、
前記作業者の作業効率の低下が検出されなかった場合には、前記第１の作業を行い、前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する第２のステップと、
を演算装置に実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生産システム、ロボット、制御装置、生産方法及び制御プログラムに関する。
【背景技術】
【０００２】
特許文献１には、作業者とロボットとがそれぞれ一連の工程を分担して製品用のワークに対する処理を行うことにより製品を順次生産するシステムであり、作業者が分担した各工程に要する時間を計測する工程計測部と、工程計測部によって計測された時間に応じて作業者とロボットの間の工程分担の割合を変化させる工程制御部と、を備える生産システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２２７７７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の発明では、作業者より下流側のロボット（作業者の後で作業を行うロボット）が作業者の作業を補っている。しかしながら、作業者の作業を作業者より下流側で補うと、下流側の作業についても遅れが発生してしまう。
【０００５】
また、作業者より下流側のロボットが作業を補う場合には、作業者が供給できる数量以上の数のワークは、ラインに投入されず、ラインの生産効率が低下する。
【０００６】
そこで、本発明は、作業者とロボットとの混合生産システムにおいて、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる生産システム、ロボット、制御装置、生産方法及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための第一の態様は、生産システムであって、ロボットと、前記ロボットが行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報が記憶された記憶部と、前記作業者の作業効率の低下を検出する検出部と、前記記憶部に記憶された作業内容に基づいて前記ロボットを制御する制御部と、を備え、前記制御部は、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御することを特徴とする。
【０００８】
第一の態様によれば、検出部で作業者の作業効率の低下が検出されなかった場合には、ロボットが行う作業である第１の作業を行い、作業者の作業効率の低下が検出された場合には、作業者が行う作業の少なくとも一部である第３の作業を行うように、作業者の前に作業を行うロボットを制御する。これにより、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる。
【０００９】
ここで、前記検出部は、前記第１の作業により生成された生成品を置くことができる領域が閾値以上ない場合に、前記作業者の作業効率の低下を検出してもよい。これにより、作業者の作業効率が低下したことを客観的に判断することができる。
【００１０】
ここで、前記検出部は、前記第１の作業により生成された生成品を置くことができる領域が閾値以上ない場合には、所定時間経過するまで待機し、当該所定時間経過した後で前記第１の作業により生成された生成品を置くことができる領域が閾値以上ない場合に、前記作業者の作業効率の低下を検出してもよい。これにより、ロボットの作業の切り替え回数を減らすことができ、処理を安定させることができる。
【００１１】
ここで、前記作業者が作業を行う作業台を含む画像を取得する画像取得部を備え、前記検出部は、前記取得した画像に基づいて前記作業者の作業効率の低下を検出してもよい。これにより、作業者の作業効率が低下したことを容易に検出することができる。
【００１２】
ここで、前記第１の作業により生成された生成品が載置された作業台の重量を測定する測定部を備え、前記検出部は、前記測定した重力に基づいて前記作業者の作業効率の低下を検出してもよい。これにより、作業者の作業効率が低下したことを容易に検出することができる。
【００１３】
ここで、前記作業者の作業効率が低下していることを示す情報を入力する入力部を備え、前記検出部は、前記入力部からの入力を受け付けた場合には、前記作業者の作業効率の低下を検出してもよい。これにより、生産効率が低下した直後にロボットが作業者の作業を補うことができ、生産効率の低下を確実に防ぐことができる。
【００１４】
ここで、前記ロボットに前記第１の作業及び前記第３の作業を教示する教示部を備え、前記制御部は、前記教示部が教示した作業を前記ロボットに行わせてもよい。これにより、指示によりロボットの作業を変えることができる。
【００１５】
本発明の第二の態様は、ロボットであって、可動部と、前記可動部が行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報を取得する作業情報取得部と、前記作業者の作業効率の低下を検出する検出部と、前記取得した作業内容に基づいて前記可動部を制御する制御部であって、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記可動部を制御する制御部と、を備えることを特徴とする。これにより、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる。
【００１６】
本発明の第三の態様は、制御装置であって、ロボットが行う作業である第１の作業、及び前記第１の作業の後に作業者が行う第２の作業に関する情報を取得する作業情報取得部と、前記作業者の作業効率の低下を検出する検出部と、前記取得した作業内容に基づいて前記ロボットを制御する制御部であって、前記検出部で前記作業者の作業効率の低下が検出されなかった場合には前記第１の作業を行い、前記検出部で前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する制御部と、を備えることを特徴とする。これにより、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる。
【００１７】
本発明の第四の態様は、生産方法であって、ロボットが第１の作業を行ったワークに対して行う作業者の第２の作業について、作業効率の低下を検出する第１のステップと、前記作業者の作業効率の低下が検出されなかった場合には、前記第１の作業を行い、前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する第２のステップと、を含むことを特徴とする。これにより、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる。
【００１８】
ここで、前記第１のステップの前に行われる第３のステップであって、前記ロボットに前記第１の作業及び前記第３の作業を教示する第３のステップと、を含み、前記第２のステップでは、前記第３のステップで教示された作業を行うように前記ロボットを制御してもよい。これにより、指示によりロボットの作業を変えることができる。
【００１９】
本発明の第五の態様は、制御プログラムであって、ロボットが第１の作業を行ったワークに対して行う作業者の第２の作業について、作業効率の低下を検出する第１のステップと、前記作業者の作業効率の低下が検出されなかった場合には、前記第１の作業を行い、前記作業者の作業効率の低下が検出された場合には前記第２の作業の少なくとも一部である第３の作業を行うように、前記ロボットを制御する第２のステップと、を演算装置に実行させることを特徴とする。これにより、作業者の作業効率が低下した場合に、ラインの生産効率の低下を抑制することができる。
【図面の簡単な説明】
【００２０】
【図１】第１の実施形態における生産システム１の構成の一例を示す図である。
【図２】生産システム１の機能構成の一例を示すブロック図である。
【図３】制御部５０のハードウェア構成を示す図である。
【図４】生産システム１のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。
【図５】生産システム１のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。
【図６】生産システム１の作業者の作業に関する処理の流れを示すフローチャートである。
【図７】生産システム１のロボットＢ２０の作業に関する処理の流れを示すフローチャートである。
【図８】生産システム１の変形例を示す図である。
【図９】第２の実施形態における生産システム２の構成の一例を示す図である。
【図１０】生産システム２の機能構成の一例を示すブロック図である。
【図１１】生産システム２のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。
【図１２】生産システム２のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。
【図１３】生産システム２の作業者の作業に関する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２１】
本発明の一実施形態について、図面を参照しながら説明する。
【００２２】
＜第１の実施の形態＞
図１は、本発明の一実施形態における生産システム１の構成の一例を示すシステム構成図である。本実施形態における生産システム１は、ロボットＡ１０と、ロボットＢ２０と、撮影部３０、３２と、作業台４０と、制御部５０とを備える。生産システム１は、ロボットＡ１０及びロボットＢ２０と、作業者６０とが作業場所である１つの生産セル内で協同して組み立て作業を行うセル生産システムである。
【００２３】
ロボットＡ１０及びロボットＢ２０は、複数のジョイント（関節）と、複数のリンクとを含むアーム部を２本有するアーム型のいわゆる双腕ロボットである。アーム部の先端には、対象物（ワーク）を把持し所定の作業を行うことが可能なハンド（図示せず）が設けられる。以下、ロボットＡ１０のアーム部及びハンドを可動部１１といい、ロボットＢ２０のアーム部及びハンドを可動部２１という。
【００２４】
ロボットＡ１０の可動部１１のうち、右手に相当する可動部を可動部１１Ａとし、左手に相当する可動部を可動部１１Ｂとする。また、ロボットＢ２０の可動部２１のうち、右手に相当する可動部を可動部２１Ａとし、左手に相当する可動部を可動部２１Ｂとする。
【００２５】
ジョイント及びハンドには、それらを動作させるためのアクチュエーター（図示せず）が設けられる。アクチュエーターは、例えば、サーボモーターやエンコーダーなどを備える。エンコーダーが出力するエンコーダー値は、制御部５０によるロボットＡ１０及びロボットＢ２０のフィードバック制御に使用される。
【００２６】
なお、ロボットＡ１０及びロボットＢ２０の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。一般的な把持ロボットが備える構成を排除するものではない。例えば、軸数（ジョイント数）をさらに増加させてもよいし、減らしてもよい。リンクの数を増減させてもよい。また、アーム、ハンド、リンク、ジョイント等の各種部材の形状、大きさ、配置、構造等も適宜変更してよい。
【００２７】
図１に示すように、ロボットＡ１０の下流側に作業者６０が配置され、作業者６０の下流側にロボットＢ２０が配置される。本実施の形態では、ロボットＡ１０はワークＡにワークＢを組み込む作業を行う（第１の作業）。作業者６０は、ワークＡにワークＢが組み込まれたワークであるワークＡＢ（第１の作業で生成された生成品）にワークＣを組み込む作業を行う（第２の作業）。ロボットＢ２０の作業は、ワークＡＢにワークＣが組み込まれたワークであるワークＡＢＣ（第２の作業で生成された生成品）にワークＤを組み込む作業を行う。
【００２８】
撮影部３０、３２は、作業台４０付近を撮影して、画像データを生成するユニットである。撮影部３０、３２は、例えば、カメラを含み、作業台、天井、壁などに設けられる。図１では、撮影部３０、３２は、床に設けられている。撮影部３０、３２としては、可視光カメラ、赤外線カメラ等を採用することができる。
【００２９】
作業台４０は、トレイ４１と、作業領域４２と、トレイ４３と、作業領域４４と、トレイ４５と、作業領域４６と、トレイ４７とからなる。
【００３０】
トレイ４１には、ロボットＡ１０が作業に用いるワークＡ及びワークＢが載置される。
【００３１】
作業領域４２は、ロボットＡ１０が作業を行う作業領域４２Ａと、ロボットＡ１０が作業に用いる道具、治具等が載置された道具置き場４２Ｂとからなる。ロボットＡ１０が作業領域４２Ａで作業を行った完成品（本実施の形態ではワークＡＢ）は、トレイ４３に載置される。
【００３２】
トレイ４３には、作業者６０が作業に用いるワークＡＢ及びワークＣが載置される。トレイ４３のうち、ワークＡＢが載置される領域をトレイ４３Ａとする。撮影部３０は、トレイ４３全体が撮影できるように設けられる。
【００３３】
作業領域４４には、作業者６０が作業を行う作業領域４４Ａと、作業者６０が作業に用いる道具、治具等が載置された道具置き場４４Ｂとからなる。作業者６０が作業領域４４Ａで作業を行った完成品（本実施の形態ではワークＡＢＣ）は、トレイ４５に載置される。
【００３４】
トレイ４５には、ロボットＢ２０が作業に用いるワークＡＢＣ及びワークＤが載置される。トレイ４５のうち、ワークＡＢＣが載置される領域をトレイ４５Ａとする。撮影部３２は、トレイ４５全体が撮影できるように設けられる。
【００３５】
作業領域４６は、ロボットＢ２０が作業を行う作業領域４６Ａと、ロボットＢ２０が作業に用いる道具、治具等が載置された道具置き場４６Ｂとからなる。
【００３６】
トレイ４７には、ロボットＢ２０が作業領域４６Ａで作業を行った完成品（本実施の形態ではワークＡＢＣＤ）が載置される。
【００３７】
制御部５０は、ロボットＡ１０及びロボットＢ２０の全体を制御する処理を行う。制御部５０は、ロボットＡ１０及びロボットＢ２０の本体とは離れた場所に（遠隔操作可能に）設置してもよいし、ロボットＡ１０及びロボットＢ２０の少なくとも一方に内蔵してもよい。この場合、撮影部３０は、制御部５０ではなくロボットＡ１０及びロボットＢ２０それぞれに接続されるようにしてもよいし、ロボットＡ１０及びロボットＢ２０の少なくとも一方に内蔵されるようにしてもよい。
【００３８】
なお、図１では、ロボットＡ１０及びロボットＢ２０のエンドエフェクターや作業者６０の手が、上述の各領域に届かないように見えるが、届くものとして説明する。また、本実施形態では、上述の各領域は、物理的に別の領域としているが、一部又は全部が他の領域と重なっていてもよい。
【００３９】
次に、生産システム１の機能構成例について説明する。図２は、生産システム１の機能ブロック図である。
【００４０】
ロボットＡ１０は、アクチュエーターのエンコーダー値、及びセンサーのセンサー値等に基づいて可動部１１を制御する動作制御部１２を備える。ロボットＢ２０は、アクチュエーターのエンコーダー値、及びセンサーのセンサー値等に基づいて可動部２１を制御する動作制御部２２を備える。
【００４１】
制御部５０は、主として、主制御部５０１と、記憶部５０２と、画像取得部５０３とを備える。また、制御部５０は、有線又は無線によりロボットＡ１０及びロボットＢ２０と通信可能に接続されている。
【００４２】
主制御部５０１は、他の各部（５０２、５０３）を統括的に制御する。また、主制御部５０１は、作業効率低下検出部５０１ａと、作業決定部５０１ｂと、教示部５０１ｃとを備える。
【００４３】
作業効率低下検出部５０１ａは、作業者６０の作業効率の低下を検出する。本実施の形態では、作業効率低下検出部５０１ａは、画像取得部５０３から取得した画像を解析し、トレイ４３Ａに載置されたワークＡＢの数に基づいて、作業者６０の作業効率の低下を検出する。
【００４４】
作業決定部５０１ｂは、作業効率低下検出部５０１ａが作業者６０の作業効率の低下を検出した場合には、ロボットＡ１０が、ロボットＡ１０が本来行うべき作業に加えて、作業者６０が行う作業の少なくとも一部を補うことを決定する。また、作業決定部５０１ｂは、作業効率低下検出部５０１ａが作業者６０の作業効率の低下を検出していない場合には、ロボットＡ１０が、ロボットＡ１０が本来行うべき作業のみを行うことを決定する。また、作業決定部５０１ｂは、ロボットＡ１０が決定した作業を行うように、ロボットＡ１０に指示を出力する。
【００４５】
教示部５０１ｃは、ロボットＡ１０が本来行うべき作業と、作業者６０の作業効率が低下した場合にロボットＡ１０が補う作業を、ロボットＡ１０に教示する。
【００４６】
記憶部５０２は、各種データやプログラムを記憶する。各種データとして、記憶部５０２には、ロボットＡ１０、作業者６０、ロボットＢ２０が行う作業がそれぞれ記憶される。
【００４７】
ロボットＡ１０が行う作業（本発明の第１の作業に相当）として、記憶部５０２には、（１−１）「ワークＡの置き場」から「ワークＡ」を取出し、作業エリアに置く、（１−２）「ワークＢの置き場」から「ワークＢ」を取出し、作業エリアに置く、（１−３）「ワークＡ」に「ワークＢ」を組み込む、（１−４）「ワークＡＢ」を「ワークＡＢの置き場」に置く、という４つの作業が記憶される。
【００４８】
作業者６０が行う作業（本発明の第２の作業に相当）として、記憶部５０２には、（２−１）「ワークＡＢの置き場」から「ワークＡＢ」を取出し、作業エリアに置く、（２−２）「ワークＣの置き場」から「ワークＣ」を取出し、作業エリアに置く、（２−３）「ワークＡＢ」に「ワークＣ」を組み込む、（２−４）「ワークＡＢ」に「ワークＣ」を組み込んだワークである「ワークＡＢＣ」を「ワークＡＢＣの置き場」に置く、という４つの作業が記憶される。
【００４９】
ロボットＢ２０が行う作業として、記憶部５０２には、（３−１）「ワークＡＢＣの置き場」から「ワークＡＢＣ」を取出し、作業エリアに置く、（３−２）「ワークＤの置き場」から「ワークＤ」を取り出し、作業エリアに置く、（３−３）「ワークＡＢＣ」に「ワークＤ」を組み込む、（３−４）「ワークＡＢＣ」に「ワークＤ」を組み込んだワークである「ワークＡＢＣＤ」を「ワークＡＢＣＤの置き場」に置く、という４つの作業が記憶される。
【００５０】
なお、記憶部５０２は、必ずしも制御部５０の内部に設ける必要はない。記憶部５０２を制御部５０、ロボットＡ１０及びロボットＢ２０の外部装置として用意してもよい。その場合、制御部５０内あるいはロボットＡ１０又はロボットＢ２０内の制御部が、作業情報取得部として、記憶部５０２から作業情報を取得するようにしてもよい。
【００５１】
画像取得部５０３は、撮影部３０で撮影された画像データを取得する。画像取得部５０３は、撮影された画像データを主制御部５０１に出力する。
【００５２】
なお、ロボットＡ１０、ロボットＢ２０及び制御部５０の各機能構成は、ロボットＡ１０、ロボットＢ２０及び制御部５０の構成を理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。ロボットＡ１０、ロボットＢ２０及び制御部５０の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、１つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。
【００５３】
図３は、制御部５０の概略構成の一例を示すブロック図である。図示するように、制御部５０は、演算装置であるＣＰＵ５１と、揮発性の記憶装置であるＲＡＭや不揮発性の記憶装置であるＲＯＭからなるメモリー５２と、外部記憶装置５３と、ロボットＡ１０、ロボットＢ２０等の外部の装置と通信を行う通信装置５４と、マウスやキーボード等の入力装置５５と、ディスプレイ等の出力装置５６と、ＣＤドライブ、ＤＶＤドライブ等の読み書き装置５７と、制御部５０と他のユニットを接続するインターフェイス（Ｉ／Ｆ）５８とを備える。
【００５４】
上記の記憶部５０２以外の各機能部は、例えば、ＣＰＵ５１がメモリー５２に格納された所定のプログラムをメモリー５２に読み出して実行することにより実現される。記憶部５０２は、例えば、メモリー５２又は外部記憶装置５３により実現される。なお、所定のプログラムは、例えば、予めメモリー５２にインストールされてもよいし、通信装置５４を介してネットワークからダウンロードされてインストール又は更新されてもよい。
【００５５】
以上の生産システム１の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。例えば、ロボットＡ１０及びロボットＢ２０の少なくとも一方が、制御部５０を備えていてもよい。また、一般的なロボットが備える構成を排除するものではない。
【００５６】
次に、本実施形態における、上記構成からなる生産システム１の特徴的な処理について説明する。
【００５７】
図４は、生産システム１のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。この処理は、例えば、図示しないボタン等を介して作業開始指示が入力されることにより開始される。
【００５８】
また、教示部５０１ｃは、作業開始指示が入力された後、図４に示す処理を開始する前に、ロボットＡ１０が本来行うべき作業と、作業者６０の作業効率が低下した場合にロボットＡ１０が補う作業を、ロボットＡ１０に教示する。これは、指示によりロボットＡ１０の作業を変えられるようにするためである。本実施の形態では、教示部５０１ｃは、ロボットＡ１０が本来行うべき作業として、記憶部５０２に記憶された（１−１）、（１−２）、（１−３）、（１−４）の作業をロボットＡ１０に教示する。また、教示部５０１ｃは、作業者６０の作業効率が低下した場合にロボットＡ１０が補う作業として、記憶部５０２に記憶された（２−１）、（２−２）、（２−３）、（２−４）の作業をロボットＡ１０に教示する。
【００５９】
最初に、作業決定部５０１ｂは、ｍ＝０に設定する（ステップＳ１００）。なお、ｍは、指定時間の経過を待機するために使用するものである（後に詳述）。また、作業決定部５０１ｂは、ロボットＡ１０が本来行うべき作業をロボットＡ１０が行うように、動作制御部１２に指示を出力する。その結果、動作制御部１２は、以下に示すステップＳ１０２〜Ｓ１１２の処理を行う。
【００６０】
動作制御部１２は、ロボットＡ１０の右の可動部１１Ａで、トレイ４１からワークＡを取り出し（ステップＳ１０２）、ワークＡを作業領域４１Ａに置く（ステップＳ１０４）。
次に、動作制御部１２は、可動部１１Ａで、トレイ４１からワークＢを取り出す（ステップＳ１０６）。
【００６１】
その後、動作制御部１２は、ロボットＡ１０の左の可動部１１Ｂで、ワークＡを押さえ（ステップＳ１０８）、可動部１１ＡでワークＡにワークＢを組み付ける（ステップＳ１１０）。
【００６２】
ワークの組み付けが完了したら、動作制御部１２は、組立が完了したか否かを判断する（ステップＳ１１２）。例えば、ロボットＡ１０に撮影部（図示せず）を設け、撮影された画像を動作制御部１２が解析することにより、判断を行うことができる。
【００６３】
組立が完了した場合（ステップＳ１１２でＹＥＳ）には、動作制御部１２は、組立が完了したことを示す情報を主制御部５０１に出力する。作業効率低下検出部５０１ａは、画像取得部５０３を介して撮影部３０が撮影した画像を取得し、トレイ４３ＡにワークＡＢを置く場所がＮ個以上あるか否かを判断する（ステップＳ１１４）。
【００６４】
作業効率低下検出部５０１ａが、画像からトレイ４３Ａの空き領域を解析する方法としては、すでに公知の様々な画像認識技術を用いることができる。例えば、トレイ４３ＡにワークＡＢが載置できる数があらかじめ分かっている場合には、トレイ４３Ａに載置されたワークＡＢの数を認識することにより、トレイ４３ＡにワークＡＢを置く場所がＮ個以上あるか否かを判断することができる。また、例えば、トレイ４３ＡにワークＡＢを載置可能な空き領域の面積を認識し、空き領域の面積がある閾値以下か否かに応じて、トレイ４３ＡにワークＡＢを置く場所がＮ個以上あるか否かを判断することができる。なお、Ｎは閾値であり、任意の自然数を採用することができる。Ｎは、作業効率低下検出部５０１ａがあらかじめ設定しておいた値を用いてもよいし、入力装置５５等を介して入力された値としてもよい。
【００６５】
作業効率低下検出部５０１ａは、トレイ４３ＡにワークＡＢを置く場所がＮ個以上ある場合は、作業者６０の作業効率が低下していないことを検出し、トレイ４３ＡにワークＡＢを置く場所がＮ個以上ない場合は、作業者６０の作業効率が低下していることを検出する。作業効率低下検出部５０１ａは、検出結果を作業決定部５０１ｂに出力する。
【００６６】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ある場合（ステップＳ１１４でＹＥＳ）には、作業決定部５０１ｂは、ロボットＡ１０が本来行うべき作業をそのまま継続するように、ロボットＡ１０に指示を出力する。そして、動作制御部１２は、作業決定部５０１ｂからの指示を取得すると、ステップＳ１１０で組み立てたワークＡＢを可動部１１Ｂでトレイ４３Ａの空いている領域に載置する（ステップＳ１１６）。ワークＡＢを載置する場所は、ステップＳ１１４での画像認識結果に基づいて作業決定部５０１ｂ又は動作制御部１２が決定することができる。
【００６７】
これにより、ワークＡＢを１個組み立てることができる（ステップＳ１０２〜Ｓ１１６）。動作制御部１２は、ステップＳ１０２に戻り、次のワーク組み立て作業を開始する。
【００６８】
組立が完了していない場合（ステップＳ１１２でＮＯ）、例えば組み立てた結果が正常でない場合には、動作制御部１２は、組み立てたワークＡＢの修正作業を行う（ステップＳ１２４）。ワークＡＢの修正作業の詳細は説明を省略する。その後、動作制御部１２は、ステップＳ１１２に戻り、修正後のワークＡＢについて組立が完了したか否かを判断する。
【００６９】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ない場合（ステップＳ１１４でＮＯ）には、作業決定部５０１ｂは、ｍが閾値より小さいか否かを判断する（ステップＳ１１８）。閾値は、任意の自然数（例えば、２）を採用することができる。ｍは、作業決定部５０１ｂがあらかじめ設定しておいた値を用いてもよいし、入力装置５５等を介して入力された値としてもよい。
【００７０】
ｍが閾値より小さくない場合、すなわちｍが閾値以上である場合（ステップＳ１１８でＮＯ）には、作業決定部５０１ｂは、作業者６０の作業効率が低下しており、ロボットＡ１０が作業者６０の作業を補うことを決定する。作業決定部５０１ｂは、決定を動作制御部１２に出力する。これにより、図５に示すロボットＡ１０が作業者６０の作業を補うフローへ進む。ロボットＡ１０が作業者６０の作業を補うフローについては、後に詳述する。
【００７１】
ｍが閾値より小さい場合（ステップＳ１１８でＹＥＳ）には、作業決定部５０１ｂは、ｍに１を追加し（ステップＳ１２０）、指定時間（例えば、１０秒）だけ待機して（ステップＳ１２２）、ステップＳ１１４に戻る。指定時間は、予め設定されていてもよいし、入力装置５５を介して入力された値を用いてもよい。これにより、ロボットＡ１０が、すぐに作業者６０の作業を補うことがなくなり、ロボットＡ１０の処理を切り替える回数を減らし、動作を安定させることができる。
【００７２】
図４に示す処理によれば、定期的にワークＡＢの置き場所があるか否かを観察し、定期的に作業者６０の作業効率の低下を検出することができる。
【００７３】
図５は、生産システム１において、作業者６０の作業効率が低下し、ロボットＡ１０が作業者６０の作業を補う処理の流れを示すフローチャートである。図５に示す処理は、ステップＳ１１８でＮＯである場合に行われる。
【００７４】
動作制御部１２は、可動部１１Ｂ（左手）がワークＡＢを把持しているか否かを判断する（ステップＳ２００）。
【００７５】
可動部１１ＢがワークＡＢを把持している場合（ステップＳ２００でＹＥＳ）には、動作制御部１２は、ワークＡＢを作業領域４２Ａに載置する（ステップＳ２０２）。
【００７６】
可動部１１ＢがワークＡＢを把持していない場合（ステップＳ２００でＮＯ）には、動作制御部１２は、トレイ４３ＡからワークＡＢを可動部１１Ｂで把持し（ステップＳ２０４）、ワークＡＢを作業領域４２Ａに載置する（ステップＳ２０６）。
【００７７】
動作制御部１２は、トレイ４３からワークＣを可動部１１Ｂで把持し（ステップＳ２０８）、ワークＣを可動部１１Ｂ（左手）から可動部１１Ａ（右手）に持ちかえる（ステップＳ２１０）。
【００７８】
次に、動作制御部１２は、作業領域４２Ａに載置されたワークＡＢを可動部１１Ｂで押さえ（ステップＳ２１２）、可動部１１Ａが把持するワークＣをワークＡＢに組み付ける（ステップＳ２１４）。
【００７９】
組み付けが終了したら、動作制御部１２は、ワークＡＢＣの組立が完了したことを示す情報を主制御部５０１に出力する。作業効率低下検出部５０１ａは、画像取得部５０３を介して撮影部３２が撮影した画像を取得し、トレイ４５ＡにワークＡＢＣを置く場所があるか否かを判断する（ステップＳ２１６）。作業効率低下検出部５０１ａが、画像からトレイ４５Ａに空き領域があるか否かを解析する方法としては、ステップＳ１１４と同様に、すでに公知の様々な画像認識技術を用いることができる。作業効率低下検出部５０１ａは、ステップＳ１１４と同様に、検出結果を作業決定部５０１ｂに出力する。
【００８０】
トレイ４５ＡにワークＡＢＣを置く場所がある場合（ステップＳ２１６でＹＥＳ）には、作業決定部５０１ｂは、ワークＡＢＣをトレイ４５Ａに置くように、動作制御部１２に指示を出力する。動作制御部１２は、作業決定部５０１ｂからの指示を受け付けると、作業領域４２Ａに載置されたワークＡＢＣを可動部１１Ｂで把持し、トレイ４５Ａに載置する（ステップＳ２１８）。作業者６０の邪魔にならないように、動作制御部１２は、トレイ４５Ａの作業者６０から最も離れた位置にワークＡＢＣを載置する（図１の網掛けされたワークＡＢＣを参照）。
【００８１】
次に、像取得部５０３を介して撮影部３０が撮影した画像を取得し、トレイ４３ＡにワークＡＢを置く場所がＮ個以上あるか否かを判断する（ステップＳ２２０）。当該処理は、ステップＳ１１４と同様であるため、説明を省略する。作業決定部５０１ｂは、
【００８２】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ある場合（ステップＳ２２０でＹＥＳ）には、ロボットＡ１０が作業者６０の作業を補っている間に、作業者６０の作業効率が元に戻ったか、作業者６０の作業が進んだ場合である。したがって、ロボットＡ１０は、ロボットＡ１０が本来行うべき作業を行う。すなわち、作業決定部５０１ｂは、ｍ＝０に設定し（ステップＳ２２２）、ステップＳ１０２に戻る。
【００８３】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ない場合（ステップＳ２２０でＮＯ）には、ステップＳ２００に戻る。すなわち、ロボットＡ１０は、作業者６０の作業を補う作業を継続する。
【００８４】
トレイ４５ＡにワークＡＢＣを置く場所がない場合（ステップＳ２１６でＮＯ）には、作業決定部５０１ｂは、ワークＡＢＣを置く場所をトレイ４５Ａに作る、待機する等の、通常の処理以外の他の処理を行うように、動作制御部１２に指示を出力する（ステップＳ２２４）。他の処理の詳細については省略する。
【００８５】
図６は、作業者６０の作業に関する処理の流れを示すフローチャートである。作業者６０は、ロボットＡ１０と同時に処理を開始する。
【００８６】
作業者６０は、トレイ４３Ａから右手でワークＡＢを取り出し（ステップＳ３００）、ワークＡＢを作業領域４４Ａに載置する（ステップＳ３０２）。
【００８７】
作業者６０は、トレイ４３から右手でワークＣを取り出す（ステップＳ３０４）。作業者６０は、左手でワークＡＢを押さえ（ステップＳ３０６）、右手に把持しているワークＣをワークＡＢに組み付けてワークＡＢＣを生成する（ステップＳ３０８）。
【００８８】
作業者６０は、トレイ４５ＡにワークＡＢＣを載置する空き領域があるかを判断する（ステップＳ３１０）。空き領域がある場合（ステップＳ３０１でＹＥＳ）には、ワークＡＢＣをトレイ４５Ａに載置し（ステップＳ３１２）、ステップＳ３００に戻る。
【００８９】
空き領域がない場合（ステップＳ３０１でＮＯ）には、作業者６０は、ワークＡＢＣにワークＤを組み立てる等の他の作業を行う（ステップＳ３１４）。
【００９０】
図７は、ロボットＢ２０の作業に関する処理の流れを示すフローチャートである。この処理は、ロボットＡ１０と同時に、例えば、図示しないボタン等を介して作業開始指示が入力されることにより開始される。
【００９１】
主制御部５０１は、作業を開始するように動作制御部２２に指示を出力する。動作制御部２２は、指示を受け付けると、トレイ４５Ａから可動部２１Ａ（右手）でワークＡＢＣを取り出し（ステップＳ４００）、ワークＡＢＣを作業領域４６Ａに載置する（ステップＳ４０２）。
【００９２】
動作制御部２２は、トレイ４５から可動部２１ＡでワークＤを取り出す（ステップＳ４０４）。動作制御部２２は、可動部２１Ｂ（左手）でワークＡＢＣを押さえ（ステップＳ４０６）、右手に把持しているワークＤをワークＡＢＣに組み付けてワークＡＢＣＤを生成する（ステップＳ４０８）。
【００９３】
動作制御部２２は、ワークＡＢＣＤをトレイ４７に載置し（ステップＳ３１２）、ステップＳ４００に戻る。
【００９４】
本実施の形態によれば、作業者の作業効率が低下した場合に、作業者の前工程を行うロボットであるロボットＡが作業者の作業を補うことで、ラインの生産効率の低下を防ぐことができる。
【００９５】
特に、本実施の形態では、作業者の前工程を行うロボットが作業者の作業を補うことに特徴がある。本実施の形態のように、一連の作業をロボットと作業者が同一生産ライン上で作業している場合、作業者６０の作業効率が下がると、ワークＡＢの置き場であるトレイ４３Ａに、ロボットＡ１０が組み立てたワークＡＢを置くことが出来なくなる。したがって、ロボットＡ１０は、トレイ４３Ａに空きができるまで、待ち続けなければならない。さらに、ワークＡＢＣの置き場であるトレイ４５Ａに作業者６０が組み立てたワークＡＢＣが供給されなくなるので、ロボットＢ２０は、トレイ４５ＡにワークＡＢＣが供給されるまで、待ち続けなければならない。このように、一連の作業をロボットと作業者が同一生産ライン上で作業している場合には、このラインの生産効率は、結果的に作業者の作業効率に左右されることになる。
【００９６】
このような場合に、作業者６０の後工程を行うロボットが作業者６０の作業を補ったとしても、ライン全体のスループットを増やすことはできない。また、作業者６０の作業が滞ると、ワークＡＢの置き場がなくなり、ロボットＡ１０の仕事がなくなってしまう。それに対し、本実施の形態では、ロボットＡ１０が作業者６０の作業を補うため、ロボットＡ１０の仕事を作り、かつライン全体のスループットを増やすことができる。
【００９７】
また、本実施の形態では、ワークＡＢを置く領域がない場合に、一定時間待ってから、それでもワークＡＢを置く領域がない場合に、ロボットＡ１０が作業者の作業を補うようにしている。ワークＡＢを置く領域がない場合に、すぐロボットＡ１０が作業者６０の作業を補うようにすると、ロボットＡ１０の処理が頻繁に切り替えられることとなり、ロボットの作業が安定しない。それに対し、本実施の形態では、ロボットＡ１０の作業の切り替え回数を減らすことができ、処理を安定させることができる。
【００９８】
さらに、本実施の形態では、ワークＡＢを置く空き領域に基づいて作業者の作業効率の低下を判断するため、作業者の作業効率が低下したことを客観的に判断することができる。
【００９９】
なお、本実施の形態では、ロボットＡ１０が作業者６０の作業を補う場合に、ロボットＡ１０が作業者６０の作業を全て行うようにしたが、ロボットＡ１０が作業者６０の作業の一部を行うようにしてもよい。この場合には、教示部５０１ｃが、作業者６０の作業効率が低下した場合にロボットＡ１０が補う作業として、記憶部５０２に記憶された作業者６０が行う作業の一部の作業をロボットＡ１０に教示するようにすればよい。
【０１００】
また、本実施の形態では、作業者６０の作業効率が低下した場合にロボットＡ１０が作業者６０の作業を補うだけであったが、ロボットＡ１０が作業者６０の作業を補うと共に、作業者６０に作業効率が低下していることを通知するようにしてもよい。通知は、音声、警告灯の表示等の様々な方法が考えられる。警告を通知することより、作業者６０に作業効率の低下を知らせることができる。
【０１０１】
また、本実施の形態では、作業者６０の作業効率が低下した場合に、ロボットＡ１０は、自分が組み立てたワークＡＢＣを、トレイ４５Ａ、すなわち作業者６０が組み立てたワークＡＢＣと同じ場所に載置したが、ロボットＡ１０が組み立てたワークＡＢＣと、作業者６０が組み立てたワークＡＢＣとの置き場所を変えてもよい。例えば、ロボットＡ１０は、自分が組み立てたワークＡＢＣを道具置き場４４Ｂに置いてもよい。これにより、ロボットＡ１０がワークＡＢＣを載置する作業が容易となる。
【０１０２】
この場合には、作業決定部５０１ｂは、撮影部、重量計等を介して道具置き場４４ＢにワークＡＢＣがあることを検出して動作制御部２２に出力し、動作制御部２２は、道具置き場４４ＢにワークＡＢＣがあることが検出された場合には道具置き場４４Ｂに載置されたワークＡＢＣに対してワークＤを組み込む作業を行うようにすればよい。
【０１０３】
本実施の形態では、トレイ４３Ａの空き領域に基づいて作業者６０の作業効率の低下を検出したが、ロボットＢ２０がワークＤを組み付けるもととなるワークＡＢＣがトレイ４５Ａに無い等により、ロボットＢ２０が作業者６０の作業効率の低下を検出することもできる。例えば、ロボットＢ２０に設けられた撮影部（図示せず）がトレイ４５Ａを撮影し、動作制御部２２が撮影された画像を解析することにより、ワークＡＢＣの有無、すなわち作業者６０の作業効率の低下を検出可能である。ロボットＢ２０が作業者６０の作業効率の低下を検出した場合には、動作制御部２２が主制御部５０１に作業効率低下を示す情報を出力し、これを受け付けた作業決定部５０１ｂがロボットＡ１０の作業を決定するようにすればよい。
【０１０４】
また、本実施の形態では、トレイ４３Ａの画像を定期的に解析してワークＡＢを載置する空き領域を認識し、これに基づいて作業者６０の作業効率の低下を検出したが、画像に基づいて作業者６０の作業効率の低下を検出する方法はこれに限られない。例えば、トレイ４３Ａを常時撮影し、かつ撮影した画像を常時解析し、ある時間帯のトレイ４３Ａの空き領域の平均値が閾値以下の場合に、作業者６０の作業効率が低下したことを検出してもよい。
【０１０５】
また、本実施の形態では、トレイ４３Ａの画像を定期的に解析して作業者６０の作業効率の低下を検出したが、トレイ４３Ａの画像に限らず、トレイ４５Ａの画像に基づいて作業者６０の作業効率の低下を検出することもできる。例えば、トレイ４５Ａを常時撮影し、かつ撮影した画像を常時解析し、トレイ４５ＡからワークＡＢＣがある時間の間無くなった場合に、作業者６０の作業効率の低下を検出してもよい。また、例えば、トレイ４３の画像を定期的又は常時撮影し、トレイ４３に載置されたワークＣが一定時間内に無くならない場合に、作業者６０の作業効率の低下を検出してもよい。
【０１０６】
また、本実施の形態では、ロボットがロボットＡ１０及びロボットＢ２０の２台の場合を例に説明したが、ロボットは３台以上でもよい。
【０１０７】
＜第１の実施の形態の変形例＞
本発明の第１の実施の形態では、トレイ４３ＡにワークＡＢを載置するための空き領域があるか否かを撮影部３０が撮影した画像に基づいて判断し、これに基づいて作業者６０の作業効率の低下を検出したが、トレイ４３ＡにワークＡＢを載置するための空き領域があるか否かを判断する方法はこれに限られない。
【０１０８】
例えば、トレイ４３Ａの重さを測定することにより、トレイ４３ＡにワークＡＢを載置するための空き領域があるか否かを判断してもよい。図８に示すように、生産システム１Ａでは、トレイ４３Ａに重量計７０を設け、重量計７０で測定したトレイ４３Ａの重量が閾値以上か否かに基づいて、トレイ４３ＡにワークＡＢを載置するための空き領域があるか否かを判断してもよい。
【０１０９】
重量計７０での測定は、第１の実施の形態と同様に、定期的に行ってもよいし、常時測定していてもよい。常時測定する場合には、ある時間帯の平均重量が、閾値以上だった場合には作業者６０の作業効率が低下していると判断すればよい。
【０１１０】
＜第２の実施の形態＞
本発明の第１の実施の形態は、トレイ４３ＡにワークＡＢＣを載置するための空き領域があるか否かを撮影部３０が撮影した画像に基づいて判断し、これに基づいて作業者６０の作業効率の低下を検出したが、ロボットＡ１０の処理を異ならせる基準はこれに限られない。
【０１１１】
本発明の第２の実施の形態は、作業効率が下がった時に作業者が救援を求める形態である。以下、第２の実施の形態の生産システム２について説明する。なお、第１の実施の形態と同一の部分については、同一の符号を付し、説明を省略する。
【０１１２】
図９は、生産システム２の構成の一例を示すシステム構成図である。本実施形態における生産システム２は、ロボットＡ１０と、ロボットＢ２０と、作業台４０と、制御部５０Ａと、救援要請スイッチ８０と、を備える。
【０１１３】
救援要請スイッチ８０は、押しボタンスイッチ等の一般的なスイッチである。作業者６０等によりスイッチが押下されると、押下されたことを示す信号を制御部５０Ａに出力される。
【０１１４】
図１０は、生産システム２の機能ブロック図である。制御部５０Ａは、主として、主制御部５０１Ａと、記憶部５０２と、スイッチ検出部５０４とを備える。また、制御部５０Ａは、有線又は無線によりロボットＡ１０及びロボットＢ２０と通信可能に接続されている。
【０１１５】
主制御部５０１Ａは、他の各部（５０２、５０４）を統括的に制御する。また、主制御部５０１Ａは、作業効率低下検出部５０１ｄと、作業決定部５０１ｂと、教示部５０１ｃとを備える。
【０１１６】
作業効率低下検出部５０１ｄは、救援要請スイッチ８０が押下されたことを示す信号がスイッチ検出部５０４を介して入力された場合に、作業者６０の作業効率が低下したことを検出する。
【０１１７】
図１１は、生産システム２のロボットＡ１０の作業に関する処理の流れを示すフローチャートである。この処理は、例えば、図示しないボタン等を介して作業開始指示が入力されることにより開始される。また、処理の最初には、メモリー５２のうちの書き込み読み込み可能なメモリーを初期状態にする。教示部５０１ｃは、作業開始指示が入力された後、図１１に示す処理を開始する前に、ロボットＡ１０が本来行うべき作業と、作業者６０の作業効率が低下した場合にロボットＡ１０が補う作業を、ロボットＡ１０に教示する。
【０１１８】
作業決定部５０１ｂは、救援要請フラグを「否」に設定する（ステップＳ１０１）。また、作業決定部５０１ｂは、ロボットＡ１０が本来行うべき作業をロボットＡ１０が行うように、動作制御部１２に指示を出力する。その結果、動作制御部１２は、ステップＳ１０２〜Ｓ１１２の処理を行う。
【０１１９】
動作制御部１２は、ロボットＡ１０の右の可動部１１Ａで、トレイ４１からワークＡを取り出し（ステップＳ１０２）、ワークＡを作業領域４１Ａに置く（ステップＳ１０４）。動作制御部１２は、可動部１１Ａで、トレイ４１からワークＢを取り出す（ステップＳ１０６）。動作制御部１２は、ロボットＡ１０の左の可動部１１Ｂで、ワークＡを押さえ（ステップＳ１０８）、可動部１１ＡでワークＡにワークＢを組み付ける（ステップＳ１１０）。動作制御部１２は、組立が完了したか否かを判断する（ステップＳ１１２）。
【０１２０】
組立が完了していない場合（ステップＳ１１２でＮＯ）には、動作制御部１２は、修正処理を行う（ステップＳ１２４）。
【０１２１】
組立が完了した場合（ステップＳ１１２でＹＥＳ）には、動作制御部１２は、組立が完了したことを示す情報を主制御部５０１に出力する。作業効率低下検出部５０１ｄは、救援要請フラグが「否」のままかどうか、すなわちステップＳ１０２〜Ｓ１１２を行っている間に、救援要請スイッチ８０が押下されたことを示す信号がスイッチ検出部５０４を介して取得されていないかどうかを判断する（ステップＳ１１５）。作業効率低下検出部５０１ｄは、救援要請フラグが「否」の時は作業者６０の作業効率が低下していないことを検出し、救援要請フラグが「要」の時は作業者６０の作業効率が低下していることを検出する。作業効率低下検出部５０１ｄは、検出結果を作業決定部５０１ｂに出力する。なお、救援要請スイッチ８０が押下された場合には、救援要請フラグが「要」に設定されるが、これについては後に詳述する。
【０１２２】
救援要請フラグが「否」である場合（ステップＳ１１５でＹＥＳ）には、作業決定部５０１ｂは、ロボットＡ１０が本来行うべき作業をそのまま継続するように、ロボットＡ１０に指示を出力する。動作制御部１２は、作業決定部５０１ｂからの指示を取得すると、ステップＳ１１０で組み立てたワークＡＢを可動部１１Ｂでトレイ４３Ａの空いている領域に載置する（ステップＳ１１６）。
【０１２３】
救援要請フラグが「否」でない場合、すなわち救援要請スイッチ８０が押下されたことを示す信号がスイッチ検出部５０４を介して取得された場合（ステップＳ１１２でＮＯ）、には、作業決定部５０１ｂは、作業者６０の作業効率が低下しており、ロボットＡ１０が作業者６０の作業を補うことを決定する。作業決定部５０１ｂは、決定を動作制御部１２に出力する。これにより、図１２に示すロボットＡ１０が作業者６０の作業を補うフローへ進む。
【０１２４】
図１２は、生産システム２において、作業者６０の作業効率が低下し、ロボットＡ１０が作業者６０の作業を補う処理の流れを示すフローチャートである。図１２に示す処理は、ステップＳ１１５でＮＯである場合に行われる。
【０１２５】
動作制御部１２は、可動部１１ＢがワークＡＢを把持しているか否かを判断する（ステップＳ２００）。
【０１２６】
可動部１１ＢがワークＡＢを把持している場合（ステップＳ２００でＹＥＳ）には、動作制御部１２は、ワークＡＢを作業領域４２Ａに載置する（ステップＳ２０２）。
【０１２７】
可動部１１ＢがワークＡＢを把持していない場合（ステップＳ２００でＮＯ）には、動作制御部１２は、トレイ４３ＡからワークＡＢを可動部１１Ｂで把持し（ステップＳ２０４）、ワークＡＢを作業領域４２Ａに載置する（ステップＳ２０６）。
【０１２８】
動作制御部１２は、トレイ４３からワークＣを可動部１１Ｂで把持し（ステップＳ２０８）、ワークＣを可動部１１Ｂから可動部１１Ａに持ちかえる（ステップＳ２１０）。
【０１２９】
動作制御部１２は、作業領域４２Ａに載置されたワークＡＢを可動部１１Ｂで押さえ（ステップＳ２１２）、可動部１１Ａが把持するワークＣをワークＡＢに組み付ける（ステップＳ２１４）。
【０１３０】
動作制御部１２は、ワークＡＢＣの組立が完了したことを示す情報を主制御部５０１に出力する。作業決定部５０１ｂは、画像取得部５０３を介して撮影部３２が撮影した画像を取得し、トレイ４５ＡにワークＡＢＣを置く場所があるか否かを判断する（ステップＳ２１６）。作業効率低下検出部５０１ｄが、画像からトレイ４５Ａに空き領域があるか否かを解析する方法としては、ステップＳ１１４と同様に、すでに公知の様々な画像認識技術を用いることができる。
【０１３１】
トレイ４５ＡにワークＡＢＣを置く場所がある場合（ステップＳ２１６でＹＥＳ）には、作業決定部５０１ｂは、ワークＡＢＣをトレイ４５Ａに置くように、動作制御部１２に指示を出力する。動作制御部１２は、作業決定部５０１ｂからの指示を受け付けると、作業領域４２Ａに載置されたワークＡＢＣを可動部１１Ｂで把持し、トレイ４５Ａに載置する（ステップＳ２１８）。作業者６０の邪魔にならないように、動作制御部１２は、トレイ４５Ａの作業者６０から最も離れた位置にワークＡＢＣを載置する（図１の網掛けされたワークＡＢＣを参照）。
【０１３２】
また、作業効率低下検出部５０１ｄは、画像取得部５０３を介して撮影部３０が撮影した画像を取得し、トレイ４３ＡにワークＡＢを置く場所がＮ個以上あるか否かを判断する（ステップＳ２２０）。当該処理は、ステップＳ１１４と同様であるため、説明を省略する。
【０１３３】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ある場合（ステップＳ２２０でＹＥＳ）には、ロボットＡ１０が作業者６０の作業を補っている間に、作業者６０の作業効率が元に戻ったか、作業者６０の作業が進んだ場合である。したがって、ロボットＡ１０は、ロボットＡ１０が本来行うべき作業を行う。すなわち、作業決定部５０１ｂは、救援要請フラグを「否」に設定し（ステップＳ２２６）、ステップＳ１０２に戻る。
【０１３４】
トレイ４３ＡにワークＡＢを置く場所がＮ個以上ない場合（ステップＳ２２０でＮＯ）には、ステップＳ２００に戻る。すなわち、ロボットＡ１０は、作業者６０の作業を補う作業を継続する。
【０１３５】
トレイ４５ＡにワークＡＢＣを置く場所がない場合（ステップＳ２１６でＮＯ）には、通常の処理以外の他の処理を行うように、動作制御部１２に指示を出力する（ステップＳ２２４）。
【０１３６】
図１３は、作業者６０が図６に示す処理を行っている間に行う割り込み処理を示す図である。
【０１３７】
作業者６０により救援要請スイッチ８０が押下されると、スイッチ検出部５０４は、救援要請スイッチ８０が押下されたことを示す信号を取得し、主制御部５０１に出力する（ステップＳ３２０）。
【０１３８】
作業効率低下検出部５０１ｄは、救援要請スイッチ８０が押下されたことを示す信号を取得すると、救援要請フラグを「要」に設定する（ステップＳ３２２）。これにより、作業決定部５０１ｂがロボットＡ１０の処理を切り替えることができる。
【０１３９】
本実施の形態によれば、作業者の作業効率が低下した場合に、作業者の前工程を行うロボットであるロボットＡが作業者の作業を補うことで、生産効率の低下を防ぐことができる。また、救援要請スイッチ８０が押下された場合にすぐにロボットＡ１０の処理が切り換えられるため、生産効率の低下を確実に防ぐことができる。
【０１４０】
なお、本実施の形態では、救援要請スイッチ８０が押下された場合にすぐにロボットＡ１０の処理を切り換えたが、作業者６０の作業効率が低下していないのに誤って救援要請スイッチ８０が押下される可能性がある。誤って救援要請スイッチ８０が押下された場合にすぐにロボットＡ１０の処理を切り替えるのを抑制するため、第１の実施の形態と第２の実施の形態とを組み合わせてもよい。例えば、救援要請スイッチ８０が押下された場合であって、かつトレイ４３ＡにワークＡＢを置く場所が閾値以上ない場合に、ロボットＡ１０の処理を、ロボットＡ１０が本来行うべき作業から、ロボットＡ１０が作業者６０の作業を補う作業に切り替えるようにしてもよい。
【０１４１】
以上、本発明の生産システムについて実施形態を用いて説明したが、この生産システムで説明したロボット、制御装置、生産方法、制御プログラム、制御プログラムが格納された記録媒体として本発明を利用することができる。
【０１４２】
また、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。また、上記の実施形態及び各変形例は、いずれか二つ以上を適宜組み合わせてもよい。
【符号の説明】
【０１４３】
１、２…生産システム、１０…ロボットＡ、１１…可動部、１２…動作制御部、２０…ロボットＢ、２１…可動部、２２…動作制御部、３０…撮影部、３２…撮影部、４０…作業台、４１…トレイ、４２…作業領域、４３…トレイ、４４…作業領域、４５…トレイ、４６…作業領域、４７…トレイ、５０、５０Ａ…制御部、５１…ＣＰＵ、５２…メモリー、５３…外部記憶装置、５４…通信装置、５５…入力装置、５６…出力装置、５７…読み書き装置、６０…作業者、７０…重量計、８０…救援要請スイッチ、５０１…主制御部、５０１ａ、５０１ｄ…作業効率低下検出部、５０１ｂ…作業決定部、５０１ｃ…教示部、５０２…記憶部、５０３…画像取得部、５０４…スイッチ検出部
【図１】
2014142814.tif 000003
【図２】
2014142814.tif 000004
【図３】
2014142814.tif 000005
【図４】
2014142814.tif 000006
【図５】
2014142814.tif 000007
【図６】
2014142814.tif 000008
【図７】
2014142814.tif 000009
【図８】
2014142814.tif 000010
【図９】
2014142814.tif 000011
【図１０】
2014142814.tif 000012
【図１１】
2014142814.tif 000013
【図１２】
2014142814.tif 000014
【図１３】
2014142814.tif 000015