The present disclosure relates generally to optical sensors, and more particularly, to laser scanners, optical systems for laser scanners, and laser devices including time-of-flight measuring devices with no scanning mechanisms.
Optical sensors are currently used in a number of applications for the detection of objects. One type of optical sensor is a laser scanner, in which a collimated light beam generated by a laser source periodically moves over an area to be monitored. The light beam may be moved by a scanning mirror or other deflection unit which rotates or oscillates to direct light beams over the area. Using the angular position of the scanning mirror, the angular position of an object may be determined. Using the time of flight for pulses of light reflected by an object and the speed of light, the distance of an object may also be determined. From the angular and distance measurements, objects may be detected in the area in two-dimensional polar coordinates, for example.
In addition to object measurement applications, laser scanners may also be used in safety applications for monitoring a source of danger (e.g., a machine, robot, vehicle, etc.). In such safety applications, a laser scanner (also referred to as a “safety laser scanner” or “SLS”) may be positioned to monitor an area proximate the source of danger which should not be entered by personnel. If a person or object enters the monitored area when the laser scanner is active, the laser scanner may generate an alarm and/or mitigate the source of danger (e.g., shutdown a running machine).
In environments where the background may have reflective surfaces, measurements may experience interference from reflections off the reflective surfaces. Currently, a solution to address the reflective background effect on the safety laser is to measure the distance of a generic object further away than the real distance of the detected object. This may cause a fail-to-danger situation in case of the detected object is near the boundary of the safety area.
As shown in
A distance measuring device comprises a transmitter configured to generate a light pulse; a receiver connected to different amplification channels; a controller operably coupled with the receiver to receive the different amplification channels. The controller includes: a time of flight core configured to determine time of flight information for the light pulse; and a decider block configured to determine a measurement correction value for the device based on a determination of a presence of a reflective background that is different than a measurement correction value selected for the device when there exists a diffuse background or an absence of a background into a reading field.
A method of measuring a distance of an object with a reflective background comprises generating a light pulse with a transmitter, determining time of flight information with a time of flight core of a controller that receives different amplification channels via a receiver, and determining, via a decider block of the controller, a measurement correction value for the device based on a determination of a presence of a reflective background that is different than a measurement correction value selected for the device when there exists a diffuse background or an absence of a background into a reading field.
Illustrative embodiments of the present disclosure are described in detail below with reference to the attached drawing figures, which are incorporated by reference herein and wherein:
One or more implementations of the present disclosure are directed to laser scanners and optical systems for laser scanners which may be used in any number of applications, such as safety applications. The optical system of one or more implementations may include an emitting or transmission subsystem which scans a scanning area using a laser beam. The optical system may also include a reception subsystem which detects light (visible or nonvisible, more generally “electromagnetic radiation”) scattered back by an object positioned inside the scanning area. Embodiments of the disclosure include a processor (e.g., FPGA) configured to recognize the scenario of background reflections and to correct corrupted distance measurements in a safety-oriented way and therefore reduce the additional distance that may be added to by the manufacturer to the safety area. As a result, the performance of the SLS may be improved by being able to monitor more heterogeneous scenarios (e.g., with or without reflective backgrounds) with a reduced amount of additional distance needed to be added to the distance measurements by the SLS. As used herein, a reflective object may be defined by a threshold reflectance value (e.g., greater than 90%) whereas the object is otherwise a diffusive object below the threshold reflectance value (e.g., less than or equal to 90%).
The following description describes embodiments including a laser scanner (e.g., a safety laser scanner); however, this is done for illustration purposes and is not limited to only laser scanning devices or systems. For example, embodiments of the disclosure may also include time-of-flight distance measuring devices, such as an LED TOF measuring with an array of pixels (e.g., 8×8 pixel receiver) and an LED light generator as the light source. Some embodiments may also include a 3D TOF camera, which may include an LED light source with a pixel array as the receiver. Such embodiments may have different amplification levels to the signal received by the array, and as such specific numbers provided herein for thresholds and other definitions are non-limiting and may be different depending on the particular application, environment, device characteristics, tolerances, user preferences, etc.
As shown in
The collecting mirror 114 may be formed of a plastic material (e.g., polycarbonate (PC), polymethylmethacrylate (PMMA), cyclic olefin polymer (COP)) which has a one or more layers of a reflective coating thereon to provide a reflective surface. The reflective coating may include a metal layer such as aluminum or gold, optionally with a protective layer of a transparent material (e.g., SiO2). Another example of a reflective coating is a dielectric multilayer coating that has a very high (e.g., 99%) reflectivity for a specific wavelength band. The collecting mirror 114 may be formed from a material with low water absorption properties which may reduce the likelihood that a reflective coating will peel off during the lifetime of the laser scanner 100. In some implementations, the collecting mirror 114 is opaque to wavelengths of light emitted by the light source 102 so that the small fraction of light which passes through the reflective surface is absorbed by the material and is not diffused inside a housing 122 of the laser scanner 100.
The laser scanner 100 also includes a dichroic or interference filter 120 positioned above (as shown) the light detector 116 to filter the returned light 112 from the scanning mirror 108 before the returned light reaches the collecting mirror 114. The interference filter 120 transmits spectral bands which correspond to the light emitted by the light source 102 and reflects spectral bands outside of the spectral band emitted by the light source. Since the interference filter 120 is placed in the optical path before the collecting mirror 114, the interference filter may be designed to accept rays with an relatively small incidence angle A2, such as an incidence angle of only a few degrees (e.g., 3 degrees, 5 degrees, 10 degrees, 20 degrees). By allowing the acceptance angle of the interference filter 120 to be relatively small, the interference filter may more effectively filter the scattered light from within the housing 122 of the laser scanner 100, thereby improving the signal to noise ratio.
In some implementations, the interference filter 120 is made with a colored class filter substrate having a single or multilayer coating on one or both sides thereof. The glass material may be, for example, Schott RG830 glass offered by Schott Corporation or Hoya IR-83 glass offered by Hoya Corporation. The interference filter 120 may in some implementations have a black appearance because the glass material may not be transparent to visible light but has a relatively high transmittance (e.g., greater than 90%) in the NIR region emitted by the light source 102. Additional layer(s) may be operative to filter wavelengths of light beyond the emission band of the light source 102. The collecting mirror 114 and interference filter 120 are discussed in further detail below.
The laser scanner 100 may also include a motor/detector 124 which is operatively coupled to the scanning mirror 108 to drive the scanning mirror in continuous rotation about a vertical axis of rotation. For example, in some implementations the scanning mirror 108 may rotate at an approximate speed of 2000 rotations per minute. The angular position of the scanning mirror 108 may be detected by the motor/detector 124, which may include an angular position detector such as an encoder. The light beam 104 generated by the light source 102 in the form of short pulses therefore scans the scanning area 110 generated by the rotational movement. In instances where there is an object in the scanning area 110 and a reflected light signal is detected by the light detector 116, the angular position of the object in the scanning area 110 may be derived from the angular position of the scanning mirror 108, as detected by the motor/detector 124.
The time of flight of individual laser light pulses from their transmission until the reception after reflection on the object in the scanning area 110 may be determined, which allows for calculation of the distance of the object from the laser scanner 100 based on the known speed of light. This evaluation may be performed by a controller 126 which is operatively coupled to the light source 102, the light detector 116, and/or the motor/detector 124.
The controller 126 may be any suitable controller, and may include one or more central processing units (CPUs), microprocessors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic controllers (PLCs), etc. The controller 126 may include or be operatively coupled to non-transitory processor-readable storage media (e.g., RAM, ROM, flash), input/output systems, wired/wireless communication systems, etc., as is known in the art.
The components of the laser scanner 100 may be arranged in the housing 122 which includes a protective window 128 in the area where light enters and leaves the laser scanner. The protective window 128 may be made of a plastic material (e.g., polycarbonate, other polymer material) which has a high transmittance of light for wavelengths which are emitted by the light source 102. In some implementations, the visual appearance of the window 128 may be black, which filters visible light and which hides the internal components of the laser scanner 100. The window 128 may have rotation symmetry about the vertical axis of rotation of the scanning mirror 108.
In some implementations, the protective window 128 has a profile which is divided into an upper section 128A, a middle section 128B, and a lower section 128C. The middle section 128B of the protective window 128 may be tilted with a relatively large angle (e.g., 30 degrees, 45 degrees) with respect to the vertical axis, which provides at least two benefits. First, for at least some coating processes the inner and outer surface of the window 128 can be effectively coated with an anti-reflective coating only if the tilt of the window is above a certain angle (e.g., more than 30 degrees). This is because the dielectric material in the vacuum deposition process comes from a direction which is parallel to the vertical symmetry axis and cannot substantially stack on vertical or nearly vertical surfaces. Second, by providing the tilted middle section 128B of the protective window 128, the small fraction of light transmitted from the light source 102 which undergoes specular reflection is directed downward away from the optical path of the receiving subsystem and can be stopped by a light absorbing material positioned within the housing 122 of the laser scanner 100.
By utilizing the collecting reflector 114 rather than a lens for the concentrator optics, several limitations of conventional collecting lenses may be mitigated. For example, the large numerical aperture requirements typically result in a relatively thick lens with a short radius of curvature. In such instances, the irradiance distribution spot at the focus point of the lens may be strongly affected by inhomogeneities in the lens material. Such is an issue when the lens is made of glass, and may be worse in cases where the lens is made from a plastic material. Additionally, due to the relatively large thickness of the lens, the birefringence of the lens material may introduce aberrations in the spot image at the focal plane of the lens. The thickness of the lens also increases the length of the optical system, which results in a larger housing requirement for the laser scanner. The optical path length (OPL) of the optical system of the laser scanner 100 may be substantially shorter than the OPL of a system which utilizes a thick lens. Further, the index of refraction of a lens is temperature dependent and, in combination with the thermal expansion of the lens material, the focus position of the lens will shift due to variations in temperature.
Utilizing the reflector 114 as the collecting optics for the laser scanner 100 rather than a thick lens has further advantages. For example, the reflector 114 may have a relatively thin profile compared to a lens, due to the smaller thickness and larger radius of curvature of the reflector. Additionally, shapes having a larger radius of curvature are easier to mold with a given precision. Additionally, by using a reflector, the focus configuration is independent of the refractive index of the material which, as noted above, may change due to changes in environmental conditions. Further, when using a reflector the quality of the spot on the plane of the light detector 116 is not affected by material inhomogeneities, internal stresses, bubbles and birefringence. Moreover, a reflector may be made of only one optical surface and the mold for the reflector may only require one optical mold insert, compared to two optical mold inserts required for using a lens for the collecting optics.
Additionally, in some instances, a reflector with a reflective coating (e.g., aluminum coating, silver coating, gold coating) may have a higher flux transfer efficiency than a lens, even when the lens has an anti-reflective coating on both sides thereof. Advantageously, during manufacturing a reflective surface may be coated with a layer of material by a single coating process, whereas an effective anti-reflective coating on a lens may require multiple coating processes (e.g., application of multiple coating layers on one or both sides of a lens).
Different configurations and details regarding the construction of a safety laser scanner are contemplated and not limited to the specific configuration shown in
The SLS 100 may be configured to calculate distance measurements using the infrared laser pulsed Time-of-Flight method. As discussed above, a light source emitting an infrared laser pulse may be reflected by a rotating mirror; the final stage is made up of a photodetector that capture the return pulse after it is reflected by an object in the scene. The photodetector may be connected to a plurality of different amplification paths (i.e., channels) because it is necessary to manage a high dynamic of the signals received related to each different environment situation. In this example, three channels are shown but a different number of channels may be utilized (e.g., two or more).
Each of these channels may be characterized by an operating range of distance and target reflectance. Examples of such characterization may include (other defined ranges and distances are also contemplated):
The channels may be operably coupled in parallel to the FPGA 306 (e.g., to the TOF Core) which processes the signals and returns the pair of values <raw distance, energy> (indicated as <rd,e>) for each of them. As a result, three pairs of values <rd,e> may be obtained simultaneously for each laser pulse that are evaluated by the decider block 314 (implemented in FPGA 306) which may select and return the desired (e.g., optimal) pair of values to the microprocessor 308 based on the distance and target reflectance specific situation. This final pair of values is used by the microprocessor 308 to address the two-dimensional calibration LUT 310 containing the calibrated distance value and which returns the final distance from the cell at the intersection of the row/column (i.e., energy/raw distance) of the LUT 310 as shown in
Final Distance=FLut (raw distance,energy)=LUTi=rawDistance,j=Energy
The light source may generate a pulse for every 0.1° at which a distance measurement is calculated. The full monitored area may be a flat surface of 275° circular-sector with an angular resolution of 0.1° (
Environment Scenario Matching
a. No Target Detected (No Object, arrows 1, 2, 3, 4)
b. High Reflective Target (Background, arrows 5, 6)
c. Diffusive Target (Object, arrow 7, 8, 9, 10)
d. High Reflective Target (Background, arrows 11, 12)
e. No Target Detected (No Object, arrows 13, 14, 15, 16)
To describe the scene in digital mode, a ‘1’ may be set for each incident laser beam to a reflective target otherwise a ‘0’ may be set for a diffusive target. A pattern under investigation may be evaluated by analyzing a sequence of values related to consecutive pulses rather than data relating to a single laser pulse (0.1°). Therefore, the sequence of <distance, energy> values may be buffered in the FPGA for a laser-pulse number NBuff and for each channel. The i-th buffer element (which corresponds to the laser beam i-th) of the ch-th channel may be indicated as <rd, e>i=bufferSample, ch=numberChannel.
A larger buffer allows a more effective and flexible processing, on the other hand the length of the buffer may affect the complexity of the FPGA architecture. For NBuff=24 length and a FIFO buffer architecture may be selected, but other sizes and configurations are contemplated. For each new laser-pulse, and therefore for each new value <raw distance, energy>, the older entry is removed (buffer “tail”) from the last position and the new element is added on the first position (buffer “head”). This will make the result of the processing data related to the first pair of <rd, e>i=1, ch=* values available only when the buffer has been filled by all the elements (NBuff=24→<rd, e>i=NBuff, ch=* values) (see
The first step in the recognition process may be to detect the presence of the reflector target (“reflector detector”). To achieve this, various methods may be implemented depending on the channel selected by the decider block 314 in the FPGA 306. A mix-method may be employed based on an energy threshold value (on the reflective channel) (see
Therefore, using this method to the i=1 new values of <rd, e>i=1, ch=* (simultaneously for all channels) the FPGA 306 may determine whether the target is reflective or diffusive. As a result, a reflector detector buffer may be generated with setting a bit value=1 in case of a reflective object, otherwise a ‘0’ may be set (see
The characterization of the energy measurements (e.g.,
In the case of the Diffusive Channel or Reflective Channel have been selected by the decider, the graph in
Looking for possible scenarios that will trigger the measurement correction, the following minimum pattern has been identified as an example: 1111 0000 1111. In this representation, the minimum diffusive object (=‘0000’) may include 4 consecutive laser beams (NDiff_Min=4→0.1°*NDiff_Min=0.4°, minimum angular size of the object for the pattern matching) and on both side the minimum reflective object size (=‘1111’) of 4 rays (NRifl_min=4, as before) 0.4°. This minimum pattern may enable a possible undesired triggering (e.g., false positive activation) to be avoided.
In this case, considering the maximum buffer length NBuff=24 an example maximum possible pattern has been deduced: 1111 0000 0000 0000 0000 1111 The maximum diffusive object (=‘0’) may enable the data processing to be:
NDiff_Max=NBuff−(2*NRifl_Min)=16 laser beam (1.6° maximum angular size).
Considering various different environment scenarios monitored by the SLS the data processing pattern matching also takes in account potential intermediate cases, such as: 1111 0000 1111 0000 1111 0000 (recursive scenario) or 1111 0000 1100 0000 0000 1111 (intermediate spurious reflective beam).
Therefore, by analyzing the reflector detector buffer, the matching pattern described above may be determined, and consequently trigger the correction of the distance measurement.
A boundary-effect, at the first angles (from 0° to 0.4° (b.c.)/2.2° (w.c.)) (see
These potential scenarios (no trigger conditions) may be as follows:
There may be no boundary effects at the last angles 275°) because extra laser pulses (and consequently extra measurements) are generated consecutively at the last nominal angle (see
Adjusting Distance Measurements
Once the target reflector trigger pattern is recognized, the correction acts on the measures in the buffer corresponding to the position (i-th element) of diffusive object (bit=‘0’ in “reflector detector buffer”) by changing the energy value while the raw distance is left intact.
Indeed, in the pair of values <rd, e> the effect of reflective background is mainly on the corruption of the energy factor (> of the real value of energy), while the corruption of the raw distance value is negligible. This affects the LUT addressing, and causes a corrupted final distance> correct distance (see
In order to adjust the measure of final distance in a safety-oriented way and considering that in the event of corruption of the measurement by the reflective background the real energy is an unknown value, the corrupted energy value may be replaced with a conventional constant value energyk. Thus, the values <raw distance, energyk> may replace <raw distance, corrupted energy> in order to forcing a proper cell in the LUT. As a result, energyk=energyMin, in this way the cell index <i=raw Distance, j=energymin> and therefore the LUTi=rawDistance, j=0 value that represents the minimum distance possible relates to the specific value of raw distance in the LUT calibrated measurement space (
In the absence of the possibility to assess the measurement of the real distance due to the corruption effect of the reflective background, this processing of the measures enables the position of the scanned object to be corrected in a safety-oriented way (see
A possible side effect can occur when (as in
The data processing described above may enable to remove the “additional distance” value; nevertheless, in order to take into account all the possible side effects arising from the heterogeneous scenarios, using this data processing a residual additional distance (e.g., 15 cm, 20 cm, etc.) may be reduced compared to conventional methods (e.g., 40 cm). As an example, an additional distance equal to 20 cm may result in a 50% improvement in the value of additional distance compared to the actual value of 40 cm.
Graphical User Interface—Reflective Background Warning
This measurement correction can be shown in real-time on a Graphical User Interface (GUI) of the SLS device using a highlighted area (e.g., yellow area) to alert the customer about the presence in the environment scenario of potential dangerous conditions. A measurement correction warning message can also be viewed in the SLS display. GUI may also be configured to highlight (e.g., green area) the presence in the scenario of reflective backgrounds regardless of whether the measurement correction is enabled.
Additional non-limiting embodiments include:
Embodiment 1. A distance measuring device comprising: a transmitter configured to generate a light pulse; a receiver connected to different amplification channels; and a controller operably coupled with the receiver to receive the different amplification channels, wherein the controller includes: a time of flight core configured to determine time of flight information for the light pulse; and a decider block configured to determine a measurement correction value for the device based on a determination of a presence of a reflective background that is different than a measurement correction value selected for the device when there exists a diffuse background or an absence of a background into a reading field.
Embodiment 2. The device of Embodiment 1, wherein the controller includes: a measurement buffer wherein each cell includes distance and energy values calculated for each pulse and for each channel with stored values corresponding to consecutive transmitted pulses; and a reflector detector buffer wherein each cell includes a binary value indicating the presence of a reflective or diffusive object, each binary value being computed using the information included in more than one measurement buffer.
Embodiment 3. The device of Embodiment 1 or Embodiment 2, wherein the decider block is configured to detect the presence of the reflective background based on selecting data from a different channel for analysis.
Embodiment 4. The device of any of Embodiments 1 through 3, wherein the different amplification channels includes at least one of an auxiliary channel, a diffusive channel, and a reflective channel.
Embodiment 5. The device of Embodiment 4, wherein the auxiliary channel is defined for distances from a minimum distance up to 2500 mm and a target reflectance from 1.8% to 90%.
Embodiment 6. The device of Embodiment 4 or Embodiment 5, wherein the diffusive channel is defined for distances from 2000 mm up to a maximum distance and a target reflectance from 1.8% to 90%.
Embodiment 7. The device of any of Embodiments 4 through 6, wherein the reflective channel is defined for distances from a minimum distance up to a maximum distance and a target reflectance greater than 90%.
Embodiment 8. The device of any of Embodiments 1 through 7, wherein the receiver is a photodetector.
Embodiment 9. The device of any of Embodiments 1 through 8, wherein the decider block is configured to determine the measurement correction value for the device responsive to determining an energy threshold value.
Embodiment 10. The device of any of Embodiments 1 through 9, wherein the decider block is configured to determine the measurement correction value for the device responsive to determining a characteristic curve of an energy value ration of a diffusive channel and a reflective channel.
Embodiment 11. The device of any of Embodiments 1 through 10, wherein the decider block is configured to determine the measurement correction value for the device responsive to a mix method of determining both an energy threshold value and determining a characteristic curve of an energy value ration of a diffusive channel and a reflective channel.
Embodiment 12. The device of any of Embodiments 1 through 11, wherein the decider block is configured to determine the measurement correction value based on a look-up table.
Embodiment 13. The device of Embodiment 12, wherein he look-up table is addressable based on an energy value and raw distance pair received from the time-of-flight core for the selected channel.
Embodiment 14. The device of any of Embodiments 1 through 13, wherein the time-of-flight core and the decider block are implemented in an FPGA of the controller.
Embodiment 15. The device of any of Embodiments 1 through 14, wherein the device is a safety laser scanner.
Embodiment 16. The device of any of Embodiments 1 through 15, wherein the device is a time-of-flight distance measurer without a scanning mechanism.
Embodiment 17. The device of any of Embodiments 1 through 16, wherein the light pulses include laser pulses.
Embodiment 18. A method of measuring a distance of an object with a reflective background, the method comprising: generating a light pulse with a transmitter; determining time of flight information with a time of flight core of a controller that receives different amplification channels via a receiver; and determining, via a decider block of the controller, a measurement correction value for the device based on a determination of a presence of a reflective background that is different than a measurement correction value selected for the device when there exists a diffuse background or an absence of a background into a reading field.
Embodiment 19. The method of Embodiment 18, wherein determining the measurement correction value is responsive to at least one of: determining an energy threshold value; determining a characteristic curve of an energy value ration of a diffusive channel and a reflective channel; or responsive to a mix method of determining both an energy threshold value and determining a characteristic curve of an energy value ration of a diffusive channel and a reflective channel.
Embodiment 20. The method of Embodiment 18 or Embodiment 19, wherein determining the measurement correction value is based on a look-up table.
The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the steps of the various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art, the steps in the foregoing embodiments may be performed in any order. Words such as “then,” “next,” etc. are not intended to limit the order of the steps; these words are simply used to guide the reader through the description of the methods. Although process flow diagrams may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or the main function.
The various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed here may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
Embodiments implemented in computer software may be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to and/or in communication with another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
The actual software code or specialized control hardware used to implement these systems and methods is not limiting of the disclosure. Thus, the operation and behavior of the systems and methods were described without reference to the specific software code being understood that software and control hardware can be designed to implement the systems and methods based on the description here.
When implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable or processor-readable storage medium. The steps of a method or algorithm disclosed here may be embodied in a processor-executable software module which may reside on a computer-readable or processor-readable storage medium. A non-transitory computer-readable or processor-readable media includes both computer storage media and tangible storage media that facilitate transfer of a computer program from one place to another. A non-transitory processor-readable storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such non-transitory processor-readable media may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other tangible storage medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer or processor. Disk and disc, as used here, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable medium and/or computer-readable medium, which may be incorporated into a computer program product.
The previous description is of various preferred embodiments for implementing the disclosure, and the scope of the invention should not necessarily be limited by this description. The scope of the present invention is instead defined by the claims.
This application claims the benefit of U.S. Provisional Application No. 62/944,935, filed Dec. 6, 2019, and entitled SAFETY LASER SCANNER AND RELATED METHOD FOR ADJUSTING DISTANCE MEASUREMENTS TO COMPENSATE FOR REFLECTIVE BACKGROUNDS, the disclosure of which is incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
6873406 | Hines | Mar 2005 | B1 |
7589826 | Mack et al. | Sep 2009 | B2 |
9964437 | Lorenzoni et al. | May 2018 | B2 |
10048120 | Corrain et al. | Aug 2018 | B2 |
10061021 | Faetani et al. | Aug 2018 | B2 |
20130301030 | Hulm et al. | Nov 2013 | A1 |
20160188977 | Kearns | Jun 2016 | A1 |
20170293021 | Franzreb | Oct 2017 | A1 |
20180356502 | Hinderling et al. | Dec 2018 | A1 |
20190212421 | Honkanen | Jul 2019 | A1 |
20190271767 | Keilaf | Sep 2019 | A1 |
20190318177 | Steinberg | Oct 2019 | A1 |
20190369252 | Girotti | Dec 2019 | A1 |
Number | Date | Country |
---|---|---|
10 2013 100 696 | Nov 2013 | DE |
20 2017 106 071 | Feb 2018 | DE |
11 2017 006 703 | Sep 2019 | DE |
2 315 053 | Apr 2011 | EP |
2 182 377 | Sep 2012 | EP |
3 246 729 | Apr 2019 | EP |
2471965 | Jan 2011 | GB |
102016000070878 | Jan 2018 | IT |
102016000100444 | Apr 2018 | IT |
102016000132849 | Jun 2018 | IT |
Number | Date | Country | |
---|---|---|---|
20210173084 A1 | Jun 2021 | US |
Number | Date | Country | |
---|---|---|---|
62944935 | Dec 2019 | US |