(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-09
(45)【発行日】2022-08-18
(54)【発明の名称】移動体
(51)【国際特許分類】
G05D 1/02 20200101AFI20220810BHJP
G06T 7/50 20170101ALI20220810BHJP
G01S 17/88 20060101ALI20220810BHJP
【FI】
G05D1/02 L
G06T7/50
G01S17/88
(21)【出願番号】P 2017245150
(22)【出願日】2017-12-21
【審査請求日】2020-10-02
【前置審査】
(73)【特許権者】
【識別番号】000000262
【氏名又は名称】株式会社ダイヘン
(74)【代理人】
【識別番号】100115749
【氏名又は名称】谷川 英和
(74)【代理人】
【識別番号】100121223
【氏名又は名称】森本 悟道
(72)【発明者】
【氏名】坂原 洋人
【審査官】堀内 亮吾
(56)【参考文献】
【文献】特開2011-258065(JP,A)
【文献】特開2015-041203(JP,A)
【文献】特開平7-64633(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
G06T 7/50
G01S 17/88
(57)【特許請求の範囲】
【請求項1】
自律的に移動する移動体であって、
前記移動体を移動させる移動機構と、
複数方向に関して周囲の物体までの距離を測定する測距センサと、
前記測距センサによる測定結果を用いて、時間に依存しない方法によって、周囲の壁を検出する壁検出部と、
前記測距センサによる測定結果を用いて、時間に依存する自己位置同定によって前記移動体の
大域的な現在位置を取得する現在位置取得部と、
前記壁検出部による壁の検出結果を用いて、前記移動体の
局所的なずれを取得し、当該ずれを用いて前記移動機構を制御すると共に、前記現在位置取得部によって取得された現在位置を用いて前記移動機構を制御する移動制御部と、を備えた移動体。
【請求項2】
前記壁検出部は、前記測定結果からハフ変換によって壁を検出する、請求項1記載の移動体。
【請求項3】
前記壁検出部は、前記測定結果から最小二乗法によって壁を検出する、請求項1記載の移動体。
【請求項4】
前記移動制御部は、前記ずれが解消されるように前記移動機構を制御する、請求項1から請求項3のいずれか記載の移動体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、測距センサによって周囲の物体までの距離を測定する移動体に関する。
【背景技術】
【0002】
従来の移動体において、測距センサを有するものが知られている。その測距センサによる距離の測定結果を用いることによって、例えば、自己位置同定を行ったり、目標位置への位置決めを行ったりすることができる(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1にも記載されているように、自己位置同定によって得られた位置(位置推定結果)の精度は、それほど高くないという問題がある。例えば、自己位置同定によって得られた位置には、数十センチメートル程度の誤差のあることもある。また、上記特許文献1に記載されたように目標位置への位置決めを行う場合には、事前に、その位置決めに用いる距離などを、移動体を実際に目的位置に配置して測定する必要があり、そのための負荷が大きいという問題もあった。
【0005】
本発明は、上記課題を解決するためになされたものであり、移動制御に用いるための情報を、自己位置同定よりも高精度で取得することができ、また、位置決めのために用いる情報を、事前に測定する必要もない移動体を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明による移動体は、自律的に移動する移動体であって、移動体を移動させる移動機構と、複数方向に関して周囲の物体までの距離を測定する測距センサと、測距センサによる測定結果を用いて、時間に依存しない方法によって、周囲の壁を検出する壁検出部と、壁検出部による壁の検出結果を用いて、移動機構を制御する移動制御部と、を備えたものである。
このような構成により、時間に依存しない方法によって周囲の壁を検出するため、時間に依存する自己位置同定よりも高い精度で、また短時間で壁を検出できるようになる。そして、その壁の検出結果を用いて、例えば、移動体のスリップを検知したり、移動体の経路からの逸脱を検知したりすることができるようになる。また、例えば、位置決めのために用いる情報を、事前に測定することなく、壁の検出結果を用いて位置決めを実現することもできる。
【0007】
また、本発明による移動体では、壁検出部は、測定結果からハフ変換によって壁を検出してもよい。
このような構成により、周囲の壁を、時間に依存する自己位置同定よりも高精度に検出することができるようになる。
【0008】
また、本発明による移動体では、壁検出部は、測定結果から最小二乗法によって壁を検出してもよい。
このような構成により、周囲の壁を、時間に依存する自己位置同定よりも短時間で検出することができるようになる。
【0009】
また、本発明による移動体では、移動制御部は、壁検出部による壁の検出結果を用いて、移動体のずれを取得し、ずれを用いて移動機構を制御してもよい。
このような構成により、例えば、移動体のスリップが検知された場合には、移動体を停止させるように制御したり、移動体の経路からの逸脱が検知された場合には、移動体を経路に戻すように制御したりすることができるようになる。
【0010】
また、本発明による移動体では、移動制御部は、ずれが解消されるように移動機構を制御してもよい。
このような構成により、壁の検出結果を用いることによって、移動体を本来の経路に戻るように制御することができるようになり、時間に依存する自己位置同定によって移動制御を行う場合よりも、より精度の高い移動を実現することができるようになる。
【0011】
また、本発明による移動体では、測距センサによる測定結果を用いて、時間に依存する自己位置同定によって移動体の現在位置を取得する現在位置取得部をさらに備え、移動制御部は、現在位置取得部によって取得された現在位置を用いて移動機構を制御してもよい。
このような構成により、現在位置取得部によって取得された現在位置を用いて、大域的な位置を把握して移動制御を行うと共に、壁の検出結果を用いて、局所的なずれなどを検知して移動制御を行うことができるようになる。
【発明の効果】
【0012】
本発明による移動体によれば、時間に依存する自己位置同定よりも高い精度で、また短時間で壁を検出できるようになり、その検出結果を用いることによって、高精度でリアルタイム性の高い移動制御を実現することができる。
【図面の簡単な説明】
【0013】
【
図1】本発明の実施の形態による移動体の構成を示すブロック図
【
図2】同実施の形態による移動体の動作を示すフローチャート
【
図3】同実施の形態における壁の検出について説明するための図
【
図4】同実施の形態における壁の検出について説明するための図
【
図5】同実施の形態におけるハフ変換を用いた壁の検出について説明するための図
【
図6A】同実施の形態における壁までの距離の時間変化の一例を示す図
【
図6B】同実施の形態における壁に対する角度の時間変化の一例を示す図
【
図6C】同実施の形態における壁までの距離の時間変化の一例を示す図
【
図6D】同実施の形態における壁に対する角度の時間変化の一例を示す図
【発明を実施するための形態】
【0014】
以下、本発明による移動体について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による移動体は、測距センサによる測距結果を用いて周囲の壁を検出し、その検出結果を用いて移動制御を行うものである。
【0015】
図1は、本実施の形態による移動体1の構成を示すブロック図である。本実施の形態による移動体1は、自律的に移動するものであり、移動機構11と、測距センサ12と、壁検出部13と、地図記憶部14と、現在位置取得部15と、移動制御部16とを備える。なお、移動体1が自律的に移動するとは、移動体1がユーザ等から受け付ける操作指示に応じて移動するのではなく、自らの判断によって目的地に移動することであってもよい。その目的地は、例えば、手動で決められたものであってもよく、または、自動的に決定されたものであってもよい。また、その目的地までの移動は、例えば、移動経路に沿って行われてもよく、または、そうでなくてもよい。また、自らの判断によって目的地に移動するとは、例えば、進行方向、移動や停止などを移動体1が自ら判断することによって、目的地まで移動することであってもよい。また、例えば、移動体1が、障害物に衝突しないように移動することであってもよい。移動体1は、例えば、台車であってもよく、移動するロボットであってもよい。ロボットは、例えば、エンターテインメントロボットであってもよく、監視ロボットであってもよく、搬送ロボットであってもよく、清掃ロボットであってもよく、動画や静止画を撮影するロボットであってもよく、その他のロボットであってもよい。
【0016】
移動機構11は、移動体1を移動させる。移動機構11は、例えば、移動体1を全方向に移動できるものであってもよく、または、そうでなくてもよい。全方向に移動できるとは、任意の方向に移動できることである。移動機構11は、例えば、走行部(例えば、車輪など)と、その走行部を駆動する駆動手段(例えば、モータやエンジンなど)とを有していてもよい。なお、移動機構11が、移動体1を全方向に移動できるものである場合には、その走行部は、全方向移動車輪(例えば、オムニホイール、メカナムホイールなど)であってもよい。全方向移動車輪を有し、全方向に移動可能な移動体については、例えば、特開2017-128187号公報を参照されたい。この移動機構11としては、公知のものを用いることができるため、その詳細な説明を省略する。
【0017】
測距センサ12は、複数方向に関して周囲の物体までの距離を測定する。測距センサ12は、例えば、レーザセンサや、超音波センサ、マイクロ波を用いた距離センサ、ステレオカメラによって撮影されたステレオ画像を用いた距離センサなどであってもよい。そのレーザセンサは、レーザレンジセンサ(レーザレンジスキャナ)であってもよい。なお、それらの測距センサについてはすでに公知であり、それらの説明を省略する。本実施の形態では、測距センサ12がレーザレンジセンサである場合について主に説明する。また、移動体1は、1個のレーザレンジセンサを有していてもよく、または、2個以上のレーザレンジセンサを有していてもよい。後者の場合には、2個以上のレーザレンジセンサによって、全方向がカバーされてもよい。また、測距センサ12が超音波センサや、マイクロ波を用いた距離センサなどである場合に、測距センサ12の測距方向を回転させることによって複数方向の距離を測定してもよく、複数方向ごとに配置された複数の測距センサ12を用いて複数方向の距離を測定してもよい。測距センサ12は、所定範囲の方向に関して距離を測定するものであってもよく、全方向に関して距離を測定するものであってもよい。例えば、測距センサ12は、移動体1の前方のみの範囲について、複数方向の距離を測定するものであってもよい。また、例えば、測距センサ12は、全周囲(360度)について、あらかじめ決められた角度間隔で複数方向の距離を測定するものであってもよい。その角度間隔は、例えば、1度間隔や2度間隔、5度間隔などのように一定であってもよい。測距センサ12から得られる情報は、例えば、移動体1のある向きを基準とした複数の方位角のそれぞれに関する周辺の物体までの距離であってもよい。その距離を用いることによって、移動体1のローカル座標系において、移動体1の周囲にどのような物体が存在するのかを知ることができるようになる。
【0018】
図3は、測距センサ12による壁W1までの距離の測定について説明するための図であり、移動体1を上方から見た図である。
図3で示されるように、太矢印の方向に移動している移動体1の測距センサ12から種々の方向にレーザが出射されることによって、複数の測定点Pまでの角度及び距離をそれぞれ測定することができる。なお、
図3では、壁W1の方向にのみレーザが出射されている状況を示しているが、レーザは、通常、他の方向にも出射されている。そして、その測定点Pに関する測定結果を用いることによって、
図4で示される移動体1のローカル座標系(ここでは、2次元直交座標系(xy座標系)であるとする。)における各測定点Pの座標値を取得することができる。なお、各測定点Pに関する座標値の取得は、測距センサ12によって行われてもよく、または、他の構成要素によって行われてもよい。本実施の形態では、測距センサ12が、各測定点に関して、移動体1のローカル座標系における座標値の取得も行う場合について主に説明する。
【0019】
壁検出部13は、測距センサ12による測定結果を用いて、時間に依存しない方法によって、周囲の壁を検出する。なお、壁は、通常、部屋の仕切りや通路などの壁であるが、大型の設備などの側面が壁として検出されてもよい。時間に依存しない方法によって壁の位置を検出するとは、過去の情報を用いないで、現時点での壁の位置を検出することを意味している。なお、時間に依存する方法としては、例えば、後述するモンテカルロ位置推定がある。壁を検出するとは、移動体1のローカル座標系における壁の位置を検出することであってもよく、移動体1から壁までの距離を検出することであってもよく、移動体1と壁との角度を検出することであってもよい。壁の位置を検出するとは、ローカル座標系における壁の位置を示す式を特定することであってもよい。なお、壁が2次元平面座標系において直線で示される場合には、移動体1から壁までの距離及び角度が検出されると、移動体1のローカル座標系における壁の位置を検出できるため、移動体1から壁までの距離及び角度の検出は、ローカル座標系における壁の位置の検出と同様であると考えることもできる。壁検出部13は、移動体1が移動している際に、壁の検出を行うことが好適である。移動中には、時間に依存する自己位置同定による現在位置の取得精度が低下するのに対して、壁検出部13による壁の検出については、検出精度は低下しないからである。なお、移動体1が停止している際には、時間に依存する自己位置同定によっても、高い精度で現在位置を取得することができるようになる。壁検出部13は、壁の検出を繰り返して行ってもよい。例えば、壁検出部13は、所定の時間間隔ごとに、壁の検出を行ってもよい。壁検出部13による壁の検出方法は、時間に依存しない方法であればどのようなものであってもよいが、ここでは、(1)ハフ変換を用いて壁を検出する方法、(2)最小二乗法を用いて壁を検出する方法について説明する。なお、説明を簡単にするため、壁は平面であるとする。すなわち、壁が2次元平面座標系において直線で示される場合について説明する。
【0020】
(1)ハフ変換を用いて壁を検出する方法
この方法では、壁検出部13は、測距センサ12による測定結果から、ハフ変換によって壁を検出する。ハフ変換とは、直線や曲線を検出するために用いられる手法である。
図5は、ハフ変換について説明するための図である。
図5を参照して、ある点A(x1,y1)を通る直線L1は、次式のように表すことができる。
r=x1・cosθ+y1・sinθ
【0021】
ここで、rは、ローカル座標系(xy座標系)における原点から直線L1に引いた法線の長さであり、θは、その法線の角度(x軸との角度)である。なお、例えば、rは実数であり、θは0からπまでの範囲の実数であるとしてもよい。上式は、r、θ平面上における1個の正弦曲線に対応する。したがって、複数の測定点Pのローカル座標系における座標値(x1,y1)、(x2,y2)、(x3,y3)…に応じて、それぞれr、θ平面上の正弦曲線を特定することができる。
図3、
図4で示されるように、測定点Pは、一直線上に存在するため、複数の測定点Pに応じた複数の正弦曲線は、1点で交わることになり、その交点である(r1,θ1)によって、測定点Pを通る直線が示されることになる。すなわち、
図4のxyローカル座標系において、測定点Pを通る直線が、次式のように得られることになる。この次式を特定することが、ローカル座標系における壁の位置を検出することになる。
r1=x・cosθ1+y・sinθ1
【0022】
一方、実際には測定誤差等が存在するため、複数の測定点Pに応じた複数の正弦曲線は、2以上の点で交わることになり、その交点(r1,θ1)、(r2,θ2)、(r3,θ3)…等が取得されることになる。各交点に応じた各直線によって、複数の壁の位置が示されることになるが、それらは元々、1個の壁の位置を示すものである。したがって、例えば、複数の交点のうち、その交点を通る曲線が最も多い交点を、壁の位置に対応する直線に対応した交点として特定してもよい。そして、その特定した交点に対応する直線を、壁の位置を示す直線としてもよい。また、複数の交点のうち、閾値以上の曲線が通る交点について、r、θのそれぞれの代表値を特定し、その代表値であるr、θに対応する直線を、壁の位置を示す直線としてもよい。代表値は、例えば、平均値や中間値などであってもよい。なお、rは、壁までの距離を示すものであり、θは、壁の角度を示すものである。したがって、特定した交点に対応するr、θを取得することが、壁を検出することであってもよい。本実施の形態では、その場合について主に説明する。
【0023】
(2)最小二乗法を用いて壁を検出する方法
この方法では、壁検出部13は、測距センサ12による測定結果から、最小二乗法によって壁を検出する。例えば、
図4で示されるように、壁W1に対応する複数の測定点Pに関するローカル座標系における座標値を取得することができる。したがって、壁検出部13は、その各座標値を用いて、最小二乗法を用いることによって、壁W1に対応するローカル座標系における直線を特定してもよい。この場合には、最小二乗法に用いられる測定点に、壁の位置でない測定点が含まれると、それに応じて壁の位置の検出精度が低下することになる。したがって、壁検出部13は、例えば、壁の位置であることが確かである測定点を用いて、最小二乗法を用いた壁の検出を行うようにしてもよい。壁の位置であることが確かであるかどうかは、例えば、後述する現在位置や地図を用いて判断されてもよい。すなわち、現在位置の誤差を考慮しても、地図上における壁であると判断することができる測定点が、この壁の検出に用いられてもよい。なお、複数の座標値を用いて、最小二乗法によりそれらの座標値に最も適した直線を特定する方法はすでに公知であり、その詳細な説明を省略する。
【0024】
上記のように、ハフ変換や最小二乗法を用いて壁を検出した場合には、時間に依存する自己位置同定よりも高い精度で壁を検出することができ、また、時間に依存する自己位置同定よりも短時間で壁を検出することができる。したがって、その壁の検出結果を用いることにより、時間に依存する自己位置同定によって得られた現在位置を用いるよりも、より細かい移動制御を実現することができるようになる。例えば、壁の検出結果を用いることによって、時間に依存する自己位置同定では検出が困難であったスリップを検出したり、目標位置への位置決めをより高精度で行ったりすることができるようになる。
【0025】
なお、上記説明では、壁が平面である場合、すなわち、二次元平面において直線で示される壁を検出する場合について説明したが、そうでなくてもよい。壁の形状があらかじめ分かっている曲線(例えば、円弧や正弦曲線、楕円曲線等)である場合には、そのような曲線の壁を検出してもよい。ハフ変換や最小二乗法において曲線も取り扱うことができることはすでに知られているため、曲線の壁の検出に関する説明は省略する。
また、時間に依存しない壁の検出は、ハフ変換や最小二乗法以外の方法によって行われてもよい。
【0026】
地図記憶部14では、移動体1の移動環境に関する地図が記憶される。その地図は、例えば、移動体1の移動環境における障害物の位置を示すもの、すなわち、測距センサ12による距離の測定対象となる壁や設備等の物体の位置を示すものであってもよい。また、その地図は、例えば、自己位置同定に用いられる地図であってもよく、その他の地図であってもよい。本実施の形態では、その地図が、自己位置同定に用いられる地図である場合について主に説明する。自己位置同定に用いられる地図はすでに公知であるため、その詳細な説明を省略する。地図記憶部14に地図が記憶される過程は問わない。例えば、記録媒体を介して地図が地図記憶部14で記憶されるようになってもよく、通信回線等を介して送信された地図が地図記憶部14で記憶されるようになってもよい。地図記憶部14での記憶は、RAM等における一時的な記憶でもよく、または、長期的な記憶でもよい。地図記憶部14は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。
【0027】
現在位置取得部15は、移動体1の現在位置を取得する。現在位置の取得は、例えば、無線通信を用いて行われてもよく、周囲の物体までの距離の測定結果を用いて行われてもよく、周囲の画像を撮影することによって行われてもよく、現在位置を取得できるその他の手段を用いてなされてもよい。無線通信を用いて現在位置を取得する方法としては、例えば、GPS(Global Positioning System)を用いる方法や、屋内GPSを用いる方法、最寄りの無線基地局を用いる方法などが知られている。また、例えば、周囲の物体までの距離の測定結果を用いたり、周囲の画像を撮影したりすることによって現在位置を取得する方法としては、例えば、SLAM(Simultaneous Localization and Mapping)などによって知られている方法を用いてもよい。周囲の物体までの距離の測定結果としては、例えば、測距センサ12の測定結果を用いてもよい。また、あらかじめ作成された地図(例えば、周囲の物体までの距離の測定結果や撮影画像を有する地図など)が記憶されている場合には、現在位置取得部15は、地図を用いて、周囲の物体までの距離の測定結果に対応する位置を特定することによって現在位置を取得してもよく、周囲の画像を撮影し、地図を用いて、その撮影結果に対応する位置を特定することによって現在位置を取得してもよい。その際に、現在位置取得部15は、地図記憶部14で記憶されている地図を用いてもよい。また、現在位置取得部15は、例えば、自律航法装置を用いて現在位置を取得してもよい。また、現在位置取得部15は、移動体1の向き(方向)を含む現在位置を取得することが好適である。その方向は、例えば、北を0度として、時計回りに測定された方位角によって示されてもよく、その他の方向を示す情報によって示されてもよい。その向きは、電子コンパスや地磁気センサによって取得されてもよい。本実施の形態では、現在位置取得部15が、測距センサ12による測定結果を用いて、時間に依存する自己位置同定によって現在位置を取得する場合について主に説明する。また、その自己位置同定において、地図記憶部14で記憶されている地図が用いられるものとする。なお、時間に依存する自己位置同定は、例えば、モンテカルロ位置推定などによって行われてもよい。モンテカルロ位置推定では、例えば、次のようにして現在位置が取得される。まず、過去の移動体1の位置と、指令速度とを用いて、モデル位置を推定し、モデル位置を元にして、複数の現在位置候補を特定する。そして、特定した複数の現在位置候補に関して、地図を用いて、移動体1の周囲の物体に関する推定観測位置を算出する。その後、測距センサ12による実観測位置と、推定観測位置とを比較して、実観測位置に最も近い推定観測位置を、最終的な観測位置、すなわち現在位置として取得することになる。なお、モンテカルロ位置推定などの時間に依存する自己位置同定の方法については、すでに公知であり、その詳細な説明を省略する。
【0028】
移動制御部16は、移動機構11を制御することによって、移動体1の移動を制御する。移動の制御は、移動体1の移動の向きや、移動の開始・停止などの制御であってもよい。移動制御部16は、現在位置取得部15によって取得された現在位置を用いて移動機構11を制御してもよい。また、例えば、経路が設定されている場合には、移動制御部16は、移動体1がその移動経路に沿って移動するように、移動機構11を制御してもよい。より具体的には、移動制御部16は、現在位置取得部15によって取得される現在位置が、その移動経路に沿ったものになるように、移動機構11を制御してもよい。また、移動制御部16は、地図を用いて、移動の制御を行ってもよい。その場合には、移動制御部16は、例えば、地図記憶部14で記憶されている地図を用いてもよい。
【0029】
また、移動制御部16は、壁検出部13による壁の検出結果を用いて、移動機構11を制御する。なお、前述のように、壁の検出結果を用いた方が、現在位置を用いるよりも細かい移動制御を実現することができる。例えば、移動制御部16は、壁検出部13による壁の検出結果を用いて、移動体1のずれを取得し、そのずれを用いて移動機構11を制御してもよい。ずれの取得は、例えば、検出された壁との距離や角度と、それらに対応する基準値との差を取得することによって行われてもよく、単位時間あたりの距離や角度の変化(ずれ)を取得することによって行われてもよい。その基準値は、例えば、経路や地図等を用いて算出される値であってもよく、または、過去(例えば、直前)に検出された壁との距離や角度であってもよい。例えば、上記のように、移動体1から壁までの距離rと、移動体1に対する壁の角度θとが検出されている場合に、移動制御部16は、それらを時系列に沿って順次、記憶していてもよい。その結果は、例えば、
図6Aや
図6Bで示されるようになる。
図6Aは、検出された壁までの距離rの時間変化を示す図であり、
図6Bは、検出された壁の角度θの時間変化を示す図である。
図3で示されるように、移動体1が壁W1に沿って移動している場合、すなわち移動体1が壁W1と平行に移動している場合には、
図6A,
図6Bの時間tの小さい範囲で示されるように、壁までの距離rや壁の角度θは、略一定になる。一方、走行面の凹凸や傾斜により、または、移動中の車輪のスリップなどにより、
図6A,
図6Bで示されるように、壁との距離rや角度θが変化することがある。そのようにして検知された、壁との距離rについて取得したずれ、及び、壁との角度θについて取得したずれの少なくとも一方が、あらかじめ決められた閾値以上となった場合に、移動制御部16は、移動体1を停止させてもよく、または、そのずれが解消されるように移動機構11を制御してもよい。なお、
図6A,
図6Bにおいては、過去に検出された値(時間tの小さい範囲における値)が、ずれの取得の基準値として用いられてもよい。
【0030】
なお、例えば、移動制御部16は、壁に関して取得したずれが短時間で大きく変化した場合には、移動体1を停止させてもよい。具体的には、壁の距離と角度の少なくとも一方に関する第1の単位時間あたりのずれ(変化)が、あらかじめ決められた閾値以上になった場合に、移動制御部16は、移動体1を停止させてもよい。その場合には、移動体1にスリップ等が生じている可能性が高いからである。第1の単位時間は、あらかじめ決められており、例えば、壁の検出時点の隣接した時間間隔であってもよい。そして、移動制御部16は、停止した後に再度、壁検出部13による壁の検出や、現在位置取得部15による現在位置の取得などを実行させ、それらを用いて現在位置をより正確に取得し、経路に戻るための移動制御を再開させてもよく、または、異常の発生を、あらかじめ決められた方法によって保守の担当者等に伝えるようにしてもよい。例えば、
図6A,
図6Bで示されるように、第1の単位時間(ここでは、壁の検出に関する時間間隔であるとする。)あたりの距離や角度のずれ(変化)が大きくなった場合には、移動制御部16は、そのことを検知した際に、移動体1が停止するように移動機構11を制御してもよい。
【0031】
また、例えば、移動制御部16は、短時間には上記のようなずれは生じていないが、長時間の経過に応じて壁に関するずれが大きくなった場合には、そのずれが解消されるように移動機構11を制御してもよい。具体的には、壁の距離と角度の少なくとも一方に関する第1の単位時間あたりのずれはあらかじめ決められた閾値未満であるが、第2の単位時間あたりのずれがあらかじめ決められた閾値以上になった場合に、移動制御部16は、そのずれが解消するように制御してもよい。その場合には、偏荷重や走行面の状態などによって、壁との距離や壁との角度が徐々に変化している可能性が高いからである。第2の単位時間は、第1の単位時間よりも長い期間である。第2の単位時間は、例えば、第1の単位時間の2倍や3倍などであってもよく、それ以上であってもよい。あらかじめ決められた閾値は、スリップ等に応じた停止制御を行う場合に用いられる閾値と同じであってもよい。壁の距離にずれが生じた場合には、移動制御部16は、ずれが解消されるようにする移動制御において、そのずれ量が小さくなるように、移動体1の進行方向を変化させてもよい。また、壁の角度にずれが生じた場合には、移動制御部16は、ずれが解消されるようにする移動制御において、そのずれに応じた角度が小さくなるように、移動体1を回転させる制御を行ってもよい。例えば、
図6C,
図6Dで示されるように、第1の単位時間あたりの距離や角度のずれは小さいが、第2の単位時間(ここでは、第1の単位時間の3倍、すなわち壁の検出に関する時間間隔の3倍であるとする。)あたりの距離や角度のずれが大きくなった場合には、移動制御部16は、そのことを検知した際に、そのずれが解消するように移動機構11を制御してもよい。なお、このずれを解消する制御を行う場合には、本来の移動、すなわち偏荷重等の外乱がない状況での移動において、壁との距離や角度が変化しないことが前提となっている。したがって、そのような前提が満たされる場合に、移動制御部16は、ずれを解消する制御を行ってもよい。
【0032】
上記説明のように、移動制御部16は、例えば、検出した壁に関する第1の単位時間あたりのずれが閾値以上となった場合には、移動体1を停止させる制御を行い、検出した壁に関する第1の単位時間あたりのずれは閾値以上ではないが、第2の単位時間あたりのずれが閾値以上となった場合には、そのずれが解消されるように制御してもよい。
【0033】
また、上記説明では、壁との距離や壁との角度が本来は一定であり、その一定の値である基準値からのずれの変化を用いて移動制御を行う場合について説明したが、そうでなくてもよい。例えば、移動体1が壁に対して斜めに移動する場合には、壁との距離が徐々に大きくなる。そのような場合には、移動制御部16は、移動に応じて徐々に大きくなる距離を基準として壁のずれを取得してもよい。なお、そのような場合であっても、壁との角度が一定であれば、移動制御部16は、壁との角度に関するずれを用いて、移動制御を行うようにしてもよい。
【0034】
次に、移動体1の動作について
図2のフローチャートを用いて説明する。
(ステップS101)測距センサ12は、周囲の物体に関する距離の測定を行い、その測定結果を取得する。その測定結果は、上記のように、測定点ごとに移動体1のローカル座標系における座標値に変換されてもよい。
【0035】
(ステップS102)壁検出部13は、測距センサ12による測定結果を用いて、周囲の壁の検出を行う。例えば、壁検出部13は、移動体1の全方向について、壁の検出に関する処理を行ってもよく、または、そうでなくてもよい。全方向について壁の検出を行った場合には、本来の壁でない直線なども壁として検出される可能性がある。したがって、例えば、ハフ変換によって壁の検出を行う場合には、壁検出部13は、あらかじめ決められた閾値以上の個数の交点に対応する直線などを、壁として検出してもよい。また、壁検出部13は、例えば、現在位置取得部15によって取得された現在位置と、地図記憶部14で記憶されている地図とを用いて、現在位置に相当する地図上の位置を特定し、その地図上の位置の周囲の壁を特定し、壁の存在する方向についてのみ、または、移動体1が壁に対して、一定距離または一定角度で移動している方向についてのみ、壁の検出を行うようにしてもよい。壁に対して一定距離または一定角度で移動しているかどうかの判断については、例えば、経路も用いられてもよい。また、検知された壁に関する情報、例えば、壁までの距離や、壁の角度は、その時点の時間に対応付けられて図示しない記録媒体に蓄積されてもよい。
【0036】
(ステップS103)移動制御部16は、検出された壁の情報を用いて、移動体1にずれが生じたかどうか判断する。例えば、壁までの距離や、壁との角度に閾値以上の変化が生じた場合には、移動体1にずれが生じたと判断してもよい。そして、移動体1にずれが生じていない場合には、ステップS104に進み、移動体1にずれが生じた場合には、ステップS105に進む。
【0037】
(ステップS104)移動制御部16は、通常の移動制御、すなわち移動体1にずれが生じていない場合の移動制御を行う。この移動の制御は、例えば、目的地に向かう移動の制御であってもよい。このステップS104の移動の制御が繰り返して行われることによって、移動体1は、出発地から目的地に到達してもよい。
【0038】
(ステップS105)移動制御部16は、ずれが生じた場合の移動制御を行う。例えば、移動制御部16は、短時間に大きなずれが生じた場合には、移動体1を停止させてもよい。そして、移動制御部16は、現在位置等を高精度に取得した後に移動を再開してもよく、または、保守担当者等に連絡してもよい。また、移動制御部16は、短時間に大きなずれは生じていないが、長時間の経過に応じてずれが大きくなった場合には、そのずれが解消するように移動機構11を制御してもよい。
【0039】
(ステップS106)移動制御部16は、目的地に到達したかどうか判断する。そして、目的地に到達した場合には、一連の移動の処理が終了となり、そうでない場合には、ステップS101に戻る。なお、移動制御部16は、移動体1が目的地に到達したかどうかを、現在位置を用いて判断してもよく、または、壁の検出結果を用いて判断してもよい。前者の場合には、現在位置取得部15によって取得された現在位置が、目的地に応じた位置となったときに、移動制御部16は、移動体1が現在位置に到達したと判断してもよい。また、後者の場合には、例えば、前方の壁までの距離がD1であり、側方(右側であってもよく、左側であってもよい)の壁までの距離がD2である地点が目的地であるとすると、移動制御部16は、壁検出部13によって取得された前方及び側方の壁までの距離を取得し、両者がD1とD2になったときに、目的地に到達したと判断してもよい。このように、壁の検出結果を用いた位置決めを行うことによって、時間に依存する自己位置同定によって取得された現在位置を用いた位置決めよりも、より精度の高い位置決めを実現することができる。また、この場合には、そのような壁との距離を用いた位置決めにおいて、位置決めに用いる情報を、あらかじめ測定する必要もない。
【0040】
なお、
図2における処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。また、
図2のフローチャートには含まれていないが、現在位置取得部15による現在位置の取得は、繰り返して行われているものとする。
【0041】
以上のように、本実施の形態による移動体1によれば、時間に依存しない方法によって周囲の壁を検出するため、時間に依存する自己位置同定よりも高い精度で、また短時間で壁を検出できるようになる。したがって、移動体1は、その壁の検出結果を用いることによって、高精度でリアルタイム性の高い移動制御を実現することができる。例えば、壁の検出結果を用いて、移動体1の壁に対するずれを取得することができ、そのずれを取得した際に、移動体1を停止させたり、その取得したずれが解消するように移動体1を移動制御したりすることができるようになる。このようにして、移動体1のより安全な移動を実現できるようになり、また、移動体1のより精度の高い移動を実現できるようになる。一方、時間に依存する自己位置同定は、本実施の形態による壁の検出よりも精度が低く、またリアルタイム性が低いことになる。したがって、例えば、時間に依存する自己位置同定の結果を用いてスリップの検知などを行うことは困難である。
【0042】
なお、壁検出部13によって検出された壁を用いて、移動体1の位置決めを行うこともできる。例えば、図示しない障害物検知部によって、前方から自移動体1に向かって移動してくる他の移動体が検知された場合に、移動制御部16は、壁検出部13による壁の検出結果を用いることによって、自移動体1が、壁の近傍で待避するように制御することもできる。時間に依存する自己位置同定による現在位置の取得結果を用いる場合には、その誤差が大きいため、壁に近づくことは困難となる。誤差に応じた距離よりも壁に近づくと、壁と衝突する危険性があるからである。一方、壁検出部13による検出結果の誤差は、その自己位置同定の誤差よりも小さいため、壁により近づいた位置に移動できるようになる。そのようにして、他の移動体が通り過ぎるまで、より壁に近い位置で待避するように移動制御することもできるようになる。また、壁検出部13による検出結果を用いて、例えば、エレベータ内などのように、壁で囲われた場所における位置決めなどを行うこともできる。
【0043】
また、本実施の形態において、移動制御に現在位置を用いない場合には、移動体1は、現在位置取得部15を備えていなくてもよい。
【0044】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【0045】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
【0046】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
【0047】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【0048】
また、上記実施の形態において、移動体1に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【0049】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【0050】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0051】
以上より、本発明による移動体によれば、壁の検出結果を用いることによって、高精度でリアルタイム性の高い移動制御を実現できるという効果が得られ、自律的に移動する移動体として有用である。
【符号の説明】
【0052】
1 移動体
11 移動機構
12 測距センサ
13 壁検出部
14 地図記憶部
15 現在位置取得部
16 移動制御部