(57)【要約】【課題】メモリサイズを抑えつつ測定精度を向上させることができる距離測定装置を提供すること。【解決手段】距離計算器は、測距光をパルス光として射出する発光素子１１と、測距光が測定対象物で反射した反射測距光を受光するとともに反射測距光に応じた受光信号を出力する受光素子２１と、受光素子２１から出力された受光信号をアナログ信号からデジタル信号に変換するＡＤコンバータ３５と、互いに異なるメモリサイズを有しＡＤコンバータ３５から出力されたサンプリングデータを記憶する複数のメモリ４１、４６と、複数のメモリ４１、４６に記憶されたサンプリングデータに基づいて距離を計算する距離計算器５１と、を備える。【選択図】図２
2020134454.tif 000002
【特許請求の範囲】
【請求項１】
測定対象物に測距光をパルス光として照射し前記パルス光の往復時間に基づいて前記測定対象物までの距離を測定する距離測定装置であって、
前記測距光を前記パルス光として射出する発光素子と、
前記測距光が前記測定対象物で反射した反射測距光を受光するとともに前記反射測距光に応じた受光信号を出力する受光素子と、
前記受光素子から出力された前記受光信号をアナログ信号からデジタル信号に変換するＡＤコンバータと、
互いに異なるメモリサイズを有し前記ＡＤコンバータから出力されたサンプリングデータを記憶する複数のメモリと、
前記複数のメモリに記憶された前記サンプリングデータに基づいて前記距離を計算する距離計算器と、
を備えたことを特徴とする距離測定装置。
【請求項２】
前記複数のメモリのそれぞれのメモリサイズは、最大測定距離の前記サンプリングデータを記憶するために必要なメモリサイズよりも小さいことを特徴とする請求項１に記載の距離測定装置。
【請求項３】
同じ前記サンプリングデータを同時に前記複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、前記サンプリングデータを前記複数のメモリのそれぞれの最後のアドレスまで記憶させると、前記先頭のアドレスに再び戻り前記サンプリングデータを前記先頭のアドレスから上書きし、前記上書きの際に、前記メモリにすでに記憶された前記サンプリングデータと、前記メモリに新たに記憶させる前記サンプリングデータと、を加算する制御を実行する制御部をさらに備えたことを特徴とする請求項１または２に記載の距離測定装置。
【請求項４】
前記制御部は、前記複数のメモリのそれぞれを所定の大きさのブロックに分け、前記受光信号のパルスデータが記憶された前記複数のメモリの前記ブロックの組合せに基づいて、前記受光信号のパルスデータが記憶された前記アドレスを特定し、
前記距離計算器は、前記受光信号のパルスデータが記憶された前記アドレスに基づいて前記距離を計算することを特徴とする請求項３に記載の距離測定装置。
【請求項５】
前記制御部は、前記ＡＤコンバータから出力された前記サンプリングデータのうち直流成分を引いた値を前記メモリに記憶させることを特徴とする請求項３または４に記載の距離測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、測定対象物にパルス光を照射しパルス光の往復時間に基づいて測定対象物までの距離を測定する距離測定装置に関する。
【背景技術】
【０００２】
特許文献１には、所定の周波数の信号をパルス化したパルス信号を用いて発光素子から測距光をパルス光として射出させ、パルス光が測定対象物で反射した反射測距光を受光素子で受光し、受光素子から出力された受光信号に基づいて測定対象物までの距離を測定する光波距離計が知られている。特許文献１に記載された光波距離計は、長距離測定を行う場合、パルス光の往復時間（遅延時間）に基づき距離測定を行う（ＴＯＦ：Ｔｉｍｅ  ｏｆ  Ｆｌｉｇｈｔ）。
【０００３】
例えば特許文献１に記載された光波距離計のように、ＴＯＦ（Ｔｉｍｅ  ｏｆ  Ｆｌｉｇｈｔ）の原理を用いた距離測定装置は、一般的に、測定対象物で反射して戻ってくるパルス光の波形をＡＤコンバータでサンプリングし、ＡＤコンバータから出力されたサンプリングデータをメモリに記憶する。ＡＤコンバータのサンプリングは、発光素子の発光と同時に開始され、距離測定装置の仕様として設定された最大測定距離に相当する時間以上の時間が経過すると終了する。そのため、ＡＤコンバータから出力されたサンプリングデータの全てをメモリに記憶するためには、メモリサイズは、最大測定距離をサンプリング間隔（距離換算値）で割った値よりも大きい必要がある。サンプリング間隔は、測距光（パルス光）の速度（３×１０８ｍ／ｓ）を用いてサンプリングレート（Ｈｚ）を距離に換算した値である。
【０００４】
ここで、パルス信号を用いて測定対象物までの距離を測定する距離測定装置においては、測定精度（距離の計算精度）の向上が望まれている。距離の計算精度を向上させるための手段として、例えば、サンプリング間隔を細かくしたり、パルス光の幅（パルス幅）を狭くしたりすることが挙げられる。サンプリング間隔が細かいと、測定対象物で反射して戻ってくるパルス光の波形の形状をより詳細に記憶することができる。その結果として、距離の計算精度が向上する。しかし、サンプリング間隔を細かくすると、より大きいメモリサイズが必要になるという問題がある。
【０００５】
また、パルス幅を狭くすると、パルスの変動（ゆらぎ）の範囲が狭くなる。そのため、距離の計算精度が向上する。近年では、パルス幅が例えば１ナノ秒以下のパルス光を生成することが可能である。しかし、パルス幅を狭くすると、より大きいメモリサイズが必要になるという問題がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１６１４１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、前記課題を解決するためになされたものであり、メモリサイズを抑えつつ測定精度を向上させることができる距離測定装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記課題は、本発明によれば、測定対象物に測距光をパルス光として照射し前記パルス光の往復時間に基づいて前記測定対象物までの距離を測定する距離測定装置であって、前記測距光を前記パルス光として射出する発光素子と、前記測距光が前記測定対象物で反射した反射測距光を受光するとともに前記反射測距光に応じた受光信号を出力する受光素子と、前記受光素子から出力された前記受光信号をアナログ信号からデジタル信号に変換するＡＤコンバータと、互いに異なるメモリサイズを有し前記ＡＤコンバータから出力されたサンプリングデータを記憶する複数のメモリと、前記複数のメモリに記憶された前記サンプリングデータに基づいて前記距離を計算する距離計算器と、を備えたことを特徴とする距離測定装置により解決される。
【０００９】
本発明に係る距離測定装置によれば、ＡＤコンバータは、受光素子から出力された受光信号をアナログ信号からデジタル信号に変換してサンプリングデータを出力し、複数のメモリにサンプリングデータを記憶させる。複数のメモリは、互いに異なるメモリサイズを有する。そして、距離計算器は、複数のメモリに記憶されたサンプリングデータに基づいて距離を計算する。ここで、複数のメモリが互いに異なるメモリサイズを有するとともに、サンプリングデータが複数のメモリに記憶されるため、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物までの距離を計算することができる。そのため、各メモリは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを必ずしも有していなくともよい。例えば、各メモリのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。そして、サンプリング間隔を細かくしたり、パルス光の幅（パルス幅）を狭くしたりすることで、より小さなメモリサイズの複数のメモリに対してより多くのサンプリングデータを記憶させることができる。これにより、メモリサイズを抑えつつ測定精度を向上させることができる。
【００１０】
本発明に係る距離測定装置において、好ましくは、前記複数のメモリのそれぞれのメモリサイズは、最大測定距離の前記サンプリングデータを記憶するために必要なメモリサイズよりも小さいことを特徴とする。
【００１１】
本発明に係る距離測定装置によれば、各メモリのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい。そして、サンプリング間隔を細かくしたり、パルス幅を狭くしたりすることで、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さいメモリサイズの複数のメモリに対してより多くのサンプリングデータを記憶させることができる。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。また、各メモリのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さいため、距離測定装置の低消費電力化、小型化、放熱の抑制を実現することができる。
【００１２】
本発明に係る距離測定装置は、好ましくは、同じ前記サンプリングデータを同時に前記複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、前記サンプリングデータを前記複数のメモリのそれぞれの最後のアドレスまで記憶させると、前記先頭のアドレスに再び戻り前記サンプリングデータを前記先頭のアドレスから上書きし、前記上書きの際に、前記メモリにすでに記憶された前記サンプリングデータと、前記メモリに新たに記憶させる前記サンプリングデータと、を加算する制御を実行する制御部をさらに備えたことを特徴とする。
【００１３】
本発明に係る距離測定装置によれば、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部は、同じサンプリングデータを同時に複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、サンプリングデータを複数のメモリのそれぞれの最後のアドレスまで記憶させると、先頭のアドレスに再び戻りサンプリングデータを先頭のアドレスから上書きする。制御部は、この上書きを行う際に、メモリにすでに記憶されたサンプリングデータと、メモリに新たに記憶させるサンプリングデータと、を加算する制御を実行する。そのため、先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、各メモリのアドレスに新たに記憶させるサンプリングデータが、各メモリのアドレスにすでに記憶されたサンプリングデータに積算される。そして、距離計算器は、最大測定距離に相当する時間以上の時間が経過するまでに各メモリのアドレスに積算されたサンプリングデータに基づいて、測定対象物までの距離を計算する。そのため、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物までのより長い距離をより高い精度で計算することができる。これにより、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
【００１４】
本発明に係る距離測定装置において、好ましくは、前記制御部は、前記複数のメモリのそれぞれを所定の大きさのブロックに分け、前記受光信号のパルスデータが記憶された前記複数のメモリの前記ブロックの組合せに基づいて、前記受光信号のパルスデータが記憶された前記アドレスを特定し、前記距離計算器は、前記受光信号のパルスデータが記憶された前記アドレスに基づいて前記距離を計算することを特徴とする。
【００１５】
本発明に係る距離測定装置によれば、制御部は、受光信号のパルスデータが記憶された複数のメモリのブロックの組合せに基づいて、受光信号のパルスデータが記憶されたメモリのアドレスを特定する。そのため、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部は、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて距離を計算する。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。
【００１６】
本発明に係る距離測定装置において、好ましくは、前記制御部は、前記ＡＤコンバータから出力された前記サンプリングデータのうち直流成分を引いた値を前記メモリに記憶させることを特徴とする。
【００１７】
本発明に係る距離測定装置によれば、ＡＤコンバータから出力されたサンプリングデータのうち直流成分を引いた値がメモリに記憶される。そのため、制御部が、メモリにすでに記憶されたサンプリングデータと、メモリに新たに記憶させるサンプリングデータと、を加算する制御を実行する場合であっても、メモリが加算結果の増大により飽和することを抑えることができる。これにより、メモリサイズをより一層抑えつつ測定精度を向上させることができる。
【発明の効果】
【００１８】
本発明によれば、メモリサイズを抑えつつ測定精度を向上させることができる距離測定装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態に係る距離測定装置の測距光学系を示す概略図である。
【図２】本実施形態に係る距離測定装置の演算処理部を示す概略図である。
【図３】本実施形態に係る距離測定装置の発光信号および受光信号を示すタイミングチャートである。
【図４】本実施形態のメモリのメモリサイズを例示する概略図である。
【図５】本実施形態のメモリをブロックに分けた状態を例示する概略図である。
【図６】受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
【図７】受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
【図８】受光信号のパルスデータとメモリのブロックとの他の関係を例示する概略図である。
【図９】本実施形態に係る距離測定装置が測定対象物までの距離を計算する具体例を表すフローチャートである。
【図１０】本実施形態に係る距離測定装置が測定対象物までの距離を計算する具体例を表すフローチャートである。
【図１１】受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
【図１２】受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
【図１３】本実施形態に係る距離測定装置が測定対象物までの距離を計算する第３具体例を表すフローチャートである。
【図１４】本実施形態に係る距離測定装置が測定対象物までの距離を計算する第３具体例を表すフローチャートである。
【発明を実施するための形態】
【００２０】
以下に、本発明の好ましい実施形態を、図面を参照して詳しく説明する。
なお、以下に説明する実施形態は、本発明の好適な具体例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。また、各図面中、同様の構成要素には同一の符号を付して詳細な説明は適宜省略する。
【００２１】
図１は、本発明の実施形態に係る距離測定装置の測距光学系を示す概略図である。
図１に示すように、測距光学系１は、射出光学系２と、受光光学系３と、視準光学系４と、を備える。図１において、説明の便宜上、測定対象物５は、再帰反射体であるプリズムを示している。但し、測定対象物５は、プリズムに限定されるわけではない。また、図１に表した測距光学系１は、本実施形態に係る距離測定装置の測距光学系の一例である。つまり、本実施形態に係る距離測定装置の測距光学系は、図１に表した測距光学系１に限定されるわけではない。
【００２２】
測距光学系１は、測定対象物５に向けられる測距光軸６を有する。射出光学系２は、射出光軸７を有する。受光光学系３は、受光光軸８を有する。視準光学系４は、視準光軸９を有する。
射出光軸７上には、発光素子１１と、集光レンズ１２と、ハーフミラー１３と、偏向ミラー１５、１６と、が設けられる。射出光軸７を通過する測距光は、偏向ミラー１５、１６によって偏向され、測距光軸６と合致する。発光素子１１は、例えばレーザダイオードや、パルスレーザダイオードや、パルスファイバダイオードなどであり、パルス化された信号（パルス信号）に基づいて測距光をパルス光として射出する。なお、パルス信号の波形形状は、特には限定されず、矩形波のパルス信号であってもよく、三角波のパルス信号であってもよい。
【００２３】
測距光軸６上には、対物レンズ１７と、ダイクロイックミラー１８と、が設けられる。ダイクロイックミラー１８は、可視光を透過し、測距光を反射する。測距光軸６がダイクロイックミラー１８を透過した部分は、視準光軸９となっている。視準光軸９上には、接眼レンズ１９が設けられている。
【００２４】
対物レンズ１７、ダイクロイックミラー１８、および接眼レンズ１９等は、視準光学系４を構成する。
集光レンズ１２、ハーフミラー１３、偏向ミラー１５、１６、および対物レンズ１７等は、射出光学系２を構成する。
【００２５】
測距光軸６がダイクロイックミラー１８によって反射された部分は、受光光軸８となっている。受光光軸８上には、光量調整器１４と、受光素子２１と、が設けられている。受光素子２１としては、例えば、フォトダイオードやアバランシフォトダイオード（ＡＰＤ）が用いられる。対物レンズ１７、ダイクロイックミラー１８および光量調整器１４等は、受光光学系３を構成する。
【００２６】
ハーフミラー１３の反射光軸は、内部参照光軸２３として反射鏡２２を経て受光素子２１に導かれている。ハーフミラー１３および反射鏡２２は、内部参照光学系２４を構成している。発光素子１１および受光素子２１のそれぞれは、演算処理部２７に電気的に接続されている。
【００２７】
射出光軸７および内部参照光軸２３には、光路切替器２５が設けられている。光路切替器２５は、射出光軸７と内部参照光軸２３とを択一的に遮断または開放する。光路切替器２５は、ハーフミラー１３を透過した測距光が測定対象物５に向けて射出される状態と、ハーフミラー１３で反射された測距光の一部が内部参照光学系２４に向けて射出される状態と、を切り替える。
【００２８】
次に、測距光学系１の作用について説明する。
発光素子１１からパルス光として発せられて集光レンズ１２で平行光束とされた測距光２８は、対物レンズ１７の中心部を透過して測定対象物５に射出される。
【００２９】
測定対象物５で反射された測距光は、反射測距光２８’として対物レンズ１７に入射し、対物レンズ１７で集光され、ダイクロイックミラー１８で反射され、光量調整器１４で光量調整された後に、受光素子２１に入射する。受光素子２１は、受光した反射測距光２８’に応じた受光信号２９を出力する。
【００３０】
発光素子１１から射出された測距光２８の一部（内部参照光２８”）は、ハーフミラー１３で反射される。光路切替器２５の光路切替えにより、内部参照光軸２３が開放されると、内部参照光２８”が内部参照光学系２４を経て受光素子２１に入射する。受光素子２１は、受光した内部参照光２８”に応じた受光信号を出力する。受光素子２１が反射測距光２８’を受光した際の受光信号の処理は、受光素子２１が内部参照光２８”を受光した際の受光信号の処理と同様である。そこで、本実施形態では、反射測距光２８’の受光信号の処理を例に挙げて説明する。
【００３１】
対物レンズ１７を経て入射する可視光は、ダイクロイックミラー１８を透過し、接眼レンズ１９で集光される。測量者は、接眼レンズ１９を介して入射する可視光により、測定対象物５を視準することができる。
【００３２】
次に、本実施形態に係る距離測定装置の演算処理部２７について説明する。
図２は、本実施形態に係る距離測定装置の演算処理部を示す概略図である。
図３は、本実施形態に係る距離測定装置の発光信号および受光信号を示すタイミングチャートである。
なお、図３の上段に示すタイミングチャートは、ドライバ３３から出力されるパルス信号（発光信号）の発生タイミングを示すタイミングチャートである。言い換えれば、図３の上段に示すタイミングチャートは、発光素子１１の発光タイミングを示すタイミングチャートである。図３の下段に示すタイミングチャートは、受光素子２１から出力される受光信号の発生タイミングを示すタイミングチャートである。
【００３３】
本実施形態の演算処理部２７は、ＦＰＧＡ（Field Programmable Gate Array）３１と、ドライバ３３と、増幅器３４と、ＡＤコンバータ３５と、発振器３６と、処理部５２と、を有する。処理部５２としては、例えばＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などが挙げられる。
【００３４】
ＦＰＧＡ３１は、制御部３２と、レジスタ３７と、第１セレクタ３８と、第１加算器３９と、第１メモリ４１と、第１アドレスカウンタ４２と、第１パルス検出器４３と、第２セレクタ４４と、第２加算器４５と、第２メモリ４６と、第２アドレスカウンタ４７と、第２パルス検出器４８と、精密距離計算器４９と、粗距離計算器５１と、を有する。なお、ＦＰＧＡ３１は、既知のマイクロコンピュータであってもよい。本実施形態の粗距離計算器５１は、本発明の「距離計算器」の一例である。
【００３５】
図２に表したように、本実施形態のＦＰＧＡ３１は、複数のメモリを有する。メモリの数は、２つには限定されず、３つ以上であってもよい。本実施形態の説明では、説明の便宜上、ＦＰＧＡ３１が２つのメモリ（第１メモリ４１および第２メモリ４６）を有する場合を例に挙げる。第１メモリ４１のメモリサイズは、第２メモリ４６のメモリサイズとは異なる。すなわち、第１メモリ４１および第２メモリ４６は、互いに異なるメモリサイズを有する。第１メモリ４１および第２メモリ４６のそれぞれのメモリサイズは、本実施形態に係る距離測定装置の仕様として設定された最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。
【００３６】
制御部３２は、ＡＤコンバータ３５および発振器３６から出力された信号に基づいて所定の周波数を有するパルス信号をドライバ３３に出力する。発振器３６としては、例えば温度補償型水晶発振器（ＴＣＸＯ：Temperature Compensated Crystal Oscillator）などが挙げられる。ドライバ３３は、制御部３２から出力されたパルス信号に基づいて発光素子１１を駆動し、測距光２８をパルス光として所定の時間間隔で射出させる。
【００３７】
すなわち、図３の上段に表したタイミングチャートのように、発光素子１１は、ドライバ３３から出力されたパルス信号（発光信号）に基づいて、測距光２８をパルス光として所定の時間間隔で射出する。発光素子１１は、最大測定距離に相当する時間以上の時間が経過するまで所定の時間間隔で測距光２８を射出し、最大測定距離に相当する時間以上の時間が経過すると測距光２８の射出を終了する。なお、図３では、説明の便宜上、発光の開始から初めてドライバ３３から出力されるパルス信号の発生タイミングのみを表示している。
【００３８】
測定対象物５で反射された測距光２８（すなわち反射測距光２８’）は、パルス光として受光素子２１に入射する。そして、受光素子２１は、受光した反射測距光２８’に応じた受光信号２９を出力する。そのため、図３の下段に表したタイミングチャートのように、受光素子２１の受光信号２９は、パルス出力となる。なお、図３では、説明の便宜上、発光の開始から初めて受光素子２１から出力される受光信号２９の発生タイミングのみを表示している。図３に表したように、受光信号と発光信号との間において、距離測定装置と測定対象物５との直線距離に応じた遅延時間ｔｄが生じている。
【００３９】
受光素子２１から出力された受光信号２９は、増幅器３４で増幅される。増幅器３４により増幅された信号は、ＡＤコンバータ３５に入力される。ＡＤコンバータ３５は、受光素子２１から出力され増幅器３４により増幅された受光信号をアナログ信号からデジタル信号に変換し、サンプリングデータとして出力する。ＡＤコンバータ３５のサンプリングは、発光素子１１の発光と同時に開始され、最大測定距離に相当する時間以上の時間が経過すると終了する。
【００４０】
ＡＤコンバータから出力されたサンプリングデータは、レジスタ３７および第１加算器３９を介して第１メモリ４１に記憶されるとともに、レジスタ３７および第２加算器４５を介して第２メモリ４６に記憶される。すなわち、第１メモリ４１および第２メモリ４６のそれぞれは、ＡＤコンバータから出力されたサンプリングデータを記憶する。このとき、第１メモリ４１および第２メモリ４６は、同じサンプリングデータを同時に記憶する。
【００４１】
レジスタ３７は、例えばラッチ回路として機能し、所定の情報を保持する。レジスタ３７は、ＡＤコンバータから出力されたサンプリングデータとしてのデジタルデータをラッチするフリップ・フロップで、高速に入力されるデータを確実に取り込むことができる。制御部３２は、レジスタ３７を制御し、ＡＤコンバータ３５から出力されたサンプリングデータのうち直流成分を引いた値を第１加算器３９および第２加算器４５に入力してもよい。この場合には、ＡＤコンバータ３５から出力されたサンプリングデータのうち直流成分を引いた値が、第１メモリ４１および第２メモリ４６のそれぞれに記憶される。
【００４２】
第１加算器３９は、第１メモリ４１にすでに記憶されたサンプリングデータと、第１メモリ４１に新たに記憶させるサンプリングデータと、を加算する。本願明細書において「新たに記憶させるサンプリングデータ」とは、ＡＤコンバータから出力されたサンプリングデータに相当する。すなわち、サンプリングデータが第１メモリ４１の先頭のアドレスから第１メモリ４１の最後のアドレスまで初めて記憶される際には、第１セレクタ３８は、制御部３２から送信された制御信号に基づいて「０」を出力する。一方で、サンプリングデータが第１メモリ４１の先頭のアドレスから第１メモリ４１の最後のアドレスまで記憶され、先頭のアドレスに再び戻り上書きされる際には、第１セレクタ３８は、制御部３２から送信された制御信号に基づいて、第１メモリ４１にすでに記憶されたサンプリングデータを出力する。そのため、第１メモリ４１の先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、第１メモリ４１のアドレスに新たに記憶させるサンプリングデータが、第１メモリ４１のアドレスにすでに記憶されたサンプリングデータに積算される。
【００４３】
本願明細書において「初めて記憶される」とは、任意の測定対象物５までの距離を測定する工程のうちで初めて記憶されることをいうものとし、本実施形態に係る距離測定装置が使用され始めてから初めて記憶されることをいうわけではない。
【００４４】
第２加算器４５は、第２メモリ４６にすでに記憶されたサンプリングデータと、第２メモリ４６に新たに記憶させるサンプリングデータと、を加算する。すなわち、サンプリングデータが第２メモリ４６の先頭のアドレスから第２メモリ４６の最後のアドレスまで初めて記憶される際には、第２セレクタ４４は、制御部３２から送信された制御信号に基づいて「０」を出力する。一方で、サンプリングデータが第２メモリ４６の先頭のアドレスから第２メモリ４６の最後のアドレスまで記憶され、先頭のアドレスに再び戻り上書きされる際には、第２セレクタ４４は、制御部３２から送信された制御信号に基づいて、第２メモリ４６にすでに記憶されたサンプリングデータを出力する。そのため、第２メモリ４６の先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、第２メモリ４６のアドレスに新たに記憶させるサンプリングデータが、第２メモリ４６のアドレスにすでに記憶されたサンプリングデータに積算される。
【００４５】
第１アドレスカウンタ４２は、制御部３２から送信された制御信号に基づいて、第１メモリ４１のアドレスを計算し、その計算結果を第１メモリ４１および第１パルス検出器４３に出力する。
第２アドレスカウンタ４７は、制御部３２から送信された制御信号に基づいて、第２メモリ４６のアドレスを計算し、その計算結果を第２メモリ４６および第２パルス検出器４８に出力する。
【００４６】
第１パルス検出器４３は、第１メモリ４１に記憶されたサンプリングデータに基づいて、受光信号のパルスデータを検出し、精密距離計算器４９および粗距離計算器５１に出力する。
第２パルス検出器４８は、第２メモリ４６に記憶されたサンプリングデータに基づいて、受光信号のパルスデータを検出し、粗距離計算器５１に出力する。
【００４７】
粗距離計算器５１は、第１パルス検出器４３および第２パルス検出器４８から出力された受光信号のパルスデータに基づいて測定対象物５までの粗距離を計算する。すなわち、粗距離計算器５１は、第１メモリ４１および第２メモリ４６に記憶されたサンプリングデータに基づいて測定対象物５までの粗距離を計算する。具体的には、粗距離計算器５１は、図３に表した遅延時間ｔｄに基づいて、距離測定装置と測定対象物５との間の距離を計算する（ＴＯＦ：Ｔｉｍｅ  ｏｆ  Ｆｌｉｇｈｔ）。このとき、粗距離計算器５１は、反射測距光２８’の受光信号から計算した粗距離から、内部参照光２８”の受光信号から計算した粗距離を減算する。このように、粗距離計算器５１は、反射測距光２８’から計算した粗距離と内部参照光２８”から計算した粗距離との差を求めることで電気回路である演算処理部２７の温度ドリフト等による影響を除去することができる。そして、粗距離計算器５１は、粗距離の計算結果に関する信号を処理部５２に出力する。
【００４８】
精密距離計算器４９は、第１パルス検出器４３から出力された受光信号のパルスデータに基づいてサンプリング間隔以下の精密距離を計算する。例えば、精密距離計算器４９は、フーリエ変換を用いて精密距離を計算する。このとき、精密距離計算器４９は、反射測距光２８’の受光信号から計算した精密距離から、内部参照光２８”の受光信号から計算した精密距離を減算する。このように、精密距離計算器４９は、反射測距光２８’から計算した精密距離と内部参照光２８”から計算した精密距離との差を求めることで電気回路である演算処理部２７の温度ドリフト等による影響を除去することができる。そして、精密距離計算器４９は、精密距離の計算結果に関する信号を処理部５２に出力する。
【００４９】
処理部５２は、粗距離計算器５１から出力された粗距離値と、精密距離計算器４９から出力された精密距離値と、を加算して、距離測定装置から測定対象物５までの距離値を求める演算処理を実行する。
【００５０】
ここで、前述したように、ＡＤコンバータ３５のサンプリングは、発光素子１１の発光と同時に開始され、最大測定距離に相当する時間以上の時間が経過すると終了する。そのため、サンプリングデータを記憶する１つだけのメモリが設けられている比較例の場合において、ＡＤコンバータから出力されたサンプリングデータの全てをメモリに記憶するためには、メモリサイズは、最大測定距離をサンプリング間隔（距離換算値）で割った値よりも大きい必要がある。サンプリング間隔は、測距光（パルス光）の速度（３×１０８ｍ／ｓ）を用いてサンプリングレート（Ｈｚ）を距離に換算した値である。パルス信号を用いて測定対象物までの距離を測定する距離測定装置においては、測定精度（距離の計算精度）の向上が望まれている一方で、距離の計算精度を向上させるためには、より大きいメモリサイズが必要になるという問題がある。
【００５１】
これに対して、本実施形態に係る距離測定装置は、複数のメモリを備える。複数のメモリサイズは、互いに異なるメモリサイズを有する。図２に表した演算処理部２７の例では、ＦＰＧＡ３１は、２つのメモリ（第１メモリ４１および第２メモリ４６）を有する。第１メモリ４１および第２メモリ４６は、互いに異なるメモリサイズを有する。そして、粗距離計算器５１は、第１メモリ４１および第２メモリ４６に記憶されたサンプリングデータに基づいて測定対象物５までの粗距離を計算する。
【００５２】
第１メモリ４１および第２メモリ４６が互いに異なるメモリサイズを有するとともに、ＡＤコンバータ３５から出力されたサンプリングデータが第１メモリ４１および第２メモリ４６に記憶されるため、粗距離計算器５１は、受光信号のパルスデータが記憶された第１メモリ４１および第２メモリ４６のアドレスに基づいて、測定対象物５までの距離を計算することができる。そのため、第１メモリ４１および第２メモリ４６のそれぞれは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを必ずしも有していなくともよい。例えば、第１メモリ４１および第２メモリ４６のそれぞれのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。そして、サンプリング間隔を細かくしたり、パルス光の幅（パルス幅）を狭くしたりすることで、より小さなメモリサイズの第１メモリ４１および第２メモリ４６に対してより多くのサンプリングデータを記憶させることができる。これにより、メモリサイズを抑えつつ測定精度を向上させることができる。
【００５３】
また、第１メモリ４１および第２メモリ４６のそれぞれのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい場合には、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。さらに、第１メモリ４１および第２メモリ４６のそれぞれのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい場合には、距離測定装置の低消費電力化、小型化、放熱の抑制を実現することができる。
【００５４】
次に、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第１具体例を、図面を参照して説明する。
図４は、本実施形態のメモリのメモリサイズを例示する概略図である。
図５は、本実施形態のメモリをブロックに分けた状態を例示する概略図である。
図６は、受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
図７は、受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
図８は、受光信号のパルスデータとメモリのブロックとの他の関係を例示する概略図である。
図９および図１０は、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第１具体例を表すフローチャートである。
【００５５】
なお、図６および図８の上段に示すタイミングチャートは、図３の上段に示すタイミングチャートに相当する。図６および図８の中段に示すタイミングチャートは、図３の下段に示すタイミングチャートに相当する。図６および図８の下段に示すタイミングチャートは、複数のメモリのブロックの組合せを例示する概略図である。
【００５６】
まず、図４に表したように、互いに異なるメモリサイズを有する第１メモリ４１および第２メモリ４６を用意する（図９のステップＳ１１）。なお、図２に関して前述したように、メモリの数は、２つには限定されず、３つ以上であってもよい。本具体例の説明では、説明の便宜上、２つのメモリ（第１メモリ４１および第２メモリ４６）を用いる場合を例に挙げる。
【００５７】
本具体例では、第１メモリ４１のアドレスの数は、１０２４０である。第１メモリ４１のアドレスは、先頭のアドレスから最後のアドレスまで順に０〜１０２３９である。第２メモリ４６のアドレスの数は、８１９２である。第２メモリ４６のアドレスは、先頭のアドレスから最後のアドレスまで順に０〜８１９１である。そして、第１メモリ４１のアドレスの数と、第２メモリ４６のアドレスの数と、の差をｄ（＝２０４８）とする（図９のステップＳ１１）。
【００５８】
なお、ＡＤコンバータ３５の量子化分解が一定であるとすると、各メモリのアドレスの数は、各メモリのメモリサイズと等価である。また、ＡＤコンバータ３５の量子化分解が一定であるとすると、複数のメモリ同士のアドレスの差は、複数のメモリ同士のメモリサイズの差と等価である。そのため、本具体例では、各メモリのアドレスの数が各メモリのメモリサイズと等価であるものとし、複数のメモリ同士のアドレスの差が複数のメモリ同士のメモリサイズの差と等価であるものとして説明する。
【００５９】
本具体例では、第１メモリ４１および第２メモリ４６のそれぞれのアドレスの数は、第１メモリ４１のアドレスの数と、第２メモリ４６のアドレスの数と、の差ｄの整数倍である。すなわち、第１メモリ４１のアドレスの数（１０２４０）は、アドレス数の差ｄ（２０４８）の５倍である。第２メモリ４６のアドレスの数（８１９２）は、アドレス数の差ｄ（２０４８）の４倍である。なお、第１メモリ４１のアドレスの数（１０２４０）および第２メモリ４６のアドレスの数（８１９２）のそれぞれは、アドレス数の差ｄ（２０４８）の整数倍でなくともよい。
【００６０】
続いて、図５に表したように、第１メモリ４１および第２メモリ４６のそれぞれを、アドレス数の差ｄの大きさ毎にブロックに分ける（図９のステップＳ１２）。本具体例では、第１メモリ４１のアドレスの数がアドレス数の差ｄの５倍であるため、第１メモリ４１は、５つのブロックＸ０〜Ｘ４に分けられる。また、第２メモリ４６のアドレスの数がアドレス数の差ｄの４倍であるため、第２メモリ４６は、４つのブロックＹ０〜Ｙ３に分けられる。
【００６１】
なお、各ブロックの大きさは、アドレス数の差ｄでなくともよい。また、各ブロックの大きさは、第１メモリ４１と第２メモリ４６との間において異なっていてもよい。本具体例では、各ブロックの大きさがアドレス数の差ｄと等しい場合を例に挙げて説明する。
【００６２】
本具体例では、各ブロックＸ０〜Ｘ４、Ｙ０〜Ｙ３のアドレスの数は、アドレス数の差ｄである。例えば、ＡＤコンバータ３５のサンプリングレートが５００ＭＨｚである場合には、サンプリング間隔（距離換算値）は、３００ｍｍである。そのため、本具体例のアドレス数の差ｄ（２０４８）は、３００×２０４８＝６１４４００ｍｍ（６１４．４ｍ）の距離に相当する。
【００６３】
ブロックＸ０のアドレスは、０〜ｄ−１（０〜２０４７）である。ブロックＸ１のアドレスは、ｄ〜２ｄ−１（２０４８〜４０９５）である。ブロックＸ２のアドレスは、２ｄ〜３ｄ−１（４０９６〜６１４３）である。ブロックＸ３のアドレスは、３ｄ〜４ｄ−１（６１４４〜８１９１）である。ブロックＸ４のアドレスは、４ｄ〜５ｄ−１（８１９２〜１０２３９）である。
【００６４】
また、ブロックＹ０のアドレスは、０〜ｄ−１（０〜２０４７）である。ブロックＹ１のアドレスは、ｄ〜２ｄ−１（２０４８〜４０９５）である。ブロックＹ２のアドレスは、２ｄ〜３ｄ−１（４０９６〜６１４３）である。ブロックＹ３のアドレスは、３ｄ〜４ｄ−１（６１４４〜８１９１）である。
【００６５】
続いて、発光素子１１の発光と同時に、ＡＤコンバータ３５による受光信号のサンプリングを開始する（図９のステップＳ１３）。そして、制御部３２は、ＡＤコンバータ３５から出力された同じサンプリングデータを同時に第１メモリ４１および第２メモリ４６のそれぞれの先頭のアドレスから順に記憶させていく（図９のステップＳ１４）。すなわち、制御部３２は、ＡＤコンバータ３５から出力されたサンプリングデータを第１メモリ４１の先頭のアドレス（０）から第１メモリ４１の最後のアドレス（１０２３９）に向かって順に記憶させていく。また、制御部３２は、ＡＤコンバータ３５から出力されたサンプリングデータを第２メモリ４６の先頭のアドレス（０）から第２メモリ４６の最後のアドレス（８１９１）に向かって順に記憶させていく。
【００６６】
続いて、サンプリングデータが第２メモリ４６の最後のアドレス（８１９１）まで記憶されると、第２メモリ４６のすべてが使用されたことになる。また、サンプリングデータが第１メモリ４１の最後のアドレス（１０２３９）まで記憶されると、第１メモリ４１のすべてが使用されたことになる。そこで、制御部３２は、ＡＤコンバータ３５から出力されたサンプリングデータを第１メモリ４１および第２メモリ４６のそれぞれの最後のアドレスまで順に記憶させたか否かを判断する（図９のステップＳ１５）。
【００６７】
サンプリングデータが第２メモリ４６の最後のアドレス（８１９１）まで記憶されていない場合には（図９のステップＳ１５：ＮＯ）、制御部３２は、引き続き、ＡＤコンバータ３５から出力されたサンプリングデータを第２メモリ４６の先頭のアドレス（０）から第２メモリ４６の最後のアドレス（８１９１）に向かって順に記憶させていく（図９のステップＳ１４）。
【００６８】
一方で、サンプリングデータが第２メモリ４６の最後のアドレス（８１９１）まで記憶された場合には（図９のステップＳ１５：ＹＥＳ）、図６に表したように、制御部３２は、第２メモリ４６の先頭のアドレス（０）に再び戻り、ＡＤコンバータ３５から出力されたサンプリングデータを第２メモリ４６の先頭のアドレス（０）から第２メモリ４６の最後のアドレス（８１９１）に向かって順に上書きする（図１０のステップＳ１６）。この上書きの際に、制御部３２は、第２メモリ４６にすでに記憶されたサンプリングデータと、第２メモリ４６に新たに記憶させるサンプリングデータと、を加算し、その加算結果を第２メモリ４６に記憶させる（図１０のステップＳ１６）。
【００６９】
すなわち、サンプリングデータが第２メモリ４６の先頭のアドレス（０）から第２メモリ４６の最後のアドレス（８１９１）まで初めて記憶される際（図６に表した「１周目」の記憶の際）には、第２セレクタ４４は、制御部３２から送信された制御信号に基づいて「０」を出力する。一方で、サンプリングデータが第２メモリ４６の先頭のアドレス（０）から第２メモリ４６の最後のアドレス（８１９１）まで記憶され、先頭のアドレス（０）に再び戻り上書きされる際（図６に表した「２周目」以降の際）には、第２セレクタ４４は、制御部３２から送信された制御信号に基づいて、第２メモリ４６にすでに記憶されたサンプリングデータを出力する。そのため、２周目以降においては、サンプリングデータの上書きが行われる度に、第２メモリ４６のアドレスに新たに記憶させるサンプリングデータが、第２メモリ４６のアドレスにすでに記憶されたサンプリングデータに積算される。
【００７０】
この上書きの際には、制御部３２は、ＡＤコンバータ３５から出力されたサンプリングデータのうち直流成分を引いた値を第１加算器３９および第２加算器４５に入力し、第１メモリ４１および第２メモリ４６のそれぞれに記憶させてもよい。この場合には、ＡＤコンバータ３５から出力されたサンプリングデータのうち直流成分を引いた値が、第１メモリ４１および第２メモリ４６のそれぞれに記憶される。これにより、第２メモリ４６にすでに記憶されたサンプリングデータと、第２メモリ４６に新たに記憶させるサンプリングデータと、が加算されて第２メモリ４６に記憶される場合であっても、第２メモリ４６が加算結果の増大により飽和することを抑えることができる。
【００７１】
図６は、制御部３２が、第１メモリ４１および第２メモリ４６のそれぞれにすでに記憶されたサンプリングデータと、第１メモリ４１および第２メモリ４６のそれぞれに新たに記憶させるサンプリングデータと、を加算しながら上書きする様子を表している。図１０のステップＳ１５に続くステップＳ１４（図１０のステップＳ１５：ＮＯ）に関して前述した制御および図１０のステップＳ１６に関して前述した制御は、第１メモリ４１についても同様に実行される。
【００７２】
続いて、制御部３２は、発光素子１１の発光が開始されてから最大測定距離に相当する時間以上の時間が経過したか否かを判断する（図１０のステップＳ１７）。最大測定距離に相当する時間以上の時間が経過していない場合には（図１０のステップＳ１７：ＮＯ）、制御部３２は、引き続き、図１０のステップＳ１６に関して前述した制御を実行する。
【００７３】
一方で、最大測定距離に相当する時間以上の時間が経過した場合には（図１０のステップＳ１７：ＹＥＳ）、制御部３２は、発光素子１１の発光を停止させるとともにＡＤコンバータ３５による受光信号のサンプリングを停止させ、受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せを判定する（図１０のステップＳ１８）。
【００７４】
図６に表した例では、受光信号のパルスデータは、第１メモリ４１の３周目のブロックＸ２に記憶され、第２メモリ４６の４周目のブロックＹ０に記憶されている。そのため、図７に表したように、受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せは、「第１メモリ４１：ブロックＸ２−第２メモリ４６：ブロックＹ０」である。図６に表したように、第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せは、発光素子１１の発光が開始されてから最大測定距離に相当する時間以上の時間が経過するまでにおいて１通りのみである。
【００７５】
本実施形態に係る距離測定装置では、第１メモリ４１のメモリサイズ（あるいはアドレスの数）、第２メモリ４６のメモリサイズ（あるいはアドレスの数）、および第１メモリ４１のメモリサイズと第２メモリ４６のメモリサイズとの差（あるいはアドレス数の差ｄ）を適宜調整し、第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せが、発光素子１１の発光が開始されてから最大測定距離に相当する時間以上の時間が経過するまでにおいて１通りのみとなるように設定することが望ましい。
【００７６】
続いて、制御部３２は、第１アドレスカウンタ４２を制御し、受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せに基づいて、受光信号のパルスデータが記憶された第１メモリ４１のアドレスを計算する（図１０のステップＳ１９）。例えば、本具体例において、第１メモリ４１の３周目のブロックＸ２の先頭のアドレスは、（５×ｄ）×（３−１）＋（２×ｄ）＝５×２０４８×２＋２×２０４８＝２４５７６である。制御部３２は、第２アドレスカウンタ４７を制御し、受光信号のパルスデータが記憶された第２メモリ４６のアドレスを計算してもよい。第２メモリ４６の４周目のブロックＹ０の先頭のアドレスは、第１メモリ４１の３周目のブロックＸ２の先頭のアドレスと同じである。
【００７７】
このようにして、制御部３２は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いることにより、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器５１は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物５までの粗距離を計算する（図１０のステップＳ１９）。言い換えれば、粗距離計算器５１は、最大測定距離に相当する時間以上の時間が経過するまでにメモリのアドレスに積算されたサンプリングデータに基づいて、測定対象物５までの粗距離を計算する。例えば、粗距離計算器５１は、受光信号のパルスデータが記憶されたメモリのアドレスと、サンプリング間隔（距離換算値）と、の積を計算することにより、測定対象物５までの粗距離を計算する。
【００７８】
なお、図８に表したように、制御部３２は、第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せをパターンに分けて、受光信号のパルスデータが記憶されたメモリのアドレスを計算してもよい（図１０のステップＳ１９）。
【００７９】
すなわち、図８に表した具体例では、第１パターンは、第１メモリ４１のブロックおよび第２メモリ４６のブロックが互いに同じパターンである。受光信号のパルスデータが第１パターンに存在する場合には、制御部３２は、第１メモリ４１または第２メモリ４６のアドレスをそのまま採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８０】
第２パターンは、第１メモリ４１のブロックＸ４と第２メモリ４６のブロックＹ０との組合せのパターンである。受光信号のパルスデータが第２パターンに存在する場合には、制御部３２は、第１メモリ４１のアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８１】
第３パターンは、第１メモリ４１のブロックＸ０〜Ｘ２と第２メモリ４６のブロックＹ１〜Ｙ３との組合せのパターンである。受光信号のパルスデータが第３パターンに存在する場合には、制御部３２は、第１メモリ４１のアドレスと第１メモリ４１のメモリサイズ（本具体例ではアドレスの数：１０２４０）とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８２】
第４パターンは、第１メモリ４１のブロックＸ３〜Ｘ４と第２メモリ４６のブロックＹ０〜Ｙ１との組合せのパターンである。受光信号のパルスデータが第４パターンに存在する場合には、制御部３２は、第１メモリ４１のアドレスと第１メモリ４１のメモリサイズ（本具体例ではアドレスの数：１０２４０）とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８３】
第５パターンは、第１メモリ４１のブロックＸ０〜Ｘ１と第２メモリ４６のブロックＹ２〜Ｙ３との組合せのパターンである。受光信号のパルスデータが第５パターンに存在する場合には、制御部３２は、第１メモリ４１のアドレスと第１メモリ４１のメモリサイズ（本具体例ではアドレスの数：１０２４０）の２倍とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８４】
第６パターンは、第１メモリ４１のブロックＸ２〜Ｘ４と第２メモリ４６のブロックＹ０〜Ｙ２との組合せのパターンである。受光信号のパルスデータが第６パターンに存在する場合には、制御部３２は、第１メモリ４１のアドレスと第１メモリ４１のメモリサイズ（本具体例ではアドレスの数：１０２４０）の２倍とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【００８５】
図８に表したアドレスの計算方法によっても、制御部３２は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いることにより、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器５１は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物５までの粗距離を計算する（図１０のステップＳ１９）。
【００８６】
続いて、精密距離計算器４９は、サンプリング間隔以下の精密距離を、フーリエ変換を用いて計算する（図１０のステップＳ２１）。フーリエ変換を用いた精密距離の計算においては、既知の計算方法を利用することができる。なお、精密距離計算器４９は、フーリエ変換以外の方法を用いて精密距離を計算してもよい。
【００８７】
続いて、処理部５２は、粗距離計算器５１により計算された粗距離値と、精密距離計算器４９により計算された精密距離値と、を加算して、距離測定装置から測定対象物５までの距離値を求める（図１０のステップＳ２２）。
【００８８】
本具体例によれば、制御部３２は、同じサンプリングデータを同時に第１メモリ４１および第２メモリ４６のそれぞれの先頭のアドレスから順に記憶させ、サンプリングデータを第１メモリ４１および第２メモリ４６のそれぞれの最後のアドレスまで記憶させると、先頭のアドレスに再び戻りサンプリングデータを先頭のアドレスから上書きする。制御部３２は、この上書きを行う際に、各メモリ４１、４６にすでに記憶されたサンプリングデータと、各メモリ４１、４６に新たに記憶させるサンプリングデータと、を加算する制御を実行する。そのため、先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、各メモリ４１、４６のアドレスに新たに記憶させるサンプリングデータが、各メモリ４１、４６のアドレスにすでに記憶されたサンプリングデータに積算される。そして、粗距離計算器５１は、最大測定距離に相当する時間以上の時間が経過するまでに各メモリ４１、４６のアドレスに積算されたサンプリングデータに基づいて、測定対象物５までの粗距離を計算する。そのため、各メモリ４１、４６が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、粗距離計算器５１は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物５までのより長い粗距離をより高い精度で計算することができる。これにより、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
【００８９】
また、制御部３２は、受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せに基づいて、受光信号のパルスデータが記憶されたメモリのアドレスを特定する。そのため、各メモリ４１、４６が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部３２は、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器５１は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて粗距離を計算する。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。
【００９０】
また、ＡＤコンバータ３５から出力されたサンプリングデータのうち直流成分を引いた値が第１メモリ４１および第２メモリ４６のそれぞれに記憶される場合には、第１メモリ４１および第２メモリ４６のそれぞれが加算結果の増大により飽和することを抑えることができる。これにより、メモリサイズをより一層抑えつつ測定精度を向上させることができる。
【００９１】
なお、本具体例では、受光信号のパルスデータが１つだけである場合を例に挙げて説明したが、複数の受光信号のパルスデータが存在していてもよい。このような例としては、距離測定装置から相対的に近い距離に存在する測定対象物５（例えば木）により第１の受光信号のパルスデータが存在し、距離測定装置から相対的に遠い距離に存在する測定対象物５（例えば崖）により第２の受光信号のパルスデータが存在する場合などが挙げられる。複数の受光信号のパルスデータが存在する場合であっても、制御部３２は、複数の受光信号のパルスデータのそれぞれが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せに基づいて、複数の受光信号のパルスデータのそれぞれが記憶されたメモリのアドレスを特定することができる。この詳細の説明については、後述する。
【００９２】
また、本具体例において、受光信号のパルスデータが第１メモリ４１の隣り合うブロック同士および第２メモリ４６の隣り合うブロック同士に跨がっている場合には、制御部３２は、第１メモリ４１および第２メモリ４６のそれぞれにおいて受光信号のパルスデータが跨がったブロックの前後のパルスデータを利用することにより見かけ上のアドレスを推定してもよい。
【００９３】
次に、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第２具体例および第３具体例を、図面を参照して説明する。
なお、第２具体例および第３具体例に係る距離測定装置の構成要素が、図４〜図１０に関して前述した第１具体例に係る距離測定装置の構成要素と同様である場合には、重複する説明は適宜省略し、以下、相違点を中心に説明する。
【００９４】
図１１は、受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
図１２は、受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
なお、図１１の上段に示すタイミングチャートは、図３の上段に示すタイミングチャートに相当する。図１１の中段に示すタイミングチャートは、図３の下段に示すタイミングチャートに相当する。図１１の下段に示すタイミングチャートは、複数のメモリのブロックの組合せを例示する概略図である。
【００９５】
第２具体例では、複数の受光信号のパルスデータが存在する場合を説明する。具体的には、図１１に表したように、第１測定対象物により第１受光信号のパルスデータが存在し、第２測定対象物により第２受光信号のパルスデータが存在する場合を説明する。第１受光信号と発光信号との間において、距離測定装置と第１測定対象物との直線距離に応じた第１遅延時間ｔｄ１が生じている。また、第２受光信号と発光信号との間において、距離測定装置と第２測定対象物との直線距離に応じた第２遅延時間ｔｄ２が生じている。
本具体例に係る距離測定装置が測定対象物までの距離を計算する処理は、図９および図１０に表したフローチャートと同様である。
【００９６】
図１１に表した例では、第１受光信号のパルスデータは、第１メモリ４１の２周目のブロックＸ２に記憶され、第２メモリ４６の２周目のブロックＹ３に記憶される。また、第２受光信号のパルスデータは、第１メモリ４１の３周目のブロックＸ２に記憶され、第２メモリ４６の４周目のブロックＹ０に記憶される。そのため、図１２に表したように、第１受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せは、「第１メモリ４１：ブロックＸ２−第２メモリ４６：ブロックＹ３」である。また、第２受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せは、「第１メモリ４１：ブロックＸ２−第２メモリ４６：ブロックＹ０」である。
【００９７】
このように、第１メモリ４１および第２メモリ４６のいずれか一方（本具体例では第１メモリ４１）において複数の受光信号のパルスデータが記憶されたブロックが重複した場合であっても、第１メモリ４１および第２メモリ４６のいずれか他方（本具体例では第２メモリ４６）において複数の受光信号のパルスデータが存在することを確認することができる。そして、制御部３２は、複数の受光信号のパルスデータを確認した方のメモリ（本具体例では第２メモリ４６）あるいは受光信号のパルスデータの数が多い方のメモリ（本具体例では第２メモリ４６）のアドレスカウンタ（本具体例では第２アドレスカウンタ４７）を制御し、複数の受光信号のパルスデータが記憶されたメモリ（本具体例では第２メモリ４６）の複数のアドレスを計算する。
【００９８】
本具体例によれば、第１メモリ４１および第２メモリ４６のいずれか一方において複数の受光信号のパルスデータが記憶されたブロックが重複した場合であっても、制御部３２は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いるとともに、複数の受光信号のパルスデータを確認した方のメモリ（受光信号のパルスデータの数が多い方のメモリ）を参照することにより、複数の受光信号のパルスデータが記憶されたメモリの複数のアドレスを特定することができる。そして、粗距離計算器５１は、複数の受光信号のパルスデータが記憶された複数のアドレスに基づいて、第１測定対象物および第２測定対象物までの粗距離を計算することができる。
【００９９】
図１３および図１４は、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第３具体例を表すフローチャートである。
第３具体例では、測定対象物５の反射率が比較的低い場合を説明する。すなわち、本具体例では、反射測距光２８’に応じた受光信号２９のＳＮ比（signal-noise ratio）が比較的低い場合を説明する。測定対象物５の反射率が比較的低い場合としては、例えば、再帰反射体であるプリズムを使用しない長距離測定の場合や、測定対象物５に対する測距光２８の入射角が比較的小さい場合などが挙げられる。再帰反射体であるプリズムを使用しない長距離測定の具体例としては、例えば、距離測定装置から約数ｋｍ先に存在する測定対象物５としての建物について、ノンプリズム測定（再帰反射体であるプリズムを使用しない距離測定）を行う場合が挙げられる。測定対象物５に対する測距光２８の入射角が比較的小さい具体例としては、例えば、距離測定装置から約数十ｍ先に存在する測定対象物５としてのマンホールの蓋について、距離測定を行う場合が挙げられる。
【０１００】
測定対象物５の反射率が比較的低い場合には、距離の計算のために必要な大きさ（強度）の受光信号２９を発光素子１１の１回の発光だけでは得ることができない場合がある。このような距離測定に対応するため、「（１）発光素子１１の発光、（２）ＡＤコンバータ３５による受光信号のサンプリング、（３）サンプリングデータのメモリ格納（積算）」という手順を何度も繰り返し、パルス信号の波形がメモリ上に浮上するまでサンプリングデータを積算する手法が存在する。サンプリングデータを積算する手法の目的は、受光信号２９が完全にノイズに隠れてしまうほどＳＮ比が低い場合においてパルス信号の波形を浮上させる目的と、パルス信号の波形の外形を把握することができる一方で距離の計算のために必要な大きさの受光信号２９が得られない場合においてＳＮ比を向上させ距離の計算精度を向上させる目的と、の両方を含む。
【０１０１】
このような手法では、パルス信号の波形がメモリ上に浮上するまでの間、パルス信号の波形がメモリ上のいずれのアドレスに浮上するのかが分からない。そのため、このような手法では、一般的に、メモリは、最大測定距離のサンプリングデータの全てを記憶することが可能なメモリサイズを有する必要がある。
【０１０２】
これに対して、本実施形態に係る距離測定装置では、各メモリ４１、４６が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、粗距離計算器５１は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物５までの粗距離を計算することができる。
【０１０３】
具体的に説明すると、まず、図１３および図１４に表したステップＳ３１〜ステップＳ３７は、図９および図１０のステップＳ１１〜ステップＳ１７に関して前述した制御と同様である。ステップＳ３７に続くステップＳ３８において、制御部３２は、第１メモリ４１または第２メモリ４６に記憶されたサンプリングデータを確認する（図１４のステップＳ３８）。続いて、制御部３２は、第１メモリ４１または第２メモリ４６に記憶されたサンプリングデータに基づいた受光信号のパルスデータの大きさが所定の規定値を超えたか否かを判断する（図１４のステップＳ３９）。このとき、制御部３２は、受光信号が完全にノイズに隠れてしまうほどＳＮ比が低い場合においてパルス信号の波形を浮上させるときには、パルス信号の有無を含めて確認する（図１４のステップＳ３９）。
【０１０４】
受光信号のパルスデータの大きさが所定の規定値を超えていない場合には（図１４のステップＳ３９：ＮＯ）、制御部３２は、再び、発光素子１１の発光と同時に、ＡＤコンバータ３５による受光信号のサンプリングを開始する（図１３のステップＳ３３）。一方で、受光信号のパルスデータの大きさが所定の規定値を超えた場合には（図１４のステップＳ３９：ＹＥＳ）、制御部３２は、発光素子１１の発光を停止させるとともにＡＤコンバータ３５による受光信号のサンプリングを停止させ、受光信号のパルスデータが記憶された第１メモリ４１のブロックおよび第２メモリ４６のブロックの組合せを判定する（図１４のステップＳ４１）。図１４に表したステップＳ４２〜ステップＳ４４は、図１０のステップＳ１９〜ステップＳ２２に関して前述した制御と同様である。
【０１０５】
本具体例によれば、第１メモリ４１または第２メモリ４６に記憶されたサンプリングデータに基づいた受光信号のパルスデータの大きさが所定の規定値を超えた場合に、粗距離計算器５１は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物５までの粗距離を計算する。これにより、受光信号のＳＮ比が比較的低い場合であっても、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
【０１０６】
以上、本発明の実施形態について説明した。しかし、本発明は、上記実施形態に限定されず、特許請求の範囲を逸脱しない範囲で種々の変更を行うことができる。上記実施形態の構成は、その一部を省略したり、上記とは異なるように任意に組み合わせたりすることができる。
【符号の説明】
【０１０７】
１：測距光学系、  ２：射出光学系、  ３：受光光学系、  ４：視準光学系、  ５：測定対象物、  ６：測距光軸、  ７：射出光軸、  ８：受光光軸、  ９：視準光軸、  １１：発光素子、  １２：集光レンズ、  １３：ハーフミラー、  １４：光量調整器、  １５：偏向ミラー、  １６：偏向ミラー、  １７：対物レンズ、  １８：ダイクロイックミラー、  １９：接眼レンズ、  ２１：受光素子、  ２２：反射鏡、  ２３：内部参照光軸、  ２４：内部参照光学系、  ２５：光路切替器、  ２７：演算処理部、  ２８：測距光、  ２８’：反射測距光、  ２８”：内部参照光、  ２９：受光信号、  ３１：ＦＰＧＡ、  ３２：制御部、  ３３：ドライバ、  ３４：増幅器、  ３５：ＡＤコンバータ、  ３６：発振器、  ３７：レジスタ、  ３８：第１セレクタ、  ３９：第１加算器、  ４１：第１メモリ、  ４２：第１アドレスカウンタ、  ４３：第１パルス検出器、  ４４：第２セレクタ、  ４５：第２加算器、  ４６：第２メモリ、  ４７：第２アドレスカウンタ、  ４８：第２パルス検出器、  ４９：精密距離計算器、  ５１：粗距離計算器、  ５２：処理部
【図１】
2020134454.tif 000003
【図２】
2020134454.tif 000004
【図３】
2020134454.tif 000005
【図４】
2020134454.tif 000006
【図５】
2020134454.tif 000007
【図６】
2020134454.tif 000008
【図７】
2020134454.tif 000009
【図８】
2020134454.tif 000010
【図９】
2020134454.tif 000011
【図１０】
2020134454.tif 000012
【図１１】
2020134454.tif 000013
【図１２】
2020134454.tif 000014
【図１３】
2020134454.tif 000015
【図１４】
2020134454.tif 000016