(57)【要約】【課題】簡易な処理によって、距離計測装置６Ａで走行境界を検出可能とする。【解決手段】移動装置１に搭載した距離計測装置６Ａによって、移動装置１が走行可能な境界である走行境界を検出する。その際に、同一計測方向Ｋについて、姿勢検出手段による姿勢検出に基づき、距離計測時における移動装置１の姿勢が異なる複数点の距離を上記距離計測装置６Ａで計測する。そして、検出時の姿勢によって各計測点Ａｎ（ｎ＝１，２，・・・）の位置を取得し、その各計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）の関係性に基づき走行境界を推定する。【選択図】        図３
2010020366.tif 000002
【特許請求の範囲】
【請求項１】
駆動部を駆動することで床面に沿って移動すると共に駆動部の駆動を制御することで姿勢が変更可能な移動装置に搭載し、当該移動装置が走行可能な境界である走行境界を検出するための走行境界検出装置であって、
移動装置に搭載されて障害物までの距離を計測する距離計測装置と、
移動装置に搭載されて移動装置の上下方向への姿勢の傾きを検出する姿勢検出手段と、
同一計測方向に対し、距離計測時における移動装置の姿勢が異なる複数の各計測点の位置を、上記距離計測装置の計測及び姿勢検出手段による姿勢検出に基づき取得する複数点取得手段と、
複数点取得手段で取得した複数の各計測点を通過する直線の関係性に基づいて、走行境界を推定する走行境界位置推定手段と、
を備えることを特徴とする走行境界検出装置。
【請求項２】
上記走行境界位置推定手段は、取得した複数の計測点における各２つの計測点を通過する直線群について、２つの直線が作る角度であって移動装置側の角度が最も小さい角度となる当該２つの直線の交点を、走行境界と推定することを特徴とする請求項１に記載した走行境界検出装置。
【請求項３】
上記走行境界位置推定手段は、上記２つの直線が作る角度であって移動装置側の角度が最も小さい角度が、所定の値よりも大きい場合は、走行境界と推定しないことを特徴とする請求項２に記載した走行境界検出装置。
【請求項４】
上記走行境界位置推定手段は、取得した複数の計測点における各２つの計測点を通過する直線群について、２つの直線が作る角度であって移動装置側の角度が所定角度以下となる当該２つの直線の交点であって移動装置に一番近い交点を、走行境界と推定することを特徴とする請求項１に記載した走行境界検出装置。
【請求項５】
上記２つの計測点を通過する直線は、隣り合う２つの計測点を通過する直線とすることを特徴とする請求項１〜請求項４のいずれか１項に記載した走行境界検出装置。
【請求項６】
複数点取得手段は、姿勢検出手段による検出に基づき、距離計測装置による計測方向の仰角が所定値以上の計測点は、上記走行境界の推定のための計測点として使用しないことを特徴とする請求項１〜請求項５のいずれか１項に記載した走行境界検出装置。
【請求項７】
駆動部の駆動を制御することで移動装置に上下方向への姿勢変化を発生させて、複数点の距離計測を行うことを特徴とする請求項１〜請求項６のいずれか１項に記載した走行境界検出装置。
【請求項８】
移動装置に距離計測装置を搭載し、その距離計測装置による計測に基づき、移動装置が走行可能な境界である走行境界を検出する走行境界検出方法であって、
障害物との距離を計測する際に、移動装置に発生する上下方向への姿勢変化を利用して、同一計測方向について、互いに移動装置の姿勢が異なる状態で計測した複数の距離計測点の位置を取得し、その複数の各計測点を通過する直線の関係性を基づいて、走行境界を推定することを特徴とする走行境界検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば自律型の移動装置を走行させて地図を生成するために使用して、移動装置周囲の走行境界を検出する技術に関する。
【背景技術】
【０００２】
例えば、走行時に障害物などを検出しつつ走行する自律型の移動装置として、例えば特許文献１に記載の技術がある。
この特許文献１に記載の技術では、移動装置に搭載したレーザレーダなどの距離計測装置によって、水平方向に所定角度だけスキャンする。そして、所定検出範囲にある障害物からの反射光によって障害物、つまり走行境界までの距離を検出する。
また、撮像装置によって移動装置周囲の画像を取得し、その画像と、上記距離計測装置による障害物までの距離とによって、障害物が何であるか判定する。
【特許文献１】特開２００４−２８０４５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記従来技術では、距離計測装置で水平スキャンを行っている。すなわち、移動装置が移動する床が平坦であることを仮定して、距離計測装置で、走行境界をなす障害物までの距離を検出している。
このため、移動装置が上下方向に姿勢変化を起こして、距離計測方向が上下変位するようにピッチングすると、距離計測装置の計測方向の向きが上下に傾く。下方に傾いて計測すると、走行可能な床面を障害物として検出してしまうおそれがある。このような誤検出は、移動装置が走行する床に、走行可能な斜面や凹凸があった場合に発生し易い。
本発明は、上記のような点に着目してなされたもので、簡易な処理によって、距離計測装置で走行境界を検出可能とすることを課題としている。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明は、移動装置に搭載した距離計測装置によって、移動装置が走行可能な境界である走行境界を検出する。その際に、同一計測方向について、姿勢検出手段による姿勢検出に基づき、距離計測時における移動装置の姿勢が異なる複数点の距離を上記距離計測装置で計測する。そして、検出時の姿勢によって各計測点の位置を取得し、その各計測点を通過する直線の関係性に基づき走行境界を推定する。
【発明の効果】
【０００５】
本発明によれば、距離計測装置による全計測点を、そのまま走行境界をなす障害物までの距離としない。そして、移動装置の姿勢変化を利用して距離計測を行う。すなわち、同一計測方向について、距離計測時における移動装置の姿勢が異なる複数の距離計測点を通過する直線同士の関係から、走行境界を推定する。このため、簡易な処理によって、距離計測装置で走行境界を検出することが可能となる。
【発明を実施するための最良の形態】
【０００６】
次に、本発明の実施形態について図面を参照しつつ説明する。
図１は、本実施形態に係る移動装置１を示す斜視図である。
（構成）
まず移動装置１の構成について説明する。
本実施形態の移動装置１は、図１に示すように、移動装置本体２の左右両側に車輪３を配置した２輪形態の移動装置である。移動装置本体２には、また駆動部４、及び駆動部４を制御する駆動制御部５を搭載する。駆動部４は、モータなどのアクチュエータからなり、アクチュエータの発生するトルクを、駆動トルクとして車輪３に伝達する。その伝達した駆動トルクによって車輪３を回転駆動する。
【０００７】
駆動制御部５は、移動装置１の走行に応じた駆動指令を上記駆動部４に出力する。
この移動装置１は、車輪３を駆動した際に、移動装置本体２が、車幅方向の軸回りにピッチングするように姿勢変化を発生させることができる。即ち、車輪３を駆動制御することで、移動装置１は移動すると共に姿勢を変化させることが可能である。すなわち車輪３を駆動することで、走行制御及び姿勢制御が可能となる。
【０００８】
ここで移動装置１としては、ロボットを含む様々な移動装置に適用可能である。ただし、本実施形態の移動装置１は、上述のよう図１のように、２つの車輪３を移動装置本体２の左右に配置し、駆動制御によりバランスをとりながら移動および姿勢変化を行うものである。この２輪の形態の移動装置１は、１輪の移動装置に比べて駆動制御が容易である。また、３輪以上の移動装置と比較すると、上記２輪形態の構成は、構成が単純で、行動変化時の重心移動量が少ない。また、容易にその動きをモデル化できるという利点を持つ。
【０００９】
本実施形態の移動装置１を力学的にモデル化すると、図２のようになる。
そして、この関係を示す運動方程式は、下記の式（１）〜式（４）のように表すことが出来る。
Ｊｄ2／ｄｔ2θ  ＝  ＶＬｓｉｎθ  −ＨＬｃｏｎθ      ・・・（１）
ｍｄ2／ｄｔ2（Ｌｃｏｎθ）  ＝  Ｖ−  ｍｇ            ・・・（２）
ｕ  ＝  Ｈ                                            ・・・（３）
Ｊ  ＝  ｍＬ2／３                                      ・・・（４）
ここで、
Ｊ：慣性モーメント
θ：移動装置１の移動装置本体２の傾き（ピッチ角θ）
Ｖ：移動装置１の重心に対し垂直方向に掛かる力
Ｈ：移動装置１の重心に対し水平方向に掛かる力
ｍ：移動装置本体２の重さ
Ｌ：移動装置本体２の重心位置から車輪３中心までの距離
ｕ：車輪３で発生する力
を示す。
【００１０】
この（１）式〜（４）式のようなモデルに基づき、所定のピッチ角θの姿勢とするための適切な制御出力ｕを求めることが出来る。
また、地図生成装置６は、図３に示すように、距離計測装置６Ａ、姿勢計測装置６Ｂ、走行境界演算手段６Ｃ、記録装置６Ｄ、および姿勢制御手段６Ｅを備える。このうち、少なくとも距離計測装置６Ａ、姿勢計測装置６Ｂ、走行境界演算手段６Ｃは、走行境界検出装置を構成する。
【００１１】
上記距離計測装置６Ａ及び姿勢計測装置６Ｂは、上記移動装置本体２に搭載する。
距離計測装置６Ａは、移動装置１周辺の障害物までの距離を計測する装置である。計測した距離情報を走行境界演算手段６Ｃに供給する。距離計測装置６Ａとしては、例えば、レーザー、ミリ波、超音波、静電容量を利用した装置や、ステレオカメラなどを利用する装置を使用する。この実施形態では、レーザーにより２次元的に周囲の物体までの距離を計測することが可能なレーザースキャナを利用する。その距離計測装置６Ａを、移動装置本体２に対して上下方向に揺動不能に固定する。この場合には、距離計測装置６Ａの距離計測方向Ｋは任意に設定変更しないようになる。このため、距離計測方向Ｋは、移動装置１の移動装置本体２に発生するピッチングの影響を受けることになる。しかし、逆にこの上下方向への姿勢変化を利用することで、上下方向に広く距離計測を行うことが可能となる。
【００１２】
姿勢計測装置６Ｂは、移動装置本体２の現在の姿勢を計測する装置である。本実施形態の姿勢計測装置６Ｂは、移動装置本体２のピッチ角θを検出する。姿勢計測装置６Ｂは、検出したピッチ角情報を走行境界演算手段６Ｃに供給する。姿勢計測装置６Ｂとしては、ジャイロセンサーやＧセンサーなどを用いることが可能である。
走行境界演算手段６Ｃは、上記距離計測装置６Ａ及び姿勢計測装置６Ｂからの情報に基づき、障害物までの距離及び位置、つまり走行境界を算出する。その算出した走行境界の情報は、記録装置６Ｄに出力する。
【００１３】
走行境界演算手段６Ｃは、図４に示すように、複数点取得手段６Ｃａ及び走行境界位置推定手段６Ｃａを備える。そして、複数点取得手段６Ｃａは、上記距離計測装置６Ａが取得した走行境界を構成する障害物までの距離データと、上記姿勢計測装置６Ｂにより取得した距離データ計測時の姿勢を複数取得する。また、走行境界位置推定手段６Ｃａは、その計測点Ａｎを通過する直線Ｂｎの関係性から走行境界の位置を推定する。この走行境界演算手段６Ｃは、ＣＰＵとメモリーなどで構成する。詳細な走行境界の演算処理は後述する。
【００１４】
記録装置６Ｄは、走行境界演算手段６Ｃが算出した走行境界の情報を記録する。この記録装置６Ｄは、上記走行境界演算手段６Ｃから取得した走行境界データを保持するための装置である。例えば、ハードディスクやテープデバイスやＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などを利用することが可能である。また、上記走行境界演算手段６Ｃから取得した走行境界までの距離を絶対座標に変換して保存していくことで、行動範囲の走行境界を示す地図の情報として記録することとなる。
【００１５】
姿勢制御手段６Ｅは、走行境界取得処理中に、上記移動装置１の上記駆動制御部５に駆動指令を出力して、移動装置１の姿勢変化を制御する。その姿勢変化の制御の指令としては、その場位置保持制御の指令と、姿勢に積極的な変化を発生させるための前後進制御の指令とを出力する。すなわち、姿勢制御手段６Ｅは、上記走行境界演算手段６Ｃにより走行境界を計測する際に、必要なピッチ角範囲での距離計測結果を得ることが出来ない場合は、前後進制御の指令を出力して、移動装置１を前後方向に加速および減速する。これによって、移動装置１の移動装置本体２に発生するピッチ角範囲を変更し、必要なピッチ角θでの距離計測結果を得ることが可能となる。
【００１６】
次に、走行境界演算手段６Ｃの処理について、図５を参照して説明する。
まず、ステップＳ１００において、移動装置１前方の距離計測を実施する。このとき、距離計測装置６Ａが計測した走行境界を構成する障害物までの距離データを取得する。同時に、距離計測時における移動体の姿勢情報を取得する。即ち、姿勢計測装置６Ｂが計測した、移動装置１に発生しているピッチ角θを取得する。ピッチ角θは、図６に示すように、鉛直方向に直交する水平方向で且つ移動装置１の前進方向を基準（０度）として、上向きの角度（仰角）を正、下向きの角度（俯角）を負とする。
【００１７】
続いて、ステップＳ１１０では、走行境界の推定に十分な数の計測点データを取得したか否かを判定する。十分な数の計測点数を取得したと判定する場合には、ステップＳ１３０に移行する。一方、十分な数の計測点数を取得していないと判定した場合には、ステップＳ１２０に移行する。
ここで、走行境界の推定に十分なデータ数（計測点数）とは、図７に示すように４点以上とする。これは、少なくとも床面の傾き（前方の床面位置）を推定するための２点Ａ1、Ａ2と、壁面（障害物表面）を観測するための２点Ａ3、Ａ4とを取得するためである。計測点を４点以上取得することで、床面と壁面の交点Ｐｎ（走行境界）を十分な精度で推定できるようになると考える。
【００１８】
ただし、計測点Ａｎ（ｎ＝１，２，・・・）が３点以上あれば、走行境界を求めることは可能である。また、多くの計測点数を用いて走行境界を推定すれば、より高い精度で推定を行うことが可能であると考える。
ステップＳ１２０では、所定時間Δｔ［ｓ］間、待機した後に、ステップＳ１００に戻る。そして、距離計測を繰り返す。
ここで、複数点の距離計測の際には、姿勢制御手段６Ｅからの指令によって、移動装置１がその場にとどまるように姿勢制御を行う。即ち、移動装置１の移動装置本体２の重心が、車輪３の中心に対して垂直方向に保持するように制御する。このとき、移動装置１の移動装置本体２と車輪３の動きを固定するのではなく、移動装置本体２が静止しないように制御を行う。
【００１９】
そのため、姿勢計測装置６Ｂでの計測に基づき現在の移動装置本体２の傾き角であるピッチ角θを取得し、上記（１）〜（４）を用いてピッチ角θを維持するための適切な制御出力ｕを求める。その制御出力ｕに応じたトルクとなるように、駆動制御部５は、駆動指令を駆動部４に出力する。このとき、姿勢をピッチ角θの状態に保持する制御の過程で、移動装置本体２はピッチングする。このため、ステップＳ１００において、様々なピッチ角θでつまり複数の姿勢で距離計測を行うことが可能となる。
【００２０】
ステップＳ１３０では、ステップＳ１１０で取得した距離計測点データに関して、それらのデータを取得した際のピッチ角θの検討を行う。即ち、複数の距離計測データのピッチ角θに基づき、必要な計測範囲の情報を取得したか否かを判定する。必要な計測範囲の情報を取得していると判定した場合には、ステップＳ１５０に移行する。取得していないと判定した場合には、ステップＳ１４０に移行する。
ここでは図８のように、少なくとも「−６度」よりも下向きのピッチ角θが発生した状態での計測を２点以上取得しており、且つ、またピッチ角θが０度よりも上向きである点が２点以上取得していると判定した場合に、必要な計測範囲の情報を取得している状態とする。
【００２１】
ここで、「−６度よりも下向き」とは、距離計測装置６Ａの取付け高さが地上高０．２ｍである場合に、２ｍ前方の床面を見る角度である。これ以上の下向きピッチ角θを持つことは移動装置１から２ｍ以内の領域の床面の傾きを見ることとなる。またピッチ角θが０度以上では、床が平らであれば、壁面までの距離を取得することになる。したがって、これらのピッチ角θで計測した計測点Ａｎ（ｎ＝１，２，・・・）があれば、床面と壁面の境目（走行境界）をおおよそ正確に捉えることができるようになると推定できる。
【００２２】
ただし、上記規定した必要な計測範囲であるピッチ角範囲は、これに限定するものではない。これらの角度範囲を設定しなくても走行境界を推定することは可能である。またさらに細かい角度領域を設定し、それぞれに対して複数点計測点Ａｎ（ｎ＝１，２，・・・）を得ることでより精度の高い走行境界計測値を得ることも可能である。
ステップＳ１４０では、移動装置１を前後に移動させることで積極的な姿勢の変化を発生させる。このステップＳ１４０に移行する場合には、ステップＳ１１０で必要な計測点数を満たしているにもかかわらず、ステップＳ１３０にて必要なピッチ角範囲の計測データが必要数だけ計測していないと判断したためである。この場合には、その場にとどまるだけの姿勢制御では、さらに広範囲な計測角度での距離計測が困難であると考えて、移動装置１を移動させる。
【００２３】
すなわち、ステップＳ１４０では、姿勢保持の目標ピッチ角θを現在のピッチ角θをよりもマイナス方向に設定する。すなわち、車輪出力ｕを倒立振子制御に必要な値よりも低く設定する。これにより移動装置１の移動装置本体２はマイナス方向にさらに傾き、この過程で前進する。次に、移動装置１の傾きを元に戻すために、移動装置１を前進方向への移動を停止させる。このとき、ピッチ角θがプラス方向に振れるように倒立振子制御に必要な力よりも大きな力を発生させる。この処理は、姿勢制御手段６Ｅを起動して行う。
【００２４】
これにより、さらに広範囲なピッチ角範囲で、距離計測を実施することが可能となる。
一方、ステップＳ１３０にて、適切な制御姿勢による距離計測データ数が十分取得したと判定した場合には、ステップＳ１５０に移行して、走行境界の推定を行う。
すなわち、ステップＳ１５０では、走行境界の推定は図９のように、距離計測値と距離計測時の移動装置１のピッチ角θから、各計測点Ａｎ（ｎ＝１，２，・・・）の位置を求め、その複数の計測点Ａｎ（ｎ＝１，２，・・・）を２次元平面にマッピングする。２次元平面は、上下方向を向いた面である。
【００２５】
そして、各２つの計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）群を求める。そして、直線Ｂｎ（ｎ＝１，２，・・・）群について、それぞれ２本の直線Ｂｎ（ｎ＝１，２，・・・）の交角αｎ（ｎ＝１，２，・・・）を取得する。そして、一番小さい角度の交角αｎ（ｎ＝１，２，・・・）（以下、最小交角αminと呼ぶ）の交点Ｐｎを、走行境界の推定値（図９のＰｎ）とする。ここで、上記交角αｎ（ｎ＝１，２，・・・）は、移動装置１側の交角αｎ（ｎ＝１，２，・・・）である。図９では、右上側に向く方の交角αｎ（ｎ＝１，２，・・・）である。
【００２６】
ここで、上記各２つの計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）群を求める際に、次のように、求める直線Ｂｎ（ｎ＝１，２，・・・）を制限すると良い。すなわち、ピッチ角θに基づき、ピッチ角θが近い、隣り合う２つの計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）群だけを採用する。これによって、比較対象となる交角αｎ（ｎ＝１，２，・・・）の数を制限可能となる。
【００２７】
この推定手法によれば、図１０（ａ）の８０２のように、移動装置１の登坂能力を超えたスロープによる走行境界や、図１０（ｂ）の８０３のように、移動装置１がスロープ上にあるときでも、走行境界を検出することが可能である。
ただし、上記求めた最小交角αminが、所定角度以上の場合には、走行境界と推定しない。上記所定角度とは、図１１のように、１８０度から、「対象とする移動装置１によって登坂可能なスロープの最大傾斜角度αｓ」を引いた角度とする。最小交角αminが、所定角度以上の場合には、移動装置１が乗り越えていけると判断できるためである。
ステップＳ１６０では、ステップＳ１５０で推定した走行境界を、記録装置６Ｄに保存していく。ここで、走行境界を、予め設定した座標系での位置に変換して記録装置６Ｄに保存していく。これによって、移動物体の走行境界分布を示す地図を作成することが可能となる。
【００２８】
続いて、ステップＳ１７０では、何らかの終了処理（移動装置１に対するストップ信号など）が発生したら、処理を中止する。ここでこれらの終了処理が発生しない場合は、走行境界検出の向きや場所を変更するように、移動装置が駆動した後に、再びステップＳ１００に移行して、走行境界算出手段６Ｃの処理を継続する。
ここで、地図生成装置６のうち、走行境界演算手段６Ｃや記録装置６Ｄは、移動装置１に搭載しても良いが、移動装置１に搭載する必要はない。移動装置１に搭載しない場合には、別の場所に設定して、通信によって情報の授受を行えば良い。
ここで、姿勢計測装置６Ｂが姿勢検出装置を構成する。
【００２９】
（動作及び作用）
移動装置１に発生しているピッチングを利用して、距離の計測値について、同一の計測方向Ｋにおいて、複数の異なる姿勢で検出した、複数の計測点Ａｎ（ｎ＝１，２，・・・）で取得する。この複数の計測点Ａｎ（ｎ＝１，２，・・・）は、距離計測装置６Ａの計測方向Ｋが上記ピッチ角θの変化によって変化した点である。このため、上記複数の計測点Ａｎ（ｎ＝１，２，・・・）は、所定の２次元平面上の点となる（例えば、図９参照）。ここで、上記２次元平面は、２つの車輪３の接地する床面が水平であれば鉛直方向の平面となる。一方、上記２次元平面は、２つの車輪３の接地する床面が傾いていれば、鉛直方向から傾いた上下方向の平面となる。
【００３０】
そして、各距離の計測をしたときの姿勢を計測することで、２次元平面上における、各距離の計測点Ａｎ（ｎ＝１，２，・・・）の位置を求めることが可能である。
そして、複数の計測点Ａｎ（ｎ＝１，２，・・・）における各点を通過する複数の直線Ｂｎ（ｎ＝１，２，・・・）群について、各２本の直線Ｂｎ（ｎ＝１，２，・・・）の交角αｎ（ｎ＝１，２，・・・）のうち、一番小さな交角αminの交点Ｐｎを走行境界とする。
【００３１】
ここで、複数の交点Ｐｎのうち任意の２点を選択し、その２点を通過する直線Ｂｎ（ｎ＝１，２，・・・）は、例えば、図９のように、計測点Ａｎ（ｎ＝１，２，・・・）が４点であれば、６本存在する。その全ての直線Ｂｎ（ｎ＝１，２，・・・）の交角αｎ（ｎ＝１，２，・・・）を求めて比較しても良い。ただし、計測点Ａｎ（ｎ＝１，２，・・・）が多くなるほど、求める交角αｎ（ｎ＝１，２，・・・）が多くなる。
このため、ここでは、ピッチ角θに基づき、隣り合う計測点Ａｎ（ｎ＝１，２，・・・）同士を通過する直線Ｂｎ（ｎ＝１，２，・・・）に限定する。このように限定すると、例えば計測点Ａｎ（ｎ＝１，２，・・・）が４点であれば、直線Ｂｎ（ｎ＝１，２，・・・）が３本に限定出来て、交角αｎ（ｎ＝１，２，・・・）を演算比較する処理量が減る。
【００３２】
また、求めた一番小さな交角αminが登坂可能なスロープ相当の場合には、走行境界としない。
さらに、移動装置１に発生している姿勢変化（ピッチ角変化）の範囲が、必要とする計測点Ａｎ（ｎ＝１，２，・・・）を取得出来ないと判定する場合には、移動装置１を前後進させる。これによって、移動装置１に発生する姿勢変化の範囲を大きくする。そして、必要とする計測点Ａｎ（ｎ＝１，２，・・・）を取得する。
【００３３】
（本実施形態の効果）
（１）同一計測方向Ｋについて、移動装置１の複数の異なる姿勢で取得した複数の各計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）の関係性に基づいて、走行境界を推定する。
すなわち、計測点Ａｎ（ｎ＝１，２，・・・）をそのまま走行境界をなす障害物までの距離としない。これによって、移動装置１に上下方向の姿勢変化が発生していても、走行境界とならない障害物、例えば走行可能な床面の凹凸や傾きを障害物までの距離と検出しても、その各計測点Ａｎ（ｎ＝１，２，・・・）がそのまま走行境界となることが無い。
【００３４】
また、同一計測方向Ｋにおける、つまり同一の２次元平面上に存在する複数の計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）の関係性から走行境界を判定することで、移動装置１が走行する床面に対する、障害物の傾き、若しくは上記２次元平面での床と障害物の輪郭が推定可能となる。この結果、凹凸が発生している場所が特定できて、走行境界を推定することができる。
以上のことから、簡易な処理によって、距離計測装置６Ａで走行境界を検出することが可能となる。
【００３５】
（２）また、移動装置１に発生する姿勢変化を積極的に利用して、同一計測方向Ｋにおける複数の計測点Ａｎ（ｎ＝１，２，・・・）を取得している。このため、距離計測装置６Ａ自体の計測方向Ｋを上下方向に変更するための独立した機構が不要となる。
（３）上記各計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）が作る交角αｎ（ｎ＝１，２，・・・）が最も小さい角度を作る２つの直線Ｂｎ（ｎ＝１，２，・・・）の交点Ｐｎを、走行境界と推定する。これによって、各計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）の関係性から走行境界と推定可能な位置を精度良く求めることが可能となる。
【００３６】
（４）最も小さな角度が、所定の値よりも大きい場合は、走行境界と推定しない。これによって、所定角度の凹凸のある部分を特定しても、移動装置１が乗り越えることができる程度の凹凸であれば走行境界としない。つまり、移動装置１が自由に移動できる空間と判別できる。したがって、行動できる範囲を正しく規定したマップを作成することが可能となる。
【００３７】
（５）複数の計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）を、姿勢変化の方向に沿って隣り合う計測点Ａｎ（ｎ＝１，２，・・・）同士とする。これによって、走行境界を推定するために使用する直線Ｂｎ（ｎ＝１，２，・・・）の数を制限することが出来て、処理負荷を抑えることが可能となる。
【００３８】
（６）計測状況に応じて、駆動部４の駆動を制御することで移動装置１に上下方向への姿勢変化を発生させて、複数点の距離計測を行う。
これによって、自然発生した移動装置１の揺れだけでは、観測できない姿勢変化（ピッチ角変化）で計測した距離計側結果を取得可能となる。この結果、移動装置１の揺れが収まった後や、そもそも移動物体の揺れが発生しない緩やかな景観を持つ走行環境であっても、上記方式による走行境界の推定を行うことができる。
すなわち、走行路面に所定の凹凸や斜面などがあって移動装置１に所定以上の姿勢変化が発生する場合には、その姿勢変化を利用する。それが利用できない場合であっても、姿勢変化を発生させることで、走行境界の推定を行うことが可能となる。
【００３９】
（変形例）
（１）距離計測時に所定の仰角以上のピッチ角θで計測した値は、走行境界推定のための計測点Ａｎ（ｎ＝１，２，・・・）としないようにすると良い。
図１２に示すように、ある程度以上の仰角θmaxで計測した距離計側点は、走行境界を構成する障害物よりも上部を見ている可能性がある。このような、ある程度以上の仰角で計測した距離計側点を考慮に入れないことで、計算時間を短縮することができる。
ここで、上記所定の仰角θmaxは、例えば、対象とする地図作成位置の障害物の高さの標準と、通常の計測距離の平均とから決定する。
また、上記所定の仰角を、次の観点で設定しても良い。
走行境界か否かは、対象とする移動装置１が登坂可能か否かが一つに指標となる。従って、対象とする移動装置１の登坂可能な床面の最大傾斜角αｓ以上の値を上記所定の仰角θmaxとする。
【００４０】
（２）上記実施形態では、計測点Ａｎ（ｎ＝１，２，・・・）を通過する複数の直線Ｂｎ（ｎ＝１，２，・・・）が形成する交角αｎ（ｎ＝１，２，・・・）によって走行境界を推定する場合を例示している。
上記複数の直線Ｂｎ（ｎ＝１，２，・・・）の関係性による走行境界の推定の方法は、これに限定しない。例えば、隣り合う計測点Ａｎ（ｎ＝１，２，・・・）同士を直線Ｂｎ（ｎ＝１，２，・・・）で結んでいくことで、走行の路面とそれに連続する障害物の輪郭を推定し、その輪郭から走行境界を推定しても良い。
【００４１】
（３）また、複数の直線Ｂｎ（ｎ＝１，２，・・・）が形成する交角αｎ（ｎ＝１，２，・・・）のうち一番小さな交角αminを求める際に、次のような手順で判定しても良い。
ピッチ角θが最も小さな計測点Ａ1を通過する直線Ｂ1を基準にして、その直線Ｂ1と他の直線Ｂｎ（ｎ＝１，２，・・・）との交角αｎ（ｎ＝１，２，・・・）を判定していって、所定の交角α0以下の交角αｎがあった時点で、その交角αｎの交点Ｐｎを走行境界とする。上記他の直線Ｂｎ（ｎ＝１，２，・・・）は、ピッチ角θが小さな計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）ほど交角の比較判定順序の優先順位を高くして行う。また、上記所定交角αｎ（ｎ＝１，２，・・・）以下とは、移動装置１が登坂可能な最大傾斜角αｓ未満とする。
【００４２】
また、上記処理で所定の交角α0以下の交角が存在しない場合には、次にピッチ角θが小さな計測点Ａｎ（ｎ＝１，２，・・・）を通過する直線Ｂｎ（ｎ＝１，２，・・・）を基準して、同じことを繰り返す。
以上の処理によって、移動装置１に近い走行境界を、最初に検出することが可能となる。
【図面の簡単な説明】
【００４３】
【図１】本発明に基づく実施形態に係る移動装置を示す図である。
【図２】本発明に基づく実施形態に係る移動装置の倒立振子モデルを説明する図である。
【図３】本発明に基づく実施形態に係る地図生成装置の構成を説明する図である。
【図４】本発明に基づく実施形態に係る走行境界算出装置を説明する図である。
【図５】本発明に基づく実施形態に係る走行境界算出装置の処理を説明するための図である。
【図６】本発明に基づく実施形態に係る移動装置の姿勢変化によるピッチ角を説明するための図である。
【図７】走行境界推定に必要な計測点数を説明する図である。
【図８】必要な距離計測時のピッチ角を説明するための図である。
【図９】走行境界の推定の方法を説明する図である。
【図１０】走行境界の推定の方法を説明する図である。
【図１１】移動装置の登坂能力に応じた走行境界と推定しない場合を説明する図である。
【図１２】走行境界推定時に使用するデータの選択について説明するための図である。
【符号の説明】
【００４４】
１    移動装置
２    移動装置本体
３    車輪
４    駆動部
５    駆動制御部
６    地図生成装置
６Ａ  距離計測装置
６Ｂ  姿勢計測装置（姿勢検出手段）
６Ｃ  走行境界演算手段
６Ｃａ  複数点取得手段
６Ｃｂ  走行境界推定手段
６Ｄ  記録装置
６Ｅ  姿勢制御手段
Ｋ    計測方向
θ    ピッチ角
Ａｎ  各計測点
Ｂｎ  直線
αｎ  交角
αｍｉｎ  最小の交角
Ｐｎ  走路境界と推定する交点
【図１】
2010020366.tif 000003
【図２】
2010020366.tif 000004
【図３】
2010020366.tif 000005
【図４】
2010020366.tif 000006
【図５】
2010020366.tif 000007
【図６】
2010020366.tif 000008
【図７】
2010020366.tif 000009
【図８】
2010020366.tif 000010
【図９】
2010020366.tif 000011
【図１０】
2010020366.tif 000012
【図１１】
2010020366.tif 000013
【図１２】
2010020366.tif 000014