(57)【要約】      （修正有）【課題】自律移動装置において、壁などの平面状障害物の位置を単純な手順により容易に認識可能とし、正確に自己位置を特定して、効率的で安全な自律走行を可能とする。【解決手段】水平面内をスキャンし、反射波を受信して複数のスキャンポイントの座標を取得し、時系列的に前後する２つのスキャンポイントについて、要素ベクトルを形成し、複数の要素ベクトルの中から時系列的に前後し、かつ互いに連続する複数の要素ベクトルで、その長さが第１所定長以下であり、角度が第１所定角度以下であり、角度の積算値が第２所定角度以下であるものを選択し、ベクトル合成して１つのスキャンセグメントベクトルとし、スキャンセグメントベクトルの始点と終点により定義される線分が第２所定長以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在していると認識する。【選択図】図１
2008268224.tif 000002
【特許請求の範囲】
【請求項１】
電磁波又は音波を用いて所定の空間を一定角度又は一定間隔でスキャンし、その空間内に存在する物体からの反射波を受信して、電磁波又は音波を反射した複数のスキャンポイントの座標を得るスキャンポイント取得手段と、
前記複数のスキャンポイントのうち、前記スキャンポイント取得手段により得られた順番が時系列的に前後する２つのスキャンポイントについて、前のスキャンポイントを始点とし後のスキャンポイントを終点とする要素ベクトルを形成する要素ベクトル形成手段と、
複数の要素ベクトルの中から、要素ベクトルの長さが第１所定長以下の第１要素ベクトルを選択すると共に、前記要素ベクトル形成手段により得られた順番が時系列的に前後し、かつ前記第１要素ベクトルに連続する要素ベクトルであって、要素ベクトルの長さが第１所定長以下であり、前記第１要素ベクトルに対してなす振れ角度が第１所定角度以下であるものを第２要素ベクトルとして選択する要素ベクトル選択手段と、
選択された前記第１要素ベクトルを保持してスキャンセグメントベクトルを初期化すると共に、スキャンセグメントベクトルと前記第２要素ベクトルを合成したものでスキャンセグメントベクトルを更新して振れ角度の積算値が第２所定角度以下でなくなるまで、前記第２要素ベクトルを第１要素ベクトルに置き換えてスキャンセグメントベクトルを形成するスキャンセグメントベクトル形成手段と、
前記形成されたスキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在していると認識する障害物認識手段を備えていることを特徴とする自律移動装置。
【請求項２】
要素ベクトル形成手段は、任意の原点から所定距離以内にあるスキャンポイントのみを用いて要素ベクトルを形成することを特徴とする請求項１に記載の自律移動装置。
【請求項３】
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして要素ベクトルを形成することを特徴とする請求項１又は２に記載の自律移動装置。
【請求項４】
要素ベクトル形成手段は、前記任意のスキャンポイントに対して、所定回数だけ要素ベクトルを形成しても、前記第１所定長以下の要素ベクトルが得られないときは、前記任意のスキャンポイントに時系列的に連続するスキャンポイントを新たな第１スキャンポイントとして要素ベクトルを形成することを特徴とする請求項３に記載の自律移動装置。
【請求項５】
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとし、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとして要素ベクトルを形成し、
第２スキャンポイントを始点とし第３スキャンポイントを終点とする要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、要素ベクトルを形成することを特徴とする請求項１又は２に記載の自律移動装置。
【請求項６】
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された第１要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第１要素ベクトルを形成し、
さらに、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとし、第２スキャンポイントを始点とし第３スキャンポイントを終点とする第２要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする第１要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、第２要素ベクトルを形成することを特徴とする請求項１又は２に記載の自律移動装置。
【請求項７】
スキャンセグメントベクトル形成手段により１つのスキャンセグメントベクトルが形成されると、複数のスキャンポイントのうち、スキャンセグメントベクトルの形成に用いられなかったスキャンポイントを用いて、新たなスキャンセグメントベクトルの形成を試みることを特徴とする請求項１に記載の自律移動装置。
【請求項８】
２以上のスキャンセグメントベクトルが形成された場合に、第２スキャンセグメントベクトルが他の第１スキャンセグメントベクトルに対してなす角度が前記第１所定角度以下であり、かつ前記第２スキャンセグメントベクトルの始点が第１スキャンセグメントベクトルの終点から所定距離以内であるとき、スキャンセグメントベクトル形成手段は、第１スキャンセグメントベクトルの終点を始点とし、第２スキャンセグメントベクトルの始点を終点とするベクトルを、第１スキャンセグメントベクトルと第２スキャンセグメントベクトルの間に合成して新たなスキャンセグメントベクトルを形成することを特徴とする請求項７に記載の自律移動装置。
【請求項９】
スキャンセグメントベクトル形成手段は、スキャンセグメントベクトルの形成に寄与したスキャンポイントの情報を保存し、
障害物認識手段は、前記スキャンセグメントベクトルの始点と終点により定義される線分の長さが前記第２所定長以上であるときに、保存されたスキャンポイントの座標を用いて最小二乗法により、スキャンポイントに最適にフィットする線分を演算し、この線分を平面状障害物として認識することを特徴とする請求項１に記載の自律移動装置。
【請求項１０】
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして、第１スキャンポイントを始点とし、第２スキャンポイントを終点として第１群の要素ベクトルを形成し、
要素ベクトル形成手段はさらに、第１スキャンポイントを始点とし、第２スキャンポイントを終点として形成される要素ベクトルが第１所定長以下の時は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして要素ベクトルを形成し、また、形成される要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第２群の要素ベクトルを形成し、
要素ベクトル選択手段は、前記第１群の要素ベクトルから連続する複数の要素ベクトルを選択すると共に、前記第２群の要素ベクトルから連続する複数の要素ベクトルを選択し、
スキャンセグメントベクトル形成手段は、前記第１群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第１スキャンセグメントベクトルを形成すると共に、前記第２群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第２スキャンセグメントベクトルを形成し、第２スキャンセグメントベクトルを形成する要素ベクトルから第１スキャンセグメントベクトルを形成する要素ベクトルを引き去る演算を行い、残った要素ベクトルを用いて第３スキャンセグメントベクトルを形成し、
障害物認識手段は、形成された第３スキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、その第３スキャンセグメントベクトルに沿って空隙を有する平面状障害物が存在していると認識することを特徴とする請求項１に記載の自律移動装置。
【請求項１１】
自律移動装置の稼働領域の地図上に存在する平面状障害物の線分の集合であるマップセグメントを記憶した記憶手段と、
スキャンセグメントとマップセグメントを照合するセグメント照合手段として機能し、地図上における平面状障害物の位置を特定すると共に、地図上における自律移動装置の自己位置を特定する自己位置特定手段をさらに備えたことを特徴とする請求項１乃至１０のいずれかに記載の自律移動装置。
【請求項１２】
前記自己位置特定手段は、地図上の平面状障害物の位置と、自律移動装置上の原点からの平面状障害物までの距離及び方向に基づいて、地図上の自己位置を特定することを特徴とする請求項１１に記載の自律移動装置。
【請求項１３】
電磁波又は音波を用いて所定の空間を一定角度又は一定間隔でスキャンし、その空間内に存在する物体からの反射波を受信して、電磁波又は音波を反射した複数のスキャンポイントの座標を得るスキャンポイント取得ステップと、
前記複数のスキャンポイントのうち、前記スキャンポイント取得ステップにより得られた順番が時系列的に前後する２つのスキャンポイントについて、前のスキャンポイントを始点とし後のスキャンポイントを終点とする要素ベクトルを形成する要素ベクトル形成ステップと、
複数の要素ベクトルの中から、要素ベクトルの長さが第１所定長以下の第１要素ベクトルを選択すると共に、前記要素ベクトル形成手段により得られた順番が時系列的に前後し、かつ前記第１要素ベクトルに連続する要素ベクトルであって、要素ベクトルの長さが第１所定長以下であり、前記第１要素ベクトルに対してなす振れ角度が第１所定角度以下であるものを第２要素ベクトルとして選択する要素ベクトル選択ステップと、
選択された前記第１要素ベクトルを保持してスキャンセグメントベクトルを初期化すると共に、スキャンセグメントベクトルと前記第２要素ベクトルを合成したものでスキャンセグメントベクトルを更新して振れ角度の積算値が第２所定角度以下でなくなるまで、前記第２要素ベクトルを第１要素ベクトルに置き換えてスキャンセグメントベクトルを形成するスキャンセグメントベクトル形成ステップと、
前記形成されたスキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在していると認識する障害物認識ステップを備えていることを特徴とする平面状障害物認識方法。
【請求項１４】
要素ベクトル形成ステップは、任意の原点から所定距離以内にあるスキャンポイントのみを用いて要素ベクトルを形成することを特徴とする請求項１３に記載の平面状障害物認識方法。
【請求項１５】
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして要素ベクトルを形成することを特徴とする請求項１３又は１４に記載の平面状障害物認識方法。
【請求項１６】
要素ベクトル形成ステップは、前記任意のスキャンポイントに対して、所定回数だけ要素ベクトルを形成しても、前記第１所定長以下の要素ベクトルが得られないときは、前記任意のスキャンポイントに時系列的に連続するスキャンポイントを新たな第１スキャンポイントとして要素ベクトルを形成することを特徴とする請求項１５に記載の平面状障害物認識方法。
【請求項１７】
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとし、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとして要素ベクトルを形成し、
第２スキャンポイントを始点とし第３スキャンポイントを終点とする要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、要素ベクトルを形成することを特徴とする請求項１３又は１４に記載の平面状障害物認識方法。
【請求項１８】
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された第１要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第１要素ベクトルを形成し、
さらに、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとし、第２スキャンポイントを始点とし第３スキャンポイントを終点とする第２要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする第１要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、第２要素ベクトルを形成することを特徴とする請求項１３又は１４に記載の平面状障害物認識方法。
【請求項１９】
スキャンセグメントベクトル形成ステップにより１つのスキャンセグメントベクトルが形成されると、複数のスキャンポイントのうち、スキャンセグメントベクトルの形成に用いられなかったスキャンポイントを用いて、新たなスキャンセグメントベクトルの形成を試みることを特徴とする請求項１３に記載の平面状障害物認識方法。
【請求項２０】
２以上のスキャンセグメントベクトルが形成された場合に、第２スキャンセグメントベクトルが他の第１スキャンセグメントベクトルに対してなす角度が前記第１所定角度以下であり、かつ前記第２スキャンセグメントベクトルの始点が第１スキャンセグメントベクトルの終点から所定距離以内であるとき、スキャンセグメントベクトル形成ステップは、第１スキャンセグメントベクトルの終点を始点とし、第２スキャンセグメントベクトルの始点を終点とするベクトルを第１スキャンセグメントベクトルと第２スキャンセグメントベクトルの間に合成して新たなスキャンセグメントベクトルを形成することを特徴とする請求項１９に記載の平面状障害物認識方法。
【請求項２１】
スキャンセグメントベクトル形成ステップは、スキャンセグメントベクトルの形成に寄与したスキャンポイントの情報を保存し、
障害物認識ステップは、前記スキャンセグメントベクトルの始点と終点により定義される線分の長さが前記第２所定長以上であるときに、保存されたスキャンポイントの座標を用いて最小二乗法により、スキャンポイントに最適にフィットする線分を演算し、この線分を平面状障害物として認識することを特徴とする請求項１３に記載の平面状障害物認識方法。
【請求項２２】
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして、第１スキャンポイントを始点とし、第２スキャンポイントを終点として第１群の要素ベクトルを形成し、
要素ベクトル形成ステップはさらに、第１スキャンポイントを始点とし、第２スキャンポイントを終点として形成される要素ベクトルが第１所定長以下の時は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして要素ベクトルを形成し、また、形成される要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第２群の要素ベクトルを形成し、
要素ベクトル選択ステップは、前記第１群の要素ベクトルから連続する複数の要素ベクトルを選択すると共に、前記第２群の要素ベクトルから連続する複数の要素ベクトルを選択し、
スキャンセグメントベクトル形成ステップは、前記第１群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第１スキャンセグメントベクトルを形成すると共に、前記第２群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第２スキャンセグメントベクトルを形成し、第２スキャンセグメントベクトルを形成する要素ベクトルから第１スキャンセグメントベクトルを形成する要素ベクトルを引き去る演算を行い、残った要素ベクトルを用いて第３スキャンセグメントベクトルを形成し、
障害物認識ステップは、形成された第３スキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、その第３スキャンセグメントベクトルに沿って空隙を有する平面状障害物が存在していると認識することを特徴とする請求項１３に記載の平面状障害物認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律移動装置に関し、特に自律移動装置に搭載され、自律移動に適する平面状障害物認識方法に関する。
【背景技術】
【０００２】
従来、レーザレーダを用いて一定角度又は一定間隔で水平面内をスキャンし、物体からの反射波を受信して二次元平面内に分布する一群のスキャンポイントを取得し、これらのスキャンポイントの中から特定の条件でスキャンポイントを選択すると共に、選択されたスキャンポイントを連結して線分の集合を形成し、この線分の集合により空間に分布する壁（平面状障害物）の表面位置を認識する方法が知られている（例えば、非特許文献１参照）。
【非特許文献１】Ｌｉ  Ｚｈａｎｇ＆Ｂｉｊｏｙ  Ｋ．Ｇｈｏｓｈ，  ”Ｌｉｎｅ  Ｓｅｇｍｅｎｔ  Ｂａｓｅｄ  Ｍａｐ  Ｂｕｉｌｄｉｎｇ  ａｎｄ  Ｌｏｃａｌｉｚａｔｉｏｎ  Ｕｓｉｎｇ  ２Ｄ  Ｌａｓｅｒ  Ｒａｎｇｅｆｉｎｄｅｒ”，  ＩＥＥＥ  Ｉｎｔ．  Ｃｏｎｆ．Ｏｎ  Ｒｏｂｏｔｉｃｓ  ＆  Ａｕｔｏｍａｔｉｏｎ，ｐｐ．２５３８−２５４３，２０００
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来の平面状障害物認識方法では、多数のスキャンポイントの中から特定のスキャンポイントを選択して線分の集合を形成する際に、例えば、あるスキャンポイントからある線分までの距離を求める計算を複数回行う手順を含んでいるため、演算処理が煩雑であり、演算処理に時間を要する。そのため、自律移動装置の障害物認識方法として搭載した場合、安全で、かつ確実に自律移動させるには、自律移動装置の移動速度を遅くしなければならないなどの問題が生じる。そのため、自律移動装置に搭載するには、より単純な手順による平面状障害物認識方法が必要である。また、従来の平面状障害物認識方法では、網や格子でできたフェンスのように空隙のある平面状障害物の場合、平面状障害物の裏側に存在する物体からの反射波を受信してしまうため、空隙を有する平面状障害物を正確に認識することが困難である。そのため、自律移動装置に適した平面状障害物認識方法として、空隙を有する平面状障害物の認識が可能な方法は実用化されていない。
【０００４】
本発明は、上記課題を解決するためになされたものであり、障害物としての平面状障害物、特に空隙を有する平面状障害物の位置を単純な手順により正確に認識することができ、効率的で安全に自律走行できる自律移動装置及びそれに適する平面状障害物認識方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を達成するために、請求項１に発明に係る自律移動装置は、
電磁波又は音波を用いて所定の空間を一定角度又は一定間隔でスキャンし、その空間内に存在する物体からの反射波を受信して、電磁波又は音波を反射した複数のスキャンポイントの座標を得るスキャンポイント取得手段と、
前記複数のスキャンポイントのうち、前記スキャンポイント取得手段により得られた順番が時系列的に前後する２つのスキャンポイントについて、前のスキャンポイントを始点とし後のスキャンポイントを終点とする要素ベクトルを形成する要素ベクトル形成手段と、
複数の要素ベクトルの中から、要素ベクトルの長さが第１所定長以下の第１要素ベクトルを選択すると共に、前記要素ベクトル形成手段により得られた順番が時系列的に前後し、かつ前記第１要素ベクトルに連続する要素ベクトルであって、要素ベクトルの長さが第１所定長以下であり、前記第１要素ベクトルに対してなす振れ角度が第１所定角度以下であるものを第２要素ベクトルとして選択する要素ベクトル選択手段と、
選択された前記第１要素ベクトルを保持してスキャンセグメントベクトルを初期化すると共に、スキャンセグメントベクトルと前記第２要素ベクトルを合成したものでスキャンセグメントベクトルを更新して振れ角度の積算値が第２所定角度以下でなくなるまで、前記第２要素ベクトルを第１要素ベクトルに置き換えてスキャンセグメントベクトルを形成するスキャンセグメントベクトル形成手段と、
前記形成されたスキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在していると認識する障害物認識手段を備えている。
【０００６】
請求項２の発明は、請求項１に記載の自律移動装置において、要素ベクトル形成手段は、任意の原点から所定距離以内にあるスキャンポイントのみを用いて要素ベクトルを形成することを特徴とする。
【０００７】
請求項３の発明は、請求項１又は２に記載の自律移動装置において、要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして要素ベクトルを形成することを特徴とする。
【０００８】
請求項４の発明は、請求項３に記載の自律移動装置において、要素ベクトル形成手段は、前記任意のスキャンポイントに対して、所定回数だけ要素ベクトルを形成しても、前記第１所定長以下の要素ベクトルが得られないときは、前記任意のスキャンポイントに時系列的に連続するスキャンポイントを新たな第１スキャンポイントとして要素ベクトルを形成することを特徴とする。
【０００９】
請求項５の発明は、請求項１又は２に記載の自律移動装置において、
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとし、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとして要素ベクトルを形成し、
第２スキャンポイントを始点とし第３スキャンポイントを終点とする要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、要素ベクトルを形成することを特徴とする。
【００１０】
請求項６の発明は、請求項１又は２に記載の自律移動装置において、
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された第１要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第１要素ベクトルを形成し、
さらに、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとし、第２スキャンポイントを始点とし第３スキャンポイントを終点とする第２要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする第１要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、第２要素ベクトルを形成することを特徴とする。
【００１１】
請求項７の発明は、請求項１に記載の自律移動装置において、スキャンセグメントベクトル形成手段により１つのスキャンセグメントベクトルが形成されると、複数のスキャンポイントのうち、スキャンセグメントベクトルの形成に用いられなかったスキャンポイントを用いて、新たなスキャンセグメントベクトルの形成を試みることを特徴とする。
【００１２】
請求項８の発明は、請求項７に記載の自律移動装置において、２以上のスキャンセグメントベクトルが形成された場合に、第２スキャンセグメントベクトルが他の第１スキャンセグメントベクトルに対してなす角度が前記第１所定角度以下であり、かつ前記第２スキャンセグメントベクトルの始点が第１スキャンセグメントベクトルの終点から所定距離以内であるとき、スキャンセグメントベクトル形成手段は、第１スキャンセグメントベクトルの終点を始点とし、第２スキャンセグメントベクトルの始点を終点とするベクトルを、第１スキャンセグメントベクトルと第２スキャンセグメントベクトルの間に合成して新たなスキャンセグメントベクトルを形成することを特徴とする。
【００１３】
請求項９の発明は、請求項１に記載の自律移動装置において、
スキャンセグメントベクトル形成手段は、スキャンセグメントベクトルの形成に寄与したスキャンポイントの情報を保存し、
障害物認識手段は、前記スキャンセグメントベクトルの始点と終点により定義される線分の長さが前記第２所定長以上であるときに、保存されたスキャンポイントの座標を用いて最小二乗法により、スキャンポイントに最適にフィットする線分を演算し、この線分を平面状障害物として認識することを特徴とする。
【００１４】
請求項１０の発明は、請求項１に記載の自律移動装置において、
要素ベクトル形成手段は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして、第１スキャンポイントを始点とし、第２スキャンポイントを終点として第１群の要素ベクトルを形成し、
要素ベクトル形成手段はさらに、第１スキャンポイントを始点とし、第２スキャンポイントを終点として形成される要素ベクトルが第１所定長以下の時は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして要素ベクトルを形成し、また、形成される要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第２群の要素ベクトルを形成し、
要素ベクトル選択手段は、前記第１群の要素ベクトルから連続する複数の要素ベクトルを選択すると共に、前記第２群の要素ベクトルから連続する複数の要素ベクトルを選択し、
スキャンセグメントベクトル形成手段は、前記第１群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第１スキャンセグメントベクトルを形成すると共に、前記第２群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第２スキャンセグメントベクトルを形成し、第２スキャンセグメントベクトルを形成する要素ベクトルから第１スキャンセグメントベクトルを形成する要素ベクトルを引き去る演算を行い、残った要素ベクトルを用いて第３スキャンセグメントベクトルを形成し、
障害物認識手段は、形成された第３スキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、その第３スキャンセグメントベクトルに沿って空隙を有する平面状障害物が存在していると認識することを特徴とする。
【００１５】
請求項１１の発明は、請求項１乃至１０のいずれかに記載の自律移動装置において、
自律移動装置の稼働領域の地図上に存在する平面状障害物の線分の集合であるマップセグメントを記憶した記憶手段と、
スキャンセグメントとマップセグメントを照合するセグメント照合手段として機能し、地図上における平面状障害物の位置を特定すると共に、地図上における自律移動装置の自己位置を特定する自己位置特定手段をさらに備えたことを特徴とする。
【００１６】
請求項１２の発明は、請求項１１に記載の自律移動装置において、前記自己位置特定手段は、地図上の平面状障害物の位置と、自律移動装置上の原点からの平面状障害物までの距離及び方向に基づいて、地図上の自己位置を特定することを特徴とする。
【００１７】
請求項１３の発明に係る平面状障害物認識方法は、
電磁波又は音波を用いて所定の空間を一定角度又は一定間隔でスキャンし、その空間内に存在する物体からの反射波を受信して、電磁波又は音波を反射した複数のスキャンポイントの座標を得るスキャンポイント取得ステップと、
前記複数のスキャンポイントのうち、前記スキャンポイント取得ステップにより得られた順番が時系列的に前後する２つのスキャンポイントについて、前のスキャンポイントを始点とし後のスキャンポイントを終点とする要素ベクトルを形成する要素ベクトル形成ステップと、
複数の要素ベクトルの中から、要素ベクトルの長さが第１所定長以下の第１要素ベクトルを選択すると共に、前記要素ベクトル形成手段により得られた順番が時系列的に前後し、かつ前記第１要素ベクトルに連続する要素ベクトルであって、要素ベクトルの長さが第１所定長以下であり、前記第１要素ベクトルに対してなす振れ角度が第１所定角度以下であるものを第２要素ベクトルとして選択する要素ベクトル選択ステップと、
選択された前記第１要素ベクトルを保持してスキャンセグメントベクトルを初期化すると共に、スキャンセグメントベクトルと前記第２要素ベクトルを合成したものでスキャンセグメントベクトルを更新して振れ角度の積算値が第２所定角度以下でなくなるまで、前記第２要素ベクトルを第１要素ベクトルに置き換えてスキャンセグメントベクトルを形成するスキャンセグメントベクトル形成ステップと、
前記形成されたスキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在していると認識する障害物認識ステップを備えていることを特徴とする。
【００１８】
請求項１４の発明は、請求項１３に記載の平面状障害物認識方法において、要素ベクトル形成ステップは、任意の原点から所定距離以内にあるスキャンポイントのみを用いて要素ベクトルを形成することを特徴とする。
【００１９】
請求項１５の発明は、請求項１３又は１４に記載の平面状障害物認識方法において、要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして要素ベクトルを形成することを特徴とする。
【００２０】
請求項１６の発明は、請求項１５に記載の平面状障害物認識方法において、要素ベクトル形成ステップは、前記任意のスキャンポイントに対して、所定回数だけ要素ベクトルを形成しても、前記第１所定長以下の要素ベクトルが得られないときは、前記任意のスキャンポイントに時系列的に連続するスキャンポイントを新たな第１スキャンポイントとして要素ベクトルを形成することを特徴とする。
【００２１】
請求項１７の発明は、請求項１３又は１４に記載の平面状障害物認識方法において、
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとし、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとして要素ベクトルを形成し、
第２スキャンポイントを始点とし第３スキャンポイントを終点とする要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、要素ベクトルを形成することを特徴とする。
【００２２】
請求項１８の発明は、請求項１３又は１４に記載の平面状障害物認識方法において、
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして形成された第１要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第１要素ベクトルを形成し、
さらに、第２スキャンポイントに時系列的に連続するスキャンポイントを第３スキャンポイントとし、第２スキャンポイントを始点とし第３スキャンポイントを終点とする第２要素ベクトルが、第１スキャンポイントを始点とし第２スキャンポイントを終点とする第１要素ベクトルに対してなす振れ角度が第１所定角度よりも大きい場合に、第３スキャンポイントを排除して、第２スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第３スキャンポイントとして、第２要素ベクトルを形成することを特徴とする。
【００２３】
請求項１９の発明は、請求項１３に記載の平面状障害物認識方法において、
スキャンセグメントベクトル形成ステップにより１つのスキャンセグメントベクトルが形成されると、複数のスキャンポイントのうち、スキャンセグメントベクトルの形成に用いられなかったスキャンポイントを用いて、新たなスキャンセグメントベクトルの形成を試みることを特徴とする。
【００２４】
請求項２０の発明は、請求項１９に記載の平面状障害物認識方法において、
２以上のスキャンセグメントベクトルが形成された場合に、第２スキャンセグメントベクトルが他の第１スキャンセグメントベクトルに対してなす角度が前記第１所定角度以下であり、かつ前記第２スキャンセグメントベクトルの始点が第１スキャンセグメントベクトルの終点から所定距離以内であるとき、スキャンセグメントベクトル形成ステップは、第１スキャンセグメントベクトルの終点を始点とし、第２スキャンセグメントベクトルの始点を終点とするベクトルを第１スキャンセグメントベクトルと第２スキャンセグメントベクトルの間に合成して新たなスキャンセグメントベクトルを形成することを特徴とする。
【００２５】
請求項２１の発明は、請求項１３に記載の平面状障害物認識方法において、
スキャンセグメントベクトル形成ステップは、スキャンセグメントベクトルの形成に寄与したスキャンポイントの情報を保存し、
障害物認識ステップは、前記スキャンセグメントベクトルの始点と終点により定義される線分の長さが前記第２所定長以上であるときに、保存されたスキャンポイントの座標を用いて最小二乗法により、スキャンポイントに最適にフィットする線分を演算し、この線分を平面状障害物として認識することを特徴とする。
【００２６】
請求項２２の発明は、請求項１３に記載の平面状障害物認識方法において、
要素ベクトル形成ステップは、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして、第１スキャンポイントを始点とし、第２スキャンポイントを終点として第１群の要素ベクトルを形成し、
要素ベクトル形成ステップはさらに、第１スキャンポイントを始点とし、第２スキャンポイントを終点として形成される要素ベクトルが第１所定長以下の時は、任意のスキャンポイントを第１スキャンポイントとし、第１スキャンポイントに時系列的に連続するスキャンポイントを第２スキャンポイントとして要素ベクトルを形成し、また、形成される要素ベクトルが前記第１所定長よりも長いときは、第１スキャンポイントに時系列的に連続しない他のスキャンポイントを新たな第２スキャンポイントとして第２群の要素ベクトルを形成し、
要素ベクトル選択ステップは、前記第１群の要素ベクトルから連続する複数の要素ベクトルを選択すると共に、前記第２群の要素ベクトルから連続する複数の要素ベクトルを選択し、
スキャンセグメントベクトル形成ステップは、前記第１群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第１スキャンセグメントベクトルを形成すると共に、前記第２群の要素ベクトルから選択された複数の要素ベクトルをベクトル合成して第２スキャンセグメントベクトルを形成し、第２スキャンセグメントベクトルを形成する要素ベクトルから第１スキャンセグメントベクトルを形成する要素ベクトルを引き去る演算を行い、残った要素ベクトルを用いて第３スキャンセグメントベクトルを形成し、
障害物認識ステップは、形成された第３スキャンセグメントベクトルの始点と終点により定義される線分を第２所定長と比較し、線分が第２所定長以上であるときに、その第３スキャンセグメントベクトルに沿って空隙を有する平面状障害物が存在していると認識することを特徴とする。
【発明の効果】
【００２７】
請求項１又は１３の発明によれば、連続する複数の要素ベクトルの長さがそれぞれ第１所定長以下であり、１つの要素ベクトルに対してそれに連続する他の要素ベクトルがなす振れ角度が第１所定角度以下であり、振れ角度の積算値が第２所定角度以下である場合に、これらの要素ベクトルの形成に用いられたスキャンポイントが同一の障害物上の点であると看做すことができる。そして、これらの要素ベクトルをベクトル合成して形成されるスキャンセグメントベクトルの長さが第２所定長以上であるとき、さらにその障害物が平面状障害物あると看做すことができる。このスキャンセグメントベクトルは、平面状障害物の位置、方向、大きさなどを表しているので、自律移動装置は、平面状障害物までの方向と距離に基づいて地図上における自己位置を正確に特定することができ、それにより、自律移動装置が自律移動を行う際、スキャンセグメントベクトルで特定された平面状障害物を避けて走行することにより、安全な自律移動を行うことができる。また、平面状障害物の認識は、スキャンポイントの取得、要素ベクトルの形成、要素ベクトルの選択、スキャンセグメントベクトルの形成及びスキャンセグメントベクトルの比較という、比較的単純な処理によって行われるので、従来の方法に比べて短時間で平面状障害物の認識が可能になる。その結果、自律移動装置の走行速度を速くすることができるなど、効率的な自律移動が可能になる。
【００２８】
請求項２又は１４の発明によれば、比較的遠方にある障害物のスキャンポイントを障害物認識処理の対象から除外して計算量を削減することができ、例えば自律移動のための判断をより早く行うことができる。
【００２９】
請求項３又は１５の発明によれば、時系列的に連続するスキャンポイントが距離的に離れすぎていて要素ベクトルを形成するのに適当でないときに、そのスキャンポイントをスキップして他のスキャンポイントを用いて要素ベクトルを形成することができる。そのため、例えば平面状障害物が空隙を有する場合に、その空隙を透過して、障害物の後ろの物体からの反射波がスキャンポイントとして得られたとしても、そのスキャンポイントがスキップされるので、正確に空隙を有する平面状障害物を正確に認識することができる。
【００３０】
請求項４又は１６の発明によれば、要素ベクトルを形成しようとしている最初のスキャンポイントが適当でない場合に、そのスキャンポイントをスキップして、次のスキャンポイントにつて要素ベクトルを形成することができる。その結果、要素ベクトルが形成されずに、平面状障害物が認識できないといったトラブルを防止することができる。
【００３１】
請求項５又は１７の発明によれば、時系列的に連続する３つのスキャンポイントによって形成される２つの要素ベクトルのなす角度が大きすぎて、スキャンセグメントベクトルを形成する要素ベクトルとして適当でないときに、３つ目のスキャンポイントをスキップして他のスキャンポイントを用いて要素ベクトルを形成することができる。そのため、例えば平面状障害物が空隙を有する場合に、その空隙を透過して、障害物の後ろの物体からの反射波がスキャンポイントとして得られたとしても、そのスキャンポイントがスキップされるので、正確に空隙を有する平面状障害物を正確に認識することができる。
【００３２】
請求項６又は１８の発明によれば、時系列的に連続する２つのスキャンポイントが距離的に離れすぎていて要素ベクトルを形成するのに適当でないとき、又は、時系列的に連続する３つのスキャンポイントによって形成される２つの要素ベクトルのなす角度が大きすぎて、スキャンセグメントベクトルを形成する要素ベクトルとして適当でないときに、３つ目のスキャンポイントをスキップして他のスキャンポイントを用いて要素ベクトルを形成することができる。そのため、例えば平面状障害物が空隙を有する場合に、その空隙を透過して、障害物の後ろの物体からの反射波がスキャンポイントとして得られたとしても、そのスキャンポイントがスキップされるので、正確に空隙を有する平面状障害物を正確に認識することができる。
【００３３】
請求項７又は１９の発明によれば、例えば空隙を有する平面状障害物が空隙を有しない平面状障害物に平行して存在している場合など、障害物の二重構造であっても、１つの平面状障害物を表すスキャンセグメントベクトルの形成に用いられなかったスキャンポイントを用いて新たな平面状障害物の認識処理が行われるので、１つの平面状障害物の後ろに存在する他の平面状障害物を正確に認識することが可能になる。そして、複数の平面状障害物の位置のいずれを認識しているかを正確に把握することができるので、自律移動装置の自律移動の際の自己位置を正確に特定することができる。
【００３４】
請求項８又は２０の発明によれば、本来１つの平面状障害物が、何らかの理由で複数のスキャンセグメントベクトルで表されている場合に、一定の条件で、途切れている部分に新たなベクトルを合成することによって、１つのスキャンベクトルに合成することができる。その結果、平面状障害物が、例えば複数の支柱とその間に保持された金網などで構成されるフェンスである場合であっても、その平面状障害物を正確に認識することができる。
【００３５】
請求項９又は２１の発明によれば、スキャンセグメントベクトルからスキャンセグメントを抽出する際、スキャンセグメントベクトルの形成に寄与した複数のスキャンセグメントの位置座標を用いて、最小二乗法により、これらのスキャンポイントに最適にフィットする線分を算出するので、実際の平面状障害物の位置及び方向により近い情報がえられる。
【００３６】
請求項１０又は２２の発明によれば、まず、スキャンポイントのスキップを行わない方法により第１群の要素ベクトルを形成し、それを用いて第１群のスキャンセグメントベクトルが形成される。この場合、空隙を有する平面状障害物に関しては、スキャンセグメントベクトルは形成されない。次に、スキャンポイントのスキップを行う方法により第２群の要素ベクトルを形成し、それを用いて第１群のスキャンセグメントベクトルが形成される。この場合、空隙を有する平面状障害物に関しても、スキャンセグメントベクトルが形成される。従って、両者を比較し、所定の処理を行うことにより、空隙を有する平面状障害物のみを特定することができる。
【００３７】
請求項１１の発明によれば、自律移動装置が自律移動する際、スキャンセグメントとマップセグメントを照合することにより、地図上における平面状障害物の位置を特定すると共に、地図上における自律移動装置の自己位置を特定することができる。
【００３８】
請求項１２の発明によれば、予めわかっている地図上の平面状障害物の位置と、自律移動装置上の原点からの平面状障害物までの距離及び方向に基づいて、地図上の自己位置を正確に特定することができる。
【発明を実施するための最良の形態】
【００３９】
以下、本発明の一実施形態に係る自律移動装置及びそれに適する平面状障害物認識方法について、図面を参照して説明する。図１は、本発明の自律移動装置１のブロック構成を示す。自律移動装置１は、稼動領域の地図情報及び走行のための各種パラメータを記憶する記憶部１１と、障害物の位置や自己位置を特定するための環境情報を取得する環境情報取得部１２と、走行を行うための走行装置１３と、記憶部１１に記憶した地図情報と環境情報取得部１２によって取得された環境情報とを照合して自己の位置を特定する自己位置認識部１４と、走行領域内の目的地や走行のためのパラメータなどを入力するためのヒューマンインターフェース１５と、自己位置認識部１４による特定結果に基づいて、自己位置を特定しつつ障害物を回避しながら走行装置１３を制御する走行制御部１７を備えている。
【００４０】
走行装置１３は、電池１３ａの電力で駆動されるモータを備えている。このモータには、その回転数や回転速度を計測するエンコーダが設けられている。自律移動装置１の走行制御部１７は、このエンコーダの出力を用いて移動距離や移動方向を知ることができ、それらに基づいてデッドレコニング（ｄｅａｄ  ｒｅｃｋｏｎｉｎｇ推定航法）を行う。また、ヒューマンインターフェース１５は、人が直接操作できるタッチパネルやキーボード、又は、人が遠隔操作できる通信装置などにより構成されている。
【００４１】
また、地図情報として、稼働領域における壁、フェンス、柵などの平面状障害物を表現する線分の集合がマップセグメントとして予め設定され、記憶部１１に記憶されている。さらに、環境情報取得部１２は、自律移動装置１の本体の特定の位置を原点とし、その原点から臨む空間を一定角度又は一定間隔でスキャンして、原点からの方向毎にその方向に存在する壁などの平面状障害物を含む障害物上の点の位置座標を環境情報として取得し、スキャンの時系列に従って順序付けられた複数の位置座標の集合からなるスキャンポイントを取得する、例えばレーザレーダなどのスキャンポイント取得部１２ａを備えている。
【００４２】
スキャンポイント取得部１２ａは、例えば、自律移動装置１の本体の前方に配置されており、前方空間を所定に高さ及び所定角度でスキャンし、壁などの平面状障害物や他の環境物体からの反射波を受信して、レーザビームが反射された物体の位置座標をスキャンポイントとして取得する。また、スキャンポイント取得部１２ａとして、超音波発信素子とアレイ状に配列した超音波受信素子とを組み合わせた、電子スキャンの可能な超音波センサを用いることができる。さらに、環境情報取得部１２による障害物検知のために、通常の障害物検知用超音波センサを用いることができる。なお、スキャンポイント取得部１２ａによるスキャンは必ずしも水平である必要はなく、傾斜していてもよい。また、照射されるレーザビームなどは、一定の拡がりを有していてもよい。
【００４３】
また、自己位置認識部１４は、さらに、要素ベクトル形成部１４ａ、要素ベクトル選択部１４ｂ、スキャンセグメントベクトル形成部１４ｃ及び障害物認識部１４ｄを備えている。要素ベクトル形成部１４ａは、スキャンポイントのうち、取得された順番が時系列的に前後する２つのスキャンポイントについて、前のスキャンポイントを始点とし、後のスキャンポイントを終点とする要素ベクトルを形成する。要素ベクトル選択部１４ｂは、形成された要素ベクトルの中から、連続する複数の要素ベクトルであって、要素ベクトルの長さがそれぞれ第１所定長さ以下であり、１つの要素ベクトルに対してそれに連続する他の要素ベクトルがなす振れ角度が第１所定角度以下であり、振れ角度の積算値が第２所定角度以下であるものを選択する。スキャンセグメントベクトル形成部１４ｃは、選択された連続する複数の要素ベクトルをベクトル合成して１つのスキャンセグメントベクトルを形成する。障害物認識部１４ｄは、形成されたスキャンセグメントベクトルの始点と終点により定義された線分を第２所定長さと比較し、線分が第２所定長さ以上であるときに、そのスキャンセグメントベクトルに沿って平面状障害物が存在すると判断し、スキャンセグメントベクトルから抽出されたスキャンセグメントとマップセグメントとを照合して平面状障害物の位置を地図上で特定する。自己位置認識部１４は、自己位置に対する平面状障害物までの距離や方向に基づいて、自律移動装置１の自己位置を正確に特定する。
【００４４】
上述の記憶部１１、自己位置認識部１４、要素ベクトル形成部１４ａ、要素ベクトル選択部１４ｂ、スキャンセグメントベクトル形成部１４ｃ、障害物認識部１４ｄ、走行制御部１７は、ＣＰＵやメモリや外部記憶装置や表示装置や入力装置などを備えた一般的な構成のコンピュータにおいて所定のプログラムを実行することによってその機能が達成される。
【００４５】
次に、図２を参照して、上述の自律移動装置１が上記平面状障害物認識方法を用いて自己位置特定又は認識を行いながら自律走行する手順を説明する。走行制御部１７は、走行装置１３を駆動する駆動モータのエンコーダ情報に基づいて自律移動装置１のおおよその位置を知る。自律移動装置１は、走行開始とともに、この自己位置の情報に基づいてデッドレコニングを行う（＃１）。スキャンポイント取得部１２ａは、環境情報取得部１２の制御のもとで、走行方向の前方における一群のスキャンポイントを取得する（＃２）。次に、要素ベクトル形成部１４ａがスキャンポイントから要素ベクトルを形成し、要素ベクトル選択部１４ｂが上記要件を満たす複数の要素ベクトルを選択し、さらにスキャンセグメントベクトル形成部１４ｃはスキャンセグメントベクトルＳＳＶをベクトル合成する（＃３）。
【００４６】
続くステップにおいて、障害物認識部１４ｄは、上述のスキャンセグメントベクトルＳＳＶの始点と終点により定義された線分から第２所定長以上の線分を抽出して、抽出された線分を走行環境に存在する平面状障害物を表現する線分であるスキャンセグメントＳＳと判断する。さらに、障害物認識部１４ｄは、このスキャンセグメントＳＳと地図情報における平面状障害物の線分の集合からなるマップセグメントと照合して、平面状障害物の位置を地図上で特定する。自己位置認識部１４は、地図上での平面状障害物の位置、上記原点（自己位置）に対する平面状障害物までの距離や方向に基づいて、自律移動装置１の自己位置を特定する（＃４）。
【００４７】
自己位置認識部１４による自己位置特定の結果を受けて、走行制御部１７は、デッドレコニングによって走行している自律移動装置１の自己位置をより正確な位置に修正して、走行制御する。そして、走行制御部１７は、自律移動装置１が、目的地に到着した場合（＃５でＹＥＳ）、走行終了する。目的地に到着していない場合（＃５でＮＯ）、上述のステップ＃１〜＃５が所定間隔で繰り返される。
【００４８】
次に、図３（ａ）及び（ｂ）、図４、図５（ａ）〜（ｄ）を参照して、平面状障害物認識方法におけるスキャンポイントの取得方法及び用語の定義を説明する。個々のスキャンポイントは、上記のようにスキャンポイント取得部１２ａであるレーザレーダによりレーザビームを自律移動装置１の前方又は注目する方向に一定角度又は一定間隔で照射し、壁などの平面状障害物を含む障害物により反射された反射波を受信し、レーザビームを反射した障害物の部分の原点からの位置座標情報である。また、一群のスキャンポイントは、時系列に従って順序付けられた複数の位置座標の集合である。地図上での平面状障害物の位置が環境情報として特定されているときは、その平面状障害物が認識できれば、自律移動装置１の自己位置を特定するために用いることができる。
【００４９】
平面状障害物には、図３（ａ）に示すような平面の連続した建物の壁２１や、図３（ｂ）に示すような不連続な屋外における格子塀、金網のフェンス、あるいは鎧板など２２などが含まれる。スキャンポイントの座標データは、例えば、（ａ）に示すように、自律移動装置１の本体の特定の位置を原点とする所定距離内の前方１８０゜の領域１０のデータとして得られる。ここで、壁２１は、角度θ１から角度θ２の間に検出される。
【００５０】
図４は、測定されたスキャンポイントの空間配置の一例を示す。この例では、スキャンポイントＳ（ｉ）（ｉ＝０〜３６０）が、スキャンポイント取得部１２ａによって、角度範囲０〜１８０゜において角度θ＝０．５゜毎に測定されている。各スキャンポイントＳ（ｉ）は、後述する一定の規則に従って、グループ化され、そのうち特定のグループが、平面状障害物を表現するスキャンセグメントベクトルＳＳＶ（ｉ，ｊ）を構成する。なお、以下において、ｉ，ｊなどの引数は整数であり、その大小は、スキャンポイント測定の時系列における測定順番を表しているものとする。
【００５１】
例えば、スキャンポイントＳ（１）〜Ｓ（４）は、スキャンセグメントベクトルＳＳＶ（１，４）を構成する。また、スキャンポイントＳ（ｉ＋４）を除くスキャンポイントＳ（ｉ）〜Ｓ（ｉ＋６）は、スキャンセグメントベクトルＳＳＶ（ｉ，ｉ＋６）を構成する。スキャンポイントＳ（ｉ＋４）や、破線Ｇで囲まれたスキャンポイントＳＵＮは、スキャンセグメントベクトルＳＳＶを構成するグループから除外されたグループに属するスキャンポイントである。
【００５２】
ここで、要素ベクトルＶについて説明する。要素ベクトルＶは、互いにベクトル合成されてスキャンセグメントベクトルＳＳＶを形成するベクトルであり、スキャンポイントＳを始点及び終点とする。従って、スキャンセグメントベクトルＳＳＶを構成する各スキャンポイントＳは、互いに要素ベクトルＶを形成する。一方、スキャンセグメントベクトルＳＳＶを構成しないスキャンポイントＳＵＮ、例えばＳ（ｉ＋４）は、要素ベクトルＶを形成しない。また、要素ベクトルＶは、時系列的に連続する２つのスキャンポイントＳによって形成される場合の他に、必ずしも時系列的に連続しない２つのスキャンポイントＳによって形成される場合もありうる。例えば、柵などのように不連続な平面状障害物の場合、スキャンポイントＳ（ｉ＋４）は、空隙を通ってレーザビームを反射した平面状障害物の向こう側にある障害物の点と考えられる。
【００５３】
次に、スキャンポイントＳからスキャンセグメントベクトルＳＳＶを形成する手順と規則を説明する。図５（ａ）は、２つのスキャンポイントＳ（ｊ−１）及びＳ（ｊ）で定義される要素ベクトルＶ（ｊ−１，ｊ）を示す。この要素ベクトルＶの方向は、スキャンにより先に得られたスキャンポイント（ｊ−１）から後から得られたスキャンポイントＳ（ｊ）に向かう。また、２つのスキャンポイントＳで定義されるベクトルが要素ベクトルＶとされるためには、その２つのスキャンポイントＳ間の距離、すなわちベクトルの長さＬ（ｊ−１，ｊ）が第１所定長ＭＬ以下であることが必要である。このような要素ベクトルＶの形成は、自己位置認識部１４に備えられた要素ベクトル形成部１４ａによって行われる。
【００５４】
図５（ｂ）は、上述の要素ベクトルＶ（ｊ−１，ｊ）に、新たなスキャンポイントＳ（ｊ＋１）を加えて新たな要素ベクトルＶ（ｊ，ｊ＋１）を定義する様子を示す。この場合、新たな要素ベクトルＶ（ｊ，ｊ＋１）の長さは第１所定長ＭＬ以下であり、かつ、要素ベクトルＶ（ｊ，ｊ＋１）がそれに連続する他の要素ベクトルＶ（ｊ−１，ｊ）に対してなす角度θ（ｊ，ｊ＋１）が第１所定角度Ｍθ以下であることが必要である。
【００５５】
図５（ｃ）は、スキャンポイントＳ（ｊ）とＳ（ｊ＋１）により定義されるベクトルが、それに連続する要素ベクトルＶ（ｊ−１，ｊ）に対してなす角度θ（ｊ，ｊ＋１）が第１所定角度Ｍθよりも大きいことによって、スキャンポイントＳ（ｊ＋１）が要素ベクトル形成点から除外される場合を示す。その場合、１つスキップした次のスキャンポイントＳ（ｊ＋２）を用いて要素ベクトルＶ（ｊ，ｊ＋２）が形成される。このような要素ベクトルＶの選択は、自己位置認識部１４に備えられた要素ベクトル選択部１４ｂによって行われる。
【００５６】
図５（ｄ）は、複数の要素ベクトルＶが連続して形成された場合に定義されるスキャンセグメントベクトルＳＳＶ（ｊ，ｊ＋５）の例を示す。スキャンセグメントベクトルＳＳＶは、複数の要素ベクトルＶをベクトル合成して形成されるベクトルである。従って、連続する要素ベクトルの最初の要素ベクトルＶの始点を始点とし、最後の要素ベクトルＶの終点を終点とするベクトルである。スキャンセグメントベクトルＳＳＶは、合成された要素ベクトルＶを形成する複数のスキャンポイントＳ中にスキップされたスキャンポイントＳＳＫがあったとしても、このような２つのスキャンポイントＳ（ｊ），Ｓ（ｊ＋５）によって定義することができる。
【００５７】
スキャンセグメントベクトルＳＳＶによって平面状障害物を表現しようとすることから、上記ベクトル合成に関して、現実に存在する平面状障害物の形状等を想定した制限を設けることが望ましい。そこで、例えば、複数の要素ベクトルＶをベクトル合成してスキャンセグメントベクトルＳＳＶを形成する際に、角度に条件を設ける。互いに隣り合う２つの要素ベクトルＶのなす角度θの合計が第２所定角度ＭΣθ以下の場合、この合成ベクトルをスキャンセグメントベクトルＳＳＶとする。角度の合計Σθは、スキャンセグメントベクトルＳＳＶに含まれる各要素ベクトルＶ間の角度を正負の符号付きで定義して加算することにより得られる。この条件は、連続した平面状障害物を想定する場合に相当する。
【００５８】
また、所定の制限のもとで、スキャンセグメントベクトルＳＳＶから、スキャンセグメントＳＳが定義される。すなわち、スキャンセグメントベクトルＳＳＶの始点と終点により定義された線分が第２所定長ＴＬ０以上の場合、この線分がスキャンセグメントＳＳとして定義される。多数のスキャンポイントＳから最終的に複数のスキャンセグメントベクトルＳＳＶが形成された後、これらのスキャンセグメントベクトルＳＳＶから特定のものが抽出され、第２所定長ＴＬ０以上の長さをもつスキャンセグメントＳＳが得られる。このようなスキャンセグメントＳＳの抽出は、自己位置認識部１４に備えられた障害物認識部１４ｄによって行われる。
【００５９】
障害物認識部１４ｄはさらにセグメント照合部としても機能し、このようなスキャンセグメントＳＳと地図情報における平面状障害物の線分の集合からなるマップセグメントと照合して、平面状障害物の位置を地図上で特定し、さらに自律移動装置１の自己位置を特定する。このように、平面状障害物の位置をあらかじめ地図上の環境情報（セグメントマップ）として記憶させておけば、スキャンセグメントＳＳをマップセグメントと照合することによって、平面状障害物の位置を単純な手順により正確に特定することが可能であり、さらに自己位置を正確に特定することができるので、自律移動装置１を効率的でかつ安全に自律走行させることができる。
【００６０】
次に、図６に示すフローチャートを参照して、スキャンセグメントＳＳの抽出を詳細に説明する。ここで説明する抽出処理は、要素ベクトルＶの形成に際してスキャンポイントＳのスキップを行わない場合の処理である。スキップを認める場合の処理は後述する。
【００６１】
スキャンセグメントＳＳの抽出は、まず、スキャンポイント取得部１２ａによって取得された（ｎ＋１）個の点から成るスキャンポイントＳ（ｉ）（ｉ＝０，１，・・ｎ）の準備から始まる（＃１１）。スキャンセグメントベクトルＳＳＶの始点は、最初のスキャンポイントＳ（０）と仮定されて、スキャンセグメントベクトルＳＳＶの始点となるスキャンポイントＳ（ｍ）の番号ｍが、ｍ＝０と初期化される（＃１２）。なお、このスキャンポイントＳ（０）が要素ベクトルＶを形成しない場合、ｍは次々と更新される。その意味で「仮定」された始点番号であり、この点を含むスキャンセグメントＳＳが確定した時点でｍが確定する。
【００６２】
次に、角度積算変数Σθ及びベクトル合成点番号ｊがそれぞれ初期化される（＃１３）。角度積算変数Σθは、２つの要素ベクトルＶの間の角度を正負の符号付きで積算するための変数である。ベクトル合成点番号ｊは、図５（ｂ）において連続する２つの要素ベクトルＶ（ｊ−１，ｊ）とＶ（ｊ，ｊ＋１）が合成されるスキャンポイントＳ（ｊ）の番号である。今の時点で、ｍ＝０であり、ｊ＝ｍ＋１であるので、ｊ＝１である。つまり、２つめのスキャンポイントＳ（１）がベクトル合成点である。
【００６３】
次に、スキャンポイントＳ（ｊ−１）及びＳ（ｊ）をそれぞれ始点及び終点とする第１要素ベクトルＶａが形成される（＃１４）。この時点でｊ＝１であり、第１要素ベクトルＶａの始点及び終点は、それぞれスキャンポイントＳ（０）及びＳ（１）である。以下の処理において、２つの要素ベクトルＶをベクトル合成するので、１つ目を第１要素ベクトルＶａ、２つ目を第２要素ベクトルＶｂとする。
【００６４】
次に、第１要素ベクトルＶａが第１所定長ＭＬ以下であるかどうか調べられ、ベクトル絶対値｜Ｖａ｜が第１所定長ＭＬ以下（｜Ｖａ｜≦ＭＬ）であれば（＃１５でＹＥＳ）、この要素ベクトルＶａを保持して、ベクトル合成の次の段階であるスキャンセグメントベクトルＳＳＶの初期化を行う（＃１８）。すなわち、スキャンセグメントベクトルＳＳＶ＝Ｖａとする。
【００６５】
第１要素ベクトルＶａの長さが第１所定長ＭＬより長く、｜Ｖａ｜＞ＭＬとなる場合（＃１５でＮＯ）、ステップ＃１６に進み、要素ベクトルＶを形成することができ、かつ形成された要素ベクトルＶがベクトル合成できるようなスキャンポイントＳがあるかどうか調べられる。そのようなスキャンポイントＳが存在しなければ（＃１６でＮＯ）、スキャンセグメント抽出処理は終了する。一方、そのようなスキャンポイントＳが存在する場合（＃１６でＹＥＳ）、現在のスキャンセグメントベクトルＳＳＶの始点となるスキャンポイントＳ（ｍ）の番号ｍの値を破棄して、新たにｍ＝ｊが設定される（＃１７）。その後、ステップ＃１３から上述の処理が進められる。
【００６６】
ステップ＃１８においてスキャンセグメントベクトルＳＳＶが初期化された後、第２要素ベクトルＶｂが形成され（＃１９）、第２要素ベクトルＶｂが第１要素ベクトルＶａに対してなす振れ角度θが、ベクトルの内積と絶対値を用いて求められる（＃２０）。次に、この振れ角度θが上述の第１所定角度Ｍθ以下であるかどうか調べられ、第１所定角度Ｍθ以下であれば（＃２１でＹＥＳ）、第２要素ベクトルＶｂの長さが調べられる（＃２２）。第２要素ベクトルＶｂの長さが第１所定長ＭＬ以下であれば（＃２２でＹＥＳ）、第１要素ベクトルＶａと第２要素ベクトルＶｂがベクトル合成され、スキャンセグメントベクトルＳＳＶが更新される（＃２３）。続いて、振れ角度θの角度積算が行われる（＃２４）。
【００６７】
次に、角度積算値Σθが第２所定角度ＭΣθと比べられ、角度積算値が第２所定角度ＭΣθ以下であれば（＃２５でＹＥＳ）、スキャンセグメントベクトルＳＳＶへの要素ベクトルＶの追加が完了する。ここで、他にスキャンポイントＳがあれば（＃２６でＹＥＳ）、次の点のベクトル合成へと進む。すなわち、スキャンセグメントベクトルＳＳＶに新たに追加された第２要素ベクトルＶｂを第１要素ベクトルＶａとする置き換えを行い（＃３１）、ベクトル合成点番号を進めて、ｊ＝ｊ＋１として（＃３２）、上述のステップ＃１９から処理を繰り返す。
【００６８】
上記ステップ＃２１，＃２２，＃２５，＃２６のいずれかにおいて条件が満たされずにＮＯとなった場合には、ベクトル合成が停止され、ステップ＃２７へと進む。この時点で、スキャンセグメントベクトルＳＳＶの始点及び終点は、それぞれスキャンポイントＳ（ｍ）及びＳ（ｊ）である。次に、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）の長さ｜ＳＳＶ（ｍ，ｊ）｜が第２所定長ＴＬ０以上であるかどうか調べられる（＃２８）。スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）の長さ｜ＳＳＶ（ｍ，ｊ）｜が第２所定長ＴＬ０以上であれば（＃２８でＹＥＳ）、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）からスキャンセグメントＳＳ（ｍ，ｊ）が得られる（＃２９）。
【００６９】
なお、スキャンセグメントＳＳは、２つのスキャンポイントＳ（ｍ）とＳ（ｊ）で定義される線分のことであり、本明細書では、記号ＳＳ（ｍ，ｊ）によってこのような線分を便宜的に表している。
【００７０】
ステップ＃２８において、スキャンセグメントベクトルＳＳの長さＳＳＶ（ｍ，ｊ）の長さ｜ＳＳＶ（ｍ，ｊ）｜が第２所定長ＴＬ０より短い場合（＃２８でＮＯ）、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）からスキャンセグメントＳＳ（ｍ，ｊ）が得られないので、ステップ＃３０に進む。例えば、極端な場合、スキャンセグメントベクトルＳＳＶ（ｍ、ｊ）が２つの要素ベクトルＶのベクトル合成のみで形成されている場合、スキャンセグメントベクトルＳＳの長さＳＳＶ（ｍ，ｊ）の長さ｜ＳＳＶ（ｍ，ｊ）｜が短すぎるので、スキャンセグメントＳＳが平面状障害物を表現しているとは見做すことができない。
【００７１】
ステップ＃３０では、残りのスキャンポイントＳの数が調べられる。ベクトル合成に必要なスキャンポイントＳが残っていなければ（＃３０でＮＯ）、スキャンセグメント抽出の処理は終了する。一方、ベクトル合成に必要な数のスキャンポイントＳが残っている場合（＃３０でＹＥＳ）、ステップ＃１７に進む。ステップ＃１７では、最後に調べられたスキャンポイントＳの番号ｊが、新たなスキャンセグメントベクトルＳＳＶの始点番号ｍとされる。その後、ステップ＃１３から、上述のステップが繰り返される。
【００７２】
次に、図７のフローチャートを参照して、上述した要素ベクトルＶの形成に際してスキャンポインＳのスキップを認める場合のスキャンセグメント抽出を詳細に説明する。ここで説明する抽出処理では、スキャンポイントＳのスキップを所定回数ＭＫまで認める。スキャンポイントＳのスキップの一例を示すと、例えば図４では、スキャンポイントＳ（ｉ＋４）がスキップされている。そして、スキャンポイントＳ（ｉ＋３）とＳ（ｉ＋５）によって、１回スキップした要素ベクトルが形成されている。
【００７３】
なお、図７に示すフローチャートは、スキャンポイントＳのスキップに関する処理を除いて、上記図６に示したフローチャートと大略同様であるので、両者の相違点について説明を行い、重複する点の説明は省略する。このフローチャートに示す処理では、スキップの回数をカウントするためのスキップ変数ｋを導入している。スキップ変数ｋは、ステップ＃４３において初期化される。
【００７４】
その後、上記スキップなしの処理と同様のステップ＃４４〜＃５０を経過し、ステップ＃５１において、要素ベクトルＶの振れ角度θが調べられる。ここで、振れ角度θが第１所定角度Ｍθを越えた場合（＃５１でＮＯ）、スキップなしの場合と異なって、ベクトル合成をすぐに停止することなく、次のスキャンポイントＳを要素ベクトルＶの終点とする試みを行う（＃６３，＃６４，＃６５）。そして、ステップ＃４９に処理が戻される。
【００７５】
ステップ＃６３において、スキップ回数が調べられ、ステップ＃６４において、スキャンポイントＳの有無が調べられ、ステップ＃６５においてスキップ変数がインクリメント（更新）される。ステップ＃４９において、第２要素ベクトルＶｂを定義する終点のスキャンポイントＳ（ｊ＋ｋ）の番号、すなわちその引数がｊ＋ｋとなっていることから、（ｋ−１）回スキップ（ｋ＝２なら１回スキップ）されていることが分かる。
【００７６】
このように、スキップ変数ｋが用いられているステップが、上記図６に示すスキップなしの場合と異なっている。例えば、ステップ＃６２では、次のベクトル合成点が（ｊ＋ｋ）となっている。ｋ＝１であれば、スキップなしであり、ｋ＝２なら１回スキップしている。なお、ステップ＃６２の後のステップ＃６６において、スキップ変数ｋの初期化が行われる。
【００７７】
次に、ステップ＃４７での処理を説明する。ステップ＃４７では、スキップ変数ｋが関与していないが、ベクトル合成の処理を新たに開始するため、新たなスキャンセグメントベクトルＳＳＶの始点であるスキャンポイントＳ（ｍ）の番号ｍがｍ＝ｊとして設定されている。ステップ＃４７の時点で最後のベクトル合成点番号となっているｊを始点番号ｍとするのは、例えば、平面状障害物が交差した隅部に最後のベクトル合成点番号ｊのスキャンポイントＳ（ｊ）がある場合が想定されることによる。
【００７８】
次に、図８、図９（ａ）〜（ｃ）、図１０を参照して、複数のスキャンセグメントベクトルＳＳＶを合成する例を説明する。スキャンポイントＳが取得される平面状障害物の例として、図８に示されるように、フェンス支柱３１の間に平坦なフェンス本体３２が設けられたフェンス３が想定される。このようなフェンス３は、図９（ａ）に示すように、平面（フェンス本体）３２から支柱３１が部分的に突出した構造を有する。そこで、このようなフェンス３をレーザレーダなどでスキャンして得られたスキャンポイントＳからスキャンセグメントベクトルＳＳＶを形成すると、図９（ｂ）に示すように、スキャンセグメントベクトルＳＳＶは、フェンス支柱３１のところで互いに分離した状態になる。
【００７９】
そこで、図９（ｃ）に示すように、複数のスキャンセグメントベクトルＳＳＶを、所定条件を満足する範囲内で互いに接続して、新たな大きなスキャンセグメントベクトルＳＳＶ０を構成する。その接続の条件を、図１０を参照して説明する。スキャンポイントＳから得られる複数のスキャンセグメントベクトルＳＳＶから選択された２つのスキャンセグメントベクトルＳＳＶ１とＳＳＶ２のなす角度φが第２所定角度以下であり、かつ、一方のスキャンセグメントベクトルＳＳＶ２の始点と他方のスキャンセグメントベクトルＳＳＶ１の終点の距離ｄが所定距離以下である場合、これら２つのスキャンセグメントベクトルＳＳＶ１及びＳＳＶ２は、前記終点から前記始点に向かうベクトルを追加して新たな１つのスキャンセグメントベクトルＳＳＶとしてベクトル合成される。
【００８０】
このように複数のスキャンセグメントベクトルＳＳＶを合成することにより、１つの長いスキャンセグメントベクトルＳＳＶ０を形成することができ、それによって長いスキャンセグメントＳＳ０を抽出することができる。その結果、より正確に平面状障害物を認識することができ、より正確に自律移動装置１の自己位置を特定することができる。
【００８１】
次に、このような処理を行いながら走行する自律移動装置１の走行時のフローチャートを図１１に示す。ステップ＃７４における、スキャンセグメントベクトルＳＳＶの合成処理が加わった他は、図２に示したフローチャートの同様なので、説明は省略する。
【００８２】
次に、図１２、図１３（ａ）〜（ｃ）を参照しつつ、空隙を有する平面状障害物に対するスキャンセグメントベクトルＳＳＶの形成について説明する。自律移動装置１の稼働領域は、病院や生産工場などの屋内の他に、屋外の工場敷地、公園、テーマパークなどが想定される。このような屋外の稼働領域においては、図１２に示すような、フェンス支柱３１の間に金網などの大きな透過率（空隙）を有するフェンス本体３２を有するフェンス３０が走行路の境界として設けられることがある。そこで、稼働領域に存在するこのようなフェンス３０を空隙を有する平面状障害物の一例として、表現する線分の集合を地図情報における平面状障害物の線分の集合からなるマップセグメントとして、あらかじめ自律移動装置１の記憶部１１に記憶させておく。
【００８３】
図１３（ａ）に示すように、上記フェンス３０の断面は、レーザレーダのレーザビームを遮断又は反射するフェンス支柱３１部分と、レーザビームの大部分を透過させるフェンス本体３２部分を有する。そして、複数のフェンス支柱３１とフェンス支柱３１の間に設けられたフェンス本体３２で構成されたフェンス３０を、スキャンポイント取得部１２ａにより略水平面内でスキャンすると、主に各フェンス支柱３１により反射された反射波がスキャンポイント取得部１２ａにより受信される。その結果、フェンス支柱３１、フェンス本体３２，あるいはフェンス３０の向こう側の物体３６上の点の位置座標がスキャンポイントＳとして取得される。得られたスキャンポイントＳは、図１３（ｂ）に示すように、これらの物体に対応した位置に分布した点の集合となる。
【００８４】
自己位置認識部１４の要素ベクトル形成部１４ａは、図７に示すスキャンポイントのスキップを行うフローを用いて、各フェンス支柱３１及びフェンス本体３２上の点のスキャンポイントＳ（ｉ）、Ｓ（ｉ＋１）、Ｓ（ｉ＋３）、Ｓ（ｉ＋５）、Ｓ（Ｉ＋６）・・・を用いて、要素ベクトルＶ（ｉ，ｉ＋１）、Ｖ（ｉ＋１，ｉ＋３）、Ｖ（ｉ＋３，ｉ＋５）、Ｖ（ｉ＋５，ｉ＋６）・・・を形成する。さらに、要素ベクトル選択部１４ｂ及びスキャンセグメントベクトル形成部１４ｃによって、これらの要素ベクトルＶをベクトル合成してスキャンセグメントベクトルＳＳＶを形成する。
【００８５】
また、障害物認識部１４ｄは、形成されたスキャンセグメントベクトルＳＳＶが平面状障害物として認識できるか否か判断し、平面状障害物として認識できるときは、さらに記憶部１１に記憶されているフェンス３０を表現するマップセグメントと、ここで得られたスキャンセグメントベクトルＳＳＶにより定義されるスキャンセグメントＳＳとを照合する。これにより、地図上でのフェンス３０の位置が特定され、それに基づいて、自律移動装置１の自己位置が特定される。
【００８６】
このように、フェンス支柱３１及びフェンス本体３２をスキャンポイントＳとして認識することにより、フェンス本体３２の空隙の割合が高い場合であっても、そのようなフェンス本体３２を含むフェンス３０をスキャンセグメントベクトルＳＳＶとして表現して、マップセグメントと照合できるスキャンセグメントＳＳを抽出することができる。なお、このようなフェンス支柱３１を選択的にスキャンポイントＳとして取得する場合、レーザレーダよりも空間分解能の低い超音波センサを用いることができる。
【００８７】
次に、図１４、図１５（ａ）〜（ｃ）を参照して、フェンス３０のフェンス支柱３１の位置をスキャンポイントＳとしてより確実に取得する方法について説明する。この場合、図１４に示すように、フェンス３０のフェンス支柱３１に、予めリフレクタマーク３３を貼っておく。図１５（ａ）は、フェンス３０の断面とリフレクタマーク３３の様子を示す。図１５（ｂ）は、取得されたスキャンポイントＳを示し、図１５（ｃ）は、形成された要素ベクトルＶ及びスキャンセグメントベクトルＳＳＶを示す。
【００８８】
レーザレーダを用いて、このフェンス３０を略水平面内でスキャンすると、リフレクタマーク３３により反射された反射波の強度は、その他の点から反射された反射波の強度よりも高くなるので、多数のスキャンポイントＳの中からフェンス支柱３１上のスキャンポイントＳのみを抽出することが可能となる。このようなリフレクタマーク３３を用いる方法によれば、フェンス支柱３１の認識、従ってフェンス３０の認識が容易になる。
【００８９】
次に、図１６、図１７を参照して、処理の対象とするスキャンポイントＳを所定距離内に限定する場合について説明する。スキャンポイント取得部１２ａにより取得されるスキャンポイントＳの数を減らすことにより、自己位置認識部１４が行うスキャンセグメントベクトルＳＳＶ形成のための計算量を削減することができ、それにより自律移動のための判断をより早く行うことができる。
【００９０】
図１６に示すように、自律移動装置１の稼働環境に応じて、自律移動装置１のスキャンポイント取得部１２ａによる物体座標の計測可能な領域１０の中に、原点（スキャンポイント取得部１２ａの位置）からの距離が所定距離以内である領域１０ａを設定する。そして、この領域１０ａ内のスキャンポイントＳを用いて要素ベクトルＶを形成する。
【００９１】
このような領域１０ａを決める方法として、例えば、レーザレーダから照射されたレーザビームの反射波の強度が物体までの距離に応じて変化することを利用することができる。まず、図１７に示すように、レーザレーダを備えたスキャンポイント取得部１２ａの位置からある距離だけ離れた位置にあるフェンスを構成するワイヤ４１について、ワイヤ４１の位置する場所におけるレーザビームＬＢのビームスポットＢＳの径に基づいてビームスポットＢＳの面積を計算する。次に、ビームスポットＢＳの面積に対するワイヤ４１の占める面積の割合を計算する。その割合にワイヤ４１の材質固有の反射率をかけたものを、レーザレーダのレーザビームに対する測定反射率とする。距離が遠くなるほど、ビームスポットＢＳの面積が距離の二乗に比例して大きくなるけれども、ワイヤ４１の面積は距離に比例して大きくなるだけであるから、結果的に測定反射率の値は小さくなる。従って、スキャンポイント取得部１２ａは、領域１０ａを定める距離に応じて測定反射率を設定し、その測定反射率以下の反射光を受信しないようにフィルタリング処理を行うことにより、処理の対象とするスキャンポイントＳを所定距離内に限定することができる。
【００９２】
次に、図１８（ａ）及び（ｂ）を参照して、自律移動装置１が壁やフェンスなどの平面状障害物を認識しつつ自律走行する状況を説明する。図１８（ａ）は、自律移動装置１の周囲における警戒領域４とその進行方向前方に伸びる領域における注意領域５とを設定した状態で、自律移動装置１が移動している様子を示す。自律移動装置１は、注意領域５に障害物２３を検出すると、その移動速度を遅くしたり、外部への注意喚起のための表示や警報音を発生させたりする。また、自律移動装置１は、障害物が警戒領域４に入らないように移動し、もしこの警戒領域４に障害物を検知すると直ちに停止する。自律移動装置１は、このように、自己の周囲における段階的に区分した制御領域を設定することにより、効率的に自律移動する。
【００９３】
ところで、図１２に示すように、壁やフェンスの手前に側溝３５が設けられていたり、フェンス支柱３１の根元にブロック３４が設けられていたりする場合がある。このような側溝３５やブロック３４による段差などは、走行路面に近い低い位置に存在するため、前方水平方向における障害物検知では、これらを認識することができない。そこで、図１８（ｂ）に示すように、壁やフェンスの特定の障害物２４に対しては、自律移動装置１の周辺の警戒領域４と注意領域５のそれぞれに拡大警戒領域４ａ及び拡大注意領域５ａを付加して、特定の障害物２４に近づかないようにする。これにより、自律移動装置１は、脱輪や転倒などの走行中の不具合発生を事前に防止して、効率的に自律移動することができる。
【００９４】
上述の拡大警戒領域４ａや拡大注意領域５ａは、図１８（ｂ）に示すように、特定の障害物２４の視野範囲の内側に設定しておけばよい。この場合、特定の障害物２４を認識していない領域においては、図１８（ａ）に示す通常の走行移動をすることができ、効率的に自律走行することができる。
【００９５】
ここで、特定の障害物２４として、空隙を有する平面状障害物を想定した場合について、図１９（ａ）及び（ｂ）を参照しつつ説明する。図１９（ａ）は、平面状障害物の配置を模式的に示し、図１９（ｂ）は、その平面状障害物の配置に対応するマップセグメントのデータを示す。図１９（ａ）において、実線は空隙を有しない平面状障害物を示し、破線は空隙を有する平面状障害物を示す。図１９（ｂ）に示すデータは、予め記憶された地図情報における平面状障害物の線分の集合からなるマップセグメントのデータであり、例えば、レーザレーダで検出できる平面状障害物の左右端点を始点と終点とする座標値である。このデータは、稼働領域に存在する平面状障害物が空隙部を有するか否かを識別するための空隙属性（空隙有無）の情報を含み、その属性は、空隙を有しない平面状障害物は０、空隙を有する平面状障害物は１とされている。
【００９６】
上述のように、空隙を有する平面状障害物が特定の障害物２４として想定されている場合、空隙を有する平面状障害物を効率的に、かつ確実に認識することが、自律移動装置１による安全で効率的な自律走行を可能にする。そこで、壁やフェンス等の平面状障害物をスキャンセグメントベクトルＳＳＶで表現してスキャンセグメントＳＳを抽出する方法を応用する。
【００９７】
この空隙を有する平面状障害物の認識方法として、まず、図６に示すフローチャートにより、スキャンポイントＳをスキップしないで要素ベクトルＶを形成し、所定の条件で選択された要素ベクトルＶから第１群のスキャンセグメントベクトルＳＳＶ１を形成する。平面状障害物が空隙を有する場合、例えば図５（ｃ）において破線で示すように、連続する２つの要素ベクトルＶ（ｊ−１，ｊ）とＶ（ｊ，ｊ＋１）がなす振れ角度θが第１所定角度Ｍθよりも大きくなる確率が高く、第１群のスキャンセグメントベクトルＳＳＶ１が形成される可能性はほとんどない。
【００９８】
次に、図７に示すフローチャートにより、適宜スキャンポイントＳをスキップしつつ要素ベクトルＶを形成し、要素ベクトルＶから第２群のスキャンセグメントベクトルＳＳＶ２を形成する。この場合、図５（ｃ）において実線で示すように、振れ角度θが第１所定角度Ｍθよりも大きくなるスキャンポイントＳ（ｊ＋１）はスキップされるので、平面状障害物が空隙を有する場合についても第２群のスキャンセグメントベクトルＳＳＶ２が形成される。
【００９９】
次に、上記のようにして得られた第１群のスキャンセグメントベクトルＳＳＶ１と第２群のスキャンセグメントベクトルＳＳＶ２を比較すると、空隙を有しない平面状障害物に相当するスキャンセグメントベクトルは両方に含まれるけれども、空隙を有する平面状障害物に相当するスキャンセグメントベクトルは第２群のスキャンセグメントベクトルＳＳＶ２にのみ含まれる。従って、第２群のスキャンセグメントベクトルＳＳＶ２を形成する要素ベクトルから、第１群のスキャンセグメントベクトルＳＳＶ１を形成する要素ベクトルを引き去る演算を行い、後に残された要素ベクトルＶによって形成される第３群のスキャンセグメントベクトルＳＳＶ３が空隙を有する平面状障害物に相当する。このようにして得られた第３群のスキャンセグメントベクトルＳＳＶ３から、スキャンセグメントＳＳを抽出することにより、空隙を有する平面状障害物を認識することができる。
【０１００】
次に、スキャンセグメントベクトルＳＳＶの形成における最初の要素ベクトルＶを決定する方法について、図２０（ａ）〜（ｃ）を参照しつつ説明する。図２０（ａ）〜（ｃ）は、最初の要素ベクトルＶのベクトル合成に関して起こりうる事例を示す。図２０（ａ）に示す例では、ベクトル合成開始時に、第１要素ベクトルＶａが時系列的に連続する２つのスキャンポイントＳ（ｍ）とＳ（ｍ＋１）によって順当に形成され、第２要素ベクトルＶｂが、スキャンポイントＳ（ｍ＋２）及びＳ（ｍ＋３）をスキップして、時系列的に前後するけれども連続しない２つのスキャンポイントＳ（ｍ＋１）とＳ（ｍ＋４）によって形成されている。この状況は、スキップ変数ｋを導入している上記図７に示すフローによって問題なく処理される。
【０１０１】
図２０（ｂ）に示す例では、スキャンポイントＳ（ｍ）、Ｓ（ｍ＋２）、Ｓ（ｍ＋４）・・・で構成される後ろの列と、スキャンポイントＳ（ｍ＋１）、Ｓ（ｍ＋３）・・・で構成される前の列が存在している。このようなスキャンポイントＳの配列の場合に、上記図７に示すフローに従うと、第１要素ベクトルＶａが決まらないという状況が発生する。具体的には、図２０（ｂ）に示す状況では、ベクトル合成開始時に、スキャンポイントＳ（ｍ）とＳ（ｍ＋１）によって第１要素ベクトルＶａを形成しようとすると、この時系列的に連続する２つのスキャンポイントＳ（ｍ）とＳ（ｍ＋１）によって形成されるベクトルの長さが第１所定長ＭＬを超える。そこで、図７に示したフローでは、次に連続する２つのスキャンポイントＳ（ｍ＋１）とＳ（ｍ＋２）によって第１要素ベクトルＶａを形成しようとするが、この２つのスキャンポイントＳ（ｍ＋１）とＳ（ｍ＋２）によって形成されるベクトルの長さも第１所定長ＭＬを超える。このような状況が連続すると、最初の第１要素ベクトルＶａが決まらない。ここで重要なのは、同じ系列に属する、例えば、図２０（ｂ）における後ろの列のスキャンポイントＳ（ｍ）とＳ（ｍ＋２）によって第１要素ベクトルＶａを形成できるという点が見逃されることである。
【０１０２】
そこで、図２０（ｃ）に示すように、最初のスキャンポイントＳ（ｍ）に対して、第１要素ベクトルＶａの形成に不適切な２番目のスキャンポイントＳ（ｍ＋１）をスキップすると、第１要素ベクトルＶａ形成後の要素ベクトルＶの合成は、上記図７のフローで処理できる。そこで、初期スキップ変数ｐなる変数を導入し、第１要素ベクトルＶａを形成する際に、不適切な２番目以降のスキャンポイントを所定の回数ｐだけスキップ可能とする。所定の回数ｐだけスキップしても第１要素ベクトルＶａを形成できない場合、第１要素ベクトルＶａの始点となるスキャンポイントを１つだけずらして、再度、第１要素ベクトルＶａの形成を試みることにする。
【０１０３】
図２１及び図２２は、初期スキップ変数ｐを導入することにより、このような事例に対処するフローを示す。なお、図２１及び図２２に示すフローチャートは、それぞれ初期スキップ変数ｐを用いる点を除いて図７に示すフローチャートと大略同様であるので、両者の相違点についてのみ説明を行い、重複する点の説明は省略する。
【０１０４】
図２１に示すように、ステップ＃４２においてスキャンセグメントベクトルＳＳＶの始点であるスキャンポイントＳ（ｍ）の番号ｍが初期化された後、ステップ＃７０において初期スキップ変数ｐが初期化される。その後、第１要素ベクトルＶａが定義され（＃７１）、第１要素ベクトルＶａの長さが検査される（＃４５）。第１要素ベクトルＶａが第１所定長ＭＬを超えている場合、さらにその他のスキャンポイントＳの有無（＃７４）、スキップ可能性（＃７５）が調べられる。スキップ可ならば（＃７５でＹＥＳ）、１点スキップが行われて（＃７６）、再度、ステップ＃７１からのステップが繰り返される。
【０１０５】
また、スキップ不可ならば（＃７５でＮＯ）、新たなスキャンセグメントベクトル始点番号ｍが設定され（＃４７）、初期化のステップ＃７０から、再度上述のステップが繰り返される。第１要素ベクトルＶａが決定されると（＃４５でＹＥＳ）、スキップ変数ｋが初期化される（＃７３）。図２２に示すこれ以降のステップは、次の点を除いて、図７に示すフローと同じである。
【０１０６】
図７のステップ＃５２〜＃５５では、第２要素ベクトルＶｂが第１所定長ＭＬを超えたり、積算角Σθが第２所定角度ＭΣθを超えたりした場合にベクトル合成を停止しているが、図２２に示すフローでは、スキャンポイントＳをスキップしてベクトル合成を試みている（＃５２又は＃７７でＮＯの場合、＃６３に進む）。このように、図２１及び図２２に示すフローによるスキャンセグメント抽出処理を行うと、図２０（ｂ）に示す状態を回避でき、図２０（ｃ）に示すにように、複数の要素ベクトルＶを合成して、スキャンセグメントベクトルＳＳＶを形成することができる。
【０１０７】
次に、時系列に前後する複数のスキャンポイントＳに対して、時系列を遡ってスキャンセグメント抽出の処理を複数回行う例を説明する。図２３は、空隙を有しない壁などの平面状障害物Ｗ３の手前に空隙を有する平面状障害物Ｗ１及びＷ２が存在する障害物の二重構造の位置座標を測定する様子を示す。図２４は、図２３に示す障害物の二重構造をレーザレーダでスキャンして得られた複数のスキャンポイントＳから平面状障害物を表現するスキャンセグメントベクトルＳＳＶを形成する様子を示し、図２５〜図２７は、それぞれスキャンセグメントベクトルＳＳＶを形成する３通りの手順を示す。
【０１０８】
自律移動装置１の稼働領域には、図２３に示すように、支柱の配列からなる柵Ｗ１や、透過部を有するフェンスＷ２などが、建物の壁面Ｗ３に沿って形成されている、いわゆる障害物の二重構造が有り得る。この場合、上記図２０（ｂ）及び（ｃ）に示すような２系列のスキャンポイントＳが得られる。そして、障害物の二重構造のもとで、スキャンポイント取得部１２ａにより得られた複数のスキャンポイントＳに対して時系列的に得られた順番にスキャンセグメント抽出処理を行うと、前の列と後ろの列の２系列のスキャンポイントＳのうちいずれか一方の列のスキャンポイントＳが、上記初期スキップ変数ｐやスキップ変数ｋの導入によってスキップされる。障害物の二重構造の場合、特に、手前に存在する柵Ｗ１やフェンスＷ２などの空隙を有する障害物が認識できないと、自律移動装置１の自己位置特定の際、いずれの平面状障害物を検出しているのか不明であり、その結果自己位置特定精度が低下する可能性がある。そのような問題を防止するために、図２４に示すように、前後に重なるスキャンセグメントベクトルＳＳＶを形成すると共に、前後に重なる障害物を表すスキャンセグメントＳＳを抽出することは重要である。
【０１０９】
障害物の二重構造の場合におけるスキャンセグメントＳＳの抽出は、例えば奥に存在する平面状障害物に関するスキャンセグメントＳＳ抽出が終了した後、そのスキャンセグメントＳＳの抽出に用いられなかった残りのスキャンポイントＳに対して、再度要素ベクトルＶの形成からスキャンセグメントＳＳ抽出までの各ステップを実行することによって行われる。
【０１１０】
図２５に示すフローでは、１つのスキャンセグメントＳＳを抽出するたびに、そのスキャンセグメントＳＳの抽出の際に参照されたけれどもスキップされたスキャンポイントＳＳＫに対して、再度スキャンセグメントＳＳの抽出処理を行う。まず、一群のスキャンポイントＳ１を準備し（＃８１）、スキャンセグメントＳＳ確定までの処理を行う（＃８２，＃８３）。この処理は、例えば、図７に示すフローの最初のステップ＃４１からスキャンセグメントＳＳ確定のステップ＃５９までの処理、又は、図２１に示すフローにおける最初のステップ＃４１から、図２２に示すフローにおけるスキャンセグメントＳＳ確定のステップ＃５９までの処理に対応する。第１段階のスキャンセグメントＳＳ抽出の際に参照されたスキャンポイントＳ１のうちスキップされて未使用となったスキャンポイントＳＳＫは、第１段階未使用スキャンポイントＳＵＮ１として記録される（＃８４）。
【０１１１】
次に、第１段階未使用スキャンポイントＳＵＮ１に対して、同様に第２段階のスキャンセグメントＳＳ抽出処理を行う（＃８５，＃８６）。そして、それまでの処理で参照されなかったスキャンポイントＳＮＲを、新たな第１段階スキャンポイントＳ１として準備する（＃８７）。ここで、未参照のスキャンポイントＳＮＲがなければ、すなわち全てのスキャンポイントＳ１について参照された場合、処理を終了し（＃８８でＮＯ）、未参照のスキャンポイントＳＮＲがあれば（＃８８でＹＥＳ）、ステップ＃８２に戻って、上記各ステップを繰り返す。
【０１１２】
また、図２６に示すフローでは、全てのスキャンポイントＳ１に対して抽出可能な全てのスキャンセグメントＳＳの抽出処理を行った後に、スキップされたスキャンポイントＳＳＫに対し、再度スキャンセグメントＳＳの抽出処理を行う。まず、一群のスキャンポイントＳ１を準備し（＃９１）、スキャンセグメントＳＳの確定までの処理を、スキャンポイントＳ１の全てに対して参照が済むまで繰り返し行う（＃９２，＃９３）。この処理は、例えば、図７や、図２１と図２２に示したフローを開始から終了まで行うことに対応する。但し、各スキャンポイントＳ１について、スキャンセグメントベクトルＳＳＶ形成に寄与したか否かの記録を残しておく。そして、スキャンセグメントベクトルＳＳＶ形成に寄与していないスキャンポイントＳＵＮを準備する（＃９４）。
【０１１３】
その後、ステップ＃９４で準備されたスキャンポイントＳＵＮの全てに対して参照が済むまで、上記同様にスキャンセグメントＳＳ抽出処理を繰り返し行う（＃９５，＃９６）。このようにして、スキャンセグメントＳＳを抽出することにより、二重構造の障害物を認識することができる。
【０１１４】
図２７に示すフローでは、１つのスキャンセグメントＳＳが抽出されると、そのスキャンセグメントＳＳを抽出するための先の処理において用いられなかったスキャンポイントＳＳＫに対してスキャンセグメントＳＳの抽出が行われる。まず、一群のスキャンポイントＳ１が準備され（＃１０１）、スキャンセグメント抽出までの処理が実行される（＃１０２，＃１０３）。この処理は、例えば、図７に示すフローの最初のステップ＃４１からスキャンセグメントＳＳ確定のステップ＃５９までの処理、又は、図２１に示すフローにおける最初のステップ＃４１から、図２２に示すフローにおけるスキャンセグメントＳＳ確定のステップ＃５９までの処理に対応する。１つのスキャンセグメントＳＳが抽出されると、スキャンセグメントＳＳを抽出するための先の処理において参照されたけれども用いられなかった一群のスキャンポイントＳ２と参照されてない一群のスキャンポイントＳ３が準備される（＃１０４）。そして、例えば図７に示すフロー中のステップ＃４７において、ベクトル合成点の番号を、参照されたけれども使用されなかったスキャンポイントＳのうち時系列的に最初のものの番号ｊにセットすることによって、スキャンポイントＳ１をスキャンポイントＳ２とＳ３を合成させた新たなスキャンポイントに置き換える（＃１０５）。
【０１１５】
例えば図２３における障害物の二重構造において、平面状障害物（柵）Ｗ１を表すスキャンセグメントベクトルＳＳＶ１が最初に抽出されると、平面状障害物（フェンス）Ｗ２を表すスキャンセグメントベクトルＳＳＶ２の抽出よりも先に、平面状障害物（壁）Ｗ３を表すスキャンセグメントベクトルＳＳＶ３を先に抽出することができる。このような構成によれば、スキャンセグメントベクトルＳＳＶ３の長さを正確に検出することができるので、地図上における自律移動装置１の自己位置もまた正確に特定することができる。
【０１１６】
次に、スキャンセグメントＳＳの抽出を、より精度良く安定して行う方法について説明する。図２８は、上記いずれかの方法により形成されたスキャンセグメントベクトルＳＳＶに基づいて最小二乗法によりスキャンセグメントＳＳを求める様子を示し、図２９は、その処理フローを示す。上記スキャンセグメントＳＳ抽出の方法によると、図２８に示すように、最終的に決定されるスキャンセグメントベクトルＳＳＶ（ｍ，ｊ）及びスキャンセグメントＳＳ（ｍ，ｊ）は、その始点のスキャンポイントＳ（ｍ）と終点のスキャンポイントＳ（ｊ）で決定されている。つまり、始点と終点の間の多数のスキャンポイントＳの位置は考慮されておらず、スキャンセグメントＳＳ（ｍ，ｊ）の位置精度は始点及び終点のスキャンポイントＳの位置検出精度に強く依存している。
【０１１７】
そこで、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）を形成するステップにおいて、スキャンセグメントベクトルＳＳＶ（ｍ、ｊ）の合成に寄与したスキャンポイントＳの情報を保存しておき、始点と終点の間の多数のスキャンポイントＳの位置情報を統計的に処理して、スキャンセグメントＳＳ（ｍ，ｊ）の抽出に反映させて、抽出結果の精度向上及び安定性を確保する。なお、統計的処理として、例えば最小二乗法を用いる。すなわち、図２９に示すように、スキャンセグメントＳＳ（ｍ，ｊ）を抽出するステップにおいて、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）の始点と終点により定義される線分が所定長さ以上であれば（＃５８でＹＥＳ）、保存された各スキャンポイントＳの座標値に対して最小二乗法を適用することにより、スキャンポイントＳに最適フィッティングされる線分を算出し（＃７９）、この線分をスキャンセグメントＳＳとして抽出する（＃５９）。
【０１１８】
このようにして得られたスキャンセグメントＳＳ（ｍ，ｊ）は、図２８に示すように、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）の始点と終点の間のスキャンポイントＳであって、スキャンセグメントベクトルＳＳＶ（ｍ，ｊ）の合成に寄与した全てのスキャンポイントＳの位置情報を反映したものと成っている。なお、図２９に示すフローは、図６、図７、図２１、図２２等に示したフローに組み込むことができる。
【０１１９】
次に、要素ベクトルＶをベクトル合成してスキャンセグメントベクトルＳＳＶを形成する際のベクトル合成可否判定の他の方法について説明する。図３０は、本発明にかかる平面状障害物認識方法において、スキャンポイントＳを用いて平面状障害物を表現するスキャンセグメントベクトルＳＳＶを形成する際の要素ベクトルＶのベクトル合成の他の方法を示す。また、図３１は、スキャンセグメントベクトルＳＳＶの有効性の他の判断基準を示す。
【０１２０】
図３０に示す方法は、連続する２つの要素ベクトルＶのなす振れ角度θに代えて、要素ベクトルＶｂ＝Ｖ（ｊ，ｊ＋１）の終点と、その終点からスキャンセグメントベクトルＳＳＶ（ｍ，ｊ）に下ろした垂線の足との距離ｈを、ベクトル合成の可否判定に用いる。すなわち、所定値Ｍｈに対してｈ≦Ｍｈの場合にベクトル合成を行うこととする。
【０１２１】
図３１に示す方法は、要素ベクトルＶの終点と、その終点からスキャンセグメントベクトルＳＳＶに下ろした垂線の足との距離ｈの積算値Σｈをベクトル合成の可否判定に用いる。すなわち所定値ＭΣｈに対してΣｈ≦ＭΣｈの場合にベクトル合成を行う。このような判定方法によると、角度計算の手間がなく、所定値Ｍｈ及びＭΣｈの入力が容易になる。
【０１２２】
なお、本発明は、上記構成に限られることなく種々の変形が可能である。例えば、大きな曲率半径を有する湾曲した曲面状障害物に対応するため、障害物表面を折れ線で表現したマップセグメントと、所定角度内で一方向に湾曲するように複数のスキャンセグメントベクトルを連結した連結スキャンセグメントベクトルを用いるようにしてもよい。
【図面の簡単な説明】
【０１２３】
【図１】図１は、本発明に係る自律移動装置の構成を示すブロック図である。
【図２】図２は、本発明に係る平面状障害物認識方法を用いた自律移動装置の自律走行のフローチャートである。
【図３】図３（ａ）は、上記平面状障害物認識方法による空隙を有しない平面状障害物を認識する様子を示す平面図であり、図３（ｂ）は、その方法による空隙を有する平面状障害物を認識する様子を示す平面図である。
【図４】図４は、上記平面状障害物認識方法により、スキャンポイントから平面状障害物を表現するスキャンセグメントベクトルを形成する様子を示す説明図である。
【図５】図５（ａ）は、上記平面状障害物認識方法における要素ベクトルＶの説明図、図５（ｂ）及び図５（ｃ）は、要素ベクトルＶのベクトル合成を説明する図、図５（ｄ）は複数の要素ベクトルＶをベクトル合成して形成されたスキャンセグメントベクトルＳＳＶの説明図である。
【図６】図６は、スキャンポイントのスキップを実行しない場合における上記平面状障害物認識方法の手順を示すフローチャートである。
【図７】図７は、スキャンポイントのスキップを実行する場合における上記平面状障害物認識方法の手順を示すフローチャートである。
【図８】図８は、平面状障害物の一例として、支柱を有する壁を示す斜視図である。
【図９】図９（ａ）は、図８に示す支柱を有する壁の平面図、図９（ｂ）は、支柱を有する壁を表現するスキャンセグメントベクトルＳＳＶを示す図、図９（ｃ）は、複数のスキャンセグメントベクトルＳＳＶを合成して形成された長い１つのスキャンセグメントベクトルＳＳＶ０を示す図である。
【図１０】図１０は、複数のスキャンセグメントベクトルＳＳＶを合成しうるための条件を説明する図である。
【図１１】図１１は、本発明の自律移動装置の平面状障害物認識方法を用いた自律走行のフローチャートであって、スキャンセグメントベクトルの合成の手順を含むフローチャートである。
【図１２】図１２は、平面状障害物の他の一例として、空隙を有するフェンスを示す斜視図である。
【図１３】図１３（ａ）は、図１２に示す空隙を有するフェンスの平面図、図１３（ｂ）は、フェンス支柱に対応するスキャンポイントＳを示す図、図１３（ｃ）は、スキャンポイントＳから形成された要素ベクトルＶとスキャンセグメントベクトルＳＳＶを示す図である。
【図１４】図１４は、平面状障害物の他の一例として、空隙を有するフェンスの支柱にリフレクタマークを貼った例を示す斜視図である。
【図１５】図１５（ａ）は、図１４に示したフェンスの平面図、図１５（ｂ）は、フェンス支柱に対応するスキャンポイントＳを示す図、図１５（ｃ）は、スキャンポイントＳから形成された要素ベクトルＶとスキャンセグメントベクトルＳＳＶを示す図である。
【図１６】図１６は、本発明に係る平面状障害物認識方法において、処理の対象とするスキャンポイントＳを所定距離内に限定する様子を説明する平面図である。
【図１７】図１７は、レーザレーダの反射光の反射量が距離によって変化することを用いて、処理の対象とするスキャンポイントを所定距離内に限定する方法を説明する図である。
【図１８】図１８（ａ）は、自律移動装置が通常の自律走行する様子を示す平面図、図１８（ｂ）は、自律移動装置の周辺の警戒領域と注意領域のそれぞれに拡大警戒領域及び拡大注意領域を付加して、特定の障害物に近づかないようにした様子を示す平面図である。
【図１９】図１９（ａ）は、自律移動装置の稼働領域に存在する平面状障害物の配置例を示す図、図１９（ｂ）は平面状障害物表現するマップセグメントのデータの一例を示す図である。
【図２０】図２０（ａ）〜２０（ｃ）は、本発明に係る平面状障害物認識方法における要素ベクトルのベクトル合成を説明する図である。
【図２１】図２１は、本発明に係る平面状障害物認識方法を示すフローチャートであって、スキャンポイントから平面状障害物を表現するスキャンセグメントベクトルを形成する際に、最初の要素ベクトルの形成にスキャンポイントのスキップを考慮する場合のフローチャートである。
【図２２】図２２は、図２１のフローチャートの続きを示すフローチャートである。
【図２３】図２３は、平面状障害物の他の一例として、空隙を有しない壁の手前に空隙を有する柵やフェンスなどが設けられた平面状障害物の二重構造を示す平面図である。
【図２４】図２４は、図２３に示す平面状障害物の二重構造から得られたスキャンポイントを用いて平面状障害物を表現する複数のスキャンセグメントベクトルを形成する様子を示す平面図である。
【図２５】図２５は、図２３に示す平面状障害物の二重構造から得られたスキャンポイントを用いて平面状障害物を表現する複数のスキャンセグメントベクトルを形成する手順を示すフローチャートである。
【図２６】図２６は、図２３に示す平面状障害物の二重構造から得られたスキャンポイントを用いて平面状障害物を表現する複数のスキャンセグメントベクトルを形成する他の手順を示すフローチャートである。
【図２７】図２７は、図２３に示す平面状障害物の二重構造から得られたスキャンポイントを用いて平面状障害物を表現する複数のスキャンセグメントベクトルを形成するさらに他の手順を示すフローチャートである。
【図２８】図２８は、本発明に係る平面状障害物認識方法において、形成されたスキャンセグメントベクトルに基づいて最小二乗法によりスキャンセグメントを求める様子を説明する平面図である。
【図２９】図２９は、図２８に示す最小二乗法を用いてスキャンセグメントを求める手順を示すフローチャートである。
【図３０】図３０は、本発明に係る平面状障害物認識方法において、スキャンポイントから平面状障害物を表すスキャンセグメントベクトルを形成する際の要素ベクトルの合成方法の他の例を説明する図である。
【図３１】図３１は、図３０に示す要素ベクトルの合成方法により形成したスキャンセグメントベクトルの有効性の判断を説明する図である。
【符号の説明】
【０１２４】
１  自律移動装置
３，３０  フェンス
１１  記憶部
１２  スキャンポイント取得部
１３  走行装置
１４  自己位置認識部
１４ａ  要素ベクトル形成部
１４ｂ  要素ベクトル形成部
１４ｃ  スキャンセグメントベクトル形成部
１４ｄ  障害物認識部
２３，２４  障害物
３１  フェンス支柱
３２  フェンス本体
３３  リフレクタマーク
３４  ブロック
３５  側溝
３６  フェンスの向こう側の物体
Ｓ，ＳＳＫ，ＳＵＮ，Ｓ（ｉ）・・・  スキャンポイント
Ｖ，Ｖａ，Ｖｂ，Ｖ（ｉ，ｉ＋１）・・・  要素ベクトル
ＳＳ，ＳＳ０  スキャンセグメント
ＳＳＶ，ＳＳＶ０，ＳＳＶ１・・・  スキャンセグメントベクトル
Ｍθ  第１所定角度
ＭΣθ  第２所定角度
ＭＬ  第１所定長
ＴＬ０  第２所定長
【図１】
2008268224.tif 000003
【図２】
2008268224.tif 000004
【図３】
2008268224.tif 000005
【図４】
2008268224.tif 000006
【図５】
2008268224.tif 000007
【図６】
2008268224.tif 000008
【図７】
2008268224.tif 000009
【図９】
2008268224.tif 000010
【図１０】
2008268224.tif 000011
【図１１】
2008268224.tif 000012
【図１３】
2008268224.tif 000013
【図１５】
2008268224.tif 000014
【図１６】
2008268224.tif 000015
【図１７】
2008268224.tif 000016
【図１８】
2008268224.tif 000017
【図１９】
2008268224.tif 000018
【図２０】
2008268224.tif 000019
【図２１】
2008268224.tif 000020
【図２２】
2008268224.tif 000021
【図２３】
2008268224.tif 000022
【図２４】
2008268224.tif 000023
【図２５】
2008268224.tif 000024
【図２６】
2008268224.tif 000025
【図２７】
2008268224.tif 000026
【図２８】
2008268224.tif 000027
【図２９】
2008268224.tif 000028
【図３０】
2008268224.tif 000029
【図３１】
2008268224.tif 000030
【図８】
2008268224.tif 000031
【図１２】
2008268224.tif 000032
【図１４】
2008268224.tif 000033