DE112020001413T5 - Flugzeit-entfernungs-rechner - Google Patents

Flugzeit-entfernungs-rechner Download PDF

Info

Publication number
DE112020001413T5
DE112020001413T5 DE112020001413.4T DE112020001413T DE112020001413T5 DE 112020001413 T5 DE112020001413 T5 DE 112020001413T5 DE 112020001413 T DE112020001413 T DE 112020001413T DE 112020001413 T5 DE112020001413 T5 DE 112020001413T5
Authority
DE
Germany
Prior art keywords
delay time
threshold
value
counter
snr
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.)
Pending
Application number
DE112020001413.4T
Other languages
English (en)
Inventor
c/o ams AG Jessenig Thomas
c/o ams AG Kappel Robert
c/o ams AG Lueger Manfred
c/o ams AG Mautner Christian
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.)
Ams International AG
Original Assignee
Ams International AG
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 Ams International AG filed Critical Ams International AG
Publication of DE112020001413T5 publication Critical patent/DE112020001413T5/de
Pending legal-status Critical Current

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/487Extracting wanted echo signals, e.g. pulse detection
    • G01S7/4873Extracting wanted echo signals, e.g. pulse detection by deriving and controlling a threshold value
    • 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
    • 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
    • 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/487Extracting wanted echo signals, e.g. pulse detection
    • 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/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar

Landscapes

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

Abstract

Verfahren zur Erfassung einer Flugzeit umfassen: Aussenden eines Lichtimpulses in Richtung eines Ziels; Erfassen des Vorhandenseins von Licht, das von einem Lichtdetektor empfangen wird; Ermitteln einer Verzögerungszeit zwischen dem Aussenden des Lichtimpulses und dem Erfassen des Vorhandenseins des Lichts am Lichtdetektor; als Reaktion auf das Erhalten der Verzögerungszeit, (a) Aktualisieren eines Gesamtintensitätszählers, der eine Gesamtzahl von Verzögerungszeiten zählt, die erhalten wurden, und (b) Aktualisieren eines Verzögerungszeitzählers aus einer Vielzahl von verschiedenen Verzögerungszeitzählern, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von erhaltenen Verzögerungszeiten zählt, die einen entsprechenden Verzögerungszeitwert haben; und Überwachen eines Schwellenwerts jedes Verzögerungszeitzählers, um zu bestimmen, ob ein Schwellenwert überschritten ist.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung bezieht sich auf die Berechnung von Flugzeiten und Entfernungen.
  • HINTERGRUND
  • Bei Time-of-Flight (TOF)-Anwendungen wird ein synchroner Lichtimpuls ausgesendet, und die Reflexion von einem Ziel wird von einem Hochgeschwindigkeits-Lichtsensor synchron gemessen. Die Zeitverzögerung zwischen dem Senden und dem Empfangen dieses Lichtimpulses wird in mehreren Zeitabschnitten (z. B. in einem Zähler) gespeichert, um ein Zeithistogramm zu erstellen. Es kann möglich sein, die Entfernung zum Objekt zu bestimmen, indem man den Bereich mit der größten Anzahl von Zählungen identifiziert und feststellt, mit welcher Zeitverzögerung dieser identifizierte Bereich verbunden ist.
  • ZUSAMMENFASSUNG
  • Im Allgemeinen wird der Gegenstand der vorliegenden Offenbarung in einigen Aspekten durch Verfahren verkörpert, die Folgendes umfassen: Aussenden eines Lichtimpulses in Richtung eines Ziels; Erfassen des Vorhandenseins von Licht, das von einem Lichtdetektor empfangen wird; Ermitteln einer Verzögerungszeit zwischen dem Aussenden des Lichtimpulses und dem Erfassen des Vorhandenseins des Lichts am Lichtdetektor; als Reaktion auf das Erhalten der Verzögerungszeit: (a) Aktualisieren eines Gesamtintensitätszählers, der eine Gesamtzahl von Verzögerungszeiten zählt, die erhalten wurden, und (b) Aktualisieren eines Verzögerungszeitzählers aus einer Vielzahl von verschiedenen Verzögerungszeitzählern, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von erhaltenen Verzögerungszeiten zählt, die einen entsprechenden Verzögerungszeitwert haben; und Überwachen eines Schwellenwerts jedes Verzögerungszeitzählers, um zu bestimmen, ob ein Schwellenwert überschritten wird.
  • Implementierungen der Verfahren können eines oder mehrere der folgenden Merkmale umfassen. In einigen Implementierungen umfassen die Verfahren beispielsweise: Bestimmen, dass ein erster Verzögerungszeitzähler den Schwellenwert auf der Grundlage der Überwachung überschreitet; und Berechnen einer Entfernung zu einem Ziel auf der Grundlage des Verzögerungszeitwerts, der mit dem ersten Verzögerungszeitzähler verbunden ist, der den Schwellenwert überschritten hat.
  • In einigen Implementierungen umfassen die Verfahren: Bestimmen, dass ein erster Verzögerungszeitzähler den Schwellenwert auf der Grundlage der Überwachung überschreitet; als Reaktion auf die Bestimmung, dass der erste Verzögerungszeitzähler den Schwellenwert überschreitet, Identifizieren eines Signal-Rausch-Schwellenwerts (SNR) für den ersten Verzögerungszeitzähler; und Bestimmen, ob der SNR-Schwellenwert einen Basisintensitätswert überschreitet. Die Verfahren können ferner umfassen: Feststellen, dass der SNR-Schwellenwert den Basisintensitätswert überschreitet; und Unterbrechen der Aktualisierung des Gesamtintensitätszählers und der mehreren Verzögerungszeitzähler. Die Verfahren können umfassen: Feststellen, dass der SNR-Schwellenwert den Basisintensitätswert nicht überschreitet; und Feststellen, ob der Schwellenwert einem Maximalwert des ersten Verzögerungszeitzählers entspricht. Die Verfahren können Folgendes umfassen: Feststellen, dass der Schwellenwert des ersten Verzögerungszeitzählers nicht dem Maximalwert des ersten Verzögerungszeitzählers entspricht; und Auswählen eines anderen Wertes als neuen Schwellenwert. Die Verfahren können beinhalten: Fortsetzen der Aktualisierung des Gesamtintensitätszählers und der mehreren Verzögerungszeitzähler, bis der neue Schwellenwert überschritten wird. Die Verfahren können umfassen: Bestimmen, dass der Schwellenwert des ersten Verzögerungszeitzählers der Maximalwert des ersten Verzögerungszeitzählers ist; Komprimieren eines dynamischen Bereichs der Vielzahl von Verzögerungszeitzählern, um einen neuen Schwellenwert zu erhalten; und Fortsetzen von Aktualisierungen des Gesamtintensitätszählers und der Vielzahl von Verzögerungszeitzählern, bis der neue Schwellenwert überschritten ist.
  • In einigen Ausführungsformen umfassen die Verfahren: Bestimmen, dass eine maximale Zeitspanne verstrichen ist, ohne dass einer der mehreren Verzögerungszeitzähler den Schwellenwert überschritten hat; Bestimmen einer Differenz zwischen einem aktuellen Wert jedes der Verzögerungszeitzähler und dem Schwellenwert; und für mindestens den Verzögerungszeitzähler mit der kleinsten Differenz, Berechnen einer Entfernung zu einem Ziel. Die Verfahren können vor der Berechnung des Abstands zum Ziel Folgendes umfassen: Identifizieren eines minimal erforderlichen Signal-Rausch-Werts (SNR) für den Schwellenwert; und Bestimmen, dass der minimal erforderliche SNR-Wert einen Basisintensitätswert überschreitet.
  • Im Allgemeinen wird der Gegenstand der vorliegenden Offenbarung in einigen Aspekten von Verfahren umfasst, die Folgendes umfassen: Aussenden eines Lichtimpulses in Richtung eines Ziels; Erfassen des Vorhandenseins von Licht, das an einem Lichtdetektor empfangen wird; Erhalten einer Verzögerungszeit zwischen dem Aussenden des Lichtimpulses und dem Erfassen des Vorhandenseins des Lichts an dem Lichtdetektor; als Reaktion auf das Erhalten der Verzögerungszeit, (a) Aktualisieren eines Gesamtintensitätszählers, der eine Gesamtzahl von Verzögerungszeiten zählt, die erhalten wurden, und (b) Aktualisieren eines Verzögerungszeitzählers aus einer Vielzahl von verschiedenen Verzögerungszeitzählern, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von erhaltenen Verzögerungszeiten zählt, die einen entsprechenden Verzögerungszeitwert haben; Bestimmen, dass eine maximale Zeitspanne verstrichen ist; als Reaktion auf das Bestimmen, dass die maximale Zeitspanne verstrichen ist, Bestimmen einer Differenz zwischen einem aktuellen Wert jedes der Verzögerungszeitzähler und einem Schwellenwert; und für mindestens den Verzögerungszeitzähler mit der kleinsten Differenz, Berechnen einer Entfernung zu einem Ziel.
  • Implementierungen der Verfahren können zum Beispiel vor der Berechnung eines Abstands zum Ziel Folgendes beinhalten: Identifizieren eines minimal erforderlichen Signal-Rausch-Werts (SNR) für den Schwellenwert; und Bestimmen, dass der minimal erforderliche SNR-Wert einen Basisintensitätswert übersteigt.
  • Im Allgemeinen wird der Gegenstand der vorliegenden Offenbarung in einigen Aspekten von Flugzeitüberwachungsschaltungen umfasst, die Folgendes umfassen einen Verzögerungszeitrechner, der so konfiguriert ist, dass er eine Lichtimpuls-Emissionszeit und eine Lichtimpuls-Detektionszeit erhält und eine Verzögerungszeit als Differenz zwischen der Lichtimpuls-Emissionszeit und der Lichtimpuls-Detektionszeit berechnet; einen Gesamtzähler, der mit dem Verzögerungszeitrechner gekoppelt und so konfiguriert ist, dass er eine Gesamtzahl von Verzögerungszeiten zählt, die von dem Verzögerungszeitrechner berechnet worden sind; eine Vielzahl von Verzögerungszeitzählern, die mit dem Verzögerungszeitrechner gekoppelt sind, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von Verzögerungszeiten mit einem entsprechenden Verzögerungszeitwert zählt, die von dem Verzögerungszeitrechner berechnet wurden; und eine Schwellenwertprüfschaltung, die mit der Vielzahl von Verzögerungszeitzählern gekoppelt ist, wobei die Schwellenwertprüfschaltung so konfiguriert ist, dass sie einen Schwellenwert jedes Verzögerungszeitzählers überwacht, um zu bestimmen, ob einer der Vielzahl von Verzögerungszeitzählern einen Schwellenwert überschreitet.
  • Implementierungen der Überwachungsschaltungen können eines oder mehrere der folgenden Merkmale aufweisen. In einigen Ausführungsformen umfasst die Flugzeitüberwachungsschaltung nach Anspruch 13 beispielsweise: einen Speicher mit einer Signal-Rausch-Nachschlagetabelle (SNR), die mit der Schwellenwertprüfungsschaltung verbunden ist. Der Speicher kann ferner eine Nachschlagetabelle für den Intensitätsschwellenwert enthalten.
  • Implementierungen der hier offengelegten Techniken und Geräte können mehrere Vorteile haben. Zum Beispiel erfordern die hierin offenbarten Techniken und Vorrichtungen in einigen Implementierungen keine hohe Verarbeitungsleistung, um einen Verzögerungszeitzähler mit dem höchsten Wert zu finden. Durch die Verringerung der erforderlichen Verarbeitungsleistung kann die Wärmeabgabe reduziert werden, was wiederum die Entwicklung von Flugzeitkameras mit höherer Auflösung ermöglicht.
  • Die Aufzeichnung und Erzeugung eines Histogramms von Flugzeitwerten kann eine erhebliche Menge an Energie verbrauchen. In einigen Implementierungen können die hier vorgestellten Techniken und Geräte verwendet werden, um die Integration zu beenden, wenn ein vorbestimmtes Signal-Rausch-Verhältnis (SNR) für die Erfassung einer Spitzenzahl von Verzögerungszeiten erreicht wird, was zu einer Verringerung der Verarbeitungsleistung führt.
  • In einigen Fällen ermöglicht die Reduzierung der Schaltkreisverarbeitung die Verwendung weniger verarbeitungsintensiver Schaltkreise. In einigen Fällen können solche Schaltungen sogar auf demselben Chip wie die Lichtemitter- und Detektorelemente implementiert werden, wodurch sich die Systemgröße verringert und in einigen Fällen eine Verringerung der Chipgröße (z. B. des Chips) ermöglicht wird. In einigen Fällen ermöglichen die hierin offenbarten Techniken und Vorrichtungen das Erreichen höherer Bildraten.
  • Die Einzelheiten einer oder mehrerer Ausführungsformen sind in den beigefügten Zeichnungen und der nachstehenden Beschreibung dargelegt. Weitere Merkmale und Vorteile werden aus der Beschreibung, den Zeichnungen und den Ansprüchen ersichtlich.
  • Figurenliste
    • eine schematische Darstellung eines ersten Teils einer beispielhaften Flugzeitüberwachungsschaltung.
    • ist ein Schema, das einen zweiten Teil der beispielhaften TOF-Überwachungsschaltung zeigt.
    • ist eine Darstellung eines Histogramms, das die Aufzeichnung von Verzögerungszeitzählungen durch verschiedene Verzögerungszeitzähler darstellt.
    • ist ein Schaltschema von beispielhaften Überlaufbit-Prüfschaltungen.
    • ist ein Flussdiagramm, das einen allgemeinen beispielhaften Prozess zur Berechnung der Entfernung zu einem Objekt auf der Grundlage von TOF-Informationen beschreibt.
    • sind ein Flussdiagramm, das einen allgemeinen beispielhaften Prozess zur Berechnung der Entfernung zu einem Objekt auf der Grundlage von TOF-Informationen beschreibt.
    • ist ein Diagramm, das ein Beispiel für die Kompression des Dynamikbereichs zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Eine Time-of-Flight (TOF)-Kamera versucht, die Entfernung zwischen dem Detektor und einem Objekt durch Messung der Umlaufzeit eines von der Kamera gelieferten Kunstlichtsignals aufzulösen. Exemplarische TOF-Kameras können viele Pixel enthalten, z. B. in der Größenordnung von 60 Pixeln oder mehr. Für jedes Pixel wird eine Verzögerungszeit zwischen der Aussendung eines Lichtsignals und seiner Erkennung nach der Reflexion am Objekt aufgezeichnet und in einem von mehreren Bins (z. B. 32 Bins) auf der Grundlage des jeweiligen Werts der Verzögerungszeit gespeichert, wodurch ein Histogramm der verschiedenen Verzögerungszeiten entsteht. Das Feld mit der höchsten Anzahl von Zählungen für einen bestimmten Verzögerungszeitwert kann, abhängig vom Signal-Rausch-Verhältnis, der tatsächlichen Zeit entsprechen, die ein Lichtsignal benötigt, um den Weg von der Kamera zum Objekt und zurück zur Kamera zurückzulegen. Andere Bins können ebenfalls Zählungen aufzeichnen, die auf Umgebungslicht oder andere unkorrelierte Quellen zurückzuführen sein können. Um festzustellen, welches Feld die meisten Zählungen aufweist und somit repräsentativ für die Flugzeit ist, kann ein Schaltkreis so konfiguriert werden, dass er die Werte der verschiedenen Felder vergleicht. Je nach Aufbau des Schaltkreises kann dieser Vorgang eine erhebliche Menge an Energie und Zeit in Anspruch nehmen.
  • Die vorliegende Offenbarung bezieht sich auf Techniken und Vorrichtungen zur Bereitstellung eines vereinfachten Auswertungsprozesses, mit dem bestimmt wird, welcher Behälter die größte Anzahl von Verzögerungszeitzählungen aufweist, und mit dem in bestimmten Fällen eine Verringerung der Verarbeitungszeit und -leistung erreicht werden kann. Insbesondere umfassen die hierin offenbarten Techniken zur Bestimmung, welcher Behälter die größte Anzahl von Verzögerungszeitzählungen aufweist, die Bereitstellung eines Verzögerungszeitzählers für jeden Behälter, wobei der Verzögerungszeitzähler die Anzahl von Verzögerungszeiten zählt, die für den Behälter gespeichert sind, dem der Zähler zugeordnet ist, und die Überwachung eines Schwellenwerts jedes Verzögerungszeitzählers, um festzustellen, ob ein Schwellenwert erreicht wurde. Wenn der Schwellenwert für einen Zähler erreicht wurde, wird die diesem Verzögerungszeitzähler zugeordnete Verzögerungszeit für die weitere Auswertung als die wahrscheinliche Zeit ausgewählt, die das Lichtsignal benötigt, um seine Rundreise abzuschließen. Indem der Schwellenwert betrachtet wird, anstatt die Werte der einzelnen Zähler miteinander zu vergleichen, ist es in einigen Implementierungen möglich, die für die Bestimmung der spezifischen Laufzeit benötigte Rechenleistung und Zeit erheblich zu reduzieren. Wenn ein Schwellenwert überschritten, aber ein gewünschtes Signal-Rausch-Verhältnis (SNR) nicht erreicht wird, können die derzeit offenbarten Techniken und Vorrichtungen außerdem dazu verwendet werden, einen dynamischen Bereich der Verzögerungszeitzähler zu komprimieren, so dass der Schwellenwert erhöht und ein gewünschtes SNR erreicht werden kann. Darüber hinaus können in einigen Fällen die derzeit offenbarten Techniken und Vorrichtungen verwendet werden, um die Integrationszeit einer Überwachungsschaltung zu beenden, wenn ein gewünschtes SNR erreicht wird, obwohl ein Schwellenwert nicht erreicht wurde, um
  • ist eine schematische Darstellung eines ersten Teils einer beispielhaften TOF-Überwachungsschaltung 100. Die TOF-Überwachungsschaltung 100 umfasst eine Lichtquelle 102 und einen Lichtdetektor 104. Die Lichtquelle 102 kann z. B. ein oberflächenemittierender Laser mit vertikalem Resonator oder eine lichtemittierende Diode sein, neben anderen Arten von Lichtquellen. Der Lichtdetektor 104 kann z. B. Photodioden wie eine Einzelphotonen-Lawinendiode oder eine Pinned-Photodiode und andere Arten von Detektoren umfassen. Die Lichtquelle sendet Licht aus, z. B. in Form von Lichtimpulsen, die sehr kurz sind. Das ausgestrahlte Licht leuchtet und kann von einem Objekt zurück zum Detektor 104 reflektiert werden. Der Detektor 104 zeichnet eine Messung des von dem Objekt reflektierten Lichts auf. In einigen Ausführungen kann der Detektor 104 beispielsweise ein einzelnes Photon aufzeichnen. In einigen Fällen zeichnet der Detektor 104 jedoch auch das „Vorhandensein“ eines Lichts auf, das fälschlicherweise auf Rauschen, z. B. Schussrauschen, zurückzuführen ist. In jedem Fall berechnet ein Verzögerungszeitrechner 106 der TOF-Überwachungsschaltung 100 eine Verzögerungszeit auf der Grundlage des Zeitpunkts, zu dem der Lichtimpuls von der Lichtquelle 102 ausgesendet wurde, und des Zeitpunkts, zu dem der reflektierte Lichtimpuls (oder das Rauschen) am Lichtdetektor 104 erfasst wurde. Obwohl die Lichtquelle 102, der Lichtdetektor 104 und der Verzögerungszeitrechner 106 hier als Teil der TOF-Überwachungsschaltung 100 dargestellt sind, kann jedes dieser Elemente oder alle diese Elemente separat von der TOF-Überwachungsschaltung 100 gebildet werden.
  • Je nach dem vom Verzögerungszeitrechner 106 ermittelten Wert kann einer von mehreren verschiedenen Verzögerungszeitzählern 110(i)-110(N) eine Zählung inkrementieren. Wenn der Verzögerungszeitrechner 106 beispielsweise eine Verzögerungszeit von 17 ns berechnet, kann ein Verzögerungszeitzähler, der Verzögerungszeiten zwischen 15 ns und 20 ns zugeordnet ist, inkrementiert werden. Wenn der Verzögerungszeitrechner 106 eine Verzögerungszeit von 12 ns berechnet, kann alternativ ein Verzögerungszeitzähler, der Verzögerungszeiten zwischen 10 und 15 ns zugeordnet ist, inkrementiert werden. Die Gesamtzahl der Verzögerungszeitzähler bestimmt die verfügbare Auflösung der TOF-Überwachungsschaltung. Die Gesamtzahl N der Verzögerungszeitzähler kann z. B. 16 Zähler, 24 Zähler, 32 Zähler, 40 Zähler, 50 Zähler und eine andere Anzahl von Zählern umfassen.
  • Die TOF-Überwachungsschaltung 100 enthält auch einen Gesamtzähler 108. Der Gesamtzähler 108 zählt eine Gesamtzahl von Verzögerungszeiten, die von der TOF-Überwachungsschaltung 100 aufgezeichnet werden. Das heißt, der Gesamtzähler 108 zählt als eine einzige Summe die Anzahl der von den Verzögerungszeitzählern 110 erfassten Verzögerungszeiten. Wenn beispielsweise ein erster Verzögerungszeitzähler 110(i) zwei Impulse aufzeichnet, ein zweiter Verzögerungszeitzähler 110(ii) zwei Impulse aufzeichnet und ein dritter Verzögerungszeitzähler 110(iii) zehn Impulse aufzeichnet, dann beträgt die Gesamtzahl der vom Gesamtzähler 108 aufgezeichneten Zählungen vierzehn.
  • Die TOF-Überwachungsschaltung 100 umfasst auch eine Schwellenwerterfassungsschaltung 112. Die Schwellenwerterkennungsschaltung 112 ist so konfiguriert, dass sie überwacht/bewertet, ob einer der Verzögerungszeitzähler 110 einen Schwellenwert erreicht hat. Indem überwacht wird, ob einer der Verzögerungszeitzähler 110 einen Schwellenwert erreicht hat, anstatt den Wert jedes Verzögerungszeitzählers 100 miteinander zu vergleichen, um zu sehen, welcher nach einer festgelegten Zeitspanne am größten ist, kann die Schwellenwerterfassungsschaltung 112 in bestimmten Implementierungen eine Verringerung der erforderlichen Verarbeitungszeit und des Stromverbrauchs bewirken. In ist beispielsweise ein Beispiel für eine auf diese Weise konfigurierte Schwellenwertüberwachungsschaltung 112 dargestellt. Insbesondere umfasst die Schwellenwertüberwachungsschaltung 112 von mehrere Überlaufbit-Prüfschaltungen 112(i) bis 112(N). Jede Überlaufbit-Prüfschaltung 112 ist mit einem anderen entsprechenden Verzögerungszeitzähler 110 verbunden. Genauer gesagt, überwacht jede Überlaufbit-Prüfschaltung 112 einen Wert eines einzelnen Bits in jedem entsprechenden Verzögerungszeitzähler 110. Das überwachte Bit kann als „Überlaufbit“ bezeichnet werden, das bei einer Zustandsänderung anzeigt, dass ein Schwellenwert erreicht wurde. Beispielsweise kann das Überlaufbit jedes Verzögerungszeitzählers 110 als das höchstwertige Bit des Zählers vordefiniert sein. Wenn das höchstwertige Bit seinen Zustand von 0 auf 1 ändert, kann dies bedeuten, dass ein Schwellenwert erreicht wurde, was wiederum bedeutet, dass eine vordefinierte Anzahl von Verzögerungszeitzählungen von diesem speziellen Zähler aufgezeichnet wurde. Die spezielle Überlaufbit-Prüfschaltung 112, die mit dem Verzögerungszeitzähler gekoppelt ist, bei dem der Schwellenwert erreicht wurde, kann dann ein Flag setzen, das diesen speziellen Verzögerungszeitzähler für den Rest des von der TOF-Überwachungsschaltung 100 durchgeführten Prozesses identifiziert. Die Position des Überlaufbits ist jedoch nicht auf das höchstwertige Bit des Zählers beschränkt, sondern kann jedes beliebige Bit innerhalb jedes Verzögerungszeitzählers sein. In bestimmten Ausführungsformen ist die Position des Überlaufbits in jedem Verzögerungszeitzähler gleich. Darüber hinaus muss die Überlauf- oder Schwellenwertbedingung nicht notwendigerweise auftreten, wenn der Bitzustand von 0 auf 1 wechselt, sondern kann auch auftreten, wenn der Bitzustand von 1 auf 0 wechselt. Die Gesamtzahl N der Überlaufbit-Prüfschaltungen 112 im Beispiel von ist gleich der Gesamtzahl der Verzögerungszeitzähler 110.
  • ist ein Schema, das einen zweiten Teil der beispielhaften TOF-Überwachungsschaltung 100 zeigt. Wie in dargestellt, sind sowohl der Gesamtzähler 108 als auch die Schwellenwert-Detektionsschaltung 112 (die aus mehreren Überlaufbit-Prüfschaltungen gebildet werden kann, wie hierin erläutert) mit einer TOF-Berechnungsschaltung 200 gekoppelt. Die TOF-Berechnungsschaltung 200 kann z.B. eine digitale Zustandsmaschine oder einen Mikroprozessor enthalten, der, wenn er programmiert ist, so konfiguriert ist, dass er die hierin beschriebenen Operationen durchführt. Die TOF-Berechnungsschaltung 200 kann eine Gesamtzählung der vom Gesamtzähler 108 aufgezeichneten Zeitverzögerungen empfangen. Die TOF-Berechnungsschaltung 200 kann auch die Gesamtzählungen empfangen, die von jedem einzelnen Zeitverzögerungszähler der Schwellenwerterfassungsschaltung 112 aufgezeichnet werden. Die TOF-Berechnungsschaltung 200 ist so konfiguriert, dass sie die empfangenen Zeitverzögerungszählungen und die Gesamtzahl der Verzögerungszeitzählungen verwendet, um eine Entfernung zu dem Objekt zu berechnen und zu bestimmen, ob sich ein Zielobjekt in Reichweite befindet. Darüber hinaus kann die TOF-Berechnungsschaltung 200 so konfiguriert sein, dass sie auswertet, ob die aufgezeichneten Zählungen einen gewünschten SNR-Schwellenwert erreichen, auswertet, ob eine Lichterfassungs-Integrationszeit erreicht wurde, und einen Schwellenwert für die Schwellenwerterfassungsschaltung 112 modifiziert.
  • Die TOF-Berechnungsschaltung 200 umfasst einen Speicher 202. Der Speicher 202 kann unter anderem Daten speichern, die eine SNR-Nachschlagetabelle 204 und eine Intensitätsschwellenwert-Nachschlagetabelle 206 darstellen. In der SNR-Nachschlagetabelle 204 kann z. B. ein erstes Array von SNR-Werten gespeichert werden, die entsprechend den entsprechenden Schwellenwerten indiziert sind. Beispielsweise kann jeder SNR-Wert in dem ersten Array einen vordefinierten SNR-Zielwert darstellen, der gewünscht wird, wenn ein bestimmter Schwellenwert eines Verzögerungszeitzählers erreicht wird. In einigen Implementierungen kann der im ersten Array identifizierte Schwellenwert durch die Bitposition dargestellt werden, die dem ausgewählten Überlaufbit eines Verzögerungszeitzählers entspricht, so dass die Schwellenwerte im ersten Array eine Funktion des ausgewählten Überlaufbits sind. Alternativ oder zusätzlich werden die SNR-Werte im ersten Array entsprechend einer kumulativen Verzögerungszeitzählung indiziert. Beispielsweise kann jeder SNR-Wert im ersten Array einen vordefinierten Ziel-SNR-Wert darstellen, der gewünscht wird, wenn eine bestimmte Schwellenanzahl von Verzögerungszeitzählungen aufgezeichnet wurde, so dass die SNR-Werte eine Funktion der Anzahl von Verzögerungszeitzählungen über alle Verzögerungszeitzähler, über einen einzelnen Verzögerungszeitzähler oder über mehrere Anzahlen von Verzögerungszeitzählern, die kleiner als alle Verzögerungszeitzähler sind, sind.
  • Die Intensitätsschwellenwert-Nachschlagetabelle 206 kann z. B. ein zweites Array von Intensitätsschwellenwerten speichern. Die Intensitätsschwellenwerte in dem zweiten Array können entsprechend den entsprechenden Schwellenwerten indiziert sein. Die Intensitätsschwellenwerte können beispielsweise eine vordefinierte Zielintensität für den Gesamtzähler 108 für die Zeitverzögerung in Abhängigkeit von dem jeweiligen ausgewählten Schwellenwert darstellen. In einigen Implementierungen kann der im ersten Array identifizierte Schwellenwert eine Funktion der Bitposition sein, die dem ausgewählten Überlaufbit eines Verzögerungszeitzählers entspricht. Alternativ oder zusätzlich werden die Intensitätsschwellenwerte im zweiten Array entsprechend dem Zeitschritt des Lichterfassungsprozesses indiziert. Das heißt, dass in einigen Implementierungen der hier offengelegte Lichterfassungsprozess einen definierten Startpunkt enthält, an dem das akkumulierte Licht zu integrieren beginnt. Der Integrationsprozess kann nach einer Uhr getaktet werden, die in vordefinierten Zeitschritten fortschreitet. Die Zielintensitätswerte des zweiten Arrays können dann als eine Funktion des jeweiligen Zeitschritts definiert werden. Alternativ oder zusätzlich können die Zielintensitätswerte in Abhängigkeit von der Gesamtzeit des Integrationsprozesses definiert werden. Das heißt, die Intensitätswerte können alternativ oder zusätzlich entsprechend einer kumulativen Integrationszeit, die verstrichen ist, indiziert werden. In einigen Ausführungsformen kann der Speicher 202 auch die von den Gesamtzählern 108 und den Überlaufbitprüfzählern 112 aufgezeichneten Zählerstände speichern.
  • Die TOF-Berechnungsschaltung 200 umfasst auch eine SNR- und Intensitätsbewertungsschaltung 208. Die SNR- und Intensitätsauswertungsschaltung 208 kann so konfiguriert sein, dass sie einen SNR-Wert aus den aufgezeichneten Verzögerungszeitzählungen ableitet und feststellt, ob der abgeleitete SNR-Wert ein bestimmtes minimales SNR erfüllt, das aus der SNR-Nachschlagetabelle 204 ermittelt wurde. Je nachdem, ob das minimale SNR erreicht wird und in einigen Fällen, ob andere Bedingungen erfüllt sind, kann die TOF-Berechnungsschaltung 200 weiterhin so konfiguriert sein, dass sie eine oder mehrere zusätzliche Operationen durchführt. In einigen Implementierungen kann die TOF-Berechnungsschaltung 200 zum Beispiel so konfiguriert sein, dass sie ein Histogramm der Verzögerungszeitzählungen komprimiert. Diese Komprimierung kann beispielsweise durch Subtraktion eines vordefinierten Wertes von einem maximalen Zählwert erreicht werden. In einigen Implementierungen kann die TOF-Berechnungsschaltung 200 so konfiguriert sein, dass sie die Integration stoppt, wenn ein minimaler SNR-Wert erreicht wird. In einigen Implementierungen kann die TOF-Berechnungsschaltung 200 so konfiguriert sein, dass sie eine Anzahl von Zählungen bestimmt, die erforderlich ist, um einen Schwellenwert zu erreichen, wenn das minimale SNR erreicht ist.
  • Die TOF-Berechnungsschaltung 200 umfasst auch einen TOF-Rechner 210. Der TOF-Rechner 210 kann so konfiguriert sein, dass er die Entfernung zu einem Objekt bestimmt. Beispielsweise kann der TOF-Rechner 210 so konfiguriert sein, dass er den Verzögerungszeitwert empfängt, der mit der größten Anzahl von Zählungen verbunden ist, und diesen Verzögerungszeitwert zur Berechnung der Entfernung zum Objekt verwendet.
  • ist eine Darstellung eines Histogramms, das die von verschiedenen Verzögerungszeitzählern, wie den in gezeigten Verzögerungszeitzählern 110, aufgezeichneten Verzögerungszeitwerte illustriert. Insbesondere stellt das Histogramm die Verteilung der Verzögerungszeitwerte dar, die von den verschiedenen Verzögerungszeitzählern 110 aufgezeichnet wurden. Die vertikale Achse stellt die Anzahl der Zählungen dar und die horizontale Achse (mit „Bin#“ beschriftet) die verschiedenen Verzögerungszeitwerte. So beträgt z. B. im Histogramm in die Gesamtzahl der Bins 32, was bedeutet, dass es 32 verschiedene Verzögerungszeitwerte (einschließlich Wertebereiche) gibt, die von der Schaltung 100 identifiziert werden können. Im Beispiel von übersteigt die Gesamtzahl der Zählungen selten 20. Im Allgemeinen können diese Zählungen auf Rauschen, z. B. Schussrauschen, und nicht auf einen echten Indikator für die Verzögerungszeit zwischen einem ausgesendeten und einem erfassten Impuls zurückzuführen sein. Im Gegensatz dazu weist ein Feld an Position 19 im Histogramm eine hohe Anzahl von Zählungen auf (z. B. mehr als 60), was darauf hindeutet, dass eine große Anzahl von Verzögerungszeiten mit dem dem Feld 19 zugeordneten Wert aufgezeichnet wurde. Wie hier erläutert, kann die TOF-Überwachungsschaltung 100 so konfiguriert sein, dass sie jedes Bin auswertet, um festzustellen, ob ein Schwellenwert erreicht wurde und, falls ja, ob eine oder mehrere andere Bedingungen erfüllt sind, bevor eine Entfernung zum Objekt bestimmt wird.
  • Wie hierin erläutert, umfasst die TOF-Überwachungsschaltung 100 eine Schwellenwerterfassungsschaltung 112, die so konfiguriert ist, dass sie überwacht/bewertet, ob einer der Verzögerungszeitzähler 110 einen Schwellenwert erreicht hat. Die Schwellenwerterfassungsschaltung 112 kann so konfiguriert sein, dass sie mehrere Überlaufbit-Prüfschaltungen 112 enthält, von denen jede einen Wert eines „Überlauf‟-Bits in einem entsprechenden Verzögerungszeitzähler 110 überwacht. ist eine schematische Darstellung von beispielhaften Überlaufbit-Prüfschaltungen 112. Insbesondere zeigt eine entsprechende Überlaufbit-Prüfschaltung 112(N) für jeden der N = 32 Verzögerungszeitzähler, wobei die Schaltungen 112(N=iii) bis 112(N=xxx) aus Gründen der Übersichtlichkeit weggelassen wurden. Am Beispiel der Überlaufbit-Prüfschaltung 112(i) zeigt sich, dass die Schaltung 112(i) mehrere n-Kanal-CMOS-Transistoren 402 enthält. Eine Source jedes Transistors 402 in der Schaltung 112(i) ist mit einem anderen Bit eines entsprechenden Verzögerungszeitzählers 110 (z. B. dem in dargestellten Verzögerungszeitzähler 110(i)) verbunden. Beispielsweise kann die Source des Transistors 402(a) mit einem Bit an der Bitposition Nummer 6 des Verzögerungszeitzählers 110(i) verbunden sein. In ähnlicher Weise kann die Quelle des Transistors 402(b) mit einem Bit an der Bitposition Nummer 7 des Verzögerungszeitzählers 110(i) verbunden sein, während die Quelle des Transistors 402(f) mit einem Bit an der Bitposition Nummer 11 des Verzögerungszeitzählers 110(i) verbunden sein kann. Transistoren, die mit den Bitpositionen 8-10 verbunden sind, werden aus Gründen der Übersichtlichkeit weggelassen. Ebenso ist, wie ebenfalls in gezeigt, eine Source jedes Transistors 402 in der Schaltung 112(ii) mit einem anderen Bit eines entsprechenden Verzögerungszeitzählers 110 (z. B. dem in gezeigten Verzögerungszeitzähler 110(ii)) verbunden. Ähnliche Konfigurationen gelten für jede Schaltung 112, d. h. die Quellen der Transistoren in jeder Schaltung 112 sind jeweils mit verschiedenen Bitpositionen der entsprechenden Verzögerungszeitzähler 110 verbunden.
  • Um zu bestimmen, welches Bit eines Verzögerungszeitzählers 110 von einer Schwellenwerterfassungsschaltung 112 überwacht wird, ist eine Auswahlbitleitung 404 mit dem Gate jedes Transistors 402 verbunden. Wenn die Auswahlbitleitung 404 auf „high“ gesetzt wird, schaltet dieses Auswahlbit den Transistor 402 ein, mit dem die Auswahlbitleitung 404 verbunden ist, so dass die Bitposition des entsprechenden Verzögerungszeitzählers 110 über die Drainleitung 406 ausgelesen werden kann. Wenn beispielsweise die Auswahlbitleitung 404(a) auf „high“ und die anderen Auswahlbitleitungen auf „low“ gesetzt sind, wird jeder der Transistoren 402(a) in den verschiedenen Schwellenwerterfassungsschaltungen 112 eingeschaltet, um den Ausgangswert der Bitposition 6 in den entsprechenden Verzögerungszeitzählern 110 auf die Drain-Leitung 406 zu lesen. Wenn andererseits die Auswahlbitleitung 404(f) auf „high“ und die anderen Auswahlbitleitungen auf „low“ gesetzt sind, wird jeder der Transistoren 402(f) in den verschiedenen Schwellenwerterfassungsschaltungen 112 eingeschaltet, um den Ausgangswert der Bitposition 11 in den entsprechenden Verzögerungszeitzählern 110 in die Drainleitung 406 einzulesen.
  • Ändert sich der Wert an der Abflussleitung 406 eines Schaltkreises 112 (z. B. von „1“ auf „0“ oder von „0“ auf „1“), so kann dies als Indikator dafür dienen, dass der diesem Schaltkreis 112 oder diesem Behälter zugeordnete Laufzeitzähler 110 den Schwellenwert erreicht hat. Dementsprechend kann der dem Zähler 110 zugeordnete Wert, der den Schwellenwert erreicht hat, für die tatsächliche Flugzeit repräsentativ sein. Wenn beispielsweise das Überlaufbit auf die Bitposition 6 des Zählers gesetzt ist, ist ein Schwellenwert erreicht, wenn ein Verzögerungszeitzähler 26 = 64 Zählungen eines bestimmten Verzögerungszeitwerts aufzeichnet (vgl. ).
  • In einigen Fällen kann das Signal-Rausch-Verhältnis zwischen der Anzahl der Zählungen und dem ermittelten durchschnittlichen Rauschen jedoch nicht hoch genug sein, um sicher zu sein, dass der bestimmte Verzögerungszeitwert dem wahren Flugzeitwert entspricht. Beispielsweise kann das Grundrauschen ( ) als der gesamte Verzögerungszeitzähler, der vom Summenzähler 108 erhalten wird, geteilt durch die Gesamtzahl der verschiedenen Verzögerungszeitzähler/Bins dargestellt werden. Wenn dieses Grundrauschen zu hoch ist, kann das SNR zu niedrig sein, obwohl der Schwellenwert für einen bestimmten Verzögerungszeitzähler erreicht wurde. In solchen Fällen kann die TOF-Überwachungsschaltung 100 den Schwellenwert erhöhen, damit die Zählung fortgesetzt und ein größeres SNR erreicht werden kann. Alternativ oder zusätzlich kann die TOF-Überwachungsschaltung 100 das Histogramm komprimieren, wie hier erläutert, um eine größere Anzahl von Zählungen zu ermöglichen und ein größeres SNR zu erreichen.
  • Alternativ dazu kann in einigen Implementierungen innerhalb eines vordefinierten Zeitfensters kein Schwellenwert erreicht werden, um zu bewerten, ob einer der Verzögerungszeitzähler einen Schwellenwert erreicht. In solchen Fällen kann die TOF-Überwachungsschaltung 100 die Integration beenden und das SNR für jeden Verzögerungszeitzähler bestimmen. Ist das SNR ausreichend, kann die TOF-Überwachungsschaltung 100 die Entfernung zum Objekt auf der Grundlage des Verzögerungszeitzählers mit der größten Anzahl von Verzögerungszeitzählungen zum Zeitpunkt der Beendigung der Integration berechnen. Wenn das SNR unzureichend ist, kann die TOF-Überwachungsschaltung 100 alternativ den Schwellenwert erhöhen und/oder das Histogramm komprimieren, um eine größere Anzahl von Zählungen zu erhalten und ein größeres SNR zu erreichen.
  • Weitere Einzelheiten zu den Prozessschritten eines TOF-Überwachungskreises werden im Folgenden dargelegt. ist beispielsweise ein Flussdiagramm, das einen allgemeinen beispielhaften Prozess 500 zur Berechnung der Entfernung zu einem Objekt auf der Grundlage von TOF-Informationen beschreibt. Der Prozess 50 kann von einer TOF-Überwachungsschaltung, wie der TOF-Überwachungsschaltung 100, durchgeführt werden. In einem ersten Schritt (502) wird ein Lichtimpuls von einem Lichtdetektor (z. B. dem Lichtdetektor 104) aufgezeichnet, aus dem eine Messung eines Verzögerungszeitwerts berechnet wird (z. B. durch den Verzögerungszeitrechner 106). Ein mit diesem berechneten Wert verbundener Bereich wird dann inkrementiert, wobei der Bereich auch daraufhin überwacht wird, ob er eine Schwellenanzahl von Zählungen erreicht. Beispielsweise kann ein dem Verzögerungszeitwert zugeordneter Verzögerungszeitzähler 110 inkrementiert werden und wird von der Schwellenwerterfassungsschaltung 112 daraufhin überwacht, ob ein vorgewähltes Überlaufbit gesetzt ist. Gleichzeitig wird in Schritt (504) eine Summe der Gesamtimpulszahl inkrementiert, z. B. unter Verwendung des Gesamtzählers 108.
  • Wenn die Anzahl der Verzögerungszeitzählungen einen Schwellenwert erreicht (z. B. wenn die Schwellenwerterkennungsschaltung 112 eine Änderung an dem vorgewählten Überlaufbit erkennt), wird ein SNR-Wert berechnet (506). Beispielsweise kann die TOF-Berechnungsschaltung 200 darüber informiert werden, dass eine der Überlaufprüfbit-Schaltungen 112 durch eine Zustandsänderung eines Überlaufbits ausgelöst wurde. Die TOF-Berechnungsschaltung 200 kann dann Informationen aus dem Verzögerungszeitzähler 110, der den Überlauf ausgelöst hat, sowie eine Gesamtsumme der vom Gesamtzähler 108 gezählten Verzögerungszeitwerte verwenden. Anhand dieser Informationen kann die TOF-Berechnungsschaltung 200 das SNR berechnen. Beispielsweise kann die TOF-Berechnungsschaltung 200 ein SNR als Verhältnis zwischen der Gesamtzahl der im Verzögerungszeitzähler 110 gezählten Verzögerungszeitwerte, die den Überlauf ausgelöst haben, und einer durchschnittlichen Anzahl gezählter Verzögerungszeitwerte ermitteln. Die durchschnittliche Anzahl der gezählten Verzögerungszeitwerte kann als die Gesamtzahl der vom Gesamtzähler 108 gezählten Verzögerungszeitwerte geteilt durch die Gesamtzahl der Bins, in die die Verzögerungszeitwerte unterteilt werden können, ausgedrückt werden.
  • Nachdem das SNR berechnet wurde, kann die TOF-Berechnungsschaltung 200 das berechnete SNR mit einem Mindest-SNR vergleichen. Das minimale SNR kann z. B. aus der SNR-Nachschlagetabelle 204 erhalten werden. Wie hierin erläutert, können die in der Nachschlagetabelle 204 gespeicherten minimalen SNR-Werte entsprechend dem Schwellenwert und/oder der Anzahl der Gesamtverzögerungszeitwerte indiziert sein. Dementsprechend kann das bestimmte minimale SNR, das aus der Nachschlagetabelle 204 abgerufen wird, z. B. in Abhängigkeit von dem bestimmten Schwellenwert, der überwacht wird, und/oder in Abhängigkeit von der Gesamtzahl der Verzögerungszeiten ausgewählt werden. Auf diese Weise können strengere Mindest-SNR-Werte für den Vergleich angewandt werden, wenn es weniger Messergebnisse gibt, was möglicherweise zu einem geringeren Vertrauen in die Analyse führt. Wenn der Schwellenwert beispielsweise eine erste Anzahl von Datenpunkten ist (z. B. 60 Zählungen eines bestimmten Verzögerungszeitwerts), wird ein erster Mindest-SNR-Wert aus der Nachschlagetabelle 204 abgerufen. Handelt es sich bei dem Schwellenwert jedoch um eine zweite Anzahl von Datenpunkten, die kleiner ist als die erste Anzahl (z. B. 40 Datenpunkte), dann kann ein zweiter, anderer minimaler SNR-Wert (z. B. ein höherer minimaler SNR-Wert) aus der Nachschlagetabelle 204 abgerufen werden.
  • Mit dem minimalen SNR, das aus der Nachschlagetabelle 204 abgerufen wird, wird der Vergleich mit dem berechneten SNR durchgeführt. Der Vergleich kann z. B. von der SNR- und Intensitätsauswertungsschaltung 208 durchgeführt werden. Wenn das berechnete SNR größer als das minimale SNR ist, kann die TOF-Überwachungsschaltung 100 die Integration beenden und einen Abstand zum Objekt berechnen (Schritt 520). Andernfalls, wenn das berechnete SNR kleiner als das minimale SNR ist, kann die TOF-Berechnungsschaltung 200 einen von zwei verschiedenen Schritten durchführen, um den berechneten SNR-Wert zu verbessern. Als erste Option kann die TOF-Berechnungsschaltung 200 den Schwellenwert erhöhen (508). Zum Beispiel kann die TOF-Berechnungsschaltung 200 die ausgewählte Bitposition jedes Verzögerungszeitzählers 110 ändern, der von den Überlaufbit-Prüfschaltungen 112 als Überlaufbit überwacht wird. In einem bestimmten Beispiel kann die TOF-Berechnungsschaltung 200 das Überlaufbit so inkrementieren, dass es das nächsthöhere Bit des Verzögerungszeitzählers ist. Durch das Inkrementieren des Überlaufbits ermöglicht die Schaltung die Aufzeichnung einer größeren Anzahl von Verzögerungszeitzählungen, wodurch das berechnete SNR potenziell erhöht wird.
  • Wenn die höchstwertigen Bits der Verzögerungszeitzähler 110 bereits als Überlaufbits ausgewählt sind, kann die TOF-Berechnungsschaltung 200 den dynamischen Zählbereich komprimieren (510). Beispielsweise kann die TOF-Berechnungsschaltung 200 einen festen Betrag vom maximalen Bereich der Zählungen jedes der Verzögerungszeitzähler 110 abziehen. Wenn beispielsweise die maximale Anzahl der aufgezeichneten Zählungen 2000 beträgt, kann ein fester Betrag von 1024 von dieser maximalen Zählung abgezogen werden, wodurch ein weiterer Bereich für die Aufzeichnung zusätzlicher Zählungen entsteht. Der Prozess 500 kann dann in Schritt 502 fortgesetzt werden, um Verzögerungszeitwerte zu berechnen und aufzuzeichnen.
  • Wie hier erläutert, kann der Integrationsprozess mit einem definierten Zeitfenster verbunden sein, in dem die Integration stattfindet. Alternativ oder zusätzlich kann die Aufzeichnung der Verzögerungszeitwerte mit einem vordefinierten Zeitschritt verbunden sein, der nach Ablauf dieses Zeitschritts die TOF-Überwachungsschaltung 100 veranlasst, den Integrationsprozess zu ändern.
  • In einigen Implementierungen kann z. B. ein Zeitschritt oder ein Zeitfenster für den Zeitraum, in dem die Verzögerungszeitwerte berechnet und gezählt werden, vordefiniert werden. Wenn dieser vordefinierte Zeitschritt oder dieses Zeitfenster erreicht ist, kann die TOF-Überwachungsschaltung 100 den Abstand zum Objekt berechnen, auch wenn der Schwellenwert nicht erreicht wurde. Beispielsweise kann die TOF-Überwachungsschaltung 100 in einigen Fällen, wie in gezeigt, bei Erreichen eines vordefinierten Zeitschritts oder Zeitfensters prüfen, ob eine erwartete Signalintensität für die vordefinierte Zeit erreicht wurde (512). In einem besonderen Beispiel kann die SNR- und Intensitätsauswertungsschaltung 208 aus der Intensitätsschwellenwert-Nachschlagetabelle 206 einen minimalen Intensitätsschwellenwert erhalten. Der Mindestintensitätsschwellenwert kann z. B. einer Mindestanzahl von Verzögerungszeitwerten entsprechen, die von der TOF-Überwachungsschaltung 100 aufgezeichnet werden. Wie hier erläutert, kann der Mindestintensitätsschwellenwert als Funktion der Integrationszeit (z. B. des vordefinierten Zeitschritts oder Zeitfensters) indiziert sein, wobei z. B. höhere Mindestintensitätsschwellenwerte für kürzere Integrationszeiten und niedrigere Werte für längere Integrationszeiten erforderlich sind. Alternativ oder zusätzlich kann der Mindestintensitätswert eine Funktion des durch das Überlaufbit gesetzten Schwellenwerts sein, wobei z. B. höhere Mindestintensitätswerte erforderlich sind, wenn die Bitposition weniger signifikant ist, und niedrigere Mindestintensitätswerte, wenn die Bitposition signifikant ist.
  • Unter Verwendung der aus der Nachschlagetabelle 208 und dem Gesamtverzögerungszeitzähler 108 erhaltenen Informationen kann die SNR- und Intensitätsauswertungsschaltung 208 in einigen Implementierungen auswerten, ob die Gesamtzahl der gezählten Verzögerungszeitwerte (wie vom Gesamtzähler 108 erhalten) den Mindestintensitätswert überschreitet. Wenn der Mindestwert nicht überschritten wird, kann die TOF-Überwachungsschaltung 100 den Prozess der Aufzeichnung von Verzögerungszeitwerten bei 502 fortsetzen, bis z. B. der nächste Zeitschritt erreicht ist.
  • Wenn der Mindestwert überschritten wird, kann die SNR- und Intensitätsauswertungsschaltung 208 einen tatsächlichen SNR-Wert berechnen und diesen tatsächlichen SNR-Wert mit einem aus der Nachschlagetabelle 204 erhaltenen erforderlichen Mindest-SNR-Wert vergleichen. Da der Schwellenwert für die Zählung der Verzögerungszeit jedoch noch nicht erreicht wurde, kann die TOF-Überwachungsschaltung 100 die Auslösung des Schwellenwerts veranlassen. In einigen Implementierungen kann die TOF-Überwachungsschaltung 11 beispielsweise die Bins (z. B. die Verzögerungszeitzähler 110) zwingen, zu inkrementieren (514), d. h. ohne einen durch einen tatsächlichen Lichtimpuls verursachten Verzögerungszeitwert aufzuzeichnen, bis der Schwellenwert für eines der Bins erreicht wird.
  • Sobald der Schwellenwert für einen der Verzögerungszeitzähler 110 erreicht ist, bewertet (516) die SNR- und Intensitätsauswertungsschaltung 208 das SNR für diesen bestimmten Zähler, wie zuvor hierin erläutert. Zum Beispiel erhält die SNR- und Intensitätsauswertungsschaltung 208 ein minimales SNR aus der Nachschlagetabelle 204 entsprechend dem vordefinierten Schwellenwert und/oder der Gesamtzahl der Verzögerungszeitwertzählungen.
  • Wenn das berechnete SNR das aus der Nachschlagetabelle 204 erhaltene Mindest-SNR nicht überschreitet, kann die TOF-Überwachungsschaltung 100 feststellen, dass sich kein Ziel in Reichweite befindet (518). Wenn das berechnete SNR das minimale SNR aus der Nachschlagetabelle 204 übersteigt, dann kann die TOF-Überwachungsschaltung 100 die Entfernung zum Objekt berechnen (200). In einigen Implementierungen wertet die TOF-Überwachungsschaltung 100 auch die Bins aus (519), die an das Bin angrenzen, das den Schwellenwert erreicht hat, um die Genauigkeit der Abstandsberechnung zu verbessern. Beispielsweise kann die TOF-Überwachungsschaltung 100 zusätzlich zur Berechnung des Abstands auf der Grundlage des Verzögerungszeitwerts, der dem Behälter zugeordnet ist, der den Schwellenwert erreicht hat, auch einen oder mehrere Abstände auf der Grundlage von Verzögerungszeitwerten berechnen, die dem nächstgelegenen Behälter oder den nächstgelegenen Behältern zu dem Behälter zugeordnet sind, der den Schwellenwert erreicht hat. In einigen Ausführungsformen kann die TOF-Überwachungsschaltung 100 den Abstand auf der Grundlage der Verzögerungszeitwerte berechnen, die mit den zwei, drei, vier, fünf oder sechs Ablagefächern verbunden sind, die dem Ablagefach, das den Schwellenwert erreicht hat, am nächsten liegen.
  • ist ein Flussdiagramm, das einen spezifischeren beispielhaften Prozess 600 zur Berechnung der Entfernung zu einem Objekt auf der Grundlage von TOF-Informationen beschreibt. Der Prozess 600 kann von einer TOF-Überwachungsschaltung, wie der TOF-Überwachungsschaltung 100, durchgeführt werden. In einem ersten Schritt (602) und vor dem Beginn der Integration wird ein Integrationszeitfenster definiert, ein Verzögerungszeitwert-Histogramm gelöscht und ein Schwellenwert für die Verzögerungszeit festgelegt. Die Definition des Integrationsfensters kann z. B. die Festlegung einer maximalen Integrationszeit sowie eines Zeitschritts beinhalten. Die maximale Integrationszeit kann als ein Vielfaches der Zeitschritte definiert werden. Das Löschen des Histogramms der Verzögerungszeitwerte kann z. B. dann bestehen, dass die Verzögerungszeitzähler 110 auf Null zurückgesetzt werden. Das Setzen eines Schwellenwerts für die Anzahl der Verzögerungszeitwerte kann z. B. die Auswahl einer bestimmten Bitposition jedes der Verzögerungszeitzähler 110 beinhalten, die als Überlauferkennungsbit dienen soll. Zum Beispiel kann der anfängliche Schwellenwert auf 16 Verzögerungszeitwerte eingestellt werden, was einer Bitposition von 4 für jeden Verzögerungszeitzähler 110 entsprechen würde. Nach der Initialisierung der TOF-Überwachungsschaltung wird die Integration gestartet (604).
  • In Schritt (606) akkumulieren die Histogramm-Bins (z. B. die Verzögerungszeitzähler 110) und ein Intensitätszähler (z. B. der Gesamtverzögerungszeitwertzähler 108) die Verzögerungszeitwertzählungen. In Schritt (608) wird festgestellt, ob ein Überlauf stattgefunden hat. So wird beispielsweise festgestellt, ob das Überlaufbit eines der Verzögerungszeitzähler 110 den Zustand gewechselt hat. Wenn kein Überlauf aufgetreten ist, fährt der Prozess 600 mit Schritt (610) fort, wo festgestellt wird, ob der vordefmierte Zeitschritt erreicht wurde. Wenn der vordefinierte Zeitschritt nicht erreicht wurde, wird der Integrationsprozess mit Schritt (606) fortgesetzt. Wenn ein Überlauf aufgetreten ist, hält die TOF-Überwachungsschaltung den Gesamtverzögerungszeitzähler auf seinem aktuellen Wert fest (612). In diesem Fall kann die Integration im Hintergrund weiterlaufen. Ein minimaler SNR-Zielwert wird dann aus einer SNR-Nachschlagetabelle (z. B. Tabelle 204) ermittelt (614). Der ausgewählte minimale SNR-Zielwert kann einen Wert haben, der eine Funktion des Schwellenwerts (z. B. des Überlaufbits) und/oder der Gesamtzahl der bisher aufgezeichneten Verzögerungszeitwerte ist.
  • Nachdem der Zielwert für das minimale SNR ermittelt wurde, wird das Ziel-SNR mit dem tatsächlichen SNR verglichen (616). Das tatsächliche SNR kann als das Verhältnis zwischen dem Schwellenwert und der durchschnittlichen Anzahl der Bins in allen Bins berechnet werden. Wenn der SNR-Schwellenwert erreicht wird, wird die Integration gestoppt (618) und der Prozess 600 wird mit B fortgesetzt (siehe , wo der Abstand zum Objekt berechnet wird. Wird der Ziel-SNR nicht erreicht, wird geprüft (620), ob der Schwellenwert der maximale Wert ist, der vom Verzögerungszeitzähler erfasst werden kann. So kann die TOF-Überwachungsschaltung beispielsweise prüfen, ob das Überlaufbit auf das höchstwertige Bit jedes Verzögerungszeitzählers gesetzt ist.
  • Wenn der Schwellenwert nicht der maximale Wert ist, der vom Verzögerungszeitzähler aufgezeichnet werden kann, kann der Schwellenwert erhöht werden (622). Die Erhöhung des Schwellenwerts kann z. B. darin bestehen, dass das Überlaufbit auf das nächsthöhere Bit verschoben wird. Beispielsweise kann das Überlaufbit von Bitposition 4 jedes Verzögerungszeitzählers auf Bitposition 5 jedes Verzögerungszeitzählers geändert werden. Wenn der Schwellenwert das Maximum ist, d. h. wenn das Überlaufbit auf das höchstwertige Bit des Verzögerungszeitzählers 110 gesetzt wird, kann der dynamische Bereich komprimiert werden. In einigen Implementierungen wird beispielsweise ein Wert (624) von allen Verzögerungszeitzählern subtrahiert, bevor das nächste Fenster beginnt. Dann wird eine zweite Prüfung durchgeführt, um festzustellen (626), ob am höchstwertigen Bit des Verzögerungszeitzählers noch ein Überlauf vorliegt. Liegt immer noch ein Überlauf vor, so meldet die TOF-Überwachungsschaltung 100 einen ungültigen Rahmen aufgrund eines Dynamikbereichsfehlers. Liegt kein Überlauf vor, kehrt der Integrationsprozess zu Schritt 606 zurück, wo er fortgesetzt wird, bis ein Überlaufereignis eintritt oder ein nächster Zeitschritt erreicht wird.
  • Wenn der nächste Zeitschritt erreicht ist, aber der Schwellenwert nicht erreicht wurde (z. B. wenn das Überlaufbit seinen Zustand nicht geändert hat), dann hält die TOF-Überwachungsschaltung den Gesamtzähler 108 fest und liest ihn mit seinem aktuellen Wert aus (628). Die TOF-Überwachungsschaltung kann auch einen Intensitätsschwellenwert aus einer Nachschlagetabelle (z. B. Nachschlagetabelle 206) nachschlagen (630). Der bestimmte Intensitätsschwellenwert, der aus der Nachschlagetabelle ermittelt wird, kann eine Funktion des vordefinierten Zeitschritts und Fensters des Integrationsprozesses sein. Anschließend wird ermittelt (632), ob der maximale Zeitschritt erreicht wurde. Wenn ein maximaler Zeitschritt erreicht wurde, fährt der Prozess 600 mit A fort (siehe . Wenn der maximale Zeitschritt nicht erreicht wurde, wird ein Vergleich (634) zwischen dem Schwellenwert des Intensitätszählers und der tatsächlichen Intensität (z. B. dem Wert des Gesamtzählers 108) durchgeführt. Wenn der Wert der tatsächlichen Intensität unter dem Schwellenwert liegt, kehrt der Prozess 600 zu Schritt (606) zurück, wo die Integration fortgesetzt wird. Ist der Wert der tatsächlichen Intensität größer als der Schwellenwert, geht das Verfahren zu A über.
  • Wie in gezeigt und bei A fortgesetzt, wird die Integration gestoppt (636), wenn der tatsächliche Intensitätswert größer ist als die aus der Lookup-Tabelle ermittelte Schwellenintensität. Der Intensitätszähler (z. B. der Gesamtzähler 108) wird ausgelesen (638). Dann wird eine globale Inkrementierung aller Verzögerungszeitzähler 110 durchgeführt (640), bis ein Schwellenwert (z. B. ein sich ändernder Zustand des Überlaufbits) erreicht ist. Die Anzahl der zum Erreichen des Schwellenwerts erforderlichen Inkremente kann im Speicher abgelegt werden. Sobald der Schwellenwert erreicht ist, wird ein minimaler SNR-Wert aus einer Nachschlagetabelle (z. B. Tabelle 204) ermittelt (642). Der aus der Nachschlagetabelle erhaltene SNR-Wert kann mit der Intensität (z. B. dem Gesamtzählerwert) verglichen werden (644). Wenn der SNR-Schwellenwert kleiner als der Intensitätszählerwert ist, dann bestimmt der Prozess 600, dass kein Ziel im Histogramm gefunden wurde (646). Wenn der SNR-Schwellenwert größer als der Intensitätswert ist, fährt der Prozess mit der Berechnung des Objektabstands fort. Der Prozess 600 kann zum Beispiel das Ablesen (648) der Verzögerungszeit-Zählerwerte der Bins beinhalten, die an das Bin angrenzen, das den Schwellenwert erreicht hat. Unter Verwendung der Informationen aus den benachbarten Fächern und dem Fach, das den Schwellenwert erreicht hat, kann die TOF-Überwachungsschaltung dann den Abstand zum Objekt berechnen (650), woraufhin der Prozess 600 endet.
  • ist ein Diagramm, das ein Beispiel für die Komprimierung des Dynamikbereichs gemäß der vorliegenden Offenlegung zeigt. Wie im Diagramm dargestellt, stellt die vertikale Achse die Anzahl der Histogrammtreffer dar. Dies könnte zum Beispiel die Anzahl der Verzögerungszeitwerte darstellen, die von einem der Verzögerungszeitzähler 110 aufgezeichnet wurden. Die horizontale Achse stellt die Gesamtzahl der Treffer dar, d. h. die Gesamtzahl der von der TOF-Überwachungsschaltung aufgezeichneten Verzögerungszeitwerte. Das Diagramm kann somit eine Darstellung des Signal-Rausch-Verhältnisses der TOF-Überwachungsschaltung in Abhängigkeit von der Veränderung der Anzahl der Treffer für einen bestimmten Verzögerungszeitzähler und der Gesamtzahl der Verzögerungszeitwerte liefern. Wenn ein Verzögerungszeitzähler seinen maximalen Wert erreicht, der aufgezeichnet werden kann, kann der dynamische Bereich des Zählers komprimiert werden, so dass die Zählung fortgesetzt werden kann. Eine Beispielimplementierung zur Komprimierung des dynamischen Bereichs besteht darin, eine feste Konstante vom Verzögerungszeitzähler zu subtrahieren. Wie in dargestellt, kann beispielsweise ein Wert von 1024 subtrahiert werden, sobald der Verzögerungszeitzähler seinen Höchstwert erreicht hat, so dass der Zähler mit der Gesamtzahl der von der TOF-Überwachungsschaltung aufgezeichneten Treffer weiterzählen kann.
  • Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands und der darin beschriebenen Aktionen und Operationen können in digitalen elektronischen Schaltkreisen, in greifbar verkörperter Computersoftware oder Firmware, in Computerhardware, einschließlich der in dieser Spezifikation offengelegten Strukturen und ihrer strukturellen Äquivalente, oder in Kombinationen aus einem oder mehreren davon implementiert werden. Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands können als ein oder mehrere Computerprogramme implementiert werden, z. B. als ein oder mehrere Module von Computerprogrammanweisungen, die auf einem Computerprogrammträger kodiert sind, zur Ausführung durch eine Datenverarbeitungsvorrichtung oder zur Steuerung des Betriebs einer solchen. Der Träger kann ein greifbares, nicht transitorisches Computerspeichermedium sein. Das Computerspeichermedium kann eine maschinenlesbare Speichervorrichtung, ein maschinenlesbares Speichersubstrat, eine Speichervorrichtung mit wahlfreiem oder seriellem Zugriff oder eine Kombination aus einem oder mehreren davon sein oder Teil davon sein. Ein Computer-Speichermedium ist kein verbreitetes Signal.
  • Der Begriff „Datenverarbeitungsgerät“ umfasst alle Arten von Geräten, Vorrichtungen und Maschinen zur Verarbeitung von Daten, darunter beispielsweise einen programmierbaren Prozessor, einen Computer oder mehrere Prozessoren oder Computer. Zu den Datenverarbeitungsgeräten können spezielle Logikschaltungen gehören, z. B. ein FPGA (Field Programmable Gate Array), ein ASIC (-Application Specific Integrated Circuit) oder eine GPU (Graphics Processing Unit). Das Gerät kann neben der Hardware auch Code enthalten, der eine Ausführungsumgebung für Computerprogramme schafft, z. B. Code, der eine Prozessor-Firmware, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem oder eine Kombination aus einem oder mehreren dieser Systeme darstellt.
  • Ein Computerprogramm, das auch als Programm, Software, Softwareanwendung, App, Modul, Softwaremodul, Engine, Skript oder Code bezeichnet oder beschrieben werden kann, kann in jeder Form von Programmiersprache geschrieben sein, einschließlich kompilierter oder interpretierter Sprachen oder deklarativer oder prozeduraler Sprachen; und sie kann in jeder Form eingesetzt werden, einschließlich als eigenständiges -Programm oder als Modul, Komponente, Engine, Unterprogramm oder andere Einheit, die zur Ausführung in einer Computerumgebung geeignet ist, wobei diese Umgebung einen oder mehrere Computer umfassen kann, die durch ein Datenkommunikationsnetz an einem oder mehreren Orten miteinander verbunden sind.
  • Ein Computerprogramm kann, muss aber nicht, einer Datei in einem Dateisystem entsprechen. Ein Computerprogramm kann in einem Teil einer Datei gespeichert werden, die auch andere Programme oder Daten enthält, z. B. in einem oder mehreren Skripten, die in einem Auszeichnungssprachendokument gespeichert sind, in einer einzelnen Datei, die dem betreffenden Programm gewidmet ist, oder in mehreren koordinierten Dateien, z. B. Dateien, die ein oder mehrere Module, Unterprogramme -oder Teile des Codes speichern.
  • In einigen Fällen können die in dieser Spezifikation beschriebenen Prozesse und logischen Abläufe von einem oder mehreren Computern ausgeführt werden, die ein oder mehrere Computerprogramme ausführen, um Operationen durchzuführen, indem sie auf Eingabedaten einwirken und Ausgaben erzeugen. Die Prozesse und Logikflüsse können auch von speziellen Logikschaltungen, z. B. einem FPGA, einem ASIC oder einer GPU, oder von einer Kombination aus speziellen Logikschaltungen und einem oder mehreren programmierten Computern ausgeführt werden.
  • Computer, die für die Ausführung eines Computerprogramms geeignet sind, können auf allgemeinen oder speziellen Mikroprozessoren oder auf beiden oder auf jeder anderen Art von Zentraleinheit basieren. Im Allgemeinen empfängt eine Zentraleinheit Befehle und Daten aus einem -Festwertspeicher oder einem Speicher mit wahlfreiem Zugriff oder aus beiden. Die wesentlichen Elemente eines Computers sind eine zentrale Verarbeitungseinheit zur Ausführung von Befehlen und ein oder mehrere Speichergeräte zur Speicherung von Befehlen und Daten. Die zentrale Verarbeitungseinheit und der Speicher können durch spezielle Logikschaltungen ergänzt werden oder in diese integriert sein.
  • Im Allgemeinen umfasst ein Computer auch ein oder mehrere Massenspeichergeräte oder ist mit diesen betriebsbereit verbunden, um Daten von ihnen zu empfangen oder an sie zu übertragen. Bei den Massenspeichergeräten kann es sich beispielsweise um magnetische, magneto-optische -oder optische Platten oder um Festkörperlaufwerke handeln. Ein Computer muss jedoch nicht über solche Geräte verfügen. Außerdem kann ein Computer in ein anderes Gerät eingebettet sein, z. B. in ein Mobiltelefon, einen persönlichen digitalen Assistenten (PDA), einen mobilen Audio- oder Videoplayer, eine Spielkonsole, einen GPS-Empfänger (Global Positioning System) oder ein tragbares Speichergerät, z. B. ein USB-Flash-Laufwerk (Universal Serial Bus), um nur einige zu nennen.
  • In dieser Spezifikation wird der Begriff „konfiguriert für“ in Verbindung mit Systemen, Geräten und Computerprogrammkomponenten verwendet. Wenn ein System aus einem oder mehreren Computern so konfiguriert ist, dass es bestimmte Operationen oder Aktionen ausführt, bedeutet dies, dass auf dem System Software, Firmware, Hardware oder eine Kombination davon installiert ist, die im Betrieb das System veranlassen, die Operationen oder Aktionen auszuführen. Dass ein oder mehrere Computerprogramme so konfiguriert sind, dass sie bestimmte Operationen oder Aktionen ausführen, bedeutet, dass das eine oder die mehreren Programme Befehle enthalten, die, wenn sie von einem Datenverarbeitungsgerät ausgeführt werden, das Gerät veranlassen, die Operationen oder Aktionen auszuführen. Wenn ein spezieller Logikschaltkreis so konfiguriert ist, dass er bestimmte Operationen oder Aktionen ausführt, bedeutet dies, dass der Schaltkreis eine elektronische Logik enthält, die die Operationen oder Aktionen ausführt.
  • Es wurde eine Reihe von Ausführungsformen beschrieben. Es versteht sich jedoch von selbst, dass verschiedene Änderungen vorgenommen werden können, ohne vom Geist und Umfang der Erfindung abzuweichen. Dementsprechend fallen auch andere Ausführungsformen in den Anwendungsbereich der folgenden Ansprüche.

Claims (15)

  1. Verfahren, das Folgendes umfasst: Aussenden eines Lichtimpulses auf ein Ziel; Erfassen des Vorhandenseins von Licht, das von einem Lichtdetektor empfangen wird; Ermitteln einer Verzögerungszeit zwischen dem Aussenden des Lichtimpulses und dem Erfassen des Vorhandenseins des Lichts an dem Lichtdetektor; als Reaktion auf das Erhalten der Verzögerungszeit, (a) Aktualisieren eines Gesamtintensitätszählers, der eine Gesamtzahl von Verzögerungszeiten zählt, die erhalten wurden, und (b) Aktualisieren eines Verzögerungszeitzählers aus einer Vielzahl von verschiedenen Verzögerungszeitzählern, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von erhaltenen Verzögerungszeiten zählt, die einen entsprechenden Verzögerungszeitwert haben; und Überwachen eines Schwellenwertes jedes Verzögerungszeitzählers, um zu bestimmen, ob ein Schwellenwert überschritten wird.
  2. Verfahren nach Anspruch 1, femer umfassend: Bestimmen, dass ein erster Verzögerungszeitzähler den Schwellenwert überschreitet, basierend auf der Überwachung; und Berechnen einer Entfernung zu einem Ziel auf der Grundlage des Verzögerungszeitwerts, der mit dem ersten Verzögerungszeitzähler, der den Schwellenwert überschritten hat, verbunden ist.
  3. Verfahren nach Anspruch 1, umfassend: Bestimmen, dass ein erster Verzögerungszeitzähler den Schwellenwert überschreitet, basierend auf der Überwachung; als Reaktion auf die Feststellung, dass der erste Verzögerungszeitzähler den Schwellenwert überschreitet, Identifizieren eines Signal-Rausch-Schwellenwertes (SNR) für den ersten Verzögerungszeitzähler; und Bestimmen, ob der SNR-Schwellenwert einen Grundlinienintensitätswert überschreitet.
  4. Verfahren nach Anspruch 3 umfasst: Bestimmen, dass der SNR-Schwellenwert den Basisintensitätswert überschreitet; und Unterbrechen von Aktualisierungen des Gesamtintensitätszählers und der Vielzahl von Verzögerungszeitzählern.
  5. Verfahren nach Anspruch 3 umfasst: Bestimmen, dass der SNR-Schwellenwert den Basisintensitätswert nicht überschreitet; und Bestimmen, ob der Schwellenwert einem Maximalwert des ersten Verzögerungszeitzählers entspricht.
  6. Verfahren nach Anspruch 5 umfasst: Feststellen, dass der Schwellenwert des ersten Verzögerungszeitzählers nicht der Maximalwert des ersten Verzögerungszeitzählers ist; und Auswählen eines anderen Wertes als neuen Schwellenwert.
  7. Verfahren nach Anspruch 6, bei dem die Aktualisierung des Gesamtintensitätszählers und der mehreren Verzögerungszeitzähler fortgesetzt wird, bis der neue Schwellenwert überschritten wird.
  8. Verfahren nach Anspruch 5 umfasst: Bestimmen, dass der Schwellenwert des ersten Verzögerungszeitzählers der Maximalwert des ersten Verzögerungszeitzählers ist; Komprimieren eines dynamischen Bereichs der Vielzahl von Verzögerungszeitzählern, um einen neuen Schwellenwert zu erhalten; und Fortsetzen von Aktualisierungen des Gesamtintensitätszählers und der mehreren Verzögerungszeitzähler, bis der neue Schwellenwert überschritten ist.
  9. Verfahren nach Anspruch 1 umfasst: Bestimmen, dass eine maximale Zeitperiode verstrichen ist, ohne dass einer der mehreren Verzögerungszeitzähler den Schwellenwert überschritten hat; Bestimmen einer Differenz zwischen einem aktuellen Wert jedes der Verzögerungszeitzähler und dem Schwellenwert; und für mindestens den Verzögerungszeitzähler mit der kleinsten Differenz, Berechnen einer Entfernung zu einem Ziel.
  10. Verfahren nach Anspruch 9, das femer vor der Berechnung der Entfernung zum Ziel Folgendes umfasst Identifizieren eines minimal erforderlichen Signal-Rausch-Werts (SNR) für den Schwellenwert; und Bestimmen, dass der minimal erforderliche SNR-Wert einen Basisintensitätswert überschreitet.
  11. Verfahren, das Folgendes umfasst: Aussenden eines Lichtimpulses auf ein Ziel; Erfassen des Vorhandenseins von Licht, das von einem Lichtdetektor empfangen wird; Ermitteln einer Verzögerungszeit zwischen dem Aussenden des Lichtimpulses und dem Erfassen des Vorhandenseins des Lichts an dem Lichtdetektor; als Reaktion auf das Erhalten der Verzögerungszeit, (a) Aktualisieren eines Gesamtintensitätszählers, der eine Gesamtzahl von Verzögerungszeiten zählt, die erhalten wurden, und (b) Aktualisieren eines Verzögerungszeitzählers aus einer Vielzahl von verschiedenen Verzögerungszeitzählern, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von erhaltenen Verzögerungszeiten zählt, die einen entsprechenden Verzögerungszeitwert haben; Bestimmen, dass eine maximale Zeitspanne verstrichen ist; als Reaktion auf die Feststellung, dass die maximale Zeitdauer verstrichen ist, Bestimmen einer Differenz zwischen einem aktuellen Wert jedes der Verzögerungszeitzähler und einem Schwellenwert; und für mindestens den Verzögerungszeitzähler mit der kleinsten Differenz, Berechnen einer Entfernung zu einem Ziel.
  12. Verfahren nach Anspruch 11, vor dem Berechnen einer Entfernung zum Ziel: Identifizieren eines minimal erforderlichen Signal-zu-Rausch-Wertes (SNR) für den Schwellenwert; und Bestimmen, dass der minimal erforderliche SNR-Wert einen Basisintensitätswert überschreitet.
  13. Flugzeitüberwachungsschaltung, umfassend: einen Verzögerungszeitrechner, der so konfiguriert ist, dass er eine Lichtimpuls-Emissionszeit und eine Lichtimpuls-Erfassungszeit erhält und eine Verzögerungszeit als eine Differenz zwischen der Lichtimpuls-Emissionszeit und der Lichtimpuls-Erfassungszeit berechnet; einen Gesamtzähler, der mit dem Verzögerungszeitrechner gekoppelt und so konfiguriert ist, dass er eine Gesamtzahl von Verzögerungszeiten zählt, die von dem Verzögerungszeitrechner berechnet wurden; eine Vielzahl von Verzögerungszeitzählern, die mit der Verzögerungszeitberechnungseinrichtung gekoppelt sind, wobei jeder Verzögerungszeitzähler eine Gesamtzahl von Verzögerungszeiten mit einem entsprechenden Verzögerungszeitwert zählt, die von der Verzögerungszeitberechnungseinrichtung berechnet worden sind; und eine Schwellenwertprüfschaltung, die mit der Vielzahl von Verzögerungszeitzählern gekoppelt ist, wobei die Schwellenwertprüfschaltung so konfiguriert ist, dass sie einen Schwellenwert jedes Verzögerungszeitzählers überwacht, um festzustellen, ob einer der Vielzahl von Verzögerungszeitzählem einen Schwellenwert überschreitet.
  14. Flugzeitüberwachungsschaltung nach Anspruch 13, die ferner Folgendes umfasst: Speicher mit einer Signal-Rausch-(SNR)-Nachschlagetabelle, die mit der Schwellenwertprüfschaltung verbunden ist.
  15. Flugzeitüberwachungsschaltung nach Anspruch 14, wobei der Speicher ferner eine Intensitätsschwellenwert-Nachschlagetabelle umfasst.
DE112020001413.4T 2019-03-22 2020-03-18 Flugzeit-entfernungs-rechner Pending DE112020001413T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962822148P 2019-03-22 2019-03-22
US62/822148 2019-03-22
US201962870195P 2019-07-03 2019-07-03
US62/870195 2019-07-03
PCT/EP2020/057447 WO2020193313A1 (en) 2019-03-22 2020-03-18 Time-of-flight to distance calculator

Publications (1)

Publication Number Publication Date
DE112020001413T5 true DE112020001413T5 (de) 2021-12-16

Family

ID=69846141

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020001413.4T Pending DE112020001413T5 (de) 2019-03-22 2020-03-18 Flugzeit-entfernungs-rechner

Country Status (4)

Country Link
US (1) US20220163645A1 (de)
CN (1) CN113631956A (de)
DE (1) DE112020001413T5 (de)
WO (1) WO2020193313A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022112700A (ja) * 2021-01-22 2022-08-03 キヤノン株式会社 光電変換装置、光検出システム、および移動体
US20220365180A1 (en) * 2021-05-12 2022-11-17 Continental Automotive Systems, Inc. Lidar system with sensitivity adjustment
WO2024002593A1 (en) * 2022-07-01 2024-01-04 Ams-Osram Ag Optoelectronic sensor for a time-of-flight measurement and method for a time-of-flight measurement

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7688944B2 (en) * 2005-07-01 2010-03-30 Mayo Foundation For Medical Education And Research System and method for time-of-flight imaging
JP5466806B2 (ja) * 2006-09-21 2014-04-09 株式会社トプコン 光波距離測定方法、距離測定プログラム及び距離測定装置
US9696412B2 (en) * 2012-02-16 2017-07-04 Nucript LLC System and method for measuring optical delay using a single photon detector with pulsed optical signals
CN103969222B (zh) * 2014-04-24 2015-08-19 中国科学院合肥物质科学研究院 一种基于时间相关单光子计数的非门控液体浊度测量装置的测量方法
JP6443132B2 (ja) * 2015-03-03 2018-12-26 株式会社デンソー 演算装置
JP2019002760A (ja) * 2017-06-14 2019-01-10 オムロンオートモーティブエレクトロニクス株式会社 距離計測装置
DE102017113675B4 (de) * 2017-06-21 2021-11-18 Sick Ag Optoelektronischer Sensor und Verfahren zur Messung der Entfernung zu einem Objekt
KR101938984B1 (ko) * 2017-08-09 2019-04-10 연세대학교 산학협력단 Spad 거리측정 센서 기반의 2단계 트래킹을 이용한 거리 측정 장치 및 방법
JP6874592B2 (ja) * 2017-08-23 2021-05-19 株式会社リコー 時間測定装置、距離測定装置、移動体、時間測定方法、及び距離測定方法

Also Published As

Publication number Publication date
WO2020193313A1 (en) 2020-10-01
US20220163645A1 (en) 2022-05-26
CN113631956A (zh) 2021-11-09

Similar Documents

Publication Publication Date Title
DE102017113675B4 (de) Optoelektronischer Sensor und Verfahren zur Messung der Entfernung zu einem Objekt
DE112020001413T5 (de) Flugzeit-entfernungs-rechner
DE102017113674B4 (de) Optoelektronischer Sensor und Verfahren zur Messung der Entfernung zu einem Objekt
DE102017207317B4 (de) Vorrichtung zur Ermittlung eines Abstands zu einem Objekt sowie entsprechendes Verfahren
EP3185038B1 (de) Optoelektronischer sensor und verfahren zur messung einer entfernung
DE112017005641T5 (de) Histogramm-Ausleseverfahren und Histogramm-Ausleseschaltkreis zum Ermitteln der Flugzeit eines Photons
DE102017202353B4 (de) Vorrichtung zur ermittlung eines abstands zu einem objekt und entsprechendes verfahren
DE102019004031B4 (de) Abstandsmessvorrichtung, die Genauigkeitsinformation ausgibt
DE102015204004A1 (de) Laserradargerät und Objektermittlungsverfahren
DE102018109014A1 (de) Optoelektronischer Sensor und Verfahren zur Erfassung und Abstandsbestimmung eines Objekts
DE69818763T2 (de) Verfahren und Vorrichtung zum Lesen von Datensignalen, die von einem aktive Pixel eines Sensors ausgegeben werden
DE112019001346T5 (de) Lichtdetektionsvorrichtung, lichtdetektionsverfahren und optischer abstandssensor
DE102018213819B3 (de) Vorrichtung und Verfahren für TDC-Sharing bei laufzeitbasierter Distanzmessung
DE102019202459A1 (de) Lasermessvorrichtung zum Messen von Entfernungen und Verfahren zum Betreiben einer Lasermessvorrichtung zum Messen von Entfernungen
DE102017220774B4 (de) Vorrichtung und Verfahren zum Bestimmen einer Distanz zu einem Objekt
WO2020234216A1 (de) Betriebsverfahren und steuereinheit für eine spad-basierte detektoranordnung, lidar-system und arbeitsvorrichtung
DE202014007924U1 (de) Sensor mit Hintergrundausblendung
DE102020132971A1 (de) Lichtdetektionssystem und verfahren dafür
DE102021205484B4 (de) Lasermessvorrichtung zum messen von entfernungen verfahren zum betreiben einer lasermessvorrichtung zum messen von entfernungen
DE102016224509A1 (de) Empfängeranordnung und Verfahren zum Empfang wenigstens eines Lichtimpulses und zur Ausgabe eines Empfangssignals
EP3951425A1 (de) Verfahren sowie messvorrichtung zur bestimmung einer distanz
DE2525831A1 (de) Einrichtungen und verfahren zur darstellung unregelmaessig auftretender strahlungsereignisse
DE102019201739A1 (de) Vorrichtung und Verfahren für Time-Gating in laufzeitbasierter Distanzmessung
DE4233278A1 (de) Verfahren zur Unterdrückung von Fremdstrahlungseinflüssen bei radioaktiven Meßverfahren
DE102018208647A1 (de) Lasermesseinrichtung zur Messung einer Distanz zu einem Objekt sowie Verfahren zum Betreiben derselben

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: VIERING, JENTSCHURA & PARTNER MBB PATENT- UND , DE