(57)【特許請求の範囲】
【請求項１】
第１種ロボットと、
前記第１種ロボットの駆動制御を担当する第１種コントロール部と、
第２種ロボットと、
前記第２種ロボットの駆動制御を担当する第２種コントロール部と
を備え、
前記第１種ロボットと前記第２種ロボットとが同一の対象物に協働して作業を行う場合には、前記第２種ロボットの駆動制御の担当が前記第２種コントロール部から前記第１種コントロール部に移行し、前記第１種コントロール部が前記第１種ロボットおよび前記第２種ロボットの駆動制御を担当し、
前記第２種ロボットは、複数の前記第１種ロボットの間で前記対象物を搬送し、
前記各第１種ロボットは、前記第２種ロボットが搬送してきた前記対象物に、前記第２種ロボットと協働して作業を実行し、
前記第２種コントロール部は、異なる前記第１種ロボットの間で前記対象物を搬送する前記第２種ロボットの駆動制御を担当する一方、
前記第２種ロボットが前記複数の前記第１種ロボットのうち前記対象物の搬送先である前記第１種ロボットと協働して作業を実行する場合には、前記搬送先である前記第１種ロボットの駆動制御を担当する前記第１種コントロール部に、前記第２種ロボットの駆動制御の担当が移行し、前記第１種コントロール部が前記第２種コントロール部を介さずに前記第２種ロボットを駆動制御するロボットシステム。
【請求項２】
前記第１種ロボットと前記第２種ロボットとが協働して実行する作業が完了すると、前記第２種ロボットの駆動制御の担当が前記第１種コントロール部から前記第２種コントロール部に移行する請求項１に記載のロボットシステム。
【請求項３】
前記第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち前記第１方向へ自由度を持って前記対象物を前記第１方向に搬送するとともに、前記第２方向および前記第３方向へ自由度を持たず、
前記第１種ロボットは、前記対象物に作業を行うエンドエフェクターを有し、前記第２方向および前記第３方向へ自由度を持つとともに前記第１方向へ自由度を持たず、
前記第１種コントロール部は、前記第１種ロボットと前記第２種ロボットとが協働して行う作業において、前記対象物に対して前記エンドエフェクターを前記第１方向へ相対移動させる作業を前記第２種ロボットに実行させ、前記対象物に対して前記エンドエフェクターを前記第２方向および前記第３方向へ相対移動させる作業を前記第１種ロボットに実行させる請求項１または２に記載のロボットシステム。
【請求項４】
前記第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち前記第１方向および前記第２方向へ自由度を持って前記対象物を前記第１方向および前記第２方向へ搬送するとともに、前記第３方向へ自由度を持たず、
前記第１種ロボットは、前記対象物に作業を行うエンドエフェクターを有し、前記第３方向へ自由度を持つとともに前記第１方向および前記第２方向へ自由度を持たず、
前記第１種コントロール部は、前記第１種ロボットと前記第２種ロボットとが協働して行う作業において、前記エンドエフェクターに対して前記対象物を前記第１方向および前記第２方向へ相対移動させる作業を前記第２種ロボットに実行させ、前記対象物に対して前記エンドエフェクターを前記第３方向へ相対移動させる作業を前記第１種ロボットに実行させる請求項１または２に記載のロボットシステム。
【請求項５】
前記第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち前記第１方向へ自由度を持って前記対象物を前記第１方向へ搬送し、
前記第１種ロボットは、前記第１方向、前記第２方向および前記第３方向へ自由度を持ち、
前記第１種コントロール部は、前記第１種ロボットと前記第２種ロボットとが協働して行う作業において、前記第１方向へ前記対象物を搬送させる作業を前記第２種ロボットに実行させ、前記対象物に対して前記エンドエフェクターを前記第１方向、前記第２方向および前記第３方向へ相対移動させる作業を前記第１種ロボットに実行させる請求項１または２に記載のロボットシステム。
【請求項６】
第３種ロボットと、
前記第３種ロボットの駆動制御を担当する第３種コントロール部と
をさらに備え、
前記第１種ロボット、前記第２種ロボットおよび前記第３種ロボットが協働して作業を行う場合には、前記第３種ロボットの駆動制御の担当が前記第３種コントロール部から第１種コントロール部に移行し、前記第１種コントロール部が前記第１種ロボット、前記第２種ロボットおよび前記第３種ロボットの駆動制御を担当する請求項１ないし５のいずれか一項に記載のロボットシステム。
【請求項７】
第１種ロボットの駆動制御を担当する第１種コントロール部と、
第２種ロボットの駆動制御を担当する第２種コントロール部と
を備え、
前記第１種ロボットと前記第２種ロボットとが同一の対象物に協働して作業を行う場合には、前記第２種ロボットの駆動制御の担当が前記第２種コントロール部から前記第１種コントロール部に移行し、前記第１種コントロール部が前記第１種ロボットおよび前記第２種ロボットの駆動制御を担当し、
前記第２種ロボットは、複数の前記第１種ロボットの間で前記対象物を搬送し、
前記各第１種ロボットは、前記第２種ロボットが搬送してきた前記対象物に、前記第２種ロボットと協働して作業を実行し、
前記第２種コントロール部は、異なる前記第１種ロボットの間で前記対象物を搬送する前記第２種ロボットの駆動制御を担当する一方、
前記第２種ロボットが前記複数の前記第１種ロボットのうち前記対象物の搬送先である前記第１種ロボットと協働して作業を実行する場合には、前記搬送先である前記第１種ロボットの駆動制御を担当する前記第１種コントロール部に、前記第２種ロボットの駆動制御の担当が移行し、前記第１種コントロール部が前記第２種コントロール部を介さずに前記第２種ロボットを駆動制御するロボットコントローラー。
【請求項８】
第１種コントロール部が第１種ロボットの駆動制御を担当しつつ、第２種コントロール部が第２種ロボットの駆動制御を担当する工程と、
前記第２種ロボットの駆動制御の担当を前記第２種コントロール部から前記第１種コントロール部へ移行し、前記第１種コントロール部が前記第１種ロボットおよび前記第２種ロボットの駆動制御を担当することで、前記第１種ロボットと前記第２種ロボットとに同一の対象物への作業を協働して行わせる工程と
を備え、
前記第２種ロボットは、複数の前記第１種ロボットの間で前記対象物を搬送し、
前記各第１種ロボットは、前記第２種ロボットが搬送してきた前記対象物に、前記第２種ロボットと協働して作業を実行し、
前記第２種コントロール部は、異なる前記第１種ロボットの間で前記対象物を搬送する前記第２種ロボットの駆動制御を担当する一方、
前記第２種ロボットが前記複数の前記第１種ロボットのうち前記対象物の搬送先である前記第１種ロボットと協働して作業を実行する場合には、前記搬送先である前記第１種ロボットの駆動制御を担当する前記第１種コントロール部に、前記第２種ロボットの駆動制御の担当が移行し、前記第１種コントロール部が前記第２種コントロール部を介さずに前記第２種ロボットを駆動制御するロボットコントロール方法。
【請求項９】
第１種コントロール部が第１種ロボットの駆動制御を担当しつつ、第２種コントロール部が第２種ロボットの駆動制御を担当する工程と、
前記第２種ロボットの駆動制御の担当を前記第２種コントロール部から前記第１種コントロール部へ移行し、前記第１種コントロール部が前記第１種ロボットおよび前記第２種ロボットの駆動制御を担当することで、前記第１種ロボットと前記第２種ロボットとに同一の対象物への作業を協働して行わせる工程と
をコンピューターに実行させ、
前記第２種ロボットは、複数の前記第１種ロボットの間で前記対象物を搬送し、
前記各第１種ロボットは、前記第２種ロボットが搬送してきた前記対象物に、前記第２種ロボットと協働して作業を実行し、
前記第２種コントロール部は、異なる前記第１種ロボットの間で前記対象物を搬送する前記第２種ロボットの駆動制御を担当する一方、
前記第２種ロボットが前記複数の前記第１種ロボットのうち前記対象物の搬送先である前記第１種ロボットと協働して作業を実行する場合には、前記搬送先である前記第１種ロボットの駆動制御を担当する前記第１種コントロール部に、前記第２種ロボットの駆動制御の担当が移行し、前記第１種コントロール部が前記第２種コントロール部を介さずに前記第２種ロボットを駆動制御するロボットプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、同一の対象物に協働して作業を実行する複数のロボットの駆動を制御する技術に関する。
【背景技術】
【０００２】  従来、製品の組立現場等では、モーターを内蔵するロボットが一般に用いられている。また、特許文献１の図２では、ロボットが内蔵するモーターを複数同時に制御する技術が記載されている。具体的には、複数のモーターのそれぞれに対応してコントローラーを設けて、各コントローラーを通信ケーブルで連結することで、多軸同時制御を可能としている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平９−１７４３４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  ところで、複数のロボットが設けられた環境では、多様な内容の作業に対応するために、一のロボットに独立して作業を実行させる態様と、一のロボットと他のロボットとに協調して作業を実行させる態様とを簡便に切り換えられることが好適となる。そこで、特許文献１の技術を応用することが考えられる。つまり、これらのロボットのそれぞれに対応してコントロール部を設け、各コントロール部を通信ケーブルで接続する。そして、前者のモードでは、コントロール部が対応する一のロボットを制御することで、一のロボットに他のロボットから独立して作業を実行させる。一方、後者のモードでは、各コントロール部が通信ケーブルを介した通信に基づきそれぞれのロボットの制御タイミングを調整することで、一のロボットと他のロボットとに協調して作業を実行させる。【０００５】  しかしながら、実際のところ求められる精度や速度で、各コントロール部が相互間の通信に基づきロボットの制御タイミングを的確に調整して、一のロボットと他のロボットとの作業を協調させることは必ずしも容易ではない。したがって、特許文献１の技術を応用することは必ずしも適当ではなかった。【０００６】  本発明は上記課題に鑑みてなされたものであり、一のロボットが他のロボットから独立して作業を実行する態様と、一のロボットと他のロボットとが協調して作業を実行する態様とを簡便に切り換え可能とする技術の提供を目的とする。
【課題を解決するための手段】
【０００７】  本発明に係るロボットシステムは、第１種ロボットと、第１種ロボットの駆動制御を担当する第１種コントロール部と、第２種ロボットと、第２種ロボットの駆動制御を担当する第２種コントロール部とを備え、第１種ロボットと第２種ロボットとが同一の対象物に協働して作業を行う場合には、第２種ロボットの駆動制御の担当が第２種コントロール部から第１種コントロール部に移行し、第１種コントロール部が第１種ロボットおよび第２種ロボットの駆動制御を担当する。【０００８】  本発明に係るロボットコントローラーは、第１種ロボットの駆動制御を担当する第１種コントロール部と、第２種ロボットの駆動制御を担当する第２種コントロール部とを備え、第１種ロボットと第２種ロボットとが同一の対象物に協働して作業を行う場合には、第２種ロボットの駆動制御の担当が第２種コントロール部から第１種コントロール部に移行し、第１種コントロール部が第１種ロボットおよび第２種ロボットの駆動制御を担当する。【０００９】  本発明に係るロボットコントロール方法は、第１種コントロール部が第１種ロボットの駆動制御を担当しつつ、第２種コントロール部が第２種ロボットの駆動制御を担当する工程と、第２種ロボットの駆動制御の担当を第２コントロール部から第１種コントロール部へ移行し、第１種コントロール部が第１種ロボットおよび第２種ロボットの駆動制御を担当することで、第１種ロボットと第２種ロボットとに同一の対象物への作業を協働して行わせる工程とを備える。【００１０】  本発明に係るロボットプログラムは、第１種コントロール部が第１種ロボットの駆動制御を担当しつつ、第２種コントロール部が第２種ロボットの駆動制御を担当する工程と、第２種ロボットの駆動制御の担当を第２コントロール部から第１種コントロール部へ移行し、第１種コントロール部が第１種ロボットおよび第２種ロボットの駆動制御を担当することで、第１種ロボットと第２種ロボットとに同一の対象物への作業を協働して行わせる工程とをコンピューターに実行させる。【００１１】  このように構成された本発明（ロボットシステム、ロボットコントローラー、ロボットコントロール方法、ロボットプログラム）では、第１種コントロール部が第１種ロボットの駆動制御を担当しつつ、第２種コントロール部が第２種ロボットの駆動制御を担当する。したがって、第１種コントロール部が第１種ロボットの駆動制御を実行することで、第１種ロボットに第２種ロボットから独立して作業を実行させることができる。あるいは、第２種コントロール部が第２種ロボットの駆動制御を実行することで、第２種ロボットに第１種ロボットから独立して作業を実行させることができる。また、第２種ロボットの駆動制御の担当を第２コントロール部から第１種コントロール部へ移行し、第１種コントロール部が第１種ロボットおよび第２種ロボットの駆動制御を担当することで、第１種ロボットと第２種ロボットとに同一の対象物への作業を協働して行わせることができる。つまり、第２種ロボットの駆動制御の担当を第２コントロール部から第１コントロール部へ切り換えることで、第１種ロボットと第２種ロボットとに協働して作業を実行させることができる。こうして、一��ロボットが他のロボットから独立して作業を実行する態様と、一のロボットと他のロボットとが協調して作業を実行する態様とを簡便に切り換え可能となっている。【００１２】  また、第１種ロボットと第２種ロボットとが協働して実行する作業が完了すると、第２種ロボットの駆動制御の担当が第１種コントロール部から第２種コントロール部に移行するように、ロボットシステムを構成しても良い。これによって、第１種ロボットと第２種ロボットとが協働して実行する作業が完了すると、第２種コントロール部が第２種ロボットの制御を担当して、第２種ロボットに第１種ロボットから独立して作業を実行させることができる。【００１３】  また、第２種ロボットは、複数の第１種ロボットの間で対象物を搬送し、各第１種ロボットは、第２種ロボットが搬送してきた対象物に、第２種ロボットと協働して作業を実行し、第２種コントロール部は、異なる第１種ロボットの間で対象物を搬送する第２種ロボットの駆動制御を担当する一方、第２種ロボットが複数の第１種ロボットのうち対象物の搬送先である第１種ロボットと協働して作業を実行する場合には、搬送先である第１種ロボットの駆動制御を担当する第１種コントロール部に、第２種ロボットの駆動制御の担当が移行するように、ロボットシステムを構成しても良い。【００１４】  かかる構成では、第２種ロボットが複数の第１種ロボットの間で対象物を搬送し、各第１種ロボットは第２種ロボットが搬送してきた対象物に作業を実行する。こうして、複数の第１種ロボットを用いた流れ作業によって、対象物に効率的に作業を実行できる。また、各第１種ロボットは、第２種ロボットが搬送してきた対象物に第２種ロボットと協働して作業を実行する。このように第１種ロボットと第２種ロボットとを協働させることで、作業の実行にあたり第２種ロボットの自由度を有効活用できる。【００１５】  また、第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち第１方向へ自由度を持って対象物を第１方向に搬送するとともに、第２方向および第３方向へ自由度を持たず、第１種ロボットは、対象物に作業を行うエンドエフェクターを有し、第２方向および第３方向へ自由度を持つとともに第１方向へ自由度を持たず、第１種コントロール部は、第１種ロボットと第２種ロボットとが協働して行う作業において、対象物に対してエンドエフェクターを第１方向へ相対移動させる作業を第２種ロボットに実行させ、対象物に対してエンドエフェクターを第２方向および第３方向へ相対移動させる作業を第１種ロボットに実行させるように、ロボットシステムを構成しても良い。【００１６】  かかる構成では、第１種ロボットのエンドエフェクターを対象物に対して相対移動させるにあたり、その搬送方向である第１方向に自由度を持つ第２種ロボットが第１方向への相対移動を分担し、第２方向および第３方向に自由度を持つ第１種ロボットが第２方向および第３方向への相対移動を分担する。こうして、第１種ロボットと第２種ロボットとで役割を分担しつつこれらに協働して作業を実行させることで、第１種ロボットおよび第２種ロボットそれぞれが持つ自由度（換言すれば軸数）を最小限に抑えることができ、構成の簡素化を図���ことができる。【００１７】  また、第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち第１方向および第２方向へ自由度を持って対象物を第１方向および第２方向へ搬送するとともに、第３方向へ自由度を持たず、第１種ロボットは、対象物に作業を行うエンドエフェクターを有し、第３方向へ自由度を持つとともに第１方向および第２方向へ自由度を持たず、第１種コントロール部は、第１種ロボットと第２種ロボットとが協働して行う作業において、エンドエフェクターに対して対象物を第１方向および第２方向へ相対移動させる作業を第２種ロボットに実行させ、対象物に対してエンドエフェクターを第３方向へ相対移動させる作業を第１種ロボットに実行させるように、ロボットシステムを構成しても良い。【００１８】  かかる構成では、第１種ロボットのエンドエフェクターを対象物に対して相対移動させるにあたり、その搬送方向である第１方向および第２方向に自由度を持つ第２種ロボットが第１方向および第２方向への相対移動を分担し、第３方向に自由度を持つ第１種ロボットが第３方向への相対移動を分担する。こうして、第１種ロボットと第２種ロボットとで役割を分担しつつこれらに協働して作業を実行させることで、第１種ロボットおよび第２種ロボットそれぞれが持つ自由度（換言すれば軸数）を最小限に抑えることができ、構成の簡素化を図ることができる。【００１９】  また、第２種ロボットは、互いに直交する第１方向、第２方向および第３方向のうち第１方向へ自由度を持って対象物を前記第１方向へ搬送し、第１種ロボットは、第１方向、第２方向および第３方向へ自由度を持ち、第１種コントロール部は、第１種ロボットと第２種ロボットとが協働して行う作業において、第１方向へ対象物を搬送させる作業を第２種ロボットに実行させ、対象物に対してエンドエフェクターを第１方向、第２方向および第３方向へ相対移動させる作業を第１種ロボットに実行させるように、ロボットシステムを構成しても良い。【００２０】  かかる構成では、第１種ロボットと第２種ロボットとが協働して行う作業において、第１方向へ対象物を搬送させる作業を第２種ロボットに実行させ、対象物に対してエンドエフェクターを第１方向、第２方向および第３方向へ相対移動させる作業を第１種ロボットに実行させる。したがって、対象物への作業中においても対象物が第１方向へ継続して搬送されるため、対象物の搬送を速やかに行って、タクトタイムの短縮化を図るのに有利となる。【００２１】  また、第３種ロボットと、第３種ロボットの駆動制御を担当する第３種コントロール部とをさらに備え、第１種ロボット、第２種ロボットおよび第３種ロボットが協働して作業を行う場合には、第３種ロボットの駆動制御の担当が第３種コントロール部から第１種コントロール部に移行し、第１種コントロール部が第１種ロボット、第２種ロボットおよび第３種ロボットの駆動制御を担当するように、ロボットシステムを構成しても良い。このように第３種ロボットをさらに備える場合には、第３種ロボットの駆動制御の担当を第３コントロール部から第１コントロール部へ切り換えることで、第１種ロボット、第２種ロボットおよび第３種ロボットに協働して作業を実行させることができる。
【発明の効果】
【００２２】  本発明によれば、一のロボットが他のロボットから独立して作業を実行する態様と、一のロボットと他のロボットとが協調して作業を実行する態様とを簡便に切り換え可能となる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１実施形態に係るロボットシステムの構成を模式的に示す図。
【図２】図１のロボットシステムが備える電気的構成を示すブロック図。
【図３】本発明の第２実施形態に係るロボットシステムの構成を模式的に示す図。
【図４】図３のロボットシステムが備える電気的構成を示すブロック図。
【図５】本発明の第３実施形態に係るロボットシステムの構成を模式的に示す図。
【図６】図５のロボットシステムが備える電気的構成を示すブロック図。
【図７】本発明の第４実施形態に係るロボットシステムの構成を模式的に示す図。
【図８】図７のロボットシステムが備える電気的構成を示すブロック図。
【発明を実施するための形態】
【００２４】  図１は本発明の第１実施形態に係るロボットシステムの構成を模式的に示す図であり、図２は図１のロボットシステムが備える電気的構成を示すブロック図である。なお、図１および図２では、ロボットシステム１Ａで実行される互いに異なる工程Ｓ１１、Ｓ１２、Ｓ１３が例示されている。また、図１および以下の図面では、ＸＹ平面を水平面とし、Ｚ方向を鉛直方向とするＸＹＺ直交座標系を適宜示す。
【００２５】  このロボットシステム１Ａは、互いに同一の構成を具備する４台のＹＺロボット２を備える。なお、図１および図２では、４台のＹＺロボット２を区別するために、異なる符号２Ａ〜２Ｄが併記されている。各ＹＺロボット２は、エンドエフェクター２１を有し、Ｙ方向とＺ方向に自由度を持つ。つまり、ＹＺロボット２は、Ｙ方向およびＺ方向にそれぞれ対応して２軸のモーターを内蔵し、これらのモーターによってエンドエフェクター２１をＹ方向およびＺ方向それぞれに移動させることができる。なお、エンドエフェクター２１の具体的な種類は種々想定される。例えば、対象物Ｗに対して描画を行う場合には、エンドエフェクター２１は、ペンあるいは塗布用のノズルとなる。また、対象物Ｗに対して部品の実装を行う場合には、エンドエフェクター２１は部品を吸着するノズルあるいは部品を把持する把持装置となる。
【００２６】  さらに、ロボットシステム１Ａは１台のＸロボット３を備える。このＸロボット３は、対象物Ｗを支持するテーブル３１を有し、Ｘ方向に自由度を有する。具体的には、ロボットシステム１Ａでは、Ｘ方向に平行に設けられたネジを内蔵するリニアガイド３０が配置され、Ｘロボット３のテーブル３１に取り付けられたナットがリニアガイド３０のネジに螺合してボールネジを構成する。そして、Ｘロボット３は内蔵するモーター（例えば中空モーター）でナットを回転させることで、テーブル３１を伴って一体的にＸ方向へ移動する。こうして、Ｘロボット３は対象物Ｗを支持するテーブル３１をＸ方向に移動させることができる。なお、このＸロボット３はリニアガイド３０に対して着脱自在であり、Ｘロボット３は、Ｘ方向の一端からリニアガイド３０に入り込んだり、Ｘ方向の他端からリニアガイド３０から抜け出したりできる。なお、テーブル３１をＸ方向へ移動させるための機構は、上述した機構に限定されるものではなく、ナットおよびネジを用いない例えばリニアモーターを使用しても良い。この場合、リニアモーターの可動子をテーブル３１に、リニアモーターの固定子をリニアガイド３０に、それぞれ取り付けても良い。
【００２７】  ４台のＹＺロボット２はリニアガイド３０に隣接してＸ方向に沿って並び、Ｘロボット３はテーブル３１をＸ方向へ移動させることで、４台のＹＺロボット２の間でＸ方向に対象物Ｗを搬送する。そして、各ＹＺロボット２は、搬送されてきた対象物Ｗに作業を行う。この際、ＹＺロボット２とＸロボット３とが協働して対象物Ｗに対する作業を実行する。例えば、対象物Ｗに円形のマークを描く描画作業を実行する場合、ＹＺロボット２はエンドエフェクター２１をＺ方向に下降させてＸロボット３のテーブル３１上の対象物Ｗに接触させる。続いて、ＹＺロボット２がエンドエフェクター２１をＹ方向に単振動させつつ、Ｘロボット３がエンドエフェクター２１の単振動と逆位相でテーブル３１をＸ方向へ単振動させる。これによって、対象物Ｗに円形のマークが描かれる。この描画作業が完了すると、ＹＺロボット２がエンドエフェクター２１をＺ方向に上昇させるとともに、Ｘロボット３がテーブル３１をＸ方向へ移動させて、対象物Ｗを別のＹＺロボット２にまで搬送する。そして、このＹＺロボット２がＸロボット３と協働して新たな作業を対象物Ｗに実行する。
【００２８】  かかるロボットシステム１Ａは、各ＹＺロボット２およびＸロボット３の駆動を制御するためのロボットコントローラー８を備える。そして、ロボットシステム１Ａに実行させる作業を規定したロボットプログラムＰをロボットコントローラー８が実行することで、例えば上述の作業が対象物Ｗに実行される。なお、ロボットプログラムＰは、ユーザーによって作成されて、ロボットコントローラー８に予めロードされる。
【００２９】  このロボットコントローラー８はＣＰＵ(Central Processing Unit)やメモリーを搭載したコンピューターである。そして、ロボットコントローラー８は搭載されたメモリーに格納されたロボットプログラムＰを実行することで、作業コントロールモジュール８２および搬送コントロールモジュール８３を仮想的に構築する。作業コントロールモジュール８２はＹＺロボット２毎に生成され、４台のＹＺロボット２に一対一で対応して４個の作業コントロールモジュール８２が生成される。そして、各作業コントロールモジュール８２は対応するＹＺロボット２のモーターの駆動制御を担当する。また、搬送コントロールモジュール８３はＸロボット３のモーターの駆動制御を担当する。
【００３０】  なお、図２では、４個の作業コントロールモジュール８２を区別するために、異なる符号８２Ａ〜８２Ｄが併記されている。また、図２は、各コントロールモジュール８２、８３それぞれが結線されたロボット２、３の駆動制御を担当することを示す。
【００３１】  このロボットシステム１Ａは、ロボットプログラムＰの内容に応じて各種の動作を実行可能である。ここでは、４台のＹＺロボット２に対して左から順にＸロボット３が対象物Ｗを搬送しつつ、各ＹＺロボット２とＸロボット３とが協働して対象物Ｗに作業を実行する例について説明する。
【００３２】  ステップＳ１１では、ＹＺロボット２ＡにＸロボット３が対象物Ｗを搬送した状態にある。この状態に際しては、作業コントロールモジュール８２ＡがＹＺロボット２ＡとＸロボット３とのドッキングを要求する。これによって、ＹＺロボット２ＡとＸロボット３とが仮想的にドッキングして１台のＸＹＺロボットとして機能する。具体的には、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８２Ａに移行し、作業コントロールモジュール８２ＡがＹＺロボット２Ａの駆動制御とＸロボット３の駆動制御とを担当する（図２のステップＳ１１）。そして、作業コントロールモジュール８２ＡはロボットプログラムＰに規定された規定作業を実行するためのモーションをＹＺロボット２ＡおよびＸロボット３それぞれにつき演算により作成する。そして、作業コントロールモジュール８２Ａが、ＹＺロボット２Ａのモーションの実行とＸロボット３のモーションの実行を同期させる。これによって、ＹＺロボット２ＡおよびＸロボット３が協働して、対象物Ｗに対して規定作業を実行する。
【００３３】  ＹＺロボット２ＡおよびＸロボット３がこの規定作業を完了すると、作業コントロールモジュール８２Ａは、ＹＺロボット２ＡからのＸロボット３の離脱を要求する。これによって、Ｘロボット３とＹＺロボット２Ａとが離脱して、それぞれ独立して作業可能となる。具体的には、図２のステップＳ１２に示すように、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を作業コントロールモジュール８２Ａから搬送コントロールモジュール８３に移行し、搬送コントロールモジュール８３がＸロボット３の駆動制御を担当する。搬送コントロールモジュール８３はロボットプログラムＰに規定された搬送作業を実行するためのモーションを演算により作成する。そして、搬送コントロールモジュール８３からの指令を受けて、Ｘロボット３はそのモーションを実行することで、対象物ＷをＹＺロボット２ＡからＹＺロボット２Ｂに移動させる（図１のステップＳ１２）。このように、搬送コントロールモジュール８３は、異なるＹＺロボット２の間で対象物Ｗを搬送するＸロボット３の駆動制御を担当する。
【００３４】  対象物ＷがＹＺロボット２Ｂに移動してくると（図１のステップＳ１３）、作業コントロールモジュール８２ＢがＹＺロボット２ＢとＸロボット３とのドッキングを要求する。これによって、図２のステップＳ１３に示すように、Ｘロボット３とＹＺロボット２Ｂとが仮想的にドッキングして１台のＸＹＺロボットとして機能する。そして、上述と同様の要領で、ＹＺロボット２ＢとＸロボット３とが協働して、対象物Ｗに対して規定作業を実行する。
【００３５】  ＹＺロボット２ＢおよびＸロボット３がこの規定作業を完了すると、上述と同様の要領で、Ｘロボット３が対象物ＷをＸ方向に搬送し、ＹＺロボット２ＣおよびＹＺロボット２Ｄのそれぞれと、対象物Ｗに対する規定作業を協働して実行する。これによって、ロボットシステム１Ａでの対象物Ｗに対する全規定作業が完了する。
【００３６】  以上に説明した第１実施形態では、作業コントロールモジュール８２がＹＺロボット２の駆動制御を担当しつつ、搬送コントロールモジュール８３がＸロボット３の駆動制御を担当する。したがって、搬送コントロールモジュール８３がＸロボット３の駆動制御を実行することで、ＹＺロボット２から独立してＸロボット３に対象物Ｗの搬送作業を実行させることができる。また、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８２へ移行し、作業コントロールモジュール８２がＹＺロボット２およびＸロボット３の駆動制御を担当することができる。具体的には、作業コントロールモジュール８２は、ＹＺロボット２およびＸロボット３それぞれのモーションの実行を同期させ、ＹＺロボット２とＸロボット３とに同一の対象物Ｗへの規定作業を協働して行わせることができる。このように、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８２へ切り換えることで、ＹＺロボット２とＸロボット３とに協働して規定作業を実行させることができる。こうして、Ｘロボット３がＹＺロボット２から独立して作業を実行する態様と、Ｘロボット３とＹＺロボット２とが協調して作業を実行する態様とを簡便に切り換え可能となっている。
【００３７】  特に、通信ケーブルを介して通信上で各ロボットの同期を取るのではなく、ＣＰＵおよびメモリーにより仮想的に構築したコントロールモジュール８２、８３の間でＸロボット３の駆動制御の担当を切り換えることで、ＹＺロボット２およびＸロボット３の各モーションを同期させている。したがって、通信上の制約を受けることなく、ＹＺロボット２とＸロボット３とを同期させて、ＹＺロボット２とＸロボット３との同期を高速かつ高精度に実行することが可能となる。その結果、ロボットプログラムＰに規定される各規定作業を速やかに完了して、タクトタイム（すなわち、対象物Ｗに対する全規定作業の完了に要する時間）を短縮化できる。
【００３８】  また、ＹＺロボット２とＸロボット３とが協働して実行する規定作業が完了すると、Ｘロボット３の駆動制御の担当が作業コントロールモジュール８２から搬送コントロールモジュール８３に移行する。これによって、ＹＺロボット２から独立してＸロボット３に搬送作業を開始させることができる。
【００３９】  また、Ｘロボット３が複数のＹＺロボット２の間で対象物Ｗを搬送し、各ＹＺロボット２はＸロボット３が搬送してきた対象物Ｗに規定作業を実行する。こうして、複数のＹＺロボット２を用いた流れ作業によって、対象物Ｗに効率的に作業を実行できる。また、各ＹＺロボット２は、Ｘロボット３が搬送してきた対象物ＷにＸロボット３と協働して作業を実行する。このようにＹＺロボット２とＸロボット３とを協働させることで、規定作業の実行にあたりＸロボット３の自由度を有効活用できる。
【００４０】  つまり、ＹＺロボット２のエンドエフェクター２１を対象物Ｗに対して相対移動させるにあたり、その搬送方向であるＸ方向に自由度を持つＸロボット３がＸ方向への相対移動を分担し、Ｙ方向およびＺ方向に自由度を持つＹＺロボット２がＹ方向およびＺ方向への相対移動を分担する。こうして、ＹＺロボット２とＸロボット３とで役割を分担しつつこれらに協働して規定作業を実行させることで、ＹＺロボット２およびＸロボット３それぞれが持つ自由度（換言すれば軸数）を最小限（２軸＋１軸＝３軸）に抑えることができ、ロボットシステム１Ａの構成の簡素化が図られている。
【００４１】  図３は本発明の第２実施形態に係るロボットシステムの構成を模式的に示す図であり、図４は図３のロボットシステムが備える電気的構成を示すブロック図である。なお、図３および図４では、ロボットシステム１Ｂで実行される互いに異なる工程Ｓ２１、Ｓ２２、Ｓ２３が例示されている。以下では、上記実施形態との差異点について主に説明することとし、共通点については相当符号を付して適宜説明を省略する。ただし、上記実施形態と共通する構成を備えることで、同様の効果を奏することは言うまでも無い。
【００４２】  このロボットシステム１Ｂは、互いに同一の構成を具備する４台のＺロボット４を備える。なお、図３および図４では、４台のＺロボット４を区別するために、異なる符号４Ａ〜４Ｄが併記されている。各Ｚロボット４は、エンドエフェクター４１を有し、Ｚ方向に自由度を持つ。つまり、Ｚロボット４はＺ方向に対応して１軸のモーターを内蔵し、このモーターによってエンドエフェクター４１をＺ方向に移動させることができる。
【００４３】  さらに、ロボットシステム１Ｂは１台のＸＹロボット５を備える。このＸＹロボット５は、対象物Ｗを支持するテーブル５１を有し、Ｘ方向およびＹ方向に自由度を有する。つまり、ＸＹロボット５はＸ方向およびＹ方向にそれぞれに対応して２軸のモーターを内蔵し、これらのモーターによってテーブル５１をＸ方向およびＹ方向それぞれに移動させることができる。より具体的には、ＸＹロボット５は、Ｙ方向に設けられたＹガイド５Ｙと、Ｙガイド５Ｙの上でＸ方向に設けられたＸガイド５Ｘと、Ｘガイド５Ｘの上に設けられたテーブル５１とを有し、Ｙガイド５ＹにＹ軸モーターが内蔵されるとともに、Ｘガイド５ＸにＸ軸モーターが内蔵されている。そして、Ｘガイド５Ｘは、Ｙ軸モーターによる駆動力を受けてＹガイド５Ｙに沿ってＹ方向に移動自在であり、テーブル５１は、Ｘ軸モーターによる駆動力を受けてＸガイド５Ｘに沿ってＸ方向に移動自在である。こうして、Ｙガイド５ＹおよびＸガイド５Ｘが協働して対象物Ｗの搬送を実行する。
【００４４】  ４台のＺロボット４はＸＹロボット５のテーブル５１の可動範囲内に配置され、ＸＹロボット５はテーブル５１をＸ方向およびＹ方向に移動させることで、４台のＺロボット４の間で対象物Ｗを搬送する。そして、各Ｚロボット４は、搬送されてきた対象物Ｗに作業を行う。この際、Ｚロボット４とＸＹロボット５とが協働して対象物Ｗに対する作業を実行する。例えば、対象物Ｗに円形のマークを描く描画作業を実行する場合、Ｚロボット４はエンドエフェクター４１をＺ方向に下降させてＸＹロボット５のテーブル５１上の対象物Ｗに接触させる。続いて、ＸＹロボット５がテーブル５１に円運動させる。これによって、対象物Ｗに円形のマークが描かれる。この描画作業が完了すると、Ｚロボット４はエンドエフェクター４１をＺ方向に上昇させ、ＸＹロボット５は、テーブル５１をＸ方向あるいはＹ方向へ移動させて、対象物Ｗを別のＺロボット４にまで搬送する。そして、このＺロボット４がＸＹロボット５と協働して新たな作業を対象物Ｗに実行する。
【００４５】  また、例えば対象物Ｗに電子部品等の部品を実装する場合、あるいは対象物Ｗに塗布材料を塗布する場合、ＸＹロボット５がテーブル５１をＸ方向あるいはＹ方向へ移動させることで、対象物Ｗにおいて部品を実装する箇所、あるいは塗布材料を塗布する箇所をエンドエフェクター４１の下方に位置させる。そして、Ｚロボット４はエンドエフェクター４１をＺ方向に下降させることで、保持している部品を実装位置に実装する、あるいは塗布材料を塗布位置に塗布する。この作業が完了するとＺロボット４はエンドエフェクター４１をＺ方向に上昇させ、ＸＹロボット５はテーブル５１をＸ方向あるいはＹ方向に移動させて、対象物Ｗを別のＺロボット４にまで搬送する。そして、このＺロボット４がＸＹロボット５と協働して新たな作業を対象物Ｗに実行する。
【００４６】  また、Ｚロボット４およびＸＹロボット５の駆動を制御するために、ロボットコントローラー８はロボットプログラムＰを実行することで、作業コントロールモジュール８４および搬送コントロールモジュール８５を仮想的に構築する。作業コントロールモジュール８４はＺロボット４毎に生成され、４台のＺロボット４に一対一で対応して４個の作業コントロールモジュール８４が生成される。そして、各作業コントロールモジュール８４はＺロボット４のモーターの駆動制御を担当する。また、搬送コントロールモジュール８５はＸＹロボット５のモーターの駆動制御を担当する。なお、図４では、４個の作業コントロールモジュール８４を区別するために、異なる符号８４Ａ〜８４Ｄが併記されている。
【００４７】  このロボットシステム１Ｂは、ロボットプログラムＰの内容に応じて各種の動作を実行可能である。ここでは、４台のＺロボット４に対して左上から順に時計回りでＸＹロボット５が対象物Ｗを搬送しつつ、各Ｚロボット４とＸＹロボット５とが協働して対象物Ｗに作業を実行する例について説明する。
【００４８】  ステップＳ２１では、Ｚロボット４ＡにＸＹロボット５が対象物Ｗを搬送した状態にある。この状態に際しては、作業コントロールモジュール８４ＡがＺロボット４ＡとＸＹロボット５とのドッキングを要求する。これによって、Ｚロボット４ＡとＸＹロボット５とが仮想的にドッキングして１台のＸＹＺロボットとして機能する。具体的には、ロボットコントローラー８は、ＸＹロボット５の駆動制御の担当を搬送コントロールモジュール８５から作業コントロールモジュール８４Ａに移行し、作業コントロールモジュール８４ＡがＺロボット４Ａの駆動制御とＸＹロボット５の駆動制御とを担当する（図４のステップＳ２１）。そして、作業コントロールモジュール８４Ａは、ロボットプログラムＰに規定された規定作業を実行するためのモーションをＺロボット４ＡおよびＸＹロボット５それぞれにつき演算により作成する。そして、作業コントロールモジュール８４Ａは、Ｚロボット４のモーションの実行と、ＸＹロボット５のモーションの実行とを同期させる。これによって、Ｚロボット４ＡおよびＸＹロボット５が協働して、対象物Ｗに対して規定作業を実行する。
【００４９】  Ｚロボット４ＡおよびＸＹロボット５がこの規定作業を完了すると、作業コントロールモジュール８４Ａは、Ｚロボット４ＡからのＸＹロボット５の離脱を要求する。これによって、Ｚロボット４ＡとＸＹロボット５とが離脱して、それぞれ独立して作業可能となる。具体的には、図４のステップＳ２２に示すように、ロボットコントローラー８は、ＸＹロボット５の駆動制御の担当を作業コントロールモジュール８４Ａから搬送コントロールモジュール８５に移行し、搬送コントロールモジュール８５がＸＹロボット５の駆動制御を担当する。搬送コントロールモジュール８５はロボットプログラムＰに規定された搬送作業を実行するためのモーションを演算により作成する。そして、搬送コントロールモジュール８５からの指令を受けて、ＸＹロボット５はそのモーションを実行することで、対象物ＷをＺロボット４ＡからＺロボット４Ｂに移動させる（図１のステップＳ２２）。このように、搬送コントロールモジュール８５は、異なるＺロボット４の間で対象物Ｗを搬送するＸＹロボット５の駆動制御を担当する。
【００５０】  対象物ＷがＺロボット４Ｂに移動してくると（図３のステップＳ２３）、作業コントロールモジュール８４ＢがＺロボット４ＢとＸＹロボット５とのドッキングを要求する。これによって、図４のステップＳ２３に示すように、ＸＹロボット５とＺロボット４Ｂとが仮想的にドッキングして１台のＸＹＺロボットとして機能する。そして、上述と同様の要領で、Ｚロボット４ＢとＸＹロボット５とが協働して、対象物Ｗに対して規定作業を実行する。
【００５１】  Ｚロボット４ＢおよびＸＹロボット５がこの規定作業を完了すると、上述と同様の要領で、ＸＹロボット５が対象物Ｗを搬送し、Ｚロボット４ＣおよびＺロボット４Ｄのそれぞれと、対象物Ｗに対する規定作業を協働して実行する。これによって、ロボットシステム１Ｂでの対象物Ｗに対する全規定作業が完了する。
【００５２】  以上に説明した第２実施形態では、ＸＹロボット５の駆動制御の担当を搬送コントロールモジュール８５から作業コントロールモジュール８４へ切り換えることで、Ｚロボット４とＸＹロボット５とに協働して規定作業を実行させることができる。こうして、ＸＹロボット５がＺロボット４から独立して作業を実行する態様と、ＸＹロボット５とＺロボット４とが協調して作業を実行する態様とを簡便に切り換え可能となっている。
【００５３】  また、Ｚロボット４とＸＹロボット５とが協働して実行する規定作業が完了すると、ＸＹロボット５の駆動制御の担当が作業コントロールモジュール８４から搬送コントロールモジュール８５に移行する。これによって、Ｚロボット４から独立してＸＹロボット５に搬送作業を開始させることができる。
【００５４】  また、ＸＹロボット５が複数のＺロボット４の間で対象物Ｗを搬送し、各Ｚロボット４はＸＹロボット５が搬送してきた対象物Ｗに規定作業を実行する。こうして、複数のＺロボット４を用いた流れ作業によって、対象物Ｗに効率的に作業を実行できる。また、各Ｚロボット４は、ＸＹロボット５が搬送してきた対象物ＷにＸＹロボット５と協働して作業を実行する。このようにＺロボット４とＸＹロボット５とを協働させることで、規定作業の実行にあたりＸＹロボット５の自由度を有効活用できる。
【００５５】  つまり、Ｚロボット４のエンドエフェクター４１を対象物Ｗに対して相対移動させるにあたり、その搬送方向であるＸ方向およびＹ方向に自由度を持つＸＹロボット５がＸ方向およびＹ方向への相対移動を分担し、Ｚ方向に自由度を持つＺロボット４がＺ方向への相対移動を分担する。こうして、Ｚロボット４とＸＹロボット５とで役割を分担しつつこれらに協働して規定作業を実行させることで、Ｚロボット４およびＸＹロボット５それぞれが持つ自由度（換言すれば軸数）を最小限（１軸＋２軸＝３軸）に抑えることができ、ロボットシステム１Ｂの構成の簡素化が図られている。
【００５６】  図５は本発明の第３実施形態に係るロボットシステムの構成を模式的に示す図であり、図６は図５のロボットシステムが備える電気的構成を示すブロック図である。なお、図５および図６では、ロボットシステム１Ｃで実行される互いに異なる工程Ｓ３１、Ｓ３２、Ｓ３３が例示されている。以下では、上記実施形態との差異点について主に説明することとし、共通点については相当符号を付して適宜説明を省略する。ただし、上記実施形態と共通する構成を備えることで、同様の効果を奏することは言うまでも無い。
【００５７】  このロボットシステム１Ｃは、互いに同一の構成を具備する４台のスカラロボット６を備える。なお、図５および図６では、４台のスカラロボット６を区別するために、異なる符号６Ａ〜６Ｄが併記されている。各スカラロボット６は、エンドエフェクター６１を有し、Ｘ方向、Ｙ方向およびＺ方向に自由度を持つ。具体的には、スカラロボット６は、Ｚ方向に延設された基軸６２と、基軸６２の上端に取り付けられた回転関節６３と、回転関節６３から水平方向に延設されたアーム６４と、アーム６４の先端に取り付けられた回転関節６５と、回転関節６５から水平方向に延設されたアーム６６とを備え、アーム６６の先端にエンドエフェクター６１が取り付けられている。回転関節６３、６５はそれぞれＺ方向に平行な回転軸を中心に回転自在であるとともに、エンドエフェクター６１はＺ方向に昇降自在である。そして、回転関節６３を回転させるＲ３モーターが基軸６２に内蔵され、回転関節６５を回転させるＲ５モーターがアーム６４に内蔵され、エンドエフェクター６１を昇降させるＺモーターがアーム６６に内蔵されている。したがって、Ｒ３モーターにより回転関節６３を回転させつつ、Ｒ５モーターにより回転関節６５を回転させることでエンドエフェクター６１をＸ方向およびＹ方向に移動させることができる。さらに、Ｚモーターによりエンドエフェクター６１をＺ方向に移動させることができる。つまり、スカラロボット６は、Ｘ方向、Ｙ方向およびＺ方向のそれぞれにエンドエフェクター６１を移動させることができる。なお、エンドエフェクター６１は、アーム６６に内蔵されたＲ６１モーターによる駆動力を受けて回転（自転）することも可能である。さらに、ロボットシステム１Ｃは、これら４台のスカラロボット６の他に、第１実施形態で説明した構成を有するＸロボット３を備える。
【００５８】  ４台のスカラロボット６はリニアガイド３０に隣接してＸ方向に沿って並び、Ｘロボット３はテーブル３１をＸ方向へ移動させることで、４台のスカラロボット６の間でＸ方向に対象物Ｗを搬送する。そして、各スカラロボット６は、搬送されてきた対象物Ｗに作業を行う。この際、スカラロボット６とＸロボット３とが協働して対象物Ｗに対する作業を実行する。例えば、対象物Ｗに円形のマークを描く描画作業を実行する場合は次の通りである。
【００５９】  Ｘロボット３は、スカラロボット６Ｂへ向けてＸ方向へのテーブル３１の移動を継続する。これに対して、スカラロボット６は、エンドエフェクター６１をＺ方向に下降させてエンドエフェクター６１を対象物Ｗに接触させた後、テーブル３１の直線運動に円運動を合成した運動をＸＹ面内でエンドエフェクター６１に実行させる。これによって、Ｘ方向に移動中の対象物Ｗに円形のマークが描かれる。この描画作業が完了すると、スカラロボット６はエンドエフェクター６１をＺ方向に上昇させる一方、Ｘロボット３はテーブル３１のＸ方向への移動を継続して、対象物Ｗを別のスカラロボット６にまで搬送する。そして、このスカラロボット６がＸロボット３と協働して新たな作業を対象物Ｗに実行する。この際、Ｘロボット３は、スカラロボット６Ａと協働して作業を実行している間のテーブル３１の移動速度よりも速い速度で、スカラロボット６Ａからスカラロボット６Ｂにテーブル３１を移動させる。これによって、スカラロボット６ＢとＸロボット３とによる作業を迅速に開始することができる。
【００６０】  また、各スカラロボット６およびＸロボット３の駆動を制御するために、ロボットコントローラー８はロボットプログラムＰを実行することで、作業コントロールモジュール８６および搬送コントロールモジュール８３を仮想的に構築する。作業コントロールモジュール８６はスカラロボット６毎に生成され、４台のスカラロボット６に一対一で対応して４個の作業コントロールモジュール８６が生成される。そして、各作業コントロールモジュール８６は対応するスカラロボット６のモーターの駆動制御を担当する。また、搬送コントロールモジュール８３はＸロボット３のモーターの駆動制御を担当する。なお、図６では、４個の作業コントロールモジュール８６を区別するために、異なる符号８６Ａ〜８６Ｄが併記されている。
【００６１】  このロボットシステム１Ｃは、ロボットプログラムＰの内容に応じて各種の動作を実行可能である。ここでは、４台のスカラロボット６に対して左から順にＸロボット３が対象物Ｗを搬送しつつ、各スカラロボット６とＸロボット３とが協働して対象物Ｗに作業を実行する例について説明する。
【００６２】  ステップＳ３１では、スカラロボット６ＡにＸロボット３が対象物Ｗを搬送した状態にある。この状態に際しては、作業コントロールモジュール８６Ａがスカラロボット６ＡとＸロボット３とのドッキングを要求する。これによって、スカラロボット６ＡとＸロボット３とが仮想的にドッキングして１台のロボットとして機能する。具体的には、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８６Ａに移行し、作業コントロールモジュール８６Ａがスカラロボット６Ａの駆動制御とＸロボット３の駆動制御とを担当する（図６のステップＳ３１）。そして、作業コントロールモジュール８６ＡはロボットプログラムＰに規定された規定作業を実行するためのモーションをスカラロボット６ＡおよびＸロボット３それぞれにつき演算により作成する。
【００６３】  この規定作業は、テーブル３１をＸ方向へ継続的に移動させつつ、エンドエフェクター６１を動作させるものである。つまり、作業コントロールモジュール８６Ａは、スカラロボット６Ｂ（すなわち、搬送方向Ｘの下流側）へ向けてテーブル３１を移動させるモーションをＸロボット３について作成する。また、作業コントロールモジュール８６は、静止する対象物Ｗに対して規定作業を実行する際のエンドエフェクター６１の運動にテーブル３１の直線運動を合成したモーションをスカラロボット６Ａについて作成する。そして、作業コントロールモジュール８６Ａは、スカラロボット６Ａのモーションの実行と、Ｘロボット３のモーションの実行とを同期させる。これによって、スカラロボット６ＡおよびＸロボット３が協働して、対象物Ｗに対して規定作業を実行する。
【００６４】  スカラロボット６ＡおよびＸロボット３がこの規定作業を完了すると、作業コントロールモジュール８６Ａは、スカラロボット６ＡからのＸロボット３の離脱を要求する。これによって、Ｘロボット３とスカラロボット６Ａとが離脱して、それぞれ独立して作業可能となる。具体的には、図６のステップＳ３２に示すように、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を作業コントロールモジュール８６Ａから搬送コントロールモジュール８３に移行し、搬送コントロールモジュール８３がＸロボット３の駆動制御を担当する。搬送コントロールモジュール８３はロボットプログラムＰに規定された搬送作業を実行するためのモーションを演算により作成する。そして、搬送コントロールモジュール８３からの指令を受けて、Ｘロボット３はそのモーションを実行することで、対象物Ｗをスカラロボット６Ａからスカラロボット６Ｂに移動させる（図５のステップＳ３２）。このように、搬送コントロールモジュール８３は、異なるスカラロボット６の間で対象物Ｗを搬送するＸロボット３の駆動制御を担当する。
【００６５】  対象物Ｗがスカラロボット６Ｂに移動してくると（図５のステップＳ３３）、作業コントロールモジュール８６Ｂがスカラロボット６ＢとＸロボット３とのドッキングを要求する。これによって、図６のステップＳ３３に示すように、Ｘロボット３とスカラロボット６Ｂとが仮想的にドッキングして１台のロボットとして機能する。そして、上述と同様の要領で、スカラロボット６ＢとＸロボット３とが協働して、対象物Ｗに対して規定作業を実行する。
【００６６】  スカラロボット６ＢおよびＸロボット３がこの規定作業を完了すると、上述と同様の要領で、Ｘロボット３が対象物ＷをＸ方向に搬送し、スカラロボット６Ｃおよびスカラロボット６Ｄのそれぞれと、対象物Ｗに対する規定作業を協働して実行する。これによって、ロボットシステム１Ｃでの対象物Ｗに対する全規定作業が完了する。
【００６７】  以上に説明した第３実施形態では、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８６へ切り換えることで、スカラロボット６とＸロボット３とに協働して規定作業を実行させることができる。こうして、Ｘロボット３がスカラロボット６から独立して作業を実行する態様と、Ｘロボット３とスカラロボット６とが協調して作業を実行する態様とを簡便に切り換え可能となっている。
【００６８】  また、スカラロボット６とＸロボット３とが協働して実行する規定作業が完了すると、Ｘロボット３の駆動制御の担当が作業コントロールモジュール８６から搬送コントロールモジュール８３に移行する。これによって、スカラロボット６から独立してＸロボット３に搬送作業を実行させることができる。
【００６９】  また、スカラロボット６とＸロボット３とが協働して行う規定作業において、Ｘ方向へ対象物Ｗを搬送させる作業をＸロボット３に実行させ、対象物Ｗに対してエンドエフェクター６１をＸ方向、Ｙ方向およびＺ方向へ相対移動させる作業をスカラロボット６に実行させる。したがって、対象物Ｗへの作業中においても対象物ＷがＸ方向へ継続して搬送されるため、対象物Ｗの搬送を速やかに行って、タクトタイムの短縮化を図るのに有利となる。
【００７０】  図７は本発明の第４実施形態に係るロボットシステムの構成を模式的に示す図であり、図８は図７のロボットシステムが備える電気的構成を示すブロック図である。なお、図７および図８では、ロボットシステム１Ｄで実行される互いに異なる工程Ｓ４１、Ｓ４２、Ｓ４３が例示されている。以下では、上記実施形態との差異点について主に説明することとし、共通点については相当符号を付して適宜説明を省略する。ただし、上記実施形態と共通する構成を備えることで、同様の効果を奏することは言うまでも無い。
【００７１】  このロボットシステム１Ｄは、４台のスカラロボット６（６Ａ〜６Ｄ）と、Ｘロボット３を備える。４台のスカラロボット６はリニアガイド３０に隣接してＸ方向に沿って並び、Ｘロボット３はテーブル３１をＸ方向へ移動させることで、４台のスカラロボット６の間でＸ方向に対象物Ｗを搬送する。そして、各スカラロボット６は、搬送されてきた対象物Ｗに作業を行う。特にこの実施形態では、２台のスカラロボット６Ａ、６Ｂが対象物Ｗに対して協働して作業を実行した後に、２台のスカラロボット６Ｃ、６Ｄが対象物Ｗに対して協働して作業を実行する。ちなみに、ここの例では、スカラロボット６Ａ、６Ｃのそれぞれが本発明の「第１種ロボット」の一例として機能し、スカラロボット６Ｃ、６Ｄのそれぞれが本発明の「第３種ロボット」の一例として機能する。
【００７２】  つまり、作業コントロールモジュール８６および搬送コントロールモジュール８３を仮想的に構築する。作業コントロールモジュール８６はスカラロボット６毎に生成され、４台のスカラロボット６に一対一で対応して４個の作業コントロールモジュール８６（８６Ａ〜８６Ｄ）が生成される。そして、各作業コントロールモジュール８６は対応するスカラロボット６のモーターの駆動制御を担当する。また、搬送コントロールモジュール８３はＸロボット３のモーターの駆動制御を担当する。
【００７３】  ステップＳ４１では、スカラロボット６Ａ、６ＢにＸロボット３が対象物Ｗを搬送した状態にある。この状態に際しては、作業コントロールモジュール８６Ａがスカラロボット６Ａに対するＸロボット３およびスカラロボット６Ｂのドッキングを要求する。これによって、スカラロボット６ＡとＸロボット３とが仮想的にドッキングするとともに、スカラロボット６Ａとスカラロボット６Ｂとが仮想的にドッキングし、スカラロボット６Ａ、６ＢおよびＸロボット３が１台のロボットとして機能する。具体的には、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８６Ａに移行し、さらにスカラロボット６Ｂの駆動制御の担当を作業コントロールモジュール８６Ｂから作業コントロールモジュール８６Ａに移行する。その結果、作業コントロールモジュール８６Ａがスカラロボット６Ａ、６Ｂの駆動制御とＸロボット３の駆動制御とを担当する（図８のステップＳ４１）。そして、作業コントロールモジュール８６ＡはロボットプログラムＰに規定された規定作業を実行するためのモーションをスカラロボット６Ａ、６ＢおよびＸロボット３それぞれにつき演算により作成する。そして、作業コントロールモジュール８６Ａは，スカラロボット６Ａ、６ＢおよびＸロボット３それぞれのモーションの実行を同期させる。これによって、スカラロボット６Ａ、６ＢおよびＸロボット３が協働して、対象物Ｗに対して規定作業を実行する。
【００７４】  スカラロボット６Ａ、６ＢおよびＸロボット３がこの規定作業を完了すると、作業コントロールモジュール８２Ａは、スカラロボット６ＡからのＸロボット３およびスカラロボット６Ｂの離脱を要求する。これによって、Ｘロボットとスカラロボット６Ａ、６Ｂとが互いに離脱して、それぞれ独立して作業可能となる。具体的には、図８のステップＳ４２に示すように、ロボットコントローラー８は、Ｘロボット３の駆動制御の担当を作業コントロールモジュール８６Ａから搬送コントロールモジュール８３に移行するとともに、スカラロボット６Ｂの駆動制御の担当を作業コントロールモジュール８６Ａから作業コントロールモジュール８６Ｂに移行する。これによって、搬送コントロールモジュール８３がＸロボット３の駆動制御を担当し、作業コントロールモジュール８６Ｂがスカラロボット６Ｂの駆動制御を担当する。続いて、搬送コントロールモジュール８３はロボットプログラムＰに規定された搬送作業を実行するためのモーションを演算により作成する。そして、搬送コントロールモジュール８３からの指令を受けて、Ｘロボット３はそのモーションを実行することで、対象物Ｗをスカラロボット６Ａ、６Ｂからスカラロボット６Ｃ、６Ｄに移動させる（図７のステップＳ４２）。このように、搬送コントロールモジュール８３は、異なるスカラロボット６の間で対象物Ｗを搬送するＸロボット３の駆動制御を担当する。
【００７５】  対象物Ｗがスカラロボット６Ｃ、６Ｄに移動してくると（図７のステップＳ４３）、作業コントロールモジュール８６Ｃがスカラロボット６Ｃに対するＸロボット３およびスカラロボット６Ｄのドッキングを要求する。これによって、図８のステップＳ４３に示すように、スカラロボット６ＣとＸロボット３とが仮想的にドッキングするとともに、スカラロボット６Ｃとスカラロボット６Ｄとが仮想的にドッキングし、スカラロボット６Ｃ、６ＤおよびＸロボット３が１台のロボットとして機能する。そして、上述と同様の要領で、スカラロボット６Ｃ、６ＤとＸロボット３とが協働して、対象物Ｗに対して規定作業を実行する。これによって、ロボットシステム１Ｄでの対象物Ｗに対する全規定作業が完了する。
【００７６】  以上に説明した第４実施形態では、Ｘロボット３の駆動制御の担当を搬送コントロールモジュール８３から作業コントロールモジュール８６Ａへ切り換えるとともに、スカラロボット６Ｂの駆動制御の担当を作業コントロールモジュール８６Ｂから作業コントロールモジュール８６Ａに切り換えることで、スカラロボット６Ａ、６ＢとＸロボット３とに協働して規定作業を実行させることができる。こうして、Ｘロボット３がスカラロボット６Ａ、６Ｂから独立して作業を実行する態様と、Ｘロボット３とスカラロボット６Ａ、６Ｂとが協調して作業を実行する態様とを簡便に切り換え可能となっている。また、Ｘロボット３とスカラロボット６Ｃ、６Ｄについても同様の制御が実行可能である。
【００７７】  また、スカラロボット６とＸロボット３とが協働して実行する規定作業が完了すると、Ｘロボット３の駆動制御の担当が作業コントロールモジュール８６から搬送コントロールモジュール８３に移行する。これによって、スカラロボット６から独立してＸロボット３に搬送作業を実行させることができる。
【００７８】  このように上記の実施形態では、ロボットシステム１Ａ〜１Ｄのそれぞれが本発明の「ロボットシステム」の一例に相当し、ロボットコントローラー８が本発明の「ロボットコントローラー」の一例に相当し、ロボットプログラムＰが本発明の「ロボットプログラム」の一例に相当し、対象物Ｗが本発明の「対象物」の一例に相当する。また、第１実施形態では、ＹＺロボット２が本発明の「第１種ロボット」の一例に相当し、エンドエフェクター２１が本発明の「エンドエフェクター」の一例に相当し、Ｘロボット３が本発明の「第２種ロボット」の一例に相当し、作業コントロールモジュール８２が本発明の「第１種コントロール部」の一例に相当し、搬送コントロールモジュール８３が本発明の「第２種コントロール部」の一例に相当し、Ｘ方向が本発明の「第１方向」の一例に相当し、Ｙ方向およびＺ方向が本発明の「第２方向」および「第３方向」に相当する。第２実施形態では、Ｚロボット４が本発明の「第１種ロボット」の一例に相当し、エンドエフェクター４１が本発明の「エンドエフェクター」の一例に相当し、ＸＹロボット５が本発明の「第２種ロボット」の一例に相当し、作業コントロールモジュール８４が本発明の「第１種コントロール部」の一例に相当し、搬送コントロールモジュール８５が本発明の「第２種コントロール部」の一例に相当し、Ｘ方向およびＹ方向が本発明の「第１方向」および「第２方向」の一例に相当し、Ｚ方向が本発明の「第３方向」の一例に相当する。第３実施形態では、スカラロボット６が本発明の「第１種ロボット」の一例に相当し、エンドエフェクター６１が本発明の「エンドエフェクター」の一例に相当し、Ｘロボット３が本発明の「第２種ロボット」の一例に相当し、作業コントロールモジュール８６が本発明の「第１種コントロール部」の一例に相当し、搬送コントロールモジュール８３が本発明の「第２種コントロール部」の一例に相当し、Ｘ方向が本発明の「第１方向」の一例に相当し、Ｙ方向およびＺ方向が本発明の「第２方向」および「第３方向」の一例に相当する。また、第４実施形態では、スカラロボット６Ａ、６Ｃが本発明の「第１種ロボット」の一例に相当し、Ｘロボット３が本発明の「第２種ロボット」の一例に相当し、スカラロボット６Ｂ、６Ｄが本発明の「第３種ロボット」の一例に相当し、作業コントロールモジュール８６Ａ、８６Ｃが本発明の「第１種コントロール部」の一例に相当し、搬送コントロールモジュール８３が本発明の「第２種コントロール部」の一例に相当し、作業コントロールモジュール８６Ｂ、８６Ｄが本発明の「第３種コントロール部」の一例に相当する。
【００７９】  なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、垂直多関節型ロボットあるいはパラレルリンク機構を用いたロボットに対しても本発明を適用可能である。
【００８０】  また、例えば、上記実施形態では、リニアガイド３０に対して１台のＸロボット３が装着されていた。しかしながら、複数台のＸロボット３をリニアガイド３０に装着しても良い。このように構成した場合、ロボットコントローラー８は、複数のＸロボット３に一対一で対応して複数の搬送コントロールモジュール８３を構築し、各搬送コントロールモジュール８３が対応するＸロボット３の駆動制御を担当する。また、各Ｘロボット３がＹＺロボット２やスカラロボット６と協働して規定作業を実行する場合には、上述と同様にしてこれらをドッキングする。
【００８１】  ロボットプログラムＰに従ってロボットをドッキングさせる態様についても適宜変更が可能である。したがって、例えばＹＺロボット２、Ｚロボット４あるいはスカラロボット６に隣接して近接センサーを設けておき、この近接センサーが対象物Ｗの接近を検知すると、例えばＹＺロボット２、Ｚロボット４あるいはスカラロボット６と、Ｘロボット３あるいはＸＹロボット５とをドッキングするように、ロボットプログラムＰを構成しても良い。
【００８２】  また、ＹＺロボット２、Ｚロボット４あるいはスカラロボット６の台数は上記の例に限られず、適宜変更が可能である。
【００８３】  さらに、Ｘロボット３やＸＹロボット５の具体的な構成も適宜変更が可能であり、例えばリニアモーター等によってこれらを構成しても良い。
【産業上の利用可能性】
【００８４】  この発明は、複数のロボットを駆動して、これらに作業を実行させる技術全般に適用可能である。
【符号の説明】
【００８５】  １…ロボットシステム、２…ＹＺロボット、２１…エンドエフェクター、３…Ｘロボット、４…Ｚロボット、４１…エンドエフェクター、５…ＸＹロボット、６、６Ａ〜６Ｄ…スカラロボット、６１…エンドエフェクター、８…ロボットコントローラー、８２…作業コントロールモジュール、８３…搬送コントロールモジュール、８４…作業コントロールモジュール、８５…搬送コントロールモジュール、８６、８６Ａ〜８６Ｄ…作業コントロールモジュール、Ｐ…ロボットプログラム、Ｗ…対象物、Ｘ…Ｘ方向、Ｙ…Ｙ方向、Ｚ…Ｚ方向、 
【図１】
0006653763.tif 000002
【図２】
0006653763.tif 000003
【図３】
0006653763.tif 000004
【図４】
0006653763.tif 000005
【図５】
0006653763.tif 000006
【図６】
0006653763.tif 000007
【図７】
0006653763.tif 000008
【図８】
0006653763.tif 000009