(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-28
(45)【発行日】2023-04-05
(54)【発明の名称】距離測定装置
(51)【国際特許分類】
G01C 3/06 20060101AFI20230329BHJP
G01S 17/10 20200101ALI20230329BHJP
【FI】
G01C3/06 120Q
G01S17/10
(21)【出願番号】P 2019031897
(22)【出願日】2019-02-25
【審査請求日】2022-02-21
(73)【特許権者】
【識別番号】000220343
【氏名又は名称】株式会社トプコン
(74)【代理人】
【識別番号】100098796
【氏名又は名称】新井 全
(74)【代理人】
【識別番号】100121647
【氏名又は名称】野口 和孝
(74)【代理人】
【識別番号】100187377
【氏名又は名称】芳野 理之
(72)【発明者】
【氏名】徳田 義克
【審査官】飯村 悠斗
(56)【参考文献】
【文献】特開平07-191144(JP,A)
【文献】特開2015-105870(JP,A)
【文献】特開2010-237067(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 3/06
G01S 17/10
(57)【特許請求の範囲】
【請求項1】
測定対象物に測距光をパルス光として照射し前記パルス光の往復時間に基づいて前記測定対象物までの距離を測定する距離測定装置であって、
前記測距光を前記パルス光として射出する発光素子と、
前記測距光が前記測定対象物で反射した反射測距光を受光するとともに前記反射測距光に応じた受光信号を出力する受光素子と、
前記受光素子から出力された前記受光信号をアナログ信号からデジタル信号に変換するADコンバータと、
互いに異なるメモリサイズを有し前記ADコンバータから出力されたサンプリングデータを記憶する複数のメモリと、
前記複数のメモリに記憶された前記サンプリングデータに基づいて前記距離を計算する距離計算器と、
同じ前記サンプリングデータを同時に前記複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、前記サンプリングデータを前記複数のメモリのそれぞれの最後のアドレスまで記憶させると、前記先頭のアドレスに再び戻り前記サンプリングデータを前記先頭のアドレスから上書きし、前記上書きの際に、前記メモリにすでに記憶された前記サンプリングデータと、前記メモリに新たに記憶させる前記サンプリングデータと、を加算する制御を実行する制御部をさらに備え、
前記制御部は、前記ADコンバータから出力された前記サンプリングデータのうち直流成分を引いた値を前記メモリに記憶させることを特徴とする距離測定装置。
【請求項2】
前記複数のメモリのそれぞれのメモリサイズは、最大測定距離の前記サンプリングデータを記憶するために必要なメモリサイズよりも小さいことを特徴とする請求項1に記載の距離測定装置。
【請求項3】
前記制御部は、前記複数のメモリのそれぞれを所定の大きさのブロックに分け、前記受光信号のパルスデータが記憶された前記複数のメモリの前記ブロックの組合せに基づいて、前記受光信号のパルスデータが記憶された前記アドレスを特定し、
前記距離計算器は、前記受光信号のパルスデータが記憶された前記アドレスに基づいて前記距離を計算することを特徴とする請求項
1又は請求項2に記載の距離測定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、測定対象物にパルス光を照射しパルス光の往復時間に基づいて測定対象物までの距離を測定する距離測定装置に関する。
【背景技術】
【0002】
特許文献1には、所定の周波数の信号をパルス化したパルス信号を用いて発光素子から測距光をパルス光として射出させ、パルス光が測定対象物で反射した反射測距光を受光素子で受光し、受光素子から出力された受光信号に基づいて測定対象物までの距離を測定する光波距離計が知られている。特許文献1に記載された光波距離計は、長距離測定を行う場合、パルス光の往復時間(遅延時間)に基づき距離測定を行う(TOF:Time of Flight)。
【0003】
例えば特許文献1に記載された光波距離計のように、TOF(Time of Flight)の原理を用いた距離測定装置は、一般的に、測定対象物で反射して戻ってくるパルス光の波形をADコンバータでサンプリングし、ADコンバータから出力されたサンプリングデータをメモリに記憶する。ADコンバータのサンプリングは、発光素子の発光と同時に開始され、距離測定装置の仕様として設定された最大測定距離に相当する時間以上の時間が経過すると終了する。そのため、ADコンバータから出力されたサンプリングデータの全てをメモリに記憶するためには、メモリサイズは、最大測定距離をサンプリング間隔(距離換算値)で割った値よりも大きい必要がある。サンプリング間隔は、測距光(パルス光)の速度(3×108m/s)を用いてサンプリングレート(Hz)を距離に換算した値である。
【0004】
ここで、パルス信号を用いて測定対象物までの距離を測定する距離測定装置においては、測定精度(距離の計算精度)の向上が望まれている。距離の計算精度を向上させるための手段として、例えば、サンプリング間隔を細かくしたり、パルス光の幅(パルス幅)を狭くしたりすることが挙げられる。サンプリング間隔が細かいと、測定対象物で反射して戻ってくるパルス光の波形の形状をより詳細に記憶することができる。その結果として、距離の計算精度が向上する。しかし、サンプリング間隔を細かくすると、より大きいメモリサイズが必要になるという問題がある。
【0005】
また、パルス幅を狭くすると、パルスの変動(ゆらぎ)の範囲が狭くなる。そのため、距離の計算精度が向上する。近年では、パルス幅が例えば1ナノ秒以下のパルス光を生成することが可能である。しかし、パルス幅を狭くすると、より大きいメモリサイズが必要になるという問題がある。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、前記課題を解決するためになされたものであり、メモリサイズを抑えつつ測定精度を向上させることができる距離測定装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
前記課題は、本発明によれば、測定対象物に測距光をパルス光として照射し前記パルス光の往復時間に基づいて前記測定対象物までの距離を測定する距離測定装置であって、前記測距光を前記パルス光として射出する発光素子と、前記測距光が前記測定対象物で反射した反射測距光を受光するとともに前記反射測距光に応じた受光信号を出力する受光素子と、前記受光素子から出力された前記受光信号をアナログ信号からデジタル信号に変換するADコンバータと、互いに異なるメモリサイズを有し前記ADコンバータから出力されたサンプリングデータを記憶する複数のメモリと、前記複数のメモリに記憶された前記サンプリングデータに基づいて前記距離を計算する距離計算器と、同じ前記サンプリングデータを同時に前記複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、前記サンプリングデータを前記複数のメモリのそれぞれの最後のアドレスまで記憶させると、前記先頭のアドレスに再び戻り前記サンプリングデータを前記先頭のアドレスから上書きし、前記上書きの際に、前記メモリにすでに記憶された前記サンプリングデータと、前記メモリに新たに記憶させる前記サンプリングデータと、を加算する制御を実行する制御部をさらに備え、前記制御部は、前記ADコンバータから出力された前記サンプリングデータのうち直流成分を引いた値を前記メモリに記憶させることを特徴とする距離測定装置により解決される。
【0009】
本発明に係る距離測定装置によれば、ADコンバータは、受光素子から出力された受光信号をアナログ信号からデジタル信号に変換してサンプリングデータを出力し、複数のメモリにサンプリングデータを記憶させる。複数のメモリは、互いに異なるメモリサイズを有する。そして、距離計算器は、複数のメモリに記憶されたサンプリングデータに基づいて距離を計算する。ここで、複数のメモリが互いに異なるメモリサイズを有するとともに、サンプリングデータが複数のメモリに記憶されるため、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物までの距離を計算することができる。そのため、各メモリは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを必ずしも有していなくともよい。例えば、各メモリのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。そして、サンプリング間隔を細かくしたり、パルス光の幅(パルス幅)を狭くしたりすることで、より小さなメモリサイズの複数のメモリに対してより多くのサンプリングデータを記憶させることができる。これにより、メモリサイズを抑えつつ測定精度を向上させることができる。
また、本発明に係る距離測定装置によれば、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部は、同じサンプリングデータを同時に複数のメモリのそれぞれの先頭のアドレスから順に記憶させ、サンプリングデータを複数のメモリのそれぞれの最後のアドレスまで記憶させると、先頭のアドレスに再び戻りサンプリングデータを先頭のアドレスから上書きする。制御部は、この上書きを行う際に、メモリにすでに記憶されたサンプリングデータと、メモリに新たに記憶させるサンプリングデータと、を加算する制御を実行する。そのため、先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、各メモリのアドレスに新たに記憶させるサンプリングデータが、各メモリのアドレスにすでに記憶されたサンプリングデータに積算される。そして、距離計算器は、最大測定距離に相当する時間以上の時間が経過するまでに各メモリのアドレスに積算されたサンプリングデータに基づいて、測定対象物までの距離を計算する。そのため、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物までのより長い距離をより高い精度で計算することができる。これにより、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
また、本発明に係る距離測定装置によれば、ADコンバータから出力されたサンプリングデータのうち直流成分を引いた値がメモリに記憶される。そのため、制御部が、メモリにすでに記憶されたサンプリングデータと、メモリに新たに記憶させるサンプリングデータと、を加算する制御を実行する場合であっても、メモリが加算結果の増大により飽和することを抑えることができる。これにより、メモリサイズをより一層抑えつつ測定精度を向上させることができる。
【0010】
本発明に係る距離測定装置において、好ましくは、前記複数のメモリのそれぞれのメモリサイズは、最大測定距離の前記サンプリングデータを記憶するために必要なメモリサイズよりも小さいことを特徴とする。
【0011】
本発明に係る距離測定装置によれば、各メモリのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい。そして、サンプリング間隔を細かくしたり、パルス幅を狭くしたりすることで、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さいメモリサイズの複数のメモリに対してより多くのサンプリングデータを記憶させることができる。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。また、各メモリのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さいため、距離測定装置の低消費電力化、小型化、放熱の抑制を実現することができる。
【0014】
本発明に係る距離測定装置において、好ましくは、前記制御部は、前記複数のメモリのそれぞれを所定の大きさのブロックに分け、前記受光信号のパルスデータが記憶された前記複数のメモリの前記ブロックの組合せに基づいて、前記受光信号のパルスデータが記憶された前記アドレスを特定し、前記距離計算器は、前記受光信号のパルスデータが記憶された前記アドレスに基づいて前記距離を計算することを特徴とする。
【0015】
本発明に係る距離測定装置によれば、制御部は、受光信号のパルスデータが記憶された複数のメモリのブロックの組合せに基づいて、受光信号のパルスデータが記憶されたメモリのアドレスを特定する。そのため、各メモリが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部は、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、距離計算器は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて距離を計算する。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。
【発明の効果】
【0018】
本発明によれば、メモリサイズを抑えつつ測定精度を向上させることができる距離測定装置を提供することができる。
【図面の簡単な説明】
【0019】
【
図1】本発明の実施形態に係る距離測定装置の測距光学系を示す概略図である。
【
図2】本実施形態に係る距離測定装置の演算処理部を示す概略図である。
【
図3】本実施形態に係る距離測定装置の発光信号および受光信号を示すタイミングチャートである。
【
図4】本実施形態のメモリのメモリサイズを例示する概略図である。
【
図5】本実施形態のメモリをブロックに分けた状態を例示する概略図である。
【
図6】受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
【
図7】受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
【
図8】受光信号のパルスデータとメモリのブロックとの他の関係を例示する概略図である。
【
図9】本実施形態に係る距離測定装置が測定対象物までの距離を計算する具体例を表すフローチャートである。
【
図10】本実施形態に係る距離測定装置が測定対象物までの距離を計算する具体例を表すフローチャートである。
【
図11】受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
【
図12】受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
【
図13】本実施形態に係る距離測定装置が測定対象物までの距離を計算する第3具体例を表すフローチャートである。
【
図14】本実施形態に係る距離測定装置が測定対象物までの距離を計算する第3具体例を表すフローチャートである。
【発明を実施するための形態】
【0020】
以下に、本発明の好ましい実施形態を、図面を参照して詳しく説明する。
なお、以下に説明する実施形態は、本発明の好適な具体例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。また、各図面中、同様の構成要素には同一の符号を付して詳細な説明は適宜省略する。
【0021】
図1は、本発明の実施形態に係る距離測定装置の測距光学系を示す概略図である。
図1に示すように、測距光学系1は、射出光学系2と、受光光学系3と、視準光学系4と、を備える。
図1において、説明の便宜上、測定対象物5は、再帰反射体であるプリズムを示している。但し、測定対象物5は、プリズムに限定されるわけではない。また、
図1に表した測距光学系1は、本実施形態に係る距離測定装置の測距光学系の一例である。つまり、本実施形態に係る距離測定装置の測距光学系は、
図1に表した測距光学系1に限定されるわけではない。
【0022】
測距光学系1は、測定対象物5に向けられる測距光軸6を有する。射出光学系2は、射出光軸7を有する。受光光学系3は、受光光軸8を有する。視準光学系4は、視準光軸9を有する。
射出光軸7上には、発光素子11と、集光レンズ12と、ハーフミラー13と、偏向ミラー15、16と、が設けられる。射出光軸7を通過する測距光は、偏向ミラー15、16によって偏向され、測距光軸6と合致する。発光素子11は、例えばレーザダイオードや、パルスレーザダイオードや、パルスファイバダイオードなどであり、パルス化された信号(パルス信号)に基づいて測距光をパルス光として射出する。なお、パルス信号の波形形状は、特には限定されず、矩形波のパルス信号であってもよく、三角波のパルス信号であってもよい。
【0023】
測距光軸6上には、対物レンズ17と、ダイクロイックミラー18と、が設けられる。ダイクロイックミラー18は、可視光を透過し、測距光を反射する。測距光軸6がダイクロイックミラー18を透過した部分は、視準光軸9となっている。視準光軸9上には、接眼レンズ19が設けられている。
【0024】
対物レンズ17、ダイクロイックミラー18、および接眼レンズ19等は、視準光学系4を構成する。
集光レンズ12、ハーフミラー13、偏向ミラー15、16、および対物レンズ17等は、射出光学系2を構成する。
【0025】
測距光軸6がダイクロイックミラー18によって反射された部分は、受光光軸8となっている。受光光軸8上には、光量調整器14と、受光素子21と、が設けられている。受光素子21としては、例えば、フォトダイオードやアバランシフォトダイオード(APD)が用いられる。対物レンズ17、ダイクロイックミラー18および光量調整器14等は、受光光学系3を構成する。
【0026】
ハーフミラー13の反射光軸は、内部参照光軸23として反射鏡22を経て受光素子21に導かれている。ハーフミラー13および反射鏡22は、内部参照光学系24を構成している。発光素子11および受光素子21のそれぞれは、演算処理部27に電気的に接続されている。
【0027】
射出光軸7および内部参照光軸23には、光路切替器25が設けられている。光路切替器25は、射出光軸7と内部参照光軸23とを択一的に遮断または開放する。光路切替器25は、ハーフミラー13を透過した測距光が測定対象物5に向けて射出される状態と、ハーフミラー13で反射された測距光の一部が内部参照光学系24に向けて射出される状態と、を切り替える。
【0028】
次に、測距光学系1の作用について説明する。
発光素子11からパルス光として発せられて集光レンズ12で平行光束とされた測距光28は、対物レンズ17の中心部を透過して測定対象物5に射出される。
【0029】
測定対象物5で反射された測距光は、反射測距光28’として対物レンズ17に入射し、対物レンズ17で集光され、ダイクロイックミラー18で反射され、光量調整器14で光量調整された後に、受光素子21に入射する。受光素子21は、受光した反射測距光28’に応じた受光信号29を出力する。
【0030】
発光素子11から射出された測距光28の一部(内部参照光28”)は、ハーフミラー13で反射される。光路切替器25の光路切替えにより、内部参照光軸23が開放されると、内部参照光28”が内部参照光学系24を経て受光素子21に入射する。受光素子21は、受光した内部参照光28”に応じた受光信号を出力する。受光素子21が反射測距光28’を受光した際の受光信号の処理は、受光素子21が内部参照光28”を受光した際の受光信号の処理と同様である。そこで、本実施形態では、反射測距光28’の受光信号の処理を例に挙げて説明する。
【0031】
対物レンズ17を経て入射する可視光は、ダイクロイックミラー18を透過し、接眼レンズ19で集光される。測量者は、接眼レンズ19を介して入射する可視光により、測定対象物5を視準することができる。
【0032】
次に、本実施形態に係る距離測定装置の演算処理部27について説明する。
図2は、本実施形態に係る距離測定装置の演算処理部を示す概略図である。
図3は、本実施形態に係る距離測定装置の発光信号および受光信号を示すタイミングチャートである。
なお、
図3の上段に示すタイミングチャートは、ドライバ33から出力されるパルス信号(発光信号)の発生タイミングを示すタイミングチャートである。言い換えれば、
図3の上段に示すタイミングチャートは、発光素子11の発光タイミングを示すタイミングチャートである。
図3の下段に示すタイミングチャートは、受光素子21から出力される受光信号の発生タイミングを示すタイミングチャートである。
【0033】
本実施形態の演算処理部27は、FPGA(Field Programmable Gate Array)31と、ドライバ33と、増幅器34と、ADコンバータ35と、発振器36と、処理部52と、を有する。処理部52としては、例えばCPU(Central Processing Unit)やDSP(Digital Signal Processor)などが挙げられる。
【0034】
FPGA31は、制御部32と、レジスタ37と、第1セレクタ38と、第1加算器39と、第1メモリ41と、第1アドレスカウンタ42と、第1パルス検出器43と、第2セレクタ44と、第2加算器45と、第2メモリ46と、第2アドレスカウンタ47と、第2パルス検出器48と、精密距離計算器49と、粗距離計算器51と、を有する。なお、FPGA31は、既知のマイクロコンピュータであってもよい。本実施形態の粗距離計算器51は、本発明の「距離計算器」の一例である。
【0035】
図2に表したように、本実施形態のFPGA31は、複数のメモリを有する。メモリの数は、2つには限定されず、3つ以上であってもよい。本実施形態の説明では、説明の便宜上、FPGA31が2つのメモリ(第1メモリ41および第2メモリ46)を有する場合を例に挙げる。第1メモリ41のメモリサイズは、第2メモリ46のメモリサイズとは異なる。すなわち、第1メモリ41および第2メモリ46は、互いに異なるメモリサイズを有する。第1メモリ41および第2メモリ46のそれぞれのメモリサイズは、本実施形態に係る距離測定装置の仕様として設定された最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。
【0036】
制御部32は、ADコンバータ35および発振器36から出力された信号に基づいて所定の周波数を有するパルス信号をドライバ33に出力する。発振器36としては、例えば温度補償型水晶発振器(TCXO:Temperature Compensated Crystal Oscillator)などが挙げられる。ドライバ33は、制御部32から出力されたパルス信号に基づいて発光素子11を駆動し、測距光28をパルス光として所定の時間間隔で射出させる。
【0037】
すなわち、
図3の上段に表したタイミングチャートのように、発光素子11は、ドライバ33から出力されたパルス信号(発光信号)に基づいて、測距光28をパルス光として所定の時間間隔で射出する。発光素子11は、最大測定距離に相当する時間以上の時間が経過するまで所定の時間間隔で測距光28を射出し、最大測定距離に相当する時間以上の時間が経過すると測距光28の射出を終了する。なお、
図3では、説明の便宜上、発光の開始から初めてドライバ33から出力されるパルス信号の発生タイミングのみを表示している。
【0038】
測定対象物5で反射された測距光28(すなわち反射測距光28’)は、パルス光として受光素子21に入射する。そして、受光素子21は、受光した反射測距光28’に応じた受光信号29を出力する。そのため、
図3の下段に表したタイミングチャートのように、受光素子21の受光信号29は、パルス出力となる。なお、
図3では、説明の便宜上、発光の開始から初めて受光素子21から出力される受光信号29の発生タイミングのみを表示している。
図3に表したように、受光信号と発光信号との間において、距離測定装置と測定対象物5との直線距離に応じた遅延時間tdが生じている。
【0039】
受光素子21から出力された受光信号29は、増幅器34で増幅される。増幅器34により増幅された信号は、ADコンバータ35に入力される。ADコンバータ35は、受光素子21から出力され増幅器34により増幅された受光信号をアナログ信号からデジタル信号に変換し、サンプリングデータとして出力する。ADコンバータ35のサンプリングは、発光素子11の発光と同時に開始され、最大測定距離に相当する時間以上の時間が経過すると終了する。
【0040】
ADコンバータから出力されたサンプリングデータは、レジスタ37および第1加算器39を介して第1メモリ41に記憶されるとともに、レジスタ37および第2加算器45を介して第2メモリ46に記憶される。すなわち、第1メモリ41および第2メモリ46のそれぞれは、ADコンバータから出力されたサンプリングデータを記憶する。このとき、第1メモリ41および第2メモリ46は、同じサンプリングデータを同時に記憶する。
【0041】
レジスタ37は、例えばラッチ回路として機能し、所定の情報を保持する。レジスタ37は、ADコンバータから出力されたサンプリングデータとしてのデジタルデータをラッチするフリップ・フロップで、高速に入力されるデータを確実に取り込むことができる。制御部32は、レジスタ37を制御し、ADコンバータ35から出力されたサンプリングデータのうち直流成分を引いた値を第1加算器39および第2加算器45に入力してもよい。この場合には、ADコンバータ35から出力されたサンプリングデータのうち直流成分を引いた値が、第1メモリ41および第2メモリ46のそれぞれに記憶される。
【0042】
第1加算器39は、第1メモリ41にすでに記憶されたサンプリングデータと、第1メモリ41に新たに記憶させるサンプリングデータと、を加算する。本願明細書において「新たに記憶させるサンプリングデータ」とは、ADコンバータから出力されたサンプリングデータに相当する。すなわち、サンプリングデータが第1メモリ41の先頭のアドレスから第1メモリ41の最後のアドレスまで初めて記憶される際には、第1セレクタ38は、制御部32から送信された制御信号に基づいて「0」を出力する。一方で、サンプリングデータが第1メモリ41の先頭のアドレスから第1メモリ41の最後のアドレスまで記憶され、先頭のアドレスに再び戻り上書きされる際には、第1セレクタ38は、制御部32から送信された制御信号に基づいて、第1メモリ41にすでに記憶されたサンプリングデータを出力する。そのため、第1メモリ41の先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、第1メモリ41のアドレスに新たに記憶させるサンプリングデータが、第1メモリ41のアドレスにすでに記憶されたサンプリングデータに積算される。
【0043】
本願明細書において「初めて記憶される」とは、任意の測定対象物5までの距離を測定する工程のうちで初めて記憶されることをいうものとし、本実施形態に係る距離測定装置が使用され始めてから初めて記憶されることをいうわけではない。
【0044】
第2加算器45は、第2メモリ46にすでに記憶されたサンプリングデータと、第2メモリ46に新たに記憶させるサンプリングデータと、を加算する。すなわち、サンプリングデータが第2メモリ46の先頭のアドレスから第2メモリ46の最後のアドレスまで初めて記憶される際には、第2セレクタ44は、制御部32から送信された制御信号に基づいて「0」を出力する。一方で、サンプリングデータが第2メモリ46の先頭のアドレスから第2メモリ46の最後のアドレスまで記憶され、先頭のアドレスに再び戻り上書きされる際には、第2セレクタ44は、制御部32から送信された制御信号に基づいて、第2メモリ46にすでに記憶されたサンプリングデータを出力する。そのため、第2メモリ46の先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、第2メモリ46のアドレスに新たに記憶させるサンプリングデータが、第2メモリ46のアドレスにすでに記憶されたサンプリングデータに積算される。
【0045】
第1アドレスカウンタ42は、制御部32から送信された制御信号に基づいて、第1メモリ41のアドレスを計算し、その計算結果を第1メモリ41および第1パルス検出器43に出力する。
第2アドレスカウンタ47は、制御部32から送信された制御信号に基づいて、第2メモリ46のアドレスを計算し、その計算結果を第2メモリ46および第2パルス検出器48に出力する。
【0046】
第1パルス検出器43は、第1メモリ41に記憶されたサンプリングデータに基づいて、受光信号のパルスデータを検出し、精密距離計算器49および粗距離計算器51に出力する。
第2パルス検出器48は、第2メモリ46に記憶されたサンプリングデータに基づいて、受光信号のパルスデータを検出し、粗距離計算器51に出力する。
【0047】
粗距離計算器51は、第1パルス検出器43および第2パルス検出器48から出力された受光信号のパルスデータに基づいて測定対象物5までの粗距離を計算する。すなわち、粗距離計算器51は、第1メモリ41および第2メモリ46に記憶されたサンプリングデータに基づいて測定対象物5までの粗距離を計算する。具体的には、粗距離計算器51は、
図3に表した遅延時間tdに基づいて、距離測定装置と測定対象物5との間の距離を計算する(TOF:Time of Flight)。このとき、粗距離計算器51は、反射測距光28’の受光信号から計算した粗距離から、内部参照光28”の受光信号から計算した粗距離を減算する。このように、粗距離計算器51は、反射測距光28’から計算した粗距離と内部参照光28”から計算した粗距離との差を求めることで電気回路である演算処理部27の温度ドリフト等による影響を除去することができる。そして、粗距離計算器51は、粗距離の計算結果に関する信号を処理部52に出力する。
【0048】
精密距離計算器49は、第1パルス検出器43から出力された受光信号のパルスデータに基づいてサンプリング間隔以下の精密距離を計算する。例えば、精密距離計算器49は、フーリエ変換を用いて精密距離を計算する。このとき、精密距離計算器49は、反射測距光28’の受光信号から計算した精密距離から、内部参照光28”の受光信号から計算した精密距離を減算する。このように、精密距離計算器49は、反射測距光28’から計算した精密距離と内部参照光28”から計算した精密距離との差を求めることで電気回路である演算処理部27の温度ドリフト等による影響を除去することができる。そして、精密距離計算器49は、精密距離の計算結果に関する信号を処理部52に出力する。
【0049】
処理部52は、粗距離計算器51から出力された粗距離値と、精密距離計算器49から出力された精密距離値と、を加算して、距離測定装置から測定対象物5までの距離値を求める演算処理を実行する。
【0050】
ここで、前述したように、ADコンバータ35のサンプリングは、発光素子11の発光と同時に開始され、最大測定距離に相当する時間以上の時間が経過すると終了する。そのため、サンプリングデータを記憶する1つだけのメモリが設けられている比較例の場合において、ADコンバータから出力されたサンプリングデータの全てをメモリに記憶するためには、メモリサイズは、最大測定距離をサンプリング間隔(距離換算値)で割った値よりも大きい必要がある。サンプリング間隔は、測距光(パルス光)の速度(3×108m/s)を用いてサンプリングレート(Hz)を距離に換算した値である。パルス信号を用いて測定対象物までの距離を測定する距離測定装置においては、測定精度(距離の計算精度)の向上が望まれている一方で、距離の計算精度を向上させるためには、より大きいメモリサイズが必要になるという問題がある。
【0051】
これに対して、本実施形態に係る距離測定装置は、複数のメモリを備える。複数のメモリサイズは、互いに異なるメモリサイズを有する。
図2に表した演算処理部27の例では、FPGA31は、2つのメモリ(第1メモリ41および第2メモリ46)を有する。第1メモリ41および第2メモリ46は、互いに異なるメモリサイズを有する。そして、粗距離計算器51は、第1メモリ41および第2メモリ46に記憶されたサンプリングデータに基づいて測定対象物5までの粗距離を計算する。
【0052】
第1メモリ41および第2メモリ46が互いに異なるメモリサイズを有するとともに、ADコンバータ35から出力されたサンプリングデータが第1メモリ41および第2メモリ46に記憶されるため、粗距離計算器51は、受光信号のパルスデータが記憶された第1メモリ41および第2メモリ46のアドレスに基づいて、測定対象物5までの距離を計算することができる。そのため、第1メモリ41および第2メモリ46のそれぞれは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを必ずしも有していなくともよい。例えば、第1メモリ41および第2メモリ46のそれぞれのメモリサイズは、最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さくともよい。そして、サンプリング間隔を細かくしたり、パルス光の幅(パルス幅)を狭くしたりすることで、より小さなメモリサイズの第1メモリ41および第2メモリ46に対してより多くのサンプリングデータを記憶させることができる。これにより、メモリサイズを抑えつつ測定精度を向上させることができる。
【0053】
また、第1メモリ41および第2メモリ46のそれぞれのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい場合には、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。さらに、第1メモリ41および第2メモリ46のそれぞれのメモリサイズが最大測定距離のサンプリングデータを記憶するために必要なメモリサイズよりも小さい場合には、距離測定装置の低消費電力化、小型化、放熱の抑制を実現することができる。
【0054】
次に、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第1具体例を、図面を参照して説明する。
図4は、本実施形態のメモリのメモリサイズを例示する概略図である。
図5は、本実施形態のメモリをブロックに分けた状態を例示する概略図である。
図6は、受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
図7は、受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
図8は、受光信号のパルスデータとメモリのブロックとの他の関係を例示する概略図である。
図9および
図10は、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第1具体例を表すフローチャートである。
【0055】
なお、
図6および
図8の上段に示すタイミングチャートは、
図3の上段に示すタイミングチャートに相当する。
図6および
図8の中段に示すタイミングチャートは、
図3の下段に示すタイミングチャートに相当する。
図6および
図8の下段に示すタイミングチャートは、複数のメモリのブロックの組合せを例示する概略図である。
【0056】
まず、
図4に表したように、互いに異なるメモリサイズを有する第1メモリ41および第2メモリ46を用意する(
図9のステップS11)。なお、
図2に関して前述したように、メモリの数は、2つには限定されず、3つ以上であってもよい。本具体例の説明では、説明の便宜上、2つのメモリ(第1メモリ41および第2メモリ46)を用いる場合を例に挙げる。
【0057】
本具体例では、第1メモリ41のアドレスの数は、10240である。第1メモリ41のアドレスは、先頭のアドレスから最後のアドレスまで順に0~10239である。第2メモリ46のアドレスの数は、8192である。第2メモリ46のアドレスは、先頭のアドレスから最後のアドレスまで順に0~8191である。そして、第1メモリ41のアドレスの数と、第2メモリ46のアドレスの数と、の差をd(=2048)とする(
図9のステップS11)。
【0058】
なお、ADコンバータ35の量子化分解が一定であるとすると、各メモリのアドレスの数は、各メモリのメモリサイズと等価である。また、ADコンバータ35の量子化分解が一定であるとすると、複数のメモリ同士のアドレスの差は、複数のメモリ同士のメモリサイズの差と等価である。そのため、本具体例では、各メモリのアドレスの数が各メモリのメモリサイズと等価であるものとし、複数のメモリ同士のアドレスの差が複数のメモリ同士のメモリサイズの差と等価であるものとして説明する。
【0059】
本具体例では、第1メモリ41および第2メモリ46のそれぞれのアドレスの数は、第1メモリ41のアドレスの数と、第2メモリ46のアドレスの数と、の差dの整数倍である。すなわち、第1メモリ41のアドレスの数(10240)は、アドレス数の差d(2048)の5倍である。第2メモリ46のアドレスの数(8192)は、アドレス数の差d(2048)の4倍である。なお、第1メモリ41のアドレスの数(10240)および第2メモリ46のアドレスの数(8192)のそれぞれは、アドレス数の差d(2048)の整数倍でなくともよい。
【0060】
続いて、
図5に表したように、第1メモリ41および第2メモリ46のそれぞれを、アドレス数の差dの大きさ毎にブロックに分ける(
図9のステップS12)。本具体例では、第1メモリ41のアドレスの数がアドレス数の差dの5倍であるため、第1メモリ41は、5つのブロックX0~X4に分けられる。また、第2メモリ46のアドレスの数がアドレス数の差dの4倍であるため、第2メモリ46は、4つのブロックY0~Y3に分けられる。
【0061】
なお、各ブロックの大きさは、アドレス数の差dでなくともよい。また、各ブロックの大きさは、第1メモリ41と第2メモリ46との間において異なっていてもよい。本具体例では、各ブロックの大きさがアドレス数の差dと等しい場合を例に挙げて説明する。
【0062】
本具体例では、各ブロックX0~X4、Y0~Y3のアドレスの数は、アドレス数の差dである。例えば、ADコンバータ35のサンプリングレートが500MHzである場合には、サンプリング間隔(距離換算値)は、300mmである。そのため、本具体例のアドレス数の差d(2048)は、300×2048=614400mm(614.4m)の距離に相当する。
【0063】
ブロックX0のアドレスは、0~d-1(0~2047)である。ブロックX1のアドレスは、d~2d-1(2048~4095)である。ブロックX2のアドレスは、2d~3d-1(4096~6143)である。ブロックX3のアドレスは、3d~4d-1(6144~8191)である。ブロックX4のアドレスは、4d~5d-1(8192~10239)である。
【0064】
また、ブロックY0のアドレスは、0~d-1(0~2047)である。ブロックY1のアドレスは、d~2d-1(2048~4095)である。ブロックY2のアドレスは、2d~3d-1(4096~6143)である。ブロックY3のアドレスは、3d~4d-1(6144~8191)である。
【0065】
続いて、発光素子11の発光と同時に、ADコンバータ35による受光信号のサンプリングを開始する(
図9のステップS13)。そして、制御部32は、ADコンバータ35から出力された同じサンプリングデータを同時に第1メモリ41および第2メモリ46のそれぞれの先頭のアドレスから順に記憶させていく(
図9のステップS14)。すなわち、制御部32は、ADコンバータ35から出力されたサンプリングデータを第1メモリ41の先頭のアドレス(0)から第1メモリ41の最後のアドレス(10239)に向かって順に記憶させていく。また、制御部32は、ADコンバータ35から出力されたサンプリングデータを第2メモリ46の先頭のアドレス(0)から第2メモリ46の最後のアドレス(8191)に向かって順に記憶させていく。
【0066】
続いて、サンプリングデータが第2メモリ46の最後のアドレス(8191)まで記憶されると、第2メモリ46のすべてが使用されたことになる。また、サンプリングデータが第1メモリ41の最後のアドレス(10239)まで記憶されると、第1メモリ41のすべてが使用されたことになる。そこで、制御部32は、ADコンバータ35から出力されたサンプリングデータを第1メモリ41および第2メモリ46のそれぞれの最後のアドレスまで順に記憶させたか否かを判断する(
図9のステップS15)。
【0067】
サンプリングデータが第2メモリ46の最後のアドレス(8191)まで記憶されていない場合には(
図9のステップS15:NO)、制御部32は、引き続き、ADコンバータ35から出力されたサンプリングデータを第2メモリ46の先頭のアドレス(0)から第2メモリ46の最後のアドレス(8191)に向かって順に記憶させていく(
図9のステップS14)。
【0068】
一方で、サンプリングデータが第2メモリ46の最後のアドレス(8191)まで記憶された場合には(
図9のステップS15:YES)、
図6に表したように、制御部32は、第2メモリ46の先頭のアドレス(0)に再び戻り、ADコンバータ35から出力されたサンプリングデータを第2メモリ46の先頭のアドレス(0)から第2メモリ46の最後のアドレス(8191)に向かって順に上書きする(
図10のステップS16)。この上書きの際に、制御部32は、第2メモリ46にすでに記憶されたサンプリングデータと、第2メモリ46に新たに記憶させるサンプリングデータと、を加算し、その加算結果を第2メモリ46に記憶させる(
図10のステップS16)。
【0069】
すなわち、サンプリングデータが第2メモリ46の先頭のアドレス(0)から第2メモリ46の最後のアドレス(8191)まで初めて記憶される際(
図6に表した「1周目」の記憶の際)には、第2セレクタ44は、制御部32から送信された制御信号に基づいて「0」を出力する。一方で、サンプリングデータが第2メモリ46の先頭のアドレス(0)から第2メモリ46の最後のアドレス(8191)まで記憶され、先頭のアドレス(0)に再び戻り上書きされる際(
図6に表した「2周目」以降の際)には、第2セレクタ44は、制御部32から送信された制御信号に基づいて、第2メモリ46にすでに記憶されたサンプリングデータを出力する。そのため、2周目以降においては、サンプリングデータの上書きが行われる度に、第2メモリ46のアドレスに新たに記憶させるサンプリングデータが、第2メモリ46のアドレスにすでに記憶されたサンプリングデータに積算される。
【0070】
この上書きの際には、制御部32は、ADコンバータ35から出力されたサンプリングデータのうち直流成分を引いた値を第1加算器39および第2加算器45に入力し、第1メモリ41および第2メモリ46のそれぞれに記憶させてもよい。この場合には、ADコンバータ35から出力されたサンプリングデータのうち直流成分を引いた値が、第1メモリ41および第2メモリ46のそれぞれに記憶される。これにより、第2メモリ46にすでに記憶されたサンプリングデータと、第2メモリ46に新たに記憶させるサンプリングデータと、が加算されて第2メモリ46に記憶される場合であっても、第2メモリ46が加算結果の増大により飽和することを抑えることができる。
【0071】
図6は、制御部32が、第1メモリ41および第2メモリ46のそれぞれにすでに記憶されたサンプリングデータと、第1メモリ41および第2メモリ46のそれぞれに新たに記憶させるサンプリングデータと、を加算しながら上書きする様子を表している。
図10のステップS15に続くステップS14(
図10のステップS15:NO)に関して前述した制御および
図10のステップS16に関して前述した制御は、第1メモリ41についても同様に実行される。
【0072】
続いて、制御部32は、発光素子11の発光が開始されてから最大測定距離に相当する時間以上の時間が経過したか否かを判断する(
図10のステップS17)。最大測定距離に相当する時間以上の時間が経過していない場合には(
図10のステップS17:NO)、制御部32は、引き続き、
図10のステップS16に関して前述した制御を実行する。
【0073】
一方で、最大測定距離に相当する時間以上の時間が経過した場合には(
図10のステップS17:YES)、制御部32は、発光素子11の発光を停止させるとともにADコンバータ35による受光信号のサンプリングを停止させ、受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せを判定する(
図10のステップS18)。
【0074】
図6に表した例では、受光信号のパルスデータは、第1メモリ41の3周目のブロックX2に記憶され、第2メモリ46の4周目のブロックY0に記憶されている。そのため、
図7に表したように、受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せは、「第1メモリ41:ブロックX2-第2メモリ46:ブロックY0」である。
図6に表したように、第1メモリ41のブロックおよび第2メモリ46のブロックの組合せは、発光素子11の発光が開始されてから最大測定距離に相当する時間以上の時間が経過するまでにおいて1通りのみである。
【0075】
本実施形態に係る距離測定装置では、第1メモリ41のメモリサイズ(あるいはアドレスの数)、第2メモリ46のメモリサイズ(あるいはアドレスの数)、および第1メモリ41のメモリサイズと第2メモリ46のメモリサイズとの差(あるいはアドレス数の差d)を適宜調整し、第1メモリ41のブロックおよび第2メモリ46のブロックの組合せが、発光素子11の発光が開始されてから最大測定距離に相当する時間以上の時間が経過するまでにおいて1通りのみとなるように設定することが望ましい。
【0076】
続いて、制御部32は、第1アドレスカウンタ42を制御し、受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せに基づいて、受光信号のパルスデータが記憶された第1メモリ41のアドレスを計算する(
図10のステップS19)。例えば、本具体例において、第1メモリ41の3周目のブロックX2の先頭のアドレスは、(5×d)×(3-1)+(2×d)=5×2048×2+2×2048=24576である。制御部32は、第2アドレスカウンタ47を制御し、受光信号のパルスデータが記憶された第2メモリ46のアドレスを計算してもよい。第2メモリ46の4周目のブロックY0の先頭のアドレスは、第1メモリ41の3周目のブロックX2の先頭のアドレスと同じである。
【0077】
このようにして、制御部32は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いることにより、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器51は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物5までの粗距離を計算する(
図10のステップS19)。言い換えれば、粗距離計算器51は、最大測定距離に相当する時間以上の時間が経過するまでにメモリのアドレスに積算されたサンプリングデータに基づいて、測定対象物5までの粗距離を計算する。例えば、粗距離計算器51は、受光信号のパルスデータが記憶されたメモリのアドレスと、サンプリング間隔(距離換算値)と、の積を計算することにより、測定対象物5までの粗距離を計算する。
【0078】
なお、
図8に表したように、制御部32は、第1メモリ41のブロックおよび第2メモリ46のブロックの組合せをパターンに分けて、受光信号のパルスデータが記憶されたメモリのアドレスを計算してもよい(
図10のステップS19)。
【0079】
すなわち、
図8に表した具体例では、第1パターンは、第1メモリ41のブロックおよび第2メモリ46のブロックが互いに同じパターンである。受光信号のパルスデータが第1パターンに存在する場合には、制御部32は、第1メモリ41または第2メモリ46のアドレスをそのまま採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0080】
第2パターンは、第1メモリ41のブロックX4と第2メモリ46のブロックY0との組合せのパターンである。受光信号のパルスデータが第2パターンに存在する場合には、制御部32は、第1メモリ41のアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0081】
第3パターンは、第1メモリ41のブロックX0~X2と第2メモリ46のブロックY1~Y3との組合せのパターンである。受光信号のパルスデータが第3パターンに存在する場合には、制御部32は、第1メモリ41のアドレスと第1メモリ41のメモリサイズ(本具体例ではアドレスの数:10240)とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0082】
第4パターンは、第1メモリ41のブロックX3~X4と第2メモリ46のブロックY0~Y1との組合せのパターンである。受光信号のパルスデータが第4パターンに存在する場合には、制御部32は、第1メモリ41のアドレスと第1メモリ41のメモリサイズ(本具体例ではアドレスの数:10240)とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0083】
第5パターンは、第1メモリ41のブロックX0~X1と第2メモリ46のブロックY2~Y3との組合せのパターンである。受光信号のパルスデータが第5パターンに存在する場合には、制御部32は、第1メモリ41のアドレスと第1メモリ41のメモリサイズ(本具体例ではアドレスの数:10240)の2倍とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0084】
第6パターンは、第1メモリ41のブロックX2~X4と第2メモリ46のブロックY0~Y2との組合せのパターンである。受光信号のパルスデータが第6パターンに存在する場合には、制御部32は、第1メモリ41のアドレスと第1メモリ41のメモリサイズ(本具体例ではアドレスの数:10240)の2倍とを加算したアドレスを採用し、受光信号のパルスデータが記憶されたアドレスを計算する。
【0085】
図8に表したアドレスの計算方法によっても、制御部32は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いることにより、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器51は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物5までの粗距離を計算する(
図10のステップS19)。
【0086】
続いて、精密距離計算器49は、サンプリング間隔以下の精密距離を、フーリエ変換を用いて計算する(
図10のステップS21)。フーリエ変換を用いた精密距離の計算においては、既知の計算方法を利用することができる。なお、精密距離計算器49は、フーリエ変換以外の方法を用いて精密距離を計算してもよい。
【0087】
続いて、処理部52は、粗距離計算器51により計算された粗距離値と、精密距離計算器49により計算された精密距離値と、を加算して、距離測定装置から測定対象物5までの距離値を求める(
図10のステップS22)。
【0088】
本具体例によれば、制御部32は、同じサンプリングデータを同時に第1メモリ41および第2メモリ46のそれぞれの先頭のアドレスから順に記憶させ、サンプリングデータを第1メモリ41および第2メモリ46のそれぞれの最後のアドレスまで記憶させると、先頭のアドレスに再び戻りサンプリングデータを先頭のアドレスから上書きする。制御部32は、この上書きを行う際に、各メモリ41、46にすでに記憶されたサンプリングデータと、各メモリ41、46に新たに記憶させるサンプリングデータと、を加算する制御を実行する。そのため、先頭のアドレスに再び戻ってサンプリングデータの上書きが行われる度に、各メモリ41、46のアドレスに新たに記憶させるサンプリングデータが、各メモリ41、46のアドレスにすでに記憶されたサンプリングデータに積算される。そして、粗距離計算器51は、最大測定距離に相当する時間以上の時間が経過するまでに各メモリ41、46のアドレスに積算されたサンプリングデータに基づいて、測定対象物5までの粗距離を計算する。そのため、各メモリ41、46が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、粗距離計算器51は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物5までのより長い粗距離をより高い精度で計算することができる。これにより、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
【0089】
また、制御部32は、受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せに基づいて、受光信号のパルスデータが記憶されたメモリのアドレスを特定する。そのため、各メモリ41、46が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、制御部32は、受光信号のパルスデータが記憶されたメモリのアドレスを特定することができる。そして、粗距離計算器51は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて粗距離を計算する。これにより、より確実にメモリサイズを抑えつつ測定精度を向上させることができる。
【0090】
また、ADコンバータ35から出力されたサンプリングデータのうち直流成分を引いた値が第1メモリ41および第2メモリ46のそれぞれに記憶される場合には、第1メモリ41および第2メモリ46のそれぞれが加算結果の増大により飽和することを抑えることができる。これにより、メモリサイズをより一層抑えつつ測定精度を向上させることができる。
【0091】
なお、本具体例では、受光信号のパルスデータが1つだけである場合を例に挙げて説明したが、複数の受光信号のパルスデータが存在していてもよい。このような例としては、距離測定装置から相対的に近い距離に存在する測定対象物5(例えば木)により第1の受光信号のパルスデータが存在し、距離測定装置から相対的に遠い距離に存在する測定対象物5(例えば崖)により第2の受光信号のパルスデータが存在する場合などが挙げられる。複数の受光信号のパルスデータが存在する場合であっても、制御部32は、複数の受光信号のパルスデータのそれぞれが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せに基づいて、複数の受光信号のパルスデータのそれぞれが記憶されたメモリのアドレスを特定することができる。この詳細の説明については、後述する。
【0092】
また、本具体例において、受光信号のパルスデータが第1メモリ41の隣り合うブロック同士および第2メモリ46の隣り合うブロック同士に跨がっている場合には、制御部32は、第1メモリ41および第2メモリ46のそれぞれにおいて受光信号のパルスデータが跨がったブロックの前後のパルスデータを利用することにより見かけ上のアドレスを推定してもよい。
【0093】
次に、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第2具体例および第3具体例を、図面を参照して説明する。
なお、第2具体例および第3具体例に係る距離測定装置の構成要素が、
図4~
図10に関して前述した第1具体例に係る距離測定装置の構成要素と同様である場合には、重複する説明は適宜省略し、以下、相違点を中心に説明する。
【0094】
図11は、受光信号のパルスデータとメモリのブロックとの関係を例示する概略図である。
図12は、受光信号のパルスデータが記憶されたメモリのブロックの組合せを例示する概略図である。
なお、
図11の上段に示すタイミングチャートは、
図3の上段に示すタイミングチャートに相当する。
図11の中段に示すタイミングチャートは、
図3の下段に示すタイミングチャートに相当する。
図11の下段に示すタイミングチャートは、複数のメモリのブロックの組合せを例示する概略図である。
【0095】
第2具体例では、複数の受光信号のパルスデータが存在する場合を説明する。具体的には、
図11に表したように、第1測定対象物により第1受光信号のパルスデータが存在し、第2測定対象物により第2受光信号のパルスデータが存在する場合を説明する。第1受光信号と発光信号との間において、距離測定装置と第1測定対象物との直線距離に応じた第1遅延時間td1が生じている。また、第2受光信号と発光信号との間において、距離測定装置と第2測定対象物との直線距離に応じた第2遅延時間td2が生じている。
本具体例に係る距離測定装置が測定対象物までの距離を計算する処理は、
図9および
図10に表したフローチャートと同様である。
【0096】
図11に表した例では、第1受光信号のパルスデータは、第1メモリ41の2周目のブロックX2に記憶され、第2メモリ46の2周目のブロックY3に記憶される。また、第2受光信号のパルスデータは、第1メモリ41の3周目のブロックX2に記憶され、第2メモリ46の4周目のブロックY0に記憶される。そのため、
図12に表したように、第1受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せは、「第1メモリ41:ブロックX2-第2メモリ46:ブロックY3」である。また、第2受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せは、「第1メモリ41:ブロックX2-第2メモリ46:ブロックY0」である。
【0097】
このように、第1メモリ41および第2メモリ46のいずれか一方(本具体例では第1メモリ41)において複数の受光信号のパルスデータが記憶されたブロックが重複した場合であっても、第1メモリ41および第2メモリ46のいずれか他方(本具体例では第2メモリ46)において複数の受光信号のパルスデータが存在することを確認することができる。そして、制御部32は、複数の受光信号のパルスデータを確認した方のメモリ(本具体例では第2メモリ46)あるいは受光信号のパルスデータの数が多い方のメモリ(本具体例では第2メモリ46)のアドレスカウンタ(本具体例では第2アドレスカウンタ47)を制御し、複数の受光信号のパルスデータが記憶されたメモリ(本具体例では第2メモリ46)の複数のアドレスを計算する。
【0098】
本具体例によれば、第1メモリ41および第2メモリ46のいずれか一方において複数の受光信号のパルスデータが記憶されたブロックが重複した場合であっても、制御部32は、互いに異なるより小さなメモリサイズを有する複数のメモリを用いるとともに、複数の受光信号のパルスデータを確認した方のメモリ(受光信号のパルスデータの数が多い方のメモリ)を参照することにより、複数の受光信号のパルスデータが記憶されたメモリの複数のアドレスを特定することができる。そして、粗距離計算器51は、複数の受光信号のパルスデータが記憶された複数のアドレスに基づいて、第1測定対象物および第2測定対象物までの粗距離を計算することができる。
【0099】
図13および
図14は、本実施形態に係る距離測定装置が測定対象物までの距離を計算する第3具体例を表すフローチャートである。
第3具体例では、測定対象物5の反射率が比較的低い場合を説明する。すなわち、本具体例では、反射測距光28’に応じた受光信号29のSN比(signal-noise ratio)が比較的低い場合を説明する。測定対象物5の反射率が比較的低い場合としては、例えば、再帰反射体であるプリズムを使用しない長距離測定の場合や、測定対象物5に対する測距光28の入射角が比較的小さい場合などが挙げられる。再帰反射体であるプリズムを使用しない長距離測定の具体例としては、例えば、距離測定装置から約数km先に存在する測定対象物5としての建物について、ノンプリズム測定(再帰反射体であるプリズムを使用しない距離測定)を行う場合が挙げられる。測定対象物5に対する測距光28の入射角が比較的小さい具体例としては、例えば、距離測定装置から約数十m先に存在する測定対象物5としてのマンホールの蓋について、距離測定を行う場合が挙げられる。
【0100】
測定対象物5の反射率が比較的低い場合には、距離の計算のために必要な大きさ(強度)の受光信号29を発光素子11の1回の発光だけでは得ることができない場合がある。このような距離測定に対応するため、「(1)発光素子11の発光、(2)ADコンバータ35による受光信号のサンプリング、(3)サンプリングデータのメモリ格納(積算)」という手順を何度も繰り返し、パルス信号の波形がメモリ上に浮上するまでサンプリングデータを積算する手法が存在する。サンプリングデータを積算する手法の目的は、受光信号29が完全にノイズに隠れてしまうほどSN比が低い場合においてパルス信号の波形を浮上させる目的と、パルス信号の波形の外形を把握することができる一方で距離の計算のために必要な大きさの受光信号29が得られない場合においてSN比を向上させ距離の計算精度を向上させる目的と、の両方を含む。
【0101】
このような手法では、パルス信号の波形がメモリ上に浮上するまでの間、パルス信号の波形がメモリ上のいずれのアドレスに浮上するのかが分からない。そのため、このような手法では、一般的に、メモリは、最大測定距離のサンプリングデータの全てを記憶することが可能なメモリサイズを有する必要がある。
【0102】
これに対して、本実施形態に係る距離測定装置では、各メモリ41、46が最大測定距離のサンプリングデータを記憶するために必要なメモリサイズを有していない場合であっても、粗距離計算器51は、受光信号のパルスデータが記憶されたメモリのアドレスに基づいて、測定対象物5までの粗距離を計算することができる。
【0103】
具体的に説明すると、まず、
図13および
図14に表したステップS31~ステップS37は、
図9および
図10のステップS11~ステップS17に関して前述した制御と同様である。ステップS37に続くステップS38において、制御部32は、第1メモリ41または第2メモリ46に記憶されたサンプリングデータを確認する(
図14のステップS38)。続いて、制御部32は、第1メモリ41または第2メモリ46に記憶されたサンプリングデータに基づいた受光信号のパルスデータの大きさが所定の規定値を超えたか否かを判断する(
図14のステップS39)。このとき、制御部32は、受光信号が完全にノイズに隠れてしまうほどSN比が低い場合においてパルス信号の波形を浮上させるときには、パルス信号の有無を含めて確認する(
図14のステップS39)。
【0104】
受光信号のパルスデータの大きさが所定の規定値を超えていない場合には(
図14のステップS39:NO)、制御部32は、再び、発光素子11の発光と同時に、ADコンバータ35による受光信号のサンプリングを開始する(
図13のステップS33)。一方で、受光信号のパルスデータの大きさが所定の規定値を超えた場合には(
図14のステップS39:YES)、制御部32は、発光素子11の発光を停止させるとともにADコンバータ35による受光信号のサンプリングを停止させ、受光信号のパルスデータが記憶された第1メモリ41のブロックおよび第2メモリ46のブロックの組合せを判定する(
図14のステップS41)。
図14に表したステップS42~ステップS44は、
図10のステップS19~ステップS22に関して前述した制御と同様である。
【0105】
本具体例によれば、第1メモリ41または第2メモリ46に記憶されたサンプリングデータに基づいた受光信号のパルスデータの大きさが所定の規定値を超えた場合に、粗距離計算器51は、受光信号のパルスデータが記憶されたアドレスに基づいて、測定対象物5までの粗距離を計算する。これにより、受光信号のSN比が比較的低い場合であっても、メモリサイズを抑えつつ測定精度および最大測定距離を向上させることができる。
【0106】
以上、本発明の実施形態について説明した。しかし、本発明は、上記実施形態に限定されず、特許請求の範囲を逸脱しない範囲で種々の変更を行うことができる。上記実施形態の構成は、その一部を省略したり、上記とは異なるように任意に組み合わせたりすることができる。
【符号の説明】
【0107】
1:測距光学系、 2:射出光学系、 3:受光光学系、 4:視準光学系、 5:測定対象物、 6:測距光軸、 7:射出光軸、 8:受光光軸、 9:視準光軸、 11:発光素子、 12:集光レンズ、 13:ハーフミラー、 14:光量調整器、 15:偏向ミラー、 16:偏向ミラー、 17:対物レンズ、 18:ダイクロイックミラー、 19:接眼レンズ、 21:受光素子、 22:反射鏡、 23:内部参照光軸、 24:内部参照光学系、 25:光路切替器、 27:演算処理部、 28:測距光、 28’:反射測距光、 28”:内部参照光、 29:受光信号、 31:FPGA、 32:制御部、 33:ドライバ、 34:増幅器、 35:ADコンバータ、 36:発振器、 37:レジスタ、 38:第1セレクタ、 39:第1加算器、 41:第1メモリ、 42:第1アドレスカウンタ、 43:第1パルス検出器、 44:第2セレクタ、 45:第2加算器、 46:第2メモリ、 47:第2アドレスカウンタ、 48:第2パルス検出器、 49:精密距離計算器、 51:粗距離計算器、 52:処理部