(57)【要約】  本発明に係るロボットシステムは、オペレータからの操作指示を受け付け、受け付けた操作指示を操作入力信号として送信するマスター装置と、マスター装置から送信された操作入力信号に応じて動作する、複数のスレーブロボットと、複数のスレーブロボットそれぞれの動作を管理する管理制御装置と、管理制御装置から送信された情報を出力する出力装置と、を備え、管理制御装置は、複数のスレーブロボットのうち、操作入力信号の待ち状態にあるスレーブロボットの中で、マスター装置からこの操作入力信号が送信される優先順位を決定し、決定した優先順位に関する情報を出力装置に送信する。これにより、複数のスレーブロボットに対してオペレータがマスター装置を介して効率よく操作入力信号を送信することができる。
2017033364.tif 000002
【特許請求の範囲】
【請求項１】
オペレータからの操作指示を受け付け、受け付けた該操作指示を操作入力信号として送信するマスター装置と、
前記マスター装置から送信された前記操作入力信号に応じて動作する、複数のスレーブロボットと、
前記複数のスレーブロボットそれぞれの動作を管理する管理制御装置と、
前記管理制御装置から送信された情報を出力する出力装置と、を備え、
前記管理制御装置は、
複数の前記スレーブロボットのうち、前記操作入力信号の待ち状態にあるスレーブロボットの中で、前記マスター装置から該操作入力信号が送信される優先順位を決定し、決定した優先順位に関する情報を前記出力装置に送信するロボットシステム。
【請求項２】
作業空間内における前記スレーブロボットそれぞれの状況を示す状況情報をそれぞれ取得する状況情報取得部をさらに備え、
前記管理制御装置は、前記状況情報取得部によって取得された各スレーブロボットの前記状況情報に基づき、前記操作入力信号を送信する優先順位を決定する請求項１に記載のロボットシステム。
【請求項３】
前記状況情報取得部は、前記状況情報として、各スレーブロボットによって実施されている作業の経過時間を取得しており、
前記管理制御装置は、前記状況情報取得部によって取得された前記作業の経過時間に基づき、各スレーブロボットの現時点における作業の遅延時間を求め、該遅延時間に応じて前記操作入力信号を送信する優先順位を決定する請求項２に記載のロボットシステム。
【請求項４】
前記状況情報取得部は、前記状況情報として、前記作業空間内における前記各スレーブロボットの位置および前記各スレーブロボットの姿勢を示す情報のうちの少なくとも１つの情報を取得しており、
前記管理制御装置は、前記状況情報取得部によって取得された前記各スレーブロボットの位置および各スレーブロボットの姿勢を示す情報のうちの少なくとも１つの情報に基づき、前記各スレーブロボットが異常状態にあるか否か判定し、該判定に応じて前記操作入力信号を送信する優先順位を決定する請求項２に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタースレーブ方式ロボットを利用したロボットシステムに関する。
【背景技術】
【０００２】
作業を自動化し、省人化または作業の効率化を図るために産業用ロボットの開発が進められている。産業用ロボットは、例えば、組付部品（ワーク）の搬送・組付などを行うロボットとして工場等に設置される。ここで組付部品の組付をロボットに自動で実施させる場合、組付部品および被組付部品（製品）それぞれの位置関係をセンサにより計測し、精度よくロボットの位置と姿勢を合わせる機構および制御が必要となる。【０００３】
特に、組付部品または被組付部品が大型部品である場合、自動でロボットによりこの組付部品の組付作業を実施させるためには、ロボットと組付部品との位置関係または組付部品と被組付部品との位置関係を正確に把握できるようにする必要がある。また、ロボットと組付部品との位置関係または組付部品と被組付部品との位置関係を正確に把握するためには、多数のセンサが必要となる。さらには、広範な作業空間内で高精度な計測を可能とする高度なセンサ認識技術も要求される。【０００４】
このような高度なセンサ認識技術が要求されるような場面では、ロボットの運転を、自動運転からオペレータからの操作指示に従ってロボットが作業を実施できる手動運転と変更することが好適である。このため、実施する作業内容に応じてロボットの自動運転と手動運転とを適切なタイミングで切り替えることが重要となる。例えば、特許文献１には、自動運転または手動運転の状態を表示できる状態表示ランプを備えたロボット手動送り制御装置が提案されている。特許文献１に開示されたロボット手動送り制御装置は、オペレータが状態表示ランプを監視することにより自動運転モードへの移行可能な状態を確認して、手動運転モードの操作ボタンを押すことにより手動運転モードを完了させることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−２６７３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、複数のスレーブロボットに対してオペレータがマスター装置を介して効率よく操作入力信号を送信することができるロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のある形態に係るロボットシステムは、上記した課題を解決するために、オペレータからの操作指示を受け付け、受け付けた該操作指示を操作入力信号として送信するマスター装置と、前記マスター装置から送信された前記操作入力信号に応じて動作する、複数のスレーブロボットと、前記複数のスレーブロボットそれぞれの動作を管理する管理制御装置と、前記管理制御装置から送信された情報を出力する出力装置と、を備え、前記管理制御装置は、複数の前記スレーブロボットのうち、前記操作入力信号の待ち状態にあるスレーブロボットの中で、前記マスター装置から該操作入力信号が送信される優先順位を決定し、決定した優先順位に関する情報を前記出力装置に送信する。【０００８】
ここで、操作入力信号は、スレーブロボットをオペレータにより手動にて動作させる際に、マスター装置を介して該スレーブロボットに送信される操作入力信号である。スレーブロボットが、待ち受けている操作入力信号の中に、この操作入力信号が含まれる場合がある。【０００９】
上記構成によると、管理制御装置を備えているため、マスター装置を介して入力される操作入力信号の待ち状態にあるスレーブロボットの中で該操作入力信号を入力させる優先順位を決定することができる。また出力装置を備えているため、管理制御装置によって決定された優先順位に関する情報を出力させて、ロボットシステムのオペレータに知らせることができる。【００１０】
このため、オペレータは、操作入力信号の入力を複数のスレーブロボットから要求されている場合、いずれのスレーブロボットから先に操作入力信号の送信を行えばよいか容易に判断することができる。【００１１】
よって、本発明に係るロボットシステムは、複数のスレーブロボットに対してオペレータがマスター装置を介して効率よく操作入力信号を送信することができるという効果を奏する。【００１２】
本発明のある形態に係るロボットシステムは、上記した構成において、作業空間内における前記スレーブロボットそれぞれの状況を示す状況情報をそれぞれ取得する状況情報取得部をさらに備え、前記管理制御装置は、前記状況情報取得部によって取得された各スレーブロボットの前記状況情報に基づき、前記操作入力信号を送信する優先順位を決定するように構成されていてもよい。【００１３】
本発明のある形態に係るロボットシステムは、上記した構成において、前記状況情報取得部は、前記状況情報として、各スレーブロボットによって実施されている作業の経過時間を取得しており、前記管理制御装置は、前記状況情報取得部によって取得された前記作業の経過時間に基づき、各スレーブロボットの現時点における作業の遅延時間を求め、該遅延時間に応じて前記操作入力信号を送信する優先順位を決定するように構成されていてもよい。【００１４】
上記構成によると、本発明のある形態に係るロボットシステムでは、オペレータは、作業の遅延が大きいスレーブロボットを優先させて操作入力信号を送信することができる。【００１５】
本発明のある形態に係るロボットシステムは、上記した構成において、前記状況情報取得部は、前記状況情報として、前記作業空間内における前記各スレーブロボットの位置および前記各スレーブロボットの姿勢を示す情報のうちの少なくとも１つの情報を取得しており、前記管理制御装置は、前記状況情報取得部によって取得された前記各スレーブロボットの位置および各スレーブロボットの姿勢を示す情報のうちの少なくとも１つの情報に基づき、前記各スレーブロボットが異常状態にあるか否か判定し、該判定に応じて前記操作入力信号を送信する優先順位を決定するように構成されていてもよい。【００１６】
上記構成によると、本発明のある形態に係るロボットシステムでは、オペレータは、異常状態にあるスレーブロボットを優先させて操作入力信号を送信することができる。
【発明の効果】
【００１７】
本発明は以上に説明したように構成され、複数のスレーブロボットに対してオペレータがマスター装置を介して効率よく操作入力信号を送信することができるという効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態１に係るロボットシステムの構成の一例を示す模式図である。
【図２】図１に示すロボットシステムが備える制御装置に係る機能的構造の一例を示すブロック図である。
【図３】本発明の実施形態１の実施例１に係るロボットシステムの動作シーケンスの一例を示す図である。
【図４】図３に示す動作シーケンスに沿って作業を実施するスレーブアームの一例を模式的に示す図である。
【図５】図３に示す動作シーケンスを実施するマスター装置、制御装置、スレーブアームそれぞれにおける動作処理の一例を示すフローチャートである。
【図６】図３に示す動作シーケンスを実施するマスター装置、制御装置、スレーブアームそれぞれにおける動作処理の一例を示すフローチャートである。
【図７】本発明の実施形態１の実施例２に係るロボットシステムの動作シーケンスの一例を示すフローチャートである。
【図８】実施形態２に係るロボットシステムの機能的構造の一例を示すブロック図である。
【発明を実施するための形態】
【００１９】
（本発明の概要）
本発明者らは、人とロボットとの協同作業を実現するシステムについて鋭意研究した。特に、マスターアームを備えるマスター装置とスレーブアームを備えるスレーブロボットとから構成されるマスタースレーブ方式ロボットを用いたロボットシステムを利用して人とロボットとの協同作業を実現するシステムについて検討した。
【００２０】
まず、マスタースレーブ方式ロボットを用いたロボットシステムによって一連の工程からなる作業を実施させることができる。特に、作業の中で、上記した高度なセンサ認識技術等が必要とされる工程ではマスター装置を介して入力されるオペレータからの操作指示に従ってスレーブアームを手動モードで動作させ、それ以外の工程についてはスレーブアームを自動モードで動作させることが考えられる。
【００２１】
ところで、スレーブアームが、複数のステップからなる工程を自動モードで動作する場面において、所定のステップまで自動モードによりスレーブアームを動作させた後、このまま自動モードを継続してもよいか、または運転モードの変更が必要か判定を要する場合があることに気が付いた。
【００２２】
そこで本発明者は鋭意検討を重ね、以下の知見を得た。すなわち、スレーブアームが自動モードにより複数のステップからなる工程を実施する場合、スレーブアームの動作を制御する制御装置が、該所定のステップで自動モードによるスレーブアームの動作を停止させ、さらにマスター装置から送信される操作入力信号の待ち状態となる。そして、操作入力信号を受信すると、該操作入力信号に基づき、制御装置が自動モードの継続の可否を判定する構成とする。また、自動モードを継続させないと判定された場合、制御装置は、マスター装置から送信される運転モードの切り替え指示を示す信号を待ち受ける構成とする。
【００２３】
これにより、自動モードによるスレーブアームの動作中において、該自動モードの継続の可否を確認し、さらに自動モードを継続させないと判定した場合は、適切な運転モードをオペレータに問い合わせることができる。
【００２４】
また、スレーブアームと制御装置とを有するスレーブロボットを複数、備えた構成とした場合、特許文献１に開示されたロボット手動送り制御装置では、以下の問題が生じることを見出した。例えば、複数のスレーブロボットそれぞれが自動モードの継続の可否を判定するために、オペレータからの操作入力信号の待ち状態となっているとする。この場合、オペレータは、複数のスレーブロボットの中でどのスレーブロボットから先に操作入力信号を送信すべきか判断がつかない場合があることを見出した。このような場合、いずれのスレーブロボットに対する操作入力信号の送信を優先すべきか優先順位を示してオペレータに提示できる構成とする。これにより、オペレータは操作入力信号の待ち状態にあるスレーブロボットのうち、どのスレーブロボットに対して優先的に操作入力信号を送信するか容易に判断することができる。
【００２５】
以下、本発明の実施の形態を、図面を参照しながら説明する。なお、以下ではすべての図を通じて同一または相当する要素には同一の参照符号を付して、その重複する説明を省略する。
【００２６】
（実施形態１）
まず、図１を参照して本発明の実施形態１に係るロボットシステム１００について説明する。図１は、本発明の実施形態１に係るロボットシステム１００の構成の一例を示す模式図である。
【００２７】
本発明の実施形態１に係るロボットシステム１００では、マスタースレーブ方式ロボットを利用したシステムである。すなわち、ロボットシステム１００では作業空間から離れた位置（作業空間外）にいるオペレータが、例えばマスター装置９が備えるマスターアーム２を動かすことで、作業空間内に設置されたスレーブアーム１が、該動きに追従した動作を行い、特定の作業を行うことができる。さらには、ロボットシステム１００では、スレーブアーム１が、オペレータによるマスターアーム２の操作を介することなく、所定の作業を自動的に行うこともできる。
【００２８】
本明細書では、マスターアーム２を介して入力された操作指示（指令）に従って、スレーブアーム１を動作させる運転モードを「手動モード」と称する。なお、上述の「手動モード」には、オペレータがマスターアーム２を操作することによって入力された操作指示（指令）に基づいて動作中のスレーブアーム１の動作の一部を自動で補正する場合も含む。例えば、この補正する場合とは、以下のような動作が例示できる。すなわち、手動モード設定時においてオペレータの手ぶれなどに起因してスレーブアーム１の動きも振れてしまう場合がある。このような場合、スレーブアーム１の動きを自動的に、振れが生じることを防ぐように補正する場合が挙げられる。
【００２９】
また、本明細書では、予め設定されたタスクプログラムに従ってスレーブアーム１を自動で動作させる運転モードを「自動モード」と称する。
【００３０】
更に、本実施形態１のロボットシステム１００では、スレーブアーム１が自動モードで動作している際に、マスターアーム２を介して入力された操作指示（指令）をスレーブアーム１の動作に反映させて、自動で行う予定の動作を修正することができるように構成されている。本明細書では、マスターアーム２を介して入力された補正指示（指令）を反映可能な状態で、予め設定されたタスクプログラムに従ってスレーブアーム１を動作させる運転モードを「修正自動モード」と称する。なお、上述の「自動モード」は、スレーブアーム１を動作させる運転モードが自動モードであるときはマスターアーム２の操作がスレーブアーム１の動作に反映されないという点で、「修正自動モード」と区別される。
【００３１】
[実施形態１に係るロボットシステムの構成]
図１に示すように、ロボットシステム１００は、スレーブロボット１０と、マスター装置９と、出力装置４と、状況情報取得部５と、記憶装置６とを備えてなる構成である。なお、図１では特に図示していないが、ロボットシステム１００では、オペレータがスレーブアーム１による作業状況を確認するためのモニタ用表示装置とスレーブアーム１の作業状況を撮影するモニタ用カメラがさらに備えられている。なお、モニタ用表示装置はマスター装置９が設けられている空間に設置されており、モニタ用カメラはスレーブアーム１が設けられている空間に設置されており、両者は有線または無線により接続されている。
【００３２】
（スレーブロボットの構成）
スレーブロボット１０は、スレーブアーム１と、スレーブアーム１の先端に装着されるエンドエフェクタ（不図示）と、スレーブアーム１およびエンドエフェクタの動作を司る制御装置３とを備えている。
【００３３】
（スレーブアーム）
スレーブアーム１は、複数のステップを含む工程において、該ステップの処理を実施する。すなわち、ある作業は、それぞれスレーブアーム１の運転モードが設定された複数の工程から構成されており、各工程には複数のステップが含まれている。そして、スレーブアーム１は、このステップの処理を設定された動作モードにて実施する。
【００３４】
スレーブアーム１は、基台１５と、基台１５に支持された腕部１１と、腕部１１の先端に支持され、エンドエフェクタが装着される手首部１４とを備えている。スレーブアーム１は、図１に示すように３以上の複数の関節ＪＴ１〜ＪＴ６を有する多関節ロボットアームであって、複数のリンク１１ａ〜１１ｆが順次連結されて構成されている。より詳しくは、第１関節ＪＴ１では、基台１５と、第１リンク１１ａの基端部とが、鉛直方向に延びる軸回りに回転可能に連結されている。第２関節ＪＴ２では、第１リンク１１ａの先端部と、第２リンク１１ｂの基端部とが、水平方向に延びる軸回りに回転可能に連結されている。第３関節ＪＴ３では、第２リンク１１ｂの先端部と、第３リンク１１ｃの基端部とが、水平方向に延びる軸回りに回転可能に連結されている。第４関節ＪＴ４では、第３リンク１１ｃの先端部と、第４リンク１１ｄの基端部とが、第４リンク１１ｃの長手方向に延びる軸回りに回転可能に連結されている。第５関節ＪＴ５では、第４リンク１１ｄの先端部と、第５リンク１１ｅの基端部とが、リンク１１ｄの長手方向と直交する軸回りに回転可能に連結されている。第６関節ＪＴ６では、第５リンク１１ｅの先端部と第６リンク１１ｆの基端部とが、捻れ回転可能に連結されている。そして、第６リンク１１ｆの先端部にはメカニカルインターフェースが設けられている。このメカニカルインターフェースには、作業内容に対応したエンドエフェクタが着脱可能に装着される。
【００３５】
上記の第１関節ＪＴ１、第１リンク１１ａ、第２関節ＪＴ２、第２リンク１１ｂ、第３関節ＪＴ３、及び第３リンク１１ｃから成るリンクと関節の連結体によって、スレーブアーム１の腕部１３が形成されている。また、上記の第４関節ＪＴ４、第４リンク１１ｄ、第５関節ＪＴ５、第５リンク１１ｅ、第６関節ＪＴ６、及び第４リンク１１ｆから成るリンクと関節の連結体によって、スレーブアーム１の手首部１４が形成されている。
【００３６】
関節ＪＴ１〜ＪＴ６には、それが連結する２つの部材を相対的に回転させるアクチュエータの一例としての駆動モータＭ１〜Ｍ６が設けられている。駆動モータＭ１〜Ｍ６は、例えば、制御装置３によってサーボ制御されるサーボモータである。また、関節ＪＴ１〜ＪＴ６には、駆動モータＭ１〜Ｍ６の回転位置を検出するための回転センサＥ１〜Ｅ６（図３参照）と、駆動モータＭ１〜Ｍ６の回転を制御する電流を検出するための電流センサＣ１〜Ｃ６（図３参照）とが設けられている。回転センサＥ１〜Ｅ６は、例えばエンコーダである。なお、上記の駆動モータＭ１〜Ｍ６、回転センサＥ１〜Ｅ６、および電流センサＣ１〜Ｃ６の記載では、各関節ＪＴ１〜ＪＴ６に対応してアルファベットに添え字の１〜６が付されている。以下では、関節ＪＴ１〜ＪＴ６のうち任意の関節を示す場合には添え字を省いて「ＪＴ」と称し、駆動モータＭ、回転センサＥ、および電流センサＣ１〜Ｃ６についても同様とする。
【００３７】
なお、上記したスレーブアーム１の構成は一例であって、スレーブアーム１の構成はこれに限定されるものではなく、該スレーブアーム１を用いて実施する作業内容および作業空間等に応じて適宜、構成は変更される。
【００３８】
（制御装置）
次に、上述した構成を有するスレーブアーム１の動作を制御する制御装置３について図２を参照して説明する。図２は、図１に示すロボットシステム１００が備える制御装置３に係る機能的構造の一例を示すブロック図である。
【００３９】
制御装置３は、スレーブアーム１の動作を制御するものであり、図２に示すように、機能ブロックとして、受信部４０、動作制御部４１、出力制御部４２、および継続判定部４６を備えている。制御装置３は、例えば、マイクロコントローラ、ＭＰＵ、ＰＬＣ（Programmable Logic Controller）、論理回路等からなる演算部（図示せず）と、ＲＯＭやＲＡＭ等からなるメモリ部（図示せず）と、により構成することができる。また、制御装置３が備える各機能ブロックは、制御装置３の演算部がメモリ部に格納されている制御プログラムを読み出し実行することにより実現してもよい。
【００４０】
受信部４０は、制御装置３の外部から送信された入力信号を受信するものである。受信部４０によって受信する入力信号としては、例えば、マスター装置９から送信された信号、あるいは状況情報取得部５から送信された信号等が挙げられる。
【００４１】
動作制御部４１は、スレーブアーム１の運転モードを、動作シーケンス情報５１に基づき動作させる自動モードとするか、マスター装置９のマスターアーム２を介して入力された指令に基づき動作させる手動モードとするか、あるいは、自動モードで動作中のスレーブアームの動作を、マスター装置９のマスターアーム２を介して入力された指令に基づき修正する修正自動モードとするか判定する。そして、判定した運転モードに応じて前記スレーブアーム１の動作を制御する。
【００４２】
例えば、動作制御部４１は、受信部４０が入力信号としてマスター装置９から次工程に対する操作指示（操作入力信号）を受け付けた場合、この操作指示（操作入力信号）をトリガとしてスレーブアーム１が実施する次工程の運転モードを判定してもよい。あるいは、自動的に運転モードの切り替えが設定されている場合、動作制御部４１は、スレーブアーム１の次工程での運転モードを、記憶装置６に記憶された動作シーケンス情報５１を参照して判定してもよい。
【００４３】
動作制御部４１は、運転モードを判定すると、判定された運転モードにてスレーブアーム１を動作させるように制御する。動作制御部４１は、スレーブアーム１を自動モードによって動作させると判定した場合、動作シーケンス情報５１を読み出し、この動作シーケンス情報５１に規定された動作を実施するようにスレーブアーム１を制御する。一方、動作制御部４１がスレーブアーム１を手動モードによって動作させると判定した場合、マスターアーム２から受信部４０が受信した操作指示（操作入力信号）に基づき動作するようにスレーブアーム１を制御する。また、動作制御部４１がスレーブアーム１を修正自動運転とすると判定した場合、スレーブアーム１の自動モードによる動作を、マスターアーム２を介して入力された操作指示（指令）に基づき修正した動作となるように該スレーブアーム１を制御する。
【００４４】
なお、動作制御部４１は、スレーブアーム１を自動モードにより動作させた場合、自動モードによる動作終了時に、自動モード終了を示す情報を出力制御部４２に送信する構成となっていてもよい。
【００４５】
出力制御部４２は、出力装置４を制御し、オペレータ等に通知すべき情報を出力する。例えば、出力制御部４２は、動作制御部４１から自動モード終了を示す情報を受信した場合、該情報を出力するように出力装置４を制御する。そして、出力装置４は、この出力制御部４２からの制御指示に応じて、スレーブアーム１の自動モード終了の通知を表示させたり、音または光で表現したりするなどして出力する構成であってもよい。このように構成した場合、オペレータは、スレーブアーム１の自動モードによる動作の終了を把握することができる。
【００４６】
さらにまた、出力制御部４２は、状況情報取得部５から状況情報を受信した場合、該状況情報を出力するように出力装置４を制御する構成となっていてもよい。このように構成されている場合であって、出力装置４が表示装置であるとき、出力装置４においてスレーブアーム１の動作状況等を表示させることができる。このため、オペレータは、スレーブアーム１の動作状況等を監視することができる。
【００４７】
（状況情報取得部）
状況情報取得部５は、スレーブアーム１の作業空間内における状況を示す状況情報を取得する。状況情報は、作業空間内におけるスレーブアーム１の位置および／または姿勢、あるいはスレーブアーム１を取り巻く周囲の状況を認識するために利用する情報等を含む。より具体的には、状況情報は、例えば、作業空間内におけるスレーブアーム１の位置または姿勢、スレーブアーム１とワークとの位置関係、またはスレーブアーム１とワークを組付ける被組付部品との位置関係など、作業空間内においてスレーブアーム１の状況およびスレーブアーム１の周囲の状況を認識可能とするために必要な情報が含まれる。状況情報取得部５は、例えば、センサ、撮像装置、通信器、エンコーダ等によって実現できる。センサとしては、例えば、ワーク（組付部品）または被組付部品までの距離または位置を計測するためのレーザーセンサ、またはレーダーセンサなどが例示できる。さらには、複数の撮像装置から得られた画像データを用いてスレーブアーム１からその周囲の物体までの距離を計測するセンサであるステレオカメラなども例示できる。通信器としては、例えば、ワーク（組付部品）または被組付部品、あるいは作業空間内の所定位置に設置されたセンサおよび撮像装置からの情報を取得する通信器等が挙げられる。エンコーダとしては、例えば、スレーブアームの移動量または位置を検知できるエンコーダが例示できる。
【００４８】
また、状況情報取得部５によって取得される状況情報は、上述したような作業空間内におけるスレーブアーム１の位置および／または姿勢、あるいはスレーブアーム１を取り巻く周囲の状況を認識するために利用する情報に限定されない。
【００４９】
例えば、状況情報取得部５によって取得される状況情報は、例えば、スレーブアーム１で実施されている作業の経過時間を示す情報であってもよい。状況情報がスレーブアーム１で実施されている作業の経過時間を示す情報である場合、状況情報取得部５はスレーブアーム１が所定のステップを処理するにあたりかかった時間を計測する計側装置とすることができる。
【００５０】
状況情報取得部５は状況情報を逐次、取得しており、取得された状況情報は、制御装置３に入力され、制御装置３においてスレーブアーム１の動作制御に利用される。さらには、制御装置３は、状況情報を出力装置４において出力させるように制御する構成としてもよい。状況情報取得部５は、スレーブアーム１自体に取り付けられていてもよいし、作業空間内の適切な位置に取り付けられていてもよい。また、取り付けられる状況情報取得部５の数は１つであってもよいし複数であってもよい。適切に状況情報を取得できる位置に適切な個数の状況情報取得部５が取り付けられていればよく、取り付け位置および取り付け個数は任意である。
【００５１】
（出力装置）
出力装置４は、制御装置３から送信された情報を出力するものであり、例えば、表示装置、スピーカ、ライト、プリンタ、振動発生装置等によって実現できる。例えば、出力装置４が表示装置の場合、出力装置４では制御装置３から送信された情報を表示する。例えば、出力装置４がスピーカの場合、出力装置４では制御装置３から送信された情報を音として出力する。出力装置４がライトの場合、出力装置４では制御装置３から送信された情報を光として出力する。出力装置４が、プリンタの場合、出力装置４では、制御装置３から送信された情報を印字する。出力装置４が振動発生装置の場合、出力装置４では制御装置３から送信された情報を振動として出力する。出力装置４は、マスター装置９のオペレータが出力された情報を検知できる適切な位置に設けられる。
【００５２】
（記憶装置）
記憶装置６は、読み書き可能な記録媒体であり、ロボットシステム１００の動作シーケンス情報５１を記憶している。動作シーケンス情報５１は、スレーブアーム１の運転を規定するタスクプログラムであって、作業空間内でスレーブアーム１によって実施される各ステップの処理を規定した動作シーケンスに関する情報を含む。本実施の形態に係るロボットシステム１００では、具体的には、図３に示すように動作順とスレーブアーム１の運転モードと各工程の動作フローとを対応付けた情報となっている。図３は、本発明の実施形態１の実施例１に係るロボットシステム１００の動作シーケンスの一例を示す図である。
【００５３】
また、記憶装置６は、スレーブアーム１の予定された軌道範囲を示す予定軌道情報（不図示）を記憶していてもよい。なお、予定軌道情報としては、例えば、一連の作業の各工程を実施するにあたり予定されるスレーブアーム１の位置および姿勢等の時系列情報が例示できる。このように、記憶装置６に予定軌道情報が記憶されている構成の場合、スレーブアーム１が予定された軌道範囲から逸れた状態か否か検知するために利用することができる。
【００５４】
なお、実施形態１に係るロボットシステム１００では、記憶装置６は、制御装置３と別体に設けられているが制御装置３と一体として設けられていてもよい。
【００５５】
（マスター装置）
マスター装置９は、作業空間外に設置され、オペレータからの操作指示を受け付ける入力装置であり、マスターアーム２および操作指示部７を備えている。
【００５６】
ロボットシステム１００では、マスターアーム２をオペレータが動かすとスレーブアーム１が該マスターアーム２の動きに追従して動く。マスターアーム２は、スレーブアーム１と相似構造をしているためマスターアーム２の構成に関する説明は省略する。但し、マスターアーム２は、スレーブアーム１と非相似構造をした、例えば、レバーによる方向入力が可能な入力装置（ジョイスティック）であってもよい。
【００５７】
オペレータがマスターアーム２を動かすことにより手動操作情報が生成され、制御装置３に送られる。本実施形態１に係るロボットシステム１００では、スレーブアーム１を動作させる運転モードが手動モードであるとき、マスターアーム２から操作入力信号が制御装置３に送られ、該操作入力信号に基づく制御装置３からの制御指示によりスレーブアーム１が該マスターアーム２の動きに追随して動く。また、例えば、スレーブアーム１を動作させる運転モードが修正自動モードであるとき、マスターアーム２から操作入力信号が制御装置３に送られ、制御装置３からの制御指示により自動で動作中のスレーブアーム１の動作が操作入力信号により修正される。
【００５８】
操作指示部７は、マスターアーム２と同様に作業空間外に設置され、オペレータからの入力を受け付け、受け付けた入力を操作入力信号としてスレーブアーム１の制御装置３に送信する入力装置である。操作指示部７としては、オペレータの入力を受け付けるための入力スイッチ、またはタブレットなどの携帯端末などが例示できる。
【００５９】
なお、マスター装置９からスレーブアーム１の制御装置３に送信される操作入力信号には、マスターアーム２を介してオペレータから入力された信号と、操作指示部７を介してオペレータから入力された信号とが含まれる。
【００６０】
（ロボットシステムの動作シーケンス）
次に、上記した構成を備えるロボットシステム１００によって実施される一連の工程からなる作業の動作シーケンスについて以下の実施例１、２により説明する。
【００６１】
（実施例１）
上述した図３に加え、図４〜図６を参照して、本発明の実施形態１の実施例１に係るロボットシステム１００の動作シーケンスについて説明する。図４は、図３に示す動作シーケンスに沿って作業を実施するスレーブアーム１の一例を模式的に示す図である。図５、６は、図３に示す動作シーケンスを実施するマスター装置９、制御装置３、スレーブアーム１それぞれにおける動作処理の一例を示すフローチャートである。
【００６２】
実施例１では、被組付対象へのワークの組付作業を例に挙げてロボットシステム１００の動作シーケンスを説明している。本明細書では、図３に示す動作シーケンス全体を作業と称し、図３において＜１＞〜＜５＞で示される各処理を工程と称する。また、各工程で実施する処理をステップと称する。図３における＜１＞〜＜５＞は、作業における各工程の実施順を示している。
【００６３】
なお、ロボットシステム１００においてタスクプログラムとして動作シーケンス情報５１を実行することにより上記した動作シーケンスに沿ってスレーブアーム１が動作するように構成されている。実施例１の作業に関する動作シーケンスでは、ワークが格納されている位置からワークの組付位置の近傍（組付準備位置）までの移動を、スレーブアーム１が自動モードにより実施する。組付準備位置までスレーブアーム１がワークを持ってくると、被組付対象へのワークの組付は、組付位置の位置決め、および組付作業が複雑なため、オペレータからの操作指示に応じた手動モードによりスレーブアーム１が行うように設計されている。
【００６４】
実施例１の作業に関するこの動作シーケンスは、被組付対象を車体とし、ワークＡを前部シート、ワークＢを後部シートとした自動車の艤装工程として適用できる。また、被組立対象をアームとし、ワークＡを減速機、ワークＢをモータとしたロボットの組み立て工程として適用できる。
【００６５】
なお、説明の便宜上、被組立対処へのワークの組付作業を例に挙げ、以下に実施例１〜実施例４について説明するがロボットシステム１００を利用して行う作業はこれに限定されるものではない。例えば、ワークに対する塗装作業であってもよい。この塗装作業としては、例えば、コンベア装置(不図示)によって塗装エリア（不図示）に搬送されたワークをスレーブアーム１が塗装する塗装作業が例示できる。あるいは、旅客機などの大型機器本体を塗装するためにスレーブアーム１が移動しながら塗装する塗装作業なども例示できる。
【００６６】
まず、図５に示すように、マスター装置９の操作指示部７をオペレータが操作して開始指示を入力する（ステップＳ１１）。この開始指示の入力によりマスター装置９から動作シーケンスの開始を指示する開始指示信号が制御装置３に送信される。制御装置３では、受信部４０が操作入力信号（開始指示信号）の待ち状態となっており、受信部４０が開始指示信号を受信すると、動作制御部４１がスレーブアーム１の運転モードを判定する（ステップＳ２１）。動作制御部４１は、スレーブアーム１の運転モードの判定を、記憶装置６に格納されている動作シーケンス情報５１を参照して行う構成であってもよい。あるいは、動作制御部４１は、マスター装置９から送信された開始指示信号内に次のステップにおけるスレーブアーム１の運転モードに関する情報が含まれており、該情報に基づき行う構成であってもよい。
【００６７】
図３に示す動作シーケンス情報５１に基づき運転モードを判定する場合、動作制御部４１は以下のように運転モードを判定する。すなわち、動作シーケンス情報５１では、最初の工程である動作順＜１＞において、スレーブアーム１の運転モードが自動モードに設定されている。そこで、動作制御部４１が、スレーブアーム１の運転モードが自動モードであると判定し、自動モードによってスレーブアーム１を動作させるように制御する。つまり、動作制御部４１は、動作シーケンス情報５１を参照して、動作順＜１＞の各ステップをスレーブアーム１が実施するように制御指示を該スレーブアーム１に送信する。
【００６８】
具体的には、動作制御部４１からの制御指示（自動モード）に応じてスレーブアーム１は、ワークＡの取り出し位置に移動し、ワークＡの取出しを行う（ステップＳ３１）。このときのワークＡと被組付対象とスレーブアーム１の位置関係は図４の（ａ）に示す状態となる。ワークＡの取り出しを行うと、スレーブアーム１は、図４の（ｂ）に示すようにワークＡを保持したまま組付準備位置まで移動する（ステップＳ３２）。スレーブアーム１は、組付準備位置まで移動すると、操作指示信号の待ち状態（操作待ち状態）となる（ステップＳ３３）。
【００６９】
なお、スレーブアーム１が組付準備位置に到達したか否かについては状況情報取得部５から取得した状況情報に基づき動作制御部４１が判定することができる。図５において、スレーブアーム１のステップＳ３２の後段から制御装置３のステップＳ２２の前段に向かって延びている破線の矢印は、制御装置３による状況情報の取得を表している。
【００７０】
そして、動作制御部４１が、スレーブアーム１が組付準備位置に到達したことを確認した場合（ステップＳ２２）、オペレータに組付作業の準備が完了した旨を通知するように出力制御部４２に対して指示する。出力制御部４２は、動作制御部４１からの指示に応じて、出力装置４を制御して組付作業の準備完了を示す情報を出力させる（ステップＳ２３）。このとき、受信部４０は、マスター装置９から送信される操作入力信号の待ち状態となっている。なお、図５において、制御装置３のステップＳ２３の後段からマスター装置９のステップＳ１２の前段に向かって伸びる破線の矢印は、オペレータによる準備完了通知の検知を表している。
【００７１】
出力装置４において準備完了が通知されると、オペレータは、マスター装置９の操作指示部７から運転モードの切り替え指示を入力し、その後、マスター装置９のマスターアーム２を用いて操作入力を行う（ステップＳ１２）。これらの入力の結果、操作指示部７からの運転モード切り替え信号およびマスターアーム２からの操作入力信号がそれぞれ制御装置３に送信される。制御装置３では、受信部４０がモード切り替え信号を受信すると、動作制御部４１はスレーブアーム１の運転モードを判定する（ステップＳ２４）。次工程の動作順＜２＞では運転モードは手動モードであるため、動作制御部４１はマスターアーム２を介して入力された操作入力信号に基づく制御指示をスレーブアーム１に送信する。これにより、スレーブアーム１は、マスターアーム２の動作に追従して動作する。具体的には、スレーブアーム１は、マスターアーム２を介して入力された操作入力信号に従って図４の（ｃ）に示すように被組付対象に対してワークＡの組付を行う（ステップＳ３４）。被組付対象に対してワークＡの組付が完了すると、オペレータはマスター装置９の操作指示部７を操作して作業完了通知を入力する（ステップＳ１３）。作業完了通知の入力によりマスター装置９から作業完了信号が制御装置３に送信される。
【００７２】
作業完了信号を受信部４０が受信すると、制御装置３では、動作制御部４１が次の工程におけるスレーブアーム１の運転モードを判定する（ステップＳ２５）。動作制御部４１は、スレーブアーム１の運転モードの判定を、記憶装置６に格納されている動作シーケンス情報５１を参照して行う構成であってもよい。あるいは、動作制御部４１は、マスター装置９から送信された作業完了信号内に次のステップにおけるスレーブアーム１の運転モードに関する情報が含まれており、該情報に基づき行う構成であってもよい。
【００７３】
図３に示す動作シーケンス情報５１の例では、次工程の動作順＜３＞において運転モードが自動モードに設定されている。そこで、動作制御部４１は、運転モードが自動モードであると判定し、動作シーケンス情報５１を参照して、動作順＜３＞の各ステップをスレーブアーム１が実施するように制御指示を該スレーブアーム１に送信する。
【００７４】
具体的には、動作制御部４１からの制御指示に応じてスレーブアーム１は、ワークＡの組付完了位置より退避する（ステップＳ３５）。そして、スレーブアーム１は、図４の（ｄ）に示すように、ワークＢの取出しを行う（ステップＳ３６）。ワークＢの取り出しを行うと、スレーブアーム１は、図４の（ｅ）に示すように、ワークＢを保持したまま組付準備位置まで移動する（ステップＳ３７）。スレーブアーム１は、組付準備位置まで移動すると、操作指示信号の待ち状態となる（ステップＳ３８）。
【００７５】
なお、スレーブアーム１が組付準備位置に到達したか否かについてはステップＳ３２と同様に状況情報取得部５から取得した状況情報に基づき動作制御部４１が判定する構成であってもよい。図６において、スレーブアーム１のステップＳ３７の後段から制御装置３のステップＳ２６の前段に向かって延びている破線の矢印は、制御装置３による状況情報の取得を表している。
【００７６】
そして、動作制御部４１は、スレーブアーム１が組付準備位置に到達したことを確認した場合（ステップＳ２６）、出力制御部４２に対して、オペレータに組付作業の準備が完了した旨を通知するように指示する。出力制御部４２は、出力装置４を制御して組付作業の準備完了を示す情報を出力させる（ステップＳ２７）。この後、受信部４０は、マスター装置９から送信される操作入力信号の待ち状態となる。なお、図６において、制御装置３のステップＳ２７の後段からマスター装置９のステップＳ１４の前段に向かって伸びる破線の矢印は、オペレータが出力装置４から出力された準備完了通知を検知していることを表している。
【００７７】
出力装置４においてワークＢの組付作業準備完了が通知されると、オペレータは、マスター装置９のマスターアーム２および操作指示部７を用いて運転モードの変更指示とともに操作入力を行う（ステップＳ１４）。マスター装置９を介して入力された運転モードの変更指示および操作入力は、運転モード切り替え信号および操作入力信号として制御装置３に送信される。制御装置３では、受信部４０が運転モード切り替え信号および操作入力信号を受信すると、動作制御部４１が次工程におけるスレーブアーム１の運転モードを判定する（ステップＳ２８）。図３に示す動作シーケンス情報５１の例では、次の動作順＜４＞において運転モードが手動モードに設定されている。そこで、動作制御部４１は、運転モードが手動モードであると判定し、マスターアーム２から受信した操作入力信号に基づく制御指示（手動モード）をスレーブアーム１に送信する。これにより、スレーブアーム１は、マスターアーム２の動作に追従して動作する。具体的には、スレーブアーム１は、マスターアーム２からの操作入力に従って図４の（ｆ）に示すように被組付対象に対してワークＢの組付を行う（ステップＳ３９）。被組付対象に対してワークＢの組付が完了すると、オペレータはマスター装置９の操作指示部７を操作して作業完了通知を入力する（ステップＳ１５）。そして、操作指示部７により入力された作業完了通知が制御装置３に送信される。
【００７８】
作業完了信号を制御装置３の受信部４０が受信すると、動作制御部４１が次工程におけるスレーブアーム１の運転モードを判定する（ステップＳ２９）。図３に示す動作シーケンス情報５１の例では、動作順＜５＞において運転モードが自動モードに設定されている。そこで、動作制御部４１は、運転モードが自動モードであると判定し、次工程となる動作順＜５＞の各ステップをスレーブアーム１が自動的に実施するように制御する。
【００７９】
具体的には、動作制御部４１からの制御指示（自動モード）に応じてスレーブアーム１は、ワークＡの組付完了位置より退避する（ステップＳ４０）。そして、スレーブアーム１は全作業完了位置に移動する（ステップＳ４１）。
【００８０】
以上のようにして、本発明の実施形態１の実施例１に係るロボットシステム１００は、一連の工程からなる作業に関する動作シーケンスを実施する。これにより、一連の工程からなる作業において、例えば、大まかな動作については、スレーブアーム１が自動モードによって行い、細かな動作等については、スレーブアーム１がオペレータからの操作入力に応じて動作する手動モードにより行うことができる。
【００８１】
上記したように、動作制御部４１による運転モードの判定は、受信部４０による、マスター装置９から送信された開始指示信号、操作入力信号、または作業完了信号の受信をトリガにして、動作シーケンス情報５１を参照して判定してもよい。あるいは、開始指示信号、操作入力信号、または作業完了信号内に、次工程で実施する運転モードを示す情報が含まれており、マスター装置９から送信されたこれらの信号内に含まれる運転モードを示す情報に基づき動作制御部４１が運転モードを判定する構成としてもよい。マスター装置９から送信された信号に基づき動作制御部４１が運転モードを判定する構成の場合、記憶装置６に記憶された動作シーケンス情報５１において、運転モードに関する情報を含める必要がない。
【００８２】
（実施例２）
[継続許可判定・運転モード判定]
また、上記した実施例１では、動作制御部４１が運転モードを自動モードであると判定した工程では、該工程に含まれる全ステップをスレーブアーム１が自動モードにより動作する構成であった。しかしながら、この構成に限定されるものではなく、自動モードであると判定された工程であっても、スレーブアーム１の作業状況等に応じて自動モードによるスレーブアーム１の動作の継続を許可するか否か判定し、必要に応じて運転モードを、自動モードから変更できる構成としてもよい。
【００８３】
例えば、実施例１において図５に示すステップＳ３５でスレーブアーム１が自動モードにより組付完了位置から退避すると、スレーブアーム１は続けて自動モードにより図６に示す次のステップＳ３６の作業を実施するのではなく、このステップＳ３６の作業を引き続き自動モードにより実施してもよいか否かについて判定する構成となっていてもよい。換言すると、ステップＳ３５までスレーブアーム１が自動モードで動作し、ステップＳ３６以降のステップについては自動モードを継続させてよいか判定する構成となっていてもよい。なお、自動モードの継続の許可判定のタイミングは、上記したステップＳ３５の後に限定されるものではない。自動モードの継続の許可判定のタイミングは、スレーブアーム１によって実施するステップの内容に基づき、所定のステップを実施する前の位置で行われることが好適である。
【００８４】
なお、実施例１および実施例２で行う作業を上述したように塗装作業とする場合は、自動モードによりスレーブアーム１が動作する予定の工程を、例えば、自動モードによりスレーブアーム１がワークに対して塗装を行う予定となっている工程とすることができる。また、この工程において自動モードの継続許可判定のタイミングを、例えば、塗装面における所定位置まで自動モードによりスレーブアーム１により塗装させたときとすることができる。この場合、自動モードの継続許可判定の対象となるステップは、所定位置以降の塗装面に対してスレーブアーム１によって行われる塗装のステップとなる。
【００８５】
以下、図２および図７を参照して、スレーブアーム１が自動モードで動作する予定の工程において、該工程に含まれる所定のステップ以降のステップの実施に際して自動モードの継続の許可の判定をする構成を実施例２として説明する。
【００８６】
図７は、本発明の実施形態１の実施例２に係るロボットシステムの動作シーケンスの一例を示すフローチャートである。図７では、図３に示す動作順＜３＞の工程に含まれる複数のステップを例に挙げて実施例２に係るロボットシステムの動作について説明する。したがって、図７における、スレーブアーム１が実施するステップＳ２３５、Ｓ２３７〜Ｓ２３９は、図５、６における、スレーブアーム１が実施するステップＳ３５〜Ｓ３８に相当する。また、図７における、制御装置３が実施するステップＳ２２５は、図５における、制御装置３が実施するステップＳ２５に相当する。このため、これらのステップの詳細な説明については省略する。
【００８７】
まず、ステップＳ２２５において制御装置３の動作制御部４１が、スレーブアーム１が次に実施する予定の工程について、運転モードを判定する。図３に示す動作シーケンス情報５１の例では、次工程の動作順＜３＞において運転モードが自動モードに設定されている。そこで、動作制御部４１は、運転モードが自動モードであると判定する。そして、動作制御部４１は、制御指示（自動モード）をスレーブアーム１に送信することで、動作順＜３＞の各ステップを自動モードで実施させるようにスレーブアーム１を制御する。そして、動作制御部４１からの制御指示によって、スレーブアーム１は、自動的にワークＡの組付完了位置より退避する（ステップＳ２３５）。
【００８８】
次に、動作制御部４１は、状況情報取得部５により取得された状況情報に基づき、スレーブアーム１が組付完了位置より退避し所定の位置まで移動したことを検知する。そして、この検知後、動作制御部４１は、自動モードの継続を許可するか否かについての問い合わせを行うように出力制御部４２に指示する。この動作制御部４１からの指示に応じて、出力制御部４２は、出力装置４を制御して自動モードの継続を許可するか否かについての問い合わせを出力させる（ステップＳ２２６）。このとき、動作制御部４１は、自動モードによるスレーブアーム１の動作を一旦、停止させ、操作待ち状態として待機させる（ステップＳ２３６）。また、制御装置３の受信部４０は、マスター装置９から送信される操作入力信号の待ち状態となっている。
【００８９】
なお、図７において、スレーブアーム１のステップＳ２３５の後段から制御装置３のステップＳ２３６の前段に向かって伸びる破線の矢印は、スレーブアーム１が所定の位置まで移動したことを確認するために利用する状況情報を、制御装置３が受信することを表している。また、図７において、制御装置３のステップＳ２２６の後段からマスター装置９のステップＳ２１０の前段に向かって伸びる破線の矢印は、自動モードの継続を許可するか否かについての問い合わせを、オペレータが検知することを表している。
【００９０】
出力装置４によって自動モードの継続を許可するか否かについての問い合わせが通知されると、オペレータは、マスター装置９の操作指示部７を操作して、自動モードの継続を許可するか否かについての指示情報を入力する（ステップＳ２１０）。そして、操作指示部７を介して入力された指示情報は、操作入力信号として制御装置３に送信される。制御装置３では、受信部４０が操作入力信号を受信すると、継続判定部４６が、自動モードによるスレーブアーム１の動作の継続が許可されたか否か判定する（ステップＳ２２７）。そして、継続判定部４６は、その判定結果を動作制御部４１に通知する。動作制御部４１は、継続判定部４６から通知された判定結果に基づき、スレーブアーム１の運転モードを判定し（ステップＳ２２８）、該判定した運転モードで動作するようにスレーブアーム１を制御する。例えば、継続判定部４６から通知された判定結果が、自動モードの継続を許可するものである場合、動作制御部４１は、スレーブアーム１の運転モードを自動モードのままとし、制御指示を該スレーブアーム１に送信して、自動モードで継続して動作させるように制御する。
【００９１】
一方、継続判定部４６から通知された判定結果が、自動モードによるスレーブアーム１の動作の継続を許可しないものである場合、動作制御部４１は、スレーブアーム１の運転モードを手動モードまたは修正自動モードであると判定する。ここで、スレーブアーム１の運転モードを手動モードとする場合、動作制御部４１は、受信部４０によって受信したマスターアーム２からの操作入力信号に応じて手動モードにより動作するようにスレーブアーム１を制御する。あるいは、スレーブアーム１の運転モードを修正自動モードとする場合、動作制御部４１は、自動モードによるスレーブアーム１の動作の一部を、マスターアーム２からの操作入力信号により補正して動作するようにスレーブアーム１を制御する。
【００９２】
つまり、継続判定部４６から通知された判定結果が、自動モードの継続を許可する場合は、スレーブアーム１は、自動でワークＢの取り出し（ステップＳ２３７）、組付準備位置への移動（ステップＳ２３８）を実施し、次の工程についての操作待ち状態（ステップＳ２３９）となる。
【００９３】
一方、継続判定部４６から通知された判定結果が、自動モードの継続を許可しない場合は、スレーブアーム１は、例えば、手動モードまたは修正自動モードによりワークＢの取り出し（ステップＳ２３７）、組付準備位置への移動（ステップＳ２３８）を実施し、次の工程についての操作待ち状態（ステップＳ２３９）となる。あるいは、継続判定部４６から通知された判定結果が、自動モードによるスレーブアーム１の動作の継続を許可しない場合、スレーブアーム１はステップＳ２３７〜Ｓ２３９を実施せず、運転を停止した状態のままとしてもよい。
【００９４】
なお、図７では特に図示していないが、ステップＳ２２７において継続判定部４６が、自動モードの継続が許可されなかったと判定した場合、動作制御部４１は出力制御部４２に、次ステップ以降において実施する運転モードについて問い合わせるように指示する。そしてこの指示に応じて出力制御部４２は運転モードの問い合わせを出力させるように出力装置４を制御する構成としてもよい。また、制御装置３の受信部４０は、継続判定部４６が自動モードの継続が許可されなかったと判定されると、マスター装置９を介して入力される、運転モードを指定する情報を含む操作入力信号の入力待ち状態となる構成であってもよい。
【００９５】
実施例２では、自動モードの継続を許可するか否についてオペレータに問い合わせ、マスター装置９の操作指示部７を介して入力された操作入力信号に基づき継続判定部４６が自動モードの継続の可否について判定する構成について説明したがこの構成に限定されるものではない。自動モードの継続を許可するか否かについてオペレータに問い合わせることなく、状況情報取得部５によって取得した状況情報に基づき、継続判定部４６が自動モードの継続の可否について判定する構成であってもよい。
【００９６】
例えば、スレーブアーム１によって実施させる工程における各ステップの進捗状況に応じて、所定のステップを実施する前に継続判定部４６が自動モードの継続を許可するか否か判定する構成とすることができる。より具体的には、ロボットシステム１００は、状況情報取得部５として、スレーブアーム１により実施された各ステップの完了時刻を計測する計側部を備えているとする。そして、所定のステップ（図７の例ではワークＢの取出）を実施する前に、このステップの前のステップ（図７の例では組み付け位置より退避）が完了した時間と、予定されているこの前のステップの完了時間（この前のステップを処理するにあたりかかる標準時間）とを比較し、所定範囲以上のずれが生じている場合、継続判定部４６は、自動モードの継続を許可しないように判定する。逆に、組付け位置からの退避の完了時間と、予定されている組付け位置からの退避の完了時間（退避の完了までにかかる標準時間）とを比較して所定範囲内に収まる場合は、継続判定部４６は、自動モードの継続を許可する構成としてもよい。このように構成される場合、図７において制御装置３が実施するステップＳ２２６および、マスター装置９が実施するステップＳ２１０を省略することができる。なお、標準時間についての詳細は後述する。
【００９７】
また、例えば、状況情報取得部５として、作業空間内におけるスレーブアーム１の位置を把握するセンサを備えている場合、このセンサによって検知された結果に基づき継続判定部４５が自動モードの継続を許可するか否か判定する構成とすることもできる。より具体的には、上述のセンサの検知結果に基づき、ステップＳ２３５においてスレーブアーム１が所定範囲内に退避したか否か判定する。そして、スレーブアーム１が所定範囲内に退避していないと判定した場合は、継続判定部４６は、自動モードの継続を許可しない。一方、スレーブアーム１が所定範囲内に存在すると判定した場合は、継続判定部４６は、自動モードの継続を許可する構成としてもよい。
【００９８】
（実施形態２）
[操作入力信号を送信する優先順位を決定する構成]
上記した実施形態１、ならびに実施形態１の実施例１、２に係るロボットシステム１００では、作業空間内において１つのスレーブロボット１０が備えられている構成を例に挙げて説明した。しかしながら、作業空間内においてスレーブロボット１０が複数、備えられた構成とすることもできる。例えば、製造ラインなどにおいて、各工程にそれぞれスレーブロボット１０を備える場合などである。
【００９９】
以下、図８を参照して、実施形態２に係るロボットシステム１０１として、作業空間内に複数のスレーブロボット（第１スレーブロボット１０ａ、第２スレーブロボット１０ｂ、および第３スレーブロボット１０ｃ）が備えられ、これら第１〜第３スレーブロボット１０ａ〜１０ｃをオペレータがマスター装置９を介して操作する構成を説明する。なお、第１スレーブロボット１０ａ、第２スレーブロボット１０ｂ、および第３スレーブロボット１０ｃそれぞれを特に区別して示す必要がない場合は、単にスレーブロボット１０と称する。図８は、実施形態２に係るロボットシステム１０１の機能的構造の一例を示すブロック図である。
【０１００】
図８に示すように、実施形態２に係るロボットシステム１０１は、図１に示す実施形態１に係るロボットシステム１００の構成と比較して、複数のスレーブロボット１０（第１〜３スレーブロボット１０ａ〜１０ｃ）を備えている点で異なる。ただし、第１スレーブロボット１０ａ、第２スレーブロボット１０ｂ、および第３スレーブロボット１０ｃそれぞれは、図１に示す実施形態１に係るスレーブロボット１０と同様の構成を有するため、その説明は省略する。
【０１０１】
また、実施形態２に係るロボットシステム１０１は、管理制御装置２０を備えている点で、実施形態１に係るロボットシステム１００とは相違する。さらにまた、第１〜３スレーブロボット１０ａ〜１０ｃそれぞれは、マスター装置９、出力装置４、記憶装置６、または状況情報取得部５との通信を、該管理制御装置２０を介して行う点でも相違する。それ以外の構成については、実施形態２に係るロボットシステム１０１は、実施形態１に係るロボットシステム１００と同様の構成となるため同様な構成部材には同じ符号を付し、その説明は省略する。
【０１０２】
なお、図８に示すようにロボットシステム１０１では、３つのスレーブロボット１０を備える構成であるが、備えるスレーブロボット１０の数はこれに限定されるものではない。また、ロボットシステム１０１では、１つの状況情報取得部５を備える構成であるがこれに限定されるものではなく、状況情報取得部５は第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれに対応して設けられていてもよい。つまり、状況情報取得部５は、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれについての状況情報を取得できればよく、備える数は状況情報として取得すべき情報の種類等に応じて適宜、決められる。また、ロボットシステム１０１では、マスター装置９のオペレータが出力された情報を検知できる適切な位置に１つの出力装置４が設けられる構成であるが、備えられる出力装置４の数はこれに限定されるものではない。出力装置４は、出力する情報の種類ごとに設けられていてもよいし、第１〜３スレーブロボット１０ａ〜１０ｃごとに設けられていてもよい。
【０１０３】
管理制御装置２０は、第１〜３スレーブロボット１０ａ〜１０ｃそれぞれの動作を管理する。例えば、管理制御装置２０は、状況情報取得部５により取得した状況情報が第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれで実施されている作業の経過時間を示す情報である場合、該状況情報に基づき、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれによって実施されている作業の進捗状況を管理することができる。または第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが、所定のステップの作業が完了するとその完了を管理制御装置２０に通知するように構成されている場合、該通知に基づき、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれによって実施されるステップの進捗状況を管理することもできる。
【０１０４】
あるいは、状況情報取得部５により取得した状況情報が、作業空間内における第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれの位置を示す情報である場合、管理制御装置２０は、該状況情報に基づき、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれの現在位置を管理することもできる。
【０１０５】
さらには、管理制御装置２０は、状況情報取得部５により、作業空間内における第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれの位置および／または姿勢を示す情報を取得した場合、該情報に基づき、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれについて異常状態か否か判定し、その判定結果を管理することもできる。なお、管理制御装置２０による異常状態か否かの判定に関する構成の詳細については後述する。
【０１０６】
また、管理制御装置２０は、マスター装置９、出力装置４、状況情報取得部５、記憶装置６、および第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれの間でのインターフェースを司るものでもある。例えば、管理制御装置２０は、マスター装置９と、該マスター装置９を用いて操作すべきスレーブロボット１０とをリンクさせ、マスター装置９から受信した操作入力信号をリンク先のスレーブロボット１０に送信させる。あるいは、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれから受信した信号を出力装置４に送信し、該信号に基づく情報を出力させるように制御したり、状況情報取得部５により取得した状況情報を各第１〜第３スレーブロボット１０ａ〜１０ｃあるいは出力装置４に送信させたりする。また、スレーブロボット１０が記憶装置６に格納された動作シーケンス情報５１を読み出す場合、スレーブロボット１０は、管理制御装置２０を介して記憶装置６にアクセスできるように構成されていてもよい。
【０１０７】
ところで、複数のスレーブロボット１０が備えられているロボットシステム１０１において、複数のスレーブロボット１０それぞれから、マスター装置９を介したオペレータからの操作入力が要求される場面が想定される。例えば、実施例２に示すように第１〜３スレーブロボット１０ａ〜１０ｃそれぞれからオペレータに対して自動モードの継続許可についての問い合わせが行われる場面などである。このような場面では、オペレータは、第１〜第３スレーブロボット１０ａ〜１０ｃのうちどのスレーブロボット１０を優先して自動モードの継続の可否を入力すべきか判断に迷うこととなる。
【０１０８】
そこで、実施形態２に係るロボットシステム１０１では、第１〜３スレーブロボット１０ａ〜１０ｃそれぞれからオペレータに対して自動モードの継続許可についての問い合わせが行われる場合、管理制御装置２０は、第１〜３スレーブロボット１０ａ〜１０ｃそれぞれから上述した問い合わせがあった旨を出力するように出力装置４を制御する。さらに、操作入力信号の待ち状態にある第１〜３スレーブロボット１０ａ〜１０ｃの中で、マスター装置９から操作入力信号を送信させる優先順位を決定し、決定した優先順位も合わせて出力するように出力装置４を制御する。
【０１０９】
なお、管理制御装置２０は、例えば、第１〜第３スレーブロボット１０ａ〜１０ｃの中で全ての工程を終えるまでにかかる処理時間が長いものほど優先するように、操作入力信号を送信させる優先順位を決定してもよい。このように優先順位を決定する場合、ロボットシステム１０１は、以下の構成となる。すなわち、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが各工程における各ステップを実施する際にかかる標準的な処理時間である標準時間が予め設定されており、該標準時間に関する情報は記憶装置６に格納されている。また、状況情報取得部５によって第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれで実施されている作業の経過時間を計測している。
【０１１０】
そして、管理制御装置２０は、記憶装置６に記憶された標準時間に関する情報と、状況情報取得部５によって計測された作業の経過時間に基づき、操作入力信号の待ち状態にある第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれについて現時点での標準時間からの遅延時間を求める。さらに今後、実施される予定のステップについて、該ステップの標準時間を求める。そして、現段階での標準時間からの遅延時間と今後の実施される予定のステップで必要と予測される標準時間とから、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが全ステップを実施するにあたり最終的にかかると予測される処理時間を求める。そして、全ステップを実施するための処理時間が長くなるスレーブロボット１０ほど優先順位が上位となるように設定する。ここでもし、全ステップを実施するためにかかる処理時間が同じとなると判定された場合、現段階で標準時間から遅れた時間が大きいスレーブロボット１０の方を優先順位が上位となるように決めてもよい。
【０１１１】
より具体的には、自動モードの継続許可についての問い合わせが行われ、該問い合わせに対する操作入力信号の待ち状態に第１〜第３スレーブロボット１０ａ〜１０ｃがある場合、管理制御装置２０は以下のように優先順位を決定することができる。すなわち、管理制御装置２０は、状況情報取得部５から第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが図７に示すステップＳ２３６に至るまでに経過した実時間を取得する。また、管理制御装置２０は、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれがステップＳ２３６に至るまでに経過する時間の標準時間に関する情報を記憶装置６から取得する。そして、管理制御装置２０は、状況情報取得部５によって取得した実時間と記憶装置６から取得した標準時間とを比較し、第１〜第３スレーブロボット１０ａそれぞれについてステップＳ２３６に至る時点で標準時間からの遅延時間を求める。さらに、ステップＳ２３６以降において今後実施される予定のステップの処理時間（標準時間）を求め、遅延時間と今後実施される予定のステップの処理時間とから、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが全ステップを完了するまでにかかると予測される処理時間をそれぞれ求め、処理時間が長いものから順に優先順位が上位となるように決定する。
【０１１２】
そして、管理制御装置２０は、操作入力信号の待ち状態にある第１〜第３スレーブロボット１０ａ〜１０ｃに関する情報を出力装置４に出力させるとともに、マスター装置９から操作入力信号を送信させる優先順位も併せて出力させる。
【０１１３】
優先順位の決定方法は上述した方法に限定されるものではない。例えば、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが全ステップを実施するにあたり最終的にかかると予測される処理時間に応じて優先順位を決定するのではなく、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれの現時点における作業の遅延時間に応じて優先順位を決定する構成であってもよい。
【０１１４】
また、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが操作入力信号の待ち状態となるタイミングが一致する場合、作業の上流工程を担当するスレーブロボット１０の方が上位となるように優先順位を決定してもよい。
【０１１５】
また、第１〜第３スレーブロボット１０ａ〜１０ｃそれぞれが操作入力信号の待ち状態となるタイミングがバラバラの場合、操作入力信号の待ち状態となっている時間が長いものほど優先順位が上位となるように決定してもよい。
【０１１６】
上述したように、スレーブロボット１０が操作入力信号の待ち状態にある例として、スレーブロボット１０が、マスター装置９から送信される継続の可否を示す情報を含む操作入力信号を待っている状態を例示したが、これに限定されない。例えば、スレーブロボット１０の継続判定部４６が自動モードの継続が許可されなかったと判定した場合において、マスター装置９を介して入力される、運転モードを指定する情報を含む操作入力信号をスレーブロボット１０が待っている状態であってもよい。あるいは、手動モードでスレーブアーム１を動作させるためにマスター装置９を介してスレーブロボット１０に送信される操作入力信号をスレーブロボット１０が待っている状態であってもよい。つまり、オペレータから何らかの指示を受けるために、スレーブロボット１０が操作入力信号の待ち状態となっている様々な場面を含む。
【０１１７】
また、操作入力信号の待ち状態にあるスレーブロボット１０の中には、異常状態に陥ったため、該異常状態から正常な状態へ復帰させるべくマスター装置９からの操作入力信号を待っているスレーブロボット１０を含む場合がある。このような場合、管理制御装置２０は、操作入力信号の待ち状態にある第１〜３スレーブロボット１０ａ〜１０ｃのうち、異常状態にあるスレーブロボット１０を優先して操作入力信号を送信するように優先順位を決定してもよい。
【０１１８】
なお、スレーブロボット１０が異常状態にあるか否かについて、例えば、管理制御装置２０は、以下のようにして把握することができる。すなわち、管理制御装置２０は、状況情報取得部５によって取得した例えば、現時点での作業空間内におけるスレーブアーム１の位置および／または姿勢を示す情報と、予め記憶装置６に記憶した現時点において予定されている該スレーブアーム１の位置および／または姿勢に関する情報とから第１〜３スレーブロボット１０ａ〜１０ｃが異常状態にあるか否か把握することができる。例えば、スレーブアーム１が予定されている軌道上に無い、または予定されている軌道上から所定範囲以上ずれている場合、管理制御装置２０は、スレーブロボット１０は異常状態にあると判定することができる。
【０１１９】
また、管理制御装置２０は、例えば、スレーブロボット１０から異常に起因して停止したことを示す異常停止信号などを受信することで、該スレーブロボット１０が異常状態に陥っていることを把握することもできる。
【０１２０】
上記説明から、当業者にとっては、本発明の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造および／または機能の詳細を実質的に変更できる。
【産業上の利用可能性】
【０１２１】
以上のように、本発明に係るロボットシステム１００は、複数のスレーブロボットをするシステムにおいて広く適用することができる。
【符号の説明】
【０１２２】
１    スレーブアーム
２    マスターアーム
３    制御装置
４    出力装置
５    状況情報取得部
６    記憶装置
７    操作指示部
９    マスター装置
１０    スレーブロボット
１０ａ  第１スレーブロボット
１０ｂ  第２スレーブロボット
１０ｃ  第３スレーブロボット
２０    管理制御装置
４０    受信部
４１    動作制御部
４２    出力制御部
４５    位置判定部
４６    継続判定部
５１    動作シーケンス情報
１００    ロボットシステム
１０１    ロボットシステム
【図１】
2017033364.tif 000003
【図２】
2017033364.tif 000004
【図３】
2017033364.tif 000005
【図４】
2017033364.tif 000006
【図５】
2017033364.tif 000007
【図６】
2017033364.tif 000008
【図７】
2017033364.tif 000009
【図８】
2017033364.tif 000010
【国際調査報告】
2017033364.tif 000011
2017033364.tif 000012