(57)【要約】【課題】移動体が狭い通路を通る際に壁を障害物として検知することにより、移動が制限されるという問題があった。【解決手段】移動体１は、周囲の物体までの距離を測定する測距センサ１２と、その測定結果を用いて障害物を検知する障害物検知部１３と、移動機構１１と、検知された障害物への衝突を防ぐように移動を制御する移動制御部１７と、障害物を示す地図が記憶される地図記憶部１５と、現在位置取得部１４と、現在位置を用いて、検知された障害物が地図上の既知のものかを判断する判断部１６とを備える。また、移動制御部１７は、判断結果に応じて、障害物に関して異なる制御を行う。このようにして、既知の障害物と未知の障害物について、制御を異ならせることができ、既知の壁が障害物として検知されることによる移動の制限を低減できると共に、未知の障害物への衝突を適切に防ぐことができるようになる。【選択図】図１
2019109773.tif 000002
【特許請求の範囲】
【請求項１】
自律的に移動する移動体であって、
複数方向に関して周囲の物体までの距離を測定する測距センサと、
前記測距センサによる測定結果を用いて障害物を検知する障害物検知部と、
前記移動体を移動させる移動機構と、
前記障害物検知部によって検知された障害物への衝突を防ぐように前記移動機構を制御する移動制御部と、
ワールド座標系における障害物の位置を示す地図が記憶される地図記憶部と、
前記移動体の現在位置を取得する現在位置取得部と、
前記現在位置を用いて、前記障害物検知部によって検知された障害物が、前記地図によって示される既知のものかどうかを判断する判断部と、を備え、
前記移動制御部は、前記判断部の判断結果に応じて、障害物に関して異なる制御を行う、移動体。
【請求項２】
前記移動制御部は、検知された障害物までの距離が距離閾値より短い場合に、衝突を防止するための制御を行うものであり、
検知された既知の障害物に関する距離閾値は、検知された未知の障害物に関する距離閾値よりも短い、請求項１記載の移動体。
【請求項３】
前記移動制御部は、検知された障害物が既知のものである場合には、ポテンシャル法によって障害物の回避を行う、請求項１記載の移動体。
【請求項４】
前記障害物検知部は、前記移動体のローカル座標系において障害物を検知するものであり、
前記判断部は、前記地図によって示されるワールド座標系における障害物の位置をローカル座標系の位置に変換し、ローカル座標系において前記判断を行う、請求項１から請求項３のいずれか記載の移動体。
【請求項５】
前記障害物検知部は、前記移動体のローカル座標系において障害物を検知するものであり、
前記判断部は、前記障害物検知部によって検知されたローカル座標系における障害物の位置をワールド座標系の位置に変換し、ワールド座標系において前記判断を行う、請求項１から請求項３のいずれか記載の移動体。
【請求項６】
前記判断部は、前記障害物検知部によって検知された障害物と、前記地図によって示される障害物とが誤差閾値より近い場合に、当該障害物が既知のものであると判断する、請求項１から請求項５のいずれか記載の移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害物検知を行う移動体に関する。
【背景技術】
【０００２】
従来の移動体において、測距センサを用いて周囲の物体までの距離を測定し、その測定結果を用いて障害物を検知することが行われている（例えば、特許文献１参照）。そのようにして障害物を検知した場合には、移動体は、例えば、その障害物との衝突を防ぐために減速したり停止したりする。そのように、移動体において障害物検知に応じた移動制御を行うことによって、より安全な移動を実現することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−９７５３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、移動体が狭い通路に進入する際や、狭いＴ字路を通る際などには、壁を障害物として検知してしまうことによって、移動体が動作不能になる可能性があった。一方、移動環境に存在する人間などの障害物については、適切に衝突を回避したいという要望がある。
【０００５】
本発明は、上記課題を解決するためになされたものであり、移動体が狭い通路などを通る際などにおいて、障害物検知によって移動が制限されないようにできると共に、人間などが障害物として検知された際には、適切に衝突を回避することによって安全性を向上することができる移動体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明による移動体は、自律的に移動する移動体であって、複数方向に関して周囲の物体までの距離を測定する測距センサと、測距センサによる測定結果を用いて障害物を検知する障害物検知部と、移動体を移動させる移動機構と、障害物検知部によって検知された障害物への衝突を防ぐように移動機構を制御する移動制御部と、ワールド座標系における障害物の位置を示す地図が記憶される地図記憶部と、移動体の現在位置を取得する現在位置取得部と、現在位置を用いて、障害物検知部によって検知された障害物が、地図によって示される既知のものかどうかを判断する判断部と、を備え、移動制御部は、判断部の判断結果に応じて、障害物に関して異なる制御を行う、ものである。
このような構成により、地図によって示される既知の障害物と、未知の障害物について、移動の制御を異なるようにすることができる。したがって、例えば、未知の障害物が検知された場合には、その障害物が遠くに存在しても停止や減速を行い、既知の障害物が検知された場合には、その障害物が近くになるまで停止や減速を行わないというように制御することも可能になる。その結果、例えば、移動体が狭い通路などを通る際に壁が障害物として検知されることによって移動が制限されることを低減できると共に、移動環境にいる人間に対しては、適切に停止や減速を行うことができるようになる。
【０００７】
また、本発明による移動体では、移動制御部は、検知された障害物までの距離が距離閾値より短い場合に、衝突を防止するための制御を行うものであり、検知された既知の障害物に関する距離閾値は、検知された未知の障害物に関する距離閾値よりも短くてもよい。
このような構成により、既知の障害物については、衝突を防止するための制御を行う範囲が狭くなり、例えば、移動体が狭い通路などを通る際に、壁が障害物として検知されることによって移動体の移動が制限される可能性を低減することができる。
【０００８】
また、本発明による移動体では、移動制御部は、検知された障害物が既知のものである場合には、ポテンシャル法によって障害物の回避を行ってもよい。
このような構成により、既知の障害物については、ポテンシャル法を用いることによって、障害物を迂回する移動を実現することができ、壁などの既知の障害物によって移動が阻害されないようにすることができる。
【０００９】
また、本発明による移動体では、障害物検知部は、移動体のローカル座標系において障害物を検知するものであり、判断部は、地図によって示されるワールド座標系における障害物の位置をローカル座標系の位置に変換し、ローカル座標系において判断を行ってもよい。
このような構成により、障害物の検知結果の含まれるローカル座標系において、検知された障害物が既知のものであるかどうかを判断することができるようになる。
【００１０】
また、本発明による移動体では、障害物検知部は、移動体のローカル座標系において障害物を検知するものであり、判断部は、障害物検知部によって検知されたローカル座標系における障害物の位置をワールド座標系の位置に変換し、ワールド座標系において判断を行ってもよい。
このような構成により、地図と同じ座標系において、検知された障害物が既知のものであるかどうかを判断することができるようになる。
【００１１】
また、本発明による移動体では、判断部は、障害物検知部によって検知された障害物と、地図によって示される障害物とが誤差閾値より近い場合に、障害物が既知のものであると判断してもよい。
このような構成により、現在位置の取得に誤差が含まれていても、その誤差を考慮して、障害物が既知のものであるかどうかを判断することができるようになる。
【発明の効果】
【００１２】
本発明による移動体によれば、地図によって示される既知の障害物と、未知の障害物について、移動の制御を異なるようにすることができ、例えば、移動体が狭い通路などを通る際に、壁などの既知の障害物が検知されることによる移動の制限を低減できると共に、人間などの未知の障害物に対しては、適切に停止や減速を行うことができるようになる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態による移動体の構成を示すブロック図
【図２】同実施の形態による移動体の動作を示すフローチャート
【図３】同実施の形態における地図の一例を示す図
【図４Ａ】同実施の形態における障害物の検知結果の一例を示す図
【図４Ｂ】同実施の形態における検知された障害物と地図上の障害物とを示すローカル座標系の一例を示す図
【図４Ｃ】同実施の形態における検知された障害物と地図上の障害物とを示すローカル座標系の一例を示す図
【図５Ａ】同実施の形態における障害物の検知結果の一例を示す図
【図５Ｂ】同実施の形態における検知された障害物と地図上の障害物とを示すローカル座標系の一例を示す図
【図６】同実施の形態における検知された障害物と地図上の障害物とを示すワールド座標系の一例を示す図
【図７】同実施の形態における移動制御について説明するための図
【図８】同実施の形態における移動体の移動について説明するための図
【発明を実施するための形態】
【００１４】
以下、本発明による移動体について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による移動体は、地図によって示される既知の障害物と、移動体の移動環境に存在する人間などの未知の障害物とについて、障害物が検知された際に行う移動に関する制御が異なるものである。
【００１５】
図１は、本実施の形態による移動体１の構成を示すブロック図である。本実施の形態による移動体１は、自律的に移動するものであり、移動機構１１と、測距センサ１２と、障害物検知部１３と、現在位置取得部１４と、地図記憶部１５と、判断部１６と、移動制御部１７とを備える。なお、移動体１が自律的に移動するとは、移動体１がユーザ等から受け付ける操作指示に応じて移動するのではなく、自らの判断によって目的地に移動することであってもよい。その目的地は、例えば、手動で決められたものであってもよく、または、自動的に決定されたものであってもよい。また、その目的地までの移動は、例えば、移動経路に沿って行われてもよく、または、そうでなくてもよい。また、自らの判断によって目的地に移動するとは、例えば、進行方向、移動や停止などを移動体１が自ら判断することによって、目的地まで移動することであってもよい。また、例えば、移動体１が、障害物に衝突しないように移動することであってもよい。移動体１は、例えば、台車であってもよく、移動するロボットであってもよい。ロボットは、例えば、エンターテインメントロボットであってもよく、監視ロボットであってもよく、搬送ロボットであってもよく、清掃ロボットであってもよく、動画や静止画を撮影するロボットであってもよく、その他のロボットであってもよい。
【００１６】
移動機構１１は、移動体１を移動させる。移動機構１１は、例えば、移動体１を全方向に移動できるものであってもよく、または、そうでなくてもよい。全方向に移動できるとは、任意の方向に移動できることである。移動機構１１は、例えば、走行部（例えば、車輪など）と、その走行部を駆動する駆動手段（例えば、モータやエンジンなど）とを有していてもよい。なお、移動機構１１が、移動体１を全方向に移動できるものである場合には、その走行部は、全方向移動車輪（例えば、オムニホイール、メカナムホイールなど）であってもよい。全方向移動車輪を有し、全方向に移動可能な移動体については、例えば、特開２０１７−１２８１８７号公報を参照されたい。この移動機構１１としては、公知のものを用いることができるため、その詳細な説明を省略する。
【００１７】
測距センサ１２は、複数方向に関して周囲の物体までの距離を測定する。測距センサ１２は、例えば、レーザセンサや、超音波センサ、マイクロ波を用いた距離センサ、ステレオカメラによって撮影されたステレオ画像を用いた距離センサなどであってもよい。そのレーザセンサは、レーザレンジセンサ（レーザレンジスキャナ）であってもよい。なお、それらの測距センサについてはすでに公知であり、それらの説明を省略する。本実施の形態では、測距センサ１２がレーザレンジセンサである場合について主に説明する。また、移動体１は、１個のレーザレンジセンサを有していてもよく、または、２個以上のレーザレンジセンサを有していてもよい。後者の場合には、２個以上のレーザレンジセンサによって、全方向がカバーされてもよい。また、測距センサ１２が超音波センサや、マイクロ波を用いた距離センサなどである場合に、測距センサ１２の測距方向を回転させることによって複数方向の距離を測定してもよく、複数方向ごとに配置された複数の測距センサ１２を用いて複数方向の距離を測定してもよい。測距センサ１２は、所定範囲の方向に関して距離を測定するものであってもよく、全方向に関して距離を測定するものであってもよい。例えば、測距センサ１２は、移動体１の前方のみの範囲について、複数方向の距離を測定するものであってもよい。また、例えば、測距センサ１２は、全周囲（３６０度）について、あらかじめ決められた角度間隔で複数方向の距離を測定するものであってもよい。その角度間隔は、例えば、１度間隔や２度間隔、５度間隔などのように一定であってもよい。測距センサ１２から得られる情報は、例えば、移動体１のある向きを基準とした複数の方位角のそれぞれに関する周辺の物体までの距離であってもよい。その距離を用いることによって、移動体１のローカル座標系において、移動体１の周囲にどのような物体が存在するのかを知ることができるようになる。
【００１８】
障害物検知部１３は、測距センサ１２によって測定された距離を用いて障害物を検知する。障害物検知部１３は、例えば、測距センサ１２によって測定された距離によって、移動体１の近くの所定の領域に物体が存在することが分かった場合に、その物体を障害物として検知してもよい。例えば、測距センサ１２によって測定された周囲の物体までの距離が所定の閾値以下になった場合に、障害物検知部１３は、その物体を障害物として検知してもよい。その周囲の物体までの距離は、例えば、測距センサ１２からの距離であってもよく、移動体１の外縁からの距離であってもよく、移動体１の外縁を仮想的に膨張させた位置からの距離であってもよく、その他の基準からの距離であってもよい。なお、障害物が検知される領域は、１個であってもよく、２個以上であってもよい。その領域は、例えば、移動体１の全方向を含んでいてもよく、または、移動体１の進行方向のみを含んでいてもよい。測距結果を用いて障害物を検知するため、障害物検知部１３は、移動体１のローカル座標系において障害物を検知することになる。移動体１のローカル座標系とは、移動体１において設定された座標系である。障害物検知部１３は、障害物を検知した場合に、その検知した障害物に関するローカル座標系における位置（例えば、座標値等）を取得することが好適である。その位置は、例えば、１以上の点で示されてもよく、線で示されてもよい。その点は、例えば、測距センサ１２による測定点であってもよい。
【００１９】
現在位置取得部１４は、移動体１の現在位置を取得する。現在位置の取得は、例えば、無線通信を用いて行われてもよく、周囲の物体までの距離の測定結果を用いて行われてもよく、周囲の画像を撮影することによって行われてもよく、現在位置を取得できるその他の手段を用いてなされてもよい。無線通信を用いて現在位置を取得する方法としては、例えば、ＧＰＳ（Global Positioning System）を用いる方法や、屋内ＧＰＳを用いる方法、最寄りの無線基地局を用いる方法などが知られている。また、例えば、周囲の物体までの距離の測定結果を用いたり、周囲の画像を撮影したりすることによって現在位置を取得する方法としては、例えば、ＳＬＡＭ（Simultaneous Localization and Mapping）などによって知られている方法を用いてもよい。周囲の物体までの距離の測定結果としては、例えば、測距センサ１２の測定結果を用いてもよい。また、あらかじめ作成された地図（例えば、周囲の物体までの距離の測定結果や撮影画像を有する地図など）が記憶されている場合には、現在位置取得部１４は、地図を用いて、周囲の物体までの距離の測定結果に対応する位置を特定することによって現在位置を取得してもよく、周囲の画像を撮影し、地図を用いて、その撮影結果に対応する位置を特定することによって現在位置を取得してもよい。また、現在位置取得部１４は、例えば、自律航法装置を用いて現在位置を取得してもよい。また、現在位置取得部１４は、移動体１の向き（方向）を含む現在位置を取得することが好適である。その方向は、例えば、北を０度として、時計回りに測定された方位角によって示されてもよく、その他の方向を示す情報によって示されてもよい。その向きは、電子コンパスや地磁気センサによって取得されてもよい。現在位置取得部１４によって取得される現在位置により、地図記憶部１５で記憶されている地図上の移動体１の位置を特定できるようになっているものとする。後述するように、地図記憶部１５ではワールド座標系（グローバル座標系）の地図が記憶されているため、現在位置取得部１４によって取得される現在位置も、ワールド座標系における位置であってもよい。また、現在位置取得部１４によって取得される現在位置が、ワールド座標系における位置でない場合には、その現在位置をワールド座標系における位置に変換できるようになっていることが好適である。
【００２０】
地図記憶部１５では、ワールド座標系における障害物の位置を示す地図が記憶される。その障害物は、例えば、移動環境における壁や柱、床面に設置されている機械や機器などを示すものであってもよい。例えば、移動体１が工場内を移動する場合には、その地図は、工場内の障害物を示す地図であってもよい。例えば、地図は、図３で示されるものであってもよい。図３において、障害物Ｂ１〜Ｂ４が示されている。それらの障害物は、例えば、移動体１の移動空間における周囲の壁や、設置されている設備等であってもよい。地図記憶部１５に地図が記憶される過程は問わない。例えば、記録媒体を介して地図が地図記憶部１５で記憶されるようになってもよく、通信回線等を介して送信された地図が地図記憶部１５で記憶されるようになってもよい。地図記憶部１５での記憶は、ＲＡＭ等における一時的な記憶でもよく、または、長期的な記憶でもよい。地図記憶部１５は、所定の記録媒体（例えば、半導体メモリや磁気ディスク、光ディスクなど）によって実現されうる。
【００２１】
判断部１６は、現在位置取得部１４によって取得された現在位置を用いて、障害物検知部１３によって検知された障害物が、地図記憶部１５で記憶されている地図によって示される既知のものかどうかを判断する。以下、地図によって示される障害物を「既知の障害物」と呼び、地図によって示されていない障害物を「未知の障害物」と呼ぶことがある。判断部１６は、障害物検知部１３によって検知された障害物が、既知の障害物であるのか、または未知の障害物であるのかを判断するものである。判断部１６は、移動体１の現在位置と地図とを用いることによって、移動体１と地図上の障害物との位置関係を特定することができる。そして、障害物検知部１３によって検知された障害物が、地図上のいずれかの障害物に相当する場合には、その検知された障害物が既知であると判断することができ、その検知された障害物が、地図上のいずれの障害物にも相当しない場合には、その検知された障害物が未知のものであると判断することができる。この判断は、以下に説明するように、（１）ローカル座標系において行われてもよく、（２）ワールド座標系において行われてもよい。なお、本実施の形態では、説明を簡単にするため、ローカル座標系及びワールド座標系は、それぞれ２次元直交座標系であるとする。また、ローカル座標系をｘｙ座標系とし、ワールド座標系をＸＹ座標系とする。
【００２２】
（１）ローカル座標系における判断
この場合には、判断部１６は、地図記憶部１５で記憶されている地図によって示されるワールド座標系における障害物の位置をローカル座標系の位置に変換し、ローカル座標系において判断を行う。
【００２３】
例えば、図４Ａで示されるように、障害物検知部１３によって障害物Ｄ１が検知されたとする。なお、その障害物検知は、測距結果を用いて領域Ｒ１１において行われるものとする。領域Ｒ１１は、例えば、移動体１の進行方向の領域であってもよい。測距結果は、上記のように、例えば、角度と距離との組の情報であるため、その結果を移動体１のローカル座標系にプロットした結果は点の集合となるが、図４Ａでは、説明を簡単にするため、障害物Ｄ１のように輪郭線で示している。したがって、その輪郭線は、厳密には、１個または２個以上の測定点の集合であると考えてもよい。他の障害物に関しても同様であるとする。
【００２４】
また、その時点のワールド座標系における現在位置が（Ｘ１，Ｙ１，Θ１）であったとする。なお、（Ｘ１，Ｙ１）は、ワールド座標系における位置を示す座標値であり、Θ１は、ワールド座標系における向きを示す角度である。その角度は、例えば、ワールド座標系のＸ軸またはＹ軸を基準とした角度であってもよい。その現在位置に相当する地図上の位置及び方向を特定することによって、判断部１６は、地図上の障害物に関するローカル座標系における位置を特定することができる。その特定は、例えば、ワールド座標系からローカル座標系への変換行列（例えば、同時変換行列など）を用いて、ワールド座標系における障害物の位置をローカル座標系に変換することによって行われてもよい。ワールド座標系とローカル座標系との縮尺が異なる場合には、その変換において縮尺の違いを考慮するものとする。そして、図３で示される地図上の障害物Ｂ４に関するローカル座標系における位置を特定した場合に、図４Ｂで示されるようになっていたとすると、その障害物Ｂ４の輪郭の位置及び形状が、障害物検知部１３によって検知された障害物Ｄ１の位置及び形状と一致するため、判断部１６は、障害物Ｄ１が既知の障害物であると判断する。なお、地図上の障害物と、検知された障害物とが一致するかどうかの判断は、例えば、それぞれから抽出された特徴点が一致するかどうかによって行われてもよい。２個の図形が一致するかどうかの判断手法はすでに公知であり、その詳細な説明を省略する。
【００２５】
なお、例えば、現在位置の取得が、周囲の物体までの距離の測定結果を用いた自己位置同定によって行われている場合には、現在位置にある程度の誤差が存在することになる。したがって、その現在位置を用いて障害物の位置をワールド座標系からローカル座標系に変換した場合に、図４Ｃで示されるように、障害物Ｂ４と障害物Ｄ１との位置の誤差が距離Ｅ１となることがある。その場合には、例えば、その距離Ｅ１が誤差閾値ＥTHよりも小さいときに、すなわち、障害物検知部１３によって検知された障害物Ｄ１と、地図によって示される障害物Ｂ４とが誤差閾値ＥTHより近いときには、判断部１６は、障害物Ｄ１が既知のものであると判断してもよい。その誤差閾値ＥTHは、例えば、現在位置の取得誤差や、障害物の検知位置の誤差等を考慮して、それらの誤差よりも大きくなるように設定されてもよい。
【００２６】
また、例えば、図５Ａで示されるように、障害物検知部１３によって障害物Ｄ２が検知されたとする。また、その時点の現在位置を用いて、地図上の障害物のワールド座標系における位置を、ローカル座標系の位置に変換した結果が、図５Ｂで示される障害物Ｂ４の位置であったとする。すると、図５Ｂで示されるローカル座標系において、障害物Ｂ４と、障害物Ｄ２とは輪郭の位置も形状も異なるため、判断部１６は、障害物Ｄ２が未知の障害物であると判断してもよい。
【００２７】
（２）ワールド座標系における判断
この場合には、判断部１６は、障害物検知部１３によって検知されたローカル座標系における障害物の位置をワールド座標系の位置に変換し、ワールド座標系において判断を行う。なお、判断を行う座標系が異なる以外は、実質的に上記（１）と同様に判断が行われることになる。
【００２８】
例えば、図４Ａで示されるように、障害物検知部１３によって障害物Ｄ１が検知された場合に、判断部１６は、その時点の現在位置（Ｘ１，Ｙ１，Θ１）を用いて、ローカル座標系における障害物Ｄ１の位置を、ワールド座標系に変換する。その変換は、例えば、ローカル座標系からワールド座標系への変換行列（例えば、同時変換行列など）を用いて行ってもよい。その変換により、障害物Ｄ１は、ワールド座標系において、図６で示される位置になったとする。なお、地図上の点Ｐ１と、点Ｐ１から延びる矢印の向きは、移動体１の現在位置（Ｘ１，Ｙ１，Θ１）を示しているとする。図６で示されるように、障害物検知部１３によって検知された障害物Ｄ１の位置及び形状は、ワールド座標系の地図上に示される障害物Ｂ４の位置及び形状と一致するため、判断部１６は、障害物Ｄ１が既知の障害物であると判断する。なお、上記説明と同様に、地図上の障害物Ｂ４と、検知された障害物Ｄ１との位置が離れていたとしても、両者が誤差閾値より近い場合には、判断部１６は、障害物Ｄ１が既知のものであると判断してもよい。
【００２９】
移動制御部１７は、移動機構１１を制御することによって、移動体１の移動を制御する。移動の制御は、移動体１の移動の向きや、移動の開始・停止などの制御であってもよい。例えば、移動経路が設定されている場合には、移動制御部１７は、移動体１がその移動経路に沿って移動するように、移動機構１１を制御してもよい。より具体的には、移動制御部１７は、現在位置取得部１４によって取得される現在位置が、その移動経路に沿ったものになるように、移動機構１１を制御してもよい。また、移動制御部１７は、地図を用いて、移動の制御を行ってもよい。その場合には、移動体１は、地図記憶部１５で記憶されている地図を用いてもよい。
【００３０】
また、移動制御部１７は、障害物検知部１３によって検知された障害物への衝突を防ぐように移動機構１１を制御する。なお、移動制御部１７は、判断部１６の判断結果に応じて、障害物に関して異なる制御を行う。すなわち、移動制御部１７は、検知された障害物が既知の場合と未知の場合とで異なる制御を行うことになる。移動制御部１７は、検知された障害物が既知のものである場合には、検知された障害物が未知のものである場合と比較して、衝突を防止するためのより弱い制御を行うものであってもよい。より弱い制御とは、通常の移動制御からの変化が小さくなる制御であると考えてもよい。例えば、停止よりも減速の方がより弱い制御であり、停止よりも迂回の方がより弱い制御である。検知された障害物が未知のものである場合の移動制御が、障害物が検知された場合における通常の移動制御であると考えてもよい。なお、異なる制御とは、移動制御の方法が異なることを意味しており、その制御の結果が異なるかどうかを意味していない。例えば、後述するように、既知の障害物と、未知の障害物とについて、それぞれ異なる距離閾値を用いる場合であっても、検知された障害物が移動体１の近傍に存在するのであれば、いずれの障害物であっても移動体１が停止することになるからである。また、移動制御部１７は、必ずしも検知されたすべての障害物について、衝突を防ぐための制御を行うものではない。移動制御部１７は、検知された障害物について所定の条件（その条件は、例えば、障害物までの距離が、後述する距離閾値より短いことであってもよい。）が満たされる場合には、衝突を防ぐための減速や停止等の制御を行い、検知された障害物についてその所定の条件が満たされない場合には、衝突を防ぐための制御を行わなくてもよい。ここで、既知の障害物と未知の障害物とに関する異なる制御の一例として、次の（Ａ）、（Ｂ）を挙げることができる。
【００３１】
（Ａ）異なる距離閾値を用いて障害物への衝突を防止する場合
この場合には、移動制御部１７は、検知された障害物までの距離が距離閾値より短いときに、衝突を防止するための制御を行い、検知された障害物までの距離が距離閾値より長いときに、衝突を防止するための制御を行わないものとする。なお、検知された障害物までの距離が距離閾値と同じであるときには、移動制御部１７は、衝突を防止するための制御を行ってもよく、または行わなくてもよい。その距離閾値は、既知の障害物と、未知の障害物とで異なっている。すなわち、検知された既知の障害物に関する距離閾値は、検知された未知の障害物に関する距離閾値よりも短くなっているものとする。したがって、ある障害物が検知されたとしても、その障害物が既知の場合には、移動体１が停止や減速しないのに対して、その障害物が未知の場合には、移動体１が停止や減速するという状況があることになる。ここで、この移動制御について、図７で示される具体例を用いて説明する。図７は、２個の距離閾値の一例を示す図である。図７において、領域Ｒ１１は、測距センサ１２の位置から半径Ｌ１以内の領域であるとする。そして、未知の障害物に関する距離閾値はＬ１に設定されており、既知の障害物に関する距離閾値はＬ２に設定されているものとする。なお、Ｌ２はＬ１よりも小さい実数である。また、この具体例では、距離閾値以内の障害物が検知された場合には、移動制御部１７は、移動体１を停止させるものとする。すると、図７で示される障害物Ｄ３が障害物検知部１３によって検知された場合（この場合には、図７の障害物Ｄ４は検知されていないとする。）に、その障害物Ｄ３が既知のものであれば、距離閾値Ｌ２よりも遠い障害物であるため、移動制御部１７は、移動体１を停止させない。一方、その障害物Ｄ３が未知のものであれば、距離閾値Ｌ１より近い障害物であるため、移動制御部１７は、移動体１を停止させる。また、図７で示される障害物Ｄ４が障害物検知部１３によって検知された場合には、その障害物が既知のものであっても未知のものであっても、距離閾値Ｌ１，Ｌ２より近い障害物であるため、移動制御部１７は、移動体１を停止させることになる。なお、領域Ｒ１１において障害物が検知されていない場合には、移動制御部１７は、移動体１を停止させないことになる。
【００３２】
なお、ここでは、障害物までの距離として、測距センサ１２からの距離が用いられる場合について説明したが、そうでなくてもよい。障害物までの距離としては、例えば、移動体１の外縁や、その他の箇所からの距離が用いられてもよい。測距結果によってローカル座標系における障害物の位置を特定できるため、その位置を用いて、移動体１の任意の位置から障害物までの距離を取得することができる。移動制御部１７は、そのようにして取得した距離を用いて、上記の移動制御を行ってもよい。
【００３３】
また、距離閾値は、すべての方向について同じであってもよく、または、方向ごとに異なっていてもよい。後者の場合には、例えば、進行方向については、大きい距離閾値が用いられ、進行方向から離れるにしたがって、短くなってもよい。
【００３４】
また、障害物の検知が行われた場合の制御は、障害物と移動体１との距離に応じて段階的に行われてもよい。例えば、遠くの障害物が検知された場合には、移動制御部１７は、移動体１を減速し、近くの障害物が検知された場合には、移動制御部１７は、移動体１を停止してもよい。既知の障害物が検知された場合と、未知の障害物が検知された場合のそれぞれについて、そのようになっていてもよい。また、移動体１のローカル座標系において、未知の障害物に関する停止領域と減速領域とが設定されており、また、既知の障害物に関する停止領域と減速領域とが設定されていてもよい。なお、既知の障害物の停止領域は、未知の障害物の停止領域よりも移動体１に近い側に設定されており、また、既知の障害物の減速領域は、未知の障害物の減速領域よりも移動体１に近い側に設定されていることが好適である。そして、未知の障害物が、未知の障害物の停止領域に存在する場合には、移動制御部１７は、移動体１を停止させ、未知の障害物が、未知の障害物の減速領域に存在する場合には、移動制御部１７は、移動体１を減速させてもよい。また、既知の障害物が、既知の障害物の停止領域に存在する場合には、移動制御部１７は、移動体１を停止させ、既知の障害物が、既知の障害物の減速領域に存在する場合には、移動制御部１７は、移動体１を減速させてもよい。なお、移動体１が減速される場合に、その減速後の速度が決まっていてもよく、または、そうでなくてもよい。後者の場合には、例えば、その時点の速度に対して相対的に決まる速度（例えば、５０％の速度など）となるように減速が行われてもよい。
【００３５】
また、既知の障害物が検知されたことに応じて、移動体１が停止や減速を行うことがある場合について説明したが、そうでなくてもよい。移動制御部１７は、既知の障害物が検知された場合には、その障害物への衝突を防止するための制御を行わなくてもよい。具体的には、上記説明において、既知の障害物に関する距離閾値は、最低の値、すなわち既知の障害物に対して衝突を防止するための制御が行われることにない値に設定されてもよい。図７の場合には、例えば、既知の障害物に関する距離閾値は、「０」に設定されてもよい。既知の障害物はあらかじめ位置が分かっているため、通常、その障害物を避けるように移動経路等が探索されたり、設定されたりすることになり、既知の障害物に対して停止や減速を行わなかったとしても、適切に移動制御が行われている場合には、移動体１が既知の障害物に衝突する可能性はないと考えられる。したがって、既知の障害物に対して衝突を防止するための制御が行われなかったとしても、問題になる可能性は低いと考えられる。
【００３６】
（Ｂ）異なる方法によって障害物への衝突を防止する場合
この場合には、移動制御部１７は、例えば、検知された障害物が既知のものであるときには、ポテンシャル法によって障害物の回避を行うように移動機構１１を制御し、検知された障害物が未知のものであるときには、減速または停止するように移動機構１１を制御してもよい。障害物を回避するとは、障害物の位置以外を通過することであってもよい。ポテンシャル法では、各障害物から斥力が生じるとして経路生成を行うため、移動体１は、停止されず、各障害物を迂回して、または各障害物に近づかないで目的地に向かうことになる。したがって、既知の障害物の検知によって移動体１が減速したり停止したりしないようにすることができ、目的地への到達を優先することができる。一方、未知の障害物は、人間などである可能性があるため、安全を確保するため、衝突の防止を優先することが好適である。そのため、移動制御部１７が、既知の障害物が検知された場合にはポテンシャル法を用いて回避を行い、未知の障害物が検知された場合には減速または停止を行うことは適切な制御であると考えられる。また、例えば、現在位置の取得が、周囲の物体までの距離の測定結果を用いた自己位置同定によって行われている場合には、現在位置にある程度の誤差が存在することになる。一方、ポテンシャル法を用いた場合には、障害物からできるだけ離れた経路が生成されるため、現在位置にそのような誤差が存在しても、移動体１が実移動時に既知の障害物に衝突する可能性は低いと考えられる。したがって、その観点からも、既知の障害物の回避にポテンシャル法を用いることは好適であると考えられる。なお、既知の障害物の迂回方法として、ポテンシャル法以外の方法が用いられてもよい。例えば、既知の障害物が検知された場合には、移動制御部１７は、ＲＲＴ（Rapidly exploring Random Trees）や、ダイクストラ法、Ａ＊アルゴリズムなどを用いて、検知された既知の障害物の位置を避ける経路を取得し、移動体１がその経路によって移動するように移動機構１１を制御してもよい。
【００３７】
なお、上記説明では、検知された障害物が既知のものであるときに、ポテンシャル法やＲＲＴ等を用いた障害物の迂回によって障害物との衝突が防止され、検知された障害物が未知のものであるときに、減速または停止によって障害物との衝突が防止される場合について説明したが、そうでなくてもよい。例えば、検知された障害物が既知のものであるときに、ポテンシャル法を用いた障害物の回避によって障害物との衝突が防止され、検知された障害物が未知のものであるときに、ポテンシャル法以外のＲＲＴや、ダイクストラ法、Ａ＊アルゴリズムなどを用いた障害物を迂回する経路の取得、及びその経路に沿った移動（すなわち、障害物を迂回する移動）によって障害物との衝突が防止されるようにしてもよい。
【００３８】
次に、移動体１の動作について図２のフローチャートを用いて説明する。
（ステップＳ１０１）移動制御部１７は、移動体１の移動の制御を行う。この移動の制御は、例えば、目的地に向かう移動の制御であってもよい。このステップＳ１０１の移動の制御が繰り返して行われることによって、移動体１は、出発地から目的地に到達してもよい。
【００３９】
（ステップＳ１０２）障害物検知部１３は、障害物を検知したかどうか判断する。そして、障害物を検知した場合には、ステップＳ１０３に進み、そうでない場合には、ステップＳ１０１に戻る。
【００４０】
（ステップＳ１０３）判断部１６は、ワールド座標系とローカル座標系との間での変換を行う。上記のように、例えば、ワールド座標系の地図上の障害物の位置を、移動体１のローカル座標系の位置に変換してもよく、移動体１のローカル座標系において検知された障害物の位置を、ワールド座標系の地図上の位置に変換してもよい。
【００４１】
（ステップＳ１０４）判断部１６は、ステップＳ１０３における変換後の障害物の位置を用いて、検知された障害物が既知のものであるのか未知のものであるのかを判断する。そして、既知の障害物が検知された場合には、ステップＳ１０５に進み、未知の障害物が検知された場合には、ステップＳ１０６に進む。
【００４２】
（ステップＳ１０５）移動制御部１７は、既知の障害物の検知に応じた移動制御を行う。そして、ステップＳ１０１に戻る。この移動制御は、上記のように、例えば、移動体１の減速や停止などであってもよく、ポテンシャル法などを用いた障害物の迂回であってもよい。また、検知された既知の障害物までの距離が距離閾値よりも大きい場合には、移動制御部１７は、障害物の検知に応じた制御を行わなくてもよい。また、既知の障害物の検知に応じて移動体１を減速させた場合には、移動制御部１７は、移動速度の上限を減速後のものに制限した上で、ステップＳ１０１に戻って移動を継続してもよい。その場合には、障害物が検知されなくなったとき（ステップＳ１０２でＮＯと判断されたとき）に、移動速度の上限の制限を解除してもよい。また、既知の障害物の検知に応じて移動体１を停止させた場合には、移動制御部１７は、障害物が検知されなくなるまで停止を継続し、障害物が検知されなくなってから、ステップＳ１０１に戻って移動を再開してもよい。
【００４３】
（ステップＳ１０６）移動制御部１７は、未知の障害物の検知に応じた移動制御を行う。そして、ステップＳ１０１に戻る。この移動制御は、上記のように、例えば、移動体１の減速や停止などであってもよい。また、検知された未知の障害物までの距離が距離閾値よりも大きい場合には、移動制御部１７は、障害物の検知に応じた制御を行わなくてもよい。また、未知の障害物の検知に応じて移動体１を減速させた場合には、移動制御部１７は、移動速度の上限を減速後のものに制限した上で、ステップＳ１０１に戻って移動を継続してもよい。その場合には、障害物が検知されなくなったとき（ステップＳ１０２でＮＯと判断されたとき）に、移動速度の上限の制限を解除してもよい。また、未知の障害物の検知に応じて移動体１を停止させた場合には、移動制御部１７は、障害物が検知されなくなるまで停止を継続し、障害物が検知されなくなってから、ステップＳ１０１に戻って移動を再開してもよい。
【００４４】
なお、図２のフローチャートでは、障害物検知において１個の障害物が検知される場合について説明したが、障害物検知において２個以上の障害物が同時に検知されることもあり得る。その場合には、例えば、検知された障害物ごとに、ステップＳ１０４〜Ｓ１０６と同様に、既知かどうかの判断と、その判断結果に応じた移動制御の特定とを行ってもよい。なお、この場合には、移動制御部１７は、各障害物に対応する移動制御を障害物ごとに特定し、その特定した複数の移動制御から、最も安全性の高い移動制御を選択して、その移動制御を行うように移動機構１１を制御してもよい。最も安全性の高い移動制御とは、障害物に衝突する可能性が最も低い移動制御である。例えば、特定した移動制御が、移動体１の減速と、移動体１の停止と、検知された障害物の迂回とであった場合には、移動制御部１７は、最も安全性の高い移動体１の停止を選択し、移動体１が停止するように移動機構１１を制御してもよい。また、移動制御部１７は、特定された複数の移動制御からいずれかを選択するのではなく、それらを組み合わせてもよい。例えば、特定した移動制御が、移動体１の減速と、検知された障害物の迂回とであった場合には、移動制御部１７は、移動体１が減速し、かつ、検知された障害物を迂回するように、移動機構１１を制御してもよい。また、図２のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。また、図２のフローチャートには含まれていないが、測距センサ１２による測距や現在位置取得部１４による現在位置の取得は、繰り返して行われているものとする。また、図２のフローチャートにおいて、移動体１が目的地に到達したこと、または電源オフや処理終了の割り込みにより処理は終了する。
【００４５】
図８は、本実施の形態による移動体１の移動の具体例について説明するための図である。図８を参照して、移動体１は、移動体１−０の位置から出発し、移動体１−１，１−２，１−３の各位置を順番に移動するものとする（ステップＳ１０１）。その移動において、障害物Ｂ２，Ｂ３の間の通路を通る際や、障害物Ｂ１，Ｂ３の間の通路を通る際に、障害物検知部１３は、障害物Ｂ１〜Ｂ３をそれぞれ障害物として検知するが（ステップＳ１０２）、判断部１６によって、それらの障害物Ｂ１〜Ｂ３は、既知のものであると判断されることになる（ステップＳ１０３，Ｓ１０４）。その結果、短い距離閾値が用いられたり、ポテンシャル法による障害物の迂回が行われたりすることなどによって、移動体１は、図８で示されるように移動を継続することができる（ステップＳ１０５）。なお、その移動の途中において人間などの未知の障害物が検知された場合には（ステップＳ１０２〜Ｓ１０４）、それに応じて移動体１の減速や停止が行われることによって、安全性も確保されることになる。
【００４６】
以上のように、本実施の形態による移動体１によれば、検知した障害物が既知のものである場合と、未知のものである場合とで異なる移動制御を行うことによって、既知の障害物や未知の障害物に対して、適切な移動を行うことができるようになる。具体的には、既知の障害物が検知されたことに応じて移動体１が減速されたり停止されたりする可能性を低減することができ、既知の障害物が検知されたとしても、移動体１のより円滑な移動を継続することができるようになる。また、未知の障害物が検知された場合には、その検知に応じて移動体１が減速されたり停止されたりすることによって、安全性を確保することもできるようになる。
【００４７】
なお、本実施の形態では、判断部１６が、移動体１のローカル座標系、または、地図に対応するワールド座標系において、検知された障害物が既知のものか、未知のものかを判断する場合について説明したが、そうでなくてもよい。判断部１６は、移動体１のローカル座標系でもなく、地図のワールド座標系でもない第３の座標系において、その判断を行ってもよい。その場合には、ローカル座標系において検知された障害物の位置が第３の座標系に変換され、地図上の障害物の位置も第３の座標系に変換され、それらの変換結果を用いて、その判断が行われてもよい。
【００４８】
また、本実施の形態では、測距センサ１２による測定結果を用いた障害物検知のみを行う場合について説明したが、それ以外の障害物検知を行ってもよい。例えば、接触センサを用いた障害物検知を行うようにしてもよい。その場合には、接触センサによって障害物が検知された際に、移動制御部１７は、移動体１を停止させるなどの移動制御を行ってもよい。
【００４９】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【００５０】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う２個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う２個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
【００５１】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
【００５２】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【００５３】
また、上記実施の形態において、移動体１に含まれる２以上の構成要素が通信デバイスや入力デバイス等を有する場合に、２以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【００５４】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体（例えば、光ディスクや磁気ディスク、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【００５５】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【００５６】
以上より、本発明による移動体によれば、未知の障害物にも既知の障害物にも適切に対応することができるという効果が得られ、自律的に移動する移動体として有用である。
【符号の説明】
【００５７】
１  移動体
１１  移動機構
１２  測距センサ
１３  障害物検知部
１４  現在位置取得部
１５  地図記憶部
１６  判断部
１７  移動制御部
【図１】
2019109773.tif 000003
【図２】
2019109773.tif 000004
【図３】
2019109773.tif 000005
【図４Ａ】
2019109773.tif 000006
【図４Ｂ】
2019109773.tif 000007
【図４Ｃ】
2019109773.tif 000008
【図５Ａ】
2019109773.tif 000009
【図５Ｂ】
2019109773.tif 000010
【図６】
2019109773.tif 000011
【図７】
2019109773.tif 000012
【図８】
2019109773.tif 000013