JP2020170934A - 制御装置、ネットワーク制御方法、及びプログラム - Google Patents

制御装置、ネットワーク制御方法、及びプログラム Download PDF

Info

Publication number
JP2020170934A
JP2020170934A JP2019070968A JP2019070968A JP2020170934A JP 2020170934 A JP2020170934 A JP 2020170934A JP 2019070968 A JP2019070968 A JP 2019070968A JP 2019070968 A JP2019070968 A JP 2019070968A JP 2020170934 A JP2020170934 A JP 2020170934A
Authority
JP
Japan
Prior art keywords
slave
slave robot
communication
robot
operating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019070968A
Other languages
English (en)
Inventor
力 馬
Li Ma
力 馬
ラサンタ フェルナンド チャリス
Lasantha Fernando Charith
ラサンタ フェルナンド チャリス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telexistence Inc
Original Assignee
Telexistence Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telexistence Inc filed Critical Telexistence Inc
Priority to JP2019070968A priority Critical patent/JP2020170934A/ja
Priority to PCT/JP2020/015027 priority patent/WO2020204072A1/ja
Priority to CN202080026402.2A priority patent/CN113940043B/zh
Priority to EP20784218.8A priority patent/EP3952230A4/en
Publication of JP2020170934A publication Critical patent/JP2020170934A/ja
Priority to US17/491,879 priority patent/US20220019216A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0011Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
    • G05D1/0022Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement characterised by the communication link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2661Milking robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40174Robot teleoperation through internet

Abstract

【課題】テレイグジスタンスシステムの運用において特定の項目の値を一定以上に維持したまま通信を行う。【解決手段】スレーブロボットと操作装置とを備えるテレイグジスタンスシステムの通信を制御する制御装置1において、状態取得部110は、操作装置、スレーブロボット、及び操作装置とスレーブロボットとを接続する複数の仮想ルータのそれぞれから、操作装置とスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する。経路決定部111は、状態取得部110がステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、スレーブロボットの動作を制御するための制御指示をスレーブロボットに伝達するための通信経路を決定する。指示送信部112は、経路決定部111が決定した通信経路を構成するための指示を複数の仮想ルータそれぞれに送信する。【選択図】図4

Description

本発明は制御装置、ネットワーク制御方法、及びプログラムに関し、特に、テレイグジスタンスシステムにおけるスレーブロボットと操作装置との間の通信ネットワークの制御技術に関する。
テレイグジスタンス(Telexistence)は、操作者とは離れた場所に存在するスレーブロボット(Slave Robot)を操作者が遠隔操作することによって、操作者が実際には存在しない場所に存在したとするならば得られる視覚、聴覚、及び触覚等の感覚を操作者に経験させるための技術である(例えば、非特許文献1を参照)。なお、スレーブロボットは操作者から離れた遠隔地において操作者の代わりに人に会ったり作業をしたりするため、サロゲート(Surrogate;代理人)と呼ばれることもある。
テレイグジスタンスでは、遠隔のスレーブロボットをコックピットと呼ばれる操作装置を用いてリアルタイムで操作する。そのためには、操作装置とロボットとの間で映像や音声、触覚情報、操作指示等を遅延なく送受信することが要求される。
T. Kurogi, M. Nakayama, K. Sato, S. Kamuro, C. L. Fernando, M. Furukawa, K. Minamizawa, and S. Tachi, "Haptic Transmission System to Recognize Differences in Surface Textures of Objects for Telexistence", IEEE Virtual Reality 2013, pp. 137-138.
インターネット等の既存ネットワークを介してリアルタイムでピアツーピアコミュニケーションをするための技術は種々提案されている。このような技術の中には、例えば、ウェブブラウザを用いてピアツーピアでリアルタイムに音声や映像をやり取りするためのWebRTC技術がある。
WebRTCのような技術では、ひとたび2つのウェブブラウザ間において通信経路が確立されると通信経路は固定される。通信のリアルタイム性は、その通信経路におけるトラヒック量や帯域幅等に応じて、ウェブブラウザ間でやり取りされるデータのビットレートやデータ量(例えば映像の解像度)を変更することで担保される。
テレイグジスタンスでは、操作者は、遠隔地に存在するスレーブロボットをそのスレーブロボットから送信されてくる音声や映像、及び触覚情報等のストリーミングデータに基づいて制御する。このため、例えばスレーブロボットの操作中に映像の解像度が変更されると、スレーブロボットの操作に支障をきたしかねない。したがって、テレイグジスタンスシステムの運用において優先すべき特定の項目の値を一定以上に維持したまま通信を行う技術が求められている。
本発明はこれらの点に鑑みてなされたものであり、テレイグジスタンスシステムの運用において特定の項目の値を一定以上に維持したまま通信を行うことができる技術を提供することを目的とする。
本発明の第1の態様は、1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御する制御装置である。この装置は、前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する状態取得部と、前記状態取得部が前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定する経路決定部と、前記経路決定部が決定した通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する指示送信部と、を備える。
前記経路決定部は、前記複数の仮想ルータの中から、前記制御指示を前記複数のスレーブロボットに伝達するために前記制御指示をマルチキャストさせるための仮想ルータを決定してもよい。
前記制御装置は、前記テレイグジスタンスシステムが複数のスレーブロボットを備える場合、当該複数のスレーブロボットの中から、前記操作装置にストリーミングデータを送信するスレーブロボットである優先ロボットを特定する優先ロボット情報を取得する優先ロボット取得部をさらに備えてもよい。
本発明の第2の態様は、複数の操作装置と、前記複数の操作装置のうちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御する制御装置である。この装置は、前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得する優先操作装置取得部と、前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する状態取得部と、前記状態取得部が前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定する経路決定部と、前記経路決定部が決定した通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する指示送信部と、を備える。
前記経路決定部は、前記複数の仮想ルータの中から、前記スレーブロボットが送信したストリーミングデータを前記複数の操作装置にマルチキャストさせるための仮想ルータを決定してもよい。
前記経路決定部は、前記優先操作装置取得部が新たな優先操作装置情報を取得することを契機として、通信経路を再決定してもよい。
前記経路決定部は、前記操作装置と前記スレーブロボットとの間を接続する複数の通信経路の候補それぞれについて、前記ステータスレポートに基づいて各通信経路の通信能力を示すスコアを算出するスコア算出部と、前記通信能力が高いことを示すスコアが算出された通信経路の候補を、前記通信能力が低いことを示すスコアが算出された通信経路の候補よりも優先して、前記操作装置と前記スレーブロボットとの間を接続する通信経路として選択する経路選択部と、を備えてもよい。
前記ステータスレポートは、前記操作装置と前記スレーブロボットとの間の通信に関するバンド幅、レイテンシ、ジッター、パケット損失率、パケット並べ替え率、及び誤り訂正率のそれぞれに関する統計量を少なくとも含んでもよく、前記スコア算出部は、前記統計量に基づいて前記スコアを算出してもよい。
前記統計量は、前記バンド幅、前記レイテンシ、前記ジッター、前記パケット損失率、パケット並べ替え率、及び前記誤り訂正率のそれぞれの項目に関する最大値、最小値、及び平均値を含んでもよく、前記スコア算出部は、各項目について平均値と最小値との差を最大値と最小値との差で規格化した値に項目毎に異なる重み係数を乗じた値を算出し、算出した値の総和を前記スコアとして算出してもよい。
前記制御装置は、前記操作装置を用いて前記スレーブロボットを操作する目的を示す操作シナリオ情報を取得するシナリオ情報取得部をさらに備えてもよく、前記スコア算出部は、前記操作シナリオ情報に基づいて前記重み係数を変更してもよい。
本発明の第3の態様は、1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御する制御装置のプロセッサが実行するネットワーク制御方法である。この方法において、前記プロセッサは、前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得するステップと、前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定するステップと、決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信するステップと、を実行する。
本発明の第4の態様は、複数の操作装置と、前記複数の操作装置うちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御する制御装置のプロセッサが実行するネットワーク制御方法である。この方法において、前記プロセッサが、前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得するステップと、前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得するステップと、前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定するステップと、決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信するステップと、を実行する。
本発明の第5の態様は、プログラムである。このプログラムは、1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御するコンピュータに、前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する機能と、前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定する機能と、決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する機能と、を実現させる。
本発明の第6の態様は、プログラムである。このプログラムは、複数の操作装置と、前記複数の操作装置うちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御するコンピュータに、前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得する機能と、前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する機能と、前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定する機能と、決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する機能と、を実現させる。
このプログラムを提供するため、あるいはプログラムの一部をアップデートするために、このプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよく、また、このプログラムが通信回線で伝送されてもよい。
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、テレイグジスタンスシステムの運用において特定の項目の値を一定以上に維持したまま通信を行うことができる。
テレイグジスタンスシステムの構成要素の外観を模式的に示す図である。 テレイグジスタンスシステムの構成要素と、各構成要素間でやり取りされる情報の流れを模式的に示す図である。 第1の実施の形態に係るテレイグジスタンスシステムの概要を説明するための図である。 第1の実施の形態に係る制御装置の機能構成を模式的に示す図である。 第1の実施の形態に係る状態取得部が取得する統計量の一覧を示す図である。 シナリオ情報と重み係数とを対応づけて格納する重み係数データベースのデータ構造を模式的に示す図である。 第1の実施の形態に係る制御装置が実行する通信経路の制御処理の流れを説明するためのフローチャートである。 第2の実施の形態に係るテレイグジスタンスシステムの概要を説明するための図である。 第2の実施の形態に係る制御装置の機能構成を模式的に示す図である。 第2の実施の形態に係る制御装置が実行する通信経路の制御処理の流れを説明するためのフローチャートである。
<テレイグジスタンスシステムの概要>
図1は、テレイグジスタンスシステムSの構成要素の外観を模式的に示す図である。また、図2は、テレイグジスタンスシステムSの構成要素と、各構成要素間でやり取りされる情報の流れを模式的に示す図である。以下、図1及び図2を参照して、本実施の形態の前提となるテレイグジスタンスシステムSの概要についてまず説明する。
テレイグジスタンスシステムSは、操作装置C、スレーブロボットR、及び操作装置CとスレーブロボットRとの間の情報の流れを制御する制御装置1とを含む。一般に、操作装置Cが存在する場所と、スレーブロボットRが存在する場所とは離れている。図1に示すように、テレイグジスタンスシステムSを利用する操作者Uは、種々の提示装置2(ヘッドマウントディスプレイ2a、触覚提示装置2b、ヘッドフォン2c、及び撮像素子2d)を装着する。操作者Uの身体の動きは図示しないキャプチャ装置によってトラッキングされ、操作者Uの身体の姿勢を示すキャプチャ情報として制御装置1に送信される。
スレーブロボットRは種々のセンサ3(撮像素子3a、触覚センサ3b、及びマイクロフォン3c)を備えており、各センサ3が取得したセンサ情報は制御装置1に送信される。なお、触覚センサ3bは、温度センサ31、加速度センサ32、及び圧力センサ33を含む。
図1に示すように、スレーブロボットRは人の形を模した機械である。このため、撮像素子3aはスレーブロボットRの目に相当する個所に配置されている。同様に、触覚センサ3bはスレーブロボットRの指先に相当する個所に配置され、マイクロフォン3cはスレーブロボットRの耳に相当する個所に配置されている。
制御装置1は、通信ネットワークN上に存在するクラウドサーバである。図2に示すように、制御装置1はキャプチャ情報に基づいて操作者Uの姿勢の変化を解析する。制御装置1は、操作者Uの姿勢の変化に基づいて、スレーブロボットRを動作させるための動作信号を生成し、スレーブロボットRに送信する。スレーブロボットRは、首部、肩部、肘部等の各部にアクチュエータを備えており、制御装置1が生成する動作信号はこれらのアクチュエータを動作させるための信号である。これにより、スレーブロボットRは、操作者Uの姿勢の変化に連動して動くことができる。
操作者Uが提示装置2に提示された情報に基づいて姿勢を変化させ、その情報に基づいてスレーブロボットRを動作させるという意味において、テレイグジスタンスシステムSにおける提示装置2及びキャプチャ装置は、図2に示すようにスレーブロボットRの操作装置Cとして機能する。図示はしないが、キャプチャ装置は、提示装置2を装着している操作者Uを撮像するためのカメラを備えることもある。この場合、キャプチャ装置は操作者Uから離れた位置に備えられるが、説明の便宜上、操作者Uが操作装置Cを用いることを「操作者Uが操作装置Cを装着する」と記載することがある。
制御装置1は、スレーブロボットRが備えるセンサ3から取得したセンサ情報に基づいて、操作者Uが装着している提示装置2を動作させるための提示信号を生成し、提示装置2に送信する。例えば、撮像素子3aが撮像して取得した画像情報は、通信ネットワークN及び制御装置1を介してヘッドマウントディスプレイ2aにストリーミング配信される。これにより、操作者Uは、スレーブロボットRの「目」である撮像素子3aがとらえた映像をヘッドマウントディスプレイ2aのモニタ越しに見ることができる。図1は、ヘッドマウントディスプレイ2aのモニタに、スレーブロボットRの右手と、スレーブロボットRの右手が保持する接触対象Oである立方体とが映されている様子を示している。
同様に、触覚センサ3bが取得した温度、振動、及び圧力を含む触覚情報は、制御装置1によって触覚提示装置2bを動作させるための触覚提示信号に変換される。これにより、操作者Uは、スレーブロボットRの「指先」がとらえた触覚を触覚提示装置2bを介して感じることができる。
実施の形態に係るテレイグジスタンスシステムSにおいて、ヘッドマウントディスプレイ2aは遮蔽型のヘッドマウントディスプレイである。このため、操作者Uがヘッドマウントディスプレイ2aを介して撮像素子3aが撮像した映像を観察すると、あたかも操作者UがスレーブロボットRの存在場所にいるかのような没入感を得ることができる。
一方で、ひとたび操作者Uがヘッドマウントディスプレイ2aを装着すると、操作者Uは自身の周囲を見ることができなくなる。ヘッドマウントディスプレイ2aはキャプチャ装置の一部としても動作するため、操作者Uは、操作者Uの動きとスレーブロボットRの動きとを同期する前にヘッドマウントディスプレイ2aを装着する必要がある。操作者Uは、制御装置1からヘッドマウントディスプレイ2aに画像信号が送られてくる前にヘッドマウントディスプレイ2aを装着することになるので、操作者Uの動きとスレーブロボットRの動きとの同期が完了するまで操作者Uは周囲を見ることができず不便である。
そこで、図1に示すように、ヘッドマウントディスプレイ2aは、操作者Uに装着されたときに操作者Uの視線方向を撮像するための撮像素子2dを備えている。これにより、操作者Uは、ヘッドマウントディスプレイ2aを装着した状態で周囲を観察することができる。
このように、スレーブロボットRは、操作者Uの姿勢の変化に連動して動作するとともに、操作者Uが装着する提示装置2を動作させる信号を取得するセンサ群を備える。操作者Uは、実施の形態に係るテレイグジスタンスシステムSを用いることにより、実際には存在しない場所であるスレーブロボットRの存在場所に存在したとするならば得られる視覚、聴覚、及び触覚等の感覚を経験することができる。
<第1の実施の形態に係るテレイグジスタンスシステムSの概要>
上記は、テレイグジスタンスシステムSにおいて操作装置CとスレーブロボットRとがそれぞれ1つずつのみ存在する場合について説明した。これに対し、第1の実施の形態に係るテレイグジスタンスシステムSは、単数の操作装置Cと1又は複数のスレーブロボットRとが存在する。第1の実施の形態に係るテレイグジスタンスシステムSは、一人の操作者Uが1台の操作装置Cを用いて複数のスレーブロボットRを制御する場合に用いられるシステムである。
図3は、第1の実施の形態に係るテレイグジスタンスシステムSの概要を説明するための図である。図3に示すテレイグジスタンスシステムSは、複数のスレーブロボットRと、複数のスレーブロボットRの動作を制御するための1つの操作装置Cと、操作装置Cと複数のスレーブロボットRとの間において情報を伝達する通信経路を構成するための複数の仮想ルータVと、を備えている。なお、図示の都合上、図3は2つのスレーブロボットR(第1スレーブロボットR1及び第2スレーブロボットR2)のみを図示しているが、スレーブロボットRの数は1であってもよいし、3以上であってもよい。同様に、図3は4つの仮想ルータV(第1仮想ルータV1、第2仮想ルータV2、第3仮想ルータV3、及び第4仮想ルータV4)を図示しているが、仮想ルータVの数は4つに限られない。
制御装置1は、操作装置Cと複数のスレーブロボットRとの間の通信を制御する。既知の技術であるため詳細な説明は省略するが、仮想ルータVは、仮想的にルーティング機能を実現するための技術である。仮想ルータVは、ネットワークスイッチの機能が仮想化されており、データの転送先が制御装置1によって制御できるように構成されている。このため、ひとたび操作装置CとスレーブロボットRとの間にいくつかの仮想ルータVによって通信経路が確立された後であっても、事後的に操作装置CとスレーブロボットRとの間の通信経路を構成する仮想ルータVを変更することができる。制御装置1は、仮想ルータVの動作を制御することによって、操作装置Cと複数のスレーブロボットRとの間の通信を制御する。
例えば、操作装置CとスレーブロボットRとの間で仮想ルータVによって通信経路が確立された後、何らかの理由によってその通信経路の通信品質が下がったとする。この場合、制御装置1は、操作装置CとスレーブロボットRとの間の通信品質を向上させるために、仮想ルータVを制御して通信経路を変更する。別の例として、操作者Uが、2台のスレーブロボットRを同時に操作している状態、すなわち、操作装置Cと第1スレーブロボットR1との間の通信経路及び操作装置Cと第2スレーブロボットR2との間の通信経路が同時に確立している状態から、第1スレーブロボットR1のみを操作する状態に移行することを示す指示を制御装置1に送信した場合、制御装置1は、仮想ルータVを制御して操作装置Cと第2スレーブロボットR2との間の通信経路を切断する。
このように、第1の実施の形態に係るテレイグジスタンスシステムSにおいて、制御装置1は、仮想ルータVを制御することによって操作装置CとスレーブロボットRとの間の通信経路を動的に変更する。この結果、テレイグジスタンスシステムSにおける操作装置CとスレーブロボットRとは、ストリーミングデータのビットレート、データのビットレートやデータ量等、特定の項目の値を一定以上に維持したまま通信をすることができる。また、操作者Uは、スレーブロボットRを操作して実行するタスクに応じて、複数のスレーブロボットRのうち操作装置Cを用いて操作するスレーブロボットRを自由に変更することができる。
<第1の実施の形態に係る制御装置1の機能構成>
図4は、第1の実施の形態に係る制御装置1の機能構成を模式的に示す図である。制御装置1は、記憶部10と制御部11とを備える。図4において、矢印は主なデータの流れを示しており、図4に示していないデータの流れがあってもよい。図4において、各機能ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図4に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。また、図4は、操作装置CとスレーブロボットRとの間の通信経路の制御に関する機能ブロックのみを図示しており、キャプチャ情報を動作信号に変換する機能や、センサ情報を提示信号に変換する機能については省略している。
記憶部10は、制御装置1を実現するコンピュータのBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)や制御装置1の作業領域となるRAM(Random Access Memory)、OS(Operating System)やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の大容量記憶装置である。
制御部11は、制御装置1のCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等のプロセッサであり、記憶部10に記憶されたプログラムを実行することによって状態取得部110、経路決定部111、指示送信部112、優先ロボット取得部113、及びシナリオ情報取得部114として機能する。
なお、図4は、制御装置1が単一の装置で構成されている場合の例を示している。しかしながら、制御装置1は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部11を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
状態取得部110は、操作装置C、複数のスレーブロボットR、及び複数の仮想ルータVのそれぞれから、操作装置Cと複数のスレーブロボットRとの通信が確立している間にステータスレポートを繰り返し取得する。ここで仮想ルータVのステータスレポートとは、操作装置CとスレーブロボットRとを結ぶ通信経路を構成する各機器の通信品質の良し悪しを推定するために用いられる測定値、又は測定値に基づいて算出された統計量である。なお、仮想ルータVのステータスレポートの具体的な内容については後述する。
また、操作装置C及びスレーブロボットRのステータスレポートも存在する。操作装置Cのステータスレポートは、上述したキャプチャ情報の大きさや、提示装置2の動作状況を示す情報である。スレーブロボットRのステータスレポートは、上述したセンサ情報の大きさや、スレーブロボットを構成する各種アクチュエータ及びセンサ3の動作状況を示す情報である。以下、本明細書において、仮想ルータVのステータスレポート、操作装置Cのステータスレポート、及びスレーブロボットRのステータスレポートを区別しない場合、単に「ステータスレポート」と記載する。
経路決定部111は、状態取得部110がステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、スレーブロボットRの動作を制御するための動作信号である制御指示を複数のスレーブロボットRに伝達するための通信経路を決定する。より具体的には、経路決定部111は、状態取得部110が取得したステータスレポートに基づいて、操作装置CとスレーブロボットRとの間の通信経路を構成するための仮想ルータVを選択する。
指示送信部112は、経路決定部111が決定した通信経路を構成するための指示を、その通信経路を構成する複数の仮想ルータVそれぞれに送信する。各仮想ルータVが制御装置1から受信した指示にしたがって仮想スイッチを設定することにより、通信経路が確立される。
制御装置1は、操作装置CとスレーブロボットRとの間の通信が確立している間、ステータスレポートの取得と取得したステータスレポートに基づく通信経路の決定処理とを継続する。これにより、制御装置1は、操作装置CとスレーブロボットRとの間の通信が確立している間に操作装置CとスレーブロボットRとの間の通信経路の通信品質が下がった場合、通信品質が向上するように適宜通信経路を変更することができる。結果として、制御装置1は、テレイグジスタンスシステムSにおける操作装置CとスレーブロボットRとの間のストリーミングデータのビットレートやデータ量を維持することができる。
図3に示すように、第1の実施の形態に係るテレイグジスタンスシステムSにおいては、1台の操作装置Cに対して複数のスレーブロボットRが存在する場合がある。このため、操作者Uが実行するタスクによっては、操作者Uは操作装置Cを用いて複数のスレーブロボットRを同時に操作することも起こりうる。この場合、制御装置1は、キャプチャ情報に基づいて生成したスレーブロボットRの動作信号を、複数のスレーブロボットRに送信する必要がある。
そこで、経路決定部111は、複数の仮想ルータVの中から、スレーブロボットRの動作を制御するための制御指示を複数のスレーブロボットRに伝達するために、制御指示をマルチキャストさせる仮想ルータVを決定する。これにより、制御装置1は、スレーブロボットRの動作を制御するための動作信号を、複数のスレーブロボットRに送信することができる。
操作者Uが装着する操作装置Cには、スレーブロボットRが備える各センサが取得してストリーミング配信されるセンサ情報に基づいて生成された触覚提示信号にしたがって視覚、聴覚、及び触覚等の感覚を操作者Uに提示する。第1の実施の形態に係るテレイグジスタンスシステムSにおいては1台の操作装置Cに対して複数のスレーブロボットRが存在することもあり得るため、このような場合、制御装置1は、いずれのスレーブロボットRが備える各センサが取得したセンサ情報に基づいて触覚提示信号を生成すべきかが問題となる。
そこで、優先ロボット取得部113は、テレイグジスタンスシステムSが複数のスレーブロボットRを備える場合、複数のスレーブロボットRの中から、操作装置Cにストリーミングデータを送信するスレーブロボットである優先ロボットを特定する優先ロボット情報を取得する。経路決定部111は、複数の仮想ルータVの中から、優先ロボット以外の他のスレーブロボットRが送信したストリーミングデータを破棄させる仮想ルータを決定する。これにより、操作者Uが装着する操作装置Cには、優先ロボットが備えるセンサ3が取得した情報に基づく提示信号のみが送信される。
続いて、経路決定部111が実行する経路決定処理の詳細について説明する。
図4に示すように、経路決定部111は、スコア算出部1110と経路選択部1111とを備える。スコア算出部1110は、操作装置CとスレーブロボットRとの間を接続する複数の通信経路の候補それぞれについて、状態取得部110が取得したステータスレポートに基づいて各通信経路の通信能力を示すスコアを算出する。
経路選択部1111は、通信能力が高いことを示すスコアが算出された通信経路の候補を、通信能力が低いことを示すスコアが算出された通信経路の候補よりも優先して、操作装置CとスレーブロボットRとの間を接続する通信経路として選択する。これにより、経路選択部1111は、操作装置CとスレーブロボットRとの間を接続する複数の通信経路それぞれを構成する機器のステータスレポートに基づいて、通信品質が相対的に良好な通信経路を選択することができる。
上述したように、状態取得部110が取得するステータスレポートは、操作装置CとスレーブロボットRとを結ぶ通信経路を構成する各機器の通信品質の良し悪しを推定するために用いられる測定値、又は測定値に基づいて算出された統計量である。具体的には、状態取得部110が取得するステータスレポートは、操作装置CとスレーブロボットRとの間の通信に関するバンド幅、レイテンシ、ジッター、パケット損失率、パケット並べ替え率、及び誤り訂正率のそれぞれに関する統計量を少なくとも含んでいる。スコア算出部1110は、状態取得部110がステータスレポートとして取得したこれらの統計量に基づいてスコアを算出する。
図5は、第1の実施の形態に係る状態取得部110が取得する統計量の一覧を示す図である。図5に示すように、状態取得部110が取得する統計量は、バンド幅、レイテンシ、ジッター、パケット損失率、パケット並べ替え率、及び誤り訂正率のそれぞれの項目に関する最大値、最小値、及び平均値を含んでいる。
スコア算出部1110は、以下に示す式(1)にしたがって各通信経路の通信能力を示すスコアRSを算出する。
Figure 2020170934
式(1)に示すように、スコア算出部1110は、各項目について平均値と最小値との差を最大値と最小値との差で規格化した値に項目毎に異なる重み係数を乗じた値を算出し、算出した値の総和をスコアRSとして算出する。「重み係数」は、スコアRSに対する各項目の寄与率を示す正の実数値である。
例えば、テレイグジスタンスシステムSの設計者が、スレーブロボットRの操作目的を勘案しながら、実験により重み係数を定めればよい。そのため、シナリオ情報取得部114は、操作装置Cを用いてスレーブロボットRを操作する目的を示す操作シナリオ情報を取得する。シナリオ情報は操作者UがテレイグジスタンスシステムSを利用する目的を示す情報であり、例えば、「バーチャル旅行」、「店舗における棚卸し作業」、「危険地帯における作業」等である。テレイグジスタンスシステムSの操作目的が決定している場合には、シナリオ情報取得部114は、あらかじめ記憶部10に記憶されている操作シナリオ情報を読み出して取得する。テレイグジスタンスシステムSが汎用的なシステムであり、利用毎に操作シナリオが異なる場合には、シナリオ情報取得部114は、図示しないユーザインターフェースを介してテレイグジスタンスシステムSの操作者Uから操作シナリオ情報を取得する。
図6は、シナリオ情報と重み係数とを対応づけて格納する重み係数データベースのデータ構造を模式的に示す図である。重み係数データベースは記憶部10に格納されており、スコア算出部1110によって管理されている。スコア算出部1110は、シナリオ情報取得部114が取得した操作シナリオ情報に基づいて、重み係数データベースを参照して操作シナリオ毎に重み係数を変更する。これにより、経路選択部1111は、操作者UがテレイグジスタンスシステムSを利用する目的に応じて適切に通信経路を選択することができる。
なお、スコア算出部1110は、算出したスコアRSが所定の閾値よりも上回っている場合、通信状態が良好であることを示す情報を制御装置1の表示部に表示させてもよい。例えば、制御装置1の表示部がモニタである場合、スコア算出部1110は、「通信状態:良好」のような文字列を表示部に表示させる。あるいは、制御装置1が通信状態の良し悪しを示すLED(Light Emitting Diode)を備える場合には、スコア算出部1110は、通信状態が良好であることを示すためにLEDを緑色に発光させてもよい。
また、スコア算出部1110は、算出したスコアRSが所定の閾値以下である場合、通信状態が不良であることを示す情報を制御装置1の表示部に表示させてもよい。例えば、制御装置1の表示部がモニタである場合、スコア算出部1110は、「通信状態:不良」のような文字列を表示部に表示させる。あるいは、制御装置1が通信状態の良し悪しを示すLEDを備える場合には、スコア算出部1110は、通信状態が不良であることを示すためにLEDを赤色に発光させてもよい。
さらに、複数の通信経路におけるスコアRSが閾値以下である場合、スコア算出部1110は、LEDを点滅させたり、表示部に表示させるフォントの大きさや色を変更して、制御装置1の管理者に通知させたりしてもよい。
このように、経路選択部1111は、スコア算出部1110が算出したスコアRSに基づいて、通信経路を選択する。より具体的には、経路選択部1111は、現在選択中の通信経路に関するRSよりも他の通信経路に関するスコアRSが大きくなった場合、他の通信経路を新たな通信経路として選択する。
ここで、経路選択部1111は、通信経路の選択時に参照するスコアRSにヒステリシスを設け、通信経路が維持されるようにしてもよい。具体的には、経路選択部1111は、不感帯を示す所定値を定め、現在選択中の通信経路に関するRSよりも他の通信経路に関するスコアRSに所定値を加えた値が大きくなった場合に、他の通信経路を新たな通信経路として選択するようにしてもよい。これにより、操作者UがスレーブロボットRを操作中に、経路選択部1111による通信経路の選択に伴うハンチング(頻繁な変更)が生じることを抑制できる。
あるいは、経路選択部1111は、選択中の通信経路を他の通信経路に切り替える際の待機期間を設けてもよい。これにより、少なくとも通信経路の切り替えの間隔が待機期間よりも短くなることを抑制できる。また、経路選択部1111は、通信経路切り替えの際の待機期間を通信経路選択時のスコアRSの長さに基づいて変更するようにしてもよい。具体的には、経路選択部1111は、通信経路選択時のスコアRSが大きいほど、通信経路切り替え時の待機期間を長くするようにしてもよい。これにより、スコア算出部1110が算出したスコアRSが大きいほど待機期間が長くなり、通信経路の選択に伴うハンチングをより効果的に抑制することができる。
<制御装置1が実行する通信経路の制御方法の処理フロー>
図7は、第1の実施の形態に係る制御装置1が実行する通信経路の制御処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば制御装置1が起動したときに開始する。
状態取得部110は、テレイグジスタンスシステムSを構成する操作装置C、1又は複数のスレーブロボットR、及び複数の仮想ルータVのそれぞれから、ステータスレポートを取得する(S2)。経路決定部111は、状態取得部110がステータスレポートを取得することを契機として、状態取得部110が取得したステータスレポートに基づいて、スレーブロボットRの動作を制御するための制御指示を1又は複数のスレーブロボットRに伝達するための通信経路を決定する(S4)。
指示送信部112は、決定した通信経路を構成するための指示を複数の仮想ルータVそれぞれに送信する(S6)。制御装置1は、操作装置Cと1又は複数のスレーブロボットRとの通信が確立している間、上記の処理を繰り返し実行する。これにより、テレイグジスタンスシステムSにおいてストリーミングデータのビットレートやデータ量を維持することができる。
<第1の実施の形態に係る制御装置1が奏する効果>
以上説明したように、第1の実施の形態に係る制御装置1によれば、テレイグジスタンスシステムSにおいてストリーミングデータのビットレートやデータ量を維持することができる。また、1台の操作装置Cに対して複数のスレーブロボットRが存在するテレイグジスタンスシステムSにおいて、操作装置Cにストリーミングデータを送信するスレーブロボットである優先ロボットが備えるセンサ3が取得した情報に基づく提示信号のみを、操作装置Cに送信することができる。
<第2の実施の形態>
第2の実施の形態に係るテレイグジスタンスシステムSは、第1の実施の形態に係るテレイグジスタンスシステムSと異なり、スレーブロボットRは1台である一方、複数の操作装置Cを含む。以下、第2の実施の形態に係るテレイグジスタンスシステムSについて説明するが、第1の実施の形態と共通する部分については適宜省略又は簡略化して説明する。
<第2の実施の形態に係るテレイグジスタンスシステムSの概要>
第2の実施の形態に係るテレイグジスタンスシステムSは、1台のスレーブロボットRが複数の操作装置Cによって制御される場合に用いられるシステムである。
図8は、第2の実施の形態に係るテレイグジスタンスシステムSの概要を説明するための図である。図8に示すテレイグジスタンスシステムSは、複数の操作装置Cと、複数の操作装置Cのうちのいずれか1つの操作装置Cで動作が制御される1つのスレーブロボットRと、複数の操作装置CとスレーブロボットRとの間において情報を伝達する通信経路を構成するための複数の仮想ルータVと、を備えている。なお、図示の都合上、図8は2つの操作装置C(第1操作装置C1及び第2操作装置C2)のみを図示しているが、操作装置Cの数は3以上であってもよい。同様に、図8は4つの仮想ルータV(第1仮想ルータV1、第2仮想ルータV2、第3仮想ルータV3、及び第4仮想ルータV4)を図示しているが、仮想ルータVの数は4つに限られない。
制御装置4は、複数の操作装置CとスレーブロボットRとの間の通信を制御する。制御装置4は、仮想ルータVの動作を制御することによって、スレーブロボットRと複数の操作装置Cとの間の通信を制御する。例えば、操作装置CとスレーブロボットRとの間で仮想ルータVによって通信経路が確立された後、何らかの理由によってその通信経路の通信品質が下がったとする。この場合、制御装置4は、操作装置CとスレーブロボットRとの間の通信品質を向上させるために、仮想ルータVを制御して通信経路を変更する。別の例として、第2操作装置C2の操作者Uが、第1操作装置C1によってスレーブロボットRが制御されている状態から第2操作装置C2によってスレーブロボットRを制御する状態に移行することを示す指示を制御装置4に送信した場合、制御装置4は、仮想ルータVを制御して第1操作装置C1とスレーブロボットRとの間の通信経路を切断するとともに、第2操作装置C2とスレーブロボットRとの間の通信経路を確立させる。
このように、第2の実施の形態に係るテレイグジスタンスシステムSにおいて、制御装置4は、仮想ルータVを制御することによって操作装置CとスレーブロボットRとの間の通信経路を変更する。この結果、テレイグジスタンスシステムSにおける操作装置CとスレーブロボットRとは、ストリーミングデータのビットレートやデータ量等、特定の項目の値を一定以上に維持したまま、操作装置CとスレーブロボットRとの間で通信をすることができる。また、制御装置4は、スレーブロボットRを操作するための操作装置Cを自在に切り替えることができる。
<第2の実施の形態に係る制御装置4の機能構成>
図9は、第2の実施の形態に係る制御装置4の機能構成を模式的に示す図である。制御装置4は、記憶部40と制御部41とを備える。図9において、矢印は主なデータの流れを示しており、図9に示していないデータの流れがあってもよい。図9において、各機能ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図9に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。また、図9は、操作装置CとスレーブロボットRとの間の通信経路の制御に関する機能ブロックのみを図示しており、キャプチャ情報を動作信号に変換する機能や、センサ情報を提示信号に変換する機能については省略している。
記憶部40は、制御装置4を実現するコンピュータのBIOS等を格納するROMや制御装置4の作業領域となるRAM、OSやアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するHDDやSSD等の大容量記憶装置である。
制御部41は、制御装置4のCPUやGPU等のプロセッサであり、記憶部40に記憶されたプログラムを実行することによって状態取得部410、経路決定部411、指示送信部412、優先操作装置取得部413、及びシナリオ情報取得部414として機能する。
なお、図9は、制御装置4が単一の装置で構成されている場合の例を示している。しかしながら、制御装置4は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部41を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
優先操作装置取得部413は、テレイグジスタンスシステムSが備える複数の操作装置Cの中から、スレーブロボットRの動作を制御するための操作装置Cである優先操作装置を特定する。例えば、あるシナリオにおいては、優先操作装置は、あらかじめ定められたスケジュールにしたがって変更される。別のシナリオにおいては、最後にオンラインとなった操作装置Cが優先操作装置となる。さらに別のシナリオでは、上位権限を持った操作装置Cがオンラインとなった場合に優先操作装置となる。このように、優先操作装置の定め方はスレーブロボットRを操作する目的に応じて異なっており、その態様は上記の例以外にも種々存在する。
状態取得部410は、複数の操作装置C、スレーブロボットR、及び複数の仮想ルータVのそれぞれから、複数の操作装置CとスレーブロボットRとの通信が確立している間にステータスレポートを繰り返し取得する。
経路決定部411は、状態取得部410がステータスレポートを取得することを契機として、取得したステータスレポートと優先操作装置を示す優先操作情報とに基づいて、スレーブロボットRの動作を制御するための制御指示をスレーブロボットRに伝達するための通信経路を決定する。具体的には、経路決定部411は、優先操作装置である操作装置CとスレーブロボットRとの間を結ぶ通信経路を決定する。
指示送信部412は、経路決定部411が決定した通信経路を構成するための指示を複数の仮想ルータVそれぞれに送信する。これにより、制御装置4は、1台のスレーブロボットRを操作可能な複数の操作装置Cが存在するテレイグジスタンスシステムSにおいて、異なる操作装置Cに由来する複数の制御指示が1台のスレーブロボットRに同時に送信されることを抑制できる。
一方で、1台のスレーブロボットRが備えるセンサ3が取得したセンサ情報を複数の操作装置Cで共有できると便利である。例えば、テレイグジスタンスシステムSがバーチャル旅行に用いられる場合、観光地に存在する1台のスレーブロボットRのセンサ3が取得した情報に基づく提示信号を、そのバーチャル旅行に参加している複数の操作者Uそれぞれが装着している複数の提示装置2に送信することが考えられる。この場合、限定はしないが、優先操作装置はバーチャル旅行の添乗員が備える操作装置Cであり、バーチャル旅行の参加者はそれぞれ装着する操作装置Cを用いて、観光地に存在するスレーブロボットRの撮像素子3aがとらえた映像を見たり、マイクロフォン3cが集音した音声を聞いたりすることができる。
これを実現するために、経路決定部411は、複数の仮想ルータVの中から、スレーブロボットRが送信したストリーミングデータを複数の操作装置Cに伝達するために、ストリーミングデータをマルチキャストさせる仮想ルータVを決定する。これにより、制御装置4は、スレーブロボットRが取得したセンサ情報に基づく提示信号を、複数の操作装置Cに送信することができる。
上述したように、第2の実施の形態に係るテレイグジスタンスシステムSが稼働中(ある操作装置CによってスレーブロボットRが操作されている状態)に優先操作装置は変化しうる。そこで、経路決定部411は、優先操作装置取得部413が新たな優先操作装置情報を取得することを契機として、通信経路を再決定する。これにより、制御装置4は操作装置Cと操作装置CによるスレーブロボットRの操作を中断することなく、優先操作装置を柔軟に入れ替えることができる。
<制御装置4が実行する通信経路の制御方法の処理フロー>
図10は、第2の実施の形態に係る制御装置4が実行する通信経路の制御処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば制御装置4が起動したときに開始する。
優先操作装置取得部413は、テレイグジスタンスシステムSが備える複数の操作装置Cの中から、スレーブロボットRの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得する(S10)。
状態取得部410は、複数の操作装置C、スレーブロボットR、及び複数の仮想ルータVのそれぞれから、ステータスレポートを取得する(S12)。経路決定部411は、状態取得部410がステータスレポートを取得することを契機として、取得したステータスレポートと優先操作装置情報とに基づいて、スレーブロボットRの動作を制御するための制御指示をスレーブロボットRに伝達するための通信経路を決定する(S14)。
指示送信部412は、経路決定部411が決定した通信経路を構成するための指示を複数の仮想ルータVそれぞれに送信する。制御装置4は、複数の操作装置CとスレーブロボットRとの通信が確立している間、上記の処理を繰り返し実行する。
なお、スコア算出部4110、経路選択部4111、及びシナリオ情報取得部414の機能は、それぞれ第1の実施の形態に係るスコア算出部1110、経路選択部1111、及びシナリオ情報取得部114と同様であるため説明を省略する。
<第2の実施の形態に係る制御装置4が奏する効果>
以上説明したように、第2の実施の形態に係る制御装置4によれば、テレイグジスタンスシステムSの運用において特定の項目の値を一定以上に維持したまま通信を行うことができる。また、1台のスレーブロボットRに対して複数の操作装置Cが存在するテレイグジスタンスシステムSにおいて、スレーブロボットRに動作信号を送信することができる優先操作装置に由来する制御信号のみを、スレーブロボットRに送信することができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果をあわせ持つ。
<第1の変形例>
上記では、1台の操作装置Cに対して複数のスレーブロボットRを備えるテレイグジスタンスシステムSと、1台のスレーブロボットRに対して複数の操作装置Cを備えるテレイグジスタンスシステムSとについて説明した。しかしながら、テレイグジスタンスシステムSは、複数台の操作装置Cと複数台のスレーブロボットRとを備えてもよい。
このテレイグジスタンスシステムSにおいては、第1の実施の形態に係る優先ロボットと、第2の実施の形態に係る優先操作装置とが存在する。この場合、複数の操作装置Cの中から選択された優先操作装置によって各スレーブロボットRの動作が制御されるとともに、複数のスレーブロボットRの中から選択された優先ロボットのセンサ3が取得したセンサ情報に基づいて、各操作装置Cの提示信号が生成される。これにより、例えば、複数の操作者Uで交代しながら複数の作業用のスレーブロボットRを制御することが可能となる。
<第2の変形例>
上記では、制御装置1が、キャプチャ情報から動作信号を生成する機能、センサ情報から提示信号を生成する機能、及びステータスレポートに基づいて仮想ルータVを制御する機能を備える場合について説明した。しかしながら、これらの機能は1台の制御装置1がすべて備える必要はなく、複数の装置で各機能を分担してもよい。例えば、キャプチャ情報から動作信号を生成する機能とセンサ情報から提示信号を生成する機能とを1台のサーバが担い、仮想ルータVを制御する機能を別のサーバが担ってもよい。この場合、前者はいわば操作装置・ロボット制御装置であり、後者はいわばネットワーク制御装置である。テレイグジスタンスシステムSを動作させるための機能毎に負荷分散を実現できる点で効果がある。
<第3の変形例>
上記では、スコア算出部1110又はスコア算出部4110が算出したスコアRSに基づいて、通信経路が選択される場合について説明した。これに替えて、あるいはこれに加えて、スコアRSの大きさによってスレーブロボットRの操作モードを変更するようにしてもよい。
具体的には、第3の変形例に係る制御装置は、図示しない操作モード変更部を備える。操作モード変更部は、算出されたスコアRSが所定の基準値に届かない場合、スレーブロボットRを自動操縦させる自動操縦モードに設定する。スレーブロボットRが自動操縦モードでは、操作者Uが備える操作装置Cから動作信号が送信されない場合は、スレーブロボットRが自動で動作するモードである。操作者Uが備える操作装置Cから動作信号が送信された場合は、スレーブロボットRは動作信号にしたがって動作する。これにより、通信経路の通信状態が悪化したことによってスレーブロボットRまで動作信号が到達されない状況が発生しても、スレーブロボットRが停止してしまうことによる不具合を抑制することができる。
なお、操作モード変更部は、算出されたスコアRSが所定の基準を上回っている場合には、スレーブロボットRを手動操作モードに設定する。これにより、通信経路の通信状態が良好な場合には、スレーブロボットRは操作者Uによる制御の下で動作させることができる。
1・・・制御装置
10・・・記憶部
11・・・制御部
110・・・状態取得部
111・・・経路決定部
1110・・・スコア算出部
1111・・・経路選択部
112・・・指示送信部
113・・・優先ロボット取得部
114・・・シナリオ情報取得部
2・・・提示装置
2a・・・ヘッドマウントディスプレイ
2b・・・触覚提示装置
2c・・・ヘッドフォン
2d・・・撮像素子
3・・・センサ
3a・・・撮像素子
3b・・・触覚センサ
3c・・・マイクロフォン
4・・・制御装置
40・・・記憶部
41・・・制御部
410・・・状態取得部
411・・・経路決定部
4110・・・スコア算出部
4111・・・経路選択部
412・・・指示送信部
413・・・優先操作装置取得部
414・・・シナリオ情報取得部
C・・・操作装置
N・・・通信ネットワーク
R・・・スレーブロボット
V・・・仮想ルータ
S・・・テレイグジスタンスシステム

Claims (14)

  1. 1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御する制御装置であって、
    前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する状態取得部と、
    前記状態取得部が前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定する経路決定部と、
    前記経路決定部が決定した通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する指示送信部と、
    を備える制御装置。
  2. 前記経路決定部は、前記複数の仮想ルータの中から、前記制御指示を前記複数のスレーブロボットに伝達するために前記制御指示をマルチキャストさせるための仮想ルータを決定する、
    請求項1に記載の制御装置。
  3. 前記テレイグジスタンスシステムが複数のスレーブロボットを備える場合、当該複数のスレーブロボットの中から、前記操作装置にストリーミングデータを送信するスレーブロボットである優先ロボットを特定する優先ロボット情報を取得する優先ロボット取得部をさらに備える、
    請求項1又は2に記載の制御装置。
  4. 複数の操作装置と、前記複数の操作装置のうちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御する制御装置であって、
    前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得する優先操作装置取得部と、
    前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する状態取得部と、
    前記状態取得部が前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定する経路決定部と、
    前記経路決定部が決定した通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する指示送信部と、
    を備える制御装置。
  5. 前記経路決定部は、前記複数の仮想ルータの中から、前記スレーブロボットが送信したストリーミングデータを前記複数の操作装置にマルチキャストさせるための仮想ルータを決定する、
    請求項4に記載の制御装置。
  6. 前記経路決定部は、前記優先操作装置取得部が新たな優先操作装置情報を取得することを契機として、通信経路を再決定する、
    請求項4又は5に記載の制御装置。
  7. 前記経路決定部は、
    前記操作装置と前記スレーブロボットとの間を接続する複数の通信経路の候補それぞれについて、前記ステータスレポートに基づいて各通信経路の通信能力を示すスコアを算出するスコア算出部と、
    前記通信能力が高いことを示すスコアが算出された通信経路の候補を、前記通信能力が低いことを示すスコアが算出された通信経路の候補よりも優先して、前記操作装置と前記スレーブロボットとの間を接続する通信経路として選択する経路選択部と、
    を備える、
    請求項1から6のいずれか1項に記載の制御装置。
  8. 前記ステータスレポートは、前記操作装置と前記スレーブロボットとの間の通信に関するバンド幅、レイテンシ、ジッター、パケット損失率、パケット並べ替え率、及び誤り訂正率のそれぞれに関する統計量を少なくとも含み、
    前記スコア算出部は、前記統計量に基づいて前記スコアを算出する、
    請求項7に記載の制御装置。
  9. 前記統計量は、前記バンド幅、前記レイテンシ、前記ジッター、前記パケット損失率、パケット並べ替え率、及び前記誤り訂正率のそれぞれの項目に関する最大値、最小値、及び平均値を含み、
    前記スコア算出部は、各項目について平均値と最小値との差を最大値と最小値との差で規格化した値に項目毎に異なる重み係数を乗じた値を算出し、算出した値の総和を前記スコアとして算出する、
    請求項8に記載の制御装置。
  10. 前記操作装置を用いて前記スレーブロボットを操作する目的を示す操作シナリオ情報を取得するシナリオ情報取得部をさらに備え、
    前記スコア算出部は、前記操作シナリオ情報に基づいて前記重み係数を変更する、
    請求項9に記載の制御装置。
  11. 1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御する制御装置のプロセッサが、
    前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得するステップと、
    前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定するステップと、
    決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信するステップと、
    を実行するネットワーク制御方法。
  12. 複数の操作装置と、前記複数の操作装置うちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御する制御装置のプロセッサが、
    前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得するステップと、
    前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得するステップと、
    前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定するステップと、
    決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信するステップと、
    を実行するネットワーク制御方法。
  13. 1又は複数のスレーブロボットと、前記1又は複数のスレーブロボットの動作を制御するための1つの操作装置と、前記操作装置と前記1又は複数のスレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記操作装置と前記1又は複数のスレーブロボットとの間の通信を制御するコンピュータに、
    前記操作装置、前記1又は複数のスレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記操作装置と前記1又は複数のスレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する機能と、
    前記ステータスレポートを取得することを契機として、取得したステータスレポートに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記1又は複数のスレーブロボットに伝達するための通信経路を決定する機能と、
    決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する機能と、
    を実現させるプログラム。
  14. 複数の操作装置と、前記複数の操作装置うちのいずれか1つの操作装置で動作が制御される1つのスレーブロボットと、前記複数の操作装置と前記スレーブロボットとの間において情報を伝達する通信経路を構成するための複数の仮想ルータと、を備えるテレイグジスタンスシステムにおいて、前記複数の操作装置と前記スレーブロボットとの間の通信を制御するコンピュータに、
    前記複数の操作装置の中から、前記スレーブロボットの動作を制御するための操作装置である優先操作装置を特定する優先操作装置情報を取得する機能と、
    前記複数の操作装置、前記スレーブロボット、及び前記複数の仮想ルータのそれぞれから、前記複数の操作装置と前記スレーブロボットとの通信が確立している間にステータスレポートを繰り返し取得する機能と、
    前記ステータスレポートを取得することを契機として、取得したステータスレポートと前記優先操作装置情報とに基づいて、前記スレーブロボットの動作を制御するための制御指示を前記スレーブロボットに伝達するための通信経路を決定する機能と、
    決定した前記通信経路を構成するための指示を前記複数の仮想ルータそれぞれに送信する機能と、
    を実現させるプログラム。
JP2019070968A 2019-04-03 2019-04-03 制御装置、ネットワーク制御方法、及びプログラム Pending JP2020170934A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019070968A JP2020170934A (ja) 2019-04-03 2019-04-03 制御装置、ネットワーク制御方法、及びプログラム
PCT/JP2020/015027 WO2020204072A1 (ja) 2019-04-03 2020-04-01 制御装置、ネットワーク制御方法、及びプログラム
CN202080026402.2A CN113940043B (zh) 2019-04-03 2020-04-01 控制装置、网络控制方法以及计算机可读记录介质
EP20784218.8A EP3952230A4 (en) 2019-04-03 2020-04-01 CONTROL DEVICE, NETWORK CONTROL METHOD AND PROGRAM
US17/491,879 US20220019216A1 (en) 2019-04-03 2021-10-01 Control apparatus and network control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019070968A JP2020170934A (ja) 2019-04-03 2019-04-03 制御装置、ネットワーク制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2020170934A true JP2020170934A (ja) 2020-10-15

Family

ID=72667872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019070968A Pending JP2020170934A (ja) 2019-04-03 2019-04-03 制御装置、ネットワーク制御方法、及びプログラム

Country Status (5)

Country Link
US (1) US20220019216A1 (ja)
EP (1) EP3952230A4 (ja)
JP (1) JP2020170934A (ja)
CN (1) CN113940043B (ja)
WO (1) WO2020204072A1 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101973031B (zh) * 2010-08-24 2013-07-24 中国科学院深圳先进技术研究院 云机器人系统及实现方法
JP5304813B2 (ja) * 2011-02-22 2013-10-02 沖電気工業株式会社 通信ノード装置
US9042234B1 (en) * 2012-10-31 2015-05-26 Big Switch Networks, Inc. Systems and methods for efficient network traffic forwarding
JP6237397B2 (ja) * 2014-03-27 2017-11-29 富士通株式会社 制御装置、および、通信方法
GB201409883D0 (en) * 2014-06-03 2014-07-16 Ocado Ltd Methods, systems, and apparatus for controlling movement of transporting devices
JP2016192732A (ja) * 2015-03-31 2016-11-10 Kddi株式会社 経路制御装置、経路制御方法及び経路制御システム
CN104794214B (zh) * 2015-04-27 2018-06-26 广州大学 一种设计大数据驱动云机器人的方法
JP2017022548A (ja) * 2015-07-10 2017-01-26 株式会社日立製作所 通信経路選択方法、ネットワークシステム、及びサーバ
CN106358256B (zh) * 2016-10-26 2019-09-17 上海电机学院 一种多机器人控制协调者产生方法
JP7034494B2 (ja) * 2017-05-17 2022-03-14 Telexistence株式会社 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム

Also Published As

Publication number Publication date
US20220019216A1 (en) 2022-01-20
CN113940043A (zh) 2022-01-14
EP3952230A1 (en) 2022-02-09
EP3952230A4 (en) 2022-05-18
WO2020204072A1 (ja) 2020-10-08
CN113940043B (zh) 2023-05-09

Similar Documents

Publication Publication Date Title
KR102575470B1 (ko) 이미지 디스플레이를 제어하기 위한 디스플레이 디바이스의 추적의 사용
WO2018225187A1 (ja) 情報処理システム、情報処理装置、サーバ装置、画像提供方法および画像生成方法
US11770599B2 (en) Techniques to set focus in camera in a mixed-reality environment with hand gesture interaction
EP3238165A1 (en) Technologies for shared augmented reality presentations
US10871822B2 (en) Image generation apparatus, image generation system, and image generation method
JP2016522463A5 (ja)
WO2019037074A1 (zh) 虚拟现实交互系统、方法及计算机存储介质
JP7034494B2 (ja) 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム
JP2022518885A (ja) 適応的自由度(dof)選択を有する人工現実システム
JP7239916B2 (ja) 遠隔操作システム、情報処理方法、及びプログラム
US11557098B2 (en) Technologies for time-delayed augmented reality presentations
KR102142876B1 (ko) 클라우드 기반의 가상현실 서비스를 위한 버퍼 관리 방법 및 장치
KR20150133496A (ko) 네트워크를 통해 헤드마운트형 디스플레이 장치를 포함하는 수신기에 영상을 전송하는 방법과, 이를 위한 송신기, 중계 서버 및 수신기
JP6560696B2 (ja) データのセグメント受信を制御するクライアント、プログラム及び方法
He et al. vConnect: perceive and interact with real world from CAVE
WO2020204072A1 (ja) 制御装置、ネットワーク制御方法、及びプログラム
CN111448536B (zh) 数据替换装置、终端及数据替换程序
CN107251527A (zh) 共享的场景对象同步
JP6526879B1 (ja) データ送信装置、およびプログラム
US9888284B2 (en) Method and apparatus for improved streaming of immersive content
US11758104B1 (en) Systems and methods for predictive streaming of image data for spatial computing
JP7166983B2 (ja) 端末およびプログラム
US20230344891A1 (en) Systems and methods for quality measurement for videoconferencing
JP2018000577A (ja) 情報処理方法、システム
JP7420585B2 (ja) Ar表示制御装置及びそのプログラム、並びに、ar表示システム