(57)【要約】【課題】計算過程において大きな値を用いることなく位相差を求めることにより処理負荷の軽減を可能とした測距装置を提供する。【解決手段】発光源１は強度変調光を対象空間に投光し、光検出素子２は対象空間からの光を受光する。光検出素子２の受光出力は強度変調光における位相が９０度異なるタイミングでサンプリング部３によりサンプリングされ４個の検出値が得られる。演算処理部６は、発光源１から投光した強度変調光と光検出素子２で受光した強度変調光との位相差に相当する値を求める。演算処理部６は、強度変調光の１周期を複数に区切った区間を設定するとともに４個の検出値の関係により位相差の存在する区間を判別する区間判別部７と、区間ごとに設定された区間関数で線形になる関数を近似し区間判別部７で判別した区間に応じた区間関数に検出値を代入して位相差に相当する値を求める演算部８とを備える。【選択図】        図１
2006214998.tif 000002
【特許請求の範囲】
【請求項１】
光の強度が変調された強度変調光を対象空間に投光する発光源と、対象空間からの光を受光し受光光量に応じた受光出力が得られる光検出素子と、光検出素子の受光出力を規定したタイミングでサンプリングすることにより複数個の検出値からなる検出値群を抽出するサンプリング部と、検出値群を所定の関数に代入することにより発光源から投光した強度変調光と光検出素子で受光した強度変調光との位相差に相当する値を求める演算処理部とを備え、演算処理部は、強度変調光の１周期を複数に区切った区間を設定するとともに検出値群である複数個の検出値の関係により位相差の存在する区間を判別する区間判別部と、前記関数を区間ごとに設定した複数個の区間関数で近似し区間判別部で判別した区間に対応する区間関数に検出値群を代入して位相差に一対一対応する関数値を求める演算部とを備えることを特徴とする測距装置。
【請求項２】
前記発光源は前記強度変調光の波形を正弦波とし、前記関数を前記位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が等間隔で異なる３個以上の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする請求項１記載の測距装置。
【請求項３】
前記発光源は前記強度変調光の波形を正弦波とし、前記関数を位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が９０度間隔で異なる４個の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が１８０度異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする請求項１記載の測距装置。
【請求項４】
前記発光源は前記強度変調光の波形を正弦波とし、前記関数を位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が９０度間隔で異なる３個の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が９０度異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする請求項１記載の測距装置。
【請求項５】
前記区間判別部は、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の符号と各差分の絶対値の大小とを用いて前記位相差の存在する区間を４５度単位で判別し、前記演算部では、位相差に相当する値θに対して、０度から３６０度までの８区間における各区間関数を、それぞれｔａｎθ、２−ｃｏｔθ、２−ｃｏｔθ、４＋ｔａｎθ、４＋ｔａｎθ、６−ｃｏｔθ、６−ｃｏｔθ、８＋ｔａｎθと設定していることを特徴とする請求項２ないし請求項４のいずれか１項に記載の測距装置。
【請求項６】
前記区間判別部は、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の符号と各差分の絶対値の大小とを用いて前記位相差の存在する区間を４５度単位で判別し、前記演算部では、位相差に相当する値θに対して、ｔ＋＝（１＋ｔａｎθ）／（１−ｔａｎθ）、ｔ−＝（１−ｔａｎθ）／（１＋ｔａｎθ）とするとき、０度から３６０度までの８区間における各区間関数を、それぞれ（１＋ｔａｎθ−ｔ−）／２、（３−ｃｏｔθ−ｔ−）／２、（５−ｃｏｔθ＋ｔ＋）／２、（７＋ｔａｎθ＋ｔ＋）／２、（９＋ｔａｎθ−ｔ−）／２、（１１−ｃｏｔθ−ｔ−）／２、（１３−ｃｏｔθ＋ｔ＋）／２、（１５＋ｔａｎθ＋ｔ＋）／２と設定していることを特徴とする請求項２ないし請求項４のいずれか１項に記載の測距装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、強度変調光を対象空間に投光するとともに対象空間からの光を受光し、投光した強度変調光と受光した光との位相差を求めることにより対象空間に存在する物体までの距離を求める測距装置に関するものである。
【背景技術】
【０００２】
従来から、適宜の波形を有した変調信号を用いて変調した光（強度変調光）を発光源から対象空間に投光するとともに対象空間からの光を受光光量に応じた大きさの受光出力が得られる光検出素子により受光し、発光源を変調する変調信号と光検出素子の受光出力との関係により強度変調光の投光と受光との位相差を求め、この位相差を距離に換算する測距装置が提案されている（たとえば、特許文献１参照）。
【０００３】
変調信号の波形としてはたとえば正弦波を用い、変調信号において位相が互いに９０度異なるタイミングで受光出力をサンプリングして得られる４個の検出値を検出値群に用いると、検出値群に含まれる検出値から投光と受光との位相差の正接を求めることができる。
【０００４】
たとえば、変調信号が図１５（ａ）に示すように正弦波であって、光検出素子に入射する光の強さが図１５（ｂ）のように変化するとすれば、変調信号Ｓと光検出素子に入射する光の強さＩとを、たとえば次のように表すことができる。
Ｓ＝α・ｓｉｎωｔ
Ｉ＝Ａ・ｓｉｎ（ωｔ＋δ）＋Ｂ
ただし、αは変調信号の振幅、Ａは光検出素子に入射する光の振幅、Ｂは光検出素子に入射する光の極大値と極小値との平均値であって環境光の強さに振幅を加算した値になる。また、ωは角周波数、δは初期位相であり、投光と受光との位相差がθであるときには、δ＝−θになる。受光出力のサンプリング期間を１８０度の期間とし、サンプリング期間において位相差θに変化がなく、投光から受光までの光の減衰率にも変化がないと仮定し、図１５（ｃ）〜（ｆ）のように、変調信号における０〜１８０度の期間で得られる受光光量に対応した検出値をＡ０、９０〜２７０度の検出値をＡ１、１８０〜３６０度の検出値をＡ２、２７０〜９０（４５０）度の検出値をＡ３とすれば、次式が得られる。各検出値Ａ０〜Ａ３は、受光した光の強さを変調信号の各期間で積分した受光光量に相当する。
Ａ０＝Ａ′・ｃｏｓθ＋Ｂ′
Ａ１＝Ａ′・ｓｉｎθ＋Ｂ′
Ａ２＝−Ａ′・ｃｏｓθ＋Ｂ′
Ａ３＝−Ａ′・ｓｉｎθ＋Ｂ′
ただし、Ａ′、Ｂ′は定数である。したがって、位相差θは検出値Ａ０、Ａ１、Ａ２、Ａ３を用いて次式のように表すことができる。
ｔａｎθ＝（Ａ３−Ａ１）／（Ａ２−Ａ０）
位相差θ［ｒａｄ］は物体までの光の往復時間に相当するから、距離Ｌ［ｍ］は光束ｃ［ｍ／ｓ］と変調信号の周波数ｆ［Ｈｚ］とを用いて次式のように表すことができる。
Ｌ＝（ｃ／ｆ）・（θ／４π）
すなわち、位相差θを求めると物体までの距離Ｌを求めることができる。言い換えると、上式を用いて距離Ｌを求めるには、検出値Ａ０、Ａ１、Ａ２、Ａ３から位相差θを求める演算が必要になる。
【特許文献１】特開２００４−３５６５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、検出値Ａ０、Ａ１、Ａ２、Ａ３から位相差θを求めるには、次式の演算が必要である。
θ＝ｔａｎ−１Ｓ
ただし、Ｓ＝（Ａ３−Ａ１）／（Ａ２−Ａ０）である。
ｔａｎ−１ｘをテイラー展開してべき級数で表すと、次式のようになる。
ｔａｎ−１ｘ＝ｘ−（ｘ３／３）＋（ｘ５／５）−（ｘ７／７）＋（ｘ９／９）−…
上式の演算を必要精度を確保できる項まで計算することが要求され、たとえば５項目まで演算するとすれば、ｘの３乗、５乗、７乗、９乗の計算が必要となり、また２の指数ではない値での除算も必要となるから、計算の負荷が非常に大きくなる。さらに、指数の計算が必要となるから、精度を確保するためには浮動小数点演算が必要となる。つまり、演算処理の負荷が大きくなる。
【０００６】
一方、ｔａｎθの値と位相差θとをあらかじめ対応付けたデータテーブルを用意しておき、検出値Ａ０、Ａ１、Ａ２、Ａ３から求めたｔａｎθをデータテーブルに照合することによって位相差θを求める構成も考えられるが、データテーブルを作成するために容量の大きな記憶部が必要になる。
【０００７】
本発明は上記事由に鑑みて為されたものであり、その目的は、区間関数を用いて近似演算を行うことにより、データテーブルのような記憶部を設ける必要がない上に、計算の負荷を軽減することができるようにし、もって距離を求めるための演算処理を容易かつ高速に行うことを可能とした測距装置を提供することにある。
【課題を解決するための手段】
【０００８】
請求項１の発明は、光の強度が変調された強度変調光を対象空間に投光する発光源と、対象空間からの光を受光し受光光量に応じた受光出力が得られる光検出素子と、光検出素子の受光出力を規定したタイミングでサンプリングすることにより複数個の検出値からなる検出値群を抽出するサンプリング部と、検出値群を所定の関数に代入することにより発光源から投光した強度変調光と光検出素子で受光した強度変調光との位相差に相当する値を求める演算処理部とを備え、演算処理部は、強度変調光の１周期を複数に区切った区間を設定するとともに検出値群である複数個の検出値の関係により位相差の存在する区間を判別する区間判別部と、前記関数を区間ごとに設定した複数個の区間関数で近似し区間判別部で判別した区間に対応する区間関数に検出値群を代入して位相差に一対一対応する関数値を求める演算部とを備えることを特徴とする。
【０００９】
この構成によれば、強度変調光の１周期を複数の区間に区切り、位相差がどの区間に存在するかを検出値群から判断し、さらに、検出値群を代入して目的とする値を求めるための関数を各区間ごとに設定した区間関数を用いて近似しているから、検出値群が示す情報を単独の関数で抽出すると複雑な演算が必要になったり計算過程において大きな値を扱うことが必要になる場合でも、比較的単純な形の区間関数を用いて近似演算を行うことにより、演算処理の負荷を軽減することができる。また、検出値群と位相差とを対応付けるためにデータテーブルを用いる必要がないから、データテーブルのための記憶領域が不要であり、また補間演算も不要である。
【００１０】
請求項２の発明では、請求項１の発明において、前記発光源は前記強度変調光の波形を正弦波とし、前記関数を前記位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が等間隔で異なる３個以上の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする。
【００１１】
請求項３の発明では、請求項１の発明において、前記発光源は前記強度変調光の波形を正弦波とし、前記関数を位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が９０度間隔で異なる４個の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が１８０度異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする。
【００１２】
請求項４の発明では、請求項１の発明において、前記発光源は前記強度変調光の波形を正弦波とし、前記関数を位相差に関して線形である関数とし、前記演算処理部は前記検出値群として強度変調光における位相が９０度間隔で異なる３個の検出値を用い、前記演算部では、前記位相差に相当する値の正接と余接との少なくとも一方を用いた区間関数が設定されており、検出値群のうち位相が９０度異なる各２個の検出値から求めた２個の差分の一方を他方で除することにより得られる前記正接と前記余接との少なくとも一方を区間関数に代入して前記関数の関数値を求めることを特徴とする。
【００１３】
請求項２ないし請求項４の発明の構成によれば、いずれも強度変調光における位相が等間隔で異なる３個以上の検出値を検出値群としているから、検出値同士の減算と除算とによって位相差に相当する値の正接および余接に相当する値を求めることができ、正接と余接との少なくとも一方を用いて区間関数を設定しているから、簡単な演算で位相差を求めることができる。しかも、線形である関数を区間関数によって近似するから、位相差の大きさによる精度や信頼性の変化がほとんど生じない。なお、位相差に相当する値とは、位相差自身を指す場合と、位相差を一定位相だけ偏移させた値を指す場合とがある。
【００１４】
請求項５の発明では、請求項２ないし請求項４の発明において、前記区間判別部は、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の符号と各差分の絶対値の大小とを用いて前記位相差の存在する区間を４５度単位で判別し、前記演算部では、位相差に相当する値θに対して、０度から３６０度までの８区間における各区間関数を、それぞれｔａｎθ、２−ｃｏｔθ、２−ｃｏｔθ、４＋ｔａｎθ、４＋ｔａｎθ、６−ｃｏｔθ、６−ｃｏｔθ、８＋ｔａｎθと設定していることを特徴とする。
【００１５】
この構成によれば、検出値の減算と除算との簡単な演算で位相差に相当する値を求めることができる。しかも、簡単な区間関数を用いてほぼ線形な関数を近似することができる。
【００１６】
請求項６の発明では、請求項２ないし請求項４の発明において、前記区間判別部は、検出値群のうち位相が等間隔異なる各２個の検出値から求めた２個の差分の符号と各差分の絶対値の大小とを用いて前記位相差の存在する区間を４５度単位で判別し、前記演算部では、位相差に相当する値θに対して、ｔ＋＝（１＋ｔａｎθ）／（１−ｔａｎθ）、ｔ−＝（１−ｔａｎθ）／（１＋ｔａｎθ）とするとき、０度から３６０度までの８区間における各区間関数を、それぞれ（１＋ｔａｎθ−ｔ−）／２、（３−ｃｏｔθ−ｔ−）／２、（５−ｃｏｔθ＋ｔ＋）／２、（７＋ｔａｎθ＋ｔ＋）／２、（９＋ｔａｎθ−ｔ−）／２、（１１−ｃｏｔθ−ｔ−）／２、（１３−ｃｏｔθ＋ｔ＋）／２、（１５＋ｔａｎθ＋ｔ＋）／２と設定していることを特徴とする。
【００１７】
この構成によれば、検出値の減算と除算との簡単な演算で位相差に相当する値を求めることができる。しかも、四則演算で表すことのできる簡単な区間関数を用いてほぼ線形な関数を近似することができる。とくに、請求項５で用いる区間関数よりも、さらに直線に近い近似が可能になるから、さらに信頼性の高い値を得ることが可能になる。
【発明の効果】
【００１８】
本発明の構成によれば、強度変調光の１周期を複数の区間に区切り、位相差がどの区間に存在するかを検出値群から判断し、さらに、検出値群を代入して目的とする値を求めるための関数を各区間ごとに設定した区間関数を用いて近似しているから、検出値群が示す情報を単独の関数で抽出すると複雑な演算が必要になったり計算過程において大きな値を扱うことが必要になる場合でも、比較的単純な形の区間関数を用いて近似演算を行うことにより、演算処理の負荷を軽減することができるという利点がある。また、検出値群と位相差とを対応付けるためにデータテーブルを用いる必要がないから、データテーブルのための記憶領域が不要であり、また補間演算も不要になる。
【発明を実施するための最良の形態】
【００１９】
（実施形態１）
本実施形態では、図１に示すように、光検出素子２を１個だけ設ける場合について説明するが、複数個（たとえば、１００×１００個）の光検出素子２を平面格子の格子点上に配列してイメージセンサを構成する場合であっても、以下に説明する実施形態と同様の技術を採用することができる。
【００２０】
本実施形態の測距装置は、図１に示すように、対象空間に投光する発光源１を備え、発光源１から対象空間に投光され対象空間内の物体３により反射された光を受光する光検出素子２を備える。発光源１としては、たとえば複数個の発光ダイオードを平面上に配列したものを用いる。あるいはまた、半導体レーザと発散レンズとを組合せて発光源１に用いるようにしてもよい。発光源１はタイミング制御回路４から出力される変調信号により出力光量が変調される。つまり、発光源１からは変調信号により変調された強度変調光が対象空間に投光される。変調信号には正弦波を用い、変調信号の周波数はたとえば２０ＭＨｚとする。
【００２１】
光検出素子２は受光光量に応じた受光出力を出力する。受光光量に応じた受光出力とは、受光出力が受光強度と受光時間との積に相当することを意味する。光検出素子２がフォトダイオードやフォトトランジスタのように電荷の蓄積機能を持たない構成である場合には、受光強度の瞬時値に対応した受光出力を出力することになり、またＣＣＤイメージセンサのように電荷の蓄積機能を持つ構成である場合には、受光強度に応じて発生した電荷を受光時間に応じて蓄積した電荷量に相当する受光出力が得られる。
【００２２】
光検出素子２の出力はサンプリング部５に入力され、光検出素子２の受光出力が変調信号の位相に合わせたタイミングでサンプリングされる。サンプリング部５では、たとえば変調信号の位相における０〜φ度、９０〜（９０＋φ）度、１８０〜（１８０＋φ）度、２７０〜（２７０＋φ）度のように、位相が９０度ずつ異なる４個のサンプリング期間Ｐｓについてそれぞれ受光出力をサンプリングし、サンプリング期間Ｐｓ（図１５参照）の積分値を検出値として出力する。φは適宜に設定することができ、たとえば１８０度に設定する。変調信号の異なる４位相に同期したサンプリング期間Ｐｓで得られた４個の検出値は、位相差θを求めるためのひとまとまりのデータであるから、これらの検出値を検出値群と呼ぶことにする。また、変調信号の位相に同期する上述の各サンプリング期間Ｐｓに得られた検出値をそれぞれＡ０、Ａ１、Ａ２、Ａ３とする。
【００２３】
検出値群は、コンピュータにより構成した演算処理部６に入力される。本実施形態の演算処理部６では以下に説明する原理によって、強度変調光を発光源１により対象空間に投光してから光検出素子２により受光するまでの位相差に相当する値を求める。従来の技術として説明したように、検出値群を構成する４個の検出値Ａ０、Ａ１、Ａ２、Ａ３と位相差θとは理想的には次式の関係になる。
ｔａｎθ＝（Ａ３−Ａ１）／（Ａ２−Ａ０）
ところで、位相差θが０〜４５度の変域においてｔａｎθの値域は０〜１であり、しかも位相差の変化に対して値はほぼ線形に変化する。一方、位相差θが４５〜９０度の変域においてｔａｎθの値域は１〜無限大であるが、ｃｏｔθの値域は１〜０であり、位相差の変化に対してほぼ線形に変化する。そこで、位相差θが４５〜９０度の変域においては値域が１〜２になるように２−ｃｏｔθを用いると、位相差θが４５〜９０度の変域において値がほぼ線形に変化する。つまり、位相差θが０〜４５度の区間ではｔａｎθを用い、位相差θが４５〜９０度の区間では２−ｃｏｔθを用いて関数を近似すれば、０〜９０度の区間において値をほぼ線形に変化させることが可能になる。位相差θが他の値である場合も同様であって、位相差θが０〜３６０度である範囲を４５度ずつの区間に区切り、各区間ごとに位相差θに対してほぼ線形に変化する区間関数を設定し、値が単調に増加する関数を、ｔａｎθまたはｃｏｔθを用いた区間関数の集合として設定する。
【００２４】
具体的には、位相差θが９０〜１３５度、２２５〜２７０度、２７０〜３１５度の各区間ではｃｏｔθを含む区間関数を用い、位相差θが１３５〜１８０度、１８０〜２２５度、３１５〜３６０度の各区間ではｔａｎθを含む区間関数を用いる。すなわち、位相差θが９０〜１３５度の区間では２−ｃｏｔθ、位相差θが２２５〜２７０度および２７０〜３１５度の区間では６−ｃｏｔθ、位相差θが１３５〜１８０度および１８０〜２２５度の区間では４＋ｔａｎθ、位相差θが３１５〜３６０度の区間では８＋ｔａｎθを用いる。このように位相差θを４５度単位の区間に区切り、各区間ごとにほぼ線形に変化する区間関数を割り当てることによって、図２に示すように、位相差θが０〜３６０度の変域を持つときに値域が０〜８になる単調増加関数を設定することができる。図２において直線イは近似させる関数値であり、曲線ロが区間関数から得られた近似値を表している。位相差θの単位をラジアンとすれば、区間ごとの区間関数は表１のようになる。表１では同じ区間関数を用いる隣接した２区間を１つにまとめて記載している。
【００２５】
【表１】
2006214998.tif 000003
【００２６】
表１に示す関数を用いることによって、位相差θに一対一に対応するとともに位相差θにほぼ比例する値を求めることができ、しかも距離は位相差θに比例するから、表１に示す関数により得られた関数値を簡単な比例演算で距離に換算することが可能になる。つまり、表１で定義される関数をｆ（θ）とし、比例定数をｋとすれば、距離はｋ・ｆ（θ）という形で表すことができるから、ｔａｎθまたはｃｏｔθを求めることにより、距離を簡単に求めることができる。
【００２７】
ところで、ｃｏｔθは１／ｔａｎθであるから、検出値Ａ０、Ａ１、Ａ２、Ａ３を用いてｃｏｔθを求めることができる。つまり、ｔａｎθは検出値Ａ０、Ａ１、Ａ２、Ａ３を用いて、たとえば、ｔａｎθ＝（Ａ３−Ａ１）／（Ａ２−Ａ０）と表されるから、ｃｏｔθは、ｃｏｔθ＝（Ａ２−Ａ０）／（Ａ３−Ａ１）になる。つまり、検出値Ａ０、Ａ１、Ａ２、Ａ３を用いて区間関数の関数値を求める際に、四則演算のみを行えばよく、演算処理が非常に簡単になる。
【００２８】
一方、表１で示した関数では位相差θの存在する区間ごとに異なる区間関数を用いるから、関数値を求めるには位相差θの存在する区間を決定する必要がある。具体的には（Ａ２−Ａ０）と（Ａ３−Ａ１）との符号および両者の絶対値の大小関係を用いる。たとえば、｜Ａ３−Ａ１｜が｜Ａ２−Ａ０｜よりも小さいのは、区間０≦θ＜π／４、３π／４≦θ＜５π／４、７π／４≦θ＜２π（区間名１、４、５、８）のいずれかの場合であり、絶対値の大小関係が逆になるときには、区間がπ／４≦θ＜３π／４、５π／４≦θ＜７π／４（区間名２、３、６、７）のどちらかの場合である。さらに、（Ａ２−Ａ０）と（Ａ３−Ａ１）との符号について考察すると、（Ａ２−Ａ０）が正になる位相差θは、０＜θ≦π／２、３π／２≦θ＜２πの範囲、（Ａ３−Ａ１）が正になる位相差θは、０＜θ＜πの範囲であるから、これらの関係を組み合わせると、４５度ずつの区間と、（Ａ２−Ａ０）と（Ａ３−Ａ１）との符号および絶対値の大小とは表２の関係になる。なお、表２ではＡ２−Ａ０＝Ａｘ、Ａ３−Ａ１＝Ａｙと置いている。
【００２９】
【表２】
2006214998.tif 000004
【００３０】
なお、ｔａｎθ＝Ａｙ／Ａｘであるから、区間１、４、５、８ではＡｘ≠０でなければならず、一方、区間２、３、６、７ではｃｏｔθ＝Ａｘ／Ａｙを用いるからＡｙ≠０でなければならない。
【００３１】
本実施形態の演算処理部６は、上述した原理に基づいて構成したものであって、演算処理部６に対してサンプリング部５から入力された検出値Ａ０、Ａ１、Ａ２、Ａ３の検出値群は、区間判別部７と演算部８とに入力される。区間判別部７は、検出値群について表２に示した関係を用いて区間を判別するものであって、位相差θが４５度ずつに区分された８区間のうちのどの区間に属するかが判別される。一方、演算部８は、表１に示した５個の区間関数によって近似した関数を検出値群に適用することにより位相差θに相当する値を求めるものであって、区間判別部７により判別された区間に対応する区間関数を選択し、選択した区間関数を検出値群に適用する。
【００３２】
演算処理部６の処理手順をまとめると、図３のようになる。すなわち、サンプリング部５から４個の検出値Ａ０、Ａ１、Ａ２、Ａ３が入力されると（Ｓ１）、Ａ３−Ａ１の符号を求めるとともに（Ｓ２）、Ａ２−Ａ０の符号を求める（Ｓ３）。さらに、｜Ａ３−Ａ１｜と｜Ａ２−Ａ０｜との大小を判断する（Ｓ４）。この判断には、表２に示したように｜Ａ３−Ａ１｜−｜Ａ２−Ａ０｜の符号を判断する処理を用いてもよい。ステップＳ４の処理によって位相差θが８区間のうちのどの区間に存在するかを判別することができる。つまり、ステップＳ２〜Ｓ４の処理が区間判別部７に相当する。
【００３３】
次に、判別された区間に対応する区間関数を選択する（Ｓ５）。区間関数はあらかじめ演算部８に記憶されており、区間判別部７において区間が判別されると、当該区間に対応する区間関数が演算部８において用いられる。ステップＳ５において選択された区間関数には、検出値Ａ０、Ａ１、Ａ２、Ａ３が代入され、位相差θに相当する値が求められる（Ｓ６）。また、上述のように物体３までの距離は位相差θに比例し、表１に示した関数の閾値は０〜８であるから、発光源１から投光する光を変調する変調信号の周波数を１８．７５ＭＨｚとすれば、演算部８で求めた位相差θの値と物体３までの距離とがほぼ一致する。なお、区間関数は近似値であるから、この結果を用いた場合には若干の誤差を生じるが、その誤差が問題にならない程度の用途であれば、得られた値をそのまま用いることができる。また、上述の例では、区間関数として、ｔａｎθ、２−ｃｏｔθ、４＋ｔａｎθ、６−ｃｏｔθ、８＋ｔａｎθを用いているが、変調周波数に応じて適宜の係数を乗じるようにすれば、変調周波数が異なる場合でも、演算部８の出力値を距離に一致させることが可能になる。すなわち、変調周波数に応じた係数をρとし、ρ・ｔａｎθ、ρ（２−ｃｏｔθ）などとすればよい。
【００３４】
上述の例では演算処理部６において４個の検出値Ａ０、Ａ１、Ａ２、Ａ３を用いて位相差θにほぼ比例する関数ｆ（θ）の値を求めているが、光検出素子２に入射する光の強さＩに含まれる未知数は、振幅Ａと環境光による成分Ｂと位相差θとの３個であるから（図１５参照）、３個の検出値から位相差θを求めることが可能である。そこで、３個の検出値Ａ０、Ａ１、Ａ２を用いて位相差θを求める場合を例示する。
【００３５】
従来の技術として説明したように、検出値Ａ０、Ａ１、Ａ２を次式で表すものとする。
Ａ０＝Ａ′・ｃｏｓθ＋Ｂ′
Ａ１＝Ａ′・ｓｉｎθ＋Ｂ′
Ａ２＝−Ａ′・ｃｏｓθ＋Ｂ′
まず、これらの３式からＡ′、Ｂ′を消去して位相差θのみを変数とする数式を作成することを考える。Ｂ′は検出値Ａ０、Ａ１、Ａ２のうち任意の２個の差を求めることにより消去でき、Ｂ′を消去した後の異なる２式の一方を他方で除算すればＡ′を消去することができる。
【００３６】
ここで、４個の検出値Ａ０、Ａ１、Ａ２、Ａ３から求めた位相差θの正接に相当する値を３個の検出値Ａ０、Ａ１、Ａ２から求めることができれば、表１に示した関数ｆ（θ）を用いることができる。位相差θの正接に相当する値を求める際には、上述のようにＡ′を除算により消去する必要があるから、正接を求めるには同位相での正弦と余弦との値が必要である。正弦と余弦とはそれぞれＢ′を消去するための減算により求めなければならず、かつ正弦と余弦とは同位相で求めなければならないから、正弦と余弦とを求める際の検出値Ａ０、Ａ１、Ａ２の減算は、等位相間隔で行うことが必要である。検出値Ａ０、Ａ１、Ａ２は３個しかないから４個の場合のように１８０度間隔で減算することはできない。そこで、本例では９０度間隔で減算を行う。ただし、６０度間隔や４５度間隔の検出値を用いることも可能である。
【００３７】
位相が９０度ずつ異なる検出値Ａ０、Ａ１、Ａ２は２組あるから、次式の組合せで検出値Ａ０、Ａ１、Ａ２の減算を行う。
Ａ１−Ａ０＝Ａ′（ｓｉｎθ−ｃｏｓθ）＝Ａ″・ｓｉｎ（θ−π／４）
Ａ１−Ａ２＝Ａ′（ｓｉｎθ＋ｃｏｓθ）＝Ａ″・ｃｏｓ（θ−π／４）
ただし、Ａ″＝（１／２）１／２・Ａ′である。つまり、検出値Ａ０、Ａ１、Ａ２を用いることにより、位相差θに関して次式が得られる。
ｔａｎ（θ−π／４）＝（Ａ１−Ａ０）／（Ａ１−Ａ２）
ここで、Θ＝θ−π／４とおけば、次式が得られる。
ｔａｎΘ＝（Ａ１−Ａ０）／（Ａ１−Ａ２）
上式に用いているΘは、位相差θに対して４５度だけ進相であるが、時間軸方向において偏移しているだけであり位相差の関数であるから位相差θと等価に扱い、以下では偏位相差Θと呼ぶ。表１における位相差θを偏位相差Θで読み替えれば、表１をそのまま用いることができる。
【００３８】
つまり、関数ｆ（Θ）を８区間の区間関数で表すことができる。ただし、偏位相差Θの区間１〜７は真の位相差θの区間２〜８に対応し、偏位相差Θの区間８には真の位相差θでは対応する区間がない。また、偏位相差Θの区間１〜７で得られる区間関数の値は真の位相差θの区間２〜８の値と比較すると１だけ小さい。したがって、偏位相差Θを適用して得られた区間関数の値には１を加算し、真の位相差θに対応する関数ｆ（θ）に代えてｆ（Θ）＋１（＝ｆ（θ−π／４）＋１）を用いる。つまり、偏位相差Θが０〜３１５度の範囲では関数ｆ（Θ）＋１が１〜８になり、真の位相差θが４５〜３６０度である範囲における区間関数ｆ（θ）と同じ値になる。
【００３９】
ただし、真の位相差θについて表１で設定した区間は０〜３６０度の範囲であり、偏位相差Θの区間８は真の位相差θでは３６０〜４０５度に相当するから、偏位相差Θの区間８は位相差θの範囲を逸脱している。もっとも、位相差θが３６０〜４０５度であることは、位相差θが０〜４５度であることと等価である。一方、偏位相差Θを用いると区間関数ｆ（θ）の区間１に対応する値は偏位相差Θの区間１〜８では得られない。そこで、偏位相差Θの区間８における区間関数が、区間１における区間関数に８を加えたものであることに着眼し、偏位相差Θが区間８であるときには区間関数の値から８を減算して１を加算する。つまり、偏位相差Θが区間８であるときには区間関数の値から７を減算する。
【００４０】
偏位相差Θに関する区間の分類には表２を用いる。ただし、位相差θは偏位相差Θに読み替え、Ａｘ＝Ａ１−Ａ２、Ａｙ＝Ａ１−Ａ０とする。
【００４１】
（実施形態２）
実施形態１では、区間判別部７で８区間を判別しているものの、演算部８では５個の区間関数を用いて演算している。したがって、各区間の中央付近では誤差がやや大きくなっている。本実施形態は、実施形態１で用いた区間関数よりも位相差θに対する直線性がよい区間関数を用いることにより、誤差を低減する例を説明する。すなわち、８区間についてそれぞれ異なる区間関数を適用する。各区間と区間関数とは、表３に示す関係になる。
【００４２】
【表３】
2006214998.tif 000005
【００４３】
ただし、
ｔ＋＝（１＋ｔａｎθ）／（１−ｔａｎθ）
ｔ−＝（１−ｔａｎθ）／（１＋ｔａｎθ）
である。表３に示す区間関数は、表１に示した各区間関数に対して原点と座標（３６０度，８）とを結ぶ直線を挟んで略対称になる区間関数を設定し、両者の平均を求めたものである。すなわち、表１に対して上記直線を挟んで対象になる区間関数は隣接する区間の区間関数を平行移動させることにより得られ表４のようになる。
【００４４】
【表４】
2006214998.tif 000006
【００４５】
なお、ｔａｎ（θ＋π／４）＝−ｃｏｔ（θ−π／４）＝ｔ＋、ｔａｎ（θ−π／４）＝−ｃｏｔ（θ＋π／４）＝−ｔ−であるから、表４における区間１〜９の区間関数は、それぞれ、１−ｔ−、１−ｔ−、３＋ｔ＋、３＋ｔ＋、５−ｔ−、５−ｔ−、７＋ｔ＋、７＋ｔ＋になる。言い換えると、表４の区間関数を用いると４種類の区間関数で近似が可能になる。
【００４６】
ところで、表１の区間関数および表４の区間関数は、いずれも区間の中央部において両端部よりも上記直線との差が大きくなる。これに対して、表１の区間関数と表４の区間関数との平均値を求めると、上記直線にほぼ一致する区間関数を設定することができる。たとえば、区間１について、区間関数の平均を求めると、（ｔａｎθ＋１−ｔ−）／２になり、表３の区間１における区間関数が得られる。同様にして、各区間ごとに表１と表４との区間関数の平均を求めると表３の区間関数が得られる。したがって、表３に示す区間関数を用いることにより、区間の中央部での誤差が低減し、上記直線にほぼ一致させることが可能になる。たとえば、区間１では図４に示すように、近似させる関数値が直線イであるときに、表１の区間関数を用いると曲線ロのようになるが、表３の区間関数を用いると曲線ハのようになり、直線イとほぼ一致することがわかる。
【００４７】
また、ｔａｎθ＝（Ａ３−Ａ１）／（Ａ２−Ａ０）であるから、
ｔ＋＝（Ａ２−Ａ０）＋（Ａ３−Ａ１）／（Ａ２−Ａ０）−（Ａ３−Ａ１）
ｔ−＝（Ａ２−Ａ０）−（Ａ３−Ａ１）／（Ａ２−Ａ０）＋（Ａ３−Ａ１）
であって、表２と同様に、Ａ２−Ａ０＝Ａｘ、Ａ３−Ａ１＝Ａｙと置けば、
ｔ＋＝（Ａｘ＋Ａｙ）／（Ａｘ−Ａｙ）
ｔ−＝（Ａｘ−Ａｙ）／（Ａｘ＋Ａｙ）
になる。
【００４８】
すなわち、区間判別部７において区間の判別に用いる値Ａｘ，Ａｙによってｔ＋とｔ−とを表すことができ、さらに、ｔａｎθ＝Ａｙ／Ａｘであるから、区間関数はＡｘ，Ａｙにより表すことができる。したがって、図５のように、演算処理部６において区間判別部７および演算部８の前に、（Ａ３−Ａ１）と（Ａ２−Ａ０）との演算を行う前置演算部９を設け、区間判別部７での区間の判別および演算部８での区間関数を用いた近似値の演算とを、前置演算部９の演算結果を用いて行うようにすれば、検出値Ａ０、Ａ１、Ａ２、Ａ３をそのまま用いて演算する場合よりも演算量が低減される。前置演算部９は実施形態１の構成においても用いることができ、区間判別部７における区間の判別に用いるＡｘ，Ａｙを用いて、演算部８におけるｔａｎθ、ｃｏｔθを表すようにしてもよい。また、本実施形態における区間関数を用いると、実施形態１で用いた区間関数の演算よりは演算量が増加するものの、検出値Ａ０、Ａ１、Ａ２、Ａ３の四則演算のみであるから、テイラー展開による演算に比較すれば演算量は非常に少なく演算処理の負荷が小さい上に、データテーブルを用いる場合のように多くの記憶領域を要したり補間演算を行ったりする必要もない。
【００４９】
表３における各区間関数において係数が１／２となっている（２で割っている）のは、単純に２つの区間関数の平均値を新たな区間関数にしたためであり、必ずしも１／２である必要はない。係数が１／２の場合には変調周波数が１８．７５ＭＨｚのときに物体３までの距離と演算部８の出力値とがほぼ一致する。それ以外の変調周波数の場合は、出力値を距離に変換するため、出力値に係数を掛ける演算が必要である。この場合には、使用する区間関数の係数を１／２ではなく、変調周波数を考慮した別の値として演算部８の出力値がそのまま距離の値になるように設定してもよい。
【００５０】
（実施形態３）
実施形態１、２では光検出素子２を１個だけ備える構成について説明したが、複数個の光検出素子２を平面格子の格子点上に配列したイメージセンサを用いる場合にも実施形態１、２において説明した技術を適用することができる。この種のイメージセンサは、ＣＣＤイメージセンサやＣＭＯＳイメージセンサなどとして知られており、光検出素子２において光を受光する受光期間と受光出力を取り出す取出期間とが外部信号により制御される。したがって、外部信号によるイメージセンサの受光期間および取出期間の制御により、イメージセンサの外部にサンプリング部を設けずに検出値Ａ０、Ａ１、Ａ２、Ａ３をイメージセンサの出力として得ることが可能である。つまり、実施形態１、２において説明したサンプリング部６に相当する機能はイメージセンサに内蔵されている。
【００５１】
イメージセンサでは、受光期間において光検出素子２で生成された電荷を取出期間において受光出力として取り出すから、受光期間には光に対する感度を上げ、取出期間には光に対する感度を下げることが望ましい。さらに、受光期間は、変調信号に対して９０度ずつ位相がずれたタイミングで設定する必要があり、仮に変調信号の１周期内で４つの検出値Ａ０、Ａ１、Ａ２、Ａ３を得るように受光期間のタイミングを設定しているとすれば、各検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する受光光量はごく少なくなり、大きな受光出力を得ることができなくなる。とくに、受光光量が少ないとイメージセンサの内部で発生するショットノイズによって受光出力のＳＮ比が低下し、結果的に距離の測定精度が低下することになる。そこで、本実施形態では、各検出値Ａ０、Ａ１、Ａ２、Ａ３をそれぞれ変調信号の複数周期で集積した電荷に対応付ける構成を採用する。したがって、本実施形態で用いるイメージセンサ１０は、図６のように、光検出素子２の感度を調節する感度調節部１１と、光検出素子２で生成した電荷を所望の期間に亘って集積する電荷集積部１２と、電荷集積部１２に集積した電荷をイメージセンサ１０から取り出す電荷取出部１３とをを備える。
【００５２】
以下では、感度調節部１１の具体的な構成として、光検出素子２とは別に電荷集積部１２を設け光検出素子２で生成された電荷のうち電荷集積部１２に与える電荷の割合を調節する技術と、光検出素子２に電荷集積部１２を設け光検出素子２において実質的に電荷を生成する部位の面積（大きさ）を変化させることにより電荷集積部１２に集積される電荷の量を調節する技術とを示す。感度調節部１１を設け、所望の期間にのみ感度を高めるようにすれば、目的の期間の電荷のみを取り出すことになるから、実質的にサンプリングしたことになり、実施形態１、２におけるサンプリング部６の機能を感度調節部１１により実現することができる。
【００５３】
光検出素子２とは別に設けた電荷集積部１２に与える電荷の割合を調節するには、光検出素子２から電荷集積部１２への電荷の通過率を調節する技術と、光検出素子２から電荷を廃棄する廃棄率を調節する技術と、通過率と廃棄率との両方を調節する技術とがある。
【００５４】
感度調節部１１において通過率と廃棄率とを調節する技術では、図７に示すように、光検出素子２と電荷集積部１２との間にゲート電極１１ａを設け、ゲート電極１１ａに印加する通過電圧を変化させることにより、光検出素子２から電荷集積部１２への電荷の移動（つまり、通過率）を制御する。また、電荷廃棄部１１ｃを設け、電荷廃棄部１１ｃに付設した廃棄電極１１ｂに印加する廃棄電圧を変化させることにより、光検出素子２から電荷廃棄部１１ｃへの電荷の移動（つまり、廃棄率）を制御する。電荷集積部１２は光検出素子２ごとに一対一に対応するように設け、電荷廃棄部１１ｃは複数個の光検出素子２に共通させて一対多に対応するように設ける。図示例では、光検出素子２のすべての光検出素子２で１組の廃棄電極１１ｂおよび電荷廃棄部１１ｃを共用している。
【００５５】
感度を制御するには、光検出素子２からの電荷の廃棄を行わずに光検出素子２から電荷集積部１２への通過率の制御のみを行うことが考えられるが、電荷の廃棄を行わなければ光検出素子２において電荷が暫時残留するから、光検出素子２で生成された電荷のうち不要な残留電荷が、利用する電荷（以下、信号電荷という）に雑音成分として混入する。したがって、本実施形態では、信号電荷への残留電荷の混入を防止するために、ゲート電極１１ａに印加する通過電圧だけでなく廃棄電極１１ｂに印加する廃棄電圧を制御している。
【００５６】
ゲート電極１１ａと廃棄電極１１ｂとを用いて感度を制御するには、ゲート電極１１ａに印加する通過電圧を一定電圧に保つことにより光検出素子２で生成された電荷を電荷集積部１２に通過可能としておき、光検出素子２で生成された電荷のうち信号電荷に用いる電荷が生成される期間以外には光検出素子２から電荷廃棄部１１ｃに電荷が移動するように廃棄電極１１ｂに廃棄電圧を印加する。要するに、光検出素子２において信号電荷として用いる電荷が生成される期間にのみ電荷廃棄部１１ｃへの電荷の廃棄を行わず、他の期間には電荷廃棄部１１ｃに電荷を廃棄することにより、信号電荷として用いようとする期間に生成された電荷のみを電荷集積部１２に集積する。
【００５７】
いま、図８（ａ）のような変調信号により発光源１から空間に照射される光の強度が変調されているとする。電荷集積部１２には、変調信号の複数周期（数万〜数十万周期）において変調信号に同期する特定の区間の検出値Ａ０、Ａ１、Ａ２、Ａ３に相当する電荷を集積し、各区間の電荷の集積後に集積した電荷を取り出して次の区間の電荷を集積する。たとえば、検出値Ａ０に相当する電荷を変調信号の数万周期について集積すると、この検出値Ａ０に相当する信号電荷を一旦外部に取り出し、その後、検出値Ａ１に相当する電荷を変調信号の数万周期について集積する。
【００５８】
図８は検出値Ａ０に相当する電荷を集積している状態を示しており、図８（ｂ）に示すようにゲート電極１１ａに印加する通過電圧を一定電圧に保っている。また、検出値Ａ０に相当する電荷としては、変調信号の位相が０〜９０度の区間において光検出素子２で生成された電荷を採用している。つまり、廃棄電極１１ｂには、図８（ｃ）のように変調信号の位相が９０〜３６０度の区間において、光検出素子２で生成される電荷を不要電荷とするように廃棄電圧を印加する。この制御により、図８（ｄ）のように所望の受光期間Ｔ０に対応した信号電荷を電荷集積部１２に集積することができる。図８に示す処理は変調信号の数万〜数十万周期について行われ、この期間に電荷集積部１２に得られた信号電荷は検出値Ａ０に対応する受光出力として電荷取出部２３を通して取り出される。電荷取出部２３はＣＣＤイメージセンサまたはＣＭＯＳイメージセンサにおける垂直転送レジスタおよび水平転送レジスタと同様の構成になる。
【００５９】
電荷取出部２３から取り出された電荷は画像生成部２４に画像信号として与えられ、画像生成部２４では、実施形態１、２において説明した技術を用いて検出値Ａ０、Ａ１、Ａ２、Ａ３に相当する受光出力から対象空間内の物体３までの距離が算出される。物体３までの距離は光検出素子２ごとに求められるから、画像生成部２４では各光検出素子２に対応した各方向における物体３までの距離を算出し、対象空間の三次元情報を求める。この三次元情報を用いると、対象空間の各方向に対応した画素の画素値が距離値である距離画像を生成することができる。
【００６０】
なお、上述の制御では、廃棄電極１１ｂに廃棄電圧を印加している期間においてゲート電極１１ａにも一定電圧である通過電圧を印加しているが、廃棄電圧と通過電圧との大小関係を適宜に設定すれば、不要電荷を廃棄している期間には電荷集積部１２に信号電荷をほとんど集積しないようにすることが可能である。また、変調信号の数万〜数十万周期について信号電荷を集積しているのは、集積する電荷量を多くすることによって高感度化するためであり、変調信号をたとえば２０ＭＨｚと設定すれば、３０フレーム／秒で信号電荷を取り出すとしても、数十万周期以上の集積が可能になる。
【００６１】
上述したように、廃棄電極１１ｂを備えた電荷廃棄部１１ｃを設け、光検出素子２で生成した電荷のうち信号電荷として利用しない不要電荷を電荷廃棄部１１ｃに積極的に廃棄しているから、光検出素子２において電荷集積部１２に信号電荷を与えていない期間に光検出素子２で生成される電荷はほとんどが不要電荷として廃棄されることになり、信号電荷への雑音成分の混入が大幅に抑制される。
【００６２】
上述の例では、ゲート電極１１ａに一定電圧である通過電圧を印加している期間に廃棄電極１１ｂに廃棄電圧を印加する期間と印加しない期間とを設けることによって、廃棄電圧が印加されていない期間において光検出素子２に生成された電荷を信号電荷として用いているが、図９に示すように、ゲート電極１１ａに通過電圧を印加する期間と廃棄電極１１ｂに廃棄電圧を印加する期間とが重複しないように制御してもよい。
【００６３】
図９は検出値Ａ０に対応する信号電荷を集積する場合の動作を示している。図９（ａ）は発光源１から空間に照射される光の強度を変調する変調信号を示しており、ゲート電極１１ａには、図９（ｂ）のように、検出値Ａ０に対応するタイミングで通過電圧を印加する。ゲート電極１１ａに通過電圧を印加する期間は、変調信号の位相における０度から一定期間（図示例では０〜９０度）に設定され、この期間において光検出素子２から電荷集積部１２への電荷の移動が可能になる。一方、廃棄電極１１ｂには、図９（ｃ）のように、電荷集積部１２に検出値Ａ０に相当する信号電荷を集積する期間以外において廃棄電圧を印加し、信号電荷を集積する期間以外では光検出素子２で生成した電荷を不要電荷として電荷廃棄部１１ｃに廃棄する。このような制御によって、図９（ｄ）のように検出値Ａ０に相当する信号電荷を取り出すことが可能になる。
【００６４】
図９に示す制御では、ゲート電極１１ａに通過電圧を印加している期間と廃棄電極１１ｂに廃棄電圧を印加している期間とが異なるから、図８に示した制御例のように通過電圧と廃棄電圧との大小関係を考慮しなくとも通過電圧と廃棄電圧との大きさを独立して制御することができ、結果的に通過電圧および廃棄電圧の制御が容易になり、光検出素子２で受光した光量に対して信号電荷を取り込む割合である感度の制御が容易になるとともに、光検出素子２で生成された電荷のうち不要電荷として廃棄する割合の制御が容易になる。また、図９に示す制御例では、電荷集積部１２に信号電荷を集積する期間はゲート電極１１ａに印加する通過電圧により規定されるから、廃棄電極１１ｂに廃棄電圧を印加する期間を短縮することが可能であり、たとえば、ゲート電極１１ａに通過電圧を印加する直前の所定期間にのみ廃棄電極１１ｂに廃棄電圧を印加することも可能である。
【００６５】
図９に示す制御を行えば、光検出素子２で生成した電荷を電荷集積部１２に信号電荷として集積していない期間において光検出素子２で生成される電荷をほとんど不要電荷として廃棄するから、信号電荷への雑音成分の混入が大幅に抑制されることになる。
【００６６】
通過電圧と廃棄電圧との制御例としては、図１０に示すように、廃棄電極１１ｂに印加する廃棄電圧を一定電圧に保って光検出素子２で生成された電荷の一部をつねに廃棄する場合もある。図１０の制御例では、ゲート電極１１ａに通過電圧を印加する期間と印加しない期間とを設け、通過電圧を印加する期間を電荷集積部１２に信号電荷を集積する期間としている。
【００６７】
図１０は検出値Ａ０に相当する信号電荷を集積する場合の動作を示している。図１０（ａ）は発光源１から空間に照射される光の強度を変調する変調信号を示しており、電荷集積部１２に設けたゲート電極１１ａには、図１０（ｂ）のように、検出値Ａ０に対応する期間に通過電圧が印加され、光検出素子２において生成された電荷を検出値Ａ０に相当する信号電荷として電荷集積部１２に集積する。つまり、ゲート電極１１ａに通過電圧を印加する期間は、変調信号の位相における０度から一定期間（図示例では０〜９０度）に設定され、この期間において光検出素子２から電荷集積部１２への電荷の移動が可能になる。一方、廃棄電極１１ｂには、図１０（ｃ）のように、直流電圧である一定電圧の廃棄電圧がつねに印加され、光検出素子２で生成された電荷の一部をつねに不要電荷として電荷廃棄部１１ｃに廃棄する。上述の制御では、信号電荷を電荷集積部１２に集積する期間にのみゲート電極１１ａに通過電圧を印加しているから、図１０（ｄ）のように検出値Ａ０に相当する信号電荷を取り出すことが可能になる。
【００６８】
図１０に示す制御では、ゲート電極１１ａに通過電圧を印加しているか否かにかかわらず廃棄電極１１ｂに一定電圧の廃棄電圧を印加しているから、光検出素子２において生成された電荷のうち電荷集積部１２に信号電荷として集積されなかった不要電荷は、廃棄電荷として電荷廃棄部１１ｃに廃棄される。ここで、光検出素子２で生成された電荷の一部を信号電荷として電荷集積部１２に集積する期間においても光検出素子２から電荷廃棄部１１ｃへの電荷の廃棄が継続しているから、信号電荷を電荷集積部１２に適正に集積するために、通過電圧と廃棄電圧との大小関係を考慮する必要がある。ただし、廃棄電圧は一定電圧であって廃棄電極１１ｂにつねに印加しているだけであるから、実際には通過電圧のみを制御すればよく、制御自体は容易である。
【００６９】
図７に示した感度調節部１１を備える光検出素子２は、オーバーフロードレインを備えたＣＣＤイメージセンサにより実現することができる。ＣＣＤイメージセンサにおける電荷の転送方式はどのようなものでもよく、インターライントランスファ（ＩＴ）方式、フレームトランスファ（ＦＴ）方式、フレームインターライントランスファ（ＦＩＴ）方式のいずれであってもよい。
【００７０】
図１１に縦型オーバーフロードレインを備えるインターライントランスファ方式のＣＣＤイメージセンサの構成を示す。図示例は、光検出素子２となるフォトダイオード４１を水平方向と垂直方向とに複数個ずつ（図では３×４個）配列した２次元イメージセンサであって、垂直方向に配列したフォトダイオード４１の各列の右側方にＣＣＤからなる垂直転送レジスタ４２を備え、フォトダイオード４１および垂直転送レジスタ４２が配列された領域の下方にＣＣＤからなる水平転送レジスタ４３を備える。垂直転送レジスタ４２は各フォトダイオード４１ごとに２個ずつの転送電極４２ａ，４２ｂを備え、水平転送レジスタ４３は各垂直転送レジスタ４２ごとに２個ずつの転送電極４３ａ，４３ｂを備える。
【００７１】
フォトダイオード４１と垂直転送レジスタ４２と水平転送レジスタ４３とは１枚の半導体基板４０上に形成され、半導体基板４０の主表面には、フォトダイオード４１と垂直転送レジスタ４２と水平転送レジスタ４３との全体を囲む形でアルミニウム電極であるオーバーフロー電極４４が、半導体基板４０の全周に亘って絶縁膜を介さずに半導体基板４０に直接接触するように設けられる。オーバーフロー電極４４に半導体基板４０に対して正極性になる適宜の廃棄電圧を印加すればフォトダイオード４１で生成された電子（電荷）はオーバーフロー電極４４を通して廃棄される。オーバーフロー電極４４は、光検出素子２であるフォトダイオード４１において生成した電荷のうち不要電荷を廃棄する際に廃棄電圧が印加されるから廃棄電極１１ｂとして機能し、オーバーフロー電極４４に廃棄電圧を印加する電源が光検出素子２で生成された電子（電荷）を廃棄する電荷廃棄部１１ｃとして機能する。半導体基板４０の表面はフォトダイオード４１に対応する部位を除いて遮光膜４６（図１２参照）により覆われる。
【００７２】
図１１に示したＣＣＤイメージセンサについて、１個のフォトダイオード４１に関連する部分を切り出して図１２に示す。半導体基板４０にはｎ形半導体を用い、半導体基板４０の主表面にはフォトダイオード４１と垂直転送レジスタ４２とに跨る領域にｐ形半導体からなるウェル領域３１を形成している。ウェル領域３１は、フォトダイオード４１に対応する領域に比較して垂直転送レジスタ４２に対応する領域の厚み寸法が大きくなるように形成してある。ウェル領域３１のうちフォトダイオード４１に対応する領域にはｎ＋形半導体層３２を重ねて設けてあり、ウェル領域３１とｎ＋形半導体層３２とのｐｎ接合によってフォトダイオード４１が形成される。フォトダイオード４１の表面にはｐ＋形半導体からなる表面層３３を積層してある。表面層３３はフォトダイオード４１で生成された電荷を垂直転送レジスタ４２に移動させる際に、ｎ＋形半導体層３２の表面付近が電荷の通過経路にならないように制御する目的で設けてある。このような構造は、埋込フォトダイオードとして知られている。
【００７３】
ウェル領域３１のうち垂直転送レジスタ４２に対応する領域にはｎ形半導体からなる集積転送層３４を重ねて設けてある。集積転送層３４の表面と表面層３３の表面とは略同一平面であって、集積転送層３４の厚み寸法は表面層３３の厚み寸法よりも大きくしてある。集積転送層３４は、表面層３３とは接触しているが、ｎ＋形半導体層３２との間には、表面層３３と不純物濃度が等しいｐ＋形半導体からなる分離層３５が介在する。集積転送層３４の表面には、絶縁膜４５を介して転送電極４２ａ，４２ｂが配置される。転送電極４２ａ，４２ｂは１個のフォトダイオード４１に対して２個ずつ設けられ、垂直方向において２個の転送電極４２ａ，４２ｂのうちの一方は他方よりも広幅に形成される。具体的には、図１３のように、１個のフォトダイオード４１に対応する２個の転送電極４２ａ，４２ｂのうち狭幅の転送電極４２ｂは平板状に形成されており、広幅の転送電極４２ａは、幅狭の転送電極４２ｂと同一平面上に配列され一対の転送電極４２ｂの間に配置される平板状の部分と、平板状の部分の垂直方向（図１３の左右方向）における両端部からそれぞれ延長され転送電極４２ｂの上に重複する湾曲した部分とを備える。ここに、絶縁膜４５はＳｉＯ２  により形成され、また転送電極４２ａ，４２ｂはポリシリコンにより形成され、各転送電極４２ａ，４２ｂは絶縁膜４５を介して互いに絶縁されている。さらに、フォトダイオード４１に光を入射させる部位を除いて光検出素子２の表面は遮光膜４６により覆われる。ウェル領域３１において垂直転送レジスタ４２に対応する領域および集積転送層３４は垂直転送レジスタ４２の全長に亘って形成され、したがって、集積転送層３４には広幅の転送電極４２ａと狭幅の転送電極４２ｂとが交互に配列される。
【００７４】
上述した光検出素子２では、フォトダイオード４１が光検出素子２に相当し、転送電極４２ａがゲート電極１１ａに相当し、オーバーフロー電極４４が廃棄電極１１ｂに相当し、垂直転送レジスタ４２が電荷集積部１２および電荷取出部２３の一部として機能する。また、水平転送レジスタ４３も電荷取出部２３の一部になる。すなわち、フォトダイオード４１に光が入射すれば電荷が生成され、フォトダイオード４１で生成された電荷のうち垂直転送レジスタ４２に信号電荷として引き渡される電荷の割合は転送電極４２ａに印加する通過電圧とオーバーフロー電極４４に印加する廃棄電圧との関係によって決めることができる。転送電極４２ａに通過電圧を印加すると集積転送層３４にポテンシャル井戸が形成され、通過電圧の制御によりポテンシャル井戸の深さを制御することができる。したがって、ポテンシャル井戸の深さおよび通過電圧を印加する時間とを制御すれば、フォトダイオード４１から垂直転送レジスタ４２に引き渡される電荷の割合を調節することができる。また、オーバーフロー電極４４に印加する廃棄電圧を制御すれば、フォトダイオード４１と半導体基板４０との間の電位勾配を制御することができるから、電位勾配と廃棄電圧を印加する時間とを制御すれば、垂直転送レジスタ４２に引き渡される電荷の割合を調節することができる。通過電圧と廃棄電圧とは図８ないし図１０に示した制御例のように制御すればよい。
【００７５】
フォトダイオード４１から垂直転送レジスタ４２に引き渡された信号電荷は、上述した４区間の検出値Ａ０，Ａ１，Ａ２，Ａ３のうちの各１区間の検出値Ａ０，Ａ１，Ａ２，Ａ３に相当する信号電荷が集積されるたびに読み出される。たとえば、検出値Ａ０に相当する信号電荷が各フォトダイオード４１に対応して形成されるポテンシャル井戸に集積されると信号電荷を読み出し、次に検出値Ａ１に相当する信号電荷がポテンシャル井戸に集積されると再び信号電荷を読み出すという動作を繰り返す。なお、各検出値Ａ０，Ａ１，Ａ２，Ａ３に相当する信号電荷を集積する期間は等しく設定しておく。
【００７６】
上述した制御例のうち、図８に示す制御例では、光検出素子２（フォトダイオード４１）で生成された電荷（電子）を電荷集積部１２（垂直転送レジスタ４２）に対してつねに引き渡しているから、電荷集積部１２に集積された電荷は必ずしも目的の検出値Ａ０、Ａ１、Ａ２、Ａ３が得られる期間に生成された電荷だけではなく、目的外の期間に生成された電荷も混入することになる。いま、感度調節部１１において、検出値Ａ０、Ａ１、Ａ２、Ａ３に対応した電荷を生成する期間の感度をα、それ以外の期間の感度をβとし、光検出素子２は検出値に比例する電荷を生成するものとする。この条件では、検出値Ａ０に対応した電荷を集積する電荷集積部１２には、αＡ０＋β（Ａ１＋Ａ２＋Ａ３）＋βＡｘ（Ａｘは検出値Ａ０、Ａ１、Ａ２、Ａ３が得られる期間以外の検出値）に比例する電荷が集積され、検出値Ａ２に対応した電荷を集積する電荷集積部１２には、αＡ２＋β（Ａ０＋Ａ１＋Ａ３）＋βＡｘに比例する電荷が集積される。上述したように、位相差ψを求める際には（Ａ２−Ａ０）を求めており、（Ａ２−Ａ０）に相当する値を電荷集積部１３に集積した電荷（受光出力）から求めると（α−β）（Ａ２−Ａ０）になり、同様にして（Ａ３−Ａ１）に相当する値は（α−β）（Ａ３−Ａ１）になるのであって、位相差ψ＝（Ａ２−Ａ０）／（Ａ３−Ａ１）は電荷の混入の有無によらず理論上は同じ値になるのであって、電荷が混入しても求める位相差ψは同じ値になる。
【００７７】
上述した構成例では、ＣＣＤイメージセンサを光検出素子２に用い、光検出素子２とは別に設けた電荷集積部１２に通過させる電荷の量と、電荷廃棄部１１ｃに廃棄する電荷の量との少なくとも一方を制御することにより感度調節部１１を構成する例を示したが、以下に示す構成例は、光検出素子２に電荷集積部１２を設け、電荷集積部１２の大きさを変化させることにより感度調節部１１として機能させるものである。
【００７８】
以下に光検出素子２の具体例を説明する。図１４に示す構成では、複数個（たとえば、１００×１００個）の光検出素子２を１枚の半導体基板上に形成してある。１個の光検出素子２は不純物を添加した半導体層２１に酸化膜からなる絶縁膜２２を介して複数個（図では５個）の制御電極２３を配列した構成を有する。図示例では電極が並ぶ方向（左右方向）が垂直方向であり、光検出素子２で生成した電荷（本実施形態では、電子を用いる）を取り出す際には、垂直転送レジスタにより電荷を垂直方向に転送した後、水平転送レジスタを用いて水平方向に転送される。つまり、垂直転送レジスタと水平転送レジスタとにより電荷取出部２３が構成される。垂直転送レジスタおよび水平転送レジスタの構成には、ＣＣＤイメージセンサにおけるインターライントランスファ（ＩＴ）方式、フレームトランスファ（ＦＴ）方式、フレームインターライントランスファ（ＦＩＴ）方式と同様の構成を採用することができる。
【００７９】
すなわち、垂直方向に並ぶ各光検出素子２が一体に連続する半導体層２１を共用するとともに半導体層２１を垂直転送レジスタに用いれば、半導体層２１が光検出素子２と電荷の転送経路とに兼用された構造になり、ＦＴ方式のＣＣＤイメージセンサと同様にして電荷を垂直方向に転送することができ、また、光検出素子２から転送ゲートを介して垂直転送レジスタに電荷を転送すれば、ＩＴ方式またはＦＩＴ方式のＣＣＤイメージセンサと同様にして電荷を転送することができる。
【００８０】
上述のように、半導体層２１は不純物が添加してあり、半導体層２１の主表面は酸化膜からなる絶縁膜２２により覆われ、半導体層２１に絶縁膜２２を介して複数個の制御電極２３を配置している。この光検出素子２はＭＩＳ素子として知られた構造であるが、１個の光検出素子２として機能する領域に複数個（図示例では５個）の制御電極２３を備える点が通常のＭＩＳ素子とは異なる。絶縁膜２２および制御電極２３は発光源１から対象空間に照射される光と同波長の光が透過するように材料が選択され、絶縁膜２２を通して半導体層２１に光が入射すると、半導体層２１の内部に電荷が生成される。図示例の半導体層２１の導電形はｎ形であり、光の照射により生成される電荷として電子ｅを利用する。図１０は１個の光検出素子２に対応する領域のみを示したものであり、半導体基板（図示せず）には上述したように図１４の構造を持つ領域が複数個配列されるとともに電荷取出部２３となる構造が設けられる。電荷取出部２３として設ける垂直転送レジスタは、図１４の左右方向に電荷を転送することを想定しているが、図１４の面に直交する方向に電荷を転送する構成を採用することも可能である。また、電荷を図の左右方向に転送する場合には、制御電極２３の左右方向の幅寸法を１μｍ程度に設定するのが望ましい。
【００８１】
この構造の光検出素子２では、制御電極２３に正の制御電圧＋Ｖを印加すると、半導体層２１には制御電極２３に対応する部位に電子ｅを集積するポテンシャル井戸（空乏層）２４が形成される。つまり、半導体層２１にポテンシャル井戸２４を形成するように制御電極２３に制御電圧を印加した状態で光が半導体層２１に照射されると、ポテンシャル井戸２４の近傍で生成された電子ｅの一部はポテンシャル井戸２４に捕獲されてポテンシャル井戸２４に集積され、残りの電子ｅは半導体層２１の深部での再結合により消滅する。また、ポテンシャル井戸２４から離れた場所で生成された電子ｅも半導体層２１の深部での再結合により消滅する。
【００８２】
ポテンシャル井戸２４は制御電圧を印加した制御電極２３に対応する部位に形成されるから、制御電圧を印加する制御電極２３の個数を変化させることによって、半導体層２１の主表面に沿ったポテンシャル井戸２４の面積（言い換えると、受光面において利用できる電荷を生成する領域の面積）を変化させることができる。つまり、制御電圧を印加する制御電極２３の個数を変化させることは感度調節部１１における感度の調節を意味する。たとえば、図１４（ａ）のように３個の制御電極２３に制御電圧＋Ｖを印加する場合と、図１４（ｂ）のように１個の制御電極２３に制御電圧＋Ｖを印加する場合とでは、ポテンシャル井戸２４が受光面に占める面積が変化するのであって、図１４（ａ）の状態のほうがポテンシャル井戸２４の面積が大きいから、図１４（ｂ）の状態に比較して同光量に対して利用できる電荷の割合が多くなり、実質的に光検出素子２の感度を高めたことになる。このように、光検出素子２および感度調節部１１は半導体層２１と絶縁膜２２と制御電極２３とにより構成されていると言える。ポテンシャル井戸２４は光照射により生成された電荷を保持するから電荷集積部１２として機能する。
【００８３】
上述したように、ポテンシャル井戸２４から電荷を取り出すには、ＣＣＤイメージセンサと同様の技術を採用する。たとえば光検出素子２を垂直転送レジスタとして用いる場合は、ポテンシャル井戸２４に電子ｅが集積された後に、電荷の集積時とは異なる印加パターンの制御電圧を制御電極２３に印加することによってポテンシャル井戸２４に集積された電子ｅを一方向（たとえば、図の右方向）に転送することができる。あるいはまた、光検出素子２とは別に設けた垂直転送レジスタに転送ゲートを介して光検出素子２から電荷を転送する構成を採用することもできる。垂直転送レジスタからは水平転送レジスタに電荷を引き渡し、水平転送レジスタを転送された電荷は、半導体基板に設けた図示しない電極から光検出素子２の外部に取り出される。
【００８４】
図１４に示す構成における感度調節部１１は、信号電荷を集積する領域（つまり、電荷集積部１２）の大きさ（面積）を大小２段階に切り換えることにより光検出素子２の感度を高低２段階に切り換えるものであって、各検出値Ａ０、Ａ１、Ａ２、Ａ３のいずれかに対応する電荷を光検出素子２で生成しようとする期間にのみ高感度とし（電荷を生成する面積を大きくし）、他の期間には低感度にする。高感度にする期間と低感度にする期間とは、発光源１を駆動する変調信号に同期させて設定される。具体的には、変調信号に同期する特定の区間（特定位相の区間）において、電荷を生成する面積を大きくして光検出素子２で生成した電荷を集積し、上記特定区間以外の他の区間において、電荷を生成する面積を小さくして光検出素子２で生成した電荷を蓄積する。すなわち、光検出素子２において、電荷を集積する機能と蓄積する機能とが交互に実現される。ここで、集積とは電荷を集めることを意味し、蓄積とは電荷を保持することを意味する。言い換えると、図１４に示す構成例では、光検出素子２に設けた電荷集積部１２の大きさ（面積）を変化させることにより、電荷を集積する期間には光検出素子２で生成された電荷の集積率を大きくし、電荷を蓄積する期間には光検出素子２で生成された電荷の集積率を小さくするのである。
【００８５】
また、変調信号の複数周期に亘ってポテンシャル井戸２４に電荷を集積した後に電荷取出部２３を通して光検出素子２の外部に電荷を取り出すようにしている。変調信号の複数周期に亘って電荷を集積しているのは、変調信号の１周期内では光検出素子２が利用可能な電荷を生成する期間が短く（たとえば、変調信号の周波数を２０ＭＨｚとすれば５０ｎｓの４分の１以下）、生成される電荷が少ないからである。つまり、変調信号の複数周期分の電荷を集積することにより、信号電荷（発光源１から照射された光に対応する電荷）と不要電荷（外光成分および光検出素子２の内部で発生するショットノイズに対応する電荷）との比を大きくとることができ、大きなＳＮ比が得られる。
【００８６】
ところで、位相差ψを求めるのに必要な４区間の検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を１個の光検出素子２で生成するとすれば、視線方向に関する分解能は高くなるが、１区間の検出値Ａ０、Ａ１、Ａ２、Ａ３について電荷を集積し受光出力を取り出した後に、次の区間の検出値Ａ、Ａ１、Ａ２、Ａ３について電荷を集積するという動作を繰り返すものであるから、各検出値Ａ０、Ａ１、Ａ２、Ａ３を求めた時刻の時間差が大きくなるから位相差ψの誤差が大きくなる可能性がある。一方、各検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を４個の光検出素子２でそれぞれ生成するとすれば、各検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を求める時間差は小さくなるが、４区間の電荷を求める視線方向にずれが生じ視線方向に関する分解能は低下する。そこで、２個の光検出素子２を用いることにより、変調信号の１周期内で検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を２種類ずつ生成する構成を採用してもよい。つまり、２個の光検出素子２を組にして用い、組になる２個の光検出素子２に同じ視線方向からの光が入射するようにしてもよい。
【００８７】
この構成を採用することにより、視線方向の分解能を比較的高くし、かつ検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を生成する時間差を少なくすることができる。つまり、検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を生成する時間差を少なくしていることにより、対象空間の中で移動している物体３についても距離の検出精度を比較的高く保つことができる。なお、この構成では、１個の光検出素子２で４種類の検出値Ａ０、Ａ１、Ａ２、Ａ３に対応する電荷を生成する場合よりも視線方向の分解能が低下するが、視線方向の分解能については光検出素子２の小型化やイメージセンサへの光の入射経路に配置する受光光学系（図示せず）の設計によって向上させることが可能である。
【００８８】
以下に動作を具体的に説明する。図１４に示した例では、１個の光検出素子２について５個の制御電極２３を設けた例を示しているが、両側の２個の制御電極２３は、光検出素子２で電荷（電子ｅ）を生成している間に隣接する光検出素子２に電荷が流出するのを防止するための障壁を形成するものであって、２個の光検出素子２を組にして用いる場合には隣接する光検出素子２のポテンシャル井戸２４の間には、いずれかの光検出素子２で障壁が形成されるから、各光検出素子２には３個ずつの制御電極２３を設けるだけで足りることになる。この構成によって、光検出素子２の１個当たりの占有面積が小さくなり、２個の光検出素子２を組にして用いながらも視線方向の分解能の低下を抑制することが可能になる。
【００８９】
なお、太陽光や照明光のような外乱光の影響があるときには、発光源１から放射される光の波長のみを透過させる光学フィルタを光検出素子２の前に配置するのが望ましい。また、区間関数は、上述の例に制限されるものではなく、変調信号の波形や受光期間のタイミングなどにより適宜に設定することができる。
【図面の簡単な説明】
【００９０】
【図１】実施形態１を示すブロック図である。
【図２】同上の動作説明図である。
【図３】同上における演算処理部の処理手順を示す流れ図である。
【図４】同上の動作説明図である。
【図５】実施形態２に用いる演算処理部を示すブロック図である。
【図６】実施形態３を示すブロック図である。
【図７】同上における感度制御部の構成例を示すブロック図である。
【図８】同上の動作例を示す説明図である。
【図９】同上の他の動作例を示す説明図である。
【図１０】同上のさらに他の動作例を示す説明図である。
【図１１】同上に用いるイメージセンサの構成例を示す平面図である。
【図１２】図１０に示したイメージセンサの要部分解斜視図である。
【図１３】図１２のＡ−Ａ線の断面図である。
【図１４】同上に用いる光検出素子の他の構成例の要部の動作説明図である。
【図１５】従来例の動作説明図である。
【符号の説明】
【００９１】
１  発光源
２  光検出素子
３  物体
４  タイミング制御回路
５  サンプリング部
６  演算処理部
７  区間判別部
８  演算部
【図１】
2006214998.tif 000007
【図２】
2006214998.tif 000008
【図３】
2006214998.tif 000009
【図４】
2006214998.tif 000010
【図５】
2006214998.tif 000011
【図６】
2006214998.tif 000012
【図７】
2006214998.tif 000013
【図８】
2006214998.tif 000014
【図９】
2006214998.tif 000015
【図１０】
2006214998.tif 000016
【図１１】
2006214998.tif 000017
【図１２】
2006214998.tif 000018
【図１３】
2006214998.tif 000019
【図１４】
2006214998.tif 000020
【図１５】
2006214998.tif 000021