以下に、本発明の一実施形態の物体検出装置100について、図面を参照して説明する。
図1には、物体検出装置100の概略的構成がブロック図にて示されている。
物体検出装置100は、一例として、移動体としての車両に搭載され、投光し、物体(例えば先行車両、停車車両、障害物、歩行者等)で反射(散乱)された光を受光して該物体の有無や、該物体までの距離等の物体に関する情報(以下では「物体情報」とも呼ぶ)を検出する走査型レーザレーダである。物体検出装置100は、例えば車両のバッテリ(蓄電池)から電力の供給を受ける。
すなわち、物体検出装置100は、物体有無判定装置や距離測定装置(測距装置)や物体認識装置として機能する。
物体検出装置100は、図1に示されるように、投光系10、光検出系40、信号処理系41、信号判定回路49(判定系)、時間計測部45(演算系の一部)、測定制御部46(演算系の一部)、同期系50、物体認識部47などを備えている。
投光系10は、光源としてのLD11(レーザダイオード)、LD駆動部12、投光光学系20を含む。
LD11は、端面発光レーザとも呼ばれ、LD駆動部12により駆動され、レーザ光を射出する。LD駆動部12は、測定制御部46から出力されるLD駆動信号(矩形パルス信号)を用いてLD11を点灯(発光)させる。LD駆動部12は、一例として、LD11に電流を供給可能に接続されたコンデンサ、該コンデンサとLD11との間の導通/非導通を切り替えるためのトランジスタ、該コンデンサを充電可能な充電手段等を含む。測定制御部46は、自動車のECU(エレクトロニックコントロールユニット)からの測定制御信号(測定開始信号や測定停止信号)を受けて測定開始や測定停止を行う。
なお、上記光源としてLD11を用いているが、これに限られない。例えば、VCSEL(面発光レーザ)、有機EL素子、LED(発光ダイオード)、LDやVCSEL以外のレーザ等の他の発光素子を用いても良い。
図2(A)には、投光光学系20、同期系50が模式的に示されている。図2(B)には、受光光学系30が模式的に示されている。以下では、図2(A)等に示されるZ軸方向を鉛直方向とするXYZ3次元直交座標系を適宜用いて説明する。
投光光学系20は、図2(A)に示されるように、LD11からの光の光路上に配置されたカップリングレンズ22と、該カップリングレンズ22を介した光の光路上に配置された反射ミラー24と、該反射ミラー24で反射された光の光路上に配置された偏向器としての回転ミラー26と、を含む。ここでは、装置を小型化するために、カップリングレンズ22と、偏向器としての回転ミラー26との間の光路上に反射ミラー24を設けて光路を折り返している。
そこで、LD11から射出された光は、カップリングレンズ22により所定のビームプロファイルの光に整形された後、反射ミラー24で反射され、回転ミラー26でZ軸周りに偏向される。
回転ミラー26でZ軸周りの所定の偏向範囲に偏向された光が投光光学系20から投射された光、すなわち物体検出装置100から射出された光である。
回転ミラー26は、回転軸(Z軸)周りに複数の反射面を有し、反射ミラー24からの光を回転軸周りに回転しながら反射(偏向)することで該光により上記偏向範囲に対応する有効走査領域を水平な1軸方向(ここではY軸方向)に1次元走査する。ここでは、偏向範囲、有効走査領域は、物体検出装置100の+X側である。以下では、回転ミラー26の回転方向を「ミラー回転方向」とも呼ぶ。
回転ミラー26は、図2(A)から分かるように、反射面を2面(対向する2つの面)有しているが、これに限らず、1面でも3面以上でも良い。また、少なくとも2つの反射面を設け、回転ミラーの回転軸に対して異なった角度で傾けて配置して、走査・検出する領域をZ軸方向に切り替えることも可能である。
なお、偏向器として、回転ミラーに代えて、例えば、ポリゴンミラー(回転多面鏡)、ガルバノミラー、MEMSミラー等の他のミラーを用いても良い。
光検出系40は、図2(B)及び図1に示されるように、投光光学系20から投射され有効走査領域内にある物体で反射された光が入射される受光光学系30と、該受光光学系30を介した光を受光する時間計測用PD42と、該時間計測用PD42の出力電流(光電流)を電圧信号(受光信号)に変換するIV変換器43(電流電圧変換器)と、を含む。なお、「PD」はフォトダイオードの略称である。
受光光学系30は、図2(B)に示されるように、投光光学系20から投射され有効走査領域内にある物体で反射された光を反射する回転ミラー26と、該回転ミラー26からの光を反射する反射ミラー24と、該反射ミラー24からの光の光路上に配置され、該光を後述する時間計測用PD42に結像させる結像光学系と、を含む。
ここで、投光光学系20と受光光学系30は同一筐体内に設置されている。この筐体は、投光光学系20からの射出光の光路上及び受光光学系30への入射光の光路上に開口部を有し、該開口部がウィンドウ(光透過窓部材)で塞がれている。ウィンドウは例えばガラス製、樹脂製とすることができる。
図2(C)には、LD11から反射ミラー24までの光路と、反射ミラー24から時間計測用PD42までの光路が示されている。
図2(C)から分かるように、投光光学系20と受光光学系30は、Z軸方向に重なるように配置されており、回転ミラー26と反射ミラー24は、投光光学系20と受光光学系30で共通となっている。これにより、物体上におけるLD11の照射範囲と時間計測用PD42の受光可能範囲の相対的な位置ずれを小さくでき、安定した物体検出を実現できる。
そこで、投光光学系20から投射され物体で反射された光は、回転ミラー26、反射ミラー24を介して結像光学系に導かれ、該結像光学系により時間計測PD42に集光する(図2(B)参照)。図2(B)では、装置を小型化するために、回転ミラー26と結像光学系との間に反射ミラー24を設けて光路を折り返している。ここでは、結像光学系は2枚のレンズ(結像レンズ)で構成されているが、1枚のレンズとしても良いし、3枚以上のレンズとしても良いし、ミラー光学系を用いても良い。
信号処理系41は、IV変換器43からの電圧信号(受光信号)を増幅する信号増幅器としてのオペアンプ48と、該オペアンプ48で増幅された電圧信号を閾値(閾値電圧)を基準に二値化し、該電圧信号が閾値を超えている間、ハイレベル信号を検出信号として時間計測部45に出力する、コンパレータを含む二値化回路44と、を含む。
なお、信号処理系41においてオペアンプ48は必須ではない。
同期系50は、図2(A)及び図1に示されるように、LD11から射出されカップリングレンズ22を介して反射ミラー24で反射された光であって回転ミラー26で偏向され反射ミラー24で再び反射された光の光路上に配置された同期レンズ52と、該同期レンズ52を介した光の光路上に配置された同期検知用PD54と、該同期検知用PD54の出力電流(光電流)を電圧信号に変換するIV変換器53(電流電圧変換器)と、該IV変換器53からの電圧信号を増幅する信号増幅器としてのオペアンプ55と、該オペアンプ55からの電圧信号を閾値を基準に二値化し、該電圧信号が閾値を超えている間、ハイレベル信号を同期信号として測定制御部46に出力する、コンパレータを含む二値化回路56と、を含む。
詳述すると、反射ミラー24は、上記偏向範囲に対して回転ミラー26の回転方向上流側に配置され、回転ミラー26で上記偏向範囲の上流側に偏向された光が入射される。そして、回転ミラー26で偏向され反射ミラー24で反射された光が同期レンズ52を介して同期検知用PD54に入射される。
なお、反射ミラー24は、上記偏向範囲に対して回転ミラー26の回転方向下流側に配置されても良い。そして、回転ミラー26で偏向され反射ミラー24で反射された光の光路上に同期系50が配置されても良い。
回転する回転ミラー26の反射面で反射された光が同期検知用PD54で受光される度に同期検知用PD54から光電流が出力される。この結果、二値化回路56からは定期的に同期信号が出力される(図3参照)。
このように回転ミラー26からの光を同期検知用PD54に照射するための同期点灯を行うことで、同期検知用PD54での受光タイミングから、回転ミラー26の回転タイミングを得ることが可能となる。
そこで、LD11を同期点灯してから所定時間経過後にLD11をパルス点灯することで有効走査領域を光走査することができる。すなわち、同期検知用PD54に光が照射されるタイミングの前後期間にLD11をパルス点灯することで有効走査領域を光走査することができる。
なお、同期系は、同期レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
ここで、時間計測や同期検知に用いる受光素子としては、上述したPD(Photo Diode)の他、APD(Avalanche Photo Diode)、ガイガーモードAPDであるSPAD(Single Photon Avalanche Diode)等を用いることが可能である。APDやSPADは、PDに対して感度が高いため、検出精度や検出距離の点で有利である。
測定制御部46は、二値化回路56からの同期信号に基づいてLD駆動信号を生成し、該LD駆動信号をLD駆動部12及び時間計測部45に出力する。
すなわち、LD駆動信号は、同期信号に対して遅延した発光信号(LDを発光させるためのパルス信号)である(図3参照)。
LD駆動信号がLD駆動部12に入力されると、LD駆動部12からLD11に駆動電流が印加され、LD11からパルス光が出力される。なお、LD11の安全性やLD11の耐久性の観点からLD11の発光のデューティが制限されるため、LD11から出力されるパルス光はパルス幅が狭い方が望ましく、該パルス幅は、一般に10ns〜数十ns程度に設定される。また、パルス間隔は一般に数十μ秒程度である。
信号判定回路49は、二値化回路44の出力信号に基づいて受光信号が正常であるか否かを判定し、その判定結果を時間計測部45に出力する。信号判定回路49で行われる判定方法の詳細については後述する。
時間計測部45は、信号判定回路49での判定結果によらず又は該判定結果が肯定的である場合に、LD駆動信号の立ち上がりタイミング(LD11の発光タイミング)及び二値化回路44の出力信号(ハイレベル信号)に基づいて、物体検出装置100と対象物(測定対象の物体)との間を光が往復する時間を計測し、該時間を時間計測結果として測定制御部46に出力する。
測定制御部46は、時間計測部45からの時間計測結果が入力されたときに該時間計測結果に光速を乗じて距離に換算し、その換算値の1/2を物体検出装置100と対象物との間の距離を表す距離データとして物体認識部47に出力する。
測定制御部46は、記憶部を有している。ここでは、この記憶部は、例えばメモリよって実現されているが、ハードディスクで実現することも可能である。
物体認識部47は、測定制御部46からの1走査もしくは複数の走査で取得した複数の距離データに基づいて、どこに物体があるかを認識し、その物体認識結果を測定制御部46に出力する。測定制御部46は、該物体認識結果をECUに転送する。
時間計測部45、測定制御部46及び物体認識部47は、例えばCPU(Central Processing Unit)やIC(Integrated Circuit)によって実現できる。
ECUは、転送された物体認識結果に基づいて、例えば自動車の操舵制御(例えばオートステアリング)、速度制御(例えばオートブレーキ、オートアクセル等)運転者へ視覚や聴覚に訴える警告等を行う。
ここで、LD駆動部12は、回転ミラー26によって有効走査領域が走査されるとき、LD11を駆動して(発光させて)、図4(A)に示されるようなパルス光(以下では「射出光パルス」とも称する)を射出させる。そして、LD11から射出され物体で反射(散乱)されたパルス光(以下では「反射光パルス」とも称する)が時間計測用PD42(図4(A)では受光素子としてPDの代わりにAPDを用いている)で受光される。
LD11が射出光パルスを射出してから、APDで反射光パルスを受光するまでの時間tを計測することで、物体までの距離を算出することが可能である。時間計測に関しては、例えば、図4(B)に示されるように、射出光パルスをPD等の受光素子で受光して光電変換後、電流電圧変換して(さらには必要に応じて信号増幅して)得られた電圧信号を二値化して矩形パルスとし、反射光パルスをAPDで受光して光電変換後、電流電圧変換して(さらには必要に応じて信号増幅して)得られた電圧信号(受光信号)を二値化して矩形パルスとし、両矩形パルスの立ち上がりタイミング間の時間tを時間計測部で計測しても良いし、射出光パルス、反射光パルスの波形をA/D変換してデジタルデータに変換し、両波形のデジタルデータを相関演算することで、時間tを計測することも可能である。
ところで、受光信号(アナログ信号)をA/D変換(アナログ/デジタル変換)する回路としてA/Dコンバータがある。受光信号(アナログ信号)を微分する微分回路に、このA/Dコンバータを用いることで受光信号のピーク位置(ピークの時刻)を求めることが可能であり該ピーク位置を用いることで正確な測距ができる。
しかしながら、受光信号のピークの大きさが微分回路の出力できる範囲を超えると、微分回路から出力される信号が飽和するため、ピーク位置を求めることができず、正確な測距ができなくなってしまう。
近距離にある反射率が高い物体(以下では「近距離高反射物体」とも呼ぶ)からの反射光の強度は強く(信号レベルが高く)、遠距離にある反射率が低い物体(以下では「遠距離低反射物体」とも呼ぶ)からの反射光の強度は弱い(信号レベルが低い)。信号処理系内の回路(例えば信号増幅器としてのオペアンプ48が該当)から出力される信号の飽和を回避するためには信号処理系内の回路の出力可能レベルを信号レベルが高い近距離高反射物体からの反射光の信号レベルに合わせることが一般的である。この場合、測距装置としては、近距離高反射物体に測距レンジを合わせた装置となる。
しかしながら、このような測距装置は、少なくとも遠距離低反射物体に対しての測距には適さない装置になってしまう。
さらに、A/Dコンバータは非常に高価であり、装置のコストアップを招いてしまう。
そこで、発明者らは、近距離高反射物体から遠距離低反射物体まで高精度な測距が可能であり、A/Dコンバータ等の高価な素子を用いない安価な距離測定装置(測距装置)を実現するために装置開発を行った。そして、装置開発において、以下に詳述するような物体の反射率の違いによる測距誤差や、ゴーストの発生を含めた不正確な測距結果をもたらす現象を解決しなければならなかった。
ここで、その解決策について説明する前に、物体検出装置100で実施される測距方法、光検出系40や信号処理系41を構成する回路素子における信号の電圧の飽和/非飽和などについての説明を行う。
物体検出装置100では、LD11から射出され物体で反射され戻ってきた反射光パルスの受光タイミングを、該反射光パルスに基づく受光信号が所定の閾値Vthを横切るタイミングに基づいて設定し、LD11の発光タイミングから受光タイミングまでの時間から、当該物体までの距離を求める。
そこで、先ず、受光タイミングの設定が異なるTr測距とTm測距について、図5を参照して説明する。
Tr測距では、発光タイミングから、受光信号の立ち上がりが閾値Vthを上回る(横切る)タイミング(受光タイミング)までの時間Trを距離に換算する。
Tm測距では、発光タイミングから、受光信号の立ち上がりが閾値Vthを上回る(横切る)タイミングと該受光信号の立ち下がりが閾値Vthを下回る(横切る)タイミングの中間のタイミング(受光タイミング)までの時間Tmを距離に換算する。
次に、光検出系40や信号処理系41を構成する回路素子における信号の電圧の飽和/非飽和について説明する。
先ず、図6に示される、実験で得られた測距データにおいて、同軸ケーブルを通じて観測されるオシロスコープの信号は、近距離(例えば10〜40m)にターゲット(測定対象物)としての黒幕を設置したときには1.2V付近で電圧が飽和し、ピークが確認できない飽和波形となっている。これは、回路素子としてのオペアンプがそれ以上の電圧を出力できなくなるために生じる現象である。
一方、遠距離(例えば40〜70m)にターゲットとしての黒幕を設置したときには、該黒幕からの反射光の光量が少なくなるため、信号のピークが確認できる非飽和波形となっている。
この実験で用いられている黒幕は、0.7m×1.5mの大きさの、870nmの波長に対して10%程度の反射率を持つもの(詳しくは、品名:植毛布コスモ黒、メーカー:株式会社ナカヒロ)である。信号の電圧の飽和が強くなるほどその信号のパルス幅は広がっていくので、安価な装置を提供するためにA/Dコンバータを搭載しない場合、基本的にはTr測距を行う必要がある。その理由については後述する。
なお、上記実験では、一例として黒幕をターゲットとして用いて測距が行われているが、より反射率の高い他の色のターゲット(例えば白幕)を用いて測距を行っても良い。
図6のように受光信号が飽和する原因としては、光検出系40の回路素子であるIV変換器43や信号処理系41の回路素子であるオペアンプ48を遠距離にある物体や反射率が低い物体でも測定できるようなレンジに設定することで、近距離にある物体や反射率が高い物体からの強い反射光の受光により当該回路素子において電圧が飽和することが挙げられる。
装置にA/Dコンバータを搭載しない場合であって、電圧の飽和が生じるような設定の回路素子を用いて物体までの距離を測定した場合、該物体のエッジ部から後方へと多数のゴーストが生じることがあり、それはあたかも彗星の尾のように見える。そこで、このような現象を、本明細書では、便宜上「コメット現象」と称する。コメット現象が生じると距離画像(画素毎の距離情報を統合した画像)上で非常に目障りであり、実体とゴーストとの区別がつかなくなるため移動体からの物体認識を行う場合に誤認が発生するおそれがある。
コメット現象を大きく分類すると次の2種類となる。
(1)光検出系40や信号処理系41において受光信号の電圧が飽和しているときのコメット現象(以下では「飽和コメット」とも呼ぶ)
(2)光検出系40や信号処理系41において受光信号の電圧が非飽和のときのコメット現象(以下では「非飽和コメット」とも呼ぶ)
以下では、各コメット現象の原因を明らかにし、その解決策を提示する。
なお、これらのコメット現象は、同一距離にある反射率が異なる複数の物体について測距するときに生じる測距誤差ついても同様の原理に起因する問題となるため、その解決策も同様である。
先ず、飽和コメットについて図7、図8の実験データ等を用いて説明する。図7の実験データは、3mと6mの距離にターゲット(測定対象物)としての黒幕を1つずつ水平方向にずらして置き(図8上図参照)、両黒幕を水平方向に走査してTr測距した結果である。図7の横軸は0.1°ずつ水平方向に画角を振った角度であり、縦軸はTr測距で得られた測距値である。
図7から分かるように、3mと6mの距離にある黒幕の間(角度0°付近)では測距値は3mから6mへ直ちに遷移せず、3mと6mの間の測距値が徐々に表れて、ゴーストとなるコメット現象(飽和コメット)が発生している。なお、黒幕の反射率は10%程度と低いものの、本実験のようにあまりにも近距離での測定では、図6のように信号が飽和する。
このように走査方向に近接する2つのターゲットの間で発生するコメット現象によって、該2つのターゲットからの反射光による信号が合成された2つのピークを持つ信号となる(図16参照)。そこで、以下では、このような2つのピークを持つ信号が発生する原因となるコメット現象を「2ピークコメット」とも呼ぶ。この2ピークコメットは、特に受光信号の電圧が飽和した場合に顕著に観測される。
2ピークコメットが観測される受光信号の波形である受光波形(以下では「コメット波形」や「2ピークコメットの波形」とも呼ぶ)で注目すべきであるのは、Vth1を最初に横切る点とVth2を最初に横切る点を通る直線の傾きが、パルス幅が同等の正常な受光波形(1つのピークを持つ受光波形)に比べて小さいことである(図9、図16参照)。
以下では、受光信号がVth1を最初に横切る点とVth2を最初に横切る点を通る直線の傾きを「直線の傾き」や「傾き」とも呼ぶ。
また、受光信号の電圧が閾値電圧Vth1を最初に横切ってから次に横切るまでの時間を「パルス幅」と呼んでも良い。この受光信号の電圧が閾値電圧を横切るタイミングは光源の発光タイミングからの時間で表現でき、また、時間に光速を乗じた距離(m)で表現することもできる。パルス幅と呼ぶ場合でも、パルス幅の単位は、時間や距離(m)で表現される。本明細書内では、適宜、時間や距離(m)を用いて説明する。
一方、飽和コメットが発生しない理想的な測距を想定した場合、3mと6mの距離にある黒幕の間(角度0°付近)では測距値は3mから6mへ直ちに遷移する(図8下図参照)。
次に、飽和コメットの問題をより複雑にしている現象を図9に示されるオシロスコープで観測した波形を用いて説明する。
図9には、左側の3mの距離にある黒幕(走査範囲中央の画角を0°として−0.4°の画角)から右側の6mの距離にある黒幕(走査範囲中央の画角を0°として+0.4°の画角)へと移動して測距したとき(図8上図参照)の画角毎(ここでは−0.4°、0°、+0.4°)の飽和した受光波形の立ち上がり部を含む部分が示されている。
この際、飽和した受光波形の立ち上がり部の傾きは3mの距離にある黒幕を測距したときの大きさから徐々に小さくなり最小になった後、徐々に大きくなり6mの距離にある黒幕を測距したときの大きさになる。
すなわち、3mと6mの距離にある黒幕をそれぞれ測距したときの飽和した受光波形の立ち上がり部の中間にゴーストとなる立ち上がり部が確認できる。
なお、受光波形の立ち上がり部は、LD11の微分抵抗や、LD11及びLD駆動部12の寄生容量の影響により投光波形(発光パルス)の立ち上がりが鈍るため、厳密には直線ではなく曲線となるが、ほぼ直線で近似することが可能である。そこで、本明細書においては、受光波形が正常な波形(1つのピークを持つ波形)である場合に、受光波形の立ち上がり部(受光信号の立ち上がり)上の2点の直線の傾きを「受光波形の立ち上がり部の傾き」もしくは「受光信号の立ち上がりの傾き」とも呼ぶ。また、幾つかの図においても、受光波形の立ち上がりや立ち下りを直線で表している。
このとき、閾値VthでTr測距にて距離を算出する場合、3mの距離にある黒幕を測距したときの飽和した受光波形も6mの距離にある黒幕を測距したときの飽和した受光波形も徐々に測距値が変化し、それらの受光波形の中間部においても明らかにゴースト(コメット)が生じていると分かる。
このようなコメット現象(2ピークコメット)は、図9に示されるように3mの距離にある黒幕から6mの距離にある黒幕へと照射ビームのスポット位置が移動するに従って、両黒幕の間において、3mの距離にある黒幕からの反射波が該黒幕の端部で徐々に弱くなることで飽和した受光波形の立ち上がり部の傾きが徐々に小さくなり最小になった後、6mの距離にある黒幕からの反射波が該黒幕の端部で徐々に強くなることで飽和した受光波形の立ち上がりが徐々に大きくなることに起因する。
なお、上記のように黒幕からの反射波が黒幕の端部で徐々に弱くなったり、強くなったりするのは、照射ビームのスポット位置が黒幕の端部付近を移動するときに該端部への照射ビームのスポットの大きさが変化することによる。
また、このようなコメット現象(2ピークコメット)は、同一距離にある反射率が異なる複数のターゲット間の測距値の差異(測距誤差)の原因にもなっている。この測距誤差もコメット現象もその原因は同じであるため、以下では受光波形の立ち上がり部の傾きの違いと測距値の補正方法について統一して論じる。
図10に示されるように1つの閾値Vthのみを用いてTr測距を行うと、同一距離にある反射率が異なる複数のターゲット間でTrの値が異なり測距値に誤差が生じる。
そこで、発明者らは、同一距離にある反射率が異なる複数のターゲットの測距を行うと、ターゲット間で受光波形の立ち上がり部の傾きが異なり、高い反射率のターゲットでは大きな傾きとなり、低い反射率のターゲットでは小さな傾きとなることに着目した。
さらに、発明者らは、図10のように同一距離にある反射率が異なる複数のターゲットの受光波形の立ち上がり部を負の電圧側に延長すると、その延長線が発光信号の立ち上がりタイミングを基準(時刻0)としたある時刻P0で負の所定電圧と交差することを見出した。そこで、以下では、この所定電圧を「P0交差電圧」とも呼ぶ。また、以下では、発光信号の立ち上がりタイミングから時刻P0までの時間を「P0」とも呼ぶ。
すなわち、同一距離にある複数のターゲットの反射率が異なっていても、図10に示されるP0という、謂わば、複数のターゲットの受光波形の立ち上がり部の原点の時刻を求めることによりターゲット間で同一の測距値を得ることが可能となる。
具体的には、任意の時刻P0から得られる距離(任意の時間P0を距離に換算した値の1/2)と実際のターゲットまでの距離(実距離)との関係を表す検量線を予め取得しておけば、測定時にP0を求めることにより同一距離にある反射率が異なる複数のターゲット間で誤差のない正確な測距が可能となる。
次に、上述のようなP0を用いる測距(以下では「P0測距」とも呼ぶ)について詳述する。
図11上図に、受光波形の立ち上がり部の傾きを求めるための要素が示されている。
ここでは、受光波形の立ち上がり部の傾きを求めるために2つの閾値Vth1、Vth2と、該立ち上がり部が閾値Vth1、Vth2をそれぞれ横切るタイミングP1、P2を用いて、次の(1)式のように立ち上がり部の傾きを求めることができる。
立ち上がり部の傾き=(Vth2−Vth1)/(P2−P1)・・・(1)
なお、Vth1は、光検出系40において受光時に発生するショットノイズのピークを若干超える値(例えば0.3V程度)に設定されている。Vth2は、オペアンプ48における飽和電圧(例えば1.2V)よりもやや小さな値(例えば0.9V程度)に設定されている。
ここで、図11上図に示されるようにある受光波形の立ち上がり部を負の電圧側に延長して、ある設定されたP0交差電圧と交差する点の、発光信号(例えばLD駆動信号)の立ち上がりタイミングを基準とした時刻P0は、次の(2)式で求めることができる。
P0=P2+(P0交差電圧−Vth2)/傾き・・・(2)
このP0を求めるために様々な反射率となるターゲットを様々な距離(実距離)に設置し、P0交差電圧をある値に設定して測距する。
そして、P0の信頼性を担保するために、同一距離にある反射率が異なる複数のターゲット間で実距離とP0から得られる測距値(以下では「P0測距値」とも呼ぶ)との誤差の標準偏差が最も小さくなるようにP0交差電圧を細かく調整し、P0交差電圧を決定する。
P0交差電圧を決定した後に反射率、距離毎にP0を改めて求め、任意のP0から得られる測距値と実距離との対応関係を表す検量線(図43参照)を取得することで、ターゲットの反射率に測距値が影響を受けない距離測定装置を実現するこができる。
さらに、P0測距により、ターゲット端部にて反射波の強度が徐々に弱くなったり、強くなったりすることに起因するコメット現象(飽和コメット)も同時に解決できる。
このように、P0測距は、同一距離にある複数のターゲットの反射率が異なっていてもターゲット間で測距値が変わらず、ターゲットの反射率によらず該ターゲットまでの距離毎に正確な測距値を得ることができるが、やや煩雑である。
そこで、ターゲットの反射率に測距結果が影響を受けない、より簡便な測距方法として、受光波形の立ち上がり部の傾きを用いてTr測距で得られる測距値(以下では「Tr測距値」とも呼ぶ)を補正する測距方法も考えられる。
この測距方法は、P0を用いる測距方法に比べて若干測距精度が下がるものの、十分な実用性を有しており、同様にコメット現象の解決及び反射率の違いによる測距誤差の解消が可能である。
以下に、受光波形の立ち上がり部の傾きを用いてTr測距値を補正する測距方法について具体的に説明する。
図12には、様々な反射率のターゲットを30〜70mの範囲内の様々な距離に設置して測距したときの測距毎の受光信号の立ち上がりの傾きと、反射率、距離毎のTr測距値と実際の距離(実距離)の差(測距誤差)との関係が示されている。
図12に示されるように、様々な反射率のターゲットを様々な距離に設置して測距しても受光信号の立ち上がりの傾きと測距誤差で決まる点は、ほぼ同じ曲線に乗ることが分かっている。
これは、どのような反射率を持つターゲットがどのような距離にあってもTr測距値を1つの補正式で補正できることを意味している。図12中の曲線の近似式は、図12中のような対数の補正式となる。この補正式では、xに受光信号の立ち上がりの傾きの値を入力するとその受光信号の測距誤差の値(y)が出力され、その値(y)をTr測距値から差し引くことで補正された正確な距離が得られる。
以上説明した2つの測距方法は、A/Dコンバータを用いない安価な装置構成によって光検出系40や信号処理系41において信号の電圧飽和が生じても正確な測距を行うことができる。
なお、以上では、受光信号が飽和している場合を例にとって説明したが、受光信号が飽和していない場合も、受光波形の立ち上がり部の傾きには同様な特性がある。
つまり、受光信号の飽和/非飽和によらず、受光信号が2つの閾値Vth1、Vth2を横切る場合には、該受光信号の立ち上がりの傾きを求めることができ、該傾きを用いてターゲットの反射率に測距結果が影響を受けない正確な測距(P0測距や、Tr測距値を該傾きで補正する測距方法)を行うことができる。
次に、上記非飽和コメットについて説明する。
非飽和コメットには、受光信号のピークが上側の閾値Vth2を超える場合(非飽和コメットA)と、受光信号のピークが下側の閾値Vth1のみを超える場合(非飽和コメットB)の2通りがある。
非飽和コメットAでは、受光信号の立ち上がりの傾きを求めることができるため、飽和コメットの場合と同様にP0測距やTr測距によって正確な測距を行うことができる。
非飽和コメットBでは、受光信号の立ち上がりの傾きを求めることができない(図13参照)ため、Vth1のみを用いてTr測距を行うと、反射率が異なる同一距離にある複数のターゲット間で異なる測距値が得られてしまう(図13参照)。
非飽和コメットBについても飽和コメットと同様であり、例えばターゲット端部にて反射波が徐々に弱くなったり、強くなったりすることで、図13においてTr1とTr2の間でTr測距値が徐々に小さくなったり、大きくなったりすることに起因して発生する。
また、非飽和コメットA、Bは、同一距離にある反射率が異なる複数のターゲット間の測距値の差異(測距誤差)の原因にもなっている。
以上のように、受光信号が閾値Vth1のみを横切る場合にTr測距を行っても正確な測距値を得ることはできない。
そこで、受光信号のピークの大きさが変わってもTm測距で得られる測距値(以下では「Tm測距値」とも呼ぶ)が同じであることを利用し(図14参照)、非飽和コメットBではターゲットの実距離とTm測距値との対応関係を表す検量線を作成し、該検量線から得られる補正式を用いることで正確な測距が可能である。
なお、Tm測距では受光信号が飽和しておらず受光信号のピークが確認できる場合には正確な測距値を得ることができるので、非飽和コメットAでもTm測距を行っても良い。すなわち、非飽和コメットAでは、P0測距、Tr測距、Tm測距のいずれを行っても、正確な測距値を得ることができる。
また、非飽和コメットA、Bでは、上記検量線を用いずに、Tm測距値そのものを用いて、すなわち時間Tmを距離に換算した値の1/2をターゲットまでの距離として出力しても良い。
以上の説明から分かるように、正確な測距値を得るために、受光信号の飽和/非飽和や、受光信号のピークが閾値Vth2を超えるか否か(二値化回路の出力により判定可能)によって、測距方式として、P0測距もしくはTr測距と、Tm測距のどちらかを選択することが好ましい。
詳述すると、受光信号が飽和する場合はP0測距もしくはTr測距を選択することが好ましく、受光信号が飽和せずかつ受光信号のピークがVth2を超える場合はP0測距、Tr測距、Tm測距のいずれを選択しても良く、受光信号のピークがVth1を超え、かつVth2を超えない場合はTm測距を選択することが好ましい。
ここで、受光信号は立ち上がりの傾きが所定値を超える場合に飽和すると考えられるため、この所定値と該傾きの算出値を比較することで、受光信号の飽和/非飽和を判定することができる。
以下、この所定値を求めるための実験について説明する。
この実験では、LDから射出されたレーザ光を可変NDフィルタを介してターゲットとしての再帰反射板に照射し、その反射光の受光波形をオシロスコープで測定する。
ここでは、可変NDフィルタとして36段階の光透過率を持つものを用いる。これにより、再帰反射板からの反射光を36段階の強度で観測できる。これは、ターゲットの反射率が36段階に変化した場合を観測することと同義である。例えば30〜70mの距離範囲の各距離(ここでは30m、40m、50m、60m、70m)において反射率が異なるターゲットからの反射光の受光波形を例えばオシロスコープで観測できる。
図15には、オシロスコープで観測された正常な受光波形の立ち上がり部の傾きとパルス幅との関係が距離毎に示されている。図15の波形形状から、パルス幅6m近傍(傾き1.0E+08[V/s]近傍)の所定値で受光信号がオペアンプにおいて非飽和状態と飽和状態の間で急激に遷移することが分かる。
そこで、この所定値を閾値として飽和/非飽和を判定することが可能である。なお、図15等において、受光信号が閾値を最初に横切ってから次に横切るまでの時間を距離に換算した値をパルス幅として表記しているが、前述のとおり該時間そのものをパルス幅として表記しても良い。
さらに、図15の波形形状から、パルス幅8m近傍(傾き2.5E+08[V/s]近傍)から急激にパルス幅が大きくなっている別の所定値(傾き)がある。これは、PDの出力電流を電流電圧変換するIV変換器において該出力電流を変換後の電圧が飽和することに起因する。この飽和は、オペアンプにおいて飽和する傾きを大きく超える傾きでの飽和であり「過飽和」とも呼ばれる。
そこで、この別の所定値を閾値として過飽和/飽和を判定することが可能である。
このように、装置を構成する回路素子によって多段階の飽和状態が生じることがある。そのため、装置における各段階の飽和/非飽和(もしくは過飽和/飽和)を判定するための傾きの閾値を求め、該閾値と傾きの算出値を比較することにより、該算出値に応じた適切な測距方式、補正式を選択して、正確な測距を行うことができる。
また、傾きの複数の閾値(例えば1.0E+08[V/s]、2.5E+08[V/s])によって区分される複数の傾き領域(例えば1.0E+08〜2.5E+08[V/s]の領域と、2.5E+08〜4.5E+08[V/s]の領域)に適用する補正式に対しては、傾き領域毎にP0交差電圧を設定することによって、より高精度の測距を行うことができる。同一距離にある反射率が異なる複数の物体に対して投光したときの複数の受光信号の立ち上がりの傾きが異なっていても、該複数の受光信号の立ち上がりについてP0は同じ位置に存在する必要があるのだが、飽和状態の違いによってP0交差電圧は異なる値に存在するからである。
更に、図15から分かるように、30〜70mの距離範囲内の各距離において正常な受光信号のパルス幅と立ち上がりの傾きとの関係が一致する。すなわち、ここでは受光信号の立ち上がりの傾きの閾値を用いて測距方式や補正式の選択を行っているが、傾きに代えてパルス幅の閾値を用いることによっても、同様の制御が可能である。
ところで、受光波形に2ピークコメットが観測されるとき、すなわち受光信号が2つのピークを持つ信号であるときでも、前述したように受光信号を微分する微分回路にA/Dコンバータを用いて受光信号の各ピーク位置を求めることで、各ターゲットまでの距離を算出することが可能である。
しかしながら、前述したようにA/Dコンバータは、高価であることと、受光信号のピークの大きさによってはピーク位置を求めることができないことが懸念される。
そこで、発明者らは、A/Dコンバータを搭載しない安価な装置構成によって、受光波形に2ピークコメットが観測されるときでも、各ターゲットまでの距離を画素毎(走査位置毎、スキャン角度毎)に高精度に出力することを実現すべく、以下のような考察を行った。
図9に示される0°付近に発生しているコメット波形に基づいてP0測距やTr測距やTm測距を行っても、画素毎に正確な測距値を得ることはできない。
例えば図16に示されるコメット波形(2ピークコメットの波形)については、閾値Vth1を最初に横切る点と閾値Vth2を最初に横切る点を通る直線は、該コメット波形を構成する第1のピークのみを持つ小さな第1の波形と第2のピークのみを持つ大きな第2の波形のいずれの立ち上がり部ともならず、また第1及び第2のピークはいずれも該コメット波形の中央に位置しないからである。
そこで、発明者らは、画素毎の受光信号が、1つのピークを持つ正常な受光信号と2つのピークを持つ異常な受光信号(2ピークコメットが発生している受光信号)のいずれであるかを判定し、受光信号が異常であると判定された画素の測距データを受光信号が正常であると判定された画素の測距データに置き換えることで、各ターゲットまでのほぼ正確な距離を画素毎に出力できることを発案した。以下に、その詳細について説明する。
先ず、発明者らは、受光信号を正確に判定するために、直線の傾きとパルス幅との関係性に着目した(図15参照)。
ここで、受光信号のパルス幅を求めるためには1つの閾値のみで足りるが、直線の傾きを求めるためには2つの閾値が必要である。
つまり、図15の関係を取得するためには、2つの閾値が必要である。
なお、1つの閾値のみを用いて正確に測距を行うことは不可能である。その理由は、受光信号のパルス幅のみでは該受光信号の形状が正常であるか否かを判別できないからである。
図15で先ず分かることが、ターゲットの反射率や距離によらず、正常な受光信号の立ち上がりの傾き(直線の傾き)とパルス幅との関係性は変わらず、ほぼ同じ曲線(以下では「傾き−パルス幅曲線」とも呼ぶ)に乗るということである。すなわち、どのような距離にあるどのような反射率を持つ物体も、正常な受光信号の立ち上がりの傾きとパルス幅には図15の傾き−パルス幅曲線のような相関関係があることが分かる。
更に図15を観察すると、パルス幅が5m以下の受光信号は傾きが算出できないほどピークが小さくなることが分かる。すなわち、パルス幅が5m以下の受光信号のピークはVth2以下であることが分かる。
逆の言い方をすれば、ピークがVth2以下の受光信号において、例えば10mのパルス幅が観測されたとすれば、異常な信号であると判定することができる。
また、同様に、ピークがVth2を超える受光信号でも、例えば直線の傾きが2.0E+08であり、パルス幅が15mであれば、その傾きとパルス幅で決まるプロット(点)は傾き−パルス幅曲線から大きく外れることになり、このような場合も異常な信号であると判定できる。このような異常と判定できる信号は、基本的に2ピークコメットとなっていることが、その後の信号の解析によって明らかとなった。
2ピークコメットに対して2つの閾値を用いてP0測距やTr測距やTm測距を行っても、正確な測距は不可能であることは前述の通りである。2ピークコメットに対して正確に測距するためには、より多くの閾値を必要とするが、その場合コンパレータを増設する必要があり、コストアップを招いてしまう。
そこで、発明者らは、直線の傾きとパルス幅で決まるプロットが図15の傾き−パルス幅曲線上から明確に外れた信号は、2ピークコメットの異常な信号であると判定でき、その信号に基づく測距データも異常なデータであると判定できることに着目した。
具体的には、図15の傾き−パルス幅曲線に対する、直線の傾きとパルス幅で決まるプロットの位置によって、該受光信号が正常であるか否かを判断し、正常であると判断された受光信号に基づく測距データもしくは正常でないと判断された受光信号に基づく測距データにフラグを付加することにより、メモリ上において正常な測距データと異常な測距データを判別することができる。
あるいは、正常であると判断された受光信号もしくは正常でないと判断された受光信号にフラグを付加することにより、メモリ上の配列において正常な受光信号と正常な受光信号を判別することができる。
そして、発明者らは、正確な測距が不可能な2ピークコメットが観測された画素の測定結果として、正常な受光信号が得られた近接する他の画素の受光信号に基づく正確な測距データを出力することとすれば、コストアップを招かずに画素毎にほぼ正確な測距データを出力できることを見出した。
ここで、「フラグ」とは、画素毎の測距データや受光信号と1対1となるようメモリ上に少なくとも1bitで設定されるものであり、測距データや受光信号が記録されている各画素の状態を一時的に保存するものである。
例えば初期状態で “0”になっている測距データや受光信号に対してフラグを設定するとは、具体的には“1”を書き込むことである。
そこで、正常な測距データや受光信号であると判定された場合にフラグを設定せず“0”のままとし、異常な測距データや受光信号と判定された場合に“1”を設定しても良いし、異常な測距データや受光信号であると判定された場合にフラグを設定せず“0”のままとし、正常な測距データや受光信号と判定された場合に“1”を設定しても良い。また、更に複雑なbit信号を用いて付加的なフラグの機能を持たせても良い。
以下に、測距データの補正方法として、異常な測距データを正常な測距データで置き換える方法について図17及び図49の表を用いて説明する。前述したように3mと6mの距離にあるターゲットについて測距する場合、ターゲット間の領域(図17及び図49の太枠内)にて2ピークコメットが発生する。
上述のように、ある画角内で2ピークコメットが発生していることが分かれば、図17及び図49の上から5行目の太枠内の測距データの数値は2ピークコメットの測距データであると判断でき、それらの測距データに対して例えば図17及び図49の上から4行目の太枠内のように、2ピークコメットであるというフラグとして“1”を設定することができる。
この際、2ピークコメットと判断された画角内のフラグが設定された一連の画素(スキャン角度)から成る画素列を右側と左側に均等に区分し(但し、当該画素列の画素数が奇数である場合には中央の画素は右側及び左側のいずれにも区分しないものとする)、フラグが設定された右側の画素の測距データ(異常な測距データ)を上記画素列の右側に隣接するフラグが設定されていない画素の測距データ(正常な測距データ)に置き換え、フラグが設定された左側の画素の測距データ(異常な測距データ)を上記画素列の左側に隣接するフラグが設定されていない画素の測距データ(正常な測距データ)に置き換える。
なお、上記画素列の画素数が奇数である場合は、該画素列の中央の画素の異常な測距データ(以下では「中央画素データ」とも呼ぶ)を、上記画素列の右側及び左側に隣接する画素の正常な測距データのうち、例えば図17の上から6行目の太枠内のように測距精度の観点から中央画素データとの差が小さい方(中央画素データにより近似する方)に置き換えても良い。または、上記画素列の一部の画素の測距データを上記画素列の右側及び左側に隣接する画素の正常な測距データのうち、値が小さい方に置き換えても良い。
以上について、整数mと整数nを用いて説明する。
画角内をスキャンして得た画素列のうち、画角内の一端部側から他端部側に向かってm番目の画素が正常な測距データや受光データであると判定され、画角内の一端部側から他端部側に向かってm+1番目の画素からm+2n番目の画素に2ピークコメットと判断されたフラグが設定され、m+2n+1番目の画素が正常な測距データや受光データであると判定された場合(すなわち、2ピークコメットと判断されたフラグが設定された画素数は偶数)、m+1番目の画素からm+n番目の画素までの測距データ(異常な測距データ)をm番目の画素の測距データ(正常な測距データ)に置き換え、m+n+1番目の画素からm+2n番目の画素までの測距データ(異常な測距データ)を、m+2n+1番目の画素の測距データ(正常な測距データ)に置き換える。
また、画角内の一端部側から他端部側に向かってm番目の画素が正常な測距データや受光データであると判定され、画角内の一端部側から他端部側に向かってm+1番目の画素からm+2n+1番目の画素に2ピークコメットと判断されたフラグが設定され、m+2n+2番目の画素が正常な測距データや受光データであると判定された場合(すなわち、2ピークコメットと判断されたフラグが設定された画素数は奇数)、m+1番目の画素からm+n番目の画素までの測距データ(異常な測距データ)をm番目の画素の測距データ(正常な測距データ)に置き換え、m+n+2番目の画素の測距データからm+2n+1番目までの画素の測距データ(異常な測距データ)をm+2n+2番目の画素までの測距データ(正常な測距データ)に置き換える。そして、m+2n+1番目までの画素の測距データ(中央画素データ、異常な測距データ)は、m番目の画素の測距データ(正常な測距データ)またはm+2n+2番目の画素までの測距データ(正常な測距データ)のうち、m+2n+1番目までの画素の測距データ(中央画素データ、異常な測距データ)との差が小さい方に置き換えても良い。若しくは、m番目の画素の測距データ(正常な測距データ)またはm+2n+2番目の画素までの測距データ(正常な測距データ)のうち近い方に置き換えても良い。
また、例えば図49の上から6行目の太枠内のように上記画素列の全ての画素の測距データを上記画素列の右側及び左側に隣接する画素の正常な測距データのうち、値が小さい方に置き換えても良い。
結果として、図17の補正方法では、実距離(実際の距離)と2ピークコメットの補正後の測距データの数値が理論的にはほぼ一致することになる(図17の上から3行目と6行目の太枠内参照)。
なお、図17や図49では、一例として2ピークコメットが発生している一連の画素(スキャン角度)の数が5個となっているが、少なくとも1つの画素で2ピークコメットが発生している場合に同様な方法で測距データを置換することができる。その際、少なくとも有効走査領域の一端の画素において2ピークコメットが発生している場合には、その一端の画素の測距データを有効走査領域の他端側の2ピークコメットが発生していない画素のうち最も近い画素の測距データに置き換えることが好ましい。該一端の画素に連続する少なくとも1つの画素に2ピークコメットが発生している場合も同様である。
次に、2ピークコメットを検出する方法について説明する。ここでは、図15の座標系において、2ピークコメットを検出するための検出範囲として、傾き−パルス幅曲線上から外れた所定範囲を少なくとも1つ設定し、受光信号の直線の傾きとパルス幅で決まるプロットが該所定範囲内にある場合に該受光信号に2ピークコメットが発生していると判定する。
なお、直線の傾きとパルス幅で決まるプロットが傾き−パルス幅曲線上にあるか否か(傾きとパルス幅の1対1の対応関係)を厳密に判定しても良いが、正常な受光信号であっても直線の傾きやパルス幅の算出誤差等によって当該プロットが傾き−パルス幅曲線上から僅かにずれることもあるので、上記のように傾き−パルス幅曲線上からある程度離れた範囲内に当該プロットがあるか否かを判定する方が好ましい。
また、傾き−パルス幅曲線の線幅を同一性を損なわない範囲で太くすることにより、正常な受光信号の直線の傾きとパルス幅で決まる点が傾き−パルス幅曲線上からずれるのを抑制できる。
ここで、以下のように、上記所定範囲の具体例1〜5として第1〜第5の範囲を設定し、実験を行った。これら第1〜第5の範囲は、2ピークコメットが発生すると想定される、傾きの大きさに対してパルス幅が大きすぎる範囲に設定されている。
第1の範囲は、傾きが1.0E+08以下、かつパルス幅が6m以上の範囲である(図18参照)。
第2の範囲は、傾きが2.0E+08以下、かつパルス幅が8m以上の範囲である(図19参照)。
第3の範囲は、傾きが3.0E+08以下、かつパルス幅が10m以上の範囲である(図20参照)。
第4の範囲は、傾きが3.5E+08以下、かつパルス幅が15m以上の範囲である(図21参照)。
第5の範囲は、傾きが4.0E+08以下、かつパルス幅が20m以上の範囲である(図22参照)。
以上のように、第1〜第5の範囲は互いに一部重複していることが分かる。
図23には、例えば図15の座標系に検出範囲として第1の範囲が設定されている場合に、実際に観測されている2ピークコメットのデータを×印で示している。
図23から、検出範囲が第1の範囲のみでは、多くの2ピークコメットを見逃しており、検出漏れが発生していることが分かる(図23中の検出範囲外にある楕円内の×印参照)。
そこで、図24に示されるように、例えば図15の座標系に第1及び第4の範囲から成る範囲を検出範囲として設定して検出範囲を広げることにより、より多くの2ピークコメット(図24中の検出範囲内の×)を検出できることが分かる。なお、図24では、検出範囲において、範囲が重複している部分と重複していない部分にトーン差(濃淡の差)がつけられている。
しかし、それでも一部検出漏れがでるため(図24中の検出範囲外にある楕円内の×印参照)、図25に示されるように、例えば図15の座標系に第1〜第5の範囲から成る範囲を検出範囲として設定して検出範囲を最大化することで、検出漏れを抑制できることが分かる。なお、図25では、検出範囲において、範囲が重複していない部分から、範囲が重複している部分のうち重複回数が最多の部分まで段階的にトーン差がつけられている。
このように、第1〜第5の範囲から成る範囲を検出範囲とすることによって、確実に2ピークコメットの検出を行うことができるようになる。
しかし、それでも傾き-パルス幅曲線と第1〜第5の範囲から成る検出範囲との間には階段状の隙間が認められるため、この隙間の少なくとも一部を埋めるべく更に検出範囲を広げることでより確実な2ピークコメットの検出が可能となる。
上記階段状の隙間に2ピークコメットが検出される場合としては、例えば図44に示されるようにVth2を上回るピークが前にあり、かつVth2を下回るピークが後にあるような2ピークコメットの場合であって、その前側(図44では左側)の波形の立ち上がりの傾きと、該2ピークコメットとパルス幅が同等の正常な受光信号の立ち上がりの傾きとの差が比較的小さい場合が挙げられる。
なお、2ピークコメットの発生原理の関係上、傾き−パルス幅曲線の下側に2ピークコメットのデータが現れることはないため、下側への条件設定は不要である。
以上説明した第1〜第5の範囲は、一例であり、範囲の数、範囲の位置や形状や大きさの設定は、適宜変更可能である。
また、例えば図45に示されるように2ピークコメットの大きい方のピーク(最大ピーク)が閾値Vth2を下回る場合には、傾きを算出することができず、上記のような判定を行うことができない。
そこで、ピークがVth2に一致する(振幅がVth2−Vth1に一致する)正常な受光信号のパルス幅(P4−P1を距離に換算した値)を予め取得しておけば、あるピークが閾値Vth2を下回る受光信号であって、そのパルス幅が上記予め取得したパルス幅に比べて明確に大きい受光信号は2ピークコメットを持つ異常な信号であると判定できる。
図17に示される測距方法では1スキャン後(1走査後)に測距値(測距データ)の修正を行っていくため、測距値の表示がその時間だけ遅延してしまい、リアルタイム性が損なわれることが懸念されることもある。
そこで、より簡易的には2ピークコメットとしてフラグが設定された受光信号を用いた演算を行わない、もしくは2ピークコメットとしてフラグが設定された測距データを測定結果として出力しない(表示しないもしくは情報として削除する)方法も有効である。この方法であれば、1走査終了を待たずに測距しながらリアルタイムにゴーストを消すことが可能になるため、フラグが設定されていない正常な測距データについては遅延なく出力することが可能となる。
但し、このような方法では、物体の端部で現れるゴーストを消してしまうため、厳密に物体の形状や大きさを求めるような測距をしたい場合では不向きであり、ユーザが求める距離測定装置の目的に応じて使い分けることが重要である。
また、以上の説明では、受光信号が2つのピークを持つ2ピークコメットについて述べてきたが、受光信号が3つ以上のピークを持つ多ピークコメットが生じることも想定される。多ピークコメットの場合も、基本的には、上述した2ピークコメットの場合と同様の判定方法で精度良く判定可能である。
図46〜図48には、受光信号が3つのピークを持つ3ピークコメットの具体例が示されている。図46〜図48から分かるように、ピークの数が多くなるほど、傾き又は|Vth2−Vth1|に対してパルス幅が大きくなる傾向があるので、多ピークコメットは2ピークコメットよりも検出が容易であると考えられる。
図46には、最後の1つのピークのみが閾値Vth2を上回る3ピークコメットの波形が示されている。
図47には、中間の1つのピークのみが閾値Vth2を上回る3ピークコメットの波形が示されている。
図48には、3つのピークが閾値Vth2を下回る3ピークコメットの波形が示されている。
また、以上では、飽和しない2ピークコメットや3ピークコメットを主に説明してきたが、飽和する2ピークコメットや多ピークコメットであっても、傾き及びパルス幅を求めることができるので、同様の方法により、受光信号の正常/異常の判定を行うことができる。
以上説明した受光信号が正常であるか否かの判定は、物体検出装置100の信号判定回路49により行われる。
図26には、物体検出装置100を備えるセンシング装置1000が示されている。センシング装置1000は、移動体に搭載され、物体検出装置100に加えて、該物体検出装置100に電気的に接続された監視制御装置300を備えている。物体検出装置100は、車両のバンパー付近やバックミラーの近傍に取り付けられる。監視制御装置300は、物体検出装置100での検出結果に基づいて、物体の形状や大きさの推定、物体の位置情報の算出、移動情報の算出、物体の種類の認識等の処理を行って、危険の有無を判断する。そして、危険有りと判断した場合には、アラーム等の警報を発して移動体の操縦者に注意を促したり、ハンドルを切って危険を回避する指令を移動体の操舵制御部に出したり、制動をかけるための指令を移動体のECUに出す。なお、センシング装置1000は、例えば車両のバッテリから電力の供給を受ける。
なお、監視制御装置300は、物体検出装置100と一体的に設けられても良いし、物体検出装置100とは別体に設けられても良い。また、監視制御装置300は、ECUが行う制御の少なくとも一部を行っても良い。
以下に、物体検出装置100で実施される測距処理の具体例(測距処理1〜8)、測距処理1〜4で実行される測距データ取得処理Q、測距処理5〜8で実行される測距データ取得処理Uについて説明する。
ここで、各測距処理を実施するために物体検出装置100の二値化回路44は、閾値Vth1を基準に入力信号を二値化するコンパレータ1及び閾値Vth2を基準に入力信号を二値化するコンパレータ2を含んで構成されている。
コンパレータ1、2は、互いに並列に接続されており、オペアンプ48からの受光信号が同時に入力される。
コンパレータ1は、入力された受光信号の立ち上がりが閾値Vth1を上回る(横切る)タイミングP1で立ち上がり、該受光信号の立ち下りが閾値Vth1を下回る(横切る)タイミングP4で立ち下がるハイレベル信号1を出力する(図11下図参照)。
また、コンパレータ2は、入力された受光信号の立ち上がりが閾値Vth2を上回る(横切る)タイミングP2で立ち上がり、該受光信号の立ち下りが閾値Vth2を下回る(横切る)タイミングP3で立ち下がるハイレベル信号2を出力する(図11下図参照)。
また、各測距処理を実施するために物体検出装置100の信号判定回路49は、上記第1〜第5の範囲を含む範囲を検出範囲として受光信号の傾きとパルス幅で決まるプロットが該検出範囲内にあるか否かを判定し、検出範囲内にない場合に該受光信号が正常であると判定し、検出範囲内にある場合に該受光信号が正常でないと(異常であると)判定する。
信号判定回路49は、受光信号毎の判定結果を時間計測部45に出力する。
<測距処理1>
測距処理1について図27を用いて説明する。図27のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理1は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS1では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS2では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS2での判断が肯定されるとステップS3に移行し、否定されると同じ判断を再び行う。
次のステップS3では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS3での判断が肯定されるとステップS4に移行し、否定されるとステップS5に移行する。
ステップS4では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS4が実行されると、ステップS5に移行する。
ステップS5では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS6では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS7では、ステップS6で取得した測距データが正常であるか否かを判断する。具体的には、信号判定回路49で正常であると判定された受光信号に基づいて取得した測距データは正常であると判断し、信号判定回路49で正常でないと判定された受光信号に基づいて取得した測距データは正常でないと判断する。ステップS7での判断が肯定されるとステップS8に移行し、否定されるとステップS10に移行する。
ステップS8では、ステップS6で取得した測距データを測定結果として出力する。
次のステップS9では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS9での判断が肯定されるとフローは終了し、否定されるとステップS2に戻り次の受光信号に基づいて測定を行う。
ステップS10では、ステップS6で取得した測距データにフラグを付加する。すなわち、メモリ内において、ステップS7で正常でないと判断された測距データにフラグを付加する。
次のステップS11では、同一フレーム内で(同一の走査において)先に取得されたフラグが付加されていない測距データ(正常な測距データ)があるか否かを判断する。ここでの判断が肯定されるとステップS12に移行し、否定されるとステップS2に戻る。
ステップS12では、測距データにフラグが付加された走査位置(画素)における測定結果として、同一フレーム内で既に取得されているフラグが付加されていない測距データ(測距値)のうち最小の測距データ(測距値)を出力する。ステップS12が実行されるとステップS9に移行する。
以上説明した測距処理1では、ある走査位置(画素)で異常な測距データが取得されたときに該走査位置の測定結果として、同一フレーム内で既に取得されている正常な測距データのうち最小の測距データを速やかに出力するので、画素毎の測定結果を高速に出力できる安全性を重視した測距装置として物体検出装置100を機能させることができる。
<測距処理2>
測距処理2について図28を用いて説明する。図28のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理2は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS21では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS22では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS22での判断が肯定されるとステップS23に移行し、否定されると同じ判断を再び行う。
次のステップS23では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS23での判断が肯定されるとステップS24に移行し、否定されるとステップS25に移行する。
ステップS24では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS24が実行されると、ステップS25に移行する。
ステップS25では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS26では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS27では、ステップS26で取得した測距データが正常であるか否かを判断する。具体的には、信号判定回路49で正常であると判定された受光信号に基づいて取得した測距データは正常であると判断し、信号判定回路49で正常でないと判定された受光信号に基づいて取得した測距データは正常でないと判断する。ステップS27での判断が肯定されるとステップS28に移行し、否定されるとステップS30に移行する。
ステップS28では、ステップS26で取得した測距データを測定結果として出力する。
次のステップS29では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS29での判断が肯定されるとフローは終了し、否定されるとステップS22に戻り次の受光信号に基づいて測定を行う。
ステップS30では、ステップS26で取得した測距データにフラグを付加する。すなわち、メモリ内において、ステップS27で正常でないと判断された測距データにフラグを付加する。
次のステップS31では、同一フレーム内で先に取得されたフラグが付加されていない測距データ(正常な測距データ)があるか否かを判断する。ここでの判断が肯定されるとステップS32に移行し、否定されるとステップS22に戻る。
ステップS32では、測距データにフラグが付加された走査位置における測定結果として、フラグが付加されていない測距データのうち直近の測距データ(詳しくは同一フレーム内で既に取得されている正常な測距データのうち直近の走査位置の測距データ)を出力する。ステップS32が実行されるとステップS29に移行する。
以上説明した測距処理2では、ある走査位置(画素)で異常な測距データが取得されたときに該走査位置の測定結果として、同一フレーム内で既に取得されている正常な測距データのうち直近の走査位置の測距データを速やかに出力するので、画素毎の測定結果を高速かつ高精度に出力できる測距装置として物体検出装置100を機能させることができる。
<測距処理3>
測距処理3について図29を用いて説明する。図29のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理3は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS41では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS42では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS42での判断が肯定されるとステップS43に移行し、否定されると同じ判断を再び行う。
ステップS43では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)、すなわちハイレベル信号1のパルス幅に光速を乗じて得られた距離を受光信号のパルス幅として出力する。
次のステップS44では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS44での判断が肯定されるとステップS45に移行し、否定されるとステップS51に移行する。
ステップS45では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
次のステップS46では、受光信号が正常であるか否かを判断する。具体的には、信号判定回路49で正常であると判定された受光信号は正常であると判断し、信号判定回路49で正常でないと判定された受光信号は正常でないと判断する。ステップS46での判断が肯定されるとステップS47に移行し、否定されるとステップS55に移行する。
次のステップS47では、当該受光信号を対応する走査位置に関連付けてメモリに一時的に保存する。
次のステップS48では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS49では、ステップS48で取得した測距データを測定結果として出力する。ステップS49が実行されるとステップS50に移行する。
ステップS50では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS50での判断が肯定されるとフローは終了し、否定されるとステップS42に戻り次の受光信号に基づいて測定を行う。
ステップS51では、受光信号が正常であるか否かを判断する。ここでの判断は、ステップS43で算出された受光信号のパルス幅が、振幅が|Vth2−Vth1|となる正常な受光信号のパルス幅と同等な場合に肯定され、該パルス幅を上回る場合に否定される。ステップS51での判断が肯定されるとステップS52に移行し、否定されるとステップS55に移行する。
ステップS52では、当該受光信号を対応する走査位置に関連付けてメモリに一時的に保存する。
次のステップS53では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS54では、ステップS53で取得した測距データを測定結果として出力する。ステップS54が実行されるとステップS50に移行する。
ステップS55では、当該受光信号にフラグを付加し、対応する走査位置に関連付けてメモリに一時的に保存する。すなわち、メモリ内において、ステップS46で正常でないと判断された受光信号にフラグを付加する。
次のステップS56では、同一フレーム内で先に取得されているフラグが付加されていない受光信号があるか否かを判断する。ここでの判断が肯定されるとステップS57に移行し、否定されるとステップS42に戻る。
ステップS57では、受光信号にフラグが付加された走査位置における測定結果として、フラグが付加されていない受光信号に基づいて取得した測距データのうち最小の測距データを出力する(詳しくは同一フレーム内で既に取得されている正常な受光信号に基づく測距データのうち最小の測距データを出力する)。ステップS57が実行されるとステップS50に移行する。
以上説明した測距処理3では、ある走査位置(画素)で異常な受光信号に基づく測距データが取得されたときに該走査位置の測定結果として、同一フレーム内で既に取得されている正常な受光信号に基づく測距データのうち最小の測距データを速やかに出力するので、画素毎の測定結果を高速に出力できる安全性を重視した測距装置として物体検出装置100を機能させることができる。
<測距処理4>
測距処理4について図30を用いて説明する。図30のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理4は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS61では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS62では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS62での判断が肯定されるとステップS63に移行し、否定されると同じ判断を再び行う。
ステップS63では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)、すなわちハイレベル信号1のパルス幅に光速を乗じて得られた距離を受光信号のパルス幅として出力する。
次のステップS64では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS64での判断が肯定されるとステップS65に移行し、否定されるとステップS71に移行する。
ステップS65では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
次のステップS66では、受光信号が正常であるか否かを判断する。具体的には、信号判定回路49で正常であると判定された受光信号は正常であると判断し、信号判定回路49で正常でないと判定された受光信号は正常でないと判断する。ステップS66での判断が肯定されるとステップS67に移行し、否定されるとステップS75に移行する。
次のステップS67では、当該受光信号を対応する走査位置に関連付けてメモリに一時的に保存する。
次のステップS68では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS69では、ステップS68で取得した測距データを測定結果として出力する。ステップS69が実行されるとステップS70に移行する。
ステップS70では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS70での判断が肯定されるとフローは終了し、否定されるとステップS62に戻り次の受光信号に基づいて測定を行う。
ステップS71では、受光信号が正常であるか否かを判断する。ここでの判断は、ステップS43で算出された受光信号のパルス幅が、振幅が|Vth2−Vth1|となる正常な受光信号のパルス幅と同等な場合に肯定され、該パルス幅を上回る場合に否定される。ステップS71での判断が肯定されるとステップS72に移行し、否定されるとステップS75に移行する。
ステップS72では、当該受光信号を対応する走査位置に関連付けてメモリに一時的に記憶する。
次のステップS73では、測距データ取得処理Qを実施する。測距データ取得処理Qの詳細は後述する。
次のステップS74では、ステップS73で取得した測距データを測定結果として出力する。ステップS74が実行されるとステップS70に移行する。
ステップS75では、当該受光信号にフラグを付加し、対応する走査位置に関連付けてメモリに一時的に保存する。すなわち、メモリ内において、ステップS66で正常でないと判断された受光信号にフラグを付加する。
次のステップS76では、同一フレーム内で先に取得されているフラグが付加されていない受光信号があるか否かを判断する。ここでの判断が肯定されるとステップS77に移行し、否定されるとステップS62に戻る。
ステップS77では、受光信号にフラグが付加された走査位置における測定結果として、フラグが付加されていない受光信号に基づいて取得した測距データのうち直近の測距データを出力する(詳しくは同一フレーム内で既に取得されている正常な受光信号のうち直近の走査位置の受光信号に基づく測距データを出力する)。ステップS77が実行されるとステップS70に移行する。
以上説明した測距処理4では、ある走査位置(画素)で異常な受光信号に基づく測距データが取得されたときに該走査位置の測定結果として、同一フレーム内で既に取得されている正常な受光信号に基づく測距データのうち直近の走査位置の測距データを速やかに出力するので、画素毎の測定結果を高精度かつ高速に出力できる測距装置として物体検出装置100を機能させることができる。
以下に、測距データ取得処理Qの具体例である測距データ取得処理1〜6について説明する。
<測距データ取得処理1>
先ず、測距データ取得処理1について図31のフローチャートを参照して説明する。
最初のステップT1では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きが算出されているか否かを判断する。ここでの判断が肯定されるとステップT2に移行し、否定されるとステップT7に移行する。
次のステップT2では、算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(以下では「第1の飽和」とも呼ぶ)の有無を判定する基準となる値(傾き)である(図15参照)。すなわち、算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップT2での判断が肯定されるとステップT3に移行し、否定されるとステップT7に移行する。
ステップT3では、算出された傾きが2.5E+08[V/s]以上か否かを判断する。ここで、2.5E+08[V/s]は、IV変換器43における受光信号の飽和(以下では「第2の飽和」とも呼ぶ)の有無を判定する基準となる値(傾き)である(図15参照)。すなわち、算出された傾きが2.5E+08[V/s]以上の場合に第2の飽和が発生していると判定できる。ステップT3での判断が肯定されるとステップT4に移行し、否定されるとステップT9に移行する。
ステップT4では、算出された傾きとP0交差電圧Aから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Aは、2.5E+08[V/s](第2の飽和の場合)に対して設定された交差電圧である。
次のステップT5では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップT4で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップT6では、ステップT5で算出されたP0測距値と検量線Aから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Aは、P0交差電圧Aを用いて予め取得された、第2の飽和の場合のP0測距値と実距離の対応関係を表す検量線であり(図43参照)、その近似線(補正式)も自動的に計算される。ステップT6が実行されると、フローは終了する。
ここでは、検量線A、その補正式の例を図43に示したが、以下で説明する他の検量線、その補正式については、図43と同様の比例関係を表す直線、式になるため、図示を省略している。
ステップT7では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT8では、ステップT7で算出されたTm測距値と検量線Cから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の対応関係を表す検量線である。そこで、検量線Cから、ステップT7で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT8が実行されると、フローは終了する。
ステップT9では、算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出することができる。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップT10では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップT9で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップT11では、算出されたP0測距値と検量線Bから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Bは、P0交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。ステップT11が実行されると、フローは終了する。
以上説明した測距データ取得処理1では、第1及び第2の飽和それぞれに対応する交差電圧を用いてP0測距を行うので、第1及び第2の飽和のいずれが生じても高精度な測距が可能である。
<測距データ取得処理2>
次に、測距データ取得処理2について図32のフローチャートを参照して説明する。
最初のステップT21では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きが算出されているか否かを判断する。ここでの判断が肯定されるとステップT22に移行し、否定されるとステップT26に移行する。
次のステップT22では、算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(傾き)である(図15参照)。すなわち、算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップT22での判断が肯定されるとステップT23に移行し、否定されるとステップT26に移行する。
ステップT23では、算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップT24では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップT23で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップT25では、ステップT24で算出されたP0測距値と検量線Bから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Bは、P0交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。ステップT25が実行されると、フローは終了する。
ステップT26では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT27では、ステップT26で算出されたTm測距値と検量線Cから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップT26で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT27が実行されると、フローは終了する。
以上の説明から分かるように測距データ取得処理2では、第1の飽和となった場合に一律に交差電圧Bを用いてP0を算出しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、P0の値に誤差は発生しない。したがって、測距データ取得処理2は、光検出系40のIV変換器43において第2の飽和(過飽和)が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距データ取得処理3>
次に、測距データ取得処理3について図33のフローチャートを参照して説明する。
最初のステップT31では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きが算出されているか否かを判断する。ここでの判断が肯定されるとステップT32に移行し、否定されるとステップT35に移行する。
ステップT32では、算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップT33では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップT32で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップT34では、ステップT33で算出されたP0測距値と検量線Bから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Bは、交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。ステップT34が実行されると、フローは終了する。
ステップT35では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT36では、ステップT35で算出されたTm測距値と検量線Cから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップT35で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT36が実行されると、フローは終了する。
以上の説明から分かるように測距データ取得処理3では、受光信号が閾値Vth2を横切る場合に一律に交差電圧Bを用いて時刻P0を算出しているが、該時刻P0を用いたP0測距により受光信号の飽和(第1の飽和)の有無によらず正確な測距が可能である。また、測距データ取得処理3でも、第1の飽和から第2の飽和(過飽和)へ移行しない限り、P0の値に誤差は発生しない。したがって、測距データ取得処理3は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御をより簡易化できる点で有効である。
<測距データ取得処理4>
次に、測距データ取得処理4について図34のフローチャートを参照して説明する。
最初のステップT41では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きが算出されているか否かを判断する。ここでの判断が肯定されるとステップT42に移行し、否定されるとステップT45に移行する。
ステップT42では、算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(傾き)である(図15参照)。すなわち、算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップT42での判断が肯定されるとステップT43に移行し、否定されるとステップT45に移行する。
ステップT43では、Tr測距値を算出する。具体的には、発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップT44では、算出された傾きとステップT43で算出されたTr測距値と検量線Dから、物体までの距離を取得し、対応する走査位置と関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Dは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号の立ち上がりの傾きとの関係を表す検量線である(図12参照)。そこで、検量線Dから、算出された傾きに対応する測距誤差を取得し、該測距誤差をステップT43で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。ステップT44が実行されると、フローは終了する。
ステップT45では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT46では、ステップT45で算出されたTm測距値と検量線Cから、物体までの距離を取得し、対応する走査位置と関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップT45で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT46が実行されると、フローは終了する。
以上の説明から分かるように測距データ取得処理4では、第1の飽和となった場合に一律に受光信号の立ち上がりの傾きを用いてTr測距値を補正しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距データ取得処理4は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距データ取得処理5>
次に、測距データ取得処理5について図35のフローチャートを参照して説明する。
最初のステップT51では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きが算出されているか否かを判断する。ここでの判断が肯定されるとステップT52に移行し、否定されるとステップT54に移行する。
ステップT52では、Tr測距値を算出する。具体的には、発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップT53では、算出された傾きとステップT52で算出されたTr測距値と検量線Dから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Dは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号の立ち上がりの傾きとの関係を表す検量線である(図12参照)。そこで、検量線Dから、算出された傾きに対応する測距誤差を取得し、該測距誤差をステップT52で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。ステップT53が実行されると、フローは終了する。
ステップT54では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT55では、ステップT54で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップT54で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT55が実行されると、フローは終了する。
以上の説明から分かるように測距データ取得処理5では、受光信号が閾値Vth2を横切る場合に一律に受光信号の立ち上がりの傾きを用いてTr測距値を補正しているが、受光信号の飽和(第1の飽和)の有無によらず、正確な測距が可能である。また、測距データ取得処理5でも、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距データ取得処理5は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御をより簡易化できる点で有効である。
<測距データ取得処理6>
次に、測距データ取得処理6について図36のフローチャートを参照して説明する。
最初のステップT61では、算出されたパルス幅が6[m]以上か否かを判断する。ここで、6[m]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(パルス幅)である(図15参照)。すなわち、算出されたパルス幅が6[m]以上の場合に第1の飽和が発生していると判定できる。ステップT61での判断が肯定されるとステップT62に移行し、否定されるとステップT64に移行する。
ステップT62では、Tr測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップT63では、算出されたパルス幅とステップT62で算出されたTr測距値と検量線Eから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに一時的に保存する。ここで、検量線Eは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号のパルス幅との関係を表す検量線である。この検量線は、図12と図15に基づいて作成することができる。そこで、検量線Eから、算出されたパルス幅に対応する測距誤差を取得し、該測距誤差をステップT62で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。ステップT63が実行されると、フローは終了する。
ステップT64では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップT65では、ステップT64で算出されたTm測距値と検量線Cから、物体までの距離を取得し、対応する走査位置に関連付けて測距データとしてメモリに保存する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップT64で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップT65が実行されると、フローは終了する。
以上の説明から分かるように測距データ取得処理6では、第1の飽和となった場合に一律に受光信号のパルス幅を用いてTr測距値を補正しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距データ取得処理6は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距処理5>
測距処理5について図37、図38を用いて説明する。図37、図38のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理5は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS81では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS82では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS82での判断が肯定されるとステップS83に移行し、否定されると同じ判断を再び行う。
次のステップS83では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS83での判断が肯定されるとステップS84に移行し、否定されるとステップS85に移行する。
ステップS84では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS84が実行されると、ステップS85に移行する。
ステップS85では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS86では、1走査が終了したか否かを判断する。具体的には、LD駆動信号を生成してから所定時間(回転ミラー26が有効走査領域に対応する角度だけ回転する時間)が経過したときに1走査が終了したと判断する。ステップS86での判断が肯定されるとステップS87に移行し、否定されるとステップS82に戻る。
ステップS87では、測距データ取得処理Uを実施する。測距データ取得処理Uは、各走査の開始から終了までに走査位置毎に得られた受光信号すべてについて上記測距データ取得処理Q(測距データ取得処理1〜6のいずれか)を一括して行う処理である。測距データ取得処理Uが実施されると、メモリ内に複数の測距データが対応する走査位置と関連付けられた状態で配列される。
次のステップS88では、ステップS87で取得した測距データの中に異常な測距データがあるか否かを判断する。ここでの判断は、信号判定回路49で正常でないと判定された受光信号に基づいて取得した測距データがあれば肯定され、該測距データがなければ否定される。ステップS88での判断が肯定されるとステップS91に移行し、否定されるとステップS89に移行する。
ステップS89では、走査範囲の各走査位置の測定結果として該走査位置の測距データを出力する。ステップS89が実行されると、ステップS90に移行する。
ステップS90では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS90での判断が肯定されるとフローは終了し、否定されるとステップS82に戻り次の走査による測定を行う。
ステップS91では、N個(N≧1)の異常な測距データにフラグを付加する。すなわち、メモリ内において、ステップS88で判定された全ての異常な測距データにフラグを付加する。
次のステップS92では、nに1をセットする。
次のステップS93では、フラグが付加された第n測距データが得られた走査位置Rnの両側に、測距データにフラグが付加されていない走査位置があるか否かを判断する。ここでの判断が肯定されるとステップS94に移行し、否定されるとステップS97に移行する。
ステップS94では、走査位置Rnの測距データを、フラグが付加されていない、走査位置Rnの一側(片側)の該走査位置Rnに最も近い走査位置の測距データ及び走査位置Rnの他側の該走査位置Rnに最も近い走査位置の測距データのうち、走査位置Rnの測距データとの差が小さい方(走査位置Rnの測距データにより近似する方)の測距データに置き換える(図17参照)。
次のステップS95では、n<Nであるか否かを判断する。ここでの判断が肯定されるとステップS96に移行し、否定されるとステップS95.5に移行する。
ステップS95.5では、走査位置Rnの測定結果として置き換えた測距データを出力するとともに、走査位置Rn以外の走査位置の測定結果として該走査位置の測距データを出力する。ステップS95.5が実行されると、ステップS90に移行する。
ステップS96では、nをインクリメントする。ステップS96が実行されると、ステップS93に戻る。
ステップS97では、走査位置Rnの測距データを、フラグが付加されていない、走査位置Rnの一側の該走査位置Rnに最も近い走査位置の測距データに置き換える。ステップS97が実行されると、ステップS95に移行する。
以上説明した測距処理5では、ある走査位置Rnで異常な測距データが取得されたときに該走査位置の測定結果として、走査位置Rnに近い走査位置の正常な測距データを出力するので、画素毎の測定結果をより高精度に出力できる測距装置として物体検出装置100を機能させることができる。
<測距処理6>
測距処理6について図39を用いて説明する。図39のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理6は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS101では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS102では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS102での判断が肯定されるとステップS103に移行し、否定されると同じ判断を再び行う。
次のステップS103では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS103での判断が肯定されるとステップS104に移行し、否定されるとステップS105に移行する。
ステップS104では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS104が実行されると、ステップS105に移行する。
ステップS105では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS106では、1走査が終了したか否かを判断する。具体的には、LD駆動信号を生成してから所定時間(回転ミラー26が有効走査領域に対応する角度だけ回転する時間)が経過したときに1走査が終了したと判断する。ステップS106での判断が肯定されるとステップS107に移行し、否定されるとステップS102に戻る。
ステップS107では、測距データ取得処理Uを実施する。測距データ取得処理Uは、各走査の開始から終了までに走査位置毎に得られた受光信号すべてについて上記測距データ取得処理Q(測距データ取得処理1〜6のいずれか)を一括して行う処理である。測距データ取得処理Uが実施されると、メモリ内に複数の測距データが対応する走査位置と関連付けられた状態で配列される。
次のステップS108では、ステップS107で取得した測距データの中に異常な測距データがあるか否かを判断する。ここでの判断は、信号判定回路49で正常でないと判定された受光信号に基づいて取得した測距データがあれば肯定され、該測距データがなければ否定される。ステップS108での判断が肯定されるとステップS111に移行し、否定されるとステップS109に移行する。
ステップS109では、走査範囲の各走査位置の測定結果として該走査位置の測距データを出力する。ステップS109が実行されると、ステップS110に移行する。
次のステップS110では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS110での判断が肯定されるとフローは終了し、否定されるとステップS102に戻り次の走査による測定を行う。
ステップS111では、異常な測距データにフラグを付加する。すなわち、メモリ内において、ステップS108で正常でないと判断された測距データにフラグを付加する。
次のステップS112では、測距データにフラグが付加された走査位置の測距データを、フラグが付加されていない最小の測距データに置き換える(図49参照)。
次のステップS113では、測距データにフラグが付加されていない走査位置の測定結果として該走査位置の測距データを出力するとともに、測距データにフラグが付加された走査位置の測定結果として置き換えた測距データを出力する。ステップS113が実行されるとステップS110に移行する。
以上説明した測距処理6では、ある走査位置(画素)で異常な測距データが取得されたときに該走査位置の測定結果として、同一フレームで取得された全ての正常な測距データのうち最小の測距データを出力するので、画素毎の測定結果を出力できる安全性をより重視した測距装置として物体検出装置100を機能させることができる。
<測距処理7>
測距処理7について図40、図41を用いて説明する。図40、図41のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理7は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS121では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS122では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS122での判断が肯定されるとステップS123に移行し、否定されると同じ判断を再び行う。
次のステップS123では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS123での判断が肯定されるとステップS124に移行し、否定されるとステップS125に移行する。
ステップS124では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS124が実行されると、ステップS125に移行する。
次のステップS125では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS125.5では、受光信号を対応する走査位置に関連付けてメモリに一時的に保存する。
次のステップS126では、1走査が終了したか否かを判断する。具体的には、LD駆動信号を生成してから所定時間(回転ミラー26が有効走査領域に対応する角度だけ回転する時間)が経過したときに1走査が終了したと判断する。ステップS126での判断が肯定されるとステップS127に移行し、否定されるとステップS122に戻る。
次のステップS127では、1走査で取得された受光信号の中に異常な受光信号があるか否かを判断する。ここでの判断は、信号判定回路49で正常でないと判定された受光信号があれば肯定され、該受光信号がなければ否定される。ステップS127での判断が肯定されるとステップS131に移行し、否定されるとステップS128に移行する。
ステップS128では、測距データ取得処理Uを実施する。測距データ取得処理Uは、各走査の開始から終了までに走査位置毎に得られた受光信号すべてについて上記測距データ取得処理Q(測距データ取得処理1〜6のいずれか)を一括して行う処理である。測距データ取得処理Uが実施されると、メモリ内に複数の測距データが対応する走査位置と関連付けられた状態で配列される。
次のステップS129では、走査範囲の各走査位置の測定結果として該走査位置の測距データを出力する。ステップS129が実行されると、ステップS130に移行する。
ステップS130では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS130での判断が肯定されるとフローは終了し、否定されるとステップS122に戻り次の走査による測定を行う。
ステップS131では、N個(N≧1)の異常な受光信号にフラグを付加する。すなわち、メモリ内において、ステップS127で判定された異常な受光信号にフラグを付加する。
次のステップS132では、受光信号にフラグが付加されていない走査位置の測距データを取得する。具体的には、メモリに保存されたフラグが付加されていない受光信号すべてについて測距データ取得処理Q(測距データ取得処理1〜6のいずれか)を行う。
次のステップS133では、nに1をセットする。
次のステップS134では、フラグが付加された第n受光信号が得られた走査位置Rnの両側に、受光信号にフラグが付加されていない走査位置があるか否かを判断する。ここでの判断が肯定されるとステップS135に移行し、否定されるとステップS138に移行する。
ステップS135では、走査位置Rnの測定結果を、フラグが付加されていない、走査位置Rnの一側の該走査位置Rnに最も近い走査位置の受光信号に基づく測距データ及び走査位置Rnの他側の該走査位置Rnに最も近い走査位置の受光信号に基づく測距データのうち、第n受光信号により近似する受光信号に基づく測距データに決定する。ここで、受光信号の近似の度合いを判定する指標として、傾きとパルス幅で決まるプロットを用い、該プロットの距離が近い受光信号同士ほど近似することとする。
次のステップS136では、n<Nであるか否かを判断する。ここでの判断が肯定されるとステップS137に移行し、否定されるとステップS136.5に移行する。
ステップS136.5では、走査位置Rnの測定結果として決定された測距データを出力するとともに、走査位置Rn以外の走査位置の測定結果として該走査位置の測距データを出力する。ステップS136.5が実行されると、ステップS130に移行する。
ステップS137では、nをインクリメントする。ステップS137が実行されると、ステップS134に戻る。
ステップS138では、走査位置Rnの測定結果を、フラグが付加されていない、走査位置Rnの一側(片側)の該走査位置Rnに最も近い走査位置の受光信号に基づく測距データに決定する。ステップS138が実行されると、ステップS136に移行する。
以上説明した測距処理7では、ある走査位置Rnで異常な受光信号が取得されたときに該走査位置Rnの測定結果として、走査位置Rnに近い走査位置の正常な受光信号に基づく測距データを出力するので、画素毎の測定結果を高精度に出力できる測距装置として物体検出装置100を機能させることができる。
<測距処理8>
測距処理8について図42を用いて説明する。図42のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。測距処理8は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS141では、有効走査領域を光走査する。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加し、該LD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS142では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS142での判断が肯定されるとステップS143に移行し、否定されると同じ判断を再び行う。
次のステップS143では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS143での判断が肯定されるとステップS144に移行し、否定されるとステップS145に移行する。
ステップS144では、受光信号が閾値Vth1を最初に横切る点と該受光信号が閾値Vth2を最初に横切る点を通る直線の傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。ステップS144が実行されると、ステップS145に移行する。
ステップS145では、受光信号のパルス幅を算出する。具体的には、受光信号がVth1を最初に横切ってから次に横切るまでの時間(P4−P1)に光速を乗じて得られた距離をパルス幅として出力する。
次のステップS145.5では、受光信号を対応する走査位置に関連付けてメモリに一時的に保存する。
次のステップS146では、1走査が終了したか否かを判断する。具体的には、LD駆動信号を生成してから所定時間(回転ミラー26が有効走査領域に対応する角度だけ回転する時間)が経過したときに1走査が終了したと判断する。ステップS146での判断が肯定されるとステップS147に移行し、否定されるとステップS142に戻る。
次のステップS147では、1走査で取得された受光信号の中に異常な受光信号があるか否かを判断する。ここでの判断は、信号判定回路49で正常でないと判定された受光信号があれば肯定され、該受光信号がなければ否定される。ステップS147での判断が肯定されるとステップS151に移行し、否定されるとステップS148に移行する。
ステップS148では、測距データ取得処理Uを実施する。測距データ取得処理Uは、各走査の開始から終了までに走査位置毎に得られた受光信号すべてについて上記測距データ取得処理Q(測距データ取得処理1〜6のいずれか)を一括して行う処理である。測距データ取得処理Uが実施されると、メモリ内に複数の測距データが対応する走査位置と関連付けられた状態で配列される。
次のステップS149では、走査範囲の各走査位置の測定結果として該走査位置の測距データを出力する。ステップS149が実行されると、ステップS150に移行する。
次のステップS150では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS150での判断が肯定されるとフローは終了し、否定されるとステップS142に戻り次の走査による測定を行う。
ステップS151では、異常な受光信号にフラグを付加する。すなわち、メモリ内において、ステップS147で正常でないと判断された全ての受光信号にフラグを付加する。
次のステップS152では、受光信号にフラグが付加されていない全ての走査位置の測距データを取得する。
次のステップS153では、受光信号にフラグが付加された走査位置の測定結果としてフラグが付加されていない受光信号に基づく測距データのうち最小の測距データを出力するとともに、受光信号にフラグが付加されていない走査位置の測定結果として該走査位置の測距データを出力する。ステップS153が実行されるとステップS150に移行する。
以上説明した測距処理8では、ある走査位置(画素)で異常な受光信号が取得されたときに該走査位置の測定結果として、同一フレームで取得された全ての正常な受光信号に基づく測距データのうち最小の測距データを出力するので、画素毎の測定結果を出力できる安全性をより重視した測距装置として物体検出装置100を機能させることができる。
以上説明した本実施形態の物体検出装置100は、発光信号に基づいて発光するLD11(光源)を含む投光系10と、該投光系10から投光され物体で反射された光を受光し、その受光量に応じた電気信号を出力する光検出系40と、該光検出系40から出力された電気信号である受光信号に対して、閾値電圧Vth1、Vth2を基準に二値化する処理を含む少なくとも1つの処理を行う信号処理系41と、該信号処理系41の出力信号に基づいて、受光信号が正常であるか否かを判定する信号判定回路49(判定系)と、発光信号及び信号処理系41の出力信号に基づいて物体までの距離を算出可能な、時間計測部45及び測定制御部46を含む演算系と、を備え、信号判定回路49は、受光信号の電圧が閾値電圧Vth1、Vth2を横切る場合に、受光信号の電圧が閾値電圧Vth1を最初に横切る点と受光信号の電圧が閾値電圧Vth2を最初に横切る点を通る直線の傾きと、受光信号の電圧が閾値電圧Vth1、Vth2の小さい方を最初に横切ってから次に横切るまでの時間(P4−P1)に基づいて、受光信号が正常であるか否かの判定を行うことを特徴とする距離測定装置である。
この場合、受光信号が正常であるか否かの判定を高精度に行うことができ、その高精度な判定結果に応じて測定結果を出力できる。
この結果、高コスト化を抑制しつつ(例えばA/Dコンバータのような高価な回路を用いることなく)、受光信号によらず(詳しくは受光信号が正常か否かによらず)適正な(詳しくは装置の使用目的に適う適正な)測定結果を出力することが可能である。
また、物体検出装置100によれば、受光信号が飽和する場合(受光信号の振幅を求めることができない場合)でも傾き及び時間(P4−P1)を求めることができるため、受光信号が正常であるか否かの判定を高精度に行うことができる。
一方、例えば特開2004−184333号公報には、2つの閾値を用いて、受光信号のパルス幅を測定し、反射波の受光信号が上閾値に満たないにもかかわらず下閾値におけるパルス幅が基準時間幅以上である場合は2つの信号が合成された信号と判断して、測距を行わないようする技術が開示されている。
しかし、この技術では、上閾値を満たす異常な信号を見分けることはできない。また、受光信号の正常/異常を判定し、異常と判定したときに測距しないだけなので、信号処理として発展性が無い。
また、信号判定回路49は、パルス幅(時間(P4−P1)又は該時間(P4−P1)を距離に換算した値)と傾きが所定の関係にない場合に受光信号が正常でないと判定することが好ましい。
また、信号判定回路49は、距離に関する軸と、電圧/時間に関する軸を互いに直交する2軸とする2次元直交座標系において、パルス幅と傾きで決まる点が傾き−パルス幅曲線(所定の関係を表す曲線)上から外れた所定範囲にある場合に、受光信号が正常でないと判定することが好ましい。
また、所定範囲は複数あり、信号判定回路49はパルス幅と傾きで決まる点が複数の所定範囲のいずれかにある場合に受光信号が正常でないと判定することが好ましい。
また、複数の所定範囲のうち少なくとも2つの所定範囲は、一部重複していることが好ましい。
この場合、範囲同士が重複していない場合(範囲同士が隣接してる場合)に比べて、異常な受光信号の検出漏れを抑制することが可能である。
なお、複数の所定範囲は、各所定範囲が別の所定範囲と一切重複していなくても良い。
また、所定範囲は、互いに垂直な2辺がそれぞれ上記2軸に平行な正方形又は長方形であっても良い。つまり、所定範囲は、電圧/時間に関する軸方向の下限(例えば0.0E+00(V/s))や距離に関する軸方向の上限(例えば30m)を有していても良い。)
なお、所定範囲は、例えば円形、楕円形、三角形、正方形及び長方形以外の四角形、五角形以上の多角形等の他の形状であっても良い。
また、信号判定回路49は、受光信号の電圧が閾値電圧Vth1、Vth2の小さい方のみを横切る場合に、時間(P4−P1)に基づいて、受光信号が正常であるか否かを判定することが好ましい。
また、投光系10は光路が異なる複数の光を投光し、光検出系40は、投光された複数の光のうち物体で反射され受光した少なくとも2つの光に対応する少なくとも2つの電気信号を出力し、演算系は、該少なくとも2つの電気信号に判定系で正常であると判定された電気信号である第1の電気信号と判定系で正常でないと判定された電気信号である第2の電気信号が含まれる場合に、少なくとも第1の電気信号に基づく距離の算出を行い、第2の電気信号に対応する光の投光による測定結果として第1の電気信号に基づく距離の算出結果を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、該少なくとも3つの光のうち第1及び第2の電気信号に対応する2つの光の光路は隣り合っていることが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、演算系は、該少なくとも3つの光のうち両端の光を含まない少なくとも1つの光が第2の電気信号に対応する光であり、かつ該少なくとも1つの光の一側に隣接する光及び該少なくとも1つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも1つの光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち、該少なくとも1つの光に対応する第2の電気信号に基づく距離の算出結果との差が小さい方を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、演算系は、該少なくとも3つの光のうち両端の光を含まない少なくとも1つの光が第2の電気信号に対応する光であり、かつ該少なくとも1つの光の一側に隣接する光及び該少なくとも1つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも1つの光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち小さい方を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも4つの光であり、演算系は、該少なくとも4つの光のうち両端の光を含まない連続する(一連の)少なくとも2つの光が第2の電気信号に対応する光であり、かつ該少なくとも2つの光の一側に隣接する光及び少なくとも2つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも2つの光のうち一側に隣接する光よりも他側に隣接する光に近い方の投光による測定結果として他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果を出力し、該少なくとも2つの光のうち他側に隣接する光よりも一側に隣接する光に近い方の投光による測定結果として一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果を出力することが好ましい。
また、演算系は、上記少なくとも2つの光の数が奇数である場合に、一側に隣接する光と他側に隣接する光の中間の光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち、中間の光に対応する第2の電気信号に基づく距離の算出結果との差が小さい方を出力することが好ましい。
また、演算系は、第1の電気信号に基づく距離の算出及び第2の電気信号に基づく距離の算出の双方を行っても良い。
また、演算系は、第1の電気信号に基づく距離の算出のみを行っても良い。すなわち、第2の電気信号に基づく距離の算出を行わなくても良い。
また、物体検出装置100(距離測定装置)と、該物体検出装置100が搭載される車両(移動体)と、を備える車両装置(移動体装置)によれば、物体検出装置100が画素毎の測定結果を安定してほぼ正確に出力できるので、その測定結果を用いて車両を安全に制御できる。
また、本実施形態の距離測定方法は、第1の観点からすると、投光する投光工程と、該投光工程で投光され物体で反射された光を受光及び光電変換して電気信号を出力する光電変換工程と、該光電変換工程で出力された電気信号である受光信号に対して、閾値電圧Vth1、Vth2を基準に二値化する処理を含む少なくとも1つの処理を行う信号処理工程と、該信号処理工程の出力信号に基づいて、受光信号が正常であるか否かを判定する判定工程と、投光工程での投光タイミング及び信号処理工程の出力信号に基づいて物体までの距離を算出する距離算出工程と、を含み、判定工程では、受光信号の電圧が閾値電圧Vth1、Vth2を横切る場合に、受光信号の電圧が閾値電圧Vth1を最初に横切る点と受光信号の電圧が閾値電圧Vth2を最初に横切る点を通る直線の傾きと、受光信号の電圧が閾値電圧Vth1、Vth2の小さい方を最初に横切ってから次に横切るまでの時間とに基づいて、受光信号が正常であるか否かの判定を行うことを特徴とする距離測定方法である。
また、本実施形態の距離測定方法は、第2の観点からすると、投光する投光工程と、投光工程で投光され物体で反射された光を受光及び光電変換して電気信号を出力する光電変換工程と、光電変換工程で出力された電気信号である受光信号に対して、閾値電圧Vth1、Vth2を基準に二値化する処理を含む少なくとも1つの処理を行う信号処理工程と、信号処理工程の出力信号に基づいて、受光信号が正常であるか否かを判定する判定工程と、該判定工程での判定結果が肯定的である場合に、投光工程での投光タイミング及び信号処理工程の出力信号に基づいて、物体までの距離を算出する距離算出工程と、を含み、判定工程では、受光信号の電圧が閾値電圧Vth1、Vth2を横切る場合に、受光信号の電圧が閾値電圧Vth1を最初に横切る点と受光信号の電圧が閾値電圧Vth2を最初に横切る点を通る直線の傾きと、受光信号の電圧が閾値電圧Vth1、Vth2の小さい方を最初に横切ってから次に横切るまでの時間(P4−P1)とに基づいて、受光信号が正常であるか否かの判定を行うことが好ましい。
本実施形態の距離測定方法では、受光信号が正常であるか否かの判定を高精度に行うことができ、その高精度な判定結果に応じて測定結果を出力できる。
この結果、高コスト化を抑制しつつ(例えばA/Dコンバータのような高価な回路を用いることなく)、受光信号によらず適正な測定結果を出力することが可能である。
また、本実施形態の距離測定方法によれば、受光信号が飽和する場合(受光信号の振幅を求めることができない場合)でも傾き及び時間(P4−P1)を求めることができるため、受光信号が正常であるか否かの判定を高精度に行うことができる。
また、判定工程では、パルス幅(時間(P4−P1)又は該時間(P4−P1)を距離に換算した換算値)と傾きが所定の関係にない場合に、受光信号が正常でないと判定することが好ましい。
また、判定工程では、距離に関する軸と、電圧/時間に関する軸を互いに直交する2軸とする2次元直交座標系において、パルス幅と傾きで決まる点が傾き−パルス幅曲線(所定の関係を表す曲線)上から外れた所定範囲にある場合に、受光信号が正常でないと判定することが好ましい。
また、所定範囲は複数あり、判定工程では、パルス幅と傾きで決まる点が複数の所定範囲のいずれかにある場合に受光信号が正常でないと判定することが好ましい。
また、複数の所定範囲のうち少なくとも2つの所定範囲は一部重複していることが好ましい。
また、所定範囲は、互いに垂直な2辺がそれぞれ上記2軸に平行な正方形又は長方形であっても良い。
また、判定工程では、受光信号の電圧が閾値電圧Vth1、Vth2の小さい方のみを横切る場合に、時間(P4−P1)に基づいて、受光信号が正常であるか否かを判定すること好ましい。
また、投光工程では光路が異なる複数の光を投光し、光電変換工程では、投光された複数の光のうち物体で反射され受光した少なくとも2つの光に対応する少なくとも2つの電気信号を出力し、距離算出工程では、該少なくとも2つの電気信号に判定工程で正常であると判定された電気信号である第1の電気信号と判定工程で正常でないと判定された電気信号である第2の電気信号が含まれる場合に、少なくとも第1の電気信号に基づく距離の算出を行い、第2の電気信号に対応する光の投光による測定結果として第1の電気信号に基づく距離の算出結果を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、該少なくとも3つの光のうち第1及び第2の電気信号に対応する光の光路は隣り合っていることが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、距離算出工程では、該少なくとも3つの光のうち両端の光を含まない少なくとも1つの光が第2の電気信号に対応する光であり、かつ該少なくとも1つの光の一側に隣接する光及び該少なくとも1つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも1つの光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち、該少なくとも1つの光に対応する第2の電気信号に基づく距離の算出結果との差が小さい方を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも3つの光であり、距離算出工程では、該少なくとも3つの光のうち両端の光を含まない少なくとも1つの光が第2の電気信号に対応する光であり、かつ該少なくとも1つの光の一側に隣接する光及び少なくとも1つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも1つの光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち小さい方を出力することが好ましい。
また、上記複数の光は光路が並ぶ少なくとも4つの光であり、距離算出工程では、該少なくとも4つの光のうち両端の光を含まない連続する(一連の)少なくとも2つの光が第2の電気信号に対応する光であり、かつ該少なくとも2つの光の一側に隣接する光及び前記少なくとも2つの光の他側に隣接する光が第1の電気信号に対応する光である場合に、該少なくとも2つの光のうち一側に隣接する光よりも他側に隣接する光に近い方の投光による測定結果として他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果を出力し、該少なくとも2つの光のうち他側に隣接する光よりも一側に隣接する光に近い方の投光による測定結果として一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果を出力することが好ましい。
また、距離算出工程では、上記少なくとも2つの光の数が奇数である場合に、一側に隣接する光と他側に隣接する光の中間の光の投光による測定結果として、一側に隣接する光に対応する第1の電気信号に基づく距離の算出結果及び他側に隣接する光に対応する第1の電気信号に基づく距離の算出結果のうち、中間の光に対応する第2の電気信号に基づく距離の算出結果との差が小さい方を出力することが好ましい。
また、2つの閾値のうち大きい方の閾値Vth2は、電圧信号がオペアンプ48において飽和する飽和電圧(例えば1.2V)よりも該飽和電圧の10〜30%だけ小さい値(例えば0.9V)に設定されることが好ましい。閾値Vth2が飽和電圧から離れ過ぎると閾値Vth2とVth1とで算出する傾きの精度が低くなり、閾値Vth2が飽和電圧に近すぎると電圧信号の比較的不安定な高電圧領域(ピークに近い領域)が閾値Vth2を横切ることになり測定精度が低下するおそれがあるからである。
また、閾値Vth1、Vth2の差は、飽和電圧(例えば1.2V)の40〜90%(例えば0.6V)であることが好ましい。閾値Vth1、Vth2の差があまりに小さいと傾きの精度が低くなり、その差を大きくするためにVth1を下げるとノイズを検出しやすくなるからである。
また、物体検出装置100と、該物体検出装置100の出力に基づいて、物体情報(物体の有無、物体の位置、物体の移動方向及び物体の移動速度の少なくとも1つ)を求める監視制御装置300と、を備えるセンシング装置1000によれば、物体情報を安定して取得することができる。
また、センシング装置1000は移動体に搭載され、監視制御装置300は物体の位置情報及び移動情報の少なくとも一方に基づいて危険の有無を判断するため、例えば移動体の操縦制御系、速度制御系等に危険回避のための有効な情報を提供することができる。
また、センシング装置1000と、該センシング装置1000が搭載される移動体と、を備える移動体装置は、衝突安全性に優れる。
なお、上記実施形態の物体検出装置100の構成は、適宜変更可能である。
上記実施形態で説明した受光信号の立ち上がりの傾きやパルス幅、閾値Vth1、Vth2、オペアンプ48の飽和電圧等の数値は、一例であり、装置の用途や仕様に応じて、適宜変更可能である。
例えば、二値化回路44に設定される受光信号を二値化する基準となる閾値は、3つ以上であっても良い。例えば閾値Vth1、Vth2に加えて、Vth1とVth2の間に閾値Vth3を含む少なくとも1つの閾値を設定し、受光信号が少なくともVth1とVth3を横切る場合に、Vth1、Vth3をそれぞれ横切る2点の直線の傾きを用いて物体までの距離を算出したり、受光信号の正常/異常を判定しても良い。
但し、閾値の数を徒に増加するのは得策ではない。その増加した数だけコンパレータを増設する必要があり、コストの増大につながるからである。
また、上記実施形態では、Tm測距を行うとき、受光信号の立ち上がりが閾値Vth1を横切るタイミングと該受光信号の立ち下がりが閾値Vth1を横切るタイミングの中間のタイミングを用いているが、これに代えて、受光信号の立ち上がりが閾値Vth2を横切るタイミングと該受光信号の立ち下がりが閾値Vth2を横切るタイミングの中間のタイミングを用いても良い。
また、信号処理系に、処理回路として、オペアンプに代えて又は加えて、例えばローパスフィルタ、ハイパスフィルタ等のフィルタを組み込んでも良い。このようなフィルタは、オペアンプが組み込まれる場合はオペアンプと二値化回路との間に接続することが好ましく、オペアンプが組み込まれない場合はIV変換器と二値化回路との間に接続することが好ましい。
また、投光系10は、偏向器を用いる走査型であるが、偏向器を用いない非走査型であっても良い。すなわち、投光系は、少なくとも光源を有していれば良く、投光範囲の調整のためのレンズを光源の後段に有していても良い。
また、上記実施形態では、光源として、単一のLD11(端面発光レーザ)を用いているが、これに限られない。
例えば、複数のLD11が1次元又は2次元に配列されたLD11アレイ、VCSEL(面発光レーザ)、VCSELが1次元又は2次元に配列されたVCSELアレイ、半導体レーザ以外のレーザ、レーザ以外の光源などを用いても良い。複数のLD11が1次元配列されたLD11アレイとしては、複数のLD11が積層されたスタック型のLD11アレイや複数のLD11が横に並べられたLD11アレイが挙げられる。例えば、半導体レーザとして、LD11をVCSELに代えれば、アレイ内の発光点の数をより多く設定することができる。
また、投光光学系は、カップリングレンズを有していなくても良いし、他のレンズを有していても良い。
また、投光光学系、受光光学系は、反射ミラーを有していなくても良い。すなわち、LD11からの光を、光路を折り返さずに回転ミラーに入射させても良い。
また、受光光学系は、受光レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、偏向器として、回転ミラーに代えて、例えば、ポリゴンミラー(回転多面鏡)、ガルバノミラー、MEMSミラー等の他のミラーを用いても良い。
また、同期系は、同期レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、上記実施形態では、物体検出装置が搭載される移動体として車両を例にとって説明したが、該移動体は、例えば航空機、船舶、ロボット等であっても良い。
また、以上の説明で用いた具体的な数値、形状などは、一例であって、本発明の趣旨を逸脱しない範囲で適宜変更可能なことは言うまでもない。
以上の説明から明らかなように、上記実施形態の物体検出装置100、センシング装置1000、移動体装置、距離測定方法、測距処理1〜8、測距データ取得処理1〜6は、物体までの距離を測定する所謂Time of Flight(TOF)法を用いた技術であり、移動体におけるセンシングの他、モーションキャプチャ技術、測距計、3次元形状計測技術などの産業分野などで幅広く用いることができる。すなわち、本発明の物体検出装置は、必ずしも移動体に搭載されなくても良い。
以下に、発明者らが上記実施形態を発案するに至った思考プロセスを説明する。
従来、投光部と光検出部と信号処理部を含み、投光部からの投光ビームを測定対象物へ照射して、該測定対象物からの反射光を光検出部で受光し、投光部の投光タイミングから光検出部の受光タイミングまでの時間、位相遅れを光検出部からの信号を信号処理部で信号処理して検出することで、測定対象物までの往復の距離を測定するTime of Flight(TOF)法を用いた測距装置が、車両などのセンシングやモーションキャプチャ技術、測距計などの産業分野などで広く用いられている。
その一例として航空機や鉄道、車載など広く使用されているレーザレーダがある。レーザレーダとしては様々なものが知られているが、例えば特開2004−184333号公報に開示されているように、光源から射出されたレーザ光を回転ミラーで走査し、物体で反射された光を、再度回転ミラーを介して光検出部で検出し、光検出部からの信号(受光信号)を信号処理部で処理することで、所望の範囲の物体の有無やその物体までの距離を検出できる走査型レーザレーダがある。
レーザレーダでの測距において、例えばレーザ光が照射された物体からの反射光を受光した光検出部からの信号が閾値を横切るタイミングを検出してTr測距やTm測距を行う場合に、例えば2ピークコメットが発生した異常な受光信号に基づいて測距(距離演算)を行うと測距誤差が発生する。
そこで、特許文献1では、このような測距誤差の発生を回避するために、A/Dコンバータを信号処理部に組み込んで微分計算処理によって光検出部からの信号(受光信号)のピーク位置を求め、該ピーク位置を用いて距離を算出している。しかし、A/Dコンバータを用いた回路は、高価であり、例えば量産を前提する車両などの移動体の測距装置に組み込むには不向きである。
すなわち、特許文献1では、高コスト化を抑制しつつ、光検出部から出力された電気信号によらず適正な測定結果を出力することを可能とすることに関して改善の余地があった。
そこで、発明者らは、高コスト化を抑制しつつ、光検出系から出力された電気信号によらず適正な測定結果を出力することを可能とすべく、上記実施形態を発案した。