(57)【要約】【課題】  本発明は、測定目的等に応じて測定条件を変更することができる３次元測定装置を提供することを目的とする。【解決手段】  本発明の３次元測定装置１８は、距離データを測定するレーザレンジセンサ２０と、レーザレンジセンサ２０を回転させる回転装置３０と、回転装置３０の回転角を検出するエンコーダ３８と、レーザレンジセンサ２０とエンコーダ３８に接続された演算部５２ａと、回転周期を設定する設定手段５２ｃと、設定された回転周期で回転装置３０を駆動する回転制御部５２ｂとを有する。【選択図】図１
2007225342.tif 000002
【特許請求の範囲】
【請求項１】
空間の３次元形状を測定する３次元測定装置であって、
光線を走査軸周りに走査することで光線が走査された走査面上の距離データを測定する距離測定装置と、
距離測定装置が取付けられ、距離測定装置を走査軸と平行でない回転軸周りに回転させる回転装置と、
回転装置の回転角を検出するセンサと、
距離測定装置から入力される距離データとセンサから入力される回転角を用いて３次元距離データを演算する演算装置と、
回転装置の回転周期及び／又は回転角度範囲を設定する設定手段と、
設定された回転周期及び／又は回転角度範囲で回転装置を駆動する回転制御装置と、を有することを特徴とする３次元測定装置。
【請求項２】
回転制御装置は、設定された回転周期及び／又は回転角度範囲を用いて算出された回転軌道に基づいて回転装置を駆動することを特徴とする請求項１に記載の３次元測定装置。
【請求項３】
算出された回転軌道は、設定された回転角度範囲の中心から所定の角度範囲内では等角速度となることを特徴とする請求項２に記載の３次元測定装置。
【請求項４】
演算装置は、距離測定装置による１走査面上を光線が走査する時間と回転装置の角速度を用いて、センサから入力する回転角を補正して３次元距離データを演算することを特徴とする請求項３に記載の３次元測定装置。
【請求項５】
障害物を回避しながら目標地点まで移動する自律移動装置であり、
光線を走査軸周りに走査することで光線が走査された走査面上の距離データを測定する距離測定装置と、
距離測定装置が取付けられ、距離測定装置を走査軸と平行でない回転軸周りに回転させる回転装置と、
回転装置が搭載される移動体と、
回転装置の回転角を検出するセンサと、
距離測定装置から入力される距離データとセンサから入力される回転角を用いて３次元距離データを演算する演算装置と、
演算装置で演算された３次元距離データを用いて移動体の移動方向及び移動速度を制御する移動体制御装置と、
回転装置の回転周期及び／又は回転角度範囲を設定する設定手段と、
設定された回転周期及び／又は回転角度範囲で回転装置を駆動する回転制御装置と、を有することを特徴とする自律移動装置。
【請求項６】
設定手段は、移動体の移動速度に応じて回転装置の回転周期を設定することを特徴とする請求項５に記載の自律移動装置。
【請求項７】
演算装置は、移動体の移動量を用いて３次元距離データを補正することを特徴とする請求項５又は６に記載の自律移動装置。
【請求項８】
移動体の鉛直軸に対する傾斜角を検出するセンサをさらに備え、回転制御装置は、センサで検出された傾斜角に基づいて距離測定装置を回転させる回転角度範囲を修正することを特徴とする請求項５〜７のいずれかに記載の自律移動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、空間の形状（空間内の物体の形状）を３次元で測定する技術に関する。
【背景技術】
【０００２】
空間内の物体の形状を３次元で測定する測定装置として、特許文献１の３次元測定装置が知られている。この３次元測定装置は、光線を走査軸周りに走査することにより光線が走査された走査面上の距離データを測定する距離測定装置と、距離測定装置を走査軸と直交する回転軸周りに回転させる回転装置と、距離測定装置で得られた距離データと回転装置の回転角を用いて３次元距離データを演算する演算装置を有している。
この測定装置では、距離測定装置が光線を照射しながら光線を照射する方向を走査軸周りで変化させる。距離測定装置は、各照射角度において光線を照射し、光線を照射した方向に物体が存在するか否かを検出する。光線を照射した方向に物体が存在する場合には、その物体までの距離を測定する。すなわち、距離測定装置は、光線を照射した走査軸周りでの角度と物体までの距離によって表される２次元距離データを測定する。２次元距離データの測定と同時に、回転装置が回転軸回りに距離測定装置を回転させ、距離測定装置による光線の照射方向が回転軸周りで変更される。その際、回転装置による回転軸周りの回転角（すなわち、距離測定装置が光線を照射した回転軸周りでの角度）がセンサによって検出される。光線を照射した走査軸周りの角度と回転軸周りでの角度が分かれば、光線を照射した方向を特定することができる。このため、演算装置は、距離測定装置で測定された２次元距離データとセンサで検出された回転装置の回転角とを用いて３次元距離データを演算する。
【０００３】
【特許文献１】特表２００１−５２４２１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
３次元測定装置を他の装置に搭載しようとする場合、３次元測定装置の測定範囲や測定精度等の測定条件を測定目的等に応じて変更することが好ましい。例えば、自律移動装置に３次元測定装置を搭載し、３次元測定装置により障害物を検出しようとする場合、自律移動装置の進行方向の空間形状を測定することが重要となる。従って、３次元測定装置には、自立移動装置の進行方向の空間形状のみを測定するよう測定範囲を限定し、あるいは、進行方向の測定精度（解像度）を高くすることが求められる。しかしながら、特許文献１の測定装置では、測定条件を変更することができないため、自律移動装置にとっては不要な領域まで測定されてしまう。また、必要な解像度を得ようとすると測定に長時間を要してしまうという問題が生じる。
上述したように、特許文献１の３次元測定装置は、測定範囲や測定精度等の測定条件を変更できないため、測定目的に応じた測定をすることができないという問題があった。
【０００５】
本発明は、上記した実情に鑑みてなされたものであり、測定目的等に応じて測定条件を変更することができる３次元測定装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の３次元測定装置は、光線を走査軸周りに走査することで光線が走査された走査面上の距離データを測定する距離測定装置と、距離測定装置が取付けられ、距離測定装置を走査軸と平行でない回転軸周りに回転させる回転装置と、回転装置の回転角を検出するセンサと、距離測定装置から入力される距離データとセンサから入力される回転角を用いて３次元距離データを演算する演算装置と、回転装置の回転周期及び／又は回転角度範囲を設定する設定手段と、設定された回転周期及び／又は回転角度範囲で回転装置を駆動する回転制御装置と、を有する。
この３次元測定装置では、回転周期及び／又は回転角度範囲が設定手段によって設定され、回転制御装置が設定された回転周期及び／又は回転角度範囲で回転装置を駆動する。従って、設定手段によって距離測定装置が回転する回転周期及び／又は回転角度範囲変更することができる。
距離測定装置が回転する回転周期を変更すると、距離測定装置が回転する角速度が変更される。距離測定装置が回転する角速度が変更されると、距離測定装置が光線を照射する回転軸周りでの角度ピッチが変更される。距離測定装置が光線を照射する角度ピッチは、３次元距離データ測定時の測定ポイントの密度（すなわち、測定の解像度）である。従って、上述の３次元測定装置は、測定目的等に応じて距離測定装置が回転する周期を設定することで、測定の解像度を変更することができる。
また、距離測定装置が回転する回転角度範囲を変更すると、距離測定装置が光線を走査する走査範囲（すなわち３次元距離データの測定範囲）が変更される。従って、上述の３次元測定装置は、測定目的等に応じて距離測定装置の測定範囲を変更することができる。
【０００７】
上述の３次元測定装置は、回転制御装置が、設定された回転周期及び／又は回転角度範囲を用いて算出された回転軌道に基づいて回転装置を駆動することができる。この場合、算出された回転軌道は、設定された回転角度範囲の中心から所定の角度範囲内では等角速度とされていることが好ましい。
このような構成によれば、回転角度範囲の中心から所定の角度範囲内では、均一な解像度で測定を行うことができる。
【０００８】
上述の３次元測定装置は、演算装置が、距離測定装置による１走査面上を光線が走査する時間と回転装置の角速度を用いて、センサから入力する回転角を補正して３次元距離データを演算することが好ましい。
このような構成によれば、演算装置への距離測定装置からのデータ入力タイミングと、演算装置へのセンサからのデータ入力タイミングとのずれが補正され、精度よく３次元距離データを演算することができる。
【０００９】
また、本発明は、状況に応じて測定条件を変更しながら３次元距離データを測定することによって、障害物を回避しながら目標地点まで移動する自律移動装置を提供する。
すなわち、本発明の自律移動装置は、光線を走査軸周りに走査することで光線が走査された走査面上の距離データを測定する距離測定装置と、距離測定装置が取付けられ、距離測定装置を走査軸と平行でない回転軸周りに回転させる回転装置と、回転装置が搭載される移動体と、回転装置の回転角を検出するセンサと、距離測定装置から入力される距離データとセンサから入力される回転角を用いて３次元距離データを演算する演算装置と、演算装置で演算された３次元距離データを用いて移動体の移動方向及び移動速度を制御する移動体制御装置と、回転装置の回転周期及び／又は回転角度範囲を設定する設定手段と、設定された回転周期及び／又は回転角度範囲で回転装置を駆動する回転制御装置と、を有する。
この自律移動装置でも、設定手段によって回転周期及び／又は回転角度範囲を変更することで、回転装置の回転周期及び／又は回転角度範囲を変更することができる。従って、自律移動装置の状況に応じて設定手段が回転装置の回転周期及び／又は回転角度範囲を変更することで、自律移動装置の状況に応じて距離測定装置の測定条件が変更され、自律移動に必要な３次元距離データを得ることができる。移動体制御装置は、測定した３次元距離データを用いて移動体の移動方向及び移動速度を制御するので、自律移動装置は、障害物を回避しながら目的地点まで移動することができる。
【００１０】
上述の自律移動装置は、設定手段が、移動体の移動速度に応じて回転装置の回転周期を設定することが好ましい。
このような構成によると、移動体の速度に応じて、必要な解像度で３次元距離データを測定することができる。例えば、移動体の移動速度が高い場合には回転周期を短くして、解像度は低くなるが短時間で３次元距離データを取得できるようにする。一方、移動体の移動速度が低い場合には回転周期を長くして、時間をかけて解像度の高い３次元距離データを取得する。
【００１１】
上述の自律移動装置は、演算装置が、移動体の移動量を用いて３次元距離データを補正することが好ましい。
すなわち、距離測定装置で得られる３次元距離データは自律移動装置の位置を基準とした相対的な位置で表される。従って、自律移動装置が移動しながら３次元距離データを測定すると、基準点が移動することとなるので、そのままでは３次元距離データを正確に測定することができない。
上述の自律移動装置によれば、距離測定装置で得られた３次元距離データを移動体の移動量を用いて補正するため、３次元距離データを絶対的な位置で表すことができる。従って、自律移動装置は移動しながらでも、距離測定装置で正確な３次元形状データを測定することができる。
【００１２】
上述の自律移動装置は、自律移動装置の鉛直軸に対する傾斜角を検出するセンサをさらに備え、回転制御装置は、センサで検出された傾斜角に基づいて距離測定装置を回転させる回転角度範囲を修正することが好ましい。
このような構成によれば、自律移動装置が鉛直軸に対して傾斜した場合は、センサで検出された傾斜角に基づいて距離測定装置を回転させる回転角度範囲が修正される。このため、自律移動装置が傾斜していないときと同様の測定範囲（例えば、移動体の進行方向に対して所定の角度範囲内）で、３次元距離データを測定することができる。
【発明を実施するための最良の形態】
【００１３】
下記に詳細に説明する実施例の主要な特徴を最初に列記する。
（形態１）自律移動装置は、自律移動体と、自律移動体上に搭載された３次元測定装置によって構成される。
（形態２）３次元測定装置は、レーザを走査軸周りに走査することでレーザが走査された走査面上の距離データを測定するレーザレンジセンサと、レーザレンジセンサが取付けられ、レーザレンジセンサを走査軸と直行するピッチ軸周りに回転させる回転装置と、回転装置の回転角を検出するセンサと、レーザレンジセンサから入力される距離データとセンサから入力される回転角を用いて３次元距離データを演算する演算装置と、回転装置の回転周期及び／又は回転角度範囲を設定する設定手段と、設定された回転周期及び／又は回転角度範囲で回転装置を駆動する回転制御部を有する。
（形態３）自律移動体は、４つの車輪を駆動することによって移動する４輪台車と、４輪台車の車輪の回転数を制御することによって４輪台車の移動方向及び移動速度を制御する移動体制御装置によって構成される。
（形態４）回転制御装置は、設定された回転周期及び回転角度範囲を用いて算出された回転軌道に基づいて回転装置を駆動する。
（形態５）算出された回転軌道は、設定された回転角度範囲の中心から所定の角度範囲内では等角速度とされている。
（形態６）３次元測定装置の演算装置は、レーザレンジセンサによる１走査面上をレーザが走査する時間と回転装置の角速度を用いて、センサから入力する回転角を補正して３次元距離データを演算する。
（形態７）演算装置は、レーザレンジセンサによるレーザの走査から演算装置への距離データの入力までの時間遅れに基づいて、センサから入力される回転角を補正して３次元距離データを演算する。
（形態８）設定手段は、移動体の移動速度に応じて回転装置の回転周期を設定する。
（形態９）演算装置は、移動体の移動量を用いて３次元距離データを補正する。
【実施例】
【００１４】
本発明の一実施例に係る自律移動装置について図面を参照して説明する。図１及び図２に示すように、自律移動装置１０は、自律移動体１６と、自律移動体１６上に搭載された３次元測定装置１８によって構成されている。
【００１５】
（Ａ）自律移動体１６の構成
自律移動体１６は、４輪台車４０と、４輪台車４０を制御する制御装置１４によって構成されている。
４輪台車４０は、台車本体４２と、台車本体４２を支持する４つの車輪４４ａ〜４４ｄによって構成されている。台車本体４２上には、３次元測定装置１８が搭載されている。車輪４４ａ〜４４ｄにはモータ４６ａ〜４６ｄが接続されている。モータ４６ａ〜４６ｄが回転すると、車輪４４ａ〜４４ｄが回転し、自律移動装置１０は移動する。車輪４４ａ〜４４ｄの回転速度を調節することによって自律移動装置１０の移動速度を調節でき、左右の車輪４４ａ〜４４ｄの回転速度を変えることで自律移動装置１０の移動方向を変更することができる。モータ４６ａ〜４６ｄにはエンコーダ４８ａ〜４８ｄがそれぞれ接続され、エンコーダ４８ａ〜４８ｄによって各モータ４６ａ〜４６ｄの回転量ｏ、ｐ、ｑ、ｒ（すなわち、車輪の回転量）が検出される。エンコーダ４８ａ〜４８ｄは、制御装置１４に電気的に接続されている。エンコーダ４８ａ〜４８ｄで検出した車輪の回転量ｏ、ｐ、ｑ、ｒは制御装置１４に入力される。
制御装置１４は、ＣＰＵ，ＲＯＭ，ＲＡＭを備えたマイクロプロセッサ等によって構成されている。制御装置１４は、台車本体４２に搭載されており、モータ４６ａ〜４６ｄ及びエンコーダ４８ａ〜４８ｄと電気的に接続されている。制御装置１４には図示しない入力装置が接続され、入力装置によって制御装置１４に目的地が設定（入力）される。また、制御装置１４は、後述する３次元測定装置１８の制御装置５２と電気的に接続されている。後で詳述するが、３次元測定装置１８の制御装置５２は３次元マップを算出し、３次元マップは制御装置１４へ入力される。制御装置１４は、入力された３次元マップ及び目的地に基づいて、モータ４６ａ〜４６ｄの目標回転速度を算出する。そして、エンコーダ４８ａ〜４８ｄから入力される回転量ｏ、ｐ、ｑ、ｒに基づいて算出される各モータ４８ａ〜４８ｄの回転速度と、算出された目標回転速度との偏差に基づいて、各モータ４８ａ〜４８ｄに制御指令値を出力する。各モータ４８ａ〜４８ｄが制御指令値に基づいて駆動させることで、自律移動装置１０は目的地に向かって移動する。
また、制御装置１４は、３次元測定装置１８の測定条件（詳しくは、後述する回転装置３０の回転周期Ｔ、回転角度範囲Ｗ及び回転中心Ｃ）を設定し、設定した測定条件を制御装置５２に入力する。また、制御装置１４は、エンコーダ４８ａ〜４８ｄから入力される回転量ｏ，ｐ，ｑ，ｒに基づいて自律移動体１６の位置及び進行方向を算出し、算出された自律移動体１６の位置及び進行方向を制御装置５２に入力する。
【００１６】
（Ｂ）３次元測定装置１８の構成
３次元測定装置１８は、レーザレンジセンサ２０と、レーザレンジセンサ２０を回転させる回転装置３０と、制御装置５２によって構成されている。回転装置３０及び制御装置５２は、４輪台車４０上に設置されている。レーザレンジセンサ２０は、回転装置３０上に取付けられている。
【００１７】
（Ｂ−１）回転装置３０の構成
回転装置３０は、フレーム３５と、モータ３７と、モータ３７の回転角度を検出するエンコーダ３８によって構成される。
フレーム３５は、４輪台車４０上に固定されている基台部３５ａと、基台部３５ａの両端から上方にそれぞれ伸びる二つの縦フレーム３５ｂ、３５ｃによって構成されている。縦フレーム３５ｂ，３５ｃの先端近傍にはそれぞれ貫通孔３６ａ，３６ｂが形成されている（図３参照）。貫通孔３６ａ，３６ｂには、後述するレーザレンジセンサ２０の軸部２２ａ、２２ｂがそれぞれ挿入される。軸部２２ａ，２２ｂが縦フレーム３５ｂ，３５ｃの貫通孔３６ａ，３６ｂにそれぞれ取付けられると、レーザレンジセンサ２０が縦フレーム３５ｂ，３５ｃ間に回転可能に支持される（詳細には、図１に示す回転軸３２周りに回転可能に支持される）。
縦フレーム３５ｂにはモータ３７が設置されている。モータ３７は、レーザレンジセンサ２０の軸部２２ａに接続されている。モータ３７が回転すると、それに応じて軸部２２ａが回転し、軸部２２ａが回転することでレーザレンジセンサ２０が縦フレーム３５ｂ，３５ｃに対して回転軸３２周りに回転する。モータ３７は、制御装置５２と電気的に接続され、制御装置５２から出力される制御指令値に基づいて回転する。したがって、制御装置５２によってレーザレンジセンサ２０を回転させる回転周期Ｔ及び回転範囲Ｗ及び回転範囲中心Ｃは変更可能とされている。
モータ３７には、モータ３７の回転角度θ（レーザレンジセンサ２０から出射されるレーザがｘ軸となす角度θ（以下、鉛直角度θともいう）（図１１参照））を検出するエンコーダ３８が接続されている。エンコーダ３８は、制御装置５２と電気的に接続されており、エンコーダ３８が検出したレーザレンジセンサ２０の鉛直角度θは制御装置５２に入力される。
【００１８】
（Ｂ−２）レーザレンジセンサ２０の構成・作用
レーザレンジセンサ２０は、レーザが出射される角度φ（レーザがｙ軸となす角度φ（以下、水平角度φともいう）（図３参照））を０°〜１８０°の間で変化させながらレーザを走査し、レーザを走査した走査面上の距離データを測定する。レーザレンジセンサ２０によるレーザを出射する水平角度φの変更と同時に回転装置３０によるレーザを出射する鉛直角度θを変更することで、レーザレンジセンサ２０は水平角度φ＝０°〜１８０°及び鉛直角度θ１〜θ２の回転範囲内にレーザを走査し、距離データを測定する。なお、レーザを鉛直方向に変化させる角度範囲θ１〜θ２は、制御装置１４によって設定される。
【００１９】
図３は、レーザレンジセンサ２０の内部構造を模式的に示す図である。図３に示すように、レーザレンジセンサ２０は、フレーム２２と、フレーム２２内に配置された距離測定ユニット２４、ミラー２５、ミラー２５を回転させるモータ２８、及びモータ２８の回転角度を検出するエンコーダ２８ａから構成されている。
【００２０】
フレーム２２の後面側（図３における左側）の断面は方形状に形成され、正面側（図３における右側）の断面は後述する回転軸２３を中心とする半円状に形成されている。
フレーム２２の方形状の部分の側面２２ｃ、２２ｄには軸部２２ａ、２２ｂが形成されている。上述したように、軸部２２ａ、２２ｂは、回転装置３０の縦フレーム３５ｂ、３５ｃの貫通孔３６ａ、３６ｂにそれぞれ挿入されている。フレーム２２の半円状の部分の側面２２ｅは全面にわたって開口し、その開口部は樹脂部材２７によって閉じられている。樹脂部材２７は、波長が９００ｎｍ前後の赤外線光はよく透過するが、その他の波長の光はカットする樹脂材料によって形成されている。樹脂部材２７は、レーザレンジセンサ２０の内部に外部の光が入射するのを防止し、レーザレンジセンサ２０の誤動作を防止する。
【００２１】
フレーム２２の内部であって半円形側面２２ｅの中心に対応する箇所にはミラー２５が配置されている。ミラー２５の板厚は非常に薄く、ミラー２５の表面及び裏面は鏡面状に形成されている。ミラー２５は、回転軸２３に取付けられており、回転軸２３の回転に伴って回転するようになっている。回転軸２３にはモータ２８が接続されている。モータ２８は、ミラー２５を予め設定された周期（本実施例では、２６．４ｍｓｅｃ）で回転させる。モータ２８にはモータ２８の回転角度を検出するエンコーダ２８ａが取り付けられている。すなわち、エンコーダ２８ａは、ミラー２５の回転角度ψ（レーザを出射する水平角度φ）を検出する。エンコーダ２８ａの検出分解能は０．５°である。従って、エンコーダ２８ａは、ミラー２５の回転角度ψが０．５°の整数倍となるタイミングでその回転角度ψを検出する。エンコーダ２８ａは、距離測定ユニット２５と電気的に接続されており、エンコーダ２８ａが検出したミラー２５の回転角度ψは距離測定ユニット２５に入力されるようになっている。
【００２２】
ミラー２５から見てψ＝１８０°の方向には距離測定ユニット２４が配されている。図４に示すように、距離測定ユニット２４は、レーザ光源２４ａ、受光素子２４ｂ、演算装置２６、及びレンズ部２４ｃを備えており、これらは筐体２４ｄ内に設置されている。
【００２３】
レーザ光源２４ａは、波長９００ｎｍ前後の赤外線レーザ光を出射する。レーザ光源２４ａは、演算装置２６によって制御され、所定のタイミングでレーザ光を出射する。
【００２４】
受光素子２４ｂは、レーザ光源２４ａから出射するレーザ光が、直接、入射されない位置に配置されている。受光素子２４ｂは、９００ｎｍ前後の波長の光に対して高感度な受光素子であり、所定以上の強度の光を受けるとＯＮする。また、受光素子２４ｂは演算装置２６と電気的に接続されており、受光素子２４ｂの出力値は演算装置２６に入力されるようになっている。
【００２５】
筐体２４ｄのミラー２５側の側面は、その一部が開口しており、その開口部にレンズ部２４ｃが配置されている。レンズ部２４ｃは、レンズ及びミラー等によって構成された光学部品である。レンズ部２４ｃは、レーザ光源２４ａから出射するレーザ光をミラー２５に導く。ミラー２５に入射した光は、ミラー２５で反射され、レーザレンジセンサ２０外に照射される。また、レーザレンジセンサ２０内に入射する光は、ミラー２５で反射されてレンズ部２４ｃに導かれ、レンズ部２４ｄから受光素子２４ｂへ導かれる。
【００２６】
図５に示すように、演算装置２６には、レーザ光源２４ａ、受光素子２４ｂ及びエンコーダ２８ａが電気的に接続されている。演算装置２６は、レーザ光源２４ａを駆動し、受光素子２４ｂ及びエンコーダ２８ａからの信号を処理する。演算装置２６は、さらに、制御装置５２とＵＳＢケーブル６０によって接続されている。
演算装置２６は、制御部２６ａ、センシング部２６ｂ、カウント部２６ｃ、記憶部２６ｄ、及び演算部２６ｅを備えている。カウント部２６ｃは、電源がＯＮされてからの経過時間をカウントし続ける。制御部２６ａは、エンコーダ２８ａが検出するミラー２５の回転角度ψを検出し、回転角度ψを検出すると同時にレーザ光源２４ａをパルス的に駆動する。これにより、エンコーダ２８ａの回転角度ψの検出タイミングに同期してレーザ光源２４ａからレーザ光がパルス的に出射される。また、制御部２６ａはレーザ光を出射すると同時に、カウント部２６ｃの時間データｊを読み取る。制御部２６ａが検出する回転角度ψ及び時間データｊは記憶部２６ｄに記憶される。センシング部２６ｂは、受光素子２４ｂの検出信号を読取る。読取った時間データｋは記憶部２６ｄに記憶される。演算部２６ｅは、記憶部２６ｄに記憶されている回転角度ψ、時間データｊ、ｋから、レーザ光の照射角度φと、そのレーザ光が反射された位置（障害物等の物体）とレーザレンジセンサ２０間の距離ｄを算出する（図１２参照）。
【００２７】
図６を参照してレーザレンジセンサ２０の動作について説明する。レーザレンジセンサ２０が起動すると、モータ２８が回転して、ミラー２５が２６．４ｍｓｅｃの周期で回転する。ミラー２５の回転角度ψは、エンコーダ２８ａによって検出される。すなわち、エンコーダ２８ａは、ミラー２５の回転角度ψが０．５°の整数倍となるタイミングでその回転角度ψを検出し、その回転角度ψを演算装置２６へ入力する。モータ２８はミラー２５を２６．４ｍｓｅｃの周期で回転させているため、エンコーダ２８ａが回転角度ψを検出する周期は、２６．４ｍｓｅｃ／３６０／２≒３６．７μｓｅｃとなる。なお、ミラー２５は表裏が同様に鏡面状に形成されており、表裏の区別が無い。従って、ミラー２５の回転角度ψ＝０°の場合と回転角度ψ＝１８０°の場合とでは、ミラー２５は全く同じ状態になっているとみなせる。従って、演算装置２６は、エンコーダ２８ａが検出する回転角度がψ＝１８０°となると、回転角度ψ＝０°と判定する。
【００２８】
レーザレンジセンサ２０が起動すると、まず、制御部２６ａはエンコーダ２８ａが検出したミラー２５の回転角度ψを読み取り（ステップＳ２）、読取った回転角度ψが０°であるか否かを判定する（ステップＳ４）。回転角度ψが０°で無い場合（ステップＳ４でＮＯ）は、制御部２６ａは、回転角度ψが０°となるまでステップＳ２とステップＳ４を繰り返し実施する。一方、回転角度ψが０°であると判定する（ステップＳ４でＹＥＳ）と、その旨を示すデータＭをＵＳＢケーブル６０に出力し、ステップＳ６に進む。なお、ＵＳＢケーブル６０に出力されたデータＭは制御装置５２に入力される。
【００２９】
ステップＳ６に進むと、記憶部２６ｄが現在の回転角度ψが０°であることを記憶する。記憶部２６ｄに回転角度ψ＝０°であることを記憶するのとほぼ同時に、制御部２６ａはレーザ光源２４ａのパルス駆動を開始する（ステップＳ８）。これにより、レーザ光源２４ａからレーザ光がパルス的に出射される。
ステップＳ８でレーザ光源２４ａを駆動させると、それと同時に制御部２６ａはカウント部２６ｃでカウントされている時間データｊを読み取る（ステップＳ１０）。読み取った時間データｊは記憶部２６ｄに記憶される。その際、記憶部２６は、時間データｊをステップＳ６で記憶した回転角度ψと関連付けて記憶する。
【００３０】
次に、制御部２６ｂは、受光素子２４ｂがＯＮしたか否かを判定する（ステップＳ１２）。すなわち、ステップＳ８でレーザ光源２４ａからレーザ光が出射されると、そのレーザ光はレンズ部２４ｄを通って距離測定ユニット２４の外部へ出射される。距離測定ユニット２４の外部に出射されたレーザ光は、ψ＝１８０°の方向からミラー２５（詳細には、回転軸２３近傍部分（以下、レーザ原点２３ａという））に入射する。ミラー２５に入射したレーザ光は、ミラー２５に対する入射角と、ミラー２５からの出射角が等しくなるように反射される。上述したとおり、距離測定ユニット２４は固定されている。一方、ミラー２５は回転軸２３を中心に回転する。従って、ミラー２５で反射したレーザ光の反射方向は、ミラー２５の回転角度ψによって決まる。ミラー２５で反射したレーザ光の反射方向を、図３における角度φで表すと、φ＝２ψが成立する。
上述の計算式から明らかなように、ミラーの回転角度ψが０°〜９０°の場合にはレーザの出射角度φは０°〜１８０°となる。また、回転角度ψが９０°〜１８０°の場合には、ステップＳ４の判定によって、レーザ光源２４ａからレーザが出射されない。従って、レーザ光源２４ａから出射されたレーザ光は、角度φ＝０°〜１８０°となる方向へ反射される。
【００３１】
ミラー２５のレーザ原点２３ａで反射されたレーザ光は、樹脂部材２７に入射する。樹脂部材２７は、上述の通り、ミラー２５の回転軸２３を中心とした半円状に形成されており、また、波長９００ｎｍ前後の光を透過する。従って、レーザ原点２３ａで反射したレーザ光は樹脂部材２７に対して垂直に入射し、樹脂部材２７内を透過して外部に出射される。すなわち、レーザレンジセンサ２０から水平角度φとなる方向へレーザ光が出射される。
【００３２】
レーザレンジセンサ２０からレーザ光が出射された方向に物体が存在すると、その物体にレーザ光が照射され、その物体によってレーザ光の乱反射が起きる。乱反射したレーザ光の一部は、レーザレンジセンサ２０内に戻ってミラー２５によって反射され、距離測定ユニット２４のレンズ部２４ｃを介して受光素子２４ｂに導かれる。受光素子２４ｂに導かれる光は、レーザ光源２４ａからのレーザ光が乱反射された光であるため、その波長は９００ｎｍ前後である。受光素子２４ｂは９００ｎｍ前後の波長の光に対して高感度であるので、受光素子２４ｂが乱反射されたレーザ光を受けるとＯＮする。一方、レーザレンジセンサ２０からレーザ光が出射された方向に物体が存在しないと、物体によるレーザ光の乱反射が生じないため、受光素子２４ｂはＯＮしない。したがって、ステップＳ１２で、制御部２６ａは受光素子２４ｂがＯＮしたか否かを判定する。
【００３３】
受光素子２４ｂがＯＮした場合（すなわち、受光素子２４ｂの出力信号をセンシング部２６ｂが検出した場合（ステップＳ１２でＹＥＳ））、制御部２６ａは、受光素子２４ｂがＯＮしたことを検出すると同時に、カウント部２６ｃでカウントされている時間データｋを読み取り、読み取った時間データｋを記憶部２６ｄに記憶する（ステップＳ１４）。その際、記憶部２６ｄには、読取った時間データｋをステップＳ６で記憶された回転角度ψと関連付けて記憶される。すなわち、記憶部２６ｄには、回転角度ψ及び時間データｊ及び時間データｋとによって構成される距離データＡが記憶される。
受光素子２４ｂがＯＮしていない場合（ステップＳ１２でＮＯ）は、制御部２６ａはステップＳ８を実行してからの経過時間が所定時間ｔ（エンコーダ２８ａが回転角度ψを検出する周期である３６．７μｓｅｃよりも短い時間に設定されている。）を経過したか否かを判定する（ステップＳ１６）。所定時間を経過していない場合（ステップＳ１６でＮＯ）は、ステップＳ１２に戻って、ステップＳ１２からの処理を繰返す。一方、所定時間を経過している場合（ステップＳ１６でＹＥＳ）は、制御部２６ａはレーザ光を出射した方向に物体が存在しないと判定し、ステップＳ１０で記憶した時間データｊを記憶部２６ｄから消去して、ステップＳ６で記憶したミラー２５の回転角度ψについての距離データＡをＬ（＝レーザレンジセンサ２０の検出限界距離）とする（ステップＳ１８）。
【００３４】
ステップＳ２０に進むと、制御部２６ａはエンコーダ２８ａが再びミラー２５の回転角度ψを検出するまで待機し、エンコーダ２８ａが回転角度ψを検出すると、制御部２６ａがその回転角度ψを読み取る（ステップＳ２０）。次いで、制御部２６ａはステップＳ２０で読み取った回転角度ψが、９０．５°であるか否かを判定する（ステップＳ２２）。回転角度ψが９０．５°で無い場合（ステップＳ２２でＮＯ）は、ステップＳ６に戻って、ステップＳ６からの処理が実行される。これにより、記憶部２６ｄにはステップＳ２０で読取った回転角度ψについての距離データＡが記憶されることとなる。
【００３５】
以上のように、回転角度ψ＝９０．５°となるまでは、演算装置２６によってステップＳ６〜ステップＳ２２が繰り返し実行される。上述の処理は、回転角度ψ＝０°からψ＝９０°の間で０．５°ピッチで実行される。上述の通り、ミラー２５の回転角度ψと、レーザ光の放出角度φはφ＝２ψの関係である。従って、レーザ光は、φ＝０°から１８０°の間で１°ピッチでレーザレンジセンサ２０から出射されて、そのたびに距離データＡの測定が実行される。
【００３６】
回転角度ψ＝９０．５°となった場合（ステップＳ２２でＹＥＳ）は、演算部２６ｅが、記憶部２６ｄに記憶されている各距離データＡを用いて、レーザレンジセンサ２０からレーザを出射した水平角度φと、レーザレンジセンサ２０からレーザ光が照射された物体までの距離ｄを算出する（ステップＳ２４）。すなわち、角度φは、上述した通り、φ＝２ψによって求められる。距離ｄは、時間データｊと時間データｋの時間差によって求められる（具体的には、ｄ＝（ｋ−ｊ）／ｃ（＝光速）となる）。
演算部２６ｅは、記憶部２６ｄに記憶されている全ての距離データＡに対して上記の演算を実行し、角度φ及び距離ｄによって構成される距離データＢに変換する。変換された各距離データＢは記憶部２６ｄに記憶される。
【００３７】
ステップＳ２６に進むと、ステップＳ２４で変換された全ての距離データＢが、ＵＳＢケーブル６０を介して制御装置５２に出力される（ステップＳ２６）。距離データＢが制御装置５２へ転送されると、演算部２６ｅは、記憶部２６ｄに記憶されている各距離データＡ及び各距離データＢを消去する（ステップＳ２８）。
【００３８】
ステップＳ２４〜Ｓ２８を実行している間も、モータ２８によってミラー２５は回転されている。ステップＳ２４〜Ｓ２８の処理は、ミラー２５が回転角度ψ＝９０．５°からψ＝１８０°（すなわちψ＝０°）となるまでの間に実行されて終了する。ステップＳ２８が終了した後も、ミラー２５は回転され、その間も、制御部２６ａはエンコーダ２８ａによってミラー２５の回転角度ψを検出し（ステップＳ３０）、ミラー２５の回転角度ψが１８０°となったか否かを判定する（ステップＳ３２）。ミラー２５の回転角度ψが１８０°とならない場合（ステップＳ３２でＮＯ）はステップＳ３０に戻り、ミラー２５の回転角度ψ＝１８０°となる（ステップＳ３２でＹＥＳ）と、制御部２６ａは、ψ＝１８０°をψ＝０°とし（ステップＳ３３）、ステップＳ６に戻って、ステップＳ６からの処理が再び実行される。なお、ステップＳ３２においてもステップＳ４と同様に、制御部２６ａは、ψ＝０°とすると、その旨を示すデータＭをＵＳＢケーブル６０を介して制御装置５２に出力する。
【００３９】
以上の説明から明らかなように、レーザレンジセンサ２０は、ミラー２５の回転角度ψが０°〜９０°の期間にステップＳ６〜Ｓ２２を繰り返し実行する。これによって、レーザ原点２３ａから水平角度φ＝０°〜１８０°の方向へレーザ光を出射し、距離データＡが測定される。また、ミラー２５の回転角度ψが９０°〜１８０°の期間にステップＳ２４〜Ｓ２６を実行して、距離データＢを算出し、各距離データＢを制御装置５２へ転送する。レーザレンジセンサ２０が、距離データＡの測定と、距離データＢの算出と、距離データＢの転送を繰り返し実行することによって、所定周期で制御装置５２へ距離データＢが転送される。
【００４０】
また、レーザレンジセンサ２０は、距離データを測定している間も、回転装置３０によって鉛直方向に回転されている。回転装置３０によって回転されることによって、レーザレンジセンサ２０がレーザを出射する鉛直角度θが変更される。従って、レーザレンジセンサ２０は、鉛直角度θを変更しながら水平角度φ＝０°〜１８０°の範囲内で距離データを測定することとなる。従って、回転装置３０によって鉛直角度θの回転範囲を変更することで、レーザレンジセンサ２０の測定範囲を変更することができる。
【００４１】
（Ｂ−３）制御装置５２の構成
制御装置５２は、ＣＰＵ，ＲＯＭ，ＲＡＭを備えたマイクロプロセッサ等によって構成されている。制御装置５２は、レーザレンジセンサ２０とＵＳＢケーブル６０によって接続され、また、回転装置３０及び制御装置１４と電気的に接続されている。
図２に示すように、制御装置５２は、レーザレンジセンサ２０から入力される距離データＢ等を用いて３次元距離データを算出する演算部５２ａと、回転装置３０を制御する回転制御部５２ｂと、レーザレンジセンサ２０から入力される距離データを記憶する記憶部５２ｃを有する。
【００４２】
回転制御部５２ｂは、自律移動体１６の制御装置１４によって設定される回転角度範囲Ｗ、回転中心Ｃ、回転周期Ｔに基づいて回転軌道を生成する。また、回転制御部５２ｂは、生成した回転軌道に基づいて回転装置３０に制御指令値を出力する。これにより、回転装置３０は、生成された回転軌道でレーザレンジセンサ２０を回転させることとなる。
【００４３】
回転制御部５２ｂは、制御装置１４によって設定される回転角度範囲Ｗ、回転中心Ｃ、回転周期Ｔに基づいて上方最大角度及び下方最大角度を算出する。上方最大角度はＣ＋Ｗによって得られる。下方最大角度はＣ−Ｗによって得られる。そして、得られた上方最大角度及び下方最大角度を時間軸に対してＴの周期で配置して回転軌道を生成する。具体的には、上方最大角度及び下方最大角度となるタイミングの前後の所定期間を徐変期間Ｄとし、徐変期間Ｄでは回転角速度ｄθ／ｄｔを一定の回転角加速度で変化させ、また、その他の期間を定角速度期間Ｅとし、定角速度期間Ｅでは回転角速度ｄθ／ｄｔを一定角速度とするように回転軌道を生成する。
図７、図８は、回転制御部５２ｂによって生成されるレーザレンジセンサ２０の回転軌道の例である。図７は、回転角度範囲Ｗ＝Ｗ１、回転中心Ｃ＝０、回転周期Ｔ＝Ｔ１に設定されたときの回転軌道である。図７に示す回転軌道では、上方最大角度が０＋Ｗ１＝Ｗ１、下方最大角度が０−Ｗ１＝−Ｗ１となっている。徐変期間Ｄでは一定の回転角加速度で回転角速度が変化し、定角速度期間Ｅでは回転角速度がｄθ１／ｄｔ（＝一定）とされている。
図８は、回転角度範囲Ｗ＝Ｗ２、回転中心Ｃ＝−Ｗ２、回転周期Ｔ＝Ｔ２に設定されたときの回転軌道である。図８に示す回転軌道では、上方最大角度が−Ｗ２＋Ｗ２＝０、下方最大角度が−Ｗ２−Ｗ２＝−２Ｗ２となっている。叙変期間Ｄでは一定の回転角加速度で回転角速度が変化し、定角速度期間Ｅでは回転角速度がｄθ２／ｄｔとされている。
【００４４】
回転制御部５２ｂは、回転軌道を生成すると、その回転起動に基づいて回転装置３０に制御指令値を出力する。したがって、回転装置３０は、その回転軌道でレーザレンジセンサ２０を回転させる。上述したように、レーザレンジセンサ２０は鉛直角度θの方向にレーザを射出する。従って、レーザレンジセンサ２０は上方最大角度から下方最大角度の間にレーザ光を走査する。すなわち、上方最大角度から下方最大角度の間の角度範囲がレーザレンジセンサ２０の測定範囲となる。
また、レーザレンジセンサ２０が回転する角速度ｄθ／ｄｔが変更されると、レーザレンジセンサ２０がレーザ光を放出する角度θ方向での角度ピッチが変更される。レーザレンジセンサ２０がレーザ光を放出する角度ピッチは、距離データの測定ポイントの密度（すなわち、測定の解像度）である。すなわち、回転角度範囲Ｗ、回転中心Ｃ、回転周期Ｔを設定することによって、レーザレンジセンサ２０の回転角速度ｄθ／ｄｔが変更され、これによって、レーザレンジセンサ２０の測定解像度を変更することができる。
また、回転制御部５２ｂは、定角速度期間Ｅでは、回転角速度ｄθ／ｄｔを一定角速度となるようにレーザレンジセンサ２０を回転させる。従って、回転範囲中心Ｃから所定角度範囲内では、一定の解像度で距離データを測定することができる。
【００４５】
なお、上述した回転角度範囲Ｗ、回転中心Ｃ及び回転周期Ｔは、自律移動装置１０の移動速度に基づいて制御装置１４が設定する。すなわち、自律移動体１６の制御装置１４は、エンコーダ４８ａ〜４８ｄで検出される検出結果に基づいて自律移動体１６の移動速度を算出する。そして、算出された移動速度に基づいて、回転角度範囲Ｗ、回転中心Ｃ及び回転周期Ｔを設定する。これによって、回転制御部５２ｂは、自律移動体１６の移動速度に応じた回転軌道を生成し、その回転軌道に基づいてレーザレンジセンサ２０を回転させる。
【００４６】
本実施例では、自律移動体１６の移動速度が速い場合には回転角度範囲Ｗを狭く設定し、移動速度が遅い場合には回転角度範囲Ｗを広く設定する。これによって、自律移動体１６の移動速度が遅い場合には広い角度範囲の距離データが測定され、自律移動体１６の移動速度が速い場合には必要最小限の範囲の距離データだけが測定される。
また、自律移動体１６の移動速度が速い場合には、回転中心Ｃを下方向（すなわち路面方向）に設定し、遅い場合には正面方向に設定する。これによって、自律移動装置１０の移動速度が速い場合には、自律移動体１６が走行する路面上の距離データが主に測定される。
また、自律移動体１６の移動速度が速い場合には回転周期Ｔを短く設定し、移動速度が遅い場合には長く設定する。すなわち、自律移動体１６の移動速度が速い場合には回転角速度ｄθ／ｄｔが大きくなり、自律移動体１６の移動速度が遅い場合には回転角速度ｄθ／ｄｔが小さくなる。これによって、自律移動体１６の移動速度が速い場合には、より早く障害物を検知することができる。
【００４７】
上述した図７は自律移動体１６の移動速度が遅い場合の回転軌道であり、図８は自律移動体１６の移動速度が速い場合の回転軌道である。図７、図８を比較すると、図７の回転角度範囲Ｗ１は図８の回転範囲Ｗ２よりも大きく設定されている。従って、図７の回転軌道では、より広い範囲の距離データが測定される。また、図７では回転中心Ｃ＝０とされているのに対し、図８では回転中心Ｃ＝−Ｗとされている。従って、図８の回転軌道では床面を中心に測定される。また、図８の回転周期Ｔ２は図７の回転範囲Ｔ１よりも短く設定されている。従って、図８の回転軌道では、より早く障害物を検知することができる。
【００４８】
演算部５２ａは、制御装置１４から入力される自律移動体１６の位置及び進行方向と、記憶部５２ｃに記憶されている距離データＢと、鉛直角度θから３次元距離データを算出して３次元マップを生成する。演算部５２ａが算出した３次元マップは、制御装置１４へ出力される。
【００４９】
図９〜図１２を用いて、演算部５２ａの動作について説明する。図１０に示すように、自律移動装置１０は水平な平面上に置かれた状態で起動される。図１０の位置Ａは、自律移動装置１０が起動された時の位置である。
図９に示すように、自律移動装置１０が起動されると、まず、演算部５２ａが原点の設定を行う（ステップＳ３４）。すなわち、演算部５２ａは、起動時の位置（図１０における位置Ａ）を原点に設定する（詳細には、自律移動装置１０の回転軸３２上の中点３４（基準点３４）を原点に設定する）。また、演算部５２ａは、起動時の自律移動装置１０の正面方向をｘ軸、垂直方向をｚ軸、ｘ軸及びｚ軸に対して直交する方向をｙ軸としたｘｙｚ座標系を設定する。
【００５０】
自律移動装置１０が起動すると、レーザレンジセンサ２０が距離データの取得を開始するとともに、レーザレンジセンサ２０が回転装置３０によって回転される。上述したように、レーザレンジセンサ２０は、ＵＳＢケーブル６０を介して演算部５２ａにデータＭ（すなわち、レーザレンジセンサ２０のミラー２５の回転角度ψが０°である旨を示すデータ）を出力する（ステップＳ３６）。
【００５１】
演算部５２ａにデータＭが入力されると、演算部５２ａは回転装置３０が検出する鉛直角度θを読取る（ステップＳ３８）。鉛直角度θの読み取りは、データＭの入力と略同時に行われる。従って、演算部５２ａが読取る鉛直角度θは、レーザレンジセンサ２０がφ＝０°の方向にレーザを出射したときの鉛直角度θである。
【００５２】
また、演算部５２ａは、自律移動体１６の制御装置１４から、自律移動装置１０の位置（ａ，ｂ）及び向きＶを読取る（ステップＳ４２）。既に説明したように、位置（ａ，ｂ）は基準点３４を基準に算出され、上述のｘｙｚ座標系におけるｘ座標、ｙ座標によって表されており、向きＶはｘ軸に対する角度Ｒによって表されている。なお、ステップＳ４２で読取った位置（ａ，ｂ）及び角度Ｒは、レーザレンジセンサ２０がφ＝０°の方向にレーザを出射したときのものとなる。
【００５３】
上述したように、レーザレンジセンサ２０は、データＭを出力すると、φ＝０°〜１８０°の間にレーザ光を走査させて、各出射角度φにおける距離データＡを取得する。そして、φ＝０°〜１８０°における全ての距離データＡを取得した後に、各距離データＡから距離データＢを算出する。レーザレンジセンサ２０は各距離データＢを算出すると、それらの距離データＢをＵＳＢケーブル６０を介して制御装置５２に出力する。制御装置５２に入力された各距離データＢは記憶部５２ｃに入力される（ステップＳ４４）。
【００５４】
記憶部５２ｃに各距離データＢが入力されると、演算部５２ａは、距離データＢと、位置（ａ，ｂ）と、角度Ｒと、鉛直角度θに基づいて、３次元距離データの演算を行う。以下に、３次元距離データの演算方法について説明する。
【００５５】
ステップＳ４６では、演算部５２ａが、記憶部５２ｃに記憶されている各距離データＢの中から、演算を行う距離データＢを１つ選択する。このとき、演算部５２ａは、記憶部５２ｃに記憶されている各距離データＢの中から、出射角度φが最も小さい距離データＢを選択する。
【００５６】
ステップＳ４８では、ステップＳ４６で選択した距離データＢの出射角度φに基づいて鉛直角度θを補正する。すなわち、ステップＳ３８で演算部５２ａが読取った鉛直角度θは、出射角度φ＝０°の際の鉛直角度θである。レーザレンジセンサ２０は、φ＝０°からφ＝１８０°までレーザ光を走査している間も、回転装置３０によって回転され、鉛直角度θは変更されている。従って、鉛直角度θを用いてφ＝０°以外の距離データＢを演算すると、演算結果に誤差が生じる。従って、鉛直角度θを補正する。鉛直角度θの補正は以下の計算式によって行われる。
θ’ ＝θ+（ｄθ／ｄｔ）・ｔｄ
ここで、θ’ は補正後の鉛直角度であり、ｄθ／ｄｔはθを検出した時のレーザレンジセンサ２０が回転する角速度であり、ｔｄは鉛直角度θが読取られた時間と、距離データＢが検出された時間との時間差である。本実施例では、レーザレンジセンサ２０がφ＝０°〜１８０°の区間にレーザ光を走査する時間は６．６ｍｓｅｃであるので、ｔｄ＝φ／１８０×６．６となる。
なお、ステップＳ４２で演算部５２ａが読取った位置（ａ，ｂ）及び角度Ｒも、出射角度φ＝０°のときのデータである。従って、位置（ａ，ｂ）及び角度Ｒを補正するようにしてもよい。ただし、本実施例では、自律移動装置１０の移動速度が遅く、レーザレンジセンサ２０が距離データを測定する周期の間に自律移動装置１０が移動する量が少ないため、位置（ａ，ｂ）及び角度Ｒを補正しなくても誤差はほとんど生じない。従って、本実施例では位置（ａ，ｂ）及び角度Ｒの補正を行っていない。
【００５７】
演算部５２ａは、鉛直角度θの補正を行うと、レーザレンジセンサ２０が出射したレーザ光が照射された物体の、自律移動装置１０に対する相対位置を算出する（ステップＳ５０）。
相対位置の算出は、距離データＢ（すなわち、出射角度φと距離ｄ）と、補正後の鉛直角度θ’を演算することによって行われる。また、相対位置は、自律移動装置１０の現在の位置（図１０における位置Ｂ）における基準点３４を原点とし、自律移動装置１０の現在の進行方向をｘ’軸、垂直方向をｚ’軸、ｘ’軸及びｚ’軸に直行する方向をｙ’軸としたｘ'ｙ’ｚ’座標系によって表される。
相対座標（ｘ’，ｙ’，ｚ’）は、図１１、図１２に示す基準点３４とレーザ原点２３ａとのオフセットベクトルＯと、レーザの発振軌道を示すベクトルＬとの和によって求められる。オフセットベクトルＯのパラメータ（ｘ’ｏ，ｙ’ｏ，ｚ’ｏ）は、レーザレンジセンサ２０と回転装置３０との取り付け寸法により決まる定数ｘ’ｏ１及びｚ’ｏ１ （図１１参照）と鉛直角度θ’ によって求めることができる。すなわち、
【００５８】
【数１】
2007225342.tif 000003
【００５９】
なお、αは、オフセットベクトルＯとベクトルＬとがなす角度である。
また、ベクトルＬのパラメータ（ｘ’Ｌ，ｙ’Ｌ，ｚ’Ｌ）は、距離ｄ及び出射角度φ及び鉛直角度θ’ によって求めることができる。すなわち、
【００６０】
【数２】
2007225342.tif 000004
【００６１】
従って、レーザが照射された物体の自律移動装置１０に対する相対座標（ｘ’，ｙ’，ｚ’）は、下記の通りとなる。
【００６２】
【数３】
2007225342.tif 000005
【００６３】
演算部５２ａは、相対座標（ｘ’，ｙ’，ｚ’）を算出すると、相対座標（ｘ’，ｙ’，ｚ’）から、レーザが照射された物体のｘｙｚ座標系における絶対座標（ｘ，ｙ，ｚ）を算出する（ステップＳ５２）。絶対座標（ｘ，ｙ，ｚ）は、レーザが照射された物体の絶対位置を示す３次元距離データである。座標（ｘ，ｙ，ｚ）は、座標（ｘ’，ｙ’，ｚ’）を、自律移動装置１０の位置（ａ、ｂ）及び自律移動装置１０の進行方向Ｖとｘ軸とがなす角度Ｒを用いて座標変換することで求められる。すなわち、
【００６４】
【数４】
2007225342.tif 000006
【００６５】
演算部５２ａは、３次元距離データ（ｘ，ｙ，ｚ）を算出すると、ステップＳ３４で設定したｘｙｚ座標に、算出した３次元距離データ（ｘ，ｙ，ｚ）をプロットする（ステップＳ５４）。３次元距離データ（ｘ，ｙ，ｚ）をプロットすると、演算部５２ａはステップＳ４６で選択した距離データＢを記憶部５２ｃから消去する（ステップＳ５６）。距離データＢを記憶部５２ｃから消去すると、演算部５２ａは記憶部５２ｃに距離データＢが存在しているか否かを判定する（ステップＳ５８）。
記憶部５２ｃに距離データＢが存在している場合（ステップＳ５８でＹＥＳ）には、ステップＳ４６に戻って、ステップＳ４６からの処理を実行する。これによって、全ての距離データＢについて３次元距離データ（ｘ，ｙ，ｚ）が算出される。一方、記憶部５２ｃに距離データＢが存在していない場合（ステップＳ５８でＮＯ）には、演算部５２ａはプロットした３次元マップを制御装置１４へ出力し（ステップ６０）、ステップＳ３６に戻り、ステップＳ３６からの処理を実行する。
【００６６】
以上の処理によって、記憶部５２ｃに記憶された全ての距離データＢから３次元距離データ（ｘ，ｙ，ｚ）が算出される。算出された各３次元距離データ（ｘ，ｙ，ｚ）は、ステップＳ５４によってｘｙｚ座標にプロットされる。これによって、ｘｙｚ空間の形状を表す３次元マップが作成される。
なお、ステップＳ４６〜Ｓ６０の処理は、レーザレンジセンサ２０が各距離データＢをＵＳＢケーブル６０に出力（図６のステップＳ２６）してから、次の測定期間が開始される（すなわち、図６のステップＳ３２のデータＭの出力）までの間に実行される。従って、演算部５２ａがステップＳ４６〜Ｓ６０を実行している間に、レーザレンジセンサ２０から演算部５２ａへデータＭが入力されることは無い。
また、演算部５２ａは、レーザレンジセンサ２０が１走査面上に光線を走査する時間（本実施例では６．６ｍｓｅｃ）を用いて算出した時間ｔｄと回転装置３０がレーザレンジセンサ２０を回転させる角速度ｄθ／ｄｔを用いて、回転装置３０から入力される鉛直角度θを補正する。従って、正確な３次元距離データを得ることができる。
【００６７】
次に、制御装置１４が自律移動装置１０の移動方向及び移動速度を制御する処理について、図１３を参照して説明する。
自律移動装置１０を起動する際には、まず、制御装置１４に目的地を入力する（ステップＳ６２）。目的地は、絶対座標系のｘｙ座標値によって指定される。目的地が入力されると、３次元測定装置１８が起動して、３次元距離データの測定を開始する。
【００６８】
３次元測定装置１８が３次元距離データの測定を開始すると、３次元測定装置１８から３次元マップが出力され、その３次元マップは制御装置１４に入力される（ステップＳ６４）。制御装置１４は、入力された３次元マップから、自律移動装置１０の現在の位置と目的地の位置から決まる進行方向に障害物が存在するか否か（障害物の位置）を判断する（ステップＳ６６）。
【００６９】
目的地方向に障害物が無いと判定する（ステップＳ６６でＮＯ）と、制御装置１４はモータ４６ａ〜４６ｄに制御指令値を出力し、自律移動装置１０を目的地の方向へ移動させる（ステップＳ６８）。一方、目的地方向に障害物が有ると判定する（ステップＳ６６でＮＯ）と、制御装置１４は、障害物を回避する方向に自律移動装置１０の進行方向を変更し、その変更した進行方向に自立移動装置１０が移動するようにモータ４６ａ〜４６ｄに制御指令値を出力する（ステップＳ７０）。
なお、制御装置１４は、自律移動装置１０の移動方向に障害物がない場合は、所定速度まで自律移動装置１０の移動速度を加速させる。すなわち、自律移動装置１０の移動方向に障害物がない場合は、自律移動装置１０が移動方向を変化させないため、その移動方向の３次元距離データが十分に得られている。従って、移動速度を加速しても移動装置１０は障害物に衝突することなく移動することができる。
【００７０】
制御装置１４がステップＳ６８またはステップＳ７０によって自律移動装置１０を移動させると、制御装置１４は自立移動装置１０が目的地に到着したか否かを判定する（ステップＳ７４）。自律移動装置１０が目的地に到着していないと判定する（ステップＳ７４でＮＯ）と、ステップＳ６４に戻って、ステップＳ６４からの処理を実行する。自律移動装置１０が目的地に到着したと判定する（ステップＳ７４でＹＥＳ）と、自律移動装置１０の移動を停止する。これによって、自律移動装置１０は障害物を回避して目的地まで移動することができる。
【００７１】
上述した説明から明らかなように、本実施例の自律移動装置１０は、制御装置１４によって回転装置３０の回転周期Ｔ及び回転角度範囲Ｗを設定し、回転制御部５２ｂによって設定された回転周期Ｔ及び回転角度範囲Ｗで回転装置３０を駆動する。従って、レーザレンジセンサ２０による距離データの測定の解像度と測定範囲を任意に変更することができる。
また、本実施例の自律移動装置１０では、回転制御部５２ｂが回転中心Ｃから所定の角度範囲内では、等角速度で回転するように、レーザレンジセンサ２０の回転軌道を生成する。従って回転中心Ｃから所定の角度範囲内では、均一な解像度で距離データの測定を行うことができる。
また、本実施例の自律移動装置１０では、演算部５２ａが、レーザレンジセンサ２０による１走査面上を光線が走査する時間（６．６ｍｓｅｃ）を用いて算出した時間ｔｄと回転装置３０がレーザレンジセンサ２０を回転させる角速度ｄθ／ｄｔを用いて、回転装置３０から入力される鉛直角度θを補正する。従って、データの取得タイミングのずれが補正され、正確に３次元距離データを演算することができる。
また、本実施例の自律移動装置１０では、演算部５２ａが、自律移動装置１０の移動量（すなわち、位置（ａ，ｂ）及び角度Ｒ）を用いて、測定された３次元距離データを補正する。従って、測定された３次元距離データをｘｙｚ座標系（絶対座標系）の座標値に変換することができ、自律移動装置１０は絶対座標系で指定された目的地に障害物を回避しながら移動することができる。
【００７２】
なお、本実施例の自律移動装置１０では、自律移動装置１０の移動速度に応じてレーザレンジセンサ２０を回転させる回転周期Ｔ及び回転角度範囲Ｗ及び回転中心Ｃを設定したが、本発明はこのような実施形態に限られず、他の方法によって回転軌道を設定することもできる。
例えば、自律移動装置１０に、自律移動体１６の鉛直軸に対する傾斜角を検出するジャイロセンサをさらに設け、ジャイロセンサで検出された傾斜角に基づいて回転中心Ｃ及び／又は回転角度範囲Ｗを修正する構成としても良い。このような構成によれば、自律移動装置１０が鉛直軸に対して傾斜した場合にも、ジャイロセンサで検出された傾斜角に基づいてレーザレンジセンサ２０を回転させる回転中心Ｃ及び／又は回転角度範囲Ｗが修正される。これによって、自律移動装置１０は、路面の傾斜状況に応じた測定範囲で、３次元距離データを測定することができる。例えば、ジャイロセンサによって検出された傾斜角に基づいて回転中心Ｃを修正することで、路面が傾斜していないときと同様の測定範囲で３次元距離データを測定することができる
また、自律移動装置１０が凹凸のある路面を走行する場合には、回転中心Ｃを路面方向（すなわち、マイナス側）に設定する構成としても良い。このような構成によれば、レーザレンジセンサ２０の測定範囲が、路面を中心に設定されるので、路面の凹凸を好適に検出することができる。
また、屋内環境において自律移動装置１０が移動する場合には、回転中心Ｃを天井方向（すなわち、プラス側）に設定する構成としても良い。このような構成によれば、レーザレンジセンサ２０が天井の３次元距離データを測定することによって自律移動装置１０の絶対位置を正確に同定することができる。
また、通常時は、回転させずにレーザレンジセンサ２０を起動し、レーザレンジセンサ２０によって障害物が検知された場合にレーザレンジセンサ２０を回転させる構成としても良い。これによって、障害物が検知されない状況では短い周期で進行方向の距離データを測定し、障害物が検知された場合にのみ回転装置によりレーザレンジセンサ２０を回転させて障害物の形状等を測定することができる。
また、上述の実施例では、鉛直角度θを補正する際に、時間ｔｄを計算式によって算出したが、実験を行うことによって時間ｔｄを求めても良い。実験的に時間ｔｄを求めることで、より正確に鉛直角度θを補正することができる。
また、上述の実施例では、自律移動装置１０の位置及び移動方向を、エンコーダ４８ａ〜４８ｄが検出する車輪の回転量ｏ、ｐ、ｑ、ｒから算出していたが、本発明は、このような実施形態に限られない。例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）を利用して、自律移動装置１０の位置及び移動方向を検出しても良い。
また、上述の自律移動装置１０では、回転角度範囲Ｗ、回転中心Ｃ、回転周期Ｔを設定することによって回転軌道が生成されたが、本発明はこのような実施形態に限られない。例えば、上方最大角度や、下方最大角度や、回転角速度ｄθ／ｄｔを設定することによって回転軌道を生成するようにしても良い。
さらに、上述した実施形態では、自律移動体１６の制御装置１４によって回転角度範囲Ｗ、回転中心Ｃ及び回転周期Ｔを設定したが、回転角度範囲Ｗ、回転中心Ｃ及び回転周期Ｔの設定は３次元測定装置１８に別途設けた入力装置等によって行うようにしてもよい。
【００７３】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例をさまざまに変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【００７４】
【図１】本実施例の自律移動装置１０の斜視図。
【図２】本実施例の自律移動装置１０の構成を示すブロック図。
【図３】本実施例のレーザレンジセンサ２０の内部構造図。
【図４】距離測定ユニット２４の拡大図。
【図５】演算装置２６のブロック図。
【図６】演算装置２６の処理を示すフローチャート。
【図７】レーザレンジセンサ２０の首振り運動の軌道を示すグラフ。
【図８】レーザレンジセンサ２０の首振り運動の軌道を示すグラフ。
【図９】演算部５２ａの処理を示すフローチャート。
【図１０】本実施例の自律移動装置１０の動きを示す斜視図。
【図１１】レーザレンジセンサ２０の側面図。
【図１２】レーザレンジセンサ２０の上面図。
【図１３】制御装置１４の処理を示すフローチャート。
【符号の説明】
【００７５】
１０：自律移動装置
１４：制御装置
１６：自律移動体
１８：３次元測定装置
２０：レーザレンジセンサ
２３：回転軸
２３ａ：レーザ原点
２４：距離測定ユニット
２４ａ：レーザ光源
２４ｂ：受光素子
２４ｃ：レンズ部
２５：ミラー
２６：演算装置
２６ａ：制御部
２６ｂ：センシング部
２６ｃ：カウント部
２６ｄ：記憶部
２６ｅ：演算部
２８：モータ
２８ａ：エンコーダ
３０：回転装置
３２：回転軸
３４：基準点
３７：モータ
３８：エンコーダ
４０：４輪台車
４２：台車本体
４４ａ〜４４ｄ：車輪
４６ａ〜４６ｄ：モータ
４８ａ〜４８ｄ：エンコーダ
５２：制御装置
５２ａ：演算部
５２ｂ：回転制御部
５２ｃ：記憶部
【図１】
2007225342.tif 000007
【図２】
2007225342.tif 000008
【図３】
2007225342.tif 000009
【図４】
2007225342.tif 000010
【図５】
2007225342.tif 000011
【図６】
2007225342.tif 000012
【図７】
2007225342.tif 000013
【図８】
2007225342.tif 000014
【図９】
2007225342.tif 000015
【図１０】
2007225342.tif 000016
【図１１】
2007225342.tif 000017
【図１２】
2007225342.tif 000018
【図１３】
2007225342.tif 000019