(A)第1の実施形態
以下、本発明による移動物システム、移動物、制御プログラム、及び制御方法の第1の実施形態を、図面を参照しながら詳述する。この実施形態では、本発明の移動物システム及び移動物をロボットシステム及びロボットに適用した例について説明する。
(A-1)第1の実施形態の構成
図1は、この実施形態のロボットシステム1の全体構成を示すブロック図である。
ロボットシステム1は、ロボット10及び操作卓を有している。
ここで、ロボットとは、一般に、「人造人間」、「人間に類似した動作や作業を行うもの」、「指示に基づき動作や作業をコンピュータ操作により行う装置」、「自律的な動作や作業をコンピュータ操作により行う装置」、「自動制御によるマニピュレーション機能又は、移動機能をもち、各種の作業をプログラムによって実行でき、産業に使用される機械」(JIS B 0134-1998)、「人間にサービスするロボット」(JIS B 0187:2005)「センサ、知能・制御系、駆動系の3つの要素技術を有する、知能化した機械システム」(経済産業省ロボット政策研究会)、等のように解される。
この実施形態において、ロボット10は種々の用途(オペレーション)に適用可能な汎用的な移動物であるものとする。ロボット10は、例えば、警備(例えば、警備対象施設における巡回監視や巡回先で発見した人間との対話)、製造(例えば、工場内の設備点検、製造部品や材料の搬送)、建設(例えば、建築部品の搬送、施工状態の確認)、旅客事業(例えば、旅客や荷物の搬送、観光地や荷物の点検、旅客との対話)、各種インフラの点検、物流事業(例えば、貨物の搬送、貨物や貨物車両の点検)等の用途(オペレーション)に適用することができる。また、ロボット10は、同時に複数種類のオペレーションを実行するようにしてもよい。
また、ロボット10は、自律的に動作しつつ、人間(操作卓20のオペレータOP)と連携・協調した動作も可能である。例えば、ロボット10は、操作卓20への自律的な通知処理や、操作卓20の要求に応じたデータ送信処理や、操作卓20からの制御(制御信号)に応じた動作(例えば、移動等)を行うことも可能である。
操作卓20は、オペレータOPが使用する端末である。操作卓20は、オペレータOPとロボット10とで協調・連携したオペレーションを実現するための機能に対応している。例えば、操作卓20は、ロボット10からの通知の出力、ロボット10の状態(状況)に関するデータ出力、オペレータOPの操作に応じたロボット10の遠隔制御処理、オペレータOPの状態に関する監視処理等が実行可能であるものとする。
ロボット10と操作卓20とは、IP網NW(例えば、インターネットやLAN等のネットワーク)を介して相互に通信可能であるものとする。ロボット10と操作卓20との間の通信方式は限定されないものであり、IP網以外にも種々の通信方式を適用することができる。この実施形態では、少なくともロボット10は、無線LAN通信可能な通信装置であり、オペレーションを実行する任意の位置においてIP網NWに接続可能であるものとする。
次に、ロボット10の内部構成について説明する。
図1に示すように、ロボット10は、制御部11、通信部12、移動部13、カメラ部14、センサ部15、表示部16、スピーカ17、及びマイク18を有している。
制御部11は、ロボット10の全体を制御する機能や種々のデータ処理の機能を担っている。制御部11は、例えば、プロセッサ及びメモリを有するコンピュータ(プログラムの実行構成)に、この実施形態に係る制御プログラムを含むプログラムをインストールすることにより実現することができる。
通信部12は、IP網NWに接続するための通信IFである。この実施形態では、通信部12は、IP網NW(IP網NWに接続可能な無線基地局)に無線接続可能であるものとする。
移動部13は、制御部11の制御に応じて、自装置(ロボット10)を任意の方向に移動させるための移動機構(移動手段)である。この実施形態では、移動部13は、オペレーションを実行する領域(以下、「オペレーション実行領域」と呼ぶ)内で任意の方向に移動可能であるものとする。移動部13が対応する移動方式は限定されないものである。移動部13は、例えば、車輪、キャタピラ、ホバークラフト、二足歩行、四足歩行等の種々の移動機構を適用することができる。また、移動部13は二次元的な移動だけでなく三次元的な移動が可能な移動機構(例えば、回転翼により空中を移動可能としてもよいし、スクリューにより水上又は水中を移動可能とするようにしてもよい)。
カメラ部14は、制御部11の制御に応じて1又は複数のカメラ(撮像装置)によりロボット10の周辺を撮像することが可能な撮像手段である。カメラ部14は、例えば、複数のカメラにより全周囲の視野を確保した構成とするようにしてもよい。
センサ部15は、1又は複数の種類のセンサ(検知装置)によりロボット10の周辺について種々のセンシング処理を行ってセンサ情報(検知結果)を取得ことが可能な検知手段である。なお、本明細書において、「センシング」とは、温度、湿度、照度、気圧、振動(震動)、距離、傾き等の推定量の検知(増減や発生の検知)、並びに、煙、化学物質、及び静電気等の発生の検知(増減や推定量の検知)を表す語として用いる。また、本明細書において、「センシング」とは、検知に加え、検知内容を信号に変換する処理を表す語として用いる。また、本明細書において、「センシング」とは、検知に加え、検知内容を計測・判別・分析することを表す語として用いる。センサ部15が備えるセンサの種類は限定されないものである。例えば、センサ部15は、温度計、湿度計、照度計、気圧計、周囲の物体の配置状況を検知するためのLidar(Laser Imaging Detection and Ranging)センサ、熱画像計測装置(サーモグラフィカメラ)等から1又は複数種類を備えるようにしてもよい。例えば、センサ部15は、無線通信で、外部のセンサ装置(当該センサ装置の周辺に種々のセンシング処理を行ってセンサ情報(検知結果)を取得することが可能な装置)からセンサ情報を取得してもよい。この場合、センサ部15は、センシング用無線通信部(例えば920MHz帯マルチホップ無線通信に対応する無線通信部)を有し、センサ部15(センシング用無線通信部)が親機となり子機となるセンサ装置と無線通信(中継機となる複数の子機(センサ装置)で無線通信が中継されるマルチホップ無線通信)でやりとりしセンサ情報を取得する。
以上のように、この実施形態のロボット10では、カメラ部14とセンサ部15によりロボット10の周囲に係る情報を取得する情報取得部が構成されている。なお、ロボット10では、カメラ部14のみで、制御部11の処理で必要となる自装置の周囲の情報を全て取得可能である場合には、センサ部15を除外した構成としてもよい。
表示部16は、制御部11の制御に応じて、種々の情報の表示出力を行う表示手段である。例えば、表示部16は、ディスプレイやランプ等の表示装置を適用することができる。
スピーカ17は、制御部11の制御に応じた音響(例えば、オペレータOPの音声や合成音声等)をロボット10の周辺に出力(音響出力、表音出力)する音響出力手段である。
マイク18は、ロボット10の周辺の音響(例えば、周囲の人の音声)を捕捉する音響捕捉手段である。
次に、操作卓20の内部構成について説明する。
操作卓20は、制御部21、通信部22、表示部23、操作部24、カメラ部25、センサ部26、スピーカ27、及びマイク28を有している。
操作卓20において、センサ部26以外の構成については種々のコンピュータ(例えば、スマートホンやPC)の構成を適用することができる。
制御部21は、操作卓20の全体を制御する機能や種々のデータ処理の機能を担っている。制御部21は、例えば、プロセッサ及びメモリを有するコンピュータ(プログラムの実行構成)に、この実施形態に係る操作卓制御プログラム(端末制御プログラム)を含むプログラムをインストールすることにより実現することができる。
通信部22は、IP網NWに接続するための通信IFである。
表示部23は、制御部21の制御に応じて、種々の情報の表示出力を行う表示手段である。例えば、表示部23は、ディスプレイ(タッチパネルディスプレイを構成するディスプレイを含む)を適用することができる。操作卓20において、表示部23には、例えば、ロボット10のカメラ部14で撮像された画像(以下、「カメラ画像」と呼ぶ)を含む操作画面(GUI)等が表示可能である。
操作部24は、オペレータOPからの操作を受け付けるための操作手段(操作デバイス)である。例えば、操作部24は、キーボード、マウス、タッチパネル(タッチパネルディスプレイを構成するタッチパネルを含む)、トラックパッド、及びコントローラ(例えば、十字キーや操作レバーによりロボット10の移動に関する操作を受け付け可能な装置)等のデバイスを適用することができる。操作部24では、例えば、オペレータOPからロボット10の移動方向や移動速度等の操作(入力)を受け付けることができる。
カメラ部25は、操作卓20の周辺(オペレータOP及び又はオペレータOPの周囲を含む)を撮像する撮像手段である。
センサ部26は、1又は複数の種類のセンサ(検知装置)により操作卓20の周辺(オペレータOP及び又はオペレータOPの周囲を含む)について種々のセンシング処理を行うことが可能な検知手段である。センサ部26は、例えば、オペレータOPのバイタルサイン(例えば、体温、心拍数、血圧値、呼吸数等)を検知可能とするセンサを適用するようにしてもよい。例えば、センサ部15のように、センサ部26は無線通信で外部のセンサ装置からセンサ情報を取得してもよい。
スピーカ27は、制御部21の制御に応じて操作卓20の周辺(オペレータOPを含む)に対して音響を出力(音響出力、表音出力)する音響出力手段である。
マイク28は、操作卓20の周辺の音響(オペレータOPが発話した音声を含む)を捕捉する音響捕捉手段である。
次に、ロボット10の制御部11が行う自律的な制御処理(以下、「自律制御処理」と呼ぶ)と、操作卓20を介したオペレータOPとの連携処理の概要について説明する。
制御部11は、通常は自律的な判断によりロボット10の各部の制御(以下、「自律制御」と呼ぶ)を行うが、カメラ部14が撮像したカメラ画像及び又はセンサ部15が検知したセンサ情報(検知結果)を利用して、所定の事象(イベント)を検出した場合には、自律制御を中止するようにしてもよい。以下では、制御部11が自立制御を中止すべきと判断する事象を「自律制御中止インシデント」又は単に「インシデント」と呼ぶものとする。そして、制御部11は、インシデントを検出した場合には、当該インシデントの内容(例えば、インシデントの種別)に応じた処理を行う。例えば、制御部11は、インシデントを検出した場合には、その旨を操作卓20を介してオペレータOPに通知し、操作卓20(オペレータOP)からの制御による遠隔操作を受け付ける動作モード(以下、「遠隔操作モード」と呼ぶ)に移行するようにしてもよい。
具体的には、例えば、制御部11は、ロボット10の移動路上に移動(走行)の妨げとなる障害物を検知し、その障害物を自律的な移動のみでは回避できないと判断した場合に、当該障害物を発生源(以下、「インシデント源」とも呼ぶ)とするインシデントを検出するようにしてもよい。この場合、制御部11は、例えば、操作卓20(オペレータOP)にインシデントが発生した旨を通知すると共に、遠隔操作モードに移行して操作卓20(オペレータOP)に操作を引き継ぐことで、障害物を回避して移動を継続させることができる。
制御部11が、障害物を検知する方法については限定されないものである。例えば、制御部11は、カメラ部14が撮像したカメラ画像や、センサ部15(例えば、図示しない超音波センサやミリ波レーダー等)が検知したセンサ情報(検知結果)に基づいて、障害物を検知するようにしてもよい。なお、制御部11は、カメラ画像又はセンサ情報の一方又は両方に基づいて障害物の検知を行うようにしてもよい。また、制御部11は、移動路上に障害物を発見したとき、その障害物の種類や状態などを認識するようにしてもよい。例えば、制御部11は、カメラ画像やセンサ情報からAI処理(例えば、予め想定されるインシデント源(例えば、障害物)の画像等を教師データとして学習させたモデルを用いたAI処理)を利用して障害物の種類や状態を特定する情報を取得するようにしてもよい。
例えば、障害物としては、小さな木の枝のように、障害物ではあるが、ロボット10が予定している道(通路/道路)を変更せずに回避することが可能なあるものであったり、大きな倒木で完全に道(通路/道路)が塞がれてしまうもの等のパターンが存在する。このとき、制御部11では、あらかじめその頻度と深刻さを考慮するレベルを分けておき、発見した障害物に対して、オペレータOPの介在によって何らかのアクションが必要かどうかをあらかじめ設定しておくようにしてもよい。例えば、ロボットシステム1では、ロボット10(制御部11)が検出した障害物の種類(レベル)に応じて、オペレータOPにより操作卓20に対する手動操作によって他のルート(迂回路)を検索することを促したり、人(例えば、現地の警備員等)が駆けつけることを促して障害物を取り除かせること等を設定可能とするようにしてもよい。
そして、制御部11は、人(例えば、オペレータOPや現地の警備員等)の介在が必要であると判断した場合に、インシデント(自律制御中止インシデント)を検出したと判断し、通信部12を介して操作卓20(オペレータOP)に、インシデントに関する情報(例えば、人の介在が必要であることや、その判断に至った原因を含むようにしてもよい)について通知し、遠隔操作モードに移行するようにしてもよい。そして、操作卓20の制御部21が、受信した通知をオペレータOPに出力(例えば、表示部23やスピーカ27を用いて出力)することで、オペレータOPにインシデントの検出を認識させる共に、操作卓20(操作部24)を手動で操作させ、ロボット10の周囲の状況を確認させつつ、必要に応じて障害物の回避を行わせたり、現地へ人を派遣するなどの判断を行わせることができる。
(A-2)第1の実施形態の動作
次に、以上のような構成を有する第1の実施形態のロボットシステム1の動作(実施形態に係る制御方法)を説明する。
図2は、この実施形態におけるロボット10の動作について示したフローチャートである。
図2は、ロボット10が、オペレーションの過程で、開始位置(第1の位置)から目標位置(第2の位置)へ移動する際の動作(制御部11が実行する処理)について示したフローチャートとなっている。
ロボット10の制御部11は、開始位置から目標地点への移動を開始する際、まず、開始位置から目標位置へ到達するためのルート(以下、「移動予定ルート」と呼ぶ)の計算を行う(S101)。
次に、制御部11は、計算した移動予定ルートに従って移動するように、移動部13に対する制御(移動予定ルートに沿って移動するように移動する方向及び速度を制御)を行う(S102)。
このとき、制御部11は、移動しながら、目標位置に到達したか否かの確認(S103)、及び移動予定ルート上の障害物(移動予定ルート上におけるロボット10の移動を妨げる物体又は妨げる恐れのある物体)の有無の検知(S104)を行う。このとき、移動部13は、目標地点への到達を確認した場合当該フローチャートの処理を終了し、移動予定ルート上に障害物を検知した場合には、後述するステップS105に移行し、目標地点に到達しておらず且つ移動予定ルート上に障害物も無い場合には上述のステップS102に戻って動作し移動予定ルート上の移動を継続する。
一方、移動予定ルート上に障害物が検出された場合、制御部11は、移動予定ルートの変更により障害物の回避が可能であるか否か(回避ルートの有無)を判断し(S105)、回避可能と判断した場合は後述するステップS109に移行し、そうでない場合は後述するステップS106に移行する。
ステップS105で、移動予定ルートの変更により障害物の回避が可能であると判断した場合、制御部11は、当該障害物を回避した新しい移動予定ルートを設定し(S109)、上述のステップS102に戻って目標位置への移動を再開する。
一方、上述のステップS105で、移動予定ルートの変更により障害物の回避が不可能と判断された場合、制御部11は、インシデントが発生したと判断し、操作卓20(オペレータOP)へ所定の通知を行い(S106)、操作卓20からの応答(通知に対する応答)の有無を確認する(S107)。このとき、制御部11は、移動部13を制御して移動を一旦中止するようにしてもよい。
そして、制御部11は、通知に対する応答が操作卓20からあった場合は後述するステップS108移行し、通知に対する応答がない場合(例えば、直前の通知から一定時間内に応答がない場合)は、上述のステップS106に戻って再度通知処理を行う。
上述のステップS107で、操作卓20からの応答を受信した場合、制御部11は、操作卓20からの制御信号に応じて移動部13を動作させる遠隔操作モードに切り替えて(S208)移動部13の操作権を操作卓20に移譲し、当該フローチャートの処理を終了する。
次に、ロボット10(移動部13)が上述の図2のフローチャートに従って動作する場合の具体的なシナリオの例について説明する。
ここでは、図3に示すように、ロボット10がオペレーションの過程で位置PAから位置PBまで移動する場合のシナリオについて説明する。
図3は、ロボット10が移動する移動予定ルートの地図の例について図示している。図3に示す地図では、ロボット10が移動することができない領域(以下、「移動不可能領域」と呼ぶ)に斜線(ハッチ)を付すことで、ロボット10が移動可能な領域(以下、「移動可能領域」と呼ぶ)区分けしている。図3では位置PAから位置PBまで到達可能なルートとして第1のルートR1の線が図示されている。本明細書では、地図を図示する際には図3と同様の形式で説明するものとする。
ここでは、ロボット10は、第1のルートR1を移動予定ルートとして自律移動(自律制御により移動)しているものとする。すなわち、図3は、ロボット10の制御部11において、自律移動に必要となる情報(移動予定ルートの決定等に必要となる情報;以下、「移動ルート情報」と呼ぶ)を可視化した内容と言える。言い換えると、ここでは、ロボット10の制御部11において、図3に示すような移動ルート情報が保持されているものとして説明する。すなわち、移動ルート情報には、ロボット10が移動可能な全体の領域の地図情報(以下、この地図情報による地図を「全体地図」と呼ぶ)、全体地図上における初期位置情報(例えば、図3における位置PAを特定する座標等の情報)、全体地図上における目標位置情報(例えば、図3における位置PBを特定する座標等の情報)、及び全体地図上における移動予定ルートの情報(例えば、図3における第1のルートR1に相当する曲線を特定する情報)が含まれる。全体地図の地図情報は、例えば、図3に示すような二次元情報(縦横で表された地図情報)としてもよいし、三次元情報報(縦横高さで表された地図情報)としてもよい。ロボット10の制御部11は、予め全体地図の地図情報を全て記憶しておくようにしてもよいし、必要に応じて外部(例えば、IP網NW上の図示しない地図情報のサーバ)からダウンロードするようにしてもよい。
上述のステップS101において、ロボット10の制御部11が、移動予定ルート(例えば、図3における第1のルートR1)を計算(決定)するアルゴリズムについては限定されないものであり、種々のアルゴリズムを適用することができる。
そして、ロボット10の制御部11は、上述のステップS104、S105、S109のように、移動予定ルート上に障害物を検出した場合、移動ルート情報に基づいて、障害物を回避して目標位置に到達可能な回避ルートを識別し、回避ルートが取得できた場合には当該回避ルートを新たな移動予定ルートとして設定する。制御部11が回避ルートを取得(識別)する方法は限定されないものである。
図4、図5は、第1のルートR1上に障害物が発生した場合の回避ルートの例について示した図である。
図4では、ロボット10の制御部11が、第1のルートR1を移動予定ルートとして移動を開始した地点(位置PA)で、第1のルートR1上の位置PDに障害物OBを検出した例について示している。図4の例では、位置PDを通らずに位置PAから位置PBまで到達可能な回避ルートとしては、例えば、第2のルートR2と第3のルートR3が存在する。
図5では、ロボット10の制御部11が、第1のルートR1を移動予定ルートとして移動を開始し、位置PCに到達した時点で、位置PDに障害物OBを検出した例について示している。この場合は、図5に示すように位置PDを通らずに位置PCから位置PBまで到達可能な回避ルートとしては、例えば、第4のルートR4が存在する。
次に、制御部11が、障害物を検出した際における回避ルートを識別(取得)する処理の具体例について説明する。
例えば、移動ルート情報に、移動予定ルートに対応する代替ルート(移動予定ルートと異なる経路で目標位置に到達するルート)の情報が予め設定されている場合(以下、その予め設定されている代替ルートを「静的代替ルート」と呼ぶ)を想定する。このとき、制御部11は、当該静的代替ルートが障害物を回避して目標位置に到達できる場合には、当該静的代替ルートを回避ルートの候補として取得することができる。例えば、ロボット10の制御部11で、第1のルートR1に対応する静的代替ルートとして第2のルートR2が設定されていた場合、第2のルートR2が回避ルートの候補として取得されることになる。
また、制御部11は、例えば、移動ルート情報、自装置の現在位置、障害物の位置、及び目標位置に基づいて、所定のアルゴリズム(例えば、AI等を用いた種々の経路決定アルゴリズム)に従って代替ルートの検索を行い(以下、このとき検出した代替ルートを「動的代替ルート」と呼ぶ)、動的代替ルートが検出できた場合、当該動的代替ルートを回避ルートの候補として取得するようにしてもよい。例えば、ロボット10の制御部11で、移動ルート情報、自装置の現在位置PA、障害物の位置PD、及び目標位置PBに基づいて、動的代替ルートとして図4に示す第3のルートR3が検出された場合、第3のルートR3が回避ルートの候補として取得されることになる。
制御部11において、動的代替ルートを検出する具体的なアルゴリズムについては限定されないものである。例えば、制御部11は、自装置の現在位置、障害物の位置、及び目標位置に基づいて、検出した障害物を回避可能であって、目標位置に到達する最短のルートを動的代替ルートとして検出するようにしてもよい。制御部11は、例えば、AIにより、RRT(Rapidly exploring random tree)アルゴリズムなどに基づき障害物を発見した地点から、目標位置までに通じる純粋な最短ルートを導出してもよいし、障害物を発見した地点から障害物を回避しつつ現在の移動予定ルートに戻って目標位置に通じる最短ルートを導出するようにしてもよい。例えば、図5の例において、第4のルートR4は、障害物を発見した地点位置PCから目標位置PBに通ずる純粋な最短ルートであり、障害物を発見した位置PCから障害物を回避しつつ現在ルートに戻り目標位置PBに通ずる最短ルートともなる。
なお、ロボット10の制御部11は、図4、図5に示すように現在の移動予定ルートと道(通路/道路)自体が異なるルートだけを回避ルートの候補として検出するようにしてもよいが、移動予定ルートと同じ道(通路/道路)で通る位置を補正(変更)することで障害物を回避するルートについても検出可能とするようにしてもよい。例えば、制御部11は、カメラ部14が撮像した画像やセンサ部15の検知結果に基づいて、現在の移動予定ルートの道(通路/道路)と障害物との位置関係を識別すると共に、現在の移動予定ルートと同じ道で自装置が通る位置を補正(以下、「ルート補正」と呼ぶ)することで、障害物を回避しつつ通行可能(幅や高さを識別して通行可否を識別)であるか否かを判断するようにしてもよい。そして、制御部11は、ルート補正により、障害物を回避することができる場合、当該ルート(現在の移動予定ルートをルート補正したルート;以下、「補正代替ルート」と呼ぶ)を回避ルートの候補として取得するようにしてもよい。
ロボット10の制御部11が行うルート補正(補正代替ルートの検出の仕方)の具体例について図6、図7を用いて説明する。
ここでは、図6に示すように、ロボット10の制御部11が、第1のルートR1を移動予定ルートとして移動中に、位置PCの位置において位置PDに存在する障害物OBを検出(発見)したものとする。
図7は、ロボット10のカメラ部25が撮像した進行方向(移動方向)のカメラ画像の例について示した図である。
図7は、ロボット10のカメラ部25が、位置PCから第1のルートR1の進行方向を撮像した場合のカメラ画像について示した図である。この場合、ロボット10の制御部11は、図7(a)に示すようなカメラ画像やセンサ部15のセンサ情報(例えば、図示しないLidarセンサを用いた検知結果)に基づき、図7(b)に示すように位置PDの通路において、ロボット10から見て障害物OBの右側と左側に隙間が存在することが検知できる。また、このとき、ロボット10の制御部11は、図7(a)に示すようなカメラ画像やセンサ部15のセンサ情報に基づいて、障害物OBの右側と左側に形成される隙間の大きさ(幅)を検知することができる。すなわち、ロボット10の制御部11は、図7(a)に示すようなカメラ画像やセンサ部15のセンサ情報に基づいて、障害物OBの右側と左側に形成される隙間について、それぞれ自装置(ロボット10)が障害物OBに接触せずに通過できるか否かを判断することができる。ここで、ロボット10の制御部11は、図7(b)に示すように、障害物OBの右側に形成された隙間はロボット10が通過可能であり、ルート補正により障害物OBを回避できると判断したものとする。そうすると、制御部11は、図7(c)、図6に示すように、現在の移動予定ルートである第1のルートR1について、ロボット10から見て障害物OBの右側を通過するルート補正を行った第5のルートR5(補正代替ルート)を回避ルートの候補として取得することができる。
上記の通り、ロボット10の制御部11は、静的代替ルート、動的代替ルート、及び補正代替ルートについて回避ルートの候補として取得することができる。ロボット10の制御部11は、静的代替ルート、動的代替ルート、及び補正代替ルートの全てを回避ルートの候補として取得可能な構成としてもよいし、一部のみを回避ルートの候補として取得可能としてもよい。また、ロボット10の制御部11は、ステップS105~S108に示すように、回避ルートが取得できたか否かに応じて、操作卓20(オペレータOP)と連携する処理等のアクションも変化する。
ここでは、ロボット10の制御部11が、制御部11による回避ルートの取得処理及び回避ルートの取得結果に応じたアクション(インシデント(自律制御中止インシデント)の有無に応じたアクション)を決定する処理の具体例について説明する。具体的には、ここでは、制御部11は、図8のようなマトリクスで示されるポリシーで、回避ルートの取得及び回避ルートの取得結果に応じたアクションを決定するものとして説明する。
図8に示すポリシーでは、制御部11は、補正代替ルート、静的代替ルート、動的代替ルートの順序で取得してゆき、最初に取得した回避可能な代替ルートを回避ルートとして取得し、いずれの代替ルートも回避不可であった場合には回避不可能と判断するポリシーとなっている。言い換えると、図8に示すポリシーでは、制御部11は、補正代替ルート、静的代替ルート、動的代替ルートという優先順序で、回避ルートの候補を取得する。
図8に示すポリシーでは、上の行から順に、補正代替ルートで回避可能な場合、補正代替ルートでは回避できないが静的代替ルートで回避可能な場合、補正代替ルート及び静的代替ルートでは回避できないが動的代替ルートで回避可能な場合、及びいずれの代替ルートでも回避できない場合の「識別結果」(回避の可否)、及びその後の「アクション」について示している。
図8に示すポリシー(1行目のポリシー)では、制御部11は、補正代替ルートで回避できると判断した場合、アクションとして回避位置まで移動して元の移動ルートに戻る補正代替ルート(例えば、例えば、図6に示す第5のルートR5)を回避ルートとして取得し、移動予定ルートに設定する処理を行う。なお、このとき、制御部11は、操作卓20(オペレータOP)に検出した障害物に関する情報(以下、「障害物情報」と呼ぶ)や、補正代替ルートで移動中である旨を通知するようにしてもよい。障害物情報には、例えば、障害物を撮像したカメラ画像や、障害物のカメラ画像から識別(例えば、AI等により識別)した障害物の名称(例えば、段ボール箱、倒木、台車、危険物等)や、センサ部15の計測結果より取得した障害物の大きさ(例えば、幅、高さ、奥行き等)の情報を含むようにしてもよい。
また、図8に示すポリシー(2行目のポリシー)では、制御部11は、補正代替ルートでは回避できないが静的代替ルートで回避可能と判断した場合、アクションとして静的代替ルート(例えば、例えば、図4に示す第2のルートR2)を回避ルートとして取得し、移動予定ルートに設定する処理を行う。なお、このとき、制御部11は、操作卓20(オペレータOP)に障害物情報や、静的代替ルートで移動中である旨を通知するようにしてもよい。
さらに、図8に示すポリシー(3行目のポリシー)では、制御部11は、補正代替ルート及び静的代替ルートでは回避できないが動的代替ルートで回避可能と判断した場合、アクションとして動的代替ルート(例えば、例えば、図5に示す第4のルートR4)を回避ルートとして取得し、移動予定ルートに設定する処理を行う。なお、このとき、制御部11は、操作卓20(オペレータOP)に障害物情報や、動的代替ルートで移動中である旨を通知するようにしてもよい。
さらにまた、図8に示すポリシー(4行目のポリシー)では、制御部11は、いずれの代替ルートでも回避できないと判断した場合、回避不可能と判断(インシデント検出と判断)し、アクションとして、その場で移動を停止し、操作卓20(オペレータOP)へ、障害物情報、障害物を回避不可能であること(いずれの代替ルートでも回避不可能である旨の情報を付加するようにしてもよい)、及びオペレータOPへ手動で自装置の操作を行うことを依頼する処理(以下、「手動操作依頼」と呼ぶ)を行う。また、制御部11は、操作卓20から手動操作依頼に対する応答を受けると、周囲の状況に関するデータ(例えば、カメラ画像やセンサ部15の計測結果等を含むデータ)を操作卓20に送信するようにしてもよい。
以上のように、ロボット10の制御部11は、障害物を回避不可能と判断した場合には、操作卓20(オペレータOP)に手動操作依頼を送信して操作卓20(オペレータOP)の手動による遠隔操作を受け付ける動作モード(遠隔動作モード)に移行する処理を行う(ステップS108参照)。
一方、操作卓20の制御部21は、ロボット10から手動操作依頼を受信すると、その旨をオペレータOPに出力する処理を行う(例えば、表示部16による表示出力やスピーカ17による音響出力する処理を行う)。その後、操作卓20の制御部21は、オペレータOPから手動操作依頼に対する応答の操作を受け付けると(操作部24に対する所定の操作を受けた場合)、ロボット10に手動操作依頼に対する応答を送信し、ロボット10との間にコネクション(遠隔操作するためのコネクション)を確立する。これにより、操作卓20の制御部21は、オペレータOPからの操作入力(操作部24に対する操作)に応じて、ロボット10に制御信号(例えば、移動する方向及び速度に関する制御信号)を送信する処理を行う。一方、ロボット10の制御部11は、遠隔動作モードに移行すると、操作卓20からの制御信号に応じて移動するように移動部13を制御する処理を行う。このとき、ロボット10の制御部11が、リアルタイムにカメラ部14が撮像するカメラ画像から移動する方向(進行方向)の視野の画像やセンサ部15が取得したセンサ情報を取得して操作卓20に送信し、操作卓20の制御部21が取得した画像を表示部23(操作画面)に表示するようにしてもよい。このとき、操作卓20の制御部11は、例えば、図9に示すような画面を表示部23に表示するようにしてもよい。
図9、図10は、ロボット10(制御部11)が障害物を発見して遠隔操作モードに切り替わった際に操作卓20(表示部23)で表示される画面(以下、「遠隔操作画面」と呼ぶ)の例について示した図である。図9、図10では、図5に示すようにロボット10が位置PCで位置PDに存在する障害物OBを発見し遠隔動作モードに移行した場合に操作卓20で表示される遠隔操作画面の例について示している。
図9に示すように、遠隔操作画面では、ロボット10が撮像したカメラ画像(ロボット10が移動する方向の画像)と共に、障害物情報(図9における「段ボール縦30cmx横200cmx高さ130cm」という文字列)や、センサ情報(図9における、「温度:26℃、湿度:45%、照度:46lx、気圧:990hPa」という文字列)を付記するようにしてもよい。これにより、オペレータOPは、ロボット10のカメラ画像(映像情報)や、ロボット10が発見した障害物の障害物情報やロボット10が存在する位置の環境情報(温度等)を閲覧しながら遠隔操作を行うことができる。
なお、遠隔操作画面に表示される映像情報として、単にカメラ部14が撮像した画像をそのまま表示するようにしてもよいし、加工して表示するようにしてもよい。遠隔操作画面では、例えば、図10に示すように、ロボット10が撮像したカメラ画像に基づいて生成(レンダリング)されたロボット10の俯瞰画像(当該ロボット10周辺の自由視点画像であって当該ロボット10を斜め上方向から俯瞰した画像)に、ロボット10をかたどったグラフィックG101(いわゆるアバター画像)をレンダリングした画像(いわゆるフライングビュー画像)を表示するようにしてもよい。フライングビュー画像をレンダリングする処理については、例えば、参考文献1(沖電気工業株式会社 駒井 英敬著,「フライングビュー」,[Online],INTERNET,[2019年10月8日検索],<URL:https://www.oki.com/jp/iot/doc/2018/img/ceatec/ceatec_flyingview.pdf>の記載技術を適用するようにしてもよい。
また、ロボット10の制御部11は、遠隔操作モードにおいて、オペレータOPの手動による操作受付だけでなく、オペレータOPの手動操作による新たな移動予定ルートの設定を受け付けるようにしてもよい。
ここでは具体例として、図11を用いて、ロボット10(制御部11)が遠隔操作モードにおいてオペレータOPの手動操作により新たな移動予定ルートの設定を受け付ける動作の例について説明する。
図11の例では、ロボット10が第1のルートR1を移動予定ルートとして移動中に位置PCで位置PDに存在する障害物OBを発見した場合の例について示している。この場合、操作卓20の制御部21は、表示部23に新たな移動予定ルートの設定を受け付けることが可能な操作画面(例えば、図11に示すような移動ルート情報を表示した操作画面)を表示し、新たな移動予定ルートの指定を受け付けるようにしてもよい。ここでは、例として、オペレータOPにより図11に示す第6のルートR6が新たな移動予定ルートとして設定されたものとする。この場合、操作卓20の制御部21は、ロボットに対して新たな移動予定ルートを含む移動ルート情報を送信する。そして、遠隔操作モードにおいてロボット10の制御部11が新たな移動予定ルートを含む移動ルート情報を受信すると、新たな移動予定ルートを設定して移動の制御を開始する。例えば、図11の例の場合、ロボット10の制御部11は、一端初期の位置PAに戻ってから新たな移動予定ルートである第6のルートR6で目標位置PBに向かって移動を開始するようにしても良い。手動で設定された移動予定ルートで移動する間、ロボット10の制御部11は、カメラ部25により撮像されたカメラ画像(例えば、ロボット10が移動する方向の視野のカメラ画像)を操作卓20に送信し、操作卓20の制御部11は、例えば、図12に示すように、ロボット10から送信されたカメラ画像を表示部23に表示する操作画面を表示するようにしてもよい。図12の画面の例では、ロボット10が位置PCから位置PAに戻って新たな移動予定ルートである第6のルートR6で移動を開始した際のカメラ画像(ロボット10が移動する方向のカメラ画像)を表示した状態について示している。図12の画面の例では、単にカメラ部14が撮像した画像をそのまま表示しているが、ロボット10が撮像したカメラ画像に基づいて生成(レンダリング)されたロボット10の俯瞰画像(当該ロボット10周辺の自由視点画像であって当該ロボット10を斜め上方向から俯瞰した画像)に、ロボット10をかたどったグラフィック(いわゆるアバター画像)をレンダリングした画像(いわゆるフライングビュー画像)を表示するような操作画面としてもよい。
(A-3)第1の実施形態の効果
第1の実施形態によれば、以下のような効果を奏することができる。
第1の実施形態のロボット10(制御部11)は、障害物を認識し、回避不可能な場合には、人間(オペレータOP)の介在が必要であるため、インシデント(自律制御中止インシデント)を検出する。そして、ロボット10は、インシデントを検出した場合、オペレータOPが使用する操作卓20にその旨を通知する。これにより、第1の実施形態では、ロボット10(制御部11)による自律制御が不可能な場合(人間の介在が必須な場合)にのみオペレータOPに操作を引き継がせるため、オペレータOPの作業負荷を軽減させること等の効果を奏する。
また、第1の実施形態のロボット10(制御部11)は、インシデントの原因(発生源)に関する情報(例えば、障害物に関する情報)も一緒に操作卓20に通知している。これにより、第1の実施形態では、オペレータOPにスムーズに操作(ロボット10の操作)を引き継がせ、さらにリアルタイムに障害物を確認させることで、インシデントに対して状況に応じたきめ細やかな対応をさせることができる。
(B)第2の実施形態
以下、本発明による移動物システム、移動物、制御プログラム、及び制御方法の第2の実施形態を、図面を参照しながら詳述する。この実施形態では、本発明の移動物システム及び移動物をロボットシステム及びロボットに適用した例について説明する。
(B-1)第2の実施形態の構成
図13は、第2の実施形態におけるロボットシステム1Aの全体構成の例について示したブロック図である。図13では、上述の図1と同一部分又は対応部分について、同一符号又は対応符号を付している。なお、図13において括弧内の符号は、後述する第3の実施形態でのみ用いられる符号である。
以下では、第2の実施形態について第1の実施形態との差異を中心に説明する。
第2の実施形態のロボットシステム1Aでは、ロボット10及び操作卓20の数が複数となっている。図13に示す第2の実施形態のロボットシステム1Aでは、N台(Nは2以上の整数)のロボット10(10-1~10-N)と、M台(Mは2以上の整数)の操作卓20(20-1~20-M)が配置された構成となっている。なお、第2の実施形態において、ロボット10の数(N)は1つであってもよい。また、図13では、M人のオペレータOP(OP-1~OP-N)がそれぞれ対応する操作卓20(20-1~20-M)を使用する例について図示している。すなわち、この実施形態では、オペレータOP-1~OP-Mが操作卓20-1~20-Mを使用する例となっている。
第2の実施形態における各ロボット10-1~10-Nでは、制御部11の処理の一部が異なっていること以外は第1の実施形態と同様である。また、第2の実施形態における各操作卓20-1~20-Nの構成についても、制御部21の処理の一部が異なっていること以外は第1の実施形態と同様である。
また、第1の実施形態のロボットシステム1では、ロボット10がオペレータOP(操作卓20)へ通報すべきインシデントとして障害物の発生(障害物により移動予定ルート上の移動が妨げられる事象)を適用する例について説明した。第2の実施形態のロボットシステム1Aでは、ロボット10は障害物の発生以外のインシデント(例えば、傷病者等)も検知し、検知したインシデントの種別に応じたシナリオに従った処理を実行するものとする。制御部11が、インシデントとして傷病者を検出する方法については限定されないものであるが、例えば、カメラ部14が撮像したカメラ画像から、AI処理等により合致する人物を検出するようにしてもよい。
さらに、第2の実施形態のロボットシステム1Aでは、ロボット10でインシデントが検出された場合、当該インシデントを通報すべきオペレータOP(操作卓20)を、所定のルールに基づいて選択し、選択したオペレータOP(操作卓20)へ通報する処理を行う。例えば、ロボット10の制御部11でインシデントが検出された場合、各オペレータOPの状態(以下、「オペレータ状態」と呼ぶ)や、予め設定された各オペレータOPに関する情報(例えば、各オペレータの能力、役割、職責等の情報;以下、「オペレータ情報」と呼ぶ)を考慮して当該インシデントを通知するオペレータOPが選択(振分)されるものとする。各オペレータOP状態とは、例えば、操作卓20のカメラ部25により撮像されたオペレータOPの画像やセンサ部26をオペレータOPに対して検知を行った場合の結果(センサ情報)に基づいて推定されるオペレータOPの心身の状態や、オペレータOPが現在実行しているタスク(例えば、他のロボット10の遠隔操作を行っていること等)を含む情報としてもよい。
オペレータOPの心身の状態とは、例えば、オペレータOPの顔の画像から分析される感情の状態(例えば、喜怒哀楽の度合い)や、瞳孔の状態(例えば、瞳孔の位置や大きさ)等から分析される作業集中度等が挙げられる。
以上のように、制御部11は、各オペレータOPのオペレータ状態やオペレータ情報等に基づいて当該インシデント(例えば、当該インシデント種別)に対して適切なオペレータOPを選択するようにしてもよい。
ロボットシステム1Aにおいて、各オペレータOPのオペレータ情報及びオペレータ状態の情報について各ロボット10(制御部11)で共有する構成については限定されないものである。例えば、各オペレータOPに関するオペレータ情報として、各オペレータOPの能力(例えば、「どのような異常対応に適しているか」、「ロボット10の操作への習熟度や場面への得意、不得意」、「警備知識を保有しているか」、「救命救急に関する知識を保有しているか」等)に関する情報を図示しないデータベース(例えば、IP網NWに接続可能な図示しないデータベースサーバ)に登録しておき、各ロボット10(制御部11)で共有可能な情報とするようにしてもよい。
また、ロボットシステム1Aにおいて、各操作卓20の制御部21が、センサ部26によるセンサ情報(オペレータOPを検知した結果のセンサ情報)やカメラ部25が撮像した画像(オペレータOPを撮像した画像)等に基づいてオペレータ情報を取得し、各操作卓20が取得したオペレータ情報(各オペレータOPのオペレータ情報)を、図示しないデータベース(例えば、IP網NWに接続可能な図示しないデータベースサーバ)にリアルタイムに更新登録しておき、各ロボット10(制御部11)で共有可能な情報とするようにしてもよい。
そして、各ロボット10の制御部11は、各オペレータOPのオペレータ情報及びオペレータ状態を取得し、インシデント(検出した異常の種類等)と照らし合わせて、適切なオペレータOPを選択するようにしてもよい。例えば、あるロボット10が警備のオペレーションために配置されている場合を想定する。このとき、当該ロボット10(制御部11)がインシデント(例えば、倒れている人間等の異常を検知した場合)、各オペレータOPのオペレータ情報に基づいて警備知識を保有しており、現地の地図情報を把握しているオペレータOPを選択することができる。また、このとき、当該ロボット10(制御部11)は、各オペレータOPのオペレータ状態に基づいて、感情が安定したオペレータOP(例えば、喜怒哀楽の偏りが所定以下で、且つ、作業集中度が所定以上のオペレータOP)を選択すること等が可能となる。
なお、ロボットシステム1Aにおいて、各ロボット10の制御部11で、インシデントが検出された場合におけるオペレータOPを選択(振分)する処理(以下、「オペレータ選択処理」又は「オペレータ振分処理」と呼ぶ)は、各ロボット10の制御部11側で行うようにしてもよいし、図示しないサーバ(IP網NWに接続するサーバ)で行うようにしてもよい。
(B-2)第2の実施形態の動作
次に、以上のような構成を有する第2の実施形態のロボットシステム1Aの動作(実施形態に係る制御方法)を説明する。
図14は、この実施形態におけるロボット10の動作について示したフローチャートである。
図14は、ロボット10が、オペレーションの過程で、開始位置から第1の目標位置へ移動する際の動作(制御部11が実行する処理)について示したフローチャートとなっている。
ロボット10の制御部11は、開始位置から第1の目標地点への移動を開始する際、まず、開始位置から第1の目標位置へ到達するための移動予定ルートの計算を行う(S201)。
次に、制御部11は、計算した移動予定ルートに従って移動するように、移動部13に対する制御を行う(S202)。
このとき、制御部11は、移動しながら、第1の目標位置に到達したか否かの確認(S203)、及びインシデントの有無の検知(S204)を行う。このとき、移動部13は、第1の目標地点への到達を確認した場合当該フローチャートの処理を終了し、インシデントを検知した場合には、後述するステップS205に移行し、第1の目標地点に到達しておらず且つインシデントの検知も無い場合には上述のステップS202から動作し移動予定ルート上の移動を継続する。
一方、第1の目標位置へ移動中にインシデントが検出された場合、制御部11は、検出したインシデントの種別に応じたシナリオ(行動内容)を決定する(S205)。
例えば、制御部11では、インシデントの種別ごとに対応するシナリオ(行動内容)を定義したデータ(以下、「シナリオ定義データ」又は「行動内容定義データ」と呼ぶ)が保持可能であるものとする。シナリオ定義データは、制御部11自体が保持していてもよいし、図示しないサーバから制御部11がダウンロードして保持するようにしてもよい。
ここでは、制御部11は、インシデントとして、傷病者(例えば、倒れている人)を検出したものとする。そして、ここでは、制御部11は、傷病者のインシデントに対応するシナリオ定義データを保持したものとする。そして、その傷病者のインシデントに対応するシナリオ定義データでは、インシデント源(傷病者)の近傍(例えば、インシデント源の顔から1m程度の位置)に移動し、オペレータOPへ通知する処理が定義されているものとする。
制御部11は、取得したシナリオ定義データに基づいた行動を開始すると、まず、インシデント源の近傍(例えば、1m程度の距離)まで移動可能かを判断し(S206)、移動可能である場合は後述するステップS207に移行し、そうでない場合には、後述するステップS211に移行する。
上述のステップS206で、インシデント源の近傍まで移動可能であると判断した場合、制御部11は、現在位置から当該インシデント源の近傍に到達するための移動予定ルートの計算を行い(S207)、新たな移動予定ルートによりインシデント源の近傍を第2の目標位置として設定する(S208)。
次に、制御部11は、計算した移動予定ルートに従って第2の目標位置に向けて移動するように、移動部13に対する制御を行う(S209)。
このとき、制御部11は、移動しながら、第2の目標位置に到達したか否かの確認(S210)を行う。このとき、制御部11は、第2の目標地点への到達を確認した場合、後述するステップS211に移行し、第2の目標地点に到達していない場合は、上述のステップS209から動作し、移動予定ルート上の移動を継続する。
上述のステップS210又は上述のステップS208からステップS211に移行すると制御部11は、当該インシデントの通知先についていずれかのオペレータOP(操作卓20)を選択する処理を行う(S211)。
そして、制御部11は、選択オペレータOPが使用する操作卓20に、当該インシデントに関する通知を行い(S212)、操作卓20からの応答(通知に対する応答)の有無を確認する(S213)。このとき、制御部11は、移動部13を制御して移動を一旦中止する。
そして、制御部11は、通知に対する応答が操作卓20からあった場合は後述するステップS214移行し、通知に対する応答がない場合(例えば、直前の通知から一定時間内に応答がない場合)は、上述のステップS212に戻って再度通知処理を行う。
上述のステップS213で、操作卓20からの応答を受信した場合、制御部11は、操作卓20からの制御信号に応じて動作する遠隔操作モードに移行して、応答のあった操作卓20に操作権を移譲し、当該フローチャートの処理を終了する。
(B-3)第2の実施形態の効果
第2の実施形態によれば、以下のような効果を奏することができる。
第2の実施形態では、オペレータ情報やオペレータ状態をデータベース化し、ロボット10(制御部11)が検出したインシデントの種別等と照らし合わせて、インシデントの通知先のオペレータOP(操作卓20)を選択(変更)している。これにより、第2の実施啓太では、オペレータOPの操作への切り替わりがスムーズになり、さらに切り替わったあとのオペレータOPの操作にかかる時間も短くなる。
(C)第3の実施形態
以下、本発明による移動物システム、移動物、制御プログラム、及び制御方法の第3の実施形態を、図面を参照しながら詳述する。この実施形態では、本発明の移動物システム及び移動物をロボットシステム及びロボットに適用した例について説明する。
(C-1)第3の実施形態の構成
第3の実施形態のロボットシステム1Bの構成についても上述の図13を用いて示すことができる。なお、図13において括弧内の符号は、第3の実施形態でのみ用いられる符号である。
以下では、第3の実施形態のロボットシステム1Bの構成について、第2の実施形態との差異を説明する。
第3の実施形態における各ロボット10-1~10-Nでは、制御部11の処理の一部が異なっていること以外は第2の実施形態と同様である。また、第3の実施形態における各操作卓20-1~20-Nの構成についても、制御部21の処理の一部が異なっていること以外は第2の実施形態と同様である。
具体的には、第3の実施形態のロボット10の制御部11は、発生したインシデントの種別に応じて、ロボット10(制御部11)が、自律的にコミュニケーション処理(例えば、オペレータOP及び又はインシデント源に対してインシデントに対する対処(解決)を誘導する処理)を行う点で第2の実施形態と異なっている。
例えば、ロボット10の制御部11は、検出したインシデントの種別が「傷病者(例えば、倒れている人)の発見」の場合、インシデント源(傷病者)に対してカメラ部25で撮像したカメラ画像やセンサ部26で検知したセンサ情報に基づいて分析処理を行い、その分析結果の情報(以下、「インシデント源分析情報」と呼ぶ)を取得するようにしてもよい。そして、ロボットの制御部11は、当該インシデントをオペレータOP(操作卓20)に通知する際に、取得したインシデント源分析情報も送信する処理を行う。具体的には、例えば、インシデント源(インシデント種別)が傷病者である場合、センサ部15により、当該傷病者の脈拍や体温などの状態を測定してインシデント源分析情報として取得してオペレータOP(操作卓20)に通知するようにしてもよい。また例えば、制御部11は、インシデントとして、火災による煙や、地震による落下物、雨漏り、浸水、倒木、土砂崩れなど、自然災害による異常を検知した場合は、インシデント源に対してカメラ部25で撮像したカメラ画像やセンサ部26で検知したセンサ情報に基づいてその範囲や深刻度などをセンシングし、インシデント源分析情報として取得し、オペレータOP(操作卓20)に通知するようにしてもよい。
また、例えば、制御部11は、インシデントの種別が「不審者の発見」や「迷子の発見」等である場合は、オペレータOPに対してインシデント源(例えば、不審者や迷子)に対する声掛け(会話)を誘導する処理を行うようにしてもよい。例えば、インシデント種別が迷子や不審人物の発見である場合、制御部11は、自律的にオペレータOP(操作卓20)に対してインシデント種別(例えば、迷子や不審人物を発見した旨の情報)を通知すると共に、オペレータOP(操作卓20)との間でビデオ通話が確立するように、通信部12、カメラ部14、スピーカ17、及びマイク18を制御し、オペレータOPとインシデント源との間でビデオ通話が可能とするようにしてもよい。これにより、ロボット10(制御部11)は、オペレータOPにインシデント源(例えば、迷子や不審者)に対して声かけや、会話、案内等を行わせることを誘導することができる。
制御部11が、インシデントとして迷子や不審人物を検出する方法については限定されないものであるが、例えば、カメラ部14が撮像したカメラ画像から、予め設定された人物像(例えば、顔や服装の特徴や、挙動)に合致する人物を検出するようにしてもよい。また、制御部11は、周辺の地図情報等に基づいて、屋外や屋内、立ち入り禁止区域、貴重品の置かれている場所等、ロボット10の置かれている状態を考慮して、インシデント源となる人物を検出するようにしてもよい。
また、制御部11は、インシデント検出や回避ルート(動的代替ルート等)の識別に際して、移動予定ルート周辺における動的な地図情報(例えば、施設内で停止しているエスカレータ/エレベータや工事中で封鎖されている道路等通行できない箇所に関する情報)を考慮するようにしてもよい。例えば、制御部11は、動的な地図情報を外部(例えば、図示しない通行できない箇所等の警備情報を保持しているサーバ)から保持して、自装置の保持する地図情報に反映した上で、インシデント検出や回避ルートの識別に用いるようにしてもよい。例えば、制御部11は、動的な地図情報に基づいて、現在時刻において通行可能な通路/道路のみを用いて回避ルート(動的代替ルート等)の識別を行うようにしてもよい。また、制御部11は、工事中で封鎖されている道路があった場合でも、予め動的な地図情報で確認可能な位置と一致する場合には、それらをインシデントとは検出せずに自律制御を継続するようにしてもよい。ロボット10が、予定されている工事等に基づいてインシデントを発生させないようにすることで、オペレータOPの効率的な作業を促すことが可能となる。
(C-2)第3の実施形態の動作
次に、以上のような構成を有する第3の実施形態のロボットシステム1Bの動作(実施形態に係る制御方法)を説明する。
図15は、第3の実施形態におけるロボット10の動作の第1の例について示したフローチャートである。図15のフローチャート(第1の例)では、ロボット10の制御部11が、インシデントの種別に応じて、インシデント源に対してセンシング処理を行ってセンシング分析情報を取得してオペレータOPに通知するシナリオを実行する場合の例について示している。
図15のフローチャートについて第2の実施形態(上述の図14のフローチャート)との差異を説明する。図15のフローチャートでは、第2の実施形態と同様の動作については同一の符号(ステップ番号)を付与している。
図15に示すフローチャートでは、ステップS205、S212が、それぞれステップS301、S302に置き換わり、ステップS211の前にステップS302が挿入されている点で、第2の実施形態(図14のフローチャート)と異なっている。
制御部11は、ステップS301において、第1の目標位置へ移動中にインシデントが検出された場合、検出したインシデントの種別に応じたシナリオ(行動内容)を決定する。ここでは、制御部11は、インシデントとして、傷病者(例えば、倒れている人)を検出したものとする。そして、ここでは、制御部11は、傷病者のインシデントに対応するシナリオ定義データを保持したものとする。そして、その傷病者のインシデントに対応するシナリオ定義データでは、インシデント源(傷病者)の近傍(例えば、インシデント源の顔から1m程度の位置)に移動し、インシデント源(傷病者)に対してセンシング処理を行ってセンシング源分析情報を取得し、オペレータOPへ通知(センシング源分析情報と共に通知)する処理が定義されているものとする。
そして、制御部11は、ステップS302において、シナリオ定義データに従い第2の目標位置(インシデント源の近傍)に到達すると、カメラ部25及びセンサ部26を制御してインシデント源に対してセンシング処理を行ってセンシング源分析情報を取得する。
そして、制御部11は、ステップS303において、選択したオペレータOPの操作卓20に、センシング源分析情報とともに通知する処理を行う。このとき、操作卓20の制御部21は、オペレータOPに対してロボット10からの通知があった旨を、受信したセンシング源分析情報と共に通知することができる。これにより、オペレータOPは、センシング源分析情報に基づいて迅速できめ細やかな対応(例えば、傷病者に対する声掛けや救急車を要請する等)を行うことができる。
図16は、第3の実施形態におけるロボット10の動作の第2の例について示したフローチャートである。図16のフローチャート(第2の例)では、ロボット10の制御部11が、インシデントの種別に応じて、オペレータOPとインシデント源の人物との間の会話(例えば、ビデオ通話)を誘導するシナリオを実行する場合の例について示している。
図16のフローチャートについて第2の実施形態(上述の図14のフローチャート)との差異を説明する。図16のフローチャートでは、第2の実施形態と同様の動作については同一の符号(ステップ番号)を付与している。
図16に示すフローチャートでは、ステップS205以後(ステップS205~ステップS214)が、ステップS401~S405に置き換わっている点で、第2の実施形態(図14のフローチャート)と異なっている。
制御部11は、ステップS401において、第1の目標位置へ移動中にインシデントが検出された場合、検出したインシデントの種別に応じたシナリオ(行動内容)を決定する。ここでは、制御部11は、インシデントとして、迷子(例えば、顔の特徴や表情分析から困惑の度合いが所定以上で且つ年齢6歳以下の人)を検出したものとする。そして、ここでは、制御部11は、迷子のインシデントに対応するシナリオ定義データを保持したものとする。そして、その迷子のインシデントに対応するシナリオ定義データでは、オペレータOPとインシデント源(迷子)との会話(ビデオ通話)を誘導する処理が定義されているものとする。
次に、制御部11は、当該インシデントに対するオペレータOPを選択(上述のステップS211と同様の処理)する(S402)。
次に、制御部11は、選択したオペレータOP(操作卓20)に対してインシデント種別(例えば、迷子を発見した旨の情報)を通知して(S403)、操作卓20からの応答(通知に対する応答)の有無を確認する(S404)。
操作卓20からの応答があると、制御部11は、操作卓20からの制御信号に応じて動作する遠隔操作モードに移行して、操作権を応答のあった操作卓20に移譲すると共に、インシデント源(迷子)とオペレータOP(操作卓20)との間でビデオ通話が確立するように、通信部12、カメラ部14、スピーカ17、及びマイク18を制御する(S405)。これにより、オペレータOPに、スムーズにロボット10を介してインシデント源(迷子)に対する声掛けや会話を誘導することができる。
(C-3)第3の実施形態の効果
第3の実施形態によれば、以下のような効果を奏することができる。
第3の実施形態では、ロボット10(制御部11)が、検出したインシデントに応じたコミュニケーション処理(例えば、オペレータOP及び又はインシデント源に対してインシデントに対する対処(解決)を誘導する処理)を行う。これにより、例えば、ロボット10からオペレータOPに操作が移った場合、インシデントに対して対応(例えば、迷子や不審者に対する声掛けや状況確認)する時間を短縮すること等、効率的なオペレータOPの作業を促すことができる。
(D)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(D-1)第3の実施形態では、オペレータOP、ロボット10及び操作卓20が複数の例について説明したが、第1の実施形態と同様に、オペレータOP、ロボット10及び操作卓20がそれぞれ単数であってもよい。
(D-2)上記の実施形態において、2以上のロボット10を連結して動作させ、必要に応じて分離した動作を行うことが可能な構成としてもよい。例えば、通常時は地上を移動する第1のロボット10に、回転翼で空中を移動可能な第2のロボット10を搭載して移動させ、必要な場合(例えば、第1のロボット10ではインシデント源までの移動路が確保できない場合)に第2のロボット10を分離して動作(例えば、空中からインシデント源の近傍に移動)させるように構成してもよい。このとき、第1のロボット10(制御部11)は、第2のロボット10(制御部11)に対して自律的にオペレーションを与える(オペレータOPを介さずに直接第2のロボット10にオペレーションを与える)ようにしてもよい。