JP6888216B2 - 物体までの距離を測定するための装置および方法 - Google Patents

物体までの距離を測定するための装置および方法 Download PDF

Info

Publication number
JP6888216B2
JP6888216B2 JP2019570540A JP2019570540A JP6888216B2 JP 6888216 B2 JP6888216 B2 JP 6888216B2 JP 2019570540 A JP2019570540 A JP 2019570540A JP 2019570540 A JP2019570540 A JP 2019570540A JP 6888216 B2 JP6888216 B2 JP 6888216B2
Authority
JP
Japan
Prior art keywords
delay units
delay
series
sequentially coupled
fpga
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019570540A
Other languages
English (en)
Other versions
JP2020526741A (ja
Inventor
リウ、シャン
ガオ、ミンミン
ホン、シャオピン
ウ、ディ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of JP2020526741A publication Critical patent/JP2020526741A/ja
Application granted granted Critical
Publication of JP6888216B2 publication Critical patent/JP6888216B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/483Details of pulse systems
    • G01S7/486Receivers
    • G01S7/4865Time delay measurement, e.g. time-of-flight measurement, time of arrival measurement or determining the exact position of a peak
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • B64U10/13Flying platforms
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • G01S17/10Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • G01S17/10Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves
    • G01S17/14Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves wherein a voltage or current pulse is initiated and terminated in accordance with the pulse transmission and echo reception respectively, e.g. using counters
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/933Lidar systems specially adapted for specific applications for anti-collision purposes of aircraft or spacecraft
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/483Details of pulse systems
    • G01S7/486Receivers
    • G01S7/4861Circuits for detection, sampling, integration or read-out
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/497Means for monitoring or calibrating
    • GPHYSICS
    • G04HOROLOGY
    • G04FTIME-INTERVAL MEASURING
    • G04F10/00Apparatus for measuring unknown time intervals by electric means
    • G04F10/005Time-to-digital converters [TDC]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/01Shaping pulses
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • B64C39/024Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U30/00Means for producing lift; Empennages; Arrangements thereof
    • B64U30/20Rotors; Rotor supports
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U50/00Propulsion; Power supply
    • B64U50/10Propulsion
    • B64U50/19Propulsion using electrically powered motors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00078Fixed delay

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Nonlinear Science (AREA)
  • Mechanical Engineering (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Description

無人航空機(UAV)などの無人車両は、多くの応用で使用することができ、数ある中でも特に、作物監視、写真撮影、建物および他の構造の検査、火災安全任務、国境警備ならびに製品配達を含む。そのような無人車両には、周辺環境において障害物および他の物体を検出するためのセンサを装備することができる。LIDARシステムは、三次元障害物検出および環境マッピングのための距離測定を提供するために使用することができる。しかし、既存のLIDARシステムの測定精度は、いくつかの複雑な環境での使用には不十分であり得る。それに従って、無人車両および他の可動物体に積載されたLIDARシステムを実装するための技法を改善する必要性が残っている。
本技術の代表的な実施形態に従って構成された可動物体を含む代表的なシステムの概略図である。 本技術の代表的な実施形態に従って構成された代表的なLIDARシステムの概略図である。 本技術の代表的な実施形態に従って構成されたフィールドプログラマブルゲートアレイ(FPGA)ベースの光学式距離測定装置の概略図である。 本技術の代表的な実施形態に従って構成された高時間分解能を有する時間/デジタル変換器(TDC)の概略図である。 本技術の代表的な実施形態による、立ち上がりエッジ信号の時間測定を示すタイミング図である。 本技術の代表的な実施形態による、立ち下がりエッジ信号の時間測定を示すタイミング図である。 本技術の代表的な実施形態による、FPGAベースの光学式距離測定装置を製造および操作するための方法を示すフロー図である。 本技術の代表的な実施形態による、平均遅延時間に基づいてFPGAを校正するための方法を示すフロー図である。 本技術の代表的な実施形態による、個々の遅延時間に基づいてFPGAを校正するための方法を示すフロー図である。 本技術の代表的な実施形態に従って生成された計数データを示すヒストグラムである。 本技術の代表的な実施形態による、一連の順次結合された遅延ユニットの個々の遅延時間の概略図である。 本技術の代表的な実施形態による、TDCによって生成されたデータシーケンスのバブルの概略図である。 本技術の代表的な実施形態による、バブルによる影響を受けた計数データを示すヒストグラムである。 本技術の代表的な実施形態による、バブルの影響を低減するためにFPGAを校正するための方法を示すフロー図である。 本技術の代表的な実施形態による、光学式距離測定装置を使用して物体までの距離を測定するための方法を示すフロー図である。 本技術の代表的な実施形態による、個々の遅延時間に少なくとも部分的に基づいてタイミング情報を測定するための方法を示すフロー図である。 本技術の代表的な実施形態による、バブルを低減するための技法を使用してタイミング情報を測定するための方法を示すフロー図である。
1.概要
本技術は、概して、光学式距離測定装置の遅延時間校正ならびに関連システムおよび方法を対象とする。いくつかの実施形態では、フィールドプログラマブルゲートアレイ(FPGA)は、時間分解能が増大された(例えば、ピコ秒レベルの分解能)光検出および測距(LIDAR)システムによって受信された光パルスのタイミング情報を測定する。いくつかの実施形態では、FPGAは、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含み、FPGAは、個々の遅延ユニットと関連付けられた個々の遅延時間を説明するために校正される。従来のシステムとは異なり、本明細書の本技術の実施形態は、コスト、電力消費量および処理上の負担を低減して距離測定正確度(例えば、センチメートルレベルの正確度)の向上を提供する。それに加えて、本技術は、多種多様な可動物体に組み込むことができ、これらに限定されないが、無人車両、自律走行車両およびロボットを含む。それに従って、本明細書で説明される実施形態は、自律走行または半自律走行車両によって実行される障害物検出および環境マッピングなど、複雑な動的環境における高い正確度の距離測定を伴う応用において特に有利である。
以下の説明では、現在開示されている技術の完全な理解を提供するために、多くの具体的な詳細を記載する。他の実施形態では、本明細書で紹介されている技法は、これらの具体的な詳細なしで実践することができる。他の実例では、本開示を不必要に曖昧にすることを避けるため、具体的な製作技法などの周知の特徴については詳細には説明しない。この説明における「実施形態」、「一実施形態」または同様のものへの言及は、説明されている特定の特徴、構造、材料または特性が本開示の少なくとも1つの実施形態に含まれることを意味する。従って、この明細書におけるそのような語句の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。他方では、そのような言及は、相互排他的であるとも限らない。その上、特定の特徴、構造、材料または特性は、1つまたは複数の実施形態では、適切ないかなる方式でも組み合わせることができる。また、図に示される様々な実施形態は、単なる例示的な表現であり、必ずしも原寸に比例するとは限らないことを理解されたい。
本明細書で使用される場合は、「Aおよび/またはB」は、「A」または「B」のうちの1つまたは複数、ならびに、「A」および「B」などのそれらの組合せを包含する。
以下の説明では、無人航空機(UAV)と関係していくつかの実施形態が紹介されているが、本明細書の技法は、同様の方式で、これらに限定されないが、他のタイプの無人車両(例えば、地上車両)、自律走行車両(例えば、自動運転車)、ハンドヘルド装置またはロボットを含む、他のタイプの可動物体にも適用することができる。
図1A〜13は、開示される技術の代表的な実施形態を示すために提供される。別段の定めがない限り、図面は、本出願の請求項の範囲を制限することを意図しない。
本明細書で説明される技術の実施形態のいくつかは、プログラマブルコンピュータまたはコントローラによって実行されるルーチンを含むコンピュータまたはコントローラ実行可能命令の形態を取ることができる。当業者であれば、以下で示されるものおよび説明されるもの以外のコンピュータまたはコントローラシステム上で技術を実践できることが理解されよう。技術は、以下で説明されるコンピュータ実行可能命令のうちの1つまたは複数を実行するように特にプログラムされるか、構成されるかまたは構築される専用コンピュータまたはデータプロセッサにおいて具体化することができる。それに従って、「コンピュータ」および「コントローラ」という用語は、本明細書で一般的に使用される場合は、いかなるデータプロセッサも指し、インターネット家電およびハンドヘルド装置(手のひらサイズのコンピュータ、着用可能コンピュータ、セルフォンまたはモバイルフォン、マルチプロセッサシステム、プロセッサベースのまたはプログラマブル家庭用電化製品、ネットワークコンピュータ、ミニコンピュータおよび同様のものを含む)を含み得る。これらのコンピュータおよびコントローラによって処理された情報は、CRTディスプレイまたはLCDを含む、適切ないかなる表示媒体においても提示することができる。
本明細書の実施形態のいくつかは、いくつかの実施形態においてコンピュータプログラム製品によって実装することができる方法またはプロセスの一般的な文脈において説明し、同コンピュータプログラム製品は、ネットワーク接続された環境においてコンピュータによって実行されるコンピュータ実行可能命令(プログラムコードなど)を含むコンピュータ可読媒体において具体化される。コンピュータ可読媒体は、取り外し可能および取り外し不可能な記憶装置を含み得、これらに限定されないが、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)などを含む。従って、コンピュータ可読媒体は、非一時的な記憶媒体を含み得る。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含み得る。コンピュータまたはプロセッサ実行可能命令、関連データ構造およびプログラムモジュールは、本明細書で開示される方法のステップを実行するためのプログラムコードの例を表す。そのような実行可能命令または関連データ構造の特定のシーケンスは、そのようなステップまたはプロセスにおいて説明される機能を実装するための対応する行為の例を表す。
本明細書の実施形態のいくつかは、ハードウェア回路、ソフトウェアまたはそれらの組合せを使用する装置またはモジュールとして実装することができる。例えば、ハードウェア回路の実装形態は、例えばプリント基板の一部として統合される、個別のアナログおよび/またはデジタルコンポーネントを含み得る。その代替としてまたはそれに加えて、開示されるコンポーネントまたはモジュールは、特定用途向け集積回路(ASIC)および/またはフィールドプログラマブルゲートアレイ(FPGA)装置として実装することができる。いくつかの実装形態は、それに加えてまたはその代替として、この出願の開示される機能と関連付けられたデジタル信号処理の動作上の必要性のために最適化されたアーキテクチャを備える特殊マイクロプロセッサであるデジタル信号プロセッサ(DSP)を含み得る。同様に、各モジュール内の様々なコンポーネントまたはサブコンポーネントは、ソフトウェア、ハードウェアまたはファームウェアにおいて実装することができる。モジュール間および/またはモジュール内のコンポーネント間の接続性は、これらに限定されないが、適切なプロトコルを使用したインターネット、有線または無線ネットワーク上の通信を含む、当技術分野で知られている接続方法および媒体のいずれか1つを使用して提供することができる。
2.代表的な実施形態
図1Aは、本技術の代表的な実施形態に従って構成された要素を有する代表的なシステム100の概略図である。システム100は、可動物体110(例えば、UAV)および制御システム120を含む。可動物体110は、無人車両、自律走行車両またはロボットなど、様々な実施形態で使用することができる適切ないかなるタイプの可動物体でもあり得る。
可動物体110は、搭載物114を積載することができる本体112(例えば、機体)を含み得る。本明細書で説明される実施形態に従って、多くの異なるタイプの搭載物を使用することができる。いくつかの実施形態では、搭載物は、撮像装置または光電子走査装置などの1つまたは複数のセンサを含む。例えば、搭載物114は、カメラ、ビデオカメラおよび/または静止カメラであり得る。カメラは、可視光線、紫外線、赤外線および/または他の帯域を含む、各種の適切な帯域のいずれかの波長に対する感度が高いものであり得る。また、搭載物114は、他のタイプのセンサおよび/または他のタイプの貨物(例えば、パッケージまたは他の配達品)も含み得る。
いくつかの実施形態では、搭載物114は、積載メカニズム116(例えば、ジンバル)によって本体112に相対的にサポートされる。積載メカニズム116は、本体112に相対的に独立して搭載物114を配置できるようにすることができる。例えば、積載メカニズム116は、搭載物114が1本、2本、3本またはそれ以上の軸の周りを回転できるようにすることができる。また、積載メカニズム116は、搭載物114が1本、2本、3本またはそれ以上の軸に沿って線形に移動できるようにすることもできる。回転または並進移動のための軸は、互いに直交しても直交しなくともよい。例えば、搭載物114が撮像装置を含む際は、撮像装置は、対象の写真撮影、ビデオ撮影または追跡のために、積載メカニズム116を介して本体112に相対的に移動することができる。
可動物体110は、最大3の並進自由度および/または最大3の回転自由度に対して可動物体110を移動するように構成された1つまたは複数の推進ユニット130を含み得る。例えば、可動物体110がUAVである実施形態では、推進ユニット130は、可動物体110が最大3の並進自由度および最大3の回転自由度に対して離陸、着陸、ホバリングおよび/または空中移動できるようにすることができる。
本明細書の実施形態での使用には、様々なタイプの推進ユニットが適している。いくつかの実施形態では、推進ユニット130は、1つまたは複数の回転翼を含む。回転翼は、シャフトに結合された回転翼の羽根を含み得る。回転翼の羽根およびシャフトは、適切な駆動メカニズムによって回転することができる。例えば、推進ユニット130は、DCモータ(例えば、ブラシ付きまたはブラシレス)またはACモータなど、適切ないかなるモータによっても駆動することができる。モータは、回転翼の羽根を装着して駆動するように構成することができる。可動物体110の推進ユニット130はプロペラベースの4つの回転翼を有するものとして描写されているが、適切ないかなる数、タイプおよび/または配置の推進ユニットも使用することができる。例えば、回転翼の数は、1つ、2つ、3つ、4つ、5つまたはそれ以上であり得る。回転翼は、可動物体110に対して垂直に、水平にまたは他の適切な任意の角度で方向付けることができる。回転翼の角度は、固定することも、可変にすることもできる。
可動物体110は、制御システム120から制御コマンドを受信するようにおよび/または制御システム120にデータを送信するように構成される。図1Aに示される実施形態では、制御システム120は、可動物体110上に積載されたいくつかのコンポーネントと、可動物体110外に配置されたいくつかのコンポーネントとを含む。例えば、制御システム120は、可動物体110に積載された第1のコントローラ122と、可動物体110から離れて配置され、通信リンク128(例えば、無線周波数(RF)ベースのリンクなどの無線リンク)を介して接続された第2のコントローラ124(例えば、人間が操作するリモートコントローラ)とを含み得る。第1のコントローラ122は、これらに限定されないが、推進ユニット180および搭載物162(例えば、カメラ)の操作を含む、可動物体110の活動を指示する命令を実行するコンピュータ可読媒体126を含み得る。第2のコントローラ124は、1つまたは複数の入力/出力装置(例えば、ディスプレイおよび制御ボタン)を含み得る。いくつかの実施形態では、オペレータは、第2のコントローラ124を操作して可動物体110をリモート制御し、第2のコントローラ124上のディスプレイおよび/または他のインタフェースを介して可動物体110からフィードバックを受信する。いくつかの実施形態では、可動物体110は自律的に動作し、その事例では、第2のコントローラ124は、排除することも、オペレータオーバーライド機能のためだけに使用することもできる。
安全で効率的な操作に備えるため、UAVおよび他のタイプの無人車両が障害物を避けるために障害物を自律的にもしくは半自律的に検出できることおよび/または回避行動に携われることが有益であり得る。それに加えて、UAVが半自律的にまたは完全に自律的に動作している際には特に、環境物体を検知することが、ナビゲーション、対象追跡およびマッピングなどのUAV機能に役立ち得る。
それに従って、本明細書で説明されるUAVは、UAVの周辺環境の物体を検出するように構成された1つまたは複数のセンサ(例えば、搭載物タイプのセンサとは別のものおよび独立したもの)を含み得る。いくつかの実施形態では、UAVは、物体とUAVとの間の距離を測定するように構成されたセンサを含み、本明細書では、「距離測定装置」(例えば、図1Aの距離測定装置140)と呼ばれる。距離測定装置は、UAVの本体の上方、UAVの本体の下、UAVの本体の横側またはUAVの本体内などの様々な方法で、UAVに積載することができる。任意選択により、距離測定装置は、装置がUAVに相対的に並進および/または回転できるようにするジンバルまたは他の積載メカニズムを介してUAVに結合することができる。
いくつかの実施形態では、距離測定装置は、物体までの距離を測定するために光を使用する光学式距離測定装置である。光学式距離測定装置は、LIDARシステムまたはレーザ距離計であり得る。LIDARシステムおよびレーザ距離計は、光信号(例えば、レーザパルス)を放出し、物体から反射して戻ってきた光信号を検出し、光の速度および送信から検出までに経過した時間に基づいて物体までの距離を決定することによって、装置と物体との間の距離を測定する。レーザ距離計は、一次元の距離データを提供するが、LIDARシステムは、複数の異なる角度にわたって光信号を放出することによって、周辺環境の三次元のデータを提供することができる。いくつかの実施形態は、本明細書では、LIDARシステムの観点から説明されるが、これは単なる例示を目的とし、本技術は、レーザ距離計などの他のタイプの光学式距離測定装置にも適用することができる。それに加えて、本明細書で説明されるいくつかの実施形態は、LIDARシステムのレーザダイオードによって生成されるレーザビームに特に適用可能であるが、他の実施形態では、他のタイプの放射源(例えば、他のタイプのレーザまたは発光ダイオード(LED))を使用することができる。
図1Bは、本技術の代表的な実施形態に従って構成された代表的なLIDARシステム150の概略図である。LIDARシステム150のコンポーネントのいくつかまたはすべては、図1Aの距離測定装置140に含めることができる。LIDARシステム150は、光がLIDARシステム150と物体180との間を移動する時間(飛行時間(TOF)としても知られている)を測定することによって、物体180までの距離を検出する。システム150は、レーザビーム(例えば、1つまたは複数の光パルスの形態で)を生成することができる発光体152を含む。レーザビームは、単一のレーザパルスでも一連のレーザパルスでもよい。レンズ154は、発光体152によって生成されたレーザビームを平行にするために使用することができる。平行光は、ビーム分割装置156の方に向けることができる。ビーム分割装置156は、光源152からの平行光が通過できるようにすることができる。あるいは、ビーム分割装置156は、異なるスキームが採用される際(例えば、発光体が検出器の前に配置される際)は不要であり得る。
また、システム150は、プリズム、鏡、回折格子、光学フェーズドアレイ(例えば、液晶制御回折格子)またはそれらの組合せなどの様々な光学素子を含み得るビームステアリング装置158も含む。これらの異なる光学素子は、外側に向かう光ビーム162および162'によって示されるように異なる方向に光を誘導するために、共通軸160の周りを回転することができる。光学素子の回転は、モータ161または他の適切なメカニズムによって作動することができる。
外側に向かうビーム162が物体180に当たると、反射したまたは散乱した光は大きな角度164にわたって広がり、エネルギーのほんの一部のみが反射してシステム150に戻ってくる。戻りビーム166(例えば、1つまたは複数の戻り光パルスの形態の)は、ビーム分割装置156に反射して受信レンズ168の方に向けられ、受信レンズ168は、戻りビームを検出器170に収集および集束させることができる。検出器170は、戻り光を受信し、光を電気信号に変換する。物体180までの距離を決定するため、測定回路(TOFユニットなど)を含むコントローラ172を使用してTOFを測定することができる。従って、システム150は、光源152による光パルス162の生成と検出器170による戻りビーム166の受信と間の時間差に基づいて、物体180までの距離を測定することができる。
いくつかの実施形態では、センチメートルレベルの正確度で距離測定を得るため、LIDARシステムなどの光学式距離測定装置によって受信された光パルスは、数百ピコ秒以下程度の時間分解能でサンプリングされる。また、高分解能サンプリングは、超短パルス信号をうまく捕捉する(例えば、ほんの数十ナノ秒から数ナノ秒までのパルス持続時間で)ためにも有益である。多くのLIDARシステムは、光パルス信号のデジタル化を実行するために、高速アナログ/デジタル変換器(ADC)(例えば、毎秒1ギガサンプル(GSPS)を超えるサンプリングレートで)に依存している。しかし、高速ADCは、通常、高コストであり、高い電力消費量を必要とする。その上、高速ADCサンプリングは、同じ時間間隔における異なる電圧でのアナログ信号サンプリングに基づく(すなわち、時間軸に対するサンプリング)。このように、サンプリングのタイミングは、パルス信号から独立しており、いかなる時間相関もなく、アナログ信号のタイミング情報を抽出するための抽出アルゴリズムが必要である。
本技術は、高速ADCの使用に依存せずに高い正確度の距離測定を達成する方法を提供する。いくつかの実施形態では、本明細書で説明されるシステムおよび方法は、FPGAまたは複雑なプログラマブル論理装置(CPLD)などのフィールドプログラマブル装置を使用して高い正確度の距離測定を提供するように構成される。本明細書の代表的な実施形態はFPGAを参照して説明されるが、本技術は、CPLDなどの他のタイプのフィールドプログラマブル装置を使用して実装することもできる。
FPGAは、多種多様な異なる機能を提供するために、FPGAが製造された後でユーザがプログラムできる複数の論理ブロックを含む集積回路である。いくつかの実施形態では、FPGAは、プログラマブル論理ブロック(例えば、構成可能な論理ブロック(CLB)または論理アレイブロック(LAB))および入力/出力(I/O)ブロックのアレイを含む。論理ブロックおよびI/Oブロックは、プログラマブルルーティングを介して互いに結合することができる。論理ブロックは、複数の論理セルまたはスライスを含み得る。論理セルまたはスライスは、これらに限定されないが、1つまたは複数のルックアップテーブル(LUT)(例えば、3入力または4入力LUT)、フリップフロップ、マルチプレクサおよび/または桁上げ論理を含む論理機能を実装するようにユーザが構成することができる複数のコンポーネントを含み得る。
それに従って、FPGAは、アナログパルス信号を複数のデジタル信号値にデジタル化すること(パルスデジタル化)、複数のデジタル信号値に対応する複数の時間値を決定すること(時間/デジタル変換)、デジタル信号値および時間値を使用して物体距離を計算することなど、光学式距離測定に伴う動作のいくつかを実行するように構成することができる。本明細書で説明されるFPGAベースのシステムおよび方法は、比較的に低いコストおよび電力消費量で距離測定におけるセンチメートルレベルの精度を提供するために使用することができる。
図2は、本技術の代表的な実施形態に従って構成されたFPGAベースの光学式距離測定装置200の概略図である。光学式距離測定装置は、図1Bを参照して上記で説明されるシステム150などのLIDARシステムのコンポーネントのいくつかまたはすべてを含み得る。いくつかの実施形態では、装置200は、図1Bの発光体152と同様の、外向き光パルス(例えば、レーザパルス)を放出するように構成された発光体202と、図1Bの光検出器170と同様の、物体(例えば、装置200の周辺環境の物体)から反射した戻り光パルスを受信するように構成された光センサ204とを含む。光センサ204は、戻り光パルスを表すアナログパルス信号を出力するように構成される(例えば、光エネルギーを電気信号に変換する光検出器を使用して)。
装置200は、FPGA 208を含む。FPGA 208は、光センサ204に結合され、光センサ204によって生成されたアナログパルス信号を受信するように構成される。FPGA 208は、アナログパルス信号をデジタル信号に変換してタイミング情報を決定するためにアナログパルス信号を処理するように構成することができる。いくつかの実施形態では、FPGA 208は、アナログパルス信号を複数のデジタル信号値にデジタル化するように構成されたデジタイザ210、および/または、複数のデジタル信号値に対応する複数の時間値を決定するように構成された時間/デジタル変換器(TDC)220を含む。デジタル信号値は、アナログパルス信号の電圧レベルを表し得、対応する時間値は、アナログパルス信号がその電圧レベルにある時点を表し得る。
装置200は、コントローラ206(例えば、図1Bのコントローラ172と同様のコントローラ)を含み得る。いくつかの実施形態では、コントローラ206は、発光体20に結合され、外向き光パルスの放出を制御し、外向き光パルスが放出された際のタイミング情報を測定する。また、コントローラ206は、FPGA 208にも結合することができ、戻り光パルスのタイミング情報を受信し、タイミング情報に少なくとも部分的に基づいて物体までの距離を計算することができる。いくつかの実施形態では、コントローラ206は、FPGA 208によって生成されたデジタル信号値および時間値を受信し、デジタル信号値および時間値に基づいて物体までの距離を計算する。例えば、コントローラ206は、デジタル信号値および時間値を関数に入力して、関数を使用して戻り光パルスの推定時間値を導き出すことによって、物体距離を計算するように構成することができる。次いで、TOF計算において推定時間値を使用して物体までの距離を決定することができる。
コントローラ206は、推定時間値を計算するために、多くの異なるタイプの関数を使用することができる。いくつかの実施形態では、関数は、多項式または三角モデルなどのパルス信号モデルである。コントローラ206は、デジタル信号値および時間値をパルス信号モデルに適合させ、モデルの形状に基づいて推定時間値を導き出すことができる。例えば、コントローラ206は、信号の大きさがその最大値にいつ達するかに基づいて推定時間値を決定することができる。いくつかの実施形態では、コントローラ206は、パルス信号と関連付けられた時間値を導き出すために、方形信号モデルにおける信号の幅などの他の基準を使用することができる。
いくつかの実施形態では、コントローラ206は、推定時間値を導き出すためにサーチ関数を使用する。コントローラ206は、デジタル信号値および時間値に最も近い値の集合を見出すために、データベースまたはLUTにおいて検索することができる。値の集合は、(t,Vf)の形態を有し得、Vfは電圧レベルであり、tはその電圧レベルに対応する時間値である。値の集合は、データベースまたはLUTに格納された(T,V)の形態の出力時間値または出力タプルにマッピングすることができる。次いで、コントローラは、装置から対応する物体までの距離を決定するために、Vに対応するマッピングされた出力タプルからマッピングされた出力時間値またはTを選択して、TOFの演算を容易にすることができる。
装置200のコンポーネントのいくつかまたはすべては、無人車両(例えば、UAV)、自律走行車両(例えば、自動運転車)またはロボットなどの可動物体に積載することができる。従って、装置200は、可動物体が環境内で動作する際に可動物体と周辺物体との間の距離を測定するために使用することができる。いくつかの実施形態では、装置200は、複雑な動的環境(例えば、装置200の周辺に多くの物体がある環境、障害物が装置200に対して急速に移動している環境、温度などの変動条件を伴う環境など)における使用に特に適している。また、装置200は、複数の自由度に対して急速な移動が可能な可動物体と連動させた使用にも特に適している。
図2は、FPGAを使用して距離を測定するための装置の代表的な実施形態を示しているが、装置200の代替の構成を使用することもできる。例えば、図2は、単一のデジタイザ210および単一のTDC 220を示しているが、FPGA 208は、複数のデジタイザおよび/または複数のTDCを含むこともできる。デジタイザおよびTDCの様々な組合せを使用することができ、例えば、単一のデジタイザをそれぞれの単一のTDCに結合することも、単一のデジタイザを複数のTDCに結合することも、単一のTDCを複数のデジタイザに結合することもできる。
別の例として、いくつかの実施形態では、デジタイザ210またはTDC 220は任意選択のものであり得、その結果、パルスデジタル化プロセスまたは時間/デジタル変換プロセスは、FPGA 208以外の装置によって実行される。例えば、パルスデジタル化は、1つまたは複数の比較器によって実行することができ、時間/デジタル変換は、FPGA 208のTDC 220によって実行される。あるいは、パルスデジタル化は、FPGA 208のデジタイザ210によって実行することができ、FPGA 208以外の装置(例えば、別個のTDC)が時間/デジタル変換を実行する。
さらなる別の例では、図2ではコントローラ206はFPGA 208とは別の装置として描写されているが、他の実施形態では、コントローラ206は、FPGA 208の一部であり得る。そのような実施形態では、FPGA 208は、コントローラ206の機能のいくつかまたはすべてを実行するように構成される。例えば、FPGA 208は、デジタイザ210によって生成されたデジタル信号値およびTDC 220によって生成された時間値を使用して距離計算を実行するように構成することができる。
いくつかの実施形態では、TDC 220は、デジタル化アナログパルス信号(例えば、デジタイザ210によって生成される)を表す複数のデジタル信号値を受信し、対応する時間値を生成するために各デジタル信号値をサンプリングするように、FPGAの1つまたは複数のコンポーネントを構成することによって実装される。いくつかの実施形態では、FPGAは、信号の立ち上がりおよび/または立ち下がりエッジに対する時間値を決定するために、経時的なデジタル信号値の値の変化を表す方形波信号を受信し、サンプリングする。方形波信号の立ち上がりおよび/または立ち下がりエッジに対する時間値は、アナログパルス信号が特定の電圧値に達した時点、特定の電圧値を超えた時点および/または特定の電圧値を下回った時点を表し得る。
いくつかの実施形態では、サンプリングは、高時間分解能(例えば、数百ピコ秒以下程度の時間分解能)で実行される。例えば、サンプリングの時間分解能は、約5ピコ秒〜約2000ピコ秒、約10ピコ秒〜約1000ピコ秒、約1ピコ秒〜約500ピコ秒または約1ピコ秒〜約100ピコ秒の範囲であり得る。いくつかの実施形態では、サンプリングの時間分解能(例えば、ピコ秒レベルの)は、FPGAクロックのクロック周期(例えば、ナノ秒レベルの)より高い。例えば、時間分解能は、FPGAのクロック周期より少なくとも2倍、5倍、10倍、20倍または100倍高いものであり得る。
いくつかの実施形態では、TDC 220は、一連の遅延ユニットを使用して高時間分解能サンプリングを実行するように構成される。遅延ユニットは、互いに順次結合することができ、その結果、デジタル信号値は、遅延ユニットを通じて順次伝播され、各連続遅延ユニットは、先行遅延ユニットからデジタル信号値の時間遅延バージョンを受信する。従って、デジタル信号値の時間値は、既知の時間間隔においてデジタル信号値を受信した遅延ユニットの数を数えることによって決定することができる。
図3は、本技術の代表的な実施形態に従って構成された高時間分解能を有するTDC 220の概略図である。TDC 220は、以前に論じられるように、FPGA(例えば、FPGA 208)の1つまたは複数のコンポーネントを使用して実装することができる。いくつかの実施形態では、TDC 220は、遅延ラインを形成するために、互いに順次結合された一連の遅延ユニット222a〜222nを含む。少なくとも10の、少なくとも25の、少なくとも50の、少なくとも100の、少なくとも200の遅延ユニットなど、適切ないかなる数の遅延ユニットも使用することができる。遅延ユニット222a〜222nは、FPGA内の論理コンポーネントを使用して様々な方法で構成することができる。例えば、複数の遅延ユニット222a〜222nは、キャリーチェーンおよび/またはLUTを含み得る。
いくつかの実施形態では、各遅延ユニットは、信号伝送においてピコ秒レベルの遅延を生み出す。遅延時間は、遅延ユニットが最初に入力信号を受信してから(例えば、先行遅延ユニットから)遅延ユニットが入力信号を出力するまで(例えば、次の遅延ユニットに)の時間長に対応し得る。例えば、各遅延ユニットは、約5ピコ秒〜約2000ピコ秒、約10ピコ秒〜約1000ピコ秒、約1ピコ秒〜約500ピコ秒または約1ピコ秒〜約100ピコ秒の範囲内で遅延時間を生み出すように構成することができる。いくつかの実施形態では、各遅延ユニットによって生み出される遅延は同じであり、その結果、遅延ユニットは、同じ個々の遅延時間を有する。他の実施形態では、遅延ユニットのいくつかまたはすべては異なる遅延を生み出し、その結果、遅延ユニットのいくつかまたはすべては、異なる個々の遅延時間を有する。
遅延ユニット222a〜222nは、アナログパルス信号のデジタル化に対応するデジタル信号値を受信するように構成することができる。いくつかの実施形態では、デジタル信号値は、アナログパルス信号が、特定の時間の電圧レベルより大きいか、少ないかまたは等しいかを表す。デジタル信号値は、経時的なデジタル信号値の変化を表す方形波信号228として受信することができる。信号228は、遅延ユニット222a〜222nの各々を通じて順次送信することができ、その結果、各連続遅延ユニットによって受信された信号は、先行遅延ユニットによって受信された信号より、対応する遅延時間の分だけ遅れる。各遅延ユニットは、信号228のエッジを受信した際に出力信号を生成するように構成することができる。例えば、遅延ユニットは、信号228の立ち上がりエッジによってトリガされるとデジタル値「1」を出力し、信号228の立ち下がりエッジによってトリガされるとデジタル値「0」を出力することができる。
遅延ユニット222a〜222nは、ラッチユニット224に結合される。ラッチユニット224は、遅延ユニット222a〜222nが信号228によってトリガされると遅延ユニット222a〜222nの出力をラッチするように構成することができる。いくつかの実施形態では、ラッチユニット224は、複数のラッチを含み、その各々は、対応する遅延ユニットに結合され、信号228の立ち上がりまたは立ち下がりエッジによってトリガされるとその遅延ユニットの出力をラッチする(例えば、出力を表すデジタルデータ値を安定に格納することによって)ように構成される。各遅延ユニットのラッチ出力は、ラッチユニット224の出力信号を構成する。
TDC 220は、クロック信号230を受信する(例えば、FPGA 208のクロックから)ように構成される。クロック信号230は、数百MHz〜GHz程度のレートを有し得、その結果、信号230は、ナノ秒レベルのクロック周期Tckを有する。いくつかの実施形態では、クロック周期は、クロックサイクルの長さ(例えば、クロック信号230の立ち上がりエッジから信号230の次の立ち上がりエッジまでまたは信号230の立ち下がりエッジから信号230の次の立ち下がりエッジまでの時間長)に対応する。クロック信号230は、ラッチユニット224およびカウンタ226によって受信することができる。カウンタ226は、測定開始からのクロックサイクルの数Cを数えることができ、その結果、TDCクロックによって提供される粗時間値は、Cckである。各クロックサイクルにおいて(例えば、TDC 220がクロック信号230の次のエッジを受信する前または受信した際)、TDC 220は、信号228の立ち上がりまたは立ち下がりエッジに対応する高分解能時間値を提供するために、ラッチユニット224のラッチ出力信号に基づいて、信号228によってトリガされた遅延ユニットの数を決定することができる。
図4Aは、本技術の代表的な実施形態による、立ち上がりエッジ信号の時間測定を示すタイミング図である。描写される実施形態では、立ち上がりエッジ信号は、一連の4つの順次結合された遅延ユニットを通じて送信され、その結果、第1の遅延ユニットは信号410aを受信し、第2の遅延ユニットは信号410bを受信し、第3の遅延ユニットは信号410cを受信し、第4の遅延ユニットは410dを受信する。各連続信号は、先行信号より、対応する遅延時間の分だけ遅れる。時間Tckでは、各遅延ユニットのラッチ出力がサンプリングされる。描写される実施形態では、第1および第2の遅延ユニットは、既に、信号410aおよび410bの立ち上がりエッジによってそれぞれトリガされており、その結果、これらの遅延ユニットの出力は両方ともデジタルデータ値「1」である。第3および第4の遅延ユニットは、未だ、信号410cおよび410dの立ち上がりエッジによってそれぞれトリガされておらず、その結果、これらの遅延ユニットの出力は両方ともデジタルデータ値「0」である。従って、時間Tckにおけるラッチユニット(例えば、図3のラッチユニット224)の出力信号は、「1100」である。立ち上がりエッジ信号の時間値Trisingは、Trising=Cck−Cr1(式中、tは、すべての遅延ユニットにわたる平均遅延時間である)の関係を使用して、デジタルデータ値「1」でラッチされた遅延ユニットの数Cr1に基づいて計算することができる。例えば、図4Aの実施形態では、信号410aおよび410bに対応するデジタルデータ値「1」でラッチされた2つの遅延ユニットが存在し、その結果、Cr1の値は2である。
図4Bは、本技術の代表的な実施形態による、立ち下がりエッジ信号の時間測定を示すタイミング図である。描写される実施形態では、立ち上がりエッジ信号は、一連の4つの順次結合された遅延ユニットを通じて送信され、その結果、第1の遅延ユニットは信号420aを受信し、第2の遅延ユニットは信号420bを受信し、第3の遅延ユニットは信号420cを受信し、第4の遅延ユニットは信号420dを受信する。各連続信号は、先行信号より、対応する遅延時間の分だけ遅れる。時間Tckでは、各遅延ユニットのラッチ出力がサンプリングされる。描写される実施形態では、第1および第2の遅延ユニットは、既に、信号420aおよび420bの立ち下がりエッジによってそれぞれトリガされており、その結果、これらの遅延ユニットの出力は両方ともデジタルデータ値「0」である。第3および第4の遅延ユニットは、未だ、信号420cおよび420dの立ち下がりエッジによってそれぞれトリガされておらず、その結果、これらの遅延ユニットの出力は両方ともデジタルデータ値「1」である。従って、時間Tckにおけるラッチユニット404の出力信号は、「0011」である。立ち下がりエッジ信号の時間値Tfallingは、Tfalling=Cck−Cf1(式中、tは、すべての遅延ユニットにわたる平均遅延時間である)の関係を使用して、デジタルデータ値「0」でラッチされた遅延ユニットの数Cf1に基づいて計算することができる。例えば、図4Bの実施形態では、信号420aおよび420bに対応するデジタルデータ値「0」でラッチされた2つの遅延ユニットが存在し、その結果、Cf1の値は2である。
図5は、本技術の代表的な実施形態による、FPGAベースの光学式距離測定装置を製造および操作するための方法500を示すフロー図である。例えば、方法500は、光学式距離測定装置200を製造および操作するために使用することができる。ブロック600は、TDC(例えば、TDC 220)を含むFPGA(例えば、FPGA 208)を校正するステップを含む。TDCは、一連の順次結合された遅延ユニットを有する。いくつかの実施形態では、FPGAを校正するステップは、遅延ユニットのいくつかまたはすべてと関連付けられた遅延時間を決定するステップを含む。個々の遅延時間は、複数の遅延ユニットにわたる平均遅延時間でも、各遅延ユニットに対して別々に決定される個々の遅延時間でもあり得る。いくつかの実施形態では、FPGAを校正するステップは、遅延ユニットの個々の遅延時間を決定するために使用されるデータシーケンスの「バブル」を低減または排除するための技法を使用するステップを含む。FPGAを校正するための代表的な方法は、図6〜10を参照して以下でさらに詳細に説明する。
ブロック700は、光学式距離測定装置にFPGAをインストールするステップを含む。いくつかの実施形態では、FPGAをインストールするステップは、発光体(例えば、発光体202)、光センサ(例えば、光センサ204)および/またはコントローラ(例えば、コントローラ206)などの光学式距離測定装置(例えば、装置200)の1つまたは複数のコンポーネントにFPGAを結合するステップを含む。
ブロック800は、光学式距離測定装置を使用して物体までの距離を測定するステップを含む。いくつかの実施形態では、光学式距離測定装置は、パルス信号のタイミング情報に少なくとも部分的に基づいて距離を計算する。例えば、タイミング情報は、上記で論じられるように、パルス信号の電圧レベルを表す複数のデジタル信号値に対応する複数の時間値を含み得る。いくつかの実施形態では、タイミング情報は、一連の順次結合された遅延ユニットを備えるTDCを含むFPGAを使用して測定され、ブロック600および700において校正およびインストールされる。FPGAは、遅延ユニットの個々の遅延時間に少なくとも部分的に基づいてタイミング情報を測定することができる。任意選択により、タイミング情報は、パルス信号の1つまたは複数の部分に対応する入力信号の時間値を含み、タイミング情報を測定するステップは、時間値を決定するために使用されるデータシーケンスのバブルを低減するための技法を使用するステップを含む。物体までの距離を測定するための例示的な方法は、図11〜13を参照して以下でさらに詳細に説明する。
図5は、単一の方法500の一部として校正プロセス(ブロック600)、インストレーションプロセス(ブロック700)および測定プロセス(ブロック800)を示しているが、いくつかの実施形態では、これらのプロセスは、互いに独立しており、別個のエンティティによって実行することができる。例えば、校正プロセスおよびインストレーションプロセスは、製造業者が実行することができ、測定プロセスは、エンドユーザが実行することができる。それに加えて、プロセス順番は変化し得る。例えば、インストレーションプロセスは、校正プロセスの前に実行することができる。いくつかの実施形態では、1つまたは複数のプロセスは繰り返される。例えば、初期の校正プロセスは、製造業者が実行することができ、エンドユーザは、測定装置を操作する前および/または後に、追加の校正プロセスを実行することができる。
図6は、本技術の代表的な実施形態による、平均遅延時間に基づいてFPGAを校正するための方法600aを示すフロー図である。方法600aは、一連の順次結合された遅延ユニットを有するTDC(例えば、TDC 220)を含むFPGA(例えば、FPGA 208)を校正するために使用される。いくつかの実施形態では、方法600aのプロセスのいくつかまたはすべては、図5の校正プロセス(ブロック600)におけるサブプロセスとして実行される。
ブロック605は、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップを含む。校正信号は、立ち上がりエッジおよび/または立ち下がりエッジを含む方形波信号などのデジタル信号であり得る。いくつかの実施形態では、校正信号は、ランダム化信号(例えば、タイミングに対してランダム化されたもの)である。例えば、校正信号は、方形波信号の立ち上がりおよび/または立ち下がりエッジのタイミングがランダム化されたデジタル方形波信号であり得る。いくつかの実施形態では、ランダム化信号は、FPGAのクロック信号に対してランダム化され、その結果、ランダム化信号のタイミングは、クロック信号のタイミングに対してランダム化される(例えば、信号の立ち上がりおよび/または立ち下がりエッジは、FPGAのクロックサイクルのいかなるポイントでも起こり得る)。複数の校正信号は、一連の順次結合された遅延ユニットを通じて、順次受信し、伝播することができ、その結果、一連の遅延ユニットは、一度に単一の校正信号を受信し、以前の信号が一連の遅延ユニットを通じて伝播されるまで次の校正信号を受信しない。
ブロック610は、FPGAの次のクロックサイクルの前にそれを通じて校正信号を伝播することができる一連の順次結合された遅延ユニットにおける遅延ユニットの最大数を決定するステップを含む。最大数は、本明細書では、「maxbin」とも呼ばれる。いくつかの実施形態では、最大数を決定するステップは、順次結合された遅延ユニットを通じて校正信号を伝播するステップと、一連の遅延ユニットを通じた信号の伝播に対応するデータシーケンスを生成するステップと、次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットを識別するステップとを含む。識別された遅延ユニットは、信号を受信した最後の遅延ユニットであり得る。最大数を決定するステップは、各遅延ユニットの計数を決定するステップも含み得、計数は、遅延ユニットが信号を受信した一連の遅延ユニットにおける最後の遅延ユニットである回数を表す。一連の順次結合された遅延ユニットの計数は、maxbinの値を決定するために使用することができる。
データシーケンスは、各種の適切な方法で生成することができる。例えば、以前に論じられるように、各遅延ユニットは、校正信号(例えば、信号の立ち上がりおよび/または立ち下がりエッジ)を受信した際に出力(例えば、デジタル値「1」またはデジタル値「0」)を生成することができ、出力は、対応するラッチ(例えば、ラッチユニット224の)によってラッチすることができる。次のFPGAクロックサイクルの前(例えば、TDCが次のFPGAクロック信号エッジを受信する前または受信した際)に、ラッチ出力がサンプリングされ、データシーケンスを生成するために使用される。データシーケンスは、複数のデジタルデータ値を含み得、ラッチされた各出力は、データシーケンスのデジタルデータ値に対応し得る。シーケンスのデジタルデータ値の位置は、一連の遅延ユニットにおける対応する遅延ユニットの位置に対応し得、例えば、第1のデジタルデータ値は第1の遅延ユニットに対応し、第2のデジタルデータ値は第2の遅延ユニットに対応するなど、以下同様である。
生成されたデータシーケンスは、次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットを識別するために使用することができる。例えば、校正信号が立ち上がりエッジ信号である場合は、データシーケンスは、次のクロックサイクルの前に立ち上がりエッジ信号によってトリガされた遅延ユニットに対応する1つまたは複数のデジタル値「1」の第1のセグメント(例えば、「11111」)を含み得、それに続いて、次のクロックサイクルの前にトリガされなかった遅延ユニットに対応する1つまたは複数のデジタル値「0」の第2のセグメント(例えば、「00000」)を含み得る。従って、第1のセグメントにおける最後のデジタル値「1」(第2のセグメントのすぐ近隣のデジタル値「1」)は、次のクロックサイクルの前に校正信号を受信した最後の遅延ユニットに対応する。いくつかの実施形態では、第1のセグメントは、1つまたは複数のデジタル値「1」のみを含み、第2のセグメントは、1つまたは複数のデジタル値「0」のみを含む。
別の例として、校正信号が立ち下がりエッジ信号である場合は、データシーケンスは、次のクロックサイクルの前に立ち下がりエッジ信号によってトリガされた遅延ユニットに対応する1つまたは複数のデジタル値「0」の第1のセグメントを含み得、それに続いて、次のクロックサイクルの前にトリガされなかった遅延ユニットに対応する1つまたは複数のデジタル値「1」の第2のセグメントを含み得る。従って、第1のセグメントにおける最後のデジタル値「0」(第2のセグメントのすぐ近隣のデジタル値「0」)は、次のクロックサイクルの前に校正信号を受信した最後の遅延ユニットに対応する。いくつかの実施形態では、第1のセグメントは、1つまたは複数のデジタル値「0」のみを含み、第2のセグメントは、1つまたは複数のデジタル値「1」のみを含む。
各遅延ユニットの計数は、遅延ユニットが信号を受信した最後のユニットとして識別された回数を記録することによって生成することができる。使用されるランダム化校正信号の数がかなり大きい場合は、次のクロックサイクルの前に信号の受信が可能な一連の遅延ユニットにおけるあらゆる遅延ユニット(例えば、累積先行遅延時間がクロック周期を超えない遅延ユニット)は非ゼロ計数を有し、残りの遅延ユニット(例えば、累積先行遅延時間がクロック周期を超える遅延ユニット)はゼロ計数を有すると想定することができる。いくつかの実施形態では、使用されるランダム化校正信号の数は、一連の遅延ユニットにおける遅延ユニットの数より少なくとも100倍大きい(例えば、300の遅延ユニットを備えるFPGAを校正するために30,000の信号が使用される)。従って、maxbinの値は、非ゼロ計数を有する一連の遅延ユニットにおける最後の遅延ユニットの位置に対応する。例えば、100の一連の順次結合された遅延ユニットにおいて、遅延ユニット1〜50が非ゼロ計数を有し、遅延ユニット51〜100がゼロ計数を有する場合は、maxbinの値は50である。いくつかの実施形態では、一連の順次結合された遅延ユニットは、maxbinの値が一連の遅延ユニットにおける遅延ユニットの数より少なくなり、一連の遅延ユニット全体にわたる累積遅延時間がFPGAクロック周期を超えるように構成される。
ブロック615は、最大数に少なくとも部分的に基づいて一連の順次結合された遅延ユニットの平均遅延時間を決定するステップを含む。いくつかの実施形態では、平均遅延時間は、以下の関係に従って決定され、
Figure 0006888216
式中、tは、平均遅延時間であり、Tckは、FPGAクロック周期である。平均遅延時間は、図11〜13を参照して以下で論じられるように、入力信号のタイミング情報を測定するために使用することができる。
図7は、本技術の代表的な実施形態による、個々の遅延時間に基づいてFPGAを校正するための方法600bを示すフロー図である。方法600bは、一連の順次結合された遅延ユニットを有するTDC(例えば、TDC 220)を含むFPGA(例えば、FPGA 208)を校正するために使用される。いくつかの実施形態では、方法600bのプロセスのいくつかまたはすべては、図5の校正プロセス(ブロック600)におけるサブプロセスとして実行される。方法600bは、遅延ユニットのいくつかまたはすべてが異なる個々の遅延時間を有し、平均遅延時間の使用が十分な正確度を提供しない実施形態において、測定正確度を改善するために有利であり得る。
ブロック625は、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップを含む。受信プロセスは、図6のブロック605を参照して上記で論じられるように実行することができる。
ブロック630は、遅延ユニットがFPGAの次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットである回数を表す計数を決定するステップを含む。計数は、図6のブロック610を参照して上記で論じられるように、順次結合された遅延ユニットを通じて校正信号を伝播し、一連の遅延ユニットを通じた信号の伝播に対応するデータシーケンスを生成し、次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットを識別することによって決定することができる。
ブロック635は、遅延ユニットの計数に対応する遅延ユニットの個々の遅延時間を決定するステップを含む。いくつかの実施形態では、使用されるランダム化校正信号の数がかなり大きい場合は、遅延ユニットが信号を受信した一連の遅延ユニットにおける最後の遅延ユニットである確率は、その計数に比例し、計数は、その個々の遅延時間に比例する。
図8Aおよび8Bは、計数と個々の遅延時間との間の比例性の代表的な実施形態を提示する。図8Aは、本技術の代表的な実施形態に従って生成された計数データを示すヒストグラム800である。ヒストグラム800は、一連の順次結合された遅延ユニットの計数を含む。示される実施形態では、「1」は、一連の遅延ユニットにおける第1の遅延ユニットに対応し、「maxbin」は、次のFPGAクロックサイクルの前に信号の受信が可能な一連の遅延ユニットにおける最後の遅延ユニットに対応する。ヒストグラム800のバーは、各遅延ユニットに対して記録された計数を表し、例えば、Cは、第1の遅延ユニットの計数を表し、Cは、第2の遅延ユニットの計数を表すなど、maxbin番目の遅延ユニットの計数を表すCmaxbinまで、以下同様である。示される実施形態では、一連の遅延ユニット内の異なる遅延ユニットは、異なる計数を有する。
図8Bは、本技術の代表的な実施形態による、図8Aの計数データに対応する一連の順次結合された遅延ユニットの個々の遅延時間850の概略図である。示される実施形態では、ブロック(例えば、ブロック1、2、3、4、...、maxbin−4、maxbin−3、maxbin−2、maxbin−1およびmaxbin)の幅は、一連の遅延ユニットにおける対応する遅延ユニットの個々の遅延時間の長さを表す。図8Aおよび8Bの比較において見られるように、各ブロックの幅は、遅延ユニットの対応する計数に比例する。例えば、第1の遅延ユニットは比較的低い計数Cを有し、ブロック1は比較的短い幅を有する。別の例として、第2の遅延ユニットは比較的高い計数Cを有し、ブロック2は比較的短い幅を有する。
再び図7のブロック635を参照すると、いくつかの実施形態では、遅延ユニットの個々の遅延時間は、対応する遅延ユニットの計数を順次結合された遅延ユニットの各々の計数の総和で除したものを表す比率に少なくとも部分的に基づいて計算される。例えば、一連の遅延ユニットにおけるi番目の遅延ユニットの個々の遅延時間は、以下の関係に従って決定することができ、
Figure 0006888216
式中、tdiは、i番目の遅延ユニットの遅延時間であり、Tckは、FPGAクロック周期であり、Cは、i番目の遅延ユニットの計数である。その後に、図11〜13を参照して以下で論じられるように、遅延ユニットの個々の遅延時間を使用して、入力信号のタイミング情報を測定することができる。
遅延ユニットの計数が、各遅延ユニットが校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットである回数を正しく反映しない場合は、本明細書で説明される校正技法の正確度を低減する可能性がある。いくつかの実施形態では、そのような不正確度は、データシーケンスの1つまたは複数の「バブル」の存在が原因で、計数を決定するために使用されるデータシーケンスが一連の遅延ユニットを通じた校正信号の伝播に正確に対応しない場合に起こり得る。バブル現象およびバブルの影響を低減するための技法は、図9A〜10を参照して以下で論じる。
図9Aは、本技術の代表的な実施形態による、TDC 920によって生成されたデータシーケンスのバブルの概略図である。TDC 920は、図2のTDC 220と同様なものであり得る。TDC 920は、遅延ユニット922a〜922hなど、互いに順次結合された一連の遅延ユニットを含む。遅延ユニットは、ラッチユニット924に結合され、ラッチユニット924は、入力信号928の受信によってトリガされると遅延ユニットの出力をラッチするように構成される。いくつかの実施形態では、ラッチユニット924は、複数のラッチを含み、その各々は、対応する遅延ユニットに結合され、その結果、各ラッチは、遅延ユニットが信号928によってトリガされると、対応する遅延ユニットの出力をラッチする。例えば、ラッチは、遅延ユニットが立ち上がりエッジ信号によってトリガされるとデジタル値「1」をラッチし、遅延ユニットが立ち下がりエッジ信号によってトリガされるとデジタル値「0」をラッチすることができる。ラッチユニット924のラッチ出力は、FPGAクロック信号930の各クロックサイクルでサンプリングされる(例えば、TDCが次のクロック信号エッジを受信する前または受信した際)。
いくつかの実施形態では、ラッチの各々は、対応する遅延時間の出力をラッチするための対応するラッチ時間と関連付けられる。ラッチ時間は、遅延ユニットの出力が変化してから(例えば、立ち上がりエッジまたは立ち下がりエッジ信号によってトリガされることに応答して)ラッチが変化した出力をラッチできるまでの時間長に対応し得る。ラッチユニット924のラッチのいくつかまたはすべてが異なるラッチ時間を有することも、ラッチユニット924のラッチのいくつかまたはすべてが同じラッチ時間を有することもできる。例えば、ラッチは、約1ピコ秒〜約500ピコ秒の範囲内のラッチ時間を有することができる。
ラッチ時間は、遅延ユニットが入力信号928によってトリガされた際に対応する遅延ユニットの出力がうまくラッチされるかどうかに影響を及ぼし得る。いくつかの実施形態では、ラッチ時間が対応する遅延ユニットの個々の遅延時間以下である場合は、ラッチは、信号が一連の遅延ユニットにおける次の遅延ユニットに伝播される前に、変化した出力をうまくラッチすることができる。しかし、いくつかの実施形態では、ラッチ時間が遅延ユニットの個々の遅延時間を超える場合は、ラッチは、信号が次の遅延ユニットに伝播される前に、変化した出力をうまくラッチすることはできない。いくつかの実施形態では、ラッチは、一連の遅延ユニットにおける他の遅延ユニットと比べて、変化した出力をラッチするのが遅れ、その結果、信号は、出力がラッチされる前に、下流の1つまたは複数の遅延ユニットを通じて伝播されることになる。
従って、いくつかの実施形態では、ラッチユニット924によって生成されたラッチ出力は、遅延ユニットのうちの1つまたは複数が個々の遅延時間を超えるラッチ時間を有する場合は、一連の遅延ユニットを通じた入力信号928の伝播を正確に反映しない可能性がある。例えば、示される実施形態では、信号928は、FPGAの次のクロックサイクルの前に遅延ユニット922a〜922hによって受信される。遅延ユニット922a〜922hの出力は、信号928によってトリガされると、デジタル値「0」からデジタル値「1」に変化する。遅延ユニット922b、922c、922eおよび922hは、それらの個々の遅延時間以下のラッチ時間を有し、その結果、それらの出力は、デジタル値「1」としてラッチユニット924によってラッチされる。遅延ユニット922a、922d、922fおよび922gは、それらの個々の遅延時間を超えるラッチ時間を有し、その結果、それらの出力は、信号928を受信した場合であっても、現在のクロックサイクルが終了しても、依然として、デジタル値「0」としてラッチされる。
遅延ユニットの少なくともいくつかが個々の遅延時間を超えるラッチ時間を有する、TDCによって生成されたデータシーケンスは、「バブル」を含み得る。いくつかの実施形態では、バブルは、近隣のデジタル値「0」間の少なくとも1つのデジタル値「1」(例えば、「010」または「0110」)であるか、または、近隣のデジタル値「1」間の少なくとも1つのデジタル値「0」(例えば、「101」または「1001」)である。バブルの少なくとも1つのデジタルデータ値は、その個々の遅延時間を超えるラッチ時間を有する遅延ユニットのラッチ出力に対応し得る。いくつかの実施形態では、バブルセグメントは、1つまたは複数のバブルを含み、例えば、近隣のデジタル値「0」間の少なくとも1つのデジタル値「1」、近隣のデジタル値「1」間の少なくとも1つのデジタル値「0」またはその両方である。バブルの少なくとも1つのデジタルデータ値は、その個々の遅延時間を超えるラッチ時間を有する遅延ユニットのラッチ出力に対応し得る。例えば、図9Aの実施形態では、遅延ユニット922a〜922hのラッチ出力に対応するバブルセグメントは、「01101001」である。
図9Bは、本技術の代表的な実施形態による、バブルによる影響を受けた計数データを示すヒストグラム950である。図6および7を参照して上記で論じられるように、各遅延ユニットの計数は、遅延ユニットが校正信号を受信した最後のユニットとして識別された回数を記録することによって生成することができる。いくつかの実施形態では、個々の遅延時間より長いラッチ時間を有する遅延ユニットは、そのラッチ出力は遅延ユニットが校正信号を受信したことを示さないため、正しく数えることができない。例えば、ヒストグラム950では、遅延ユニット129、132、133および137は、それらのラッチ時間がそれらの個々の遅延時間より長いため、ゼロ計数を有する。個々の遅延時間を決定するために計数が使用される実施形態では、図7を参照して上記で論じられるように、誤った計数が、個々の遅延時間が決定される正確度を低減する。
図10は、本技術の代表的な実施形態による、バブルの影響を低減または排除するためにFPGAを校正するための方法600cを示すフロー図である。方法600cは、一連の順次結合された遅延ユニットを有するTDC(例えば、TDC 220)を含むFPGA(例えば、FPGA 208)を校正するために使用される。いくつかの実施形態では、方法600cのプロセスのいくつかまたはすべては、図5の校正プロセス(ブロック600)におけるサブプロセスとして実行される。方法600cは、遅延ユニットのいくつかまたはすべてがそれらの個々の遅延時間を超えるラッチ時間を有する実施形態において、校正正確度を改善するために有利であり得る。
ブロック645は、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップを含む。受信プロセスは、図5のブロック605を参照して上記で論じられるように実行することができる。
ブロック650は、遅延ユニットの個々の遅延時間を決定するステップを含む。いくつかの実施形態では、個々の遅延時間を決定するステップは、図6および7を参照して上記で論じられる方法に従って実行される。例えば、ブロック650は、図6のブロック610および図7のブロック630を参照して上記で説明されるように、遅延ユニットがFPGAの次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットとして識別された回数を表す計数を決定するステップを含み得る。計数は、図6のブロック610および図7のブロック630を参照して上記で説明されるように、順次結合された遅延ユニットを通じて校正信号を伝播し、一連の遅延ユニットを通じた信号の伝播に対応するデータシーケンスを生成し、次のクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける最後の遅延ユニットを識別することによって決定することができる。個々の遅延時間は、図7のブロック635を参照して上記で説明されるように、遅延ユニットの計数に少なくとも部分的に基づいて決定することができる。
いくつかの実施形態では、ブロック650は、第1のセグメント、第2のセグメントおよびバブルセグメントを有するデータシーケンスを生成するステップ(ブロック652)を含む。データシーケンスは、図6のブロック610および図7のブロック630を参照して上記で説明されるように、一連の順次結合された遅延ユニットを通じた校正信号の伝播に対応し得る。例えば、データシーケンスは、図6のブロック610および図7のブロック630を参照して上記で説明されるように、一連の遅延ユニットに結合されたラッチユニットのラッチ出力を含むことも、同ラッチ出力に対応することもあり得る。
いくつかの実施形態では、第1のセグメントは、1つまたは複数のデジタル値「1」を含む。第1のセグメントは、デジタル値「1」のみを含み得、例えば、実施形態に応じて、1つのデジタル値「1」のみまたは複数のデジタル値「1」のみを含み得る。いくつかの実施形態では、第2のセグメントは、1つまたは複数のデジタル値「0」を含む。第2のセグメントは、デジタル値「0」のみを含み得、例えば、実施形態に応じて、1つのデジタル値「0」のみまたは複数のデジタル値「0」のみを含み得る。バブルセグメントは、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含み得る。バブルセグメントは、その個々の遅延時間より短いラッチ時間を有する少なくとも1つの遅延ユニットに対応し得る。
いくつかの実施形態では、バブルセグメントは、第1のセグメントと第2のセグメントとの間に配置される。第1のセグメントは、第2のセグメントの前に配置することができ、その結果、第1のセグメントは、データシーケンスの始まりからバブルセグメントまで延在し、第2のセグメントは、バブルセグメントからデータシーケンスの終わりまで延在する。第2のセグメントは、第1のセグメントの前に配置することができ、その結果、第2のセグメントは、データシーケンスの始まりからバブルセグメントまで延在し、第1のセグメントは、バブルセグメントからデータシーケンスの終わりまで延在する。
ブロック650は、データシーケンスを修正するステップ(ブロック654)を含み得る。いくつかの実施形態では、修正プロセスは、データシーケンスの1つまたは複数のバブルを低減または排除するステップを伴う。例えば、修正プロセスは、バブルを低減または排除するために、バブルセグメントの1つまたは複数のデジタルデータ値を再配置するステップを含み得る。修正プロセスは、バブルセグメントの少なくとも1つのデジタルデータ値「1」を第1のセグメントの方(例えば、第1のセグメントのすぐ近隣)に移動するステップと、バブルセグメントの少なくとも1つのデジタルデータ値「0」を第2のセグメントの方(例えば、第2のセグメントのすぐ近隣)に移動するステップとを含み得る。いくつかの実施形態では、修正済みのデータシーケンスは、デジタルデータ値「0」のみの第2のセグメントに隣接するデジタルデータ値「1」のみの第1のセグメントを含む。例えば、再び図9Aの実施形態を参照すると、初期のデータシーケンスが「111110110100100000」(下線が引かれた数字はバブルセグメントに対応する)である場合は、バブルセグメントなしの修正済みのデータシーケンスは、「111111111000000000」であり得る。
ブロック650は、データシーケンスの修正に対応する遅延ユニットを識別するステップ(ブロック656)を含み得る。いくつかの実施形態では、第1のセグメントは、第2のセグメントの前に配置され、識別された遅延ユニットは、データシーケンスの最後のデジタルデータ値「1」または第2のセグメントに隣接するデジタルデータ値「1」(例えば、「1110000」の下線が引かれた数字などの第2のセグメンのすぐ近隣のデジタルデータ値「1」)に対応する。いくつかの実施形態では、第2のセグメントは、第1のセグメントの前に配置され、識別された遅延ユニットは、データシーケンスの最後のデジタルデータ値「0」または第1のセグメントに隣接するデジタルデータ値「0」(例えば、「0001111」の下線が引かれた数字などの第1のセグメンのすぐ近隣のデジタルデータ値「0」)に対応する。
識別された遅延ユニットは、図6のブロック610および図7のブロック630を参照して上記で説明されるように、遅延ユニットの計数を計算するために使用することができる。いくつかの実施形態では、識別された遅延ユニットは、実際には信号を受信した最後のユニットではない場合であっても、計数を計算する目的で、次のFPGAクロックサイクルの前に校正信号を受信した一連の遅延ユニットにおける「最後の」遅延ユニットと見なすことができる。計数は、図7のブロック635を参照して上記で説明されるように、遅延ユニットの個々の遅延時間を決定するために使用することができる。
いくつかの実施形態では、データシーケンスは、実際には、遅延ユニットを識別するために修正する必要はなく、その結果、ブロック654は任意選択のものである。例えば、遅延ユニットは、修正済みのデータシーケンスに対応するかまたは修正済みのデータシーケンスを表す第2のデータシーケンスに基づいて識別することができる。別の例として、遅延ユニットは、どの遅延ユニットが修正済みのデータシーケンスの最後のデジタルデータ値「1」または最後のデジタルデータ値「0」に対応するかを決定することによって(シーケンスのデジタルデータ値「1」の総数またはデジタルデータ値「0」の総数を決定することによってなど)識別することができる。
方法600a〜600cは図6、7および10では別々に示されているが、これらの方法は、互いに組み合わせて実行することもでき、その結果、FPGAを校正するステップ(図5のブロック600)は、これらの方法の2つ以上を順次にまたは同時に実行することを伴う。例えば、図7の方法600bは、図10の方法600cと組み合わせて実行することができる。いくつかの実施形態では、計数を決定するステップ(図7のブロック630)は、データシーケンスを生成するステップ(図10のブロック652)、データシーケンスを修正するステップ(図10のブロック654)および/または修正に対応する遅延ユニットを識別するステップ(図10のブロック656)を含む。
図11は、本技術の代表的な実施形態による、光学式距離測定装置を使用して物体までの距離を測定するための方法800を示すフロー図である。いくつかの実施形態では、方法800のプロセスのいくつかまたはすべては、図5の測定プロセス(ブロック800)のサブプロセスとして実行される。
ブロック810は、外向き光パルスを放出するステップを含む。光パルスは、LIDARシステムの発光体(例えば、図1Bの発光体152または図2の発光体202)が放出することができる。
ブロック820は、物体から反射した戻り光パルスを受信するステップを含む。戻り光パルスは、物体からの外向き光パルスの反射であり得る。戻り光パルスは、LIDARシステムの光センサ(例えば、図1Bの光検出器170または図2の光センサ204)が受信することができる。
ブロック830は、戻り光パルスを表すパルス信号を出力するステップを含む。例えば、LIDARシステムの光センサ(例えば、図1Bの光検出器170または図2の光センサ204)は、戻り光パルスの光エネルギーを電気信号に変換するために使用することができる。
ブロック840は、FPGAを使用してパルス信号のタイミング情報を測定するステップを含む。いくつかの実施例では、FPGAは、図5のブロック600および700を参照して上記で説明されるように校正およびインストールされる。例えば、FPGAは、図6、7および10の方法600a〜600cのうちの1つまたは複数に従って校正することができる。FPGAは、順次結合された遅延ユニットの1つまたは複数の個々の遅延時間に少なくとも部分的に基づいてタイミング情報を測定するように構成されたTDCを含み得、個々の遅延時間は、校正の間に決定することができる(例えば、図7の方法600bおよび/または図10の方法600cを使用して)。遅延ユニットの少なくともいくつかは、異なる個々の遅延時間を有し得る。任意選択により、TDCは、TDCによって生成されるデータシーケンスのバブルを低減または排除するための技法を使用してタイミング情報を測定することができる。タイミング情報を測定するための例示的な方法は、図12および13を参照して以下で論じる。
ブロック860は、タイミング情報に少なくとも部分的に基づいて物体までの距離を計算するステップを含む。いくつかの実施形態では、計算するステップは、コントローラ(例えば、システム200のコントローラ206)を使用して実行される。コントローラは、FPGAの一部として含めても、FPGAとは別個の装置でもよい。距離計算は、以前に論じられるように、パルス信号のタイミング情報を使用して物体距離を決定することを含み得る。
方法800のプロセスのいくつかまたはすべては、無人車両(例えば、UAV)またはロボットなどの可動物体に搭載されるコンポーネントを使用して実行することができる。いくつかの実施形態では、発光体、光センサ、FPGAおよび/またはコントローラは、可動物体(例えば、UAV、自律走行車両またはロボット)に積載され、方法800は、計算された物体までの距離に少なくとも部分的に基づいて可動物体の動作を制御するステップをさらに含む。例えば、計算された距離は、可動物体の動きを制御するための基礎として使用することができる。
図12は、本技術の代表的な実施形態による、個々の遅延時間に少なくとも部分的に基づいてタイミング情報を測定するための方法840aを示すフロー図である。いくつかの実施形態では、方法840aのプロセスのいくつかまたはすべては、一連の順次結合された遅延ユニットを有するTDCを使用して実行される。方法840aのプロセスのいくつかまたはすべては、図11の測定プロセス(ブロック840)のサブプロセスであり得る。
ブロック841は、一連の順次結合された遅延ユニットを通じて入力信号を伝播するステップを含む。入力信号は、戻り光パルスを表すパルス信号の1つまたは複数の部分に対応し得る。いくつかの実施形態では、入力信号は、方形波信号であり、方形波信号の立ち上がりおよび/または立ち下がりエッジは、パルス信号が特定の電圧値に達した時点、特定の電圧値を超えた時点および/または特定の電圧値を下回った時点を表す。
ブロック842は、一連の順次結合された遅延ユニットを使用して入力信号の細時間値を決定するステップを含む。いくつかの実施形態では、ブロック842は、FPGAの次のクロックサイクルの前に入力信号を受信した一連の順次結合された遅延ユニットのサブセットを識別するステップを含む。サブセットは、遅延ユニットのラッチ出力を表すデータシーケンスに少なくとも部分的に基づいて識別することができる。例えば、入力信号が立ち上がりエッジ信号である場合は、データシーケンスは、次のクロックサイクルの前に信号を受信した遅延ユニットのサブセットに対応するデジタル値「1」の第1のセグメントを含み得、それに続いて、信号を受信しなかった遅延ユニットのサブセットに対応するデジタル値「0」の第2のセグメントを含み得る。別の例として、入力信号が立ち下がりエッジ信号である場合は、データシーケンスは、次のクロックサイクルの前に信号を受信した遅延ユニットのサブセットに対応するデジタル値「0」の第1のセグメントを含み得、それに続いて、信号を受信しなかった遅延ユニットのサブセットに対応するデジタル値「1」の第2のセグメントを含み得る。
いくつかの実施形態では、細時間値は、サブセットの個々の遅延時間の総和に対応する。例えば、遅延ユニット1〜nのサブセットによって受信された信号の細時間値は、以下の関係に従って計算することができ、
Figure 0006888216
式中、Tは、細時間値であり、Tckは、FPGAクロック周期であり、Cは、i番目の遅延ユニットの計数であり、Cは、j番目の遅延ユニットの計数である。
ブロック843は、FPGAのクロック信号に基づいて入力信号の粗時間値を決定するステップを含む。いくつかの実施形態では、粗時間値は、以下の関係に従って計算され、
=C×Tck
式中、Tは、粗時間値であり、Tckは、FPGAクロック周期であり、Cは、測定の間に経過したクロックサイクルの数の粗計数である。
ブロック844は、粗時間値と細時間値との差を決定するステップを含む。いくつかの実施形態では、タイミング情報は、以下の関係に従って決定され、
T=T−T
式中、Tは、タイミング情報であり、Tは、粗時間値であり、Tは、細時間値である。細時間値の時間分解能(例えば、ピコ秒レベルの分解能)は、粗時間値の時間分解能(例えば、ナノ秒レベル)より高いものであり得、その結果、結果として生じるタイミング情報は、そうでなければ粗時間値単独での使用によって可能であろう時間分解能より高い時間分解能(例えば、ピコ秒レベルの分解能)を有する。
図13は、本技術の代表的な実施形態による、バブルを低減するための技法を使用してタイミング情報を測定するための方法840bを示すフロー図である。いくつかの実施形態では、方法840bのプロセスのいくつかまたはすべては、一連の順次結合された遅延ユニットを有するTDCを使用して実行される。方法840bのプロセスのいくつかまたはすべては、図11の測定プロセス(ブロック840)のサブプロセスであり得る。
ブロック845は、一連の順次結合された遅延ユニットを通じて入力信号を伝播するステップを含む。入力信号を伝播するステップは、図12のブロック841を参照して上記で説明されるように実行することができる。
ブロック846は、第1のセグメント、第2のセグメントおよびバブルセグメントを有するデータシーケンスを生成するステップを含む。データシーケンスは、一連の順次結合された遅延ユニットを通じた入力信号の伝播に対応し得る。データシーケンスを生成するステップは、図10のブロック652を参照して上記で説明されるように実行することができる。
ブロック847は、データシーケンスを修正するステップを含む。データシーケンスを修正するステップは、図10のブロック654を参照して上記で説明されるように実行することができる。いくつかの実施形態では、修正は、実際には、方法840bで実行する必要はなく、その結果、ブロック847は任意選択のものである。
ブロック848は、データシーケンスの修正に対応する時間値を決定するステップを含む。いくつかの実施形態では、時間値を決定するステップは、図10のブロック656を参照して上記で説明されるように、データシーケンスの修正に対応する遅延ユニットを識別するステップを含む。時間値は、一連の遅延ユニットにおける識別された遅延ユニットおよび識別された遅延ユニットに先行する少なくとも1つの遅延ユニットを含むユニットのサブセットの個々の遅延時間の総和に対応する細時間値であり得る。いくつかの実施形態では、サブセットは、一連の遅延ユニットにおける識別された遅延ユニットおよび識別された遅延ユニットに先行するすべての遅延ユニットを含む。サブセットの細時間値は、図12のブロック842を参照して上記で説明されるように計算することができる。
ブロック849は、データシーケンスの修正と関連付けられた遅延時間を補償する調整された時間値を決定するステップを含む。いくつかの実施形態では、データシーケンスの修正に対応する時間値は、入力信号の実際の時間値に対する遅延時間を含む。遅延時間は定数値であり得、FPGAの校正(例えば、方法500のブロック600)の間に決定することができる。例えば、遅延時間は、既知の時間値で入力信号を測定し、既知の時間値とブロック848に従って決定された時間値との差を計算することによって決定することができる。別の例として、遅延時間は、光学式測定デバイからの既知の距離にある物体を測定し、既知の距離に基づいて決定することができる物体からの戻りパルス信号の実際の時間値とブロック848に従って決定された時間値との差を計算することによって決定することができる。いくつかの実施形態では、調整された時間値は、本明細書で説明されるプロセスのいくつかまたはすべての間に入力信号がそれを通じて送信される信号チェーンと関連付けられた遅延時間などの他のタイプの遅延を補償するように構成される。
方法840aおよび840bは、図12および13では別々に示されているが、これらの方法は、互いに組み合わせて実行することもでき、その結果、タイミング情報を測定するステップ(図11のブロック840)は、これらの2つの方法を順次にまたは同時に実行するステップを伴う。例えば、いくつかの実施形態では、入力信号の細時間値を決定するステップ(図12のブロック842)は、データシーケンスを生成するステップ(図13のブロック846)、データシーケンスを修正するステップ(図13のブロック847)、修正に対応する時間値を決定するステップ(図13のブロック848)および/または調整された時間値を決定するステップ(図13のブロック849)を含む。
3.さらなる代表的な実施形態
本技術のさらなる代表的な実施形態は、物体までの距離を測定するための装置を含む。装置は、外向き光パルスを放出するように構成された発光体と、物体から反射した戻り光パルスを受信し、戻り光パルスを表すパルス信号を出力する光センサとを含む。装置は、フィールドプログラマブルゲートアレイ(FPGA)をさらに含み、FPGAは、光センサに結合され、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含む。個々の順次結合された遅延ユニットは、対応する個々の遅延時間と関連付けられる。順次結合された遅延ユニットの少なくともいくつかは、異なる個々の遅延時間を有する。TDCは、順次結合された遅延ユニットの個々の遅延時間に少なくとも部分的に基づいてパルス信号のタイミング情報を測定する。装置は、タイミング情報に基づいて物体までの距離を計算するコントローラをさらに含む。
いくつかの実施形態では、発光体、光センサ、FPGAおよびコントローラは、無人航空機、自律走行車両またはロボットに積載される。
いくつかの実施形態では、TDCは、一連の順次結合された遅延ユニットを通じて入力信号を伝播することによってタイミング情報を測定する。入力信号は、パルス信号の1つまたは複数の部分に対応し得る。TDCは、一連の順次結合された遅延ユニットを使用して入力信号の細時間値を決定し、FPGAの経過したクロックサイクルの数に基づいて入力信号の粗時間値を決定するようにさらに構成することができる。いくつかの実施形態では、細時間値は、FPGAの次のクロックサイクルの前に入力信号を受信した一連の順次結合された遅延ユニットのサブセットの個々の遅延時間の総和に対応する。タイミング情報は、粗時間値と細時間値との差に対応し得る。細時間値の時間分解能は、粗時間値の時間分解能より高いものであり得る。
いくつかの実施形態では、TDCは、複数のラッチを有するラッチユニットを含み、個々のラッチは、対応する順次的な遅延ユニットに結合される。
本技術のさらなる代表的な実施形態は、物体までの距離を測定するための方法を含む。方法は、発光体によって、外向き光パルスを放出するステップと、光センサにおいて、物体から反射した戻り光パルスを受信するステップとを含む。方法は、光センサによって、戻り光パルスを表すパルス信号を出力するステップを含む。方法は、フィールドプログラマブルゲートアレイ(FPGA)を使用して、パルス信号のタイミング情報を測定するステップを含む。FPGAは、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含む。個々の順次結合された遅延ユニットは、対応する個々の遅延時間と関連付けられる。順次結合された遅延ユニットの少なくともいくつかは、異なる個々の遅延時間を有する。TDCは、順次結合された遅延ユニットの個々の遅延時間に少なくとも部分的に基づいてパルス信号のタイミング情報を測定する。方法は、コントローラを使用して、タイミング情報に基づいて物体までの距離を計算するステップをさらに含む。
いくつかの実施形態では、タイミング情報を測定するステップは、一連の順次結合された遅延ユニットを通じて入力信号を伝播するステップを含み、入力信号は、パルス信号の1つまたは複数の部分に対応する。タイミング情報を測定するステップは、一連の順次結合された遅延ユニットを使用して入力信号の細時間値を決定するステップをさらに含み得る。タイミング情報を測定するステップは、FPGAの経過したクロックサイクルの数に基づいて入力信号の粗時間値を決定するステップをさらに含み得る。
いくつかの実施形態では、細時間値を決定するステップは、入力信号が一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、一連の順次結合された遅延ユニットの出力をラッチするステップを含む。細時間値を決定するステップは、ラッチ出力を使用して、一連の順次結合された遅延ユニットのサブセットを識別するステップを含み得る。細時間値を決定するステップは、ラッチ出力を使用して、FPGAの次のクロックサイクルの前に入力信号を受信した一連の順次結合された遅延ユニットにおける最後の遅延ユニットを識別するステップを含み得る。
本技術のさらなる代表的な実施形態は、光学式距離測定装置を製造するための方法を含む。方法は、時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)を光学式距離測定装置にインストールするステップを含み、TDCは、一連の順次結合された遅延ユニットを含む。FPGAは、以下の方法、すなわち、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップおよび対応する順次結合された遅延ユニットの個々の遅延時間を決定するステップに従って校正されている。個々の遅延時間は、対応する遅延ユニットがFPGAの次のクロックサイクルの前に校正信号を受信した一連の順次結合された遅延ユニットにおける最後の遅延ユニットである回数を表す計数に対応する。
いくつかの実施形態では、方法は、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信し、対応する順次結合された遅延ユニットの個々の遅延時間を決定することによって、FPGAを校正するステップをさらに含む。複数の校正信号は、複数のランダム化信号を含み得る。複数のランダム化信号は、FPGAのクロック信号に対してランダム化することができる。
いくつかの実施形態では、順次結合された遅延ユニットの少なくともいくつかは、異なる個々の遅延時間を有する。対応する遅延ユニットの個々の遅延時間は、遅延ユニットの計数に比例し得る。いくつかの実施形態では、方法は、対応する遅延ユニットの計数を順次結合された遅延ユニットの各々の計数の総和で除したものを表す比率に少なくとも部分的に基づいて個々の遅延時間を計算するステップをさらに含む。
いくつかの実施形態では、方法は、一連の順次結合された遅延ユニットを通じて複数の校正信号を伝播するステップをさらに含む。方法は、校正信号が一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、一連の順次結合された遅延ユニットの出力をラッチするステップをさらに含み得る。方法は、ラッチ出力を使用して、FPGAの次のクロックサイクルの前に校正信号を受信した一連の順次結合された遅延ユニットにおける最後の遅延ユニットを識別するステップをさらに含み得る。
本技術のさらなる代表的な実施形態は、物体までの距離を測定するための装置を含む。装置は、外向き光パルスを放出するように構成された発光体と、物体から反射した戻り光パルスを受信し、戻り光パルスを表すパルス信号を出力する光センサとを含む。装置は、フィールドプログラマブルゲートアレイ(FPGA)をさらに含み、FPGAは、光センサに結合され、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含む。TDCは、一連の順次結合された遅延ユニットを通じて入力信号を伝播することによってパルス信号のタイミング情報を測定するように構成され、入力信号は、パルス信号の1つまたは複数の部分に対応する。TDCは、デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成するようにさらに構成される。バブルセグメントは、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む。TDCは、データシーケンスの修正に対応する時間値を決定するようにさらに構成され、データシーケンスの修正では、バブルセグメントの少なくとも1つのデジタルデータ値「1」は、第1のセグメントの方に移動され、バブルセグメントの少なくとも1つのデジタルデータ値「0」は、第2のセグメントの方に移動される。装置は、タイミング情報に少なくとも部分的に基づいて物体までの距離を計算するコントローラをさらに含む。
いくつかの実施形態では、TDCは、一連の順次結合された遅延ユニットに結合されたラッチユニットを含む。ラッチユニットは、複数のラッチを含み得、個々のラッチは、順次結合された遅延ユニットの対応する遅延ユニットに結合することができ、対応する遅延ユニットの出力をラッチするように構成される。データシーケンスは、複数のラッチによってラッチされた出力を含み得る。
いくつかの実施形態では、個々のラッチは、対応する遅延ユニットの出力をラッチするための対応するラッチ時間と関連付けられる。ラッチの少なくとも1つは、対応する遅延ユニットの個々の遅延時間を超えるラッチ時間を有し得る。バブルセグメントの少なくとも1つのデジタルデータ値は、少なくとも1つのラッチによってラッチされた出力に対応し得る。
いくつかの実施形態では、TDCは、データシーケンスの修正に対応する遅延ユニットを識別することによって時間値を決定するように構成される。第1のセグメントは、第2のセグメントの前に配置することができ、識別された遅延ユニットは、データシーケンスの修正における第2のセグメントに隣接する第1のセグメントのデジタルデータ値「1」に対応し得る。第2のセグメントは、第1のセグメントの前に配置することができ、識別された遅延ユニットは、信号の修正における第1のセグメントに隣接する第2のセグメントのデジタルデータ値「0」に対応し得る。
いくつかの実施形態では、TDCは、データシーケンスの修正と関連付けられた遅延時間を補償する調整された時間値を決定するようにさらに構成される。
本技術のさらなる代表的な実施形態は、物体までの距離を測定するための方法を含む。方法は、発光体によって、外向き光パルスを放出するステップと、光センサにおいて、物体から反射した戻り光パルスを受信するステップとを含む。方法は、光センサによって、戻り光パルスを表すパルス信号を出力するステップをさらに含む。方法は、フィールドプログラマブルゲートアレイ(FPGA)を使用して、パルス信号のタイミング情報を測定するステップをさらに含む。FPGAは、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含む。TDCは、一連の順次結合された遅延ユニットを通じて入力信号を伝播することによってパルス信号のタイミング情報を測定するように構成され、入力信号は、パルス信号の1つまたは複数の部分に対応する。TDCは、デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成するように構成される。バブルセグメントは、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む。TDCは、データシーケンスの修正に対応する時間値を決定するようにさらに構成され、データシーケンスの修正では、バブルセグメントの少なくとも1つのデジタルデータ値「1」は、第1のセグメントの方に移動され、バブルセグメントの少なくとも1つのデジタルデータ値「0」は、第2のセグメントの方に移動される。方法は、コントローラを使用して、タイミング情報に少なくとも部分的に基づいて物体までの距離を計算するステップをさらに含む。
いくつかの実施形態では、データシーケンスを生成するステップは、入力信号が一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、一連の順次結合された遅延ユニットの出力をラッチするステップを含む。データシーケンスを生成するステップは、遅延ユニットの個々の遅延時間を超えるラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み得、ラッチ出力は、バブルセグメントの少なくとも1つのデジタルデータ値に対応する。データシーケンスを生成するステップは、遅延ユニットの個々の遅延時間より短いラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み得、ラッチ出力は、第1または第2のセグメントの少なくとも1つのデジタルデータ値に対応する。
本技術のさらなる代表的な実施形態は、光学式距離測定装置を製造するための方法を含む。方法は、時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)を光学式距離測定装置にインストールするステップを含み、TDCは、一連の順次結合された遅延ユニットを含む。FPGAは、以下の方法、すなわち、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップおよび対応する個々の順次結合された遅延ユニットの個々の遅延時間を決定するステップに従って校正されている。決定するステップは、デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成するステップを含む。バブルセグメントは、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む。決定するステップは、データシーケンスの修正に対応する遅延ユニットを識別するステップを含み、データシーケンスの修正では、バブルセグメントの少なくとも1つのデジタルデータ値「1」は、第1のセグメントの方に移動され、バブルセグメントの少なくとも1つのデジタルデータ値「0」は、第2のセグメントの方に移動される。
いくつかの実施形態では、方法は、一連の順次結合された遅延ユニットにおいて複数の校正信号を受信し、対応する個々の順次結合された遅延ユニットの個々の遅延時間を決定することによって、FPGAを校正するステップをさらに含む。決定するステップは、第1のセグメント、第2のセグメントおよびバブルセグメントを有するデータシーケンスを生成するステップと、データシーケンスの修正に対応する遅延ユニットを識別するステップとを含み得る。
いくつかの実施形態では、複数の校正信号は、複数のランダム化信号を含み、複数のランダム化信号は、FPGAのクロック信号に対してランダム化される。個々の遅延時間を決定するステップは、対応する遅延ユニットがFPGAの次のクロックサイクルの前にランダム化信号を受信した一連の順次結合された遅延ユニットにおける最後の遅延ユニットとして識別された回数を表す計数を計算するステップを含み得る。
いくつかの実施形態では、データシーケンスを生成するステップは、入力信号が一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、一連の順次結合された遅延ユニットの出力をラッチするステップを含む。データシーケンスを生成するステップは、遅延ユニットの個々の遅延時間を超えるラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み得、ラッチ出力は、バブルセグメントの少なくとも1つのデジタルデータ値に対応する。データシーケンスを生成するステップは、遅延ユニットの個々の遅延時間より短いラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み得、ラッチ出力は、第1または第2のセグメントの少なくとも1つのデジタルデータ値に対応する。
本開示は多くの詳細を含むが、これらは、本技術の範囲または特許請求できる範囲を制限するものと解釈すべきではなく、むしろ、特定の発明の特定の実施形態に特有のものであり得る特徴の説明として解釈すべきである。本明細書において別個の実施形態の文脈内で説明されるある特定の特徴は、単一の実施形態において組み合わせて実装することもできる。逆に言えば、単一の実施形態の文脈内で説明される様々な特徴は、複数の実施形態において別々にまたは適切な任意の副組合せで実装することもできる。その上、上記では、特徴は、ある特定の組合せで動作するものとして説明されており、そのようなものとして最初に特許請求されているが、特許請求されている組合せからの1つまたは複数の特徴は、いくつかの事例では、組合せから削除することができ、特許請求されている組合せは、副組合せまたは副組合せの変形形態を対象とすることができる。
同様に、図面では、動作は、特定の順番で描写されているが、これは、望ましい結果を達成するために、示される特定の順番でもしくは連続的順序でそのような動作を実行することまたは示されるすべての動作を実行することを必要とするものと理解すべきではない。その上、この特許文書で説明される実施形態の様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものと理解すべきではない。
さらに、本技術のある特定の実施形態と関連付けられた利点は、それらの実施形態の文脈内で説明されているが、他の実施形態もそのような利点を呈することができ、必ずしもすべての実施形態が本技術の範囲内に収めるためにそのような利点を呈さなければならないわけではない。それに従って、本開示および関連技術は、本明細書で明示されていないまたは説明されていない他の実施形態を包含し得る。
いくつかの実装形態および実施例のみが説明されており、他の実装、強化および変形は、本開示で説明されるものおよび示されるものに基づいて行うことができる。
本明細書に組み込まれる材料が本開示と矛盾する場合は、本開示が統制する。
この特許文書の本開示の少なくとも一部分は、著作権保護の対象である材料を含む。特許商標庁の特許ファイルまたは記録にその旨が見られるため、著作権の所有者は、何者かによる特許文書または特許開示の複製に対する異論を唱えないが、そうでなければすべての著作権に関するいかなる権利も留保する。
[項目1]
物体までの距離を測定するための装置であって、
外向き光パルスを放出する発光体と、
上記物体から反射した戻り光パルスを受信し、上記戻り光パルスを表すパルス信号を出力する光センサと、
上記光センサに結合され、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)であって、個々の順次結合された遅延ユニットが、対応する個々の遅延時間と関連付けられ、上記順次結合された遅延ユニットの少なくともいくつかが、異なる個々の遅延時間を有し、上記TDCが、上記順次結合された遅延ユニットの上記個々の遅延時間に少なくとも部分的に基づいて上記パルス信号のタイミング情報を測定する、FPGAと、
上記タイミング情報に基づいて上記物体までの上記距離を計算するコントローラと
を含む、装置。
[項目2]
上記発光体、光センサ、FPGAおよびコントローラが、無人航空機、自律走行車両またはロボットに積載される、項目1に記載の装置。
[項目3]
上記TDCが、
上記一連の順次結合された遅延ユニットを通じて入力信号を伝播することであって、上記入力信号が、上記パルス信号の1つまたは複数の部分に対応する、伝播することと、
上記一連の順次結合された遅延ユニットを使用して上記入力信号の細時間値を決定することと、
上記FPGAの経過したクロックサイクルの数に基づいて上記入力信号の粗時間値を決定することと
によって上記タイミング情報を測定する、項目1に記載の装置。
[項目4]
上記細時間値が、上記FPGAの次のクロックサイクルの前に上記入力信号を受信した上記一連の順次結合された遅延ユニットのサブセットの上記個々の遅延時間の総和に対応する、項目3に記載の装置。
[項目5]
上記タイミング情報が、上記粗時間値と上記細時間値との差に対応する、項目3に記載の装置。
[項目6]
上記細時間値の時間分解能が、上記粗時間値の時間分解能より高いものである、項目3に記載の装置。
[項目7]
上記一連の順次結合された遅延ユニットが、少なくとも25の遅延ユニットを含む、項目1に記載の装置。
[項目8]
上記一連の順次結合された遅延ユニットが、キャリーチェーンまたはルックアップテーブル(LUT)を含む、項目1に記載の装置。
[項目9]
上記個々の遅延時間が、5ピコ秒〜2000ピコ秒の範囲内である、項目1に記載の装置。
[項目10]
上記TDCが、複数のラッチを有するラッチユニットを含み、個々のラッチが、対応する順次的な遅延ユニットに結合される、項目1に記載の装置。
[項目11]
上記TDCが、複数のラッチを有するラッチユニットを含み、個々のラッチが、対応する順次的な遅延ユニットに結合され、上記TDCが、
上記一連の順次結合された遅延ユニットを通じて入力信号を伝播することであって、上記入力信号が、上記パルス信号の1つまたは複数の部分に対応する、伝播することと、
上記一連の順次結合された遅延ユニットを使用して上記入力信号の細時間値を決定することであって、上記細時間値が、上記FPGAの次のクロックサイクルの前に上記入力信号を受信した上記一連の順次結合された遅延ユニットのサブセットの上記個々の遅延時間の総和に対応する、決定することと、
上記FPGAの経過したクロックサイクルの数に基づいて上記入力信号測定の粗時間を決定することと、
上記粗時間値と上記細時間値との差に基づいて上記タイミング情報を測定することと
を行う、項目1に記載の装置。
[項目12]
物体までの距離を測定するための方法であって、
発光体によって、外向き光パルスを放出するステップと、
光センサにおいて、上記物体から反射した戻り光パルスを受信するステップと、
上記光センサによって、上記戻り光パルスを表すパルス信号を出力するステップと、
フィールドプログラマブルゲートアレイ(FPGA)を使用して、上記パルス信号のタイミング情報を測定するステップであって、上記FPGAが、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含み、個々の順次結合された遅延ユニットが、対応する個々の遅延時間と関連付けられ、上記順次結合された遅延ユニットの少なくともいくつかが、異なる個々の遅延時間を有し、上記TDCが、上記順次結合された遅延ユニットの上記個々の遅延時間に少なくとも部分的に基づいて上記パルス信号の上記タイミング情報を測定する、ステップと、
コントローラを使用して、上記タイミング情報に基づいて上記物体までの上記距離を計算するステップと
を含む、方法。
[項目13]
上記発光体、光センサ、FPGAおよびコントローラが、無人車両、自律走行車両またはロボットに積載される方法であって、上記計算された上記物体までの距離に少なくとも部分的に基づいて無人航空機、自律走行車両またはロボットの動作を制御するステップをさらに含む、項目12に記載の方法。
[項目14]
上記タイミング情報を測定するステップが、
上記一連の順次結合された遅延ユニットを通じて入力信号を伝播するステップであって、上記入力信号が、上記パルス信号の1つまたは複数の部分に対応する、ステップと、
上記一連の順次結合された遅延ユニットを使用して上記入力信号の細時間値を決定するステップと、
上記FPGAの経過したクロックサイクルの数に基づいて上記入力信号の粗時間値を決定するステップと
を含む、項目12に記載の方法。
[項目15]
上記細時間値が、上記FPGAの次のクロックサイクルの前に上記入力信号を受信した上記一連の順次結合された遅延ユニットのサブセットの上記個々の遅延時間の総和に対応する、項目14に記載の方法。
[項目16]
上記細時間値を決定するステップが、上記入力信号が上記一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、上記一連の順次結合された遅延ユニットの出力をラッチするステップを含む、項目15に記載の方法。
[項目17]
上記細時間値を決定するステップが、上記ラッチ出力を使用して、上記一連の順次結合された遅延ユニットの上記サブセットを識別するステップを含む、項目16に記載の方法。
[項目18]
上記細時間値を決定するステップが、上記ラッチ出力を使用して、上記FPGAの上記次のクロックサイクルの前に上記入力信号を受信した上記一連の順次結合された遅延ユニットにおける最後の遅延ユニットを識別するステップを含む、項目16に記載の方法。
[項目19]
上記タイミング情報が、上記粗時間値と上記細時間値との差に対応する、項目14に記載の方法。
[項目20]
上記細時間値の時間分解能が、上記粗時間値の時間分解能より高いものである、項目14に記載の方法。
[項目21]
光学式距離測定装置を製造するための方法であって、
時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)を上記光学式距離測定装置にインストールするステップを含み、上記TDCが、一連の順次結合された遅延ユニットを含み、上記FPGAが、以下の方法、すなわち、
上記一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップ、および、
対応する順次結合された遅延ユニットの個々の遅延時間を決定するステップであって、個々の遅延時間が、上記対応する遅延ユニットが上記FPGAの次のクロックサイクルの前に校正信号を受信した上記一連の順次結合された遅延ユニットにおける最後の遅延ユニットである回数を表す計数に対応する、ステップ
に従って校正されている、方法。
[項目22]
無人車両、自律走行車両またはロボットに上記光学式距離測定装置をインストールするステップをさらに含む、項目21に記載の方法。
[項目23]
上記一連の順次結合された遅延ユニットにおいて上記複数の校正信号を受信すること、および、
対応する順次結合された遅延ユニットの上記個々の遅延時間を決定すること
によって上記FPGAを校正するステップをさらに含む、項目21に記載の方法。
[項目24]
上記複数の校正信号が、複数のランダム化信号を含む、項目23に記載の方法。
[項目25]
上記複数のランダム化信号が、上記FPGAのクロック信号に対してランダム化される、項目24に記載の方法。
[項目26]
上記順次結合された遅延ユニットの少なくともいくつかが、異なる個々の遅延時間を有する、項目23に記載の方法。
[項目27]
対応する遅延ユニットの上記個々の遅延時間が、上記遅延ユニットの上記計数に比例する、項目23に記載の方法。
[項目28]
上記対応する遅延ユニットの上記計数を上記順次結合された遅延ユニットの各々の上記計数の総和で除したものを表す比率に少なくとも部分的に基づいて上記個々の遅延時間を計算するステップをさらに含む、項目23に記載の方法。
[項目29]
上記一連の順次結合された遅延ユニットを通じて上記複数の校正信号を伝播するステップをさらに含む、項目23に記載の方法。
[項目30]
校正信号が上記一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、上記一連の順次結合された遅延ユニットの出力をラッチするステップをさらに含む、項目29に記載の方法。
[項目31]
上記ラッチ出力を使用して、上記FPGAの上記次のクロックサイクルの前に上記校正信号を受信した上記一連の順次結合された遅延ユニットにおける最後の遅延ユニットを識別するステップをさらに含む、項目30に記載の方法。
[項目32]
物体までの距離を測定するための装置であって、
外向き光パルスを放出する発光体と、
上記物体から反射した戻り光パルスを受信し、上記戻り光パルスを表すパルス信号を出力する光センサと、
上記光センサに結合され、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)であって、上記TDCが、
上記一連の順次結合された遅延ユニットを通じて入力信号を伝播することであって、上記入力信号が、上記パルス信号の1つまたは複数の部分に対応する、上記入力信号を伝播すること、
デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび上記第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成することであって、上記バブルセグメントが、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む、上記データシーケンスを生成すること、ならびに、
上記データシーケンスの修正に対応する時間値を決定することであって、データシーケンスの修正では、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「1」が、上記第1のセグメントの方に移動され、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「0」が、上記第2のセグメントの方に移動される、上記時間値を決定することによって上記パルス信号のタイミング情報を測定する、FPGAと、
上記タイミング情報に少なくとも部分的に基づいて上記物体までの上記距離を計算するコントローラと
を含む、装置。
[項目33]
上記発光体、光センサ、FPGAおよびコントローラが、無人航空機、自律走行車両またはロボットに積載される、項目32に記載の装置。
[項目34]
上記TDCが、上記一連の順次結合された遅延ユニットに結合されたラッチユニットを含む、項目32に記載の装置。
[項目35]
上記ラッチユニットが、複数のラッチを含み、個々のラッチが、上記順次結合された遅延ユニットの対応する遅延ユニットに結合され、上記対応する遅延ユニットの出力をラッチするように構成される、項目34に記載の装置。
[項目36]
上記データシーケンスが、上記複数のラッチによってラッチされた上記出力を含む、項目35に記載の装置。
[項目37]
個々のラッチが、上記対応する遅延ユニットの上記出力をラッチするための対応するラッチ時間と関連付けられる、項目35に記載の装置。
[項目38]
上記ラッチの少なくとも1つが、上記対応する遅延ユニットの上記個々の遅延時間を超えるラッチ時間を有する、項目37に記載の装置。
[項目39]
上記バブルセグメントの少なくとも1つのデジタルデータ値が、上記少なくとも1つのラッチによってラッチされた上記出力に対応する、項目38に記載の装置。
[項目40]
上記TDCが、上記データシーケンスの上記修正に対応する遅延ユニットを識別することによって上記時間値を決定するように構成される、項目32に記載の装置。
[項目41]
上記第1のセグメントが、上記第2のセグメントの前に配置され、上記識別された遅延ユニットが、上記データシーケンスの上記修正における上記第2のセグメントに隣接する上記第1のセグメントのデジタルデータ値「1」に対応する、項目40に記載の装置。
[項目42]
上記第2のセグメントが、上記第1のセグメントの前に配置され、上記識別された遅延ユニットが、上記信号の上記修正における上記第1のセグメントに隣接する上記第2のセグメントのデジタルデータ値「0」に対応する、項目40に記載の装置。
[項目43]
上記TDCが、上記データシーケンスの上記修正と関連付けられた遅延時間を補償する調整された時間値を決定するようにさらに構成される、項目32に記載の装置。
[項目44]
上記TDCが、上記一連の順次結合された遅延ユニットに結合されたラッチユニットを含み、上記ラッチユニットが、複数のラッチを含み、個々のラッチが、上記順次結合された遅延ユニットの対応する遅延ユニットに結合され、上記対応する遅延ユニットの出力をラッチするように構成され、上記データシーケンスが、上記複数のラッチによってラッチされた上記出力を含み、
上記TDCが、
上記データシーケンスの上記修正に対応する遅延ユニットを識別することによって上記時間値を決定し、
上記データシーケンスの上記修正と関連付けられた遅延時間を補償する調整された時間値を決定する
ように構成される、項目32に記載の装置。
[項目45]
物体までの距離を測定するための方法であって、
発光体によって、外向き光パルスを放出するステップと、
光センサにおいて、上記物体から反射した戻り光パルスを受信するステップと、
上記光センサによって、上記戻り光パルスを表すパルス信号を出力するステップと、
フィールドプログラマブルゲートアレイ(FPGA)を使用して、上記パルス信号のタイミング情報を測定するステップであって、上記FPGAが、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含み、
上記TDCが、
上記一連の順次結合された遅延ユニットを通じて入力信号を伝播することであって、上記入力信号が、上記パルス信号の1つまたは複数の部分に対応する、上記入力信号を伝播すること、
デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび上記第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成するステップであって、上記バブルセグメントは、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む、上記データシーケンスを生成すること、ならびに、
上記データシーケンスの修正に対応する時間値を決定することであって、データシーケンスの修正では、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「1」が、上記第1のセグメントの方に移動され、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「0」が、上記第2のセグメントの方に移動される、上記時間値を決定することによって上記パルス信号の上記タイミング情報を測定する、ステップと、
コントローラを使用して、上記タイミング情報に少なくとも部分的に基づいて上記物体までの上記距離を計算するステップと
を含む、方法。
[項目46]
上記発光体、光センサ、FPGAおよびコントローラが、無人車両、自律走行車両またはロボットに積載される方法であって、上記計算された上記物体までの距離に少なくとも部分的に基づいて無人航空機、自律走行車両またはロボットの動作を制御するステップをさらに含む、項目45に記載の方法。
[項目47]
上記データシーケンスを生成するステップが、上記入力信号が上記一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、上記一連の順次結合された遅延ユニットの出力をラッチするステップを含む、項目45に記載の方法。
[項目48]
上記データシーケンスを生成するステップが、上記遅延ユニットの上記個々の遅延時間を超えるラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み、上記ラッチ出力が、上記バブルセグメントの少なくとも1つのデジタルデータ値に対応する、項目47に記載の方法。
[項目49]
上記データシーケンスを生成するステップが、上記遅延ユニットの上記個々の遅延時間より短いラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み、上記ラッチ出力が、上記第1または第2のセグメントの少なくとも1つのデジタルデータ値に対応する、項目47に記載の方法。
[項目50]
上記時間値を決定するステップが、上記データシーケンスの上記修正に対応する遅延ユニットを識別するステップを含む、項目45に記載の方法。
[項目51]
上記第1のセグメントが、上記第2のセグメントの前に配置され、上記遅延ユニットを識別するステップが、上記データシーケンスの上記修正における上記第2のセグメントに隣接する上記第1のセグメントのデジタルデータ値「1」に対応する遅延ユニットを識別するステップを含む、項目50に記載の方法。
[項目52]
上記第2のセグメントが、上記第1のセグメントの前に配置され、上記遅延ユニットを識別するステップが、上記信号の上記修正における上記第1のセグメントに隣接する上記第2のセグメントのデジタルデータ値「0」に対応する遅延ユニットを識別するステップを含む、項目50に記載の方法。
[項目53]
上記時間値を決定するステップが、上記データシーケンスの上記修正と関連付けられた遅延時間を補償するステップを含む、項目45に記載の方法。
[項目54]
光学式距離測定装置を製造するための方法であって、
時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)を上記光学式距離測定装置にインストールするステップを含み、上記TDCが、一連の順次結合された遅延ユニットを含み、上記FPGAが、以下の方法、すなわち、
上記一連の順次結合された遅延ユニットにおいて複数の校正信号を受信するステップ、および、
対応する個々の順次結合された遅延ユニットの個々の遅延時間を決定するステップ
に従って校正され、上記決定するステップが、
デジタルデータ値「1」のみの第1のセグメント、デジタルデータ値「0」のみの第2のセグメントおよび上記第1のセグメントと第2のセグメントとの間のバブルセグメントを有するデータシーケンスを生成するステップであって、上記バブルセグメントが、近隣のデジタル値「0」間の少なくとも1つのデジタルデータ値「1」および/または近隣のデジタルデータ値「1」間の少なくとも1つのデジタル値「0」を含む、ステップ、ならびに、
上記データシーケンスの修正に対応する遅延ユニットを識別するステップであって、データシーケンスの修正では、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「1」が、上記第1のセグメントの方に移動され、上記バブルセグメントの上記少なくとも1つのデジタルデータ値「0」が、上記第2のセグメントの方に移動される、ステップ
を含む、方法。
[項目55]
無人車両、自律走行車両またはロボットに上記光学式距離測定装置をインストールするステップをさらに含む、項目54に記載の方法。
[項目56]
上記一連の順次結合された遅延ユニットにおいて上記複数の校正信号を受信し、
対応する個々の順次結合された遅延ユニットの上記個々の遅延時間を決定すること
によって、上記FPGAを校正するステップをさらに含み、上記決定するステップが、
上記第1のセグメント、上記第2のセグメントおよび上記バブルセグメントを有する上記データシーケンスを生成するステップと、
上記データシーケンスの上記修正に対応する上記遅延ユニットを識別するステップと
を含む、項目54に記載の方法。
[項目57]
上記複数の校正信号が、複数のランダム化信号を含み、上記複数のランダム化信号が、上記FPGAのクロック信号に対してランダム化される、項目56に記載の方法。
[項目58]
上記個々の遅延時間を決定するステップが、上記対応する遅延ユニットが上記FPGAの次のクロックサイクルの前にランダム化信号を受信した上記一連の順次結合された遅延ユニットにおける最後の遅延ユニットとして識別された回数を表す計数を計算するステップを含む、項目57に記載の方法。
[項目59]
上記データシーケンスを生成するステップが、上記一連の順次結合された遅延ユニットを通じて上記複数の校正信号を伝播するステップを含む、項目56に記載の方法。
[項目60]
上記データシーケンスを生成するステップが、校正信号が上記一連の順次結合された遅延ユニットを通じて伝播される際に、複数のラッチを使用して、上記一連の順次結合された遅延ユニットの出力をラッチするステップを含む、項目59に記載の方法。
[項目61]
上記データシーケンスを生成するステップが、上記遅延ユニットの上記個々の遅延時間を超えるラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み、上記ラッチ出力が、上記バブルセグメントの少なくとも1つのデジタルデータ値に対応する、項目60に記載の方法。
[項目62]
上記データシーケンスを生成するステップが、上記遅延ユニットの上記個々の遅延時間より短いラッチ時間を有するラッチを使用して、遅延ユニットの出力をラッチするステップを含み、上記ラッチ出力が、上記第1または第2のセグメントの少なくとも1つのデジタルデータ値に対応する、項目60に記載の方法。
[項目63]
上記第1のセグメントが、上記第2のセグメントの前に配置され、上記遅延ユニットを識別するステップが、上記データシーケンスの上記修正における上記第2のセグメントに隣接する上記第1のセグメントのデジタルデータ値「1」に対応する遅延ユニットを識別するステップを含む、項目56に記載の方法。
[項目64]
上記第2のセグメントが、上記第1のセグメントの前に配置され、上記遅延ユニットを識別するステップが、上記信号の上記修正における上記第1のセグメントに隣接する上記第2のセグメントのデジタルデータ値「0」に対応する遅延ユニットを識別するステップを含む、項目56に記載の方法。

Claims (9)

  1. 物体までの距離を測定するための装置であって、
    外向き光パルスを放出する発光体と、
    前記物体から反射した戻り光パルスを受信し、前記戻り光パルスを表すパルス信号を出力する光センサと、
    前記光センサに結合され、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含むフィールドプログラマブルゲートアレイ(FPGA)であって、個々の順次結合された遅延ユニットが、対応する個々の遅延時間と関連付けられ、前記順次結合された遅延ユニットの少なくともいくつかが、異なる個々の遅延時間を有し、前記TDCが、前記遅延ユニットの前記個々の遅延時間より短いラッチ時間を有する複数のラッチを有するラッチユニットを含み、前記TDCが前記一連の順次結合された遅延ユニットを通じて前記パルス信号の1つまたは複数の部分に対応する入力信号を伝播する際に、前記複数のラッチを使用して、前記一連の順次結合された遅延ユニットの出力をラッチし、前記順次結合された遅延ユニットの前記個々の遅延時間に少なくとも部分的に基づいて前記パルス信号のタイミング情報を測定する、FPGAと、
    前記タイミング情報に基づいて前記物体までの前記距離を計算するコントローラと
    を含む、装置。
  2. 前記発光体、光センサ、FPGAおよびコントローラが、無人航空機、自律走行車両またはロボットに積載される、請求項1に記載の装置。
  3. 前記TDCが、
    記一連の順次結合された遅延ユニットを使用して前記入力信号の細時間値を決定することと、
    前記FPGAの経過したクロックサイクルの数に基づいて前記入力信号の粗時間値を決定することと
    によって前記タイミング情報を測定する、請求項1又は請求項2に記載の装置。
  4. 前記細時間値が、前記FPGAの次のクロックサイクルの前に前記入力信号を受信した前記一連の順次結合された遅延ユニットのサブセットの前記個々の遅延時間の総和に対応する、請求項3に記載の装置。
  5. 前記タイミング情報が、前記粗時間値と前記細時間値との差に対応する、請求項3に記載の装置。
  6. 前記細時間値の時間分解能が、前記粗時間値の時間分解能より高いものである、請求項3から請求項5の何れか1項に記載の装置。
  7. 前記一連の順次結合された遅延ユニットが、キャリーチェーンまたはルックアップテーブル(LUT)を含む、請求項1から請求項6の何れか1項に記載の装置。
  8. 前記TDCが、複数のラッチを有するラッチユニットを含み、個々のラッチが、対応する順次的な遅延ユニットに結合され、前記TDCが、
    前記一連の順次結合された遅延ユニットを通じて入力信号を伝播することであって、前記入力信号が、前記パルス信号の1つまたは複数の部分に対応する、伝播することと、
    前記一連の順次結合された遅延ユニットを使用して前記入力信号の細時間値を決定することであって、前記細時間値が、前記FPGAの次のクロックサイクルの前に前記入力信号を受信した前記一連の順次結合された遅延ユニットのサブセットの前記個々の遅延時間の総和に対応する、決定することと、
    前記FPGAの経過したクロックサイクルの数に基づいて前記入力信号の粗時間値を決定することと、
    前記粗時間値と前記細時間値との差に基づいて前記タイミング情報を測定することと
    を行う、請求項1に記載の装置。
  9. 物体までの距離を測定するための方法であって、
    発光体によって、外向き光パルスを放出するステップと、
    光センサにおいて、前記物体から反射した戻り光パルスを受信するステップと、
    前記光センサによって、前記戻り光パルスを表すパルス信号を出力するステップと、
    フィールドプログラマブルゲートアレイ(FPGA)を使用して、前記パルス信号のタイミング情報を測定するステップであって、前記FPGAが、一連の順次結合された遅延ユニットを有する時間/デジタル変換器(TDC)を含み、個々の順次結合された遅延ユニットが、対応する個々の遅延時間と関連付けられ、前記順次結合された遅延ユニットの少なくともいくつかが、異なる個々の遅延時間を有し、前記TDCが、前記遅延ユニットの前記個々の遅延時間より短いラッチ時間を有する複数のラッチを有するラッチユニットを含み、前記TDCが前記一連の順次結合された遅延ユニットを通じて前記パルス信号の1つまたは複数の部分に対応する入力信号を伝播する際に、前記複数のラッチを使用して、前記一連の順次結合された遅延ユニットの出力をラッチし、前記順次結合された遅延ユニットの前記個々の遅延時間に少なくとも部分的に基づいて前記パルス信号の前記タイミング情報を測定する、ステップと、
    コントローラを使用して、前記タイミング情報に基づいて前記物体までの前記距離を計算するステップと
    を含む、方法。
JP2019570540A 2017-08-31 2017-08-31 物体までの距離を測定するための装置および方法 Active JP6888216B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/100040 WO2019041269A1 (en) 2017-08-31 2017-08-31 CALIBRATION OF DELAY TIME OF OPTICAL DISTANCE MEASURING DEVICES AND ASSOCIATED SYSTEMS AND METHODS

Publications (2)

Publication Number Publication Date
JP2020526741A JP2020526741A (ja) 2020-08-31
JP6888216B2 true JP6888216B2 (ja) 2021-06-16

Family

ID=65434235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019570540A Active JP6888216B2 (ja) 2017-08-31 2017-08-31 物体までの距離を測定するための装置および方法

Country Status (5)

Country Link
US (2) US10641875B2 (ja)
EP (1) EP3472645A4 (ja)
JP (1) JP6888216B2 (ja)
CN (1) CN111033312A (ja)
WO (1) WO2019041269A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020148562A (ja) * 2019-03-12 2020-09-17 ソニーセミコンダクタソリューションズ株式会社 計測装置および測距装置
DE102019107681B4 (de) * 2019-03-26 2022-12-01 Sick Ag Verfahren zum Betreiben eines abstandsmessenden Überwachungssensors und abstandsmessender Überwachungssensor
CN110133672A (zh) * 2019-04-25 2019-08-16 深圳大学 一种移动式测距仪及其控制方法
CN110764075B (zh) * 2019-07-29 2020-04-17 南京芯视界微电子科技有限公司 激光雷达接收芯片测试系统
DE102019219330A1 (de) 2019-12-11 2021-06-17 Ibeo Automotive Systems GmbH Einrichtung zum Erzeugen von Testdaten zum Testen einer Distanzbestimmung bei einer optischen Laufzeitmessung, Messeinrichtung zum Testen einer Distanzbestimmung bei einer optischen Laufzeitmessung und Verfahren zum Erzeugen von Testdaten zum Testen einer Distanzbestimmung bei einer optischen Laufzeitmessung
CN111175766A (zh) * 2020-01-20 2020-05-19 武汉大学 一种单兵作战头戴式终端
CN111538025A (zh) * 2020-05-06 2020-08-14 福瑞泰克智能系统有限公司 一种激光测距方法及系统
CN111580074B (zh) * 2020-05-26 2021-08-20 深圳市灵明光子科技有限公司 时间精度校准方法、装置和电子设备
US11940566B2 (en) 2020-07-07 2024-03-26 Silc Technologies, Inc. Sequencing of signals in LIDAR systems
US11133794B1 (en) * 2020-09-14 2021-09-28 Nvidia Corp. Signal calibration circuit
EP4006576A1 (en) * 2020-11-30 2022-06-01 Hexagon Technology Center GmbH Multichannel time-of-flight measurement device with time-to-digital converters in a programmable integrated circuit
CN113791421B (zh) * 2020-12-04 2024-04-09 神盾股份有限公司 飞时测距装置以及飞时测距方法
WO2023283951A1 (zh) * 2021-07-16 2023-01-19 深圳市速腾聚创科技有限公司 飞行时间测量方法、电路、装置、存储介质及电子设备
CN115902835B (zh) * 2021-09-30 2024-02-27 深圳市速腾聚创科技有限公司 一种雷达数据收发装置、测距方法及激光雷达
CN114326358B (zh) * 2021-12-20 2024-05-17 中国科学院上海光学精密机械研究所 一种多链并行分割高精度fpga时间数字转换方法
CN116300377B (zh) * 2023-03-06 2023-09-08 深圳市镭神智能系统有限公司 一种时间数字转换器与激光雷达

Family Cites Families (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4283116A (en) 1977-04-22 1981-08-11 Jersey Nuclear-Avco Isotopes, Inc. Beam combiner
JPS63194211A (ja) 1987-02-09 1988-08-11 Sony Corp カメラのレンズ駆動装置
US5179565A (en) 1990-06-07 1993-01-12 Hamamatsu Photonics, K.K. Low noise pulsed light source utilizing laser diode and voltage detector device utilizing same low noise pulsed light source
US5249046A (en) 1992-03-30 1993-09-28 Kaman Aerospace Corporation Method and apparatus for three dimensional range resolving imaging
US6101455A (en) 1998-05-14 2000-08-08 Davis; Michael S. Automatic calibration of cameras and structured light sources
US6344937B1 (en) 1999-03-03 2002-02-05 Raytheon Company Beam steering optical arrangement using Risley prisms with surface contours for aberration correction
US6246258B1 (en) 1999-06-21 2001-06-12 Xilinx, Inc. Realizing analog-to-digital converter on a digital programmable integrated circuit
US6666855B2 (en) 1999-09-14 2003-12-23 Visx, Inc. Methods and systems for laser calibration and eye tracker camera alignment
US7085400B1 (en) 2000-06-14 2006-08-01 Surgical Navigation Technologies, Inc. System and method for image based sensor calibration
JP2002199682A (ja) 2000-12-26 2002-07-12 Toshiba Corp 中空モータおよび光波距離計
CA2450308A1 (en) * 2001-06-11 2003-01-03 Qualcomm Incorporated System and method for the detection and compensation of radio signal time of arrival errors
EP1576385A2 (en) 2002-11-26 2005-09-21 James F. Munro An apparatus for high accuracy distance and velocity measurement and methods thereof
EP1524494A1 (en) 2003-10-17 2005-04-20 inos Automationssoftware GmbH Method for calibrating a camera-laser-unit in respect to a calibration-object
JP2005321547A (ja) 2004-05-07 2005-11-17 Fujinon Corp 光源装置
US20050248749A1 (en) 2004-05-10 2005-11-10 Ibeo Automobile Sensor Gmbh Method and an apparatus for distance measurement
FR2870428A1 (fr) 2004-05-11 2005-11-18 Gen Electric Machine a rayons x mobile
EP1600564A1 (de) 2004-05-24 2005-11-30 Leica Geosystems AG Verfahren zur Steuerung einer oberflächenverändernden Maschine
EP1612511B1 (en) 2004-07-01 2015-05-20 Softkinetic Sensors Nv TOF rangefinding with large dynamic range and enhanced background radiation suppression
DE102005017624A1 (de) 2005-04-15 2006-10-19 Robert Bosch Gmbh Verfahren zum Bestimmen der Rad- und/oder Achsgeometrie von Kraftfahrzeugen
US7336407B1 (en) 2005-07-28 2008-02-26 Lockheed Martin Corporation Scanner/pointer apparatus having super-hemispherical coverage
US7843448B2 (en) 2005-11-21 2010-11-30 Leica Geosystems Ag Identification of occluded edge regions from 3D point data
US7236299B1 (en) 2006-04-11 2007-06-26 Bae Systems Information And Electronic Systems Integration Inc. Compact periscopic beam director
US8490489B2 (en) 2006-11-10 2013-07-23 Siemens Medical Solutions Usa, Inc. Transducer array imaging system
CN101216562A (zh) * 2007-01-05 2008-07-09 薛志强 激光测距系统
CN101256232A (zh) 2007-02-28 2008-09-03 电装波动株式会社 用于目标三维探测的激光雷达装置
US8224097B2 (en) 2008-06-12 2012-07-17 Sri International Building segmentation for densely built urban regions using aerial LIDAR data
EP2304489B1 (en) 2008-06-27 2013-01-23 Danmarks Tekniske Universitet Rotating prism scanning device and method for scanning
NO332432B1 (no) 2008-08-12 2012-09-17 Kongsberg Seatex As System for deteksjon og avbildning av objekter i banen for marine fartoy
DE502008002698D1 (de) * 2008-12-19 2011-04-07 Sick Ag Sensor und Verfahren zur Messung der Entfernung einer Grenzfläche
AU2010257107B2 (en) 2009-02-20 2015-07-09 Digital Signal Corporation System and method for generating three dimensional images using lidar and video measurements
US20120170029A1 (en) 2009-09-22 2012-07-05 ISC8 Inc. LIDAR System Comprising Large Area Micro-Channel Plate Focal Plane Array
US20110285981A1 (en) 2010-05-18 2011-11-24 Irvine Sensors Corporation Sensor Element and System Comprising Wide Field-of-View 3-D Imaging LIDAR
US20120170024A1 (en) 2009-09-22 2012-07-05 Medhat Azzazy Long Range Acquisition and Tracking SWIR Sensor System Comprising Micro-Lamellar Spectrometer
US8488877B1 (en) 2009-12-02 2013-07-16 Hrl Laboratories, Llc System for object recognition in colorized point clouds
WO2011070927A1 (ja) 2009-12-11 2011-06-16 株式会社トプコン 点群データ処理装置、点群データ処理方法、および点群データ処理プログラム
US8620089B1 (en) 2009-12-22 2013-12-31 Hrl Laboratories, Llc Strip histogram grid for efficient segmentation of 3D point clouds from urban environments
US8396293B1 (en) 2009-12-22 2013-03-12 Hrl Laboratories, Llc Recognizing geometrically salient objects from segmented point clouds using strip grid histograms
US20130107243A1 (en) 2010-05-03 2013-05-02 Irvine Sensors Corporation Fast, High Resolution 3-D Flash LADAR Imager
US9396545B2 (en) 2010-06-10 2016-07-19 Autodesk, Inc. Segmentation of ground-based laser scanning points from urban environment
US8648612B2 (en) * 2010-07-09 2014-02-11 Rosemount Tank Radar Ab Calibration of a distance measuring device
JP6033222B2 (ja) 2010-07-22 2016-11-30 レニショウ パブリック リミテッド カンパニーRenishaw Public Limited Company レーザ走査システムおよび使用方法
US8324775B2 (en) 2010-08-05 2012-12-04 Hiwin Mikrosystem Corp. Brush DC motor with reduction mechanism
US20120121166A1 (en) 2010-11-12 2012-05-17 Texas Instruments Incorporated Method and apparatus for three dimensional parallel object segmentation
EP2647472B1 (en) 2010-12-02 2016-09-14 Makita Corporation Power tool
JP5787699B2 (ja) 2010-12-06 2015-09-30 株式会社アルファラボ・ソリューション 像ぶれ補正ユニット、像ぶれ補正装置及び光学装置
US9470548B2 (en) 2011-01-31 2016-10-18 Agency For Defense Development Device, system and method for calibration of camera and laser sensor
EP2682784B1 (en) 2011-03-02 2015-06-24 Toyota Jidosha Kabushiki Kaisha Laser radar device
US8581168B2 (en) 2011-03-29 2013-11-12 Flir Systems, Inc. Dual well read-out integrated circuit (ROIC)
US8605998B2 (en) 2011-05-06 2013-12-10 Toyota Motor Engineering & Manufacturing North America, Inc. Real-time 3D point cloud obstacle discriminator apparatus and associated methodology for training a classifier via bootstrapping
CN202182717U (zh) * 2011-08-30 2012-04-04 公安部第三研究所 一种基于tdc技术的激光测距装置
US8803579B2 (en) * 2011-09-08 2014-08-12 Bae Systems Information And Electronic Systems Integration Inc. Digitally controlled pulse width modulator utilizing real time calibration
KR101740259B1 (ko) 2011-10-07 2017-05-29 한국전자통신연구원 3차원 포인트 클라우드의 공간 분할 방법
CN102508255A (zh) 2011-11-03 2012-06-20 广东好帮手电子科技股份有限公司 车载四线激光雷达系统及其电路、方法
US8766682B2 (en) * 2012-01-24 2014-07-01 Voxtel, Inc. Method and device for measuring duration of a time interval
US8798372B1 (en) 2012-03-07 2014-08-05 Hrl Laboratories, Llc Method for detecting bridges using lidar point cloud data
CN102621540A (zh) * 2012-04-18 2012-08-01 北京理工大学 一种脉冲激光测距仪的测距方法
WO2013177650A1 (en) 2012-04-26 2013-12-05 Neptec Design Group Ltd. High speed 360 degree scanning lidar head
CN102707290A (zh) * 2012-05-02 2012-10-03 中山市柏棱光电有限公司 一种激光测距的方法
JP5963353B2 (ja) 2012-08-09 2016-08-03 株式会社トプコン 光学データ処理装置、光学データ処理システム、光学データ処理方法、および光学データ処理用プログラム
US9453907B2 (en) 2012-08-15 2016-09-27 Digital Signal Corporation System and method for field calibrating video and lidar subsystems using facial features
US20140071121A1 (en) 2012-09-11 2014-03-13 Digital Signal Corporation System and Method for Off Angle Three-Dimensional Face Standardization for Robust Performance
US9383753B1 (en) 2012-09-26 2016-07-05 Google Inc. Wide-view LIDAR with areas of special attention
CN102944224B (zh) 2012-11-09 2014-08-27 大连理工大学 一种无人驾驶车的自动环境感知系统的工作方法
US20140132723A1 (en) 2012-11-13 2014-05-15 Osmose Utilities Services, Inc. Methods for calibrating a digital photographic image of utility structures
CN103257342B (zh) 2013-01-11 2014-11-05 大连理工大学 三维激光传感器与二维激光传感器的联合标定方法
CN103116163B (zh) * 2013-01-29 2015-02-04 东南大学 一种激光传感响应测距装置及控制方法
JP2014145744A (ja) 2013-01-30 2014-08-14 Ricoh Co Ltd 物体検出装置
US8773182B1 (en) 2013-02-01 2014-07-08 Intel Corporation Stochastic beating time-to-digital converter (TDC)
US9128190B1 (en) 2013-03-06 2015-09-08 Google Inc. Light steering device with an array of oscillating reflective slats
JP6181388B2 (ja) 2013-03-08 2017-08-16 株式会社トプコン 計測装置
CN103257348B (zh) 2013-05-17 2015-05-20 南京航空航天大学 一种飞行器相对高度和相对姿态的测量系统及其测量方法
US9430822B2 (en) 2013-06-14 2016-08-30 Microsoft Technology Licensing, Llc Mobile imaging platform calibration
US8825260B1 (en) 2013-07-23 2014-09-02 Google Inc. Object and ground segmentation from a sparse one-dimensional range data
CN103499819B (zh) 2013-09-22 2015-06-24 中国科学院光电技术研究所 一种目标视线角偏移量及距离的测量装置和方法
CN203645633U (zh) 2013-12-31 2014-06-11 青岛歌尔声学科技有限公司 红外信号放大电路
US10061111B2 (en) 2014-01-17 2018-08-28 The Trustees Of Columbia University In The City Of New York Systems and methods for three dimensional imaging
JP6278721B2 (ja) 2014-01-31 2018-02-14 鎌倉光機株式会社 像安定化装置
US9606228B1 (en) * 2014-02-20 2017-03-28 Banner Engineering Corporation High-precision digital time-of-flight measurement with coarse delay elements
US9633483B1 (en) 2014-03-27 2017-04-25 Hrl Laboratories, Llc System for filtering, segmenting and recognizing objects in unconstrained environments
JP2015200555A (ja) * 2014-04-08 2015-11-12 パナソニックIpマネジメント株式会社 距離測定装置
GB201407270D0 (en) 2014-04-24 2014-06-11 Cathx Res Ltd 3D data in underwater surveys
US9098753B1 (en) 2014-04-25 2015-08-04 Google Inc. Methods and systems for object detection using multiple sensors
JP6249881B2 (ja) 2014-05-22 2017-12-20 オリンパス株式会社 固体撮像装置および撮像装置
CN103983963B (zh) 2014-06-09 2016-08-17 北京数字绿土科技有限公司 一种多站地基激光雷达数据的自动配准方法
CN106030431B (zh) 2014-08-15 2017-11-03 深圳市大疆创新科技有限公司 传感器的自动标定系统及方法
JP6442193B2 (ja) 2014-08-26 2018-12-19 株式会社トプコン 点群位置データ処理装置、点群位置データ処理システム、点群位置データ処理方法およびプログラム
US9720076B2 (en) * 2014-08-29 2017-08-01 Omnivision Technologies, Inc. Calibration circuitry and method for a time of flight imaging system
JP2016057108A (ja) 2014-09-08 2016-04-21 株式会社トプコン 演算装置、演算システム、演算方法およびプログラム
WO2016045009A1 (zh) 2014-09-24 2016-03-31 深圳市大疆创新科技有限公司 云台及其使用的成像装置、以及无人机
CN104363021B (zh) * 2014-10-08 2017-07-14 南京大学 基于fpga精细延迟单元的时间数字转换方法及装置
GB2532948B (en) 2014-12-02 2021-04-14 Vivo Mobile Communication Co Ltd Object Recognition in a 3D scene
CN104463872B (zh) 2014-12-10 2018-01-12 武汉大学 基于车载LiDAR点云数据的分类方法
CN104600902A (zh) 2015-01-09 2015-05-06 广东韦达尔科技有限公司 一种空心电机
US10539666B2 (en) 2015-01-21 2020-01-21 Mitsubishi Electric Corporation Laser radar device
WO2016127357A1 (zh) 2015-02-12 2016-08-18 中国科学技术大学 一种基于fpga的时间数字变换器
DE102015103472B4 (de) * 2015-03-10 2021-07-15 Sick Ag Entfernungsmessender Sensor und Verfahren zur Erfassung und Abstandsbestimmung von Objekten
US10315759B2 (en) 2015-04-04 2019-06-11 California Institute Of Technology Multi-rotor vehicle with yaw control and autorotation
GB2537681B (en) 2015-04-24 2018-04-25 Univ Oxford Innovation Ltd A method of detecting objects within a 3D environment
KR101665938B1 (ko) 2015-04-28 2016-10-13 전자부품연구원 미러 회전 방식의 다채널 라이더 스캐너 광학계
WO2016172891A1 (zh) * 2015-04-29 2016-11-03 深圳市大疆创新科技有限公司 电机、动力装置及使用该动力装置的无人飞行器
EP3098626B1 (de) * 2015-05-29 2021-05-19 Hexagon Technology Center GmbH Zeitmessschaltung und optoelektronischer distanzmesser mit einer ebensolchen zeitmessschaltung
CN104991242A (zh) * 2015-08-02 2015-10-21 江西恒盛晶微技术有限公司 一种基于apd和tdc的激光成像探测系统
JP6899368B2 (ja) 2015-08-03 2021-07-07 トムトム グローバル コンテント ベスローテン フエンノートシャップ ローカライゼーション基準データを生成及び使用する方法及びシステム
US9760996B2 (en) 2015-08-11 2017-09-12 Nokia Technologies Oy Non-rigid registration for large-scale space-time 3D point cloud alignment
CN106772405B (zh) * 2015-11-25 2019-08-30 南京理工大学 一种基于fpga的tdc激光测距方法
US10591600B2 (en) * 2015-11-30 2020-03-17 Luminar Technologies, Inc. Lidar system with distributed laser and multiple sensor heads
US9644857B1 (en) 2015-12-01 2017-05-09 Nasser Ashgriz Virtual thermostat for a zonal temperature control
US11010910B2 (en) 2015-12-18 2021-05-18 Iris Automation, Inc. Systems and methods for dynamic object tracking using a single camera mounted on a moving object
CN105759253B (zh) 2016-03-02 2018-01-12 四川经曼光电科技有限公司 激光扫描测距仪
CN105628026B (zh) 2016-03-04 2018-09-14 深圳大学 一种移动物体的定位定姿方法和系统
CN105842610A (zh) * 2016-03-31 2016-08-10 复旦大学 基于tdc的fpga电路传输延迟测试系统和方法
WO2017204998A2 (en) 2016-04-29 2017-11-30 United Parcel Service Of America, Inc. Unmanned aerial vehicle pick-up and delivery systems
CN106019923B (zh) * 2016-05-18 2018-11-13 中国科学技术大学 一种基于fpga的时间数字变换器
CN106093963B (zh) 2016-05-31 2018-08-24 中铁第四勘察设计院集团有限公司 一种提高铁路车载激光雷达扫描数据精度的方法
CN105932531B (zh) * 2016-05-31 2018-08-21 中国科学院高能物理研究所 高重复频率激光脉冲生成和延迟时间校准方法
CN106019296A (zh) 2016-07-26 2016-10-12 北醒(北京)光子科技有限公司 一种混合固态多线光学扫描测距装置
CN106302014B (zh) * 2016-08-12 2019-08-27 电信科学技术第五研究所有限公司 宽量程高精度的信号测量方法
CN106093958A (zh) 2016-08-24 2016-11-09 武汉万集信息技术有限公司 基于双apd的激光测距方法及装置
CN106597414B (zh) 2016-10-18 2020-01-10 浙江大学 一种定标偏振激光雷达增益比的方法
CN106597416B (zh) 2016-11-18 2019-04-09 长安大学 一种地面GPS辅助的LiDAR数据高程差的误差修正方法
CN206270493U (zh) * 2016-12-08 2017-06-20 北京万集科技股份有限公司 一种多路激光飞行时间并行采集系统
CN106970519A (zh) * 2017-05-17 2017-07-21 宁波大学 时间测试电路及时间测试方法
CN107037721B (zh) * 2017-06-16 2019-06-21 中国科学技术大学 一种自修正型时间数字转换器

Also Published As

Publication number Publication date
US20190064329A1 (en) 2019-02-28
US10641875B2 (en) 2020-05-05
CN111033312A (zh) 2020-04-17
US20190324127A1 (en) 2019-10-24
EP3472645A4 (en) 2019-07-17
WO2019041269A1 (en) 2019-03-07
JP2020526741A (ja) 2020-08-31
EP3472645A1 (en) 2019-04-24

Similar Documents

Publication Publication Date Title
JP6888216B2 (ja) 物体までの距離を測定するための装置および方法
US11982768B2 (en) Systems and methods for optical distance measurement
CN110809704B (zh) Lidar数据获取与控制
KR101357120B1 (ko) 광 신호를 이용한 거리 측정 방법 및 장치
JP6911249B2 (ja) 光検出及び測距方法、並びに光検出及び測距システム
US20210333375A1 (en) Time measurement correction method and device
KR102114781B1 (ko) 히페리온 라이더 시스템을 위한 초점면 2d apd 어레이의 구현
JP2020153707A (ja) 電子装置および方法
WO2021195831A1 (zh) 反射率的实时测量方法、装置、可移动平台和计算机可读存储介质
EP3447522A1 (en) Distance measuring apparatus, signal discriminator, and moving object
CN111983630B (zh) 一种单光子测距系统、方法、终端设备及存储介质
US20120069321A1 (en) Imaging device and circuit for same
KR102076478B1 (ko) 이동성 거울을 이용한 광 송수신기, 3차원 거리 측정 장치, 및 이동체
US9791556B2 (en) Range generation using multiple analog ramps
EP3848670A1 (en) Laser ranging method and device
US11555898B2 (en) Distance measuring device
US20220244385A1 (en) Lidar device and method of operating the same
Wang et al. LiDAR Ranging System Based on Automatic Gain Control and Timing Discriminators
CN117805782A (zh) 激光雷达的飞行时间测量方法及装置
CN116601527A (zh) 估计距离的激光雷达系统
Tan et al. Reach on laser imaging technology to terminal guidance

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200120

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210422

R150 Certificate of patent or registration of utility model

Ref document number: 6888216

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150