(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-29
(45)【発行日】2024-12-09
(54)【発明の名称】サーバ、その制御方法及びプログラム並びにシステム
(51)【国際特許分類】
B25J 13/06 20060101AFI20241202BHJP
【FI】
B25J13/06
(21)【出願番号】P 2020172092
(22)【出願日】2020-10-12
【審査請求日】2023-09-04
(73)【特許権者】
【識別番号】315014671
【氏名又は名称】東京ロボティクス株式会社
(74)【代理人】
【識別番号】100098899
【氏名又は名称】飯塚 信市
(74)【代理人】
【識別番号】100163865
【氏名又は名称】飯塚 健
(72)【発明者】
【氏名】坂本 義弘
(72)【発明者】
【氏名】川西 亮輔
【審査官】松浦 陽
(56)【参考文献】
【文献】特開2014-048685(JP,A)
【文献】特開2019-016134(JP,A)
【文献】特開2020-095296(JP,A)
【文献】特開2003-193342(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
G05B 19/418
(57)【特許請求の範囲】
【請求項1】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバであって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備え、
前記優先順位決定部は、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出部を備え、
前記サーバは、さらに、
前記サポート要請と前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出部を備え、
前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、サーバ。
【請求項2】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバであって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備え、
前記優先順位決定部は、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出部を備え、
前記サーバは、さらに、
各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶部と、
前記サポート要請と、当該サポート要請に対する前記サポート権限を有する前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出部と、を備え、
前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、サーバ。
【請求項3】
いずれの前記所要時間も前記ロボットシステムを運用することにより計測された実測値に基づいて決定されるものである、請求項1又は2のいずれか1項に記載のサーバ。
【請求項4】
前記サーバは、さらに、
各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶部を備え、
前記情報提供部は、前記サポート権限に基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、請求項1に記載のサーバ。
【請求項5】
前記オペレータ端末は、
接続された前記ロボットシステムの一覧を表示する、一覧表示部と、
前記サポート要請に関する情報に基づいて、前記サポート要請を行っている前記ロボットシステムを強調表示する、強調表示部と、を備える、請求項1又は2のいずれか1項に記載のサーバ。
【請求項6】
前記オペレータ端末は、さらに、
前記優先順位に関する情報に基づいて、前記サポート要請を行っている前記ロボットシステムを前記優先順位でソート表示する、ソート表示部を備える、請求項5に記載のサーバ。
【請求項7】
前記サーバは、さらに、
前記オペレータ端末のオペレータ毎に設定された前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を含む、アカウント情報を管理する、アカウント情報管理部を備え、
前記オペレータ端末は、さらに、
前記オペレータ端末を利用するオペレータに対して前記アカウント情報との照合を提供するログイン処理を提供する、ログイン処理部と、を備える、請求項1又は2のいずれか1項に記載のサーバ。
【請求項8】
前記オペレータ端末は、さらに、
前記サポート要請を行っている前記ロボットシステムのうち、ログイン処理を行った前記オペレータが前記サポート権限を有する前記ロボットシステムを他のロボットシステムと区別可能に表示する、権限別表示部を備える、請求項7に記載のサーバ。
【請求項9】
前記ロボットシステムは、移動マニピュレータを含む、請求項1~8のいずれか1項に記載のサーバ。
【請求項10】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、前記ロボットシステム及び前記オペレータ端末と接続されたサーバと、から成るシステムであって、
前記サーバは、
前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備え、
前記優先順位決定部は、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出部を備え、
前記サーバは、さらに、
前記サポート要請と前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出部を備え、
前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、システム。
【請求項11】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、前記ロボットシステム及び前記オペレータ端末と接続されたサーバと、から成るシステムであって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備え、
前記優先順位決定部は、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出部を備え、
前記サーバは、さらに、
各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶部と、
前記サポート要請と、当該サポート要請に対する前記サポート権限を有する前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出部と、を備え、
前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、システム。
【請求項12】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御方法であって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、を備え、
前記優先順位決定ステップは、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出ステップを備え、
前記制御方法は、さらに、
前記サポート要請と前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出ステップを備え、
前記情報提供ステップにおいて、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、制御方法。
【請求項13】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御方法であって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、を備え、
前記優先順位決定ステップは、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出ステップを備え、
前記制御方法は、さらに、
各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶ステップと、
前記サポート要請と、当該サポート要請に対する前記サポート権限を有する前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出ステップと、を備え、
前記情報提供ステップは、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、制御方法。
【請求項14】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御プログラムであって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、を備え、
前記優先順位決定ステップは、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出ステップを備え、
前記制御プログラムは、さらに、
前記サポート要請と前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出ステップを備え、
前記情報提供ステップにおいて、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、制御プログラム。
【請求項15】
所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御プログラムであって、
前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、
複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、
前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、を備え、
前記優先順位決定ステップは、さらに、
前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出ステップを備え、
前記制御
プログラムは、さらに、
各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶ステップと、
前記サポート要請と、当該サポート要請に対する前記サポート権限を有する前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値の総和を算出する、総和算出ステップと、を備え、
前記情報提供ステップは、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、オペレータによる遠隔操作等を伴う半自律ロボットシステムに関する。
【背景技術】
【0002】
生産現場や物流倉庫等において、ロボットを用いた自動化が推進されている。
【0003】
この種の自動化システムにおいては、本来全てのロボットが自律的に動作することが望ましい。しかしながら、ハードウェア的な制約や想定外の事態への対応等により、現実には、すべての動作を自律的に行わせることは困難である。
【0004】
そこで、近年、大部分の動作を自動化しつつも、ロボットが対応できない場面のみ、オペレータが遠隔操作によりロボットの動作に一時的に介入して、ロボット動作をサポートする半自律システムが検討されている。
【0005】
例えば、文献1には、タスク実行に失敗した場合に、自律制御から手動制御にロボットの制御を切り替えるロボットの制御方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従前のこの種の技術において、オペレータによるサポートが行われる場合、オペレータとロボットとは1対1の関係を前提としており、オペレータとロボットとの関係が1:N又はM:Nの関係(N及びMは2以上の自然数)の場合については十分な検討がなされていなかった。そのため、複数のロボットから同時に複数のサポート要請がなされた場合等には、オペレータによるロボットのサポートが困難となる虞があった。
【0008】
本発明は上述の技術的背景に鑑みてなされたものであり、その目的は、ロボットから複数のサポート要請がなされる場合であっても、オペレータが容易にサポート要請に対処することができる技術を提供することにある。
【課題を解決するための手段】
【0009】
上述の技術的課題は、以下の構成を有するサーバ等により解決することができる。
【0010】
すなわち、本発明に係るサーバは、所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバであって、前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備えている。
【0011】
このような構成によれば、半自律的にタスクを実行するロボットシステムから複数のサポート要請を受信した場合であっても、サポート要請に対して優先順位を決定することができるので、オペレータは複数のサポート要請に対して容易に対処することができる。なお、ここで、サポートとは、半自律ロボットに対して目標動作の実行補助を目的として操作や指示等を行うことを意味する。また、サポート要請とは、そのような補助をオペレータに対して要求する情報を意味する。
【0012】
前記優先順位決定部は、さらに、前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値である第1の合計値を算出する、所要時間算出部と、前記第1の合計値が大きい程、前記優先順位が高くなるよう優先順位を決定する、所要時間ベース優先順位決定部と、を備えてもよい。
【0013】
このような構成によれば、オペレータは、工程全体への影響の大きいタスクから対処することができる。
【0014】
前記優先順位決定部は、さらに、前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値に、実行中のタスクの残りの所要時間を加えた第2の合計値を算出する、第2の所要時間算出部と、前記第2の合計値が大きい程、前記優先順位が高くなるよう優先順位を決定する、第2の所要時間ベース優先順位決定部と、を備えてもよい。
【0015】
このような構成によれば、オペレータは、工程全体への影響の大きいタスクから対処することができる。また、実行中のタスクの残りの所要時間も加味するので、実行時間の大きいタスク等が存在する場合には、より精緻に優先順位を決定することができる。
【0016】
前記優先順位決定部は、さらに、前記サポート要請を行った前記ロボットシステム毎に、当該ロボットシステムが実行するタスクの後続のタスクの所要時間の合計値に、実行中のタスクの残りの所要時間と、必要なサポート動作の所要時間と、を加えた第3の合計値を算出する、第3の所要時間算出部と、前記第3の合計値が大きい程、前記優先順位が高くなるよう優先順位を決定する、第3の所要時間ベース優先順位決定部と、を備えてもよい。
【0017】
このような構成によれば、オペレータは、工程全体への影響の大きいタスクから対処することができる。また、実行中のタスクの残りの所要時間と必要なサポート動作の所要時間も加味するので、実行時間の大きいタスクやサポートに時間を要するタスク等が存在する場合には、より精緻に優先順位を決定することができる。
【0018】
いずれの前記所要時間も前記ロボットシステムを運用することにより計測された実測値に基づいて決定されるものであってもよい。
【0019】
このような構成によれば、所要時間を実測値に基づいて正確に見積もることができる。
【0020】
前記サーバは、さらに、各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶部を備え、前記情報提供部は、前記サポート権限に基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、ものであってもよい。
【0021】
このような構成によれば、サポート権限の有無に基づき、オペレータ端末に対してサポート要請を効率よく割り当てることができる。
【0022】
前記サーバは、さらに、前記サポート要請と前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値、前記第2の合計値又は前記第3の合計値の総和を算出する、総和算出部を備え、前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、ものであってもよい。
【0023】
このような構成によれば、システム全体として最適化を図ることができ、工程全体のダウンタイムを最小化することができる。
【0024】
前記サーバは、さらに、各前記オペレータ端末に対応するオペレータ毎に、前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を記憶する、サポート権限記憶部を備え、前記サポート要請と、当該サポート要請に対する前記サポート権限を有する前記オペレータ端末に対応するオペレータとの各組み合わせについて、前記第1の合計値、前記第2の合計値又は前記第3の合計値の総和を算出する、総和算出部を備え、前記情報提供部は、さらに、前記総和が最小となる組み合わせに基づいて、前記オペレータ端末へと前記サポート要請に関する情報を提供する、ものであってもよい。
【0025】
このような構成によれば、ロボットシステムやオペレータの数が大きくなる場合であっても、組み合わせ爆発を防止しつつ、システム全体として最適化を図ることができ、工程全体のダウンタイムを最小化することができる。
【0026】
前記優先順位は、前記ロボットシステムからサポート要請を受信した時刻が古い程高くなるよう決定される、ものであってもよい。
【0027】
このような構成によれば、時系列順の対処が適するシステムにおいて、適切に優先順位を決定することができる。
【0028】
前記サーバは、前記ロボットシステム、前記タスク及び/又は前記タスクの一部を構成する動作について予め定められた優先度情報を記憶した、優先度情報記憶部を備え、前記優先順位は、前記優先度情報に基づいて決定される、ものであってもよい。
【0029】
このような構成によれば、運用に際して重視したい又は重視しないタスク等を予め設定することができる。
【0030】
前記オペレータ端末は、接続された前記ロボットシステムの一覧を表示する、一覧表示部と、前記サポート要請に関する情報に基づいて、前記サポート要請を行っている前記ロボットシステムを強調表示する、強調表示部と、を備えるものであってもよい。
【0031】
このような構成によれば、サポート要請を行っているロボットシステムを即座に把握することができる。
【0032】
前記オペレータ端末は、さらに、前記優先順位に関する情報に基づいて、前記サポート要請を行っている前記ロボットシステムを前記優先順位でソート表示する、ソート表示部を備える、ものであってもよい。
【0033】
このような構成によれば、ソート表示により、サポートすべきロボットシステムを直感的に把握することができる。
【0034】
前記サーバは、さらに、前記オペレータ端末のオペレータ毎に設定された前記ロボットシステム、前記タスク及び/又は前記タスクを構成する一部の動作に対するサポート権限を含む、アカウント情報を管理する、アカウント情報管理部を備え、前記オペレータ端末は、さらに、前記オペレータ端末を利用するオペレータに対して前記アカウント情報との照合を提供するログイン処理を提供する、ログイン処理部と、を備えるものであってもよい。
【0035】
このような構成によれば、同一のオペレータ端末を異なるオペレータが自己のアカウントで利用することができる。
【0036】
前記オペレータ端末は、さらに、前記サポート要請を行っている前記ロボットシステムのうち、ログイン処理を行った前記オペレータが前記サポート権限を有する前記ロボットシステムを他のロボットシステムと区別可能に表示する、権限別表示部を備える、ものであってもよい。
【0037】
このような構成によれば、ログインしたオペレータが、サポート権限に基づいて、自己がサポート可能なロボットシステムを即座に把握することができる。
【0038】
前記ロボットシステムは、移動マニピュレータを含む、ものであってもよい。
【0039】
このような構成によれば、半自律的にタスクを実行する移動マニピュレータから複数のサポート要請を受信した場合であっても、サポート要請に対して優先順位を決定することができるので、オペレータ端末の操作者であるオペレータは複数のサポート要請に対して容易に対処することができる。
【0040】
本発明はシステムとしても観念することができる。すなわち、本発明に係るシステムは、所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、前記ロボットシステム及び前記オペレータ端末と接続されたサーバと、から成るシステムであって、前記サーバは、前記ロボットシステムからサポート要請を受信する、サポート要請受信部と、複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定部と、前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供部と、を備えている。
【0041】
本発明は方法としても観念することができる。すなわち、本発明に係る方法は、所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御方法であって、前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、
を備えている。
【0042】
本発明はコンピュータプログラムとしても観念することができる。すなわち、本発明に係るプログラムは、所定のタスクを半自律的に実行する複数のロボットシステムと、1又は複数のオペレータ端末と、接続されたサーバの制御プログラムであって、前記ロボットシステムからサポート要請を受信する、サポート要請受信ステップと、複数の前記サポート要請を受信した場合、前記サポート要請の優先順位を決定する、優先順位決定ステップと、前記オペレータ端末へと、前記サポート要請に関する情報と前記優先順位に関する情報を提供する、情報提供ステップと、を備えている。
【発明の効果】
【0043】
本発明によれば、半自律的にタスクを実行するロボットシステムから複数のサポート要請を受信した場合であっても、オペレータが複数のサポート要請に対して容易に対処することができるシステム等を提供することができる。
【図面の簡単な説明】
【0044】
【
図3】
図3は、ロボットシステムIDとタスクとの対応関係について示すテーブルである。
【
図4】
図4は、タスクと、タスクを構成する単位動作であるアクション、及び各アクションの所要時間との対応関係について示すテーブルである。
【
図5】
図5は、オペレータIDと、オペレータに付与されている権限との対応関係を示すテーブルである。
【
図6】
図6は、ロボットシステムの動作について説明するフローチャートである。
【
図7】
図7は、管理サーバの情報収集動作に関するフローチャートである。
【
図8】
図8は、オペレータ用システムへと情報提供を行う処理に関するフローチャートである。
【
図9】
図9は、優先順位決定処理の詳細動作に関するフローチャートである。
【
図10】
図10は、一連のタスクに係るアローダイアグラムである。
【
図12】
図12は、サポート処理に関する動作フローチャートである。
【発明を実施するための形態】
【0045】
以下、本発明の好適な実施の形態について添付の図を参照しつつ詳細に説明する。
【0046】
(1.第1の実施形態)
第1の実施形態として、本発明を、一連のタスク、すなわち、物品選り分けの後に箱詰め・テープ閉じ等を行うタスクをそれぞれ実行する複数のロボットシステムを含む、物流倉庫内システムへと適用する例について説明する。
【0047】
なお、本実施形態において、ロボットシステムは、物流倉庫システムへと適用されるもののそのような適用例に限定されず、他の様々な場面、例えば工場等にも適用可能である。また、本実施形態において、ロボットシステムは、ロボットアームを備えるものとして説明するが、ロボットアームの他、様々なハードウェアを採用し得る。なお、ロボットシステムは固定されている必要はなく、例えば、移動マニピュレータ等を採用することもできる。また、ロボットシステムのタスクとしては上述のものに限定されるものではなく、他の様々なタスクにも適用可能である。
【0048】
(1.1 システムの構成)
図1は、本実施形態に係るシステム200の全体構成図である。同図から明らかな通り、システム200は、複数のロボットシステム1、管理サーバ3及びオペレータ用システム5を備えており、それらは互いにLAN(ローカル・エリア・ネットワーク)を介して有線又は無線により接続されている。なお、本実施形態においては、各装置間はLANにより接続されるものとして説明するが、インターネットを介して接続してもよい。
【0049】
各ロボットシステム1は、後述の種々の情報処理を行うロボット側情報処理装置11と、ロボット側情報処理装置11と接続されたセンサ15と、ロボット側情報処理装置11と接続された多関節ロボットアーム17とから構成されている。
【0050】
なお、本実施形態において、ロボット側情報処理装置11とセンサ15とロボットアーム17とは物理的には離間して配置されつつも一のシステムを構成するものとして説明するものの、その一部又は全部を一体に構成してもよい。
【0051】
ロボット側情報処理装置11は、CPU等から成り種々のプログラムを実行する制御部と、ROMやRAM、ハードディスク等から成る記憶部とを備えている。
【0052】
センサ15は、認識の基礎となる画像情報を取得する環境に固定された3次元カメラであり、例えば、物品選り分けタスクを行う場合には対象となる多数の製品等のワークが入っている箱の中を撮像し、箱詰めタスクを行う場合にはコンベヤ上のワークを撮像する。センサから取得された情報は、ロボット側情報処理装置11へと送信される。
【0053】
このようにセンサ15である3次元カメラが環境中に固定され、後述するように、認識と遠隔操作の両方に共用される構成によれば、同一の視点を利用できるため、構成が簡潔となると共にコスト的に有利となる。なお、センサ15の取り付け方法はこのように環境中に固定する例に限定されず、ロボットアーム17等に取り付けられるハンドアイカメラを利用したり、既設の監視カメラを流用すること等してもよい。
【0054】
多関節ロボットアーム17は、先端にグリッパを有し、自在に動作することができる。例えば、物品選り分けタスクを行う場合には、ワークを挟持してベルトコンベア等の上に載置する動作を行う。また、箱詰め・テープ閉じタスクにおいては、ベルトコンベヤ上に載置されたワークの把持と移動、テープ閉じ動作等を行う。
【0055】
管理サーバ3は、後述のように、ロボットシステム1に関する情報とオペレータ用システム5に関する情報を適宜に収集する。また、必要に応じて種々の情報をロボットシステム1及びオペレータ用システム5へと提供する。
【0056】
オペレータ用システム5は、オペレータ側情報処理装置51、表示装置52及びハプティック入力装置53を備えている。オペレータ側情報処理装置51は、オペレータ用システム5の全体制御を行う情報処理装置であり、例えば、PC(パーソナルコンピュータ)である。表示装置52は、ディスプレイ装置であり、後述するように、サポート要請を発したロボットシステム1の一覧等を表示する。
【0057】
ハプティック入力装置53は、各関節につき角度センサが設けられており、ロボットアーム17の手先の6軸姿勢とグリッパの開閉を制御することができる。ハプティック入力装置53は、後述するように、オペレータにより操作され、サポート要請に応じてロボットアーム17のタスク実行をサポートする。なお、ハプティック入力装置53は、ロボットアーム17に備えられたセンサに基づいて、力フィードバックがなされるものであってもよい。
【0058】
表示装置や入力装置は、本実施形態の例に限定されず、既知の様々な装置を利用することができる。例えば、表示装置はヘッドマウントディスプレイであってもよいし、入力装置は、スティックレバーを用いた入力装置やキーボード等であってもよい。
【0059】
また、本実施形態において、オペレータ側情報処理装置51と表示装置52とハプティック入力装置53とは物理的には離間して配置されつつも一のシステムを構成するものとして説明するものの、その一部又は全部を一体に構成してもよい。
【0060】
図2は、システム200の機能ブロック図である。同図から明らかな通り、ロボットシステム1は、それぞれの送受信部を介して管理サーバ3及びオペレータ用システム5と情報の授受を行う。
【0061】
ロボットシステム1は、ロボット側情報処理装置11と、センサ15と、ロボットアーム17とから構成されている。
【0062】
ロボット側情報処理装置11は、センサ15における検出情報を取得するセンサ情報取得部111と、センサ情報に基づいて所定の認識処理を行う認識処理部112とを備えている。認識処理部112による認識結果は、判定部114へと提供される。判定部114は、認識結果に基づいて後述のサポート要請を行うべきか否かを判定し、動作生成部118へと判定結果を提供する。動作生成部118と動作指令部119は、ロボットアーム17に対して動作指令を行う。
【0063】
サポート処理実行部121は、送受信部127を介してサポート情報を受信すると、サポート情報に応じた種々のサポート処理を実行する。例えば、ロボットアーム17の動作制御等を行う。
【0064】
管理サーバ3は、サポート要請検出部32と情報取得処理部33とを備えている。サポート要請検出部32は、ロボットシステム1から送信されたサポート要請を検出する。また、優先順位決定処理部35は、サポート要請を複数受信した場合には、サポート要請について優先順位を決定する。情報提供処理部36は、送受信部を介して、サポート要請に関する情報や優先順位に関する情報をオペレータ用システム5へと送信する。
【0065】
情報取得処理部33は、ロボットシステム1及びオペレータ用システム5のステータス情報等を取得する。取得された情報は、記憶処理部38により図示しない記憶部へと記憶される。また、リスト制御部37は、ステータス情報等に基づき、後述の所定のリスト情報を管理する。
【0066】
次に、予め管理サーバ3に設定情報として記憶されているテーブル情報について説明する。なお、以下では、テーブル情報は予め記憶されているものとして記載しているものの、本発明はそのような構成に限定されず、運用中にオペレータ用システム5等を介して設定されてもよい。
【0067】
図3は、管理サーバ3の記憶部へと予め記憶された、ロボットシステムIDとタスクとの対応関係について示すテーブルである。同図から明らかな通り、各ロボットシステム1には「robot01」、「robot02」のように識別情報が付与されており、当該識別情報に対応して実行すべきタスクの識別情報が、例えば「TASK_A」(タスクA)、「TASK_B」(タスクB)のように付与されている。すなわち、このようなテーブルに基づき「robot01」が「TASK_A」を実行するよう設定されている。
【0068】
図4は、管理サーバ3の記憶部へと予め記憶された、タスクと、タスクを構成する単位動作であるアクション、及び各アクションの所要時間([s])との対応関係について示すテーブルである。同図から明らかな通り、「TASK_A」は、「ACTION_01」から「ACTION_07」までの7つのアクションで構成されており、各アクションには、同図で示される所要時間が対応付けられている。
【0069】
図5は、管理サーバ3の記憶部へと予め記憶された、オペレータの識別情報であるオペレータIDと、オペレータに付与されている権限との対応関係を示すテーブルである。同図から明らかな通り、オペレータID「Sakamoto」には、「TASK_A」と「TASK_B」の2つのアクションに対するサポート権限が付与されている。また、オペレータID「Kawanishi」には、「TASK_B」に対するサポート権限のみが付与されている。ただし、「Sakamoto」には、「robot03」についてはサポート権限が付与されていない。
【0070】
なお、本実施形態においてサポート権限は、タスクとロボットIDの単位で定義されているものの、他の方法で定義されてもよい。従って、例えば、アクション単位等、他の手段によりサポート権限を定義してもよい。
【0071】
また、本実施形態におけるシステム構成は例示であって、ネットワークに接続される各装置の数や構成は自在に変更可能である。
【0072】
(1.2 システムの動作)
次に、システム200の動作について説明する。
【0073】
図6は、ロボットシステム1の動作について説明するフローチャートである。概して言えば、ロボットシステム1は、半自律的に目標動作やタスクを実行しつつ、適切な認識ができない場合や目標動作に失敗した場合に、管理サーバ3へとサポート要請を送信する。
【0074】
同図から明らかな通り、処理が開始すると、センサ情報取得部111は、センサ15からのセンサ検出情報、本実施形態においては箱の中やコンベヤ上を撮影することにより得られた画像情報を取得する(S1)。認識処理部112は、センサ情報に基づいて、ロボットアーム17による把持の対象となるワーク等を認識する処理を行う(S2)。なお、本実施形態においては、画像情報に基づいて認識を行うものとして説明するが、本発明はこのような構成に限定されない。従って、例えば、画像に代えて、又は画像と共に3次元カメラにて取得された3次元情報を利用するような構成としてもよい。
【0075】
この認識処理の後、判定部114は、サポートの必要性について判定する処理を行う(S4)。より詳細には、判定部114は、認識部112による認識が正常に行われた場合、例えば、十分な認識精度にて把持対象となるワークを認識することができた場合には、サポートが不要と判定し、一方、認識が正常に行われなかった場合にはサポートが必要と判定する。
【0076】
なお、本実施形態においては、正常な認識が出来るか否かによりサポートの必要性について判定を行うものとしたが、本発明はこのような構成に限定されず、種々の判定方法が採用可能である。例えば、把持対象物に対する把持解が算出できるか否かといった基準に基づいて判定処理を行ってもよい。
【0077】
判定処理の結果、認識処理が正常に行われてサポートが不要と判定された場合には(S4NO)、動作生成部118により目標動作が生成される(S6)。目標動作とは、ロボットシステム1に対して設定されたタスク動作等のロボットシステム1が実行を期待される動作である。その後、動作指令部119は、生成された目標動作を実行するようロボットアーム17に対して動作指令を行い目標動作を実行する(S7)。
【0078】
この動作の後、センサ15情報に基づいて、目標動作に成功したか否かを評価する処理が行われる(S8)。この評価処理の結果、目標動作に成功したと判定された場合(S8YES)、終了判定を行い(S9)、所定の終了信号等が検出される場合には(S9YES)、処理は終了する。一方、終了信号が検出されない場合には、再度センサ情報の取得処理(S1)から一連の処理が再度繰り返される(S9NO)。なお、目標動作に失敗したと判定された場合(S8NO)、後述のサポート要請の送信処理が行われる(S11)。
【0079】
なお、サポートとは、半自律ロボットに対して目標動作の実行補助を目的として操作や指示等を行うことを意味する。また、サポート要請とは、そのような補助をオペレータに対して要求する情報を意味する。なお、本実施形態において、ロボットシステム1からのサポート要請をアラートと称することがある。
【0080】
サポートが必要と判定された場合(S4YES)又は目標動作に失敗した場合(S8NO)、管理サーバ3へとサポート要請の送信処理が行われる(S11)。その後、ロボット側情報処理装置11は、サポート情報を受信するまで待機状態となる(S12NO)。
【0081】
この状態においてサポート情報を受信すると(S12YES)、サポート処理実行部121は、サポート情報に応じたサポートの実行処理を行う(S14)。その後、所定の終了判定を行い、終了信号が検出されない場合、再び受信待機状態(S15NO)となり一連の処理が繰り返される。一方、終了信号が検出された場合(S15YES)、上述の終了判定処理(S9)が行われる。
【0082】
図7は、ロボットシステム1とオペレータ用システム5から様々な情報を取得する管理サーバ3の情報収集動作に関するフローチャートである。同図から明らかな通り、処理が開始すると、情報取得処理部33は、ロボットシステム1のステータス情報(S21)、サポート要請(S31)、サポート完了信号(S41)及びオペレータ情報(S51)の4つの情報を取得する処理を平行して実行し、それぞれの処理は、該当する情報を取得するまでそれぞれ待機状態となる(S22NO、S32NO、S42NO、S52NO)。
【0083】
ロボットシステム1のステータス情報は、ロボットシステム1の現在の動作状態を表す情報であり、例えば、実行中のタスク、アクション、動作開始からの経過時間、ロボットアーム17の関節角度情報、センサ15により検出されたセンサ情報等の情報を含む。サポート要請は、上述の処理によりロボットシステム1から送信されたオペレータによるサポートを求める情報であり、例えば、サポート要請を行ったロボットシステム1のID、サポート要請が生成された時刻等の情報を含む。
【0084】
サポート完了信号は、オペレータによるサポートが完了した時にオペレータ用システム5から送信される情報であり、例えば、サポート完了時刻等を含む。オペレータ情報は、オペレータ側情報処理装置51へとログインすること等により対応付けられたオペレータに関する情報であり、例えば、オペレータID等の情報を含むものである。なお、ログイン処理は、管理サーバ3により記憶されたアカウント情報との照合を行うことにより行われる。
【0085】
このように、本実施形態においては、オペレータ用システム5は、ログインによりオペレータと関連付けられるので、同一のオペレータ用システム5を異なるオペレータが共用することができる。
【0086】
記憶処理部38は、ロボットシステム1からステータス情報を受信すると(S22YES)、ステータス情報を記憶する処理を行い(S23)、再び待機状態となる。
【0087】
リスト制御部37は、ロボットシステム1からサポート要請を受信すると(S32YES)、サポート要請を行ったロボットシステム1のID情報を所定のサポート要請リストへと追加する処理を行う(S33)。また、このとき、記憶処理部38によりサポート要請を行ったロボットシステム1のID情報が記憶部へと記憶される。その後、再び待機状態となる。
【0088】
また、リスト制御部37は、サポート完了信号を受信すると(S42YES)、サポートが完了したロボットシステム1のID情報を所定のサポート要請リストから削除する処理を行う(S43)。また、このとき、記憶処理部38によりサポート要請を行ったロボットシステム1のID情報が記憶部から消去される。その後、再び待機状態となる。
【0089】
さらに、記憶処理部38は、オペレータ用システム5からオペレータ情報を受信すると(S52YES)、オペレータ情報を記憶する処理を行い(S53)、再び待機状態となる。
【0090】
すなわち、管理サーバ3は、ロボットシステム1とオペレータ用システム5から送信される様々な情報を収集・取得して記憶・管理を行っている。
【0091】
図8は、オペレータ用システム5へと情報提供を行う処理に関するフローチャートである。同図左側のフローチャートは、オペレータ用システム5の動作を示し、同図右側のフローチャートは、管理サーバ3の動作を示している。
【0092】
同図から明らかな通り、処理が開始すると、オペレータ側情報処理装置51の表示処理部57は、管理サーバ3へと表示リクエストを行う(S61)。この表示リクエストの後、オペレータ側情報処理装置51は所定の情報の待機状態となる(S62NO)。所定の情報を受信した場合には(S62YES)、当該情報に応じた表示処理を表示部52へと行う(S64)。その後は、一連の処理は再び繰り返される(S61~S64)。すなわち、オペレータ側情報処理装置51は、常に更新表示処理を行っている。
【0093】
表示リクエストを受信するまで待機状態(S71NO)にあった管理サーバ3のサポート要請検出部32は、オペレータ側情報処理装置51から表示リクエストを受信すると(S71YES)、サポート要請リストから受信時点においてサポート要請が行われているロボットシステム1を検出する処理を行う(S72)。
【0094】
この検出処理の結果、サポート要請が1個の場合(S73NO)、情報提供処理部36は、オペレータ用システム5に対して、当該サポート要請をオペレータ用システム5へと提示するための情報を提供する処理を行う(S75)。なお、この提供される情報には、管理サーバ3により収集されるあらゆる情報が含まれ得る。
【0095】
一方、サポート要請が複数存在する場合(S73YES)、優先順位決定処理部35は、サポート要請間の優先順位を決定する処理(S76)を行い、この処理の後、優先順位と共に所定の情報提供処理を行う(S78)。なお、この提供される情報には、管理サーバ3により収集されるあらゆる情報が含まれ得る。
【0096】
図9は、優先順位決定処理の詳細動作に関するフローチャートである。同図から明らかな通り、処理が開始すると、変数を初期化すると共に特定のロボットシステム1を参照して初期化処理が行われる(S81)。
【0097】
その後、参照したロボットシステム1の行うタスクの後続のタスクの合計所要時間を算出する処理が行われる(S83)。より詳細には、上述の、ロボットシステムIDとタスクとの対応関係について示すテーブルと、タスクとその所要時間([s])との対応関係について示すテーブルとに基づいて、所要時間の合計値を計算する。
【0098】
この後続のタスクの所要時間の合計値の計算の後、全てのロボットシステム1に対して同合計値の算出処理が完了したか否か(S84)が判定され、未だ全てのロボットシステム1に対して算出処理が完了していない場合には、参照対象となるロボットシステム1を変更して、再び算出処理(S83)が行われる。
【0099】
一方、すべてのロボットシステム1に対して算出処理が完了した場合には(S84YES)、同合計値に基づいてサポート要請を行っているロボットシステム1の対処の優先順位を決定する処理が行われる(S86)。本実施形態においては、後続のタスクの所要時間の合計値が大きいほど、対処の優先順位が高いものとして決定される。その後、優先順位決定処理は終了する。
【0100】
図10を参照しつつ、優先順位の決定に関する具体例について説明する。
図10は、本実施形態に係る一連のタスクに係るアローダイアグラムである。同図から明らかな通り、「robot01」により物品の選り分けタスク(タスクA)が実行されると、選り分けられた対象物は、3つの平行な工程として、異なるコンベヤ上に載置されて搬送される。コンベヤにより搬送された物品は、後続の「robot02」、「robot03」及び「robot04」により、それぞれ箱詰めされ、箱はそれぞれテープ閉じされる。その後、各ロボットシステム1は、テープ閉じした箱をコンベヤへと載置して搬送する(タスクB)。
【0101】
このとき、タスクAの実行には11.6秒の時間、タスクBの実行には30秒の時間がかかるものとし、その間のコンベヤ搬送には10秒の時間がかかるものとされている。なお、これらの時間は、実際にロボットシステム1を動作させて計測された時間である。このような構成によれば、所要時間を実測値に基づいて正確に見積もることができる。
【0102】
この状態において、例えば、ロボットシステム1のうちの「robot01」について後続のタスクの合計所要時間を算出すると、後続の3つの並行な工程のうち、1つの系列の工程について合計50秒(=10+30+10)の時間がかかることから、合計所要時間は150秒(=50×3)として計算される。同様に「robot02」、「robot03」及び「robot04」について後続のタスクの合計所要時間を算出すると、それぞれ10秒として計算される。
【0103】
すなわち、同図の例にあっては、ロボットシステム1のうち、「robot02」、「robot03」及び「robot04」よりも、「robot01」の方が停止等による工程全体への影響が大きいロボットシステム1であることが把握される。従って、後続のタスクの合計所要時間のより大きい「robot01」からのサポート要請に対して優先的に対処すべきこととなる。
【0104】
図11は、表示処理(S64)の結果、オペレータ用システム5の表示部52へと表示される動作状況一覧画面の表示例である。同図から明らかな通り、同画面中には中央に動作状況の一覧表示部80が設けられると共に、画面右上には、現在オペレータ用システム5を利用しているオペレータのID情報「Sakamoto」と現在時刻が表示されている。
【0105】
また、動作状況一覧画面には、左から、「稼働状況」、「トラブル発生時刻」、「ロボットID」、「タスク」、「動作」、「あなたの補助権限」、「補助者」、及び「補助状況」と表示された列が表示されている。
【0106】
「稼働状況」は、ロボットシステム1が正常に動作しているか又はアラート発生状態にあるか否かを示している。アラート発生状態とは、目標動作を実行できなかったか又は実行出来る見込みがないことから、ロボットシステム1がオペレータに対してサポート要請を行っている状態である。
【0107】
「トラブル発生時刻」は、サポート要請が発生した日時に関する情報である。「ロボットID」は、サポート要請に対応するロボットシステム1の識別情報であるID情報である。
【0108】
「タスク」は、各ロボットシステム1に対して割り当てられたタスクであり、同図の例にあっては、ロボットに対して「物品選り分け」タスク(タスクA)又は「箱詰め・テープ閉じ」タスク(タスクB)のいずれかのタスクが割当てられている。
【0109】
「動作」は、タスクを構成するアクションのうち、いずれのアクションを行っているかを示している。同図の例からは、「robot01」にあっては「ACTION_02」の「ケース内対象物把持位置認識」動作を実行中にサポート要請を行ったことが把握される。また、「robot02」にあっては「ACTION_9」の「グリッパ開放・収納」動作を正常に実行中であることが把握される。
【0110】
「あなたの補助権限」は、サポート要請を行っている各ロボットシステム1に対して、ログインを行っているオペレータがサポート権限を有しているか否かを示すものである。同図から、オペレータ「Sakamoto」が、「robot03」を除き、タスクAとタスクBに対するサポート権限を有していることが把握される。
【0111】
「補助者」は、サポートを行っているオペレータのIDを表示するものである。例えば、同図の例にあっては、「robot07」についてはオペレータである「Kawanishi」がサポートを行っていることが把握される。
【0112】
「補助状況」は、サポート要請に応じて、サポートが行われているか否かを示すものである。例えば、同図の例にあっては、「robot07」からのサポート要請について、オペレータである「Kawanishi」が対応中であることが示されている。
【0113】
同図の例にあっては、サポート要請は、算出された優先順位に基づいて、対処の優先順位が高いものから順に上から「robot01」、「robot04」、「robot07」、「robot03」が表示されている。すなわち、サポート要請を行っているロボットシステム1がソートされて、サポート要請を行っていないロボットシステム1と区別可能に表示されている。
【0114】
なお、サポート要請を行っているロボットシステム1を区別可能に表示する方法はこのような例に限定されず、他の種々の表示方法を採用することができる。例えば、サポート要請を行っているロボットシステム1のみを表示したり、サポート要請を行っているロボットシステム1に関する表示を着色する等して、強調表示してもよい。
【0115】
次に、オペレータ用システム5を介してオペレータによりなされるサポート処理について説明する。
【0116】
図12は、オペレータにより行われるサポート処理に関する動作フローチャートである。同図左側のフローチャートは、オペレータ用システム5の動作フローチャートであり、同図右側のフローチャートは、管理サーバ3の動作フローチャートである。
【0117】
同図において、処理が開始すると、オペレータ側情報処理装置51は、動作状況一覧に表示されたサポート要請のいずれかを選択する入力がなされたかを検出する処理を行う(S101)。この検出処理の結果、入力が検出されない場合(S102NO)、入力検出処理が繰り返される(S101、S102NO)。
【0118】
検出処理の結果、入力が検出された場合(S102YES)、操作中のオペレータが、選択されたサポート要請に対して対処することを要求するサポートリクエストを送信する処理が行われる(S104)。このサポートリクエストの送信の後、オペレータ側情報処理装置51は、所定の受信待機状態となる(S105NO)。
【0119】
一方、サポートリクエストを受信するまで待機状態(S111NO)にあった管理サーバ3は、サポートリクエストを受信すると(S111YES)、サポートリクエストを送信したオペレータを担当オペレータとしてサポート要請と関連づけて設定する処理を行う(S112)。これにより、例えば、
図11の「補助者」、「補助状況」欄に、対応するオペレータIDと「対応中」である旨が表示される。この後、管理サーバ3は、サポートリクエストが設定されたことを示す通知をオペレータ用システム5へと送信する(S114)。
【0120】
オペレータ用システム5は、通知を受信すると(S105YES)、サポート用画面を表示する処理を行う。
【0121】
図13は、オペレータがサポート要請に対して対処することを可能とするサポート用画面の表示例である。同図から明らかな通り、同画面の中央上部には選択した対応中のサポート要請に関するステータス表示部83が設けられると共に、画面右上には、現在オペレータ用システム5を利用しているオペレータのID情報「Sakamoto」と現在時刻が表示されている。
【0122】
同図下部の左側には、ロボットシステム1のカメラ15により撮像されたカメラビューを表示するカメラビュー表示領域83が設けられている。同図の例にあっては、カメラビュー表示領域83には、物品選り分けタスクの対象となる、箱91内の積み重なったワーク92の画像が表示されている。ワーク92は円筒状であり、ロボットアーム17によりそれぞれ把持されて所定の基準で選り分けられる。
【0123】
なお、本実施形態においては、カメラビュー表示領域83には、カメラ画像が表示されるものとして説明するが、本発明はこのような構成に限定されない。従って、例えば、画像に代えて、又は画像と共に3次元カメラにて取得された3次元情報を提示するような構成としてもよい。
【0124】
同図下部の中央には、現在姿勢にあるロボットアーム17に備えられた図示しない関節角度センサから得られた姿勢情報に基づいて生成されたCG(Computer Graphics)画像841を表示するCG画像表示部84が設けられている。同画像表示部によりオペレータは、ロボットアーム17が現在どのような姿勢にあるかを瞬時に把握することができる。
【0125】
同図下部の右側には、サポート処理を開始するための作業開始ボタン85が配置されている。
【0126】
図12に戻り、作業開始ボタン85が選択されると、オペレータ用システム5と管理サーバ3、及びロボットシステム1が適宜に通信を行うことで、サポート処理が行われる(S108)。
【0127】
サポート処理の内容は、本実施形態においては、カメラビュー表示領域83を確認しつつ、ハプティック入力装置53を用いてロボットアーム17の遠隔操作を行い、前記目標動作の実行条件を変更する動作である。目標動作の実行条件を変更する動作とは、例えば、シーンや環境条件を変更する動作であり、より具体的には、オペレータによる遠隔操作によりロボットアーム17を用いて箱を揺らしたり箱の中のワーク92を把持して移動する等して、ワーク92の位置・姿勢を変化させる動作である。
【0128】
なお、本実施形態においては、サポート処理の内容は、目標動作の実行条件を変更する動作としたが、これに限定されない。従って、例えば、目標動作それ自体を遠隔操作により代替的に実行してもよい。
【0129】
その後、サポートが一通り完了すると、サポート完了信号が管理サーバ3へと送信され、その後、再び、入力検出処理(S101)から一連の処理が繰り返される。なお、上述の通り、サポート完了信号は、管理サーバ3により取得されて、対応するサポート要請のリストからの消去処理が行われる(S41~S43)。
【0130】
このような構成によれば、半自律的にタスクを実行するロボットシステムから複数のサポート要請を受信した場合であっても、サポート要請に対して優先順位を決定することができるので、オペレータが自らどのタスクから優先的に対処すべきかを考える必要がなく、複数のサポート要請に対して容易に対処することができる。
【0131】
また、このような構成によれば、オペレータは、所要時間に基づいて、工程全体への影響の大きいタスクから対処することができるので、システム全体を効率よく運用することができる。
【0132】
(2.変形例)
上述の実施形態においては、後続のタスクの合計所要時間を算出して優先順位を決定する構成としたが、本発明はそのような構成に限定されない。
【0133】
従って、例えば、当該合計所要時間に対してさらに、参照したロボットシステム1の残りのアクションの所要時間をさらに加算した値に基づいて、優先順位を決定してもよい。このような構成によれば、実行中のタスクの残りのアクションの所要時間も加味するので、実行時間の大きいアクション等が存在する場合でも、より精緻に優先順位を決定することができる。
【0134】
また、例えば、当該合計所要時間に対してさらに、ロボットシステム1へのサポートに要すると見込まれる所要時間をさらに加算した値に基づいて、優先順位を決定してもよい。このような構成によれば、サポートに一定の時間を要するような場合であっても、より精緻に優先順位を決定することができる。
【0135】
上述の実施形態においては、オペレータには、サポート要請を行っている全てのロボットシステム1が表示される構成としたが、本発明はそのような構成に限定されない。従って、例えば、サポート要請を行ったロボットシステム1とオペレータ用システム5との組み合わせについて最適化を図ってもよい。
【0136】
例えば、サポート要請を行ったロボットシステム1とオペレータ用システム5とのすべての組み合わせについて工程全体の所要時間を計算し、その中で最も所要時間が最小となる組み合わせをオペレータへと推薦し又は提供してもよい。このような構成によれば、システム全体において最適化を図ることができ、工程全体のダウンタイムを最小化することができる。
【0137】
また、例えば、サポート要請を行ったロボットシステム1と、当該サポート要請に対してサポート権限のあるオペレータ用システム5とのすべての組み合わせについて工程全体の所要時間を計算し、その中で最も所要時間が最小となる組み合わせをオペレータへと推薦し又は提供してもよい。このような構成によれば、システム全体において最適化を図ることができ、工程全体のダウンタイムを最小化することができる。また、システム200が大規模化して、ロボットシステム1とオペレータ用システム5の数が増大としても、組み合わせの爆発を防止して演算負荷の適正化と処理の高速化を図ることができる。
【0138】
上述の実施形態においては、後続タスクの所要時間等に基づいて優先順位を決定したが、単にサポート要請が発生した時系列順で表示端末52へと表示してもよい。このような構成によれば、発生順の処理が望ましいシステムについて最適なサポートを提供することができる。
【0139】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。また、上記の実施形態は、矛盾が生じない範囲で適宜組み合わせ可能である。
【産業上の利用可能性】
【0140】
本発明は、少なくともロボットシステム等を製造する産業において利用可能である。
【符号の説明】
【0141】
1 ロボットシステム
11 ロボット側情報処理装置
15 センサ
17 ロボットアーム
3 サーバ
5 オペレータ用システム
51 オペレータ側情報処理装置
52 表示装置
53 ハプティック入力装置