JP2024015640A - 複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム - Google Patents
複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム Download PDFInfo
- Publication number
- JP2024015640A JP2024015640A JP2022117848A JP2022117848A JP2024015640A JP 2024015640 A JP2024015640 A JP 2024015640A JP 2022117848 A JP2022117848 A JP 2022117848A JP 2022117848 A JP2022117848 A JP 2022117848A JP 2024015640 A JP2024015640 A JP 2024015640A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- search range
- mobile robots
- multiple mobile
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 239000003550 marker Substances 0.000 claims description 9
- 238000013135 deep learning Methods 0.000 claims description 5
- 238000007796 conventional method Methods 0.000 abstract description 3
- 238000007726 management method Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000009466 transformation Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000010365 information processing Effects 0.000 description 6
- 238000011084 recovery Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
本発明は、複数移動ロボットの制御方法および複数移動ロボット制御システムに関する。
特許文献1には、管理サーバが自律移動ロボットのロボット情報を保持し、定期的に自律移動ロボットから位置情報を取得し、自律移動ロボットから救援の通知を受けた場合に配下のロボットに救援を指示し、救援指示を受けた救援ロボットは該当ロボットの探索を行い、被救援ロボットとの相対位置より被救援ロボットの絶対位置と方位を算出して被救援ロボットのリカバリを行う技術が記載されている。
現在、工場や物流拠点、オフィスビルなどで、物品搬送や人案内、警備のために、同建屋内で複数台の自律移動ロボットが利用されている。このような自律移動ロボットにおいては、自己位置の推定にレーザセンサやカメラを用いるのが一般的である。
SLAM(Simultaneous Localization and Mapping)技術を用いた自律移動ロボットは、壁面形状など周囲環境の特徴点をセンシングして自己位置推定を行う。しかし、特徴の少ない空間や、周囲物体の配置変化により特徴が変動する環境では、位置推定に失敗し移動不能となる場合がある。
位置推定の失敗に対する回復手法の一例として、特許文献1が提案されている。特許文献1では、管理サーバ側で自律移動ロボットに探索指示を行い、探索を行わせる技術であるが、探索ロボットに探索させる領域を決定する方法に改善の余地があり、特に、探索効率に改善の余地があることが明らかとなった。
本発明は、従来に比べて探索効率を向上させることができる複数移動ロボットの制御方法および複数移動ロボット制御システムを提供する。
本発明は、上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、センサを搭載した複数の移動ロボットを制御する方法であって、第一のロボットの現在位置が不明な場合に、前記第一のロボットの過去の移動位置軌跡、前記第一のロボットの過去の位置推定における誤差情報、および移動量に基づいて、前記第一のロボットについての第一探索範囲を決定するステップと、前記第一のロボットとは異なる第二のロボットに対して、前記第一探索範囲の探索指令を送信するステップと、前記第一探索範囲における前記第二のロボットからのセンサ情報を受信し、前記第一のロボットの現在位置を推定するステップと、を有する。
本発明によれば、従来に比べて探索効率を向上させることができることから、自律移動ロボットの作業効率の向上を図ることができる。上記以外の課題、構成および効果は、以下の実施例の説明により明らかにされる。
自律移動ロボットが位置推定に失敗した場合に、他の自律移動ロボットを用いて位置推定を回復させるための本発明の複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システムの実施例について図1乃至図11を用いて説明する。なお、本明細書で用いる図面において、同一のまたは対応する構成要素には同一、または類似の符号を付け、これらの構成要素については繰り返しの説明を省略する場合がある。
センサを搭載した複数の自律移動可能な第一のロボット100,第二のロボット200を制御する制御方法、プログラム、制御システムでは、好適には管理サーバにより一定周期で収集したロストロボットの過去の移動軌跡と誤差情報、移動量を用いて探索範囲を決定し、最近傍の第二のロボット200を救助ロボットに選定し、救助ロボットのセンサ情報からロストロボットらしき物体を検出し、存在確度の高い領域に探索範囲を限定することで、素早くロストロボットを発見、認識する。認識したロストロボットの絶対位置をロストロボットに送信し位置を再設定することで位置推定の失敗から回復することが可能である。
以下の実施例では、屋内平面環境を走行する工場内物品搬送ロボットを例に挙げる。図1に示す2台の移動ロボットのうち、第一のロボット100を位置推定に失敗したロボットとし、第二のロボット200を救助ロボットの役割とする場合の例で説明する。
以下、本実施例について、構成、処理フローの順で説明する。
<構成>
図1は、本実施例によるシステムの構成図である。以下、これら各装置の概要をまず説明し、その詳細については処理フローを説明する際に後述する。
図1は、本実施例によるシステムの構成図である。以下、これら各装置の概要をまず説明し、その詳細については処理フローを説明する際に後述する。
図1に示す第一のロボット100は、地図情報を取得するセンサ101を搭載している。
第一のロボット100の情報処理装置109は、センサ101により取得した地図情報を処理するセンサ処理部105と、センサ101情報と共有情報等によって自己位置を演算する自己位置演算部106と、第一のロボット100に組み込まれた車輪エンコーダなどの情報に基づき自己位置を取得する位置情報取得部107と、センサ101と自己位置演算部の情報から位置推定の失敗を判定する位置推定失敗判定部104と、第一のロボット100の走行を制御する走行制御部108を有している。これらの各部は、第一のロボット100の中央処理装置102が実行するプログラムで構成される。
第一のロボット100の情報送受信部103は、管理サーバ1と地図情報を交換するために、ネットワーク8へ接続される。
第二のロボット200は、地図情報を取得するセンサ201を搭載している。
第二のロボット200の情報処理装置209は、センサ201により取得した地図情報を処理するセンサ処理部205と、センサ201情報と共有情報等によって自己位置を演算する自己位置演算部206と、第二のロボット200に組み込まれた車輪エンコーダなどの情報に基づき自己位置を取得する位置情報取得部207と、センサ201と自己位置演算部の情報から位置推定の失敗を判定する位置推定失敗判定部204と、第二のロボット200の走行を制御する走行制御部208を有している。これらの各部は、第二のロボット200の中央処理装置202が実行するプログラムで構成される。
第二のロボット200の情報送受信部203は、管理サーバ1と地図情報を交換するために、ネットワーク8へ接続される。
管理サーバ1は、情報処理装置7を有している。この管理サーバ1の情報処理装置7は、情報送受信部6と、主記憶装置5と、メモリ4と、地図情報表示部3を有しており、
第一探索範囲決定部、探索指令送信部、および推定部を構成する。メモリ4は、地図情報保持部41、位置範囲演算部42、探索命令管理部43、座標変換処理部44を有し、これらは管理サーバ1の中央処理装置(CPU:Central Processing Unit)2が実行するプログラムである。
第一探索範囲決定部、探索指令送信部、および推定部を構成する。メモリ4は、地図情報保持部41、位置範囲演算部42、探索命令管理部43、座標変換処理部44を有し、これらは管理サーバ1の中央処理装置(CPU:Central Processing Unit)2が実行するプログラムである。
ネットワークと管理サーバ1の情報送受信部6がやり取りする地図情報は、地図情報保持部41により主記憶装置5に書き込まれる。主記憶装置5は、記憶媒体であり、HDD、SSD、Flashメモリであってもよい。ネットワーク8は無線LANによって構成されていてもよく、やり取りする地図情報はTCP/IPによるソケット通信を用いてもよい。
なお、地図情報に関する情報通信は、ネットワークに接続された他のロボットと直接行ってもよく、ネットワークに接続されるロボットは、2台以上あってもよい。
第一のロボット100のセンサ101や第二のロボット200のセンサ201は、例えば、LiDAR、RGB-Dカメラ、単眼カメラ、ステレオカメラ、全天球カメラ、赤外線カメラ、GPS等のうち、少なくとも1つ以上で構成され、異なる種類のセンサの組み合わせとすることができる。第一のロボット100や第二のロボット200は、これらセンサ101,201による高精度な位置推定が出来ている前提である。
なお、第二のロボット200は本実施例では第一のロボット100と同じ構成であるが、異なる構成のロボットであってもよい。例えば、クローラ付き走行ロボットと、人型サービスロボットの通信においても成り立つ。
また、管理サーバ1についても、その機能を実現するための物理的なサーバがあってもよいし、それぞれのロボット内部に、プログラムがそれぞれ記憶され、その機能が第一のロボット100,第二のロボット200に搭載された中央処理装置102,202上で自律分散的に実行される形態であってもよい。
管理サーバ1の各々の機能が第一のロボット100,第二のロボット200の内部にある場合、各々の第一のロボット100,第二のロボット200同士のアドホックなネットワーク構築により近くのロボット同士での情報交換のみでシステムが完結するため、設備へ無線ネットワークインフラを設置せずに運用ができるようになる。また、通信情報量の軽減による通信負荷軽減を図ることができる。
これに対し、管理サーバ1が独立した構成である場合は、第一のロボット100,第二のロボット200側の構成の簡略化などの効果が得られる。
共有される地図情報は、管理サーバ1の地図情報表示部3によって、ユーザが確認可能に構成されている。ここで、送受信される地図情報は、取得時刻、ロボットID、ロボット外観情報、自己位置座標、自己位置推定における推定誤差、オドメトリによる走行移動変量、他のロボットの認識ID、認識信頼度および自機との相対位置情報、ロスト検知フラグ、センサ種別、センサにより取得したロボット周囲の障害物マップが含まれる。
地図情報は、ロボットが走行する環境やシーンによって内容が異なる。例えば、オフィス内や倉庫、工場等の整備された屋内平面を移動するロボットの場合、上記地図情報の自己位置座標は、3次元の自己位置座標(x,y,θ)である。これに対し、落下物や地面に凹凸のある屋内未整備環境や屋外では、上記地図情報の自己位置座標は、6次元の自己位置座標(x,y,z,roll,pitch,yaw)が用いられる。
また、上記の地図情報の推定誤差は、例えば位置推定に失敗したロボットが移動していたと推定される範囲のことであり、モンテカルロ位置推定計算や、カルマンフィルタによる位置計算過程で得られる誤差楕円を用いることができる。
以上で、本実施例のシステム構成の説明を終わる。引き続き、本実施例の処理フローを、これで用いられる情報を参照して説明する。
<処理フロー>
以下、本実施例の処理フローについて説明する。図2は、本実施例における位置推定の失敗からの回復のための動作制御処理を示すフローチャートである。好適には図1の管理サーバ1の情報処理装置7で処理される。
以下、本実施例の処理フローについて説明する。図2は、本実施例における位置推定の失敗からの回復のための動作制御処理を示すフローチャートである。好適には図1の管理サーバ1の情報処理装置7で処理される。
また、本実施例では、複数の第一のロボット100,第二のロボット200は、その稼働中は、地図情報(自らの過去の移動位置軌跡、過去の位置推定における推定誤差範囲307(図4参照)、および移動量)を好適には一定周期で管理サーバ1に出力する。
図2において、ステップS200のように第一のロボット100が位置推定の失敗を検知した際には、ステップS201に遷移する。
このステップS200における位置推定の失敗の検知は、第一のロボット100の位置推定失敗判定部104が行う。自己位置演算部106により得られた推定誤差が予め設定した閾値を超えた場合、位置推定の失敗と判定し、管理サーバ1へ発報して走行を停止する。この他にも、計算処理のエラーにより位置推定に失敗した場合も位置推定の失敗と判定する。
また、ロボットの自己位置推定においては、特徴点の誤マッチングによって誤った位置に推定結果が収束する場合がある。実際の誤差を推定誤差が表せていない場合、推定誤差情報のみを用いてロスト判定する方法では、誤った検知を行う課題がある。そのため、異なる種類の位置推定方法よる推定結果と比較することで位置推定の失敗を判定する手法が望ましい。
次いで、ステップS201において、管理サーバ1は、第一のロボット100を除く他のロボットから得たセンサ情報を共有し、他のロボットのセンサで観測された第一のロボット100の絶対位置を用いて第一のロボット100の位置回復を試み、ステップS202において、共有情報だけで位置回復できたか否かを判定する。他のロボットのセンサの視野内に第一のロボット100が存在するなどの理由により位置回復できた場合は処理を完了させる。
これに対し、他のロボットのセンサの視野内に第一のロボット100が存在しないなどの理由により位置回復できないと判定された場合は、位置回復のためにロストロボットを観測可能な位置まで第二のロボット200が移動する必要がある。この動作を探索と呼び、ステップS203以降が探索動作を表す。ロスト状態における推定誤差は不正確な場合も多いため、ステップS203では、物理的に存在しうる範囲を探索範囲(第一探索範囲)として設定する。
探索範囲の決定方法について、以下詳細に説明する。図3乃至図8は、探索範囲の決定と救助ロボットの選定の流れの一例を示す図である。
まず、図3に示すように、ロストロボットが物理的に存在しうる範囲を求めるために、ロストロボットの移動履歴情報を用いる。高精度に位置推定していた点では、推定誤差が小さくなるため、現在時刻から推定誤差履歴302を遡り、推定誤差301が信頼できる閾値を下回る点を、探索基準点とする。
また、その時刻におけるロストロボットの位置を探索中心座標304とすると、その点から現在時刻までにオドメトリで移動した総移動距離303を半径rとした円で構成される領域305にロストロボットは存在している、といえる。
さらに、現在時刻におけるロストロボットの推定誤差範囲、探索中心座標と現在時刻の推定位置との方位から、探索優先度の高い領域を決定する。移動量推定は、搬送用ロボット等の人による持ち上げが想定されにくい移動ロボットを前提に、車輪オドメトリによる移動量を用いる。
実空間の探索範囲は、図4に示すように、ロストロボットが物理的に存在しうる領域305を領域S1、ロストロボットの存在可能性のより高い領域306を領域S2、ロストロボットの推定誤差範囲307を領域S3として、式(1)の探索範囲Sa311(図7参照)として定義する。
ここで、SMは、地図形状から抽出した走行可能な領域310(図6参照)である。領域S1,S2,S3の定義について以下に示す。探索中心座標304とする信頼位置は、現在時刻tから誤差履歴を遡り、始めて推定誤差が閾値を下回る点の時刻t1における位置推定の結果(xt1,yt1,θt1)である。信頼位置から現在位置までのオドメトリによる総移動距離303である半径rは式(2)で求められる。
信頼位置(xt1,yt1)を中心とした半径rの円で構成される領域305が、ロボットが物理的に存在しうる領域S1である。さらに、探索範囲の中でも、存在可能性の高い領域として、信頼位置と現在位置を結ぶベクトルを中心に角度φだけ開いた扇型の領域306を優先度の高い領域S2に設定する。同様に、位置推定の計算で得られるロボット現在時刻における位置の推定誤差範囲と重なる範囲を優先度の高い領域S3307とする。
探索すべき範囲は、これら設定された領域S1,S2,S3の和集合と、走行可能領域SM310との積集合であるため、探索範囲は式(1)の探索範囲Sa311で与えられる。探索範囲Sa311を図示すると図7のようになる。また、過去に位置推定の失敗が発生した地図座標を管理サーバ1が記憶することで、地図上でロストが発生しやすいと判断される領域を作成し、領域S2に含め探索範囲の候補として用いてもよい。
次に、式(1)で得た探索範囲領域を救助ロボットに探索させるための自律移動先座標として、図5に示すような「注目点」308,309を設定する。注目点308,309は、探索範囲領域内に等間隔で離散的に配置する。救助ロボットに搭載されたセンサによって、探索範囲を十分センシングできるように、センサの実用認識可能距離に基づいて注目点の配置間隔を設定する。
本実施例では、カメラによって相手ロボットを高精度に認識可能な距離を注目点間距離dとして、探索範囲円内を満たすように配置する。
注目点は、探索範囲Sの重なりから、その注目点の優先度を決定する。探索範囲Saのうち領域S2,S3の部分の注目点308を第一優先度として最初に探索し、探索範囲Saのうち領域S1の部分の注目点309を第二優先度とする。
次いで、ステップS204では、以上の手順で決定した探索範囲を探索する救助ロボットを決定する。決定方法について、以下詳細に説明する。
現在時刻tにおいて、探索範囲中心座標の最近傍の座標にあるロボットを最近傍法によって抽出し、救助ロボットの役割を割り当てる。本実施例では、最近傍救助ロボットの選定には探索中心座標とのユークリッド距離を用いるが、開けた空間でない場合は、最近傍点が実走行距離で最短ではないため、グラフ探索アルゴリズム等を用いた経路計画で得た走行経路が最短なロボットへのタスク割当が望ましい。
また、他ロボットの搬送タスクへの影響を避けるため、タスクの空き状況と走行経路に基づいて救助ロボットを選定することが望ましい。
続いて、ステップS205では、図8に示すように、救助ロボットに対し初期に設定される探索目標の座標は、救助ロボット座標の最近傍に位置する注目点308を第一優先度の注目点312であり、最近傍法によって決定する。座標を受信した救助ロボットは、注目点までの移動経路を生成し、自律移動を行う。
この自律移動による探索中に、救助ロボットは、ステップS206のように、センシング結果によりロストロボットの認識に成功したか否かを判定し続ける。
センシングにより第一のロボット100がセンサ視野内に入った時点で、ステップS206からステップS210に遷移し、第一のロボット100の絶対位置が修正されロストから回復する。
これに対し、ステップS206でセンサ視野内に第一のロボット100が認識できない場合、ステップS207へ遷移して探索範囲(第二探索範囲)をすべて探索し終えたか否かを判定し、ステップS208の探索範囲の探索が終えるまで障害物センサ情報を用いた探索範囲の限定処理を実行する。ステップS208の障害物センサ情報を用いた探索範囲の限定方法について、以下詳細に説明する。
図9は、救助ロボットの障害物センサ情報を用いた注目点の限定の例である。図9に示すように、探索動作において、救助ロボットがロストロボットを発見し、その位置姿勢を高精度に認識するためには、センサが十分な認識精度を発揮できるよう、物理的に接近する必要がある。
そのため、これら接近距離の制約やセンサ視野角の制約のため、注目点を一つずつ観測するのでは非効率である。そこで、LiDAR等の観測可能領域が広域な障害物センサによって、初期にSLAMによって得られた地図形状には記録されていなかった障害物を抽出し、その障害物の占有領域が探索対象ロボットの外観形状に近い(テンプレート)の占有面積と近しいものを、「探索対象ロボットらしき物体」として認識し、その周囲のみに注目点を残す。障害物センサ情報によって、未占有領域が確認できた地図領域の注目点については削除することで、探索範囲を限定する。
具体的には、救助ロボットのセンサによって生成された障害物占有マップ400から、既知の地図形状402の差をとることで、地図作成時には無かった新たな障害物401を抽出する。さらに、抽出した未知の障害物の中でも、探索対象ロボットのサイズに近い占有面積をもつ障害物110を抽出し、探索対象候補とする。抽出したロボットらしき未知物体403の周囲の注目点のみを残し、障害物マップ内の他の未占有領域の注目点は削除する。
このほかにも、点群によるパターンマッチングや、深層学習による画像認識で、ロボット外観と類似度の高い物体を抽出したり、点群から線ハフ変換によるエッジ抽出等の処理を行って未知物体403を得ても良い。
このように、第二探索範囲における第二のロボット200からのセンサ情報は、第二のロボット200が認識した第一のロボット100の位置情報とすることが望ましい。また、この位置情報を、第一のロボット100の外観情報を用いたテンプレートマッチング、点群マッチング、ARマーカ画像認識、深層学習による認識のいずれかによって推定した情報とすることが望ましい。
次に、ステップS209について説明する。ステップS203で生成した探索範囲をすべて探索しても対象ロボットを発見できない場合、ステップS207からステップS209へ遷移する。具体的には、ステップS209では、探索の領域305の半径r(総移動距離303)の拡大を行い、その後にステップS203へ処理を戻して探索を続ける。
探索範囲が広域にわたる場合、探索範囲をいくつかの領域に分けて、複数台のロボットによって探索してもよい。
また、一定の時間内にロボット群によって探索に成功しない場合、管理者への支援通知を行うことができる。
続いて、ステップS206について、図10を用いて説明する。図10は、第二のロボット200のセンサ結果を用いて第一のロボット100を認識する例である。
第一のロボット100の認識は、ロボットの外観情報を用いた深層学習を用いた認識や、LiDARの点群マッチング501、画像特徴量のパターンマッチング、ARマーカ500の画像認識、音や光、ビーコンを用いた認識方法のいずれかを用いてもよい。これらの認識手法は、相対位置・姿勢が求められるものとする。また、これらセンサによる認識処理は、各ロボット内のセンサ処理部105,205で行ってもよいし、管理サーバ1で行っても良い。
また、第一のロボット100の位置を認識するセンサは、図11のような、監視カメラ等の固定センサでもよく、センサの位置が既知であればよい。
最後に、ステップS210について説明する。ステップS210では、認識した救助ロボットと第一のロボット100との相対位置から、座標変換によって絶対位置を算出し、第一のロボット100へ送信する。ARマーカ認識を例とした、救助ロボットが認識した当該ロボットの位置は、以下座標変換式を用いて絶対位置に変換し、当該ロボットへ送信する。
座標変換は、管理サーバ1の座標変換処理部44で行う。地図原点をmapとして、第一のロボット100の絶対位置pA=(x,y,θ)を算出する座標変換は,並進・回転を含む同次変換行列T∈R(4×4)を用いて式(3)、式(4)のように表せる。B_sensorは、ロボットセンサの取り付け位置、B_markerはマーカ設置位置、B_detect_markerは、認識したマーカ位置である。
救助ロボット(B)から第一のロボット100(A)の観測では、以下のような式(3)のように定義される。
さらに、救助ロボットからの観測だけでなく、第一のロボット100のセンサで救助ロボットを観測できた場合も、以下の式(4)で絶対位置を算出可能である。
第一のロボット100(A)から救助ロボット(B)の観測では、
これらで得られた絶対位置は、管理サーバ1によって第一のロボット100へ送信される。第一のロボット100は複数受信した絶対位置を確率的に融合し、尤もらしい位置に自己位置を再設定し、位置推定の失敗から回復する。
本実施例では、発明を実施可能な最小構成である2台の移動ロボットを用いて説明したが、3台以上のロボットがある場合は、第三のロボットのセンサ情報も用いる。例えば、式(3)および式(4)は、Bを第三のロボットに置き換えても成り立つ。また、ロボットの位置関係により、第三のロボットは探索ロボットの役割にもなりうる。
本実施例では、救助ロボットは常に高精度に位置推定できている前提だが、実際は特徴の少ない空間へ進入した場合、救助ロボットの位置推定の精度も悪化することが考えられる。そのため、これを防ぐために救助ロボットを観測可能な第三のロボットを配置することが望ましい。
他にも、救助ロボットは、例えばGPSや天井特徴を用いた位置推定方法など、ロストロボットとは異なるセンサや処理方法を持つことで、探索中に救助ロボットも位置推定の失敗を起こす可能性が低くなる。
更に、探索範囲は、位置推定の失敗が発生しやすいエリアであると想定される。このため、第三ロボットの走行経路を、第一探索範囲および第二探索範囲を除いて設定し、他ロボットをなるべく接近させない経路計画を行うことで、ロスト発生率を低減させることができる。この場合、探索完了後についても、位置推定に失敗したロストロボットが発見された領域をなるべく近づかない範囲と設定することができる。
以上で、本実施例の処理フローの説明を終了する。
なお、本発明は、この実施例に限定されず、各種変形例も含まれる。
例えば、本発明には、自律移動ロボットの制御方法も含まれるが、この制御方法は移動ロボット自身が行ってもよいし、他の装置で行ってもよいし、さらに移動ロボットと他の装置が連携して行ってもよい。
また、移動ロボットの制御方法を実行するためのコンピュータプログラムやこれを格納する媒体も本発明に含まれる。
次に、本実施例の効果について説明する。
上述した本実施例の複数ロボットの制御方法はセンサ101,201を搭載した複数の第一のロボット100,第二のロボット200を制御する方法であって、第一のロボット100の現在位置が不明な場合に、第一のロボット100の過去の移動位置軌跡、第一のロボット100の過去の位置推定における推定誤差範囲307、および移動量に基づいて、第一のロボット100についての第一探索範囲を決定し、第一のロボット100とは異なる第二のロボット200に対して、第一探索範囲の探索指令を送信し、第一探索範囲における第二のロボット200からのセンサ情報を受信し、第一のロボット100の現在位置を推定する。
例えば、第一のロボット100の現在位置を推定するステップでは、第一探索範囲における第二のロボット200からのセンサ情報を受信し、未知物体を抽出して、未知物体の周辺に第二探索範囲を限定し、第二のロボット200に対して第二探索範囲の探索指令を送信して、第二探索範囲における第二のロボット200からのセンサ情報を受信し、第一のロボット100の現在位置を推定する。
本発明によれば、第一のロボット100が自己位置推定に失敗して、第二のロボット200との協調による探索によりロボット単体で位置推定の処理を回復させる際に、ロストロボットが存在する確率が高い領域に早い段階で探索範囲を限定することができるため、探索効率を向上させることができる。従って、従来に比べてロストロボットの位置回復を人介在を必要とせずに速やかに行うことができるようになる。
また、第二のロボット200として、第一探索範囲もしくは第二探索範囲の最近傍の第二のロボット200、またはタスクに空きのある第二のロボット200を用いるため、探索効率をより向上させることができる、あるいはロボットの作業効率の低下を最低限に抑制することができる。
更に、第一のロボット100が受信するセンサ情報は、第二のロボット200、第三ロボットまたは第一のロボット100,第二のロボット200が稼働する領域に設けられている固定センサからの情報であることで、自己位置の再設定の際の情報を多く、且つ高い精度とすることができるため、位置推定の失敗からの回復の更なる精度向上を図ることができる。
また、第二探索範囲を探索しても第一のロボット100を発見できない場合、第一探索範囲を拡大することにより、極力人の介在を避ける構成とすることができる。
更に、複数の第一のロボット100,第二のロボット200が、自らの過去の移動位置軌跡、過去の位置推定における推定誤差範囲307、および移動量を管理サーバ1に出力するステップを有することで、位置推定の失敗が生じた際に探索範囲を決定するための情報を予め把握しておくことができ、発見可能性の高い探索範囲の決定をより迅速に行うことができる。
また、複数の第一のロボット100,第二のロボット200が、移動位置軌跡、推定誤差範囲307、および移動量を管理サーバ1に対して出力するステップを一定周期で実行することにより、探索範囲の決定に必要な情報に偏りが無くなり、高い確率で位置推定に失敗したロストロボットを発見することに寄与する探索範囲の決定が可能となる。
更に、第二探索範囲における第二のロボット200からのセンサ情報は、第二のロボット200が認識した第一のロボット100の位置情報であること、特に位置情報は、第一のロボット100の外観情報を用いたテンプレートマッチング、点群マッチング、ARマーカ画像認識、深層学習による認識のいずれかによって推定した情報であることにより、少ない情報量で確実に位置推定を行うことができるようになる。
更に、各々のステップは、独立した中央処理装置2上、または第一のロボット100,第二のロボット200に搭載された中央処理装置102,202上で自律分散的に実行されることで、移動ロボット側の装置構成の軽減、あるいは管理サーバや通信負荷の軽減を図ることができる。
また、第三ロボットの走行経路を、第一探索範囲および第二探索範囲を除いて設定することにより、追加で位置推定に失敗するロストロボットが生じることを抑制でき、作業効率の低下をより確実に避けることができる。
<その他>
なお、本発明は上記の実施例に限られず、種々の変形、応用が可能なものである。上述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。
なお、本発明は上記の実施例に限られず、種々の変形、応用が可能なものである。上述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。
1…管理サーバ
2…中央処理装置
3…地図情報表示部
4…メモリ
5…主記憶装置
6…情報送受信部
7…情報処理装置(第一探索範囲決定部、探索指令送信部、推定部)
8…ネットワーク
41…地図情報保持部
42…位置範囲演算部
43…探索命令管理部
44…座標変換処理部
100…第一のロボット(移動ロボット)
101,201…センサ
102,202…中央処理装置
103,203…情報送受信部
104,204…位置推定失敗判定部
105,205…センサ処理部
106,206…自己位置演算部
107,207…位置情報取得部
108,208…走行制御部
110…障害物
200…第二のロボット(移動ロボット)
301…推定誤差
302…推定誤差履歴
303…総移動距離
304…探索中心座標
305,306,310,311…領域
307…推定誤差範囲
308,309,312…注目点
400…障害物占有マップ
401…障害物
402…地図形状
403…未知物体
500…ARマーカ
501…点群マッチング
2…中央処理装置
3…地図情報表示部
4…メモリ
5…主記憶装置
6…情報送受信部
7…情報処理装置(第一探索範囲決定部、探索指令送信部、推定部)
8…ネットワーク
41…地図情報保持部
42…位置範囲演算部
43…探索命令管理部
44…座標変換処理部
100…第一のロボット(移動ロボット)
101,201…センサ
102,202…中央処理装置
103,203…情報送受信部
104,204…位置推定失敗判定部
105,205…センサ処理部
106,206…自己位置演算部
107,207…位置情報取得部
108,208…走行制御部
110…障害物
200…第二のロボット(移動ロボット)
301…推定誤差
302…推定誤差履歴
303…総移動距離
304…探索中心座標
305,306,310,311…領域
307…推定誤差範囲
308,309,312…注目点
400…障害物占有マップ
401…障害物
402…地図形状
403…未知物体
500…ARマーカ
501…点群マッチング
Claims (13)
- センサを搭載した複数の移動ロボットを制御する方法であって、
第一のロボットの現在位置が不明な場合に、前記第一のロボットの過去の移動位置軌跡、前記第一のロボットの過去の位置推定における誤差情報、および移動量に基づいて、前記第一のロボットについての第一探索範囲を決定するステップと、
前記第一のロボットとは異なる第二のロボットに対して、前記第一探索範囲の探索指令を送信するステップと、
前記第一探索範囲における前記第二のロボットからのセンサ情報を受信し、前記第一のロボットの現在位置を推定するステップと、を有する
複数移動ロボットの制御方法。 - 請求項1に記載の複数移動ロボットの制御方法において、
前記第一のロボットの現在位置を推定するステップでは、
前記第一探索範囲における前記第二のロボットからのセンサ情報を受信し、未知物体を抽出して、前記未知物体の周辺に第二探索範囲を限定し、前記第二のロボットに対して前記第二探索範囲の探索指令を送信し、
前記第二探索範囲における前記第二のロボットからのセンサ情報を受信し、前記第一のロボットの現在位置を推定する
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
前記第二のロボットとして、前記第一探索範囲もしくは前記第二探索範囲の最近傍の前記移動ロボット、またはタスクに空きのある前記移動ロボットを用いる
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
前記第一のロボットが受信するセンサ情報は、前記第二のロボット、第三ロボットまたは前記移動ロボットが稼働する領域に設けられている固定センサからの情報である
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
前記第二探索範囲を探索しても前記第一のロボットを発見できない場合、前記第一探索範囲を拡大する
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
複数の前記移動ロボットが、自らの過去の移動位置軌跡、過去の位置推定における誤差情報、および移動量を管理サーバに出力するステップを有する
複数移動ロボットの制御方法。 - 請求項6に記載の複数移動ロボットの制御方法において、
複数の前記移動ロボットが、前記移動位置軌跡、前記誤差情報、および前記移動量を前記管理サーバに対して出力するステップを一定周期で実行する
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
前記第二探索範囲における前記第二のロボットからのセンサ情報は、前記第二のロボットが認識した前記第一のロボットの位置情報である
複数移動ロボットの制御方法。 - 請求項8に記載の複数移動ロボットの制御方法において、
前記位置情報は、前記第一のロボットの外観情報を用いたテンプレートマッチング、点群マッチング、ARマーカ画像認識、深層学習による認識のいずれかによって推定した情報である
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
各々の前記ステップは、独立した計算機上、または前記移動ロボットに搭載された計算機上で自律分散的に実行される
複数移動ロボットの制御方法。 - 請求項2に記載の複数移動ロボットの制御方法において、
第三ロボットの走行経路を、前記第一探索範囲および前記第二探索範囲を除いて設定する
複数移動ロボットの制御方法。 - センサを搭載した複数の移動ロボットを制御するコンピュータに、
第一のロボットの現在位置が不明な場合に、前記第一のロボットの過去の移動位置軌跡、前記第一のロボットの過去の位置推定における誤差情報、および移動量に基づいて、前記第一のロボットについての第一探索範囲を決定するステップと、
前記第一のロボットとは異なる第二のロボットに対して、前記第一探索範囲の探索指令を送信するステップと、
前記第一探索範囲における前記第二のロボットからのセンサ情報を受信し、前記第一のロボットの現在位置を推定するステップと、を有する
プログラム。 - センサを搭載した複数の移動ロボットを制御するシステムであって、
第一のロボットの現在位置が不明な場合に、前記第一のロボットの過去の移動位置軌跡、前記第一のロボットの過去の位置推定における誤差情報、および移動量に基づいて、前記第一のロボットについての第一探索範囲を決定する第一探索範囲決定部と、
前記第一のロボットとは異なる第二のロボットに対して、前記第一探索範囲の探索指令を送信する探索指令送信部と、
前記第一探索範囲における前記第二のロボットからのセンサ情報を受信し、前記第一のロボットの現在位置を推定する推定部と、を有する
複数移動ロボット制御システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022117848A JP2024015640A (ja) | 2022-07-25 | 2022-07-25 | 複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022117848A JP2024015640A (ja) | 2022-07-25 | 2022-07-25 | 複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024015640A true JP2024015640A (ja) | 2024-02-06 |
Family
ID=89772621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022117848A Pending JP2024015640A (ja) | 2022-07-25 | 2022-07-25 | 複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024015640A (ja) |
-
2022
- 2022-07-25 JP JP2022117848A patent/JP2024015640A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111837083B (zh) | 信息处理装置、信息处理方法和存储介质 | |
EP3612906B1 (en) | Method and system for environment map generation and alignment | |
EP3559772B1 (en) | Localization of robotic vehicles | |
EP3347171B1 (en) | Using sensor-based observations of agents in an environment to estimate the pose of an object in the environment and to estimate an uncertainty measure for the pose | |
WO2019190395A1 (en) | Method and system for returning a displaced autonomous mobile robot to its navigational path | |
JP6997057B2 (ja) | 不動物体情報から端末位置を推定する装置、プログラム及び方法 | |
Alves et al. | Localization and navigation of a mobile robot in an office-like environment | |
US11687086B2 (en) | Autonomous robotic navigation in storage site | |
JP2024015640A (ja) | 複数移動ロボットの制御方法、プログラム、および複数移動ロボット制御システム | |
Babu et al. | IoT enabled Robots with QR Code based localization | |
Chathuranga et al. | Sensor deck development for sparse localization and mapping for micro uavs to assist in disaster response | |
JP7062138B2 (ja) | 情報処理装置、情報処理方法、及び、情報処理プログラム | |
Tasse et al. | SLAM in the dynamic context of robot soccer games | |
WO2023119970A1 (ja) | 位置推定システム | |
Lin et al. | SLAM and navigation in indoor environments | |
Yang et al. | Recursive bayesian estimation using a topological map for indoor position tracking | |
KR102631315B1 (ko) | Slam 기술 구현을 위한 비전 데이터 및 라이다 데이터 간의 실시간 분석 및 대조를 통해 위치 오차 보정이 가능한 시스템 | |
US20230259134A1 (en) | Information processing device, information processing method, and program | |
Wang et al. | Robot SLAM with Ad hoc wireless network adapted to search and rescue environments | |
Zhang et al. | Adaptive Optimal Multiple Object Tracking Based on Global Cameras for a Decentralized Autonomous Transport System | |
Hisatsugu et al. | Active Search and Relocalization Framework for Position-Lost Recovery Under Limited Number of AMRs | |
KR20230097451A (ko) | 마커, 오브젝트 인식 기반 토폴로지맵 자동 생성 장치 및 방법 | |
Abdulov | Extending Obstacle Map of Autonomous Vehicles Based on Network Model of Local Positioning | |
JP2021131713A (ja) | 自己位置推定システム及び移動体 | |
Allison et al. | Towards Distributed Learning to Support Situational Awareness for Robotic Team Augmented Humanitarian Disaster Response |