以下に、本発明の一実施形態の物体検出装置100について、図面を参照して説明する。
図1には、物体検出装置100の概略的構成がブロック図にて示されている。
物体検出装置100は、一例として、移動体としての車両に搭載され、投光し、物体(例えば先行車両、停車車両、障害物、歩行者等)で反射(散乱)された光を受光して該物体の有無や、該物体までの距離等の物体に関する情報(以下では「物体情報」とも呼ぶ)を検出する走査型レーザレーダである。物体検出装置100は、例えば車両のバッテリ(蓄電池)から電力の供給を受ける。
すなわち、物体検出装置100は、物体有無判定装置や距離測定装置(測距装置)や物体認識装置として機能する。
物体検出装置100は、図1に示されるように、投光系10、光検出系40、信号処理系41、時間計測部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と、を含む。
同期系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程度に設定される。また、パルス間隔は一般に数十μ秒程度である。
時間計測部45は、LD駆動信号の立ち上がりタイミング(LD11の発光タイミング)及び二値化回路44からの検出信号(ハイレベル信号)に基づいて、測定対象の物体までの往復時間を計測し、該往復時間を時間計測結果として測定制御部46に出力する。
測定制御部46は、時間計測部45からの時間計測結果に光速を乗じて距離に換算することで物体までの往復距離を算出し、該往復距離の1/2を距離データとして物体認識部47に出力する。
物体認識部47は、測定制御部46からの1走査もしくは複数の走査で取得した複数の距離データに基づいて、どこに物体があるかを認識し、その物体認識結果を測定制御部46に出力する。測定制御部46は、該物体認識結果をECUに転送する。
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)にターゲットとしての黒幕を設置したときには、該黒幕からの反射光の光量が少なくなるため、信号のピークが確認できる非飽和波形となっている。
この実験で用いられている黒幕は、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の距離にそれぞれターゲット(測定対象物)としての黒幕を水平方向にずらして置き(図30上図参照)、両黒幕をTr測距した結果である。図7の横軸は0.1°ずつ水平方向に画角を振った角度であり、縦軸はTr測距で得られた測距値である。
図7から分かるように、3mと6mの距離にある黒幕の間(角度0°付近)では測距値は3mから6mへ直ちに遷移せず、3mと6mの間の測距値が徐々に表れて、ゴーストとなるコメット現象が発生している。
一方、飽和コメットが発生しない理想的な測距を想定した場合、3mと6mの距離にある黒幕の間(角度0°付近)では測距値は3mから6mへ直ちに遷移する(図30下図参照)。
次に、飽和コメットの問題をより複雑にしている現象を図8に示されるオシロスコープで観測した波形を用いて説明する。
図8には、左側の3mの距離にある黒幕から右側の6mの距離にある黒幕へと0.1°の画角ずつ移動して測距したとき(図30上図参照)の画角毎の飽和した受光信号の波形(以下では「受光波形」とも呼ぶ)が示されている。
この際、飽和した受光波形の立ち上がり部の傾きは3mの距離にある黒幕を測距したときの大きさから徐々に小さくなり最小になった後、徐々に大きくなり6mの距離にある黒幕を測距したときの大きさになる。
すなわち、3mと6mの距離にある黒幕をそれぞれ測距したときの飽和した受光信号の立ち上がり部の中間部にゴーストとなる立ち上がり部が確認できる。
なお、受光波形の立ち上がり部は、LD11の微分抵抗や、LD11及びLD駆動部12の寄生容量の影響により投光波形(発光パルス)の立ち上がりが鈍るため、厳密には直線ではなく曲線となるが、ほぼ直線で近似することが可能である。そこで、本明細書においては、便宜上、受光波形の立ち上がり部(受光信号の立ち上がり)上の2点の直線の傾きを「受光波形の立ち上がり部の傾き」もしくは「受光信号の立ち上がりの傾き」とも呼ぶ。また、幾つかの図においても、便宜上、受光波形の立ち上がりや立ち下りを直線で表している。また、以下では、「受光信号の立ち上がりの傾き」や「受光波形の立ち上がり部の傾き」を単に「傾き」とも呼ぶ。
このとき、閾値VthでTr測距にて距離を算出する場合、3mの距離にある黒幕を測距したときの飽和した受光波形も6mの距離にある黒幕を測距したときの飽和した受光波形も徐々に測距値が変化し、それらの受光波形の中間部においても明らかにゴースト(コメット)が生じていると分かる。
このようなコメット現象は、図8に示されるように3mの距離にある黒幕から6mの距離にある黒幕へと照射ビームのスポット位置が移動するに従って、両黒幕の間において、3mの距離にある黒幕からの反射波が該黒幕の端部で徐々に弱くなることで飽和した受光波形の立ち上がり部の傾きが徐々に小さくなり最小になった後、6mの距離にある黒幕からの反射波が該黒幕の端部で徐々に強くなることで飽和した受光波形の立ち上がりが徐々に大きくなることに起因する。
なお、上記のように黒幕からの反射波が黒幕の端部で徐々に弱くなったり、強くなったりするのは、照射ビームのスポット位置が黒幕の端部付近を移動するときに該端部への照射ビームのスポットの大きさが変化することによる。
また、このコメット現象は、同一距離にある反射率が異なる複数のターゲット間の測距値の差異(測距誤差)の原因にもなっている。この測距誤差もコメット現象もその原因は同じであるため、以下では受光波形の立ち上がり部の傾きの違いと測距値の補正方法について統一して論じる。
図9に示されるように1つの閾値Vthのみを用いてTr測距を行うと、同一距離にある反射率が異なる複数のターゲット間でTrの値が異なり測距値に誤差が生じる。
そこで、発明者らは、同一距離にある反射率が異なる複数のターゲットの測距を行うと、ターゲット間で受光波形の立ち上がり部の傾きが異なり、高い反射率のターゲットでは大きな傾きとなり、低い反射率のターゲットでは小さな傾きとなることに着目した。
さらに、発明者らは、図9のように同一距離にある反射率が異なる複数のターゲットの受光波形の立ち上がり部を負の電圧側に延長すると、その延長線が発光信号の立ち上がりタイミングを基準(時刻0)としたある時刻P0で負の所定電圧と交差することを見出した。そこで、以下では、この所定電圧を「P0交差電圧」とも呼ぶ。また、以下では、発光信号の立ち上がりタイミングから時刻P0までの時間を「P0」とも呼ぶ。
すなわち、同一距離にある複数のターゲットの反射率が異なっていても、図9に示されるP0という、謂わば、複数のターゲットの受光波形の立ち上がり部の原点の時刻を求めることによりターゲット間で同一の測距値を得ることが可能となる。
具体的には、任意の時刻P0から得られる距離(任意の時間P0を距離に換算した値の1/2)と実際のターゲットまでの距離(実距離)との関係を表す検量線を予め取得しておけば、測定時にP0を求めることにより同一距離にある反射率が異なる複数のターゲット間で誤差のない正確な測距が可能となる。
次に、上述のようなP0を用いる測距(以下では「P0測距」とも呼ぶ)について詳述する。
図10に、受光波形の立ち上がり部の傾きを求めるための要素が示されている。
ここでは、受光波形の立ち上がり部の傾きを求めるために2つの閾値Vth1、Vth2と、該立ち上がり部が閾値Vth1、Vth2をそれぞれ横切る時間P1、P2を用いて、次の(1)式のように立ち上がり部の傾きを求めることができる。
立ち上がり部の傾き=(Vth2-Vth1)/(P2-P1)・・・(1)
なお、Vth1は、光検出系40において受光時に発生するショットノイズのピークを若干超える値(例えば0.3V程度)に設定されている。Vth2は、オペアンプ48における飽和電圧(例えば1.2V)よりもやや小さな値(例えば0.9V程度)に設定されている。
ここで、図10に示されるようにある受光波形の立ち上がり部を負の電圧側に延長して、ある設定されたP0交差電圧と交差する点の、発光信号(例えばLD駆動信号)の立ち上がりタイミングを基準とした時刻P0は、次の(2)式で求めることができる。
P0=P2+(P0交差電圧-Vth2)/傾き・・・(2)
このP0を求めるために様々な反射率となるターゲットを様々な距離(実距離)に設置し、P0交差電圧をある値に設定して測距する。
そして、P0の信頼性を担保するために、同一距離にある反射率が異なる複数のターゲット間で実距離とP0から得られる測距値(以下では「P0測距値」とも呼ぶ)との誤差の標準偏差が最も小さくなるようにP0交差電圧を細かく調整し、P0交差電圧を決定する。
P0交差電圧を決定した後に反射率、距離毎にP0を改めて求め、任意のP0から得られる測距値と実距離との対応関係を表す検量線(図31参照)を取得することで、ターゲットの反射率に測距値が影響を受けない距離測定装置を実現するこができる。
さらに、P0測距により、ターゲット端部にて反射波の強度が徐々に弱くなったり、強くなったりすることに起因するコメット現象(飽和コメット)も同時に解決できる。
このように、P0測距は、同一距離にある複数のターゲットの反射率が異なっていてもターゲット間で測距値が変わらず、ターゲットの反射率によらず該ターゲットまでの距離毎に正確な測距値を得ることができるが、やや煩雑である。
そこで、ターゲットの反射率に測距結果が影響を受けない、より簡便な測距方法として、受光波形の立ち上がり部の傾きを用いてTr測距で得られる測距値(以下では「Tr測距値」とも呼ぶ)を補正する測距方法も考えられる。
この測距方法は、P0を用いる測距方法に比べて若干測距精度が下がるものの、十分な実用性を有しており、同様にコメット現象の解決及び反射率の違いによる測距誤差の解消が可能である。
以下に、受光波形の立ち上がり部の傾きを用いてTr測距値を補正する測距方法について具体的に説明する。
図11には、様々な反射率のターゲットを30~70mの範囲内の様々な距離に設置して測距したときの測距毎の受光信号の立ち上がりの傾きと、反射率、距離毎のTr測距値と実際の距離(実距離)の差(測距誤差)との関係が示されている。
図11に示されるように、様々な反射率のターゲットを様々な距離に設置して測距しても受光信号の立ち上がりの傾きと測距誤差で決まる点は、ほぼ同じ曲線に乗ることが分かっている。
これは、どのような反射率を持つターゲットがどのような距離にあってもTr測距値を1つの補正式で補正できることを意味している。図11中の曲線の近似式は、図11中のような対数の補正式となる。この補正式では、xに受光信号の立ち上がりの傾きの値を入力するとその受光信号の測距誤差の値(y)が出力され、その値(y)をTr測距値から差し引くことで補正された正確な距離が得られる。
以上説明した2つの測距方法は、A/Dコンバータを用いない安価な装置構成によって光検出系40や信号処理系41において信号の電圧飽和が生じても正確な測距を行うことができる。
なお、以上では、受光信号が飽和している場合を例にとって説明したが、受光信号が飽和していない場合も、受光波形の立ち上がり部の傾きには同様な特性がある。
つまり、受光信号の飽和/非飽和によらず、受光信号が2つの閾値Vth1、Vth2を横切る場合には、該受光信号の立ち上がりの傾きを求めることができ、該傾きを用いてターゲットの反射率に測距結果が影響を受けない正確な測距(P0測距や、Tr測距値を該傾きで補正する測距方法)を行うことができる。
次に、上記非飽和コメットについて説明する。
非飽和コメットには、受光信号のピークが上側の閾値Vth2を超える場合(非飽和コメットA)と、受光信号のピークが下側の閾値Vth1のみを超える場合(非飽和コメットB)の2通りがある。
非飽和コメットAでは、受光信号の立ち上がりの傾きを求めることができるため、飽和コメットの場合と同様にP0測距やTr測距によって正確な測距を行うことができる。
前述したように、本発明者らは飽和状態にあるターゲットにおいて、立ち上がりの傾きを用いて距離を補正する発明を行った。しかしながら、ここで示される距離補正の発明は、Vth2を超える高い反射率を持つ大きな信号にとって有効であり、非飽和となってVth2以下の弱い信号では立ち上がり傾きを求めることはできず、非飽和状態での信頼性の高い距離補正方法が必要であった。
以下に、非飽和状態での補正を考える。
Vth2よりも小さな非飽和ピークを示すコメット補正では、Vth2を用いた立ち上がりの傾き補正式が使えない(図12参照)。
傾きを用いた補正式が適用できないためにVth1だけでのTr測距を行うことになるが、それでは非飽和となる反射率の異なる同一距離にある2つのターゲットは、Tr1とTr2のように異なる測距値を示す(図12参照)ことになり、非飽和ピークで測距を行う場合、Tr測距は使えない。
そこで、ピークの大きさが変わってもその測距値が基本的に変わらないTm値(図13参照)を用いることが一般的である。Tmとは図10におけるP1とP4の中間点であり、(P1+P4)/2で表される。非飽和ピークではTmを用いてターゲット実距離と測距値との関連について検量線を作成し、それから求めた補正式を用いることで測距補正を行う。
しかしながら、現実のコンパレータから直接観察した波形としては、一例として図13に示されるような左右対称のきれいな波形とはならず、同じ距離の反射率が違うターゲットは同じTm測距値を示すと限らない。
図14に示されるように、実際に観測されたコンパレータ波形では反射率の違いによってその波形形状が異なり、P1とP4との中間地点であるTmがずれている様子がわかる。
そこで、距離が30mの位置に設置された反射率の異なるターゲットを測距し、そのTmで求められる測距値と実際の距離(ここでは30m)との誤差(測距誤差)を求めた。その結果の一例が図15に示されている。図15では、横軸はパルス幅で示されている。ここでパルス幅は反射率の強度と同義である。すなわち、大きなパルス幅は大きな反射率であることを示している。なお、ここで測定されたターゲットからの信号は全て非飽和となる弱い反射強度で比較している。
この手法の有用なところは、コンパレータからの波形を用いて算出しているため、距離を30mから70mまで10mごと変化させて測距した実験においても、一例として図16に示されるように、そのプロットはほぼ直線上に乗り、図15とほぼ同じ直線で表されることになった。すなわち、どのような距離であるかに関係なく、そのコンパレータの特性は同じ数式で補正できることが分かった。
コンパレータからの波形を用いる本手法は、マルチレーザを用いた多層LiDAR(Laser imaging Detection And Ranging:レーザ画像検出と測距)においても全ての層で同じ式が適用できる。例えば、図2に示されるように1本のレーザ(1レイヤー)のLiDARならば、水平方向に1レイヤー走査だけであるが、一例として図17に示されるように、レーザに12層のVCSELを用いた本実施例の試作品では、鉛直方向(ここではZ軸方向)に対しても互いに異なる角度を持たせて各レイヤーから光を射出させる(図18参照)ことが可能である。しかもターゲットは30~70mでの結果であり、異なった距離でも同じ式を適用できる証明ともなっている。
図19には、12レイヤーの試作品における最上端のレイヤー1(VCSEL1)、中心付近のレイヤー7(VCSEL7)、最下端のレイヤー12(VCSEL12)におけるTm測距の例が示されている。これらの離れたレイヤーにおいてもそのパルス幅(反射強度)とTm測距誤差との関係はほぼひとつの直線に乗り、一つの式であらわされることが分かった。また、ここでは煩雑さを避けるために省略したが、レイヤー2~6、8~11についても同じ挙動であった。
図20には、距離が60mの位置に設置された反射率の異なるターゲットを測距し、そのTmで求められる測距値と実際の距離(ここでは60m)との誤差(測距誤差)に対して、上記補正式を用いて各パルス幅にてTm傾き補正を行った結果が、補正前(すなわちTm値)とともに示されている。なお、ここでは、Tmはオフセットで管理するため、Tm補正前のデータは最もパルス幅が大きい場合のTm測距値を基準点とし、そこからパルス幅が小さくなることでどれほど測距値がずれるかを示している。また、Tm補正は実距離(60m)と補正後の値とのずれ量の絶対値を測距誤差として表している。
ここでは距離が60mの位置にターゲットが設置されている場合について説明したが、図16及び図19に示されるように、Tm測距誤差は距離によらずパルス幅だけで決められるので、図20に示される結果も距離によらないことが分かる。
以上の説明から分かるように、正確な測距値を得るために、受光信号の飽和/非飽和や、受光信号のピークが閾値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)において反射率が異なるターゲットからの反射光の受光波形を例えばオシロスコープで観測できる。
図21には、オシロスコープで観測された受光波形の立ち上がり部の傾きとパルス幅との関係が距離毎に示されている。図21の波形形状から、パルス幅6m近傍(傾き1.0E+08[V/s]近傍)の所定値(傾き)で受光信号がオペアンプにおいて非飽和状態と飽和状態の間で急激に遷移することが分かる。
そこで、この所定値を閾値として飽和/非飽和を判定することが可能である。
さらに、図21の波形形状から、パルス幅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交差電圧は異なる値に存在するからである。
更に、図21から分かるように、30~70mの距離範囲内の各距離において受光信号のパルス幅と立ち上がりの傾きとの関係が一致する。すなわち、ここでは受光信号の立ち上がりの傾きの閾値を用いて測距方式や補正式の選択を行っているが、傾きに代えてパルス幅の閾値を用いることによっても、同様の制御が可能である。
図22には、物体検出装置100を備えるセンシング装置1000が示されている。センシング装置1000は、移動体に搭載され、物体検出装置100に加えて、該物体検出装置100に電気的に接続された監視制御装置300を備えている。物体検出装置100は、車両のバンパー付近やバックミラーの近傍に取り付けられる。監視制御装置300は、物体検出装置100での検出結果に基づいて、物体の形状や大きさの推定、物体の位置情報の算出、移動情報の算出、物体の種類の認識等の処理を行って、危険の有無を判断する。そして、危険有りと判断した場合には、アラーム等の警報を発して移動体の操縦者に注意を促したり、ハンドルを切って危険を回避する指令を移動体の操舵制御部に出したり、制動をかけるための指令を移動体のECUに出す。なお、センシング装置1000は、例えば車両のバッテリから電力の供給を受ける。
なお、監視制御装置300は、物体検出装置100と一体的に設けられても良いし、物体検出装置100とは別体に設けられても良い。また、監視制御装置300は、ECUが行う制御の少なくとも一部を行っても良い。
以下に、物体検出装置100で実施される測距処理の具体例(測距処理1~7)について説明する。
ここで、測距処理1~6を実施するために物体検出装置100の二値化回路44は、閾値Vth1を基準に入力信号を二値化するコンパレータ1及び閾値Vth2を基準に入力信号を二値化するコンパレータ2を含んで構成されている。
コンパレータ1、2は、互いに並列に接続されており、オペアンプ48からの受光信号が同時に入力される。
コンパレータ1は、入力された受光信号の立ち上がりが閾値Vth1を上回る(横切る)タイミングP1で立ち上がり、該受光信号の立ち下りが閾値Vth1を下回る(横切る)タイミングP4で立ち下がるハイレベル信号1を出力する(図10参照)。
また、コンパレータ2は、入力された受光信号の立ち上がりが閾値Vth2を上回る(横切る)タイミングP2で立ち上がり、該受光信号の立ち下りが閾値Vth2を下回る(横切る)タイミングP3で立ち下がるハイレベル信号2を出力する(図10参照)。
<測距処理1>
測距処理1について図23を用いて説明する。図23のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS1では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS2では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS2での判断が肯定されるとステップS3に移行し、否定されると同じ判断を再び行う。
次のステップS3では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS3での判断が肯定されるとステップS4に移行し、否定されるとステップS10に移行する。
ステップS4では、受光信号の立ち上がりの傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
次のステップS5では、ステップS4で算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(以下では「第1の飽和」とも呼ぶ)の有無を判定する基準となる値(傾き)である(図21参照)。すなわち、ステップS4で算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップS5での判断が肯定されるとステップS6に移行し、否定されるとステップS10に移行する。
ステップS6では、ステップS4で算出された傾きが2.5E+08[V/s]以上か否かを判断する。ここで、2.5E+08[V/s]は、IV変換器43における受光信号の飽和(以下では「第2の飽和」とも呼ぶ)の有無を判定する基準となる値(傾き)である(図21参照)。すなわち、ステップS4で算出された傾きが2.5E+08[V/s]以上の場合に第2の飽和が発生していると判定できる。ステップS6での判断が肯定されるとステップS7に移行し、否定されるとステップS12に移行する。
ステップS7では、ステップS4で算出された傾きとP0交差電圧Aから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Aは、2.5E+08[V/s](第2の飽和の場合)に対して設定された交差電圧である。
次のステップS8では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップS7で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップS9では、ステップS8で算出されたP0測距値と検量線Aから、物体までの距離を取得する。ここで、検量線Aは、P0交差電圧Aを用いて予め取得された、第2の飽和の場合のP0測距値と実距離の対応関係を表す検量線であり(図31参照)、その近似線(補正式)も自動的に計算される。
ここでは、検量線A、その補正式の例を図31に示したが、以下で説明する他の検量線、その補正式については、図31と同様の比例関係を表す直線、式になるため、図示を省略している。
次のステップS9.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS9.5での判断が肯定されるとフローは終了し、否定されるとステップS2に戻り次の受光信号に基づいて測定を行う。
ステップS10では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
ステップS11では、ステップS10で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の対応関係を表す検量線である。そこで、検量線Cから、ステップS10で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS11が実行されると、ステップS9.5に移行する。
ステップS12では、ステップS4で算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出することができる。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップS13では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップS12で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップS14では、ステップS13で算出されたP0測距値と検量線Bから、物体までの距離を取得する。ここで、検量線Bは、P0交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。ステップS14が実行されると、ステップS9.5に移行する。
<測距処理2>
測距処理2について図24を用いて説明する。図24のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS21では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS22では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS22での判断が肯定されるとステップS23に移行し、否定されると同じ判断を再び行う。
次のステップS23では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS23での判断が肯定されるとステップS24に移行し、否定されるとステップS29に移行する。
ステップS24では、受光信号の立ち上がりの傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
次のステップS25では、ステップS24で算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(傾き)である(図21参照)。すなわち、ステップS24で算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップS25での判断が肯定されるとステップS26に移行し、否定されるとステップS29に移行する。
ステップS26では、ステップS24で算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップS27では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップS26で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップS28では、ステップS27で算出されたP0測距値と検量線Bから、物体までの距離を取得する。ここで、検量線Bは、P0交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。
次のステップS28.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS28.5での判断が肯定されるとフローは終了し、否定されるとステップS22に戻り次の受光信号に基づいて測定を行う。
ステップS29では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
ステップS29.5では、ステップS29で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップS29で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS29.5が実行されると、ステップS28.5に移行する。
以上の説明から分かるように測距処理2では、第1の飽和となった場合に一律に交差電圧Bを用いてP0を算出しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、P0の値に誤差は発生しない。したがって、測距処理2は、光検出系40のIV変換器43において第2の飽和(過飽和)が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距処理3>
測距処理3について図25を用いて説明する。図25のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS31では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS32では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS32での判断が肯定されるとステップS33に移行し、否定されると同じ判断を再び行う。
次のステップS33では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS33での判断が肯定されるとステップS34に移行し、否定されるとステップS38に移行する。
ステップS34では、受光信号の立ち上がりの傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
ステップS35では、ステップS34で算出された傾きとP0交差電圧Bから、時刻P0を算出する。具体的には、上記(2)式を用いて時刻P0を算出する。ここで、P0交差電圧Bは、1.0E+08[V/s](第1の飽和の場合)に対して設定された交差電圧である。
次のステップS36では、P0測距値を算出する。具体的には、LD11の発光タイミングから、ステップS36で算出された時刻P0までの時間を距離に換算し、その換算値の1/2をP0測距値として出力する。
次のステップS37では、ステップS36で算出されたP0測距値と検量線Bから、物体までの距離を取得する。ここで、検量線Bは、交差電圧Bを用いて予め取得された、第1の飽和の場合のP0測距値と実距離の関係を表す検量線である。
次のステップS37.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS37.5での判断が肯定されるとフローは終了し、否定されるとステップS32に戻り次の受光信号に基づいて測定を行う。
ステップS38では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
ステップS39では、ステップS38で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップS38で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS39が実行されると、ステップS37.5に移行する。
以上の説明から分かるように測距処理3では、受光信号が閾値Vth2を横切る場合に一律に交差電圧Bを用いて時刻P0を算出しているが、該時刻P0を用いたP0測距により受光信号の飽和(第1の飽和)の有無によらず正確な測距が可能である。また、測距処理3でも、第1の飽和から第2の飽和(過飽和)へ移行しない限り、P0の値に誤差は発生しない。したがって、測距処理3は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御をより簡易化できる点で有効である。
<測距処理4>
測距処理4について図26を用いて説明する。図26のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS41では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS42では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS42での判断が肯定されるとステップS43に移行し、否定されると同じ判断を再び行う。
次のステップS43では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS43での判断が肯定されるとステップS44に移行し、否定されるとステップS48に移行する。
ステップS44では、受光信号の立ち上がりの傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
次のステップS45では、ステップS44で算出された傾きが1.0E+08[V/s]以上か否かを判断する。ここで、1.0E+08[V/s]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(傾き)である(図21参照)。すなわち、ステップS44で算出された傾きが1.0E+08[V/s]以上の場合に第1の飽和が発生していると判定できる。ステップS45での判断が肯定されるとステップS46に移行し、否定されるとステップS48に移行する。
ステップS46では、Tr測距値を算出する。具体的には、発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップS47では、ステップS44で算出された傾きとステップS46で算出されたTr測距値と傾き補正の補正量を求めるための検量線Dから、物体までの距離を取得する。ここで、検量線Dは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号の立ち上がりの傾きとの関係を表す検量線である(図11参照)。そこで、検量線Dから、ステップS44で算出された傾きに対応する測距誤差を取得し、該測距誤差をステップS46で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。
次のステップS47.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS47.5での判断が肯定されるとフローは終了し、否定されるとステップS42に戻り次の受光信号に基づいて測定を行う。
ステップS48では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。さらに、信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の時間幅で表されるパルス幅を取得する。
ステップS49では、ステップS48で得られたパルス幅から検量線Fを用いて算出された測距誤差値を、Tm測距値から差し引いて物体までの距離を取得する。ここで、検量線Fは、予め取得された、パルス幅とTm測距誤差との関係を表す検量線(上記(2)式)である。ステップS49が実行されると、ステップS47.5に移行する。
以上の説明から分かるように測距処理4では、第1の飽和となった場合に一律に受光信号の立ち上がりの傾きを用いてTr測距値を補正しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距処理4は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距処理5>
測距処理5について図27を用いて説明する。図27のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS51では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS52では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS52での判断が肯定されるとステップS53に移行し、否定されると同じ判断を再び行う。
次のステップS53では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS53での判断が肯定されるとステップS54に移行し、否定されるとステップS57に移行する。
ステップS54では、受光信号の立ち上がりの傾きを算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1及びハイレベル信号2の立ち上がりタイミングP2と、Vth1、Vth2と、上記(1)式を用いて傾きを算出する。
ステップS55では、Tr測距値を算出する。具体的には、発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップS56では、ステップS54で算出された傾きとステップS55で算出されたTr測距値と検量線Dから、物体までの距離を取得する。ここで、検量線Dは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号の立ち上がりの傾きとの関係を表す検量線である(図11参照)。そこで、検量線Dから、ステップS54で算出された傾きに対応する測距誤差を取得し、該測距誤差をステップS55で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。
次のステップS56.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS56.5での判断が肯定されるとフローは終了し、否定されるとステップS52に戻り次の受光信号に基づいて測定を行う。
ステップS57では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップS58では、ステップS57で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップS57で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS58が実行されると、ステップS56.5に移行する。
以上の説明から分かるように測距処理5では、受光信号が閾値Vth2を横切る場合に一律に受光信号の立ち上がりの傾きを用いてTr測距値を補正しているが、受光信号の飽和(第1の飽和)の有無によらず、正確な測距が可能である。また、測距処理5でも、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距処理5は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御をより簡易化できる点で有効である。
<測距処理6>
測距処理6について図28を用いて説明する。図28のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
最初のステップS61では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS62では、受光信号が閾値Vth1を横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号1が出力された場合に肯定され、出力されない場合に否定される。ステップS62での判断が肯定されるとステップS63に移行し、否定されると同じ判断を再び行う。
次のステップS63では、受光信号が閾値Vth2を横切るか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号2が出力された場合に肯定され、出力されない場合に否定される。ステップS63での判断が肯定されるとステップS64に移行し、否定されるとステップS68に移行する。
ステップS64では、受光信号のパルス幅を算出する。具体的には、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1(受光信号の立ち上がりが閾値Vth1を横切るタイミング)から立ち下がりタイミングP4(受光信号の立ち下がりが閾値Vth1を横切るタイミング)までの時間に光速を乗じて得られた長さを受光信号のパルス幅として出力する。
次のステップS65では、ステップS64で算出されたパルス幅が6[m]以上か否かを判断する。ここで、6[m]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(パルス幅)である(図21参照)。すなわち、ステップS64で算出されたパルス幅が6[m]以上の場合に第1の飽和が発生していると判定できる。ステップS65での判断が肯定されるとステップS66に移行し、否定されるとステップS68に移行する。
ステップS66では、Tr測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1までの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップS67では、ステップS64で算出されたパルス幅とステップS66で算出されたTr測距値と検量線Eから、物体までの距離を取得する。ここで、検量線Eは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号のパルス幅との関係を表す検量線である。この検量線は、図11と図21に基づいて作成することができる。そこで、検量線Eから、ステップS64で算出されたパルス幅に対応する測距誤差を取得し、該測距誤差をステップS66で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。
次のステップS67.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS67.5での判断が肯定されるとフローは終了し、否定されるとステップS62に戻り次の受光信号に基づいて測定を行う。
ステップS68では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号1の立ち上がりタイミングP1と立ち下がりタイミングP4の中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップS69では、ステップS68で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップS68で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS69が実行されると、ステップS67.5に移行する。
以上の説明から分かるように測距処理6では、第1の飽和となった場合に一律に受光信号のパルス幅を用いてTr測距値を補正しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距処理6は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御を簡易化できる点で有効である。
<測距処理7>
測距処理7について図29を用いて説明する。図29のフローチャートは、時間計測部45及び測定制御部46を含む演算系で実行される処理アルゴリズムに基づいている。
ここで、測距処理7を実施するために物体検出装置100の二値化回路44は、閾値Vthを基準に入力信号を二値化するコンパレータを含んで構成されている。
閾値Vthは、光検出系40の受光時に発生するショットノイズを僅かに上回る大きさに設定されている。
ここでは、コンパレータは、入力された受光信号の立ち上がりが閾値Vthを上回る(横切る)タイミングで立ち上がり、該受光信号の立ち下りが閾値Vthを下回る(横切る)タイミングで立ち下がるハイレベル信号を出力する。
最初のステップS71では、光源としてのLD11をパルス発光させる。具体的には、同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加する。
次のステップS72では、受光信号が閾値Vthを横切るか否かを判断する。すなわち、受光信号が検出されたか否かを判断する。ここでの判断は、二値化回路44からハイレベル信号が出力された場合に肯定され、出力されない場合に否定される。ステップS72での判断が肯定されるとステップS73に移行し、否定されると同じ判断を再び行う。
ステップS73では、受光信号のパルス幅を算出する。具体的には、二値化回路44からのハイレベル信号の立ち上がりタイミング(受光信号の立ち上がりが閾値Vthを横切るタイミング)から立ち下りタイミング(受光信号の立ち下がりが閾値Vthを横切るタイミング)までの時間に光速を乗じて得られた長さを受光信号のパルス幅として出力する。
次のステップS74では、ステップS73で算出されたパルス幅が6[m]以上か否かを判断する。ここで、6[m]は、オペアンプ48における受光信号の飽和(第1の飽和)の有無を判定する基準となる値(パルス幅)である(図21参照)。すなわち、ステップS73で算出されたパルス幅が6[m]以上の場合に第1の飽和が発生していると判定できる。ステップS74での判断が肯定されるとステップS75に移行し、否定されるとステップS77に移行する。
ステップS75では、Tr測距値を算出する。具体的には、発光タイミングから、二値化回路44からのハイレベル信号の立ち上がりタイミングまでの時間を距離に換算し、その換算値の1/2をTr測距値として出力する。
次のステップS76では、ステップS73で算出されたパルス幅とステップS75で算出されたTr測距値と検量線Eから、物体までの距離を取得する。ここで、検量線Eは、Tr測距値から実距離を差し引いた値(測距誤差)と、受光信号のパルス幅との関係を表す検量線である。この検量線は、図11と図21に基づいて作成することができる。そこで、検量線Eから、ステップS73で算出されたパルス幅に対応する測距誤差を取得し、該測距誤差をステップS75で算出されたTr測距値から差し引くことで物体までの距離を取得することができる。
次のステップS76.5では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS76.5での判断が肯定されるとフローは終了し、否定されるとステップS72に戻り次の受光信号に基づいて測定を行う。
ステップS77では、Tm測距値を算出する。具体的には、LD11の発光タイミングから、二値化回路44からのハイレベル信号の立ち上がりタイミングと立ち下がりタイミングタイミングの中間のタイミングまでの時間Tmを距離に換算し、その換算値の1/2をTm測距値として出力する。
次のステップS78では、ステップS77で算出されたTm測距値と検量線Cから、物体までの距離を取得する。ここで、検量線Cは、予め取得された、Tm測距値と実距離の関係を表す検量線である。そこで、検量線Cから、ステップS77で算出されたTm測距値に対応する実距離を物体までの距離として取得する。ステップS78が実行されると、ステップS76.5に移行する。
以上の説明から分かるように測距処理7では、受光信号が閾値Vthを横切る場合に一律に受光信号のパルス幅を用いてTr測距値を補正しているが、第1の飽和から第2の飽和(過飽和)へ移行しない限り、ほぼ正確な測距値を得ることができる。したがって、測距処理7は、光検出系40のIV変換器43において第2の飽和が発生し難い場合(例えばIV変換器43における飽和電圧が高い場合)に、制御をより簡易化できる点で有効である。
以上説明した本実施形態の物体検出装置100は、LD駆動信号(発光信号)に基づいて発光するLD11(光源)を含む投光系10と、該投光系10から投光され物体で反射された光を受光する時間計測用PD42(受光素子)を含み、該時間計測用PD42の出力電流を電圧信号(受光信号)に変換して出力する光検出系40と、該電圧信号が入力され、入力信号を閾値(閾値電圧)Vth1、Vth2を基準に二値化する二値化回路44を含む信号処理系41と、発光信号及び二値化回路44の出力信号に基づいて、物体までの距離を算出する、時間計測部45及び測定制御部46を含む演算系と、を備え、演算系は、上記電圧信号が閾値Vth1、Vth2を横切る場合(上記電圧信号の上部が閾値Vth1、Vth2を超える場合)に、該電圧信号の立ち上がりが閾値Vth1、Vth2をそれぞれ横切る2つの点を通る直線の傾き(本明細書では単に「傾き」とも呼ぶ)に基づいて物体までの距離を算出することを特徴とする距離測定装置である。
この場合、物体で反射された光の強度が比較的大きい場合(特に光検出系40や信号処理系41で電圧信号が飽和する場合)でも、発光信号及び二値化回路44の出力信号から得られるTr測距値を傾きで補正したり、傾きを用いてP0測距値を算出できるため、A/Dコンバータのような高価な回路を用いることなく高精度な測定が可能である。
結果として、物体検出装置100によれば、高コスト化を抑制しつつ、物体で反射され光検出系40で受光される光の強度が比較的大きい場合(例えば電圧信号が閾値Vth1、Vth2を横切る場合)でも高精度な測定が可能である。
すなわち、物体検出装置100によれば、光検出系40や信号処理系41において電圧信号が飽和する場合でも高精度な測定が可能である。
また、演算系は、電圧信号が閾値Vth1、Vth2を横切り、かつ傾きが所定値(例えば1.0E+08[V/s])以上の場合に、該傾きを用いて物体までの距離を算出することが好ましい。Tr測距値を傾きで補正する方法やP0測距は、例えば信号処理系41で受光信号が飽和するほど傾きが大きい場合に特に有効だからである。
詳述すると、信号処理系41は、入力信号を増幅(処理)するオペアンプ48(処理回路)を二値化回路44の前段に含み、傾きが上記所定値以上の場合に電圧信号がオペアンプ48において飽和する。
なお、信号処理系に、処理回路として、オペアンプに代えて又は加えて、例えばローパスフィルタ、ハイパスフィルタ等のフィルタを組み込んでも良い。このようなフィルタは、オペアンプが組み込まれる場合はオペアンプと二値化回路との間に接続することが好ましく、オペアンプが組み込まれない場合はIV変換器と二値化回路との間に接続することが好ましい。
また、本実施形態の物体検出装置100は、LD駆動信号(発光信号)に基づいて発光するLD11(光源)を含む投光系10と、該投光系10から投光され物体で反射された光を受光する時間計測用PD42(受光素子)を含み、該時間計測用PD42の出力電流を電圧信号(受光信号)に変換して出力する光検出系40と、該電圧信号が入力され、入力信号を閾値(閾値電圧)Vth1、Vth2を基準に二値化する二値化回路44を含む信号処理系41と、発光信号及び二値化回路44の出力信号に基づいて、物体までの距離を算出する、時間計測部45及び測定制御部46を含む演算系と、を備え、演算系は、電気信号の電圧が閾値電圧Vth1を横切る信号立ち上がり部(Tr)と信号立下り部(Tf)の時間的中間点(Tm)を求める距離測定装置において、2つの閾値電圧Vth1、Vth2を有し、電気信号の電圧の立ち上がりが閾値電圧Vth1、Vth2をそれぞれ横切る2つの点を通る直線の傾きが所定値以下の場合に、Tf-Trから求まるパルス幅とTmに基づいて物体までの距離を算出する距離測定装置である。
この場合、物体で反射された光の強度が比較的大きい場合(特に光検出系40や信号処理系41で電圧信号が飽和する場合)でも、発光信号及び二値化回路44の出力信号から得られるTr測距値を傾きで補正できるため、A/Dコンバータのような高価な回路を用いることなく高精度な測定が可能である。さらに、この物体検出装置100によれば、高コスト化を抑制しつつ、物体で反射され光検出系40で受光される光の強度が比較的小さい場合(例えば電圧信号が閾値Vth2を横切らない場合や回路電圧が飽和しない場合)でも高精度な測定が可能である。
また、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を下げるとノイズを検出しやすくなるからである。
また、演算系は、電圧信号が閾値Vth1、Vth2を横切る場合に、LD駆動信号の立ち上がりタイミングから、該電圧信号の立ち上がりが閾値Vth1、Vth2の一方(例えば閾値Vth1)を横切るまでの時間Trから、物体までの距離を概算し、その概算値(Tr測距値)を上記傾きで補正しても良い。なお、発光信号の立ち上がりタイミングから、上記電圧信号の立ち上がりが閾値Vth2を横切るまでの時間から、物体までの距離を概算し、その概算値を上記傾きで補正しても良い。
具体的には、演算系は、予め取得された、上記概算値と実距離の誤差と、傾きとの関係を用いて(実質的に傾きで補正して)物体までの距離を正確に算出することができる。
また、演算系は、電圧信号が閾値Vth1、Vth2を横切る場合に、傾きを用いて上記直線とP0交差電圧(負の所定電圧)との交点の時刻P0を求め、該時刻P0を用いて物体までの距離を算出しても良い。この場合、光検出系40や信号処理系41で電圧信号が飽和した場合でも更に高精度な測定が可能である。
また、P0交差電圧は、電圧信号が閾値Vth1、Vth2を横切る、物体検出装置100(距離測定装置)から同一距離にあり反射率が異なる複数の物体に対して物体検出装置100による測定を行ったときに物体間で上記交点が一致するように設定されることが好ましい。この場合、同一距離にあり反射率が異なる複数の物体間で誤差のない正確な測距値(P0測距値)を得ることができる。
具体的には、演算系は、予め取得された、発光信号の立ち上がりタイミングから上記交点の時刻までの時間を距離情報に換算した値の1/2と実距離との関係から、物体までの距離を正確に算出することができる。
なお、P0交差電圧は、必ずしも上記交点が一致するように設定されてなくも良く、要は、上記交点が一致もしくは近似するように設定されていることが好ましい。
また、P0交差電圧として、上記所定値(例えば1.0E+08[V/s])に対応するP0交差電圧B(第1の所定電圧)と、該所定値よりも大きい別の所定値(例えば2.5E+08[V/s])に対応する、P0交差電圧Bとは異なるP0交差電圧A(第2の所定電圧)とが設定されており、演算系は、傾きが所定値以上、かつ別の所定値未満の場合に、P0交差電圧Bを用いて上記交点の時刻を求め、傾きが別の所定値以上の場合に、P0交差電圧Aを用いて上記交点の時刻を求めることが好ましい。
この場合、傾きが別の所定値以上の場合に電圧信号が光検出系40のIV変換器43において飽和することが好ましい。
また、演算系は、電圧信号が閾値Vth1、Vth2のうち小さい方の閾値Vth1のみを横切る場合に、電圧信号の立ち上がりが小さい方の閾値Vth1を横切る第1のタイミング(ハイレベル信号1の立ち上がりタイミングP1)及び電圧信号の立ち下がりが小さい方の閾値Vth1を横切る第2のタイミング(ハイレベル信号1の立ち下がりタイミングP4)に基づいて物体までの距離を算出することが好ましい。
この場合、高コスト化を抑制しつつ、物体で反射され光検出系で受光される光の強度が比較的小さい場合でも高精度な測定が可能である。
結果として、物体検出装置100によれば、高コスト化を抑制しつつ、物体で反射され光検出系40で受光される光の強度によらず高精度な測定が可能である。
また、演算系は、発光信号の立ち上がりタイミングから、上記第1のタイミングと上記第2のタイミングの中間のタイミングまでの時間Tmを用いて物体までの距離を算出することが好ましい。
この場合、時間Tmを距離に換算した換算値の1/2を物体までの距離として出力しても良いし、該換算値の1/2と実距離の関係を表す検量線を予め取得しておき、該検量線から、測定時の該換算値に対応する実距離を物体までの距離として取得しても良い。
物体検出装置100と、該物体検出装置100が搭載される車両(移動体)と、を備える車両装置(移動体装置)によれば、衝突安全性に優れた車両装置を実現できる。
また、本実施形態の距離測定方法は、投光する工程と、該投光する工程で投光され物体で反射された光を受光し光電変換する工程と、該光電変換により発生した電流を電圧信号に変換する工程と、該電圧信号を閾値(閾値電圧)Vth1、Vth2を基準に二値化する処理を含む少なくとも1つの処理を行う工程と、投光する工程での投光タイミング及び二値化する処理でのハイレベル信号の出力タイミング(立ち上がりタイミングや立ち下りタイミング)に基づいて、物体までの距離を算出する工程と、を含み、該算出する工程では、上記電圧信号が閾値Vth1、Vth2を横切る場合(上記電圧信号の上部が閾値Vth1、Vth2を超える場合)に、電圧信号の立ち上がりが閾値Vth1、Vth2をそれぞれ横切る2つの点を通る直線の傾きに基づいて物体までの距離を算出することを特徴とする距離測定方法である。
この場合、上記光電変換する工程や上記少なくとも1つの処理を行う工程で電圧信号が飽和した場合でも、投光タイミング及びハイレベル信号の出力タイミングから得られるTr測距値を傾きで補正したり、傾きを用いてP0測距値を算出できるため、A/Dコンバータのような高価な回路を用いることなく高精度な測定が可能である。
結果として、本実施形態の距離測定方法によれば、高コスト化を抑制しつつ、物体で反射され受光される光の強度が比較的大きい場合に高精度な測定が可能である。
また、上記算出する工程では、電圧信号が閾値Vth1、Vth2を横切る場合、かつ傾きが所定値(例えば1.0E+08[V/s])以上の場合に、該傾きを用いて物体までの距離を算出することが好ましい。
また、上記算出する工程では、電圧信号が閾値Vth1、Vth2を横切る場合に、上記投光タイミングから、電圧信号の立ち上がりが閾値Vth1、Vth2の一方(例えばVth1)を横切るまでの時間Trから、物体までの距離を概算し、その概算値(Tr測距値)を傾きで補正しても良い。
また、上記算出する工程では、電圧信号が閾値Vth1、Vth2を横切る場合に、傾きを用いて上記直線とP0交差電圧(負の所定電圧)との交点の時刻P0を求め、該時刻P0を用いて物体までの距離を算出しても良い。
また、P0交差電圧は、電圧信号が閾値Vth1、Vth2を横切る、同一距離にあり反射率が異なる複数の物体に対して測定を行ったときに物体間で上記交点が一致するように設定されていることが好ましい。
また、P0交差電圧として、上記所定値(例えば1.0E+08[V/s])に対応するP0交差電圧B(第1の所定電圧)と、上記所定値よりも大きい別の所定値(例えば2.5E+08[V/s])に対応する、P0交差電圧Bとは異なるP0交差電圧Aとが設定されており、上記算出する工程では、傾きが所定値以上、かつ別の所定値未満の場合に、P0交差電圧Bを用いて上記交点の時刻を求め、傾きが別の所定値以上の場合に、P0交差電圧Aを用いて上記交点の時刻を求めることが好ましい。
また、物体検出装置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を横切るタイミングの中間のタイミングを用いても良い。
例えば、投光系10は、偏向器を用いる走査型であるが、偏向器を用いない非走査型であっても良い。すなわち、投光系は、少なくとも光源を有していれば良く、投光範囲の調整のためのレンズを光源の後段に有していても良い。
また、上記実施形態では、光源として、単一のLD11(端面発光レーザ)を用いているが、これに限られない。
例えば、複数のLD11が1次元又は2次元に配列されたLD11アレイ、VCSEL(面発光レーザ)、VCSELが1次元又は2次元に配列されたVCSELアレイ、半導体レーザ以外のレーザ、レーザ以外の光源などを用いても良い。複数のLD11が1次元配列されたLD11アレイとしては、複数のLD11が積層されたスタック型のLD11アレイや複数のLD11が横に並べられたLD11アレイが挙げられる。例えば、半導体レーザとして、LD11をVCSELに代えれば、アレイ内の発光点の数をより多く設定することができる。
また、投光光学系は、カップリングレンズを有していなくても良いし、他のレンズを有していても良い。
また、投光光学系、受光光学系は、反射ミラーを有していなくても良い。すなわち、LD11からの光を、光路を折り返さずに回転ミラーに入射させても良い。
また、受光光学系は、受光レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、偏向器として、回転ミラーに代えて、例えば、ポリゴンミラー(回転多面鏡)、ガルバノミラー、MEMSミラー等の他のミラーを用いても良い。
また、同期系は、同期レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、上記実施形態では、物体検出装置が搭載される移動体として車両を例にとって説明したが、該移動体は、例えば航空機、船舶、ロボット等であっても良い。
また、以上の説明で用いた具体的な数値、形状などは、一例であって、本発明の趣旨を逸脱しない範囲で適宜変更可能なことは言うまでもない。
以上の説明から明らかなように、上記実施形態の物体検出装置100、センシング装置1000、移動体装置、距離測定方法は、物体までの距離を測定する所謂Time of Flight(TOF)法を用いた技術であり、移動体におけるセンシングの他、モーションキャプチャ技術、測距計、3次元形状計測技術などの産業分野などで幅広く用いることができる。すなわち、本発明の物体検出装置は、必ずしも移動体に搭載されなくても良い。
以下に、発明者らが上記実施形態を発案するに至った思考プロセスを説明する。
従来、投光部と光検出部と信号処理部を含み、投光部からの投光ビームを測定対象物へ照射して、該測定対象物からの反射光を光検出部で受光し、投光部の投光タイミングから光検出部の受光タイミングまでの時間、位相遅れを光検出部からの信号を信号処理部で信号処理して検出することで、測定対象物までの往復の距離を測定するTime of Flight(TOF)法を用いた測距装置が、車両などのセンシングやモーションキャプチャ技術、測距計などの産業分野などで広く用いられている。
その一例として航空機や鉄道、車載など広く使用されているレーザレーダがある。レーザレーダとしては様々なものが知られているが、例えば特開2004-184333号公報に開示されているように、光源から射出されたレーザ光を回転ミラーで走査し、物体で反射された光を、再度回転ミラーを介して光検出部で検出し、光検出部からの信号を信号処理部で処理することで、所望の範囲の物体の有無やその物体までの距離を検出できる走査型レーザレーダがある。
レーザレーダでの測距において、例えばレーザ光が照射された物体からの反射光を受光した光検出部からの信号の立ち上がり部が閾値を横切るタイミングを検出する場合(Tr測距する場合)には、物体の反射率により測距誤差が発生する。すなわち、レーザレーダから同一距離にある反射率が異なる複数の物体に対してTr測距を行った場合に、該複数の物体からの反射光の強度が異なるため、光検出部からの信号の立ち上がり部が閾値を横切るタイミングが物体間で異なり、測距値に差が生じてしまう。
特に、物体からの反射光の強度が大きく、光検出部からの信号が光検出部や信号処理部において飽和する場合には、該信号の強度が大きいほど該信号のピーク位置が後方(時間的に後ろ)にずれるので、該ピーク位置を用いた測距やTr測距やTm測距を行っても測距誤差が発生してしまう。
そこで、特許文献1では、このような測距誤差の発生を回避するために、A/Dコンバータを信号処理部に組み込んで微分計算処理によって光検出部からの信号の立ち上がりタイミングを求め、該立ち上がりタイミングを用いて距離を算出している。しかし、A/Dコンバータを用いた回路は、高価であり、例えば量産を前提する車両などの移動体の測距装置に組み込むには不向きである。
すなわち、特許文献1では、高コスト化を抑制しつつ、物体で反射され光検出部で受光される光の強度(受光信号レベル)によらず高精度な測定を可能とすることに関して改善の余地があった。
そこで、発明者らは、高コスト化を抑制しつつ、物体で反射され光検出系で受光される光の強度(受光信号レベル)によらず高精度な測定を可能とすべく、上記実施形態を発案した。