The present disclosure relates to a measurement device, a measurement method, and a program, and more particularly to a measurement device, a measurement method, and a program capable of measuring a distance with high accuracy in a shorter time.
Conventionally, in time of flight (TOF), which is a technique for measuring a distance using a flight time of light, a time from when pulsed laser light is output toward a distance measurement target until a pulse of reflected light, which is laser light reflected by the distance measurement target and returned, is received is measured. Then, a processing cycle of outputting the pulsed laser light is repeated, a histogram of measurement values measured in a plurality of the processing cycles is generated, and the distance to the distance measurement target is calculated on the basis of the measurement value indicating a peak of the histogram.
For example, Patent Document 1 discloses an optical distance measurement device that combines a plurality of light receiving signals output from a plurality of light receiving pixels to improve detection performance for an object to be measured located far away or an object to be measured with low reflectance.
By the way, in the conventional TOF, in a case of emitting a pulse of laser light at the same emission timing (for example, the same timing as the start of each processing cycle, timing when the same fixed time has elapsed from the start of each processing cycle, or the like) in each processing cycle, a time required for measurement becomes long, for example, there are some cases where a time required for measurement becomes long or differential non-linearity (DNL) directly affects distance measurement accuracy.
The present disclosure has been made in view of such a situation, and an object of the present disclosure is to enable measurement of a distance with high accuracy in a shorter time.
A measurement device according to one aspect of the present disclosure includes an emission timing signal generation unit configured to generate a signal for giving an instruction on emission timing to emit a pulse of laser light repeatedly for each predetermined processing cycle; a counter configured to continuously count a count code at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and a timing instruction unit configured to make an emission delay value different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and instruct the emission timing signal generation unit on the emission delay value.
A measurement method or a program according to one aspect of the present disclosure includes generating a signal for giving an instruction on emission timing to emit a pulse of laser light repeatedly for each predetermined processing cycle; continuously counting a count code at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and making an emission delay value different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and giving an instruction on the emission delay value.
In one aspect of the present disclosure, a signal for giving an instruction on emission timing to emit a pulse of laser light is generated repeatedly for each predetermined processing cycle; a count code is continuously counted at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and an emission delay value is made different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and an instruction on the emission delay value is given.
Hereinafter, specific embodiments to which the present technology is applied will be described in detail with reference to the drawings.
<Configuration Example of Measurement Device>
For example, a measurement device 11 illustrated in
As illustrated in
The emission timing signal generation unit 12 generates a Tx pulse signal for giving an instruction on emission timing to emit a pulse by laser light output from the measurement device 11, and supplies the Tx pulse signal to the laser driver 13. At this time, the emission timing signal generation unit 12 can delay emission timing from timing of starting the processing cycle according to an emission delay value supplied from the timing instruction unit 16.
The laser driver 13 drives a laser light emitting element (not illustrated) according to the Tx pulse signal supplied from the emission timing signal generation unit 12, and outputs the pulsed laser light on the basis of the emission timing.
The light receiving element 14 is, for example, a single photon avalanche diode (SPAD), receives reflected light of the pulsed laser light reflected by the distance measurement target and returned, and supplies an Rx pulse signal indicating a waveform of the reflected light to the latch 22 of the TDC 15.
The time-to-digital conversion (TDC) 15 converts the time until the laser light output from the measurement device 11 is reflected by the distance measurement target and returned into a digital value. That is, the counter 21 starts counting up of a count code in accordance with the start of the processing cycle, and the latch 22 fetches the count code from the counter 21 at timing of the pulse indicated by the Rx pulse signal supplied from the light receiving element 14 and outputs the count code.
The timing instruction unit 16 supplies the emission delay value indicating a time for delaying the emission timing of the pulse from the start of the processing cycle to the emission timing signal generation unit 12 and the calculation unit 17 to given an instruction on the emission timing for emitting the pulse from the measurement device 11. Then, the timing instruction unit 16 can change the emission delay value for each processing cycle. As a result, the measurement device 11 emits the pulse at different emission timing from the start of the processing cycle for each processing cycle.
Here, in the present embodiment, changing the emission timing for emitting the pulse for each processing cycle according to the emission delay value an instruction on which is given by the timing instruction unit 16 will be hereinafter referred to as pulse modulation.
The calculation unit 17 performs calculation of subtracting the emission delay value supplied from the timing instruction unit 16 from the count code supplied from the latch 22 of the TDC 15, and supplies a value calculated by the calculation to the histogram generation unit 18 as a ToF value. That is, in the measurement device 11, the pulsed laser light is output so that the pulse is emitted at the emission timing delayed according to the emission delay value from the start of the processing cycle. Therefore, the calculation unit 17 subtracts the emission delay value from the count code indicating the timing at which the light receiving element 14 receives the pulse of the reflected light, thereby obtaining the ToF value corresponding to the flight time in which the laser light reciprocates between the measurement device 11 and the distance measurement target.
The histogram generation unit 18 generates a histogram of the ToF values calculated by the calculation unit 17. For example, in the measurement device 11, a plurality of processing cycles is repeatedly performed, and the histogram generation unit 18 generates a histogram using a plurality of ToF values obtained through the repetition of the processing cycles. Then, when a histogram in which one certain ToF value indicating a peak is specified is generated, the histogram generation unit 18 supplies the ToF value indicating the peak to the distance calculation unit 19.
The distance calculation unit 19 calculates the distance to the distance measurement target on the basis of the speed of light using the ToF value supplied from the histogram generation unit 18.
Here, the processing cycle and the pulse emission timing in the measurement device 11 will be described with reference to
TDC RAMP illustrated in
Therefore, in the measurement device 11, the TDC RAMP does not stop at the time of switching the processing cycle, the counting by the counter 21 is continuously performed, and the counting does not stop although the count code is rese to 0. As a result, in the measurement device 11, a distance measurement range time (ToF range) started at the timing when the pulse is output in a certain processing cycle can be overlapped with the next processing cycle. Note that a distance measurement range represents a fixed distance width including a distance to the distance measurement target when the distance to the distance measurement target is a target for distance measurement, and a width of flight time in which light reciprocates between the measurement device and the distance measurement range is hereinafter referred to as a distance measurement range time.
Furthermore, in the measurement device 11, the pulse is not emitted at the timing of starting the processing cycle, but the pulse is emitted at the emission timing delayed from the start of the processing cycle according to an emission delay value DLY. Therefore, in the measurement device 11, the calculation unit 17 can obtain the ToF value corresponding to the time during which the light reciprocates in the distance to the distance measurement target by calculation of subtracting the emission delay value DLY from the count code at the timing when the pulse of reflected light is detected.
Moreover, in the measurement device 11, the timing instruction unit 16 supplies the emission delay value DLY different for each processing cycle to the emission timing signal generation unit 12 by performing the pulse modulation as described above. That is, as illustrated in
In the measurement device 11 configured as described above, the counting by the counter 21 is continuously performed at the time of switching the processing cycle, and the emission timing for emitting the pulse can be made different for each processing cycle according to the emission delay value. As a result, the measurement device 11 can disperse the influence of a ghost (erroneous distance measurement) that occurs when the distance measurement range times are overlapped, as will be described below. Therefore, the measurement device 11 can measure the distance to the distance measurement target in a shorter time than a conventional configuration in which the distance measurement range time cannot be overlapped and an overhead time for pulse modulation is provided, for example.
<Processing Example of Distance Measurement Processing>
The distance measurement processing executed in the measurement device 11 will be described with reference to the flowchart illustrated in
For example, when control is performed to start the distance measurement processing, the first processing cycle is started, and in step S11, the counter 21 starts counting up of the count code.
In step S12, the timing instruction unit 16 supplies the emission delay value indicating the time for delaying the emission timing of the pulse from the start of the processing cycle to the emission timing signal generation unit 12 and the calculation unit 17.
In step S13, the emission timing signal generation unit 12 supplies, to the laser driver 13, the Tx pulse signal for giving an instruction on emission of the pulse at the emission timing delayed from the start of the processing cycle according to the emission delay value supplied from the timing instruction unit 16 in step S12. As a result, the laser driver 13 drives a laser light emitting element (not illustrated) to output pulsed laser light that emits the pulse in accordance with the emission timing indicated by the Tx pulse signal.
In step S14, the light receiving element 14 receives the reflected light of the pulsed laser light output in step S13, and supplies the Rx pulse signal indicating the waveform of the reflected light to the latch 22. As a result, the latch 22 fetches the count code from the counter 21 at the timing of the pulse indicated by the Rx pulse signal supplied from the light receiving element 14, and supplies the count code to the calculation unit 17.
In step S15, the calculation unit 17 obtains the ToF value by performing calculation of subtracting the emission delay value supplied from the timing instruction unit 16 in step S12 from the count code supplied from the latch 22 in step S14, and supplies the ToF value to the histogram generation unit 18.
In step S16, the histogram generation unit 18 generates the histogram using the plurality of ToF values supplied from the calculation unit 17 in step S15 repeatedly performed.
In step S17, the histogram generation unit 18 determines whether or not a peak of the ToF value has been specified in the histogram generated in the previous step S16, for example, whether or not a histogram showing a peak in a predetermined ToF value has been generated.
In step S17, in a case where the histogram generation unit 18 determines that the peak of the ToF value has not been specified in the histogram generated in the previous step S16, the processing returns to step S11. At this time, the counter 21 performs counting up up to the maximum value of the count code and resets the count code to 0 at the timing of the next count, and the second and subsequent processing cycles are repeatedly performed in a similar manner.
Meanwhile, in step S17, in a case where the histogram generation unit 18 determines that the peak of the ToF value has been specified in the histogram generated in the previous step S16, the processing proceeds to step S18. That is, the processing cycle is repeated until a histogram indicating a peak at a predetermined ToF value is generated.
In step S18, the histogram generation unit 18 supplies the ToF value specified as a peak in the histogram to the distance calculation unit 19. Then, after the distance calculation unit 19 calculates the distance to the distance measurement target using the ToF value, the processing is terminated.
By the measurement processing as described above, the measurement device 11 can measure the distance to the distance measurement target with high accuracy in a shorter time.
For example, by performing pulse modulation, the measurement device 11 can suppress an adverse effect caused by obtaining a ToF value (hereinafter referred to as a ghost ToF value) different from a true ToF value according to the distance to the distance measurement target, as will be described below with reference to
Furthermore, the measurement device 11 can set the distance measurement range time in an overlapping manner by continuously performing the counting by the counter 21 at the time of switching the processing cycle, and can perform the distance measurement processing using the laser light having the number of pulse emissions of two or more times within one processing cycle, as will be described below with reference to
Furthermore, by performing pulse modulation, the measurement device 11 cancels the influence of DNL on the measurement accuracy, and can further improve the measurement accuracy, as will be described below with reference to
Furthermore, by performing pulse modulation, the measurement device 11 can suppress the influence of noise due to disturbance radio waves synchronized with the processing cycle, and can further improve measurement accuracy, as will be described below with reference to
Furthermore, the measurement device 11 can set the distance measurement range time across the processing cycles by continuously performing the counting by the counter 21 at the time of switching the processing cycle, and can shift the distance measurement range time, as will be described below with reference to
<Effect of Distance Measurement Processing>
Effects obtained by the distance measurement processing of the measurement device 11 as described above will be described with reference to
Then, as described above, the measurement device 11 is configured to perform the pulse modulation in which the emission timing for emitting the pulse is changed for each processing cycle according to the emission delay value. Therefore, in the example illustrated in
Thereby, the distance measurement range time corresponding to the pulse emitted with the emission delay value 20 in the processing cycle #1 is from the count code 20 in the processing cycle #1 to the count code 20 in the processing cycle #2. Furthermore, the distance measurement range time corresponding to the pulse emitted with the emission delay value 10 in the processing cycle #2 is from the count code 10 in the processing cycle #2 to the count code 10 in the processing cycle #3. At this time, the distance measurement range time corresponding to the pulse emitted with the emission delay value 20 in the processing cycle #1 and the distance measurement range time corresponding to the pulse emitted with the emission delay value 10 in the processing cycle #2 overlap between the count code 10 and the count code 20 in the processing cycle #2.
First, case 1 (TDCout case1) of the count code output from the TDC 15 illustrated in
Therefore, in a case where the reflected light detected at the count code 25 in the processing cycle #1 is the reflected light of the pulse emitted with the emission delay value 20 in the processing cycle #1, the ToF value 5 is obtained by subtracting the emission delay value 20 from the count code 25. Similarly, in a case where the reflected light detected at the count code 15 in the processing cycle #2 is the reflected light of the pulse emitted with the emission delay value 10 in the processing cycle #2, the ToF value 5 is obtained by subtracting the emission delay value 10 from the count code 15. Moreover, in a case where the reflected light detected at the count code 35 in the processing cycle #3 is the reflected light of the pulse emitted with the emission delay value 30 in the processing cycle #3, the ToF value 5 is obtained by subtracting the emission delay value 30 from the count code 35.
Thereafter, when a similar processing cycle is repeatedly performed and a histogram of ToF values obtained in these processing cycles is generated, the ToF value 5 shows a peak.
By the way, the reflected light detected at the count code 15 in the processing cycle #2 is in a range in which the distance measurement range time corresponding to the pulse emitted with the emission delay value 20 in the processing cycle #1 and the distance measurement range time corresponding to the pulse emitted with the emission delay value 10 in the processing cycle #2 overlap with each other. Therefore, it is not possible to determine which distance measurement range time is to be applied.
For example, in a case where the distance measurement range time for the pulse emitted with the emission delay value 20 in the processing cycle #1 is applied, the count code 15 in the processing cycle #2 corresponds to the count code 115 when counting is continued from the start of the processing cycle #1, and the ToF value 95 is obtained by subtracting the emission delay value 20 in the processing cycle #1.
However, in the measurement device 11, since the pulse modulation as described above is performed, the ghost ToF value 95 does not indicate a fixed value unlike the true ToF value 5, and is scattered and dispersed in response to changing the emission delay value for each processing cycle. Note that, at this time, there is no change in noise.
As described above, in the measurement device 11, since the ghost ToF value is scattered, an adverse effect caused by obtaining the ghost ToF value can be suppressed, and a histogram in which the true ToF value shows a peak can be generated in a shorter time. Therefore, the measurement device 11 can shorten the time required for measuring the distance to the distance measurement target.
Furthermore, case 2 (TDCout case2) of the count code output from the TDC 15 illustrated in
Therefore, in a case where the reflected light detected at the count code 60 of the processing cycle #2 is the reflected light of the pulse emitted with the emission delay value 20 of the processing cycle #1, the ToF value 140 is obtained by subtracting the emission delay value 20 from the count code 60 (the count code 160 from the start of the processing cycle #1) of the processing cycle #2. Similarly, in a case where the reflected light detected at the count code 50 of the processing cycle #3 is the reflected light of the pulse emitted with the emission delay value 10 of the processing cycle #2, the ToF value 140 is obtained by subtracting the emission delay value 10 from the count code 50 (the count code 150 from the start of the processing cycle #2) of the processing cycle #3.
Thereafter, when a similar processing cycle is repeatedly performed and a histogram of ToF values obtained in these processing cycles is generated, the ToF value 140 shows a peak.
By the way, in a case where the reflected light detected at the count code 60 of the processing cycle #2 is the reflected light of the pulse emitted with the emission delay value 10 of the processing cycle #2, the ToF value 50 is obtained by subtracting the emission delay value 10 from the count code 60 of the processing cycle #2. Similarly, in a case where the reflected light detected at the count code 50 of the processing cycle #3 is the reflected light of the pulse emitted with the emission delay value 30 of the processing cycle #3, the ToF value 20 is obtained by subtracting the emission delay value 30 from the count code 50 of the processing cycle #3. However, the ToF value 50 and the ToF value 20 are scattered as the pulse modulation as described above is performed and the emission delay value is changed for each processing cycle, and do not have a fixed ToF value. That is, the ToF value 50 and the ToF value 20 can be determined to be ghost ToF values.
As described above, in the measurement device 11, since the ghost ToF value is scattered, an adverse effect caused by obtaining the ghost ToF value can be suppressed, and a histogram in which the true ToF value shows a peak can be generated in a shorter time. Therefore, the measurement device 11 can shorten the time required for measuring the distance to the distance measurement target.
Furthermore, the measurement device 11 can set the distance measurement range time to coincide with the time corresponding to one processing cycle, and can perform the distance measurement in a shorter time than, for example, a configuration in which the time corresponding to one processing cycle needs to be set longer than the distance measurement range time (for example, an overhead time is provided.).
Furthermore, an effect of performing the distance measurement processing using the laser light having the number of pulse emissions of two or more times within one processing cycle in the measurement device 11 will be described with reference to
For example, usually, the laser light having the number of pulse emissions of one is output within one processing cycle. In contrast, the measurement device 11 can set the distance measurement range time in an overlapping manner, and can output the laser light having the number of pulse emissions of two or more times within one processing cycle.
Furthermore, in the example illustrated in
Meanwhile, the pulse of the reflected light is detected at the count code 80, the count code 85, the count code 90, and the count code 95 in the processing cycle #1. Similarly, the pulse of the reflected light is detected at the count code 70 and the count code 80 in the processing cycle #2. Furthermore, the pulse of the reflected light is detected at the count code 29, the count code 37, the count code 67, the count code 75, and the count code 82 in the processing cycle #3.
Then, the measurement device 11 performs calculation, for each count code in which the pulse of the reflected light is detected, for obtaining the ToF values by subtracting the emission delay values that are timings at which a plurality of distance measurement range times including the count code is started from the count code.
For example, for the pulse of the reflected light detected at the count code 80 in the processing cycle #1, the count code 80 in the processing cycle #1 is included in the four distance measurement range times. Therefore, the ToF value 60, the ToF value 55, the ToF value 50, and the ToF value 45 are obtained by subtracting the emission delay values (20, 25, 30, and 35), which are timings at which the four distance measurement range times including the count code 80 of the processing cycle #1 are started, from the count code 80 of the processing cycle #1.
Furthermore, for the pulse of the reflected light detected at the count code 70 in the processing cycle #2, the count code 70 in the processing cycle #2 is included in the three distance measurement range times. Therefore, the ToF value 60, the ToF value 50, and the ToF value 1 are obtained by subtracting the emission delay values (10, 20, and 69), which are timings at which the three distance measurement range times including the count code 70 of the processing cycle #2 are started, from the count code 70 of the processing cycle #2.
Furthermore, for the pulse of the reflected light detected at the count code 29 in the processing cycle #3, the count code 29 in the processing cycle #3 is included in the six distance measurement range times. Therefore, the ToF value 22, the ToF value 14, the ToF value 7, the ToF value 2, the ToF value 60, and the ToF value 52 are obtained by subtracting the emission delay values (69 and 77 in the processing cycle #2 and 7, 15, 22, and 27 in the processing cycle #3), which are timings at which the six distance measurement range times including the count code 29 of the processing cycle #3 are started, from the count code 29 of the processing cycle #3 (or the count code 129 corresponding to the processing cycle #2).
Furthermore, for the pulse of the reflected light detected at the count code 75 in the processing cycle #3, the count code 75 in the processing cycle #3 is included in the five distance measurement range times. Therefore, the ToF value 68, the ToF value 60, the ToF value 53, the ToF value 48, and the ToF value 98 are obtained by subtracting the emission delay values (77 in the processing cycle #2, and 7, 15, 22, and 27 in the processing cycle #3), which are timings at which the five distance measurement range times including the count code 75 of the processing cycle #3 are started, from the count code 75 of the processing cycle #3 (or the count code 175 corresponding to the processing cycle #2).
As described above, the ToF values obtained for each count code in which the pulse of the reflected light is detected by subtracting the emission delay values that are timings at which a plurality of distance measurement range times including the count code is started from the count code include the true ToF value 60. Furthermore, the ToF values other than the true ToF value 60 are scattered and dispersed according to the change in the emission delay value for each processing cycle. Therefore, in the histogram generated from all the ToF values obtained by such an operation, the true ToF value 60 shows a peak.
Therefore, the measurement device 11 can obtain the ToF values by performing the calculation of subtracting the known emission delay values from the count code at which the respective pulses have been detected, even if the laser light having the number of pulse emissions of two or more times is output in one processing cycle. As a result, the measurement device 11 can obtain more ToF values in a short time and specify the peak in the histogram, thereby shortening the time required for the distance measurement processing.
The effect obtained by canceling the influence of DNL on the measurement accuracy in the measurement device 11 will be described with reference to
Then, as described above, in the measurement device 11, the pulse is emitted at the timing (emission ToF) delayed from the start of the processing cycle according to the emission delay value different for each processing cycle. Therefore, the timing (n
For example, as in the related art, in a case where the pulse is emitted at the timing at which the processing cycle starts, the timing at which the pulse of the reflected light is detected is the same regardless of the processing cycle, and the count code fetched to the latch 22 at that timing is also the same. Therefore, conventionally, the component of DNL included in the count code for each processing cycle directly affects the distance measurement accuracy.
Meanwhile, in the measurement device 11, the component of DNL included in the count code for each measurement cycle is different, and the components are averaged, so that direct influence of DNL on the measurement accuracy is canceled. Therefore, the measurement device 11 can further improve the measurement accuracy.
Moreover, as illustrated in
For example, since a transition position of the counter affects the cycle of the DNL, two cycles of the 32 value DNL cycle appear within the 64 value processing cycle by configuring this significant digit independently of the transition position. For example, the significant digits can be configured by providing redundant bits, direct counting in the latch 22, or the like.
Thus, performing the pulse modulation for 32 values within the 64 value processing cycle can achieve DNL averaging and more reliably cancels the influence of DNL on the measurement accuracy. Therefore, the measurement device 11 can further improve the measurement accuracy.
An effect of suppressing the influence of noise due to disturbance radio waves synchronized with the processing cycle will be described with reference to
For example, as illustrated in
In contrast, as illustrated on the left side of
Therefore, it is possible to completely average the influence of the disturbance radio wave and eliminate the pseudo peak as illustrated on the right side of
For example, in the measurement device 11, in a case where there is a disturbance radio wave synchronized with the processing cycle, the timing instruction unit 16 may be activated via electromagnetic induction by the disturbance radio wave, and the pulse modulation to emit the pulse at different emission timing for each processing cycle may be performed.
Note that, in the case that the all-area pulse modulation is not performed, the influence of the disturbance radio wave is not completely averaged. That is, as illustrated in
Furthermore, in a case where the all-area pulse modulation cannot be performed, as illustrated in
As described above, the measurement device 11 can suppress the influence of the noise due to the disturbance radio wave synchronized with the processing cycle, and can accurately generate the histogram in which the count code indicating the timing at which the pulse of the reflected wave is received becomes the peak. As a result, the measurement device 11 can further improve the measurement accuracy.
Similarly to
At this time, for the pulse of the reflected light detected at the count code 60 in the processing cycle #2, the ToF value 50 is obtained with the emission delay value 10 in the processing cycle #2 as a starting point. Furthermore, for the pulse of the reflected light detected at the count code 50 in the processing cycle #3, the ToF value 20 is obtained with the emission delay value 30 in the processing cycle #3 as a starting point. Therefore, when such emission timing is set as a starting point, the ToF value 50 and the ToF value 20 can be determined to be ghosts.
Meanwhile, for the pulse of the reflected light detected at the count code 60 in the processing cycle #2, the ToF value 140 is obtained with the emission delay value 20 in the processing cycle #1 as a starting point. Furthermore, for the pulse of the reflected light detected at the count code 50 in the processing cycle #3, the ToF value 140 is obtained with the emission delay value 10 in the processing cycle #2 as a starting point. Therefore, since a fixed ToF value can be obtained with such emission timing as a starting point, the distance measurement range time can be shifted with the emission timing at which the ToF value 140 is obtained as a starting point.
In this manner, the measurement device 11 can shift the distance measurement range time to the emission timing as the starting point of the distance measurement range time at which a fixed ToF value is obtained.
As described above, the measurement device 11 can measure the distance to the distance measurement target with high accuracy in a shorter time, as described with reference to
Note that, in the present embodiment, as illustrated in A of
For example, a ramp waveform in which counting down is repeated for each one processing cycle as illustrated in B of
<Emission Delay Value of Predetermined Pattern>
As described above, the measurement device 11 can make the emission delay value different for each processing cycle by performing the pulse modulation, and can set the emission delay value to be random, for example. Alternatively, the measurement device 11 may set the emission delay value to be shifted in a predetermined pattern for each processing cycle.
Therefore, a processing example in which the emission delay value is shifted in a predetermined pattern for each processing cycle will be described with reference to
As described above, by shifting the light emission timings at equal intervals, the out-of-range ToF (the ghost ToF value caused by the pulse of the reflected light detected outside the distance measurement range time) caused by light emission in the preprocessing cycle is shifted at equal intervals and integrated when the histogram is generated. Therefore, the measurement device 11 can predict the shape of the out-of-range ToF and perform filtering or the like by performing histogram processing based on the equal interval (predetermined pattern).
A method of controlling laser irradiation timing and a method of processing the TOF result will be described with reference to
According to such a pattern, in the histogram generated by the histogram generation unit 18, two peaks as illustrated in the drawing occur according to the out-of-range ToF. That is, one peak occurs in the histogram shape within the range, whereas two peaks occur outside the range. Note that a histogram shape closer to an actual shape is illustrated on the lower side of
Then, in the example illustrated here, the histogram generation unit 18 can predict that two peaks that are twice the emission delay value have a histogram shape due to out-of-range ToF, and can extract the histogram of the out-of-range ToF on the basis of the prediction.
Moreover, in the measurement device 11, the histogram generation unit 18 can perform calculation processing for the histogram of the out-of-range ToF. For example, the histogram generation unit 18 can perform calculation processing of separately obtaining the center of gravity of the histogram shape due to the out-of-range ToF, calculation processing of removing a portion caused by the out-of-range ToF, and calculation processing of operating the center of gravity of the histogram shape due to the out-of-range ToF (for example, an operation to move the center of gravity to non-ROI, or the like.). Of course, the histogram generation unit 18 may adopt calculation processing other than the above processing.
In step S21, the timing instruction unit 16 supplies the emission delay value that changes the light emission timing of the pulse in a predetermined pattern (for example, an alternate pattern as illustrated in
In step S22, when generating the histogram of the ToF values supplied from the calculation unit 17, the histogram generation unit 18 predicts the histogram shape of the out-of-range ToF (for example, two peaks as illustrated in
In step S23, the histogram generation unit 18 extracts (filters) the histogram of the out-of-range ToF from the histogram shape of the out-of-range ToF predicted in step S22.
In step S24, the histogram generation unit 18 performs various types of calculation processing as described above for the histogram of the out-of-range ToF extracted in step S23, and then the processing is terminated.
As illustrated in
Note that, in
Here, the relationship between the delay of the laser irradiation timing and the DNL, and the shape of the ghost histogram due to the influence of the out-of-range ToF will be described with reference to
In the case where the emission delay value is shifted in such a pattern, the difference between the N-th and (N+1)-th times of irradiation of the out-of-range ToF, the difference between the (N+1)-th and (N+2)-th times of irradiation of the out-of-range ToF, the difference between the (N+2)-th and (N+3)-th times of irradiation of the out-of-range ToF, and the difference between the (N+3)-th and (N+4)-th times of irradiation of the out-of-range ToF are −1. Furthermore, the difference between the (N+4)-th and (N+5)-th times of irradiation of the out-of-range ToF is 0. Moreover, the difference between the (N+5)-th and (N+6)-th times of irradiation of the out-of-range ToF, the difference between the (N+6)-th and (N+7)-th times of irradiation of the out-of-range ToF, the difference between the (N+7)-th and (N+8)-th times of irradiation of the out-of-range ToF, and the difference between the (N+8)-th and (N+9)-th times of irradiation of the out-of-range ToF are +1.
Therefore, as illustrated in the drawing, a histogram shape having two peaks of −1 and +1 and becoming low at 0 that is a median value of the out-of-range ToF is obtained. Note that in a case where the emission delay value is not changed, a histogram shape having a peak as indicated by the broken line is obtained.
In the case where the emission delay value is shifted in such a pattern, the difference between the (N+2)-th and (N+3)-th times of irradiation of the out-of-range ToF, the difference between the (N+5)-th and (N+6)-th times of irradiation of the out-of-range ToF, the difference between the (N+8)-th and (N+9)-th times of irradiation of the out-of-range ToF, and the difference between the (N+11)-th and (N+12)-th times of irradiation of the out-of-range ToF are −1. Furthermore, the difference between the (N+18)-th and (N+19)-th times of irradiation of the out-of-range ToF, the difference between the (N+21)-th and (N+22)-th times of irradiation of the out-of-range ToF, the difference between the (N+24)-th and (N+25)-th times of irradiation of the out-of-range ToF, and the difference between the (N+27)-th and (N+28)-th times of irradiation of the out-of-range ToF are +1. Otherwise, the value is 0.
Therefore, as illustrated in the drawing, a histogram shape in which the frequency of the specific ToF value increases as the frequency of changing the emission delay value decreases is obtained. Note that in a case where the emission delay value is not changed, a histogram shape having a peak as indicated by the broken line is obtained. That is, it is possible to control the increase or decrease in the height of 0, which is the median value of the out-of-range ToF, by the frequency of changing the emission delay value.
By shifting the emission delay value at the emission timing in a predetermined pattern in this way, it is possible to prevent the shape of the ghost histogram due to the influence of the out-of-range ToF from being changed as much as possible. For example, in a case where the emission delay value of the emission timing is randomly shifted, such a histogram shape is not obtained because of dispersion.
<Configuration Example of Computer>
Next, the above-described series of processing (measurement method) can be executed by hardware or software. In a case of executing the series of processing by software, a program that configures the software is installed in a general-purpose computer or the like.
The program can be recorded in advance in a hard disk 105 or a ROM 103 as a recording medium built in the computer.
Alternatively, the program can be stored (recorded) in a removable recording medium 111 driven by a drive 109. Such a removable recording medium 111 can be provided as so-called package software. Here, examples of the removable recording medium 111 include a flexible disk, a compact disc read only memory (CD-ROM), a magneto optical (MO) disk, a digital versatile disc (DVD), a magnetic disk, a semiconductor memory, and the like.
Note that the program can be downloaded to the computer via a communication network or a broadcast network and installed in the built-in hard disk 105, in addition to the program being installed from the removable recording medium 111 to the computer, as described above. In other words, the program can be transferred in a wireless manner from a download site to the computer via an artificial satellite for digital satellite broadcasting, or transferred in a wired manner to the computer via a network such as a local area network (LAN) or the Internet, for example.
The computer incorporates a central processing unit (CPU) 102, and an input/output interface 110 is connected to the CPU 102 via a bus 101.
When a command is input through the input/output interface 110 by the user who operates an input unit 107 or the like, the CPU 102 executes the program stored in the read only memory (ROM) 103 according to the command. Alternatively, the CPU 102 loads the program stored in the hard disk 105 into a random access memory (RAM) 104 and executes the program.
As a result, the CPU 102 performs the above-described processing according to the flowchart or the above-described processing of the block diagram. Then, the CPU 102 causes an output unit 106 to output the processing result, a communication unit 108 to transmit the processing result, and the hard disk 105 to record the processing result, via the input/output interface 110, as necessary, for example.
Note that the input unit 107 is configured by a keyboard, a mouse, a microphone, and the like. Furthermore, the output unit 106 is configured by a liquid crystal display (LCD), a speaker, and the like.
Here, in the present specification, the processing performed by the computer in accordance with the program does not necessarily have to be performed in chronological order in accordance with the order described as the flowchart. In other words, the processing performed by the computer according to the program also includes processing executed in parallel or individually (for example, parallel processing or processing by an object).
Furthermore, the program may be processed by one computer (processor) or may be processed in a distributed manner by a plurality of computers. Moreover, the program may be transferred to a remote computer and executed.
Moreover, in the present specification, the term “system” means a group of a plurality of configuration elements (devices, modules (parts), and the like), and whether or not all the configuration elements are in the same housing is irrelevant. Therefore, a plurality of devices housed in separate housings and connected via a network, and one device that houses a plurality of modules in one housing are both systems.
Further, for example, the configuration described as one device (or processing unit) may be divided into and configured as a plurality of devices (or processing units). On the contrary, the configuration described as a plurality of devices (or processing units) may be collectively configured as one device (or processing unit). Furthermore, a configuration other than the above-described configuration may be added to the configuration of each device (or each processing unit). Moreover, a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or another processing unit) as long as the configuration and operation of the system as a whole are substantially the same.
Further, for example, in the present technology, a configuration of cloud computing in which one function is shared and processed in cooperation by a plurality of devices via a network can be adopted.
Furthermore, for example, the above-described program can be executed by an arbitrary device. In that case, the device is only required to have necessary functions (functional blocks and the like) and obtain necessary information.
Further, for example, the steps described in the above-described flowcharts can be executed by one device or can be executed by a plurality of devices in a shared manner. Moreover, in the case where a plurality of processes is included in one step, the plurality of processes included in the one step can be executed by one device or can be shared and executed by a plurality of devices. In other words, the plurality of processes included in one step can be executed as processes of a plurality of steps. Conversely, the processing described as a plurality of steps can be collectively executed as one step.
Note that, in the program executed by the computer, the processing of the steps describing the program may be executed in chronological order according to the order described in the present specification, or may be individually executed in parallel or at necessary timing when a call is made, for example. That is, the processing of each step may be executed in an order different from the above-described order as long as no contradiction occurs. Moreover, the processing of the steps describing the program may be executed in parallel with the processing of another program, or may be executed in combination with the processing of another program.
Note that the plurality of present technologies described in the present specification can be implemented independently of one another as a single unit as long as there is no inconsistency. Of course, an arbitrary number of the present technologies can be implemented together. For example, part or whole of the present technology described in any of the embodiments can be implemented in combination with part or whole of the present technology described in another embodiment. Further, part or whole of the above-described arbitrary present technology can be implemented in combination with another technology not described above.
Note that the present technology can also have the following configurations.
(1)
A measurement device including:
an emission timing signal generation unit configured to generate a signal for giving an instruction on emission timing to emit a pulse of laser light repeatedly for each predetermined processing cycle;
a counter configured to continuously count a count code at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and
a timing instruction unit configured to make an emission delay value different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and instruct the emission timing signal generation unit on the emission delay value.
(2)
The measurement device according to (1), further including:
a calculation unit configured to subtract the emission delay value an instruction on which is given by the timing instruction unit from the count code indicating timing at which a pulse of reflected light is received to calculate a measurement value corresponding to a value obtained by measuring a flight time in which light reciprocates between the measurement device and the distance measurement target.
(3)
The measurement device according to (2), further including:
a histogram generation unit configured to generate a histogram of the measurement value obtained by the calculation unit every time the processing cycle is repeatedly performed, and cause the processing cycle to be repeatedly performed until the measurement value indicating a peak is specified in the histogram is specified.
(4)
The measurement device according to (2), in which,
when a distance to the distance measurement target is set as a target for distance measurement, a distance measurement range time that is a width of a flight time in which light reciprocates between the measurement device and a distance measurement range representing a fixed distance width including the distance is caused to coincide with a time of the processing cycle, and the distance measurement range time is started from the emission timing delayed from start of the processing cycle.
(5)
The measurement device according to (4), in which
the emission timing signal generation unit outputs the laser light having a number of pulse emissions of two or more times within the processing cycle of one time, and
the calculation unit subtracts, for the each count code at which the pulse of the reflected light is detected, each of the emission delay values that are timings at which a plurality of the distance measurement range times including the count code is started from the count code to obtain the measurement value.
(6)
The measurement device according to any one of (1) to (5), in which
a configuration in which the count code counted by the counter is set as a lower bit and an upper bit is counted separately from counting by the counter is provided.
(7)
The measurement device according to any one of (1) to (6), in which
the timing instruction unit changes the emission timing of the pulse by the laser light over the entire processing cycle.
(8)
The measurement device according to any one of (1) to (7), in which
the counter changes a maximum value of the count code in the arbitrary processing cycle to change a length of the processing cycle.
(9)
The measurement device according to (4), in which
the distance measurement range time is shifted to the emission timing serving as a starting point of the distance measurement range time at which the fixed measurement value is obtained.
(10)
The measurement device according to (3), in which
the timing instruction unit changes the emission delay value so as to randomly change for the each processing cycle.
(11)
The measurement device according to (3), in which
the timing instruction unit changes the emission delay value so as to change in a predetermined pattern for the each processing cycle.
(12)
The measurement device according to (11), in which,
when a distance to the distance measurement target is set as a target for distance measurement, a width of a flight time in which light reciprocates between the measurement device and a distance measurement range representing a fixed distance width including the distance is set as a distance measurement range time, and
the histogram generation unit predicts a histogram shape of a ghost measurement value caused by a pulse of reflected light detected outside the distance measurement range time, and extracts the histogram shape of a ghost measurement value, on the basis of a predetermined pattern in which the emission delay value changes.
(13)
The measurement device (12), in which
the histogram generation unit performs predetermined calculation processing for the histogram shape of a ghost measurement value.
(14)
A measurement method including:
by a measurement device, generating a signal for giving an instruction on emission timing to emit a pulse of laser light repeatedly for each predetermined processing cycle;
continuously counting a count code at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and
making an emission delay value different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and giving an instruction on the emission delay value.
(15)
A program for causing a computer of a measurement device to execute measurement processing including:
generating a signal for giving an instruction on emission timing to emit a pulse of laser light repeatedly for each predetermined processing cycle;
continuously counting a count code at a time of switching the processing cycle, the count code indicating timing at which a pulse of reflected light that is the laser light reflected by a distance measurement target and returned is received; and
making an emission delay value different for the each processing cycle, the emission delay value indicating a time for delaying the emission timing from start of the processing cycle, and giving an instruction on the emission delay value.
Note that the present embodiments are not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present disclosure. Furthermore, the effects described in the present specification are merely examples and are not limited, and other effects may be exhibited.
Number | Date | Country | Kind |
---|---|---|---|
2019-130868 | Jul 2019 | JP | national |
2020-074371 | Apr 2020 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2020/025982 | 7/2/2020 | WO |