Encoder Device

The readhead improves encoder accuracy by capturing snapshot images and applying error correction to handle sensor variations and scale feature density, ensuring precise incremental and absolute position determination.

JP2025529996APending Publication Date: 2025-09-09RENISHAW PLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025514561
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-09-08
Filing Date
2023-09-06
Publication Date
2025-09-09

AI Technical Summary

Technical Problem

Existing encoder arrangements that embed absolute position data into incremental graduations face accuracy degradation due to the removal of too many adjacent scale lines, limiting the maximum scale length and reducing the number of unique absolute codewords.

Method used

A readhead that captures snapshot images of encoder graduations using an image sensor and applies error correction to determine both incremental and absolute positions, accounting for variations in sensor elements and scale feature density to improve measurement accuracy.

Benefits of technology

Enhances the accuracy of position measurement by mitigating errors caused by sensor variations and code feedthrough, allowing for precise determination of both incremental and absolute positions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025529996000001_ABST
    Figure 2025529996000001_ABST
Patent Text Reader

Abstract

A readhead (4) capable of reading an encoder graduation (6; 50) having a series of graduation marks (10; 52) arranged in a generally periodic pattern and embedded graduation features (10) encoding absolute position information is described. The readhead (4) includes an image sensor (20) for capturing snapshot images of a portion of the encoder graduation and a position analyzer (24) for determining a relative position (P) of the readhead (4) with respect to the encoder graduation (6; 50) from the captured snapshot images. An absolute position extractor (92) extracts absolute position information (A) from the embedded graduation features present in the snapshot images. An incremental position extractor (92) generates a global phase value (Φ) describing the incremental position by analyzing the generally periodic pattern of the graduation marks (10; 52) present in the snapshot images. The incremental position extractor (94) is configured to apply error correction when calculating the global phase value (Φ) to account for variations in the contributions to the calculated global phase value (Φ) from different sensor elements in the image sensor (20). An encoder device is also described that includes a combination of a readhead (4) and an associated encoder scale (6; 50).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to encoder devices, and more particularly to readheads for reading encoder graduations having absolute position information embedded in a series of generally periodic graduation marks. [Background technology]

[0002] Position encoders are known for measuring the relative position between two movable objects, typically by providing one object with an encoder scale containing a series of markings and another object with a readhead for reading the markings.

[0003] Position encoders are typically classified as either incremental or absolute. In incremental encoders, the scale has a periodic series of scale marks that are detected by a readhead. The incremental movement of the scale relative to the readhead is measured, allowing changes in relative position to be determined, often with a much higher accuracy than the period of the scale marks. In absolute encoders, the readhead measures relative displacement by detecting a unique series of scale marks (e.g., codes) and converting those codes to absolute positions. This typically results in lower resolution measurements than incremental encoders, but has the advantage that the absolute position of the readhead relative to the scale is clearly known. It is also known to provide encoder arrangements in which the absolute scale track is aligned parallel to the incremental scale track. This allows the higher position resolution of incremental encoders to be combined with the benefits of absolute position measurement. In other words, the higher accuracy of the incremental position measurement is used to "fine-tune" the absolute position measurement.

[0004] US7499827 describes embedding absolute position data into incremental graduations by removing the graduation lines. While the graduations as a whole remain sufficiently periodic to provide incremental information, it is possible to detect the omitted graduation lines and thereby extract code words defining absolute position information. WO2010 / 116144 describes an improved method for reading such graduations using a snapshot image capture process, and WO2010 / 139964 describes the use of an extrapolation process in such a snapshot image capture process to reduce spurious measurement errors. Arrangements of the type described in WO2010 / 116144 and WO2010 / 139964 are also used in the so-called "RESOLUTE" series of optical encoders sold by Renishaw Ltd. of Wotton-under-Edge, UK.

[0005] The inventors have found that when using arrangements of the type described in WO2010 / 116144 or WO2010 / 139964, incremental measurements are typically very accurate and robust, but that position measurement performance can degrade if too many adjacent scale lines are removed from the scale. This effect can be minimised by carefully designing the pattern of scale lines provided on the encoder scale to ensure that the scale lines are distributed densely enough over the entire length of the scale. However, this imposes a limit on the total number of unique absolute codewords that can be embedded in the scale, thereby reducing the maximum possible length of the scale. Summary of the Invention

[0006] According to a first aspect of the present invention, there is provided a readhead for reading an encoder graduation having a series of graduation marks arranged in a generally periodic pattern that encode incremental position information, the series of graduation marks also including embedded graduation features that encode absolute position information, the readhead comprising: an image sensor including a plurality of sensor elements for capturing snapshot images of a portion of the encoder graduation; and a position analyzer for determining a position of a readhead relative to the encoder scale from the captured snapshot image, the position analyzer comprising: (1) an absolute position extractor configured to identify embedded scale features in the snapshot image and calculate an absolute position of the readhead relative to the encoder scale therefrom; and (2) an incremental position extractor configured to calculate a global phase value representing an incremental position of the readhead relative to the encoder scale by analyzing a generally periodic pattern of scale marks present in the snapshot image, wherein the incremental position extractor is configured to apply an error correction when calculating the global phase value, the applied error correction taking into account variations in contributions to the calculated global phase value from different sensor elements of the plurality of sensor elements.

[0007] The present invention relates to a readhead for reading incremental graduations containing embedded absolute information. In other words, there is provided a readhead configured to read encoder graduations in which absolute information is embedded within a generally periodic series of graduation marks by providing a detectable variation in the series of graduation marks. In preferred embodiments described in more detail below, such encoder graduations may include a generally periodic series of graduation lines, with certain graduation lines omitted to encode data bits of information that allow absolute position to be determined. For the avoidance of doubt, it should be noted that this first aspect of the invention applies to the readhead and not to the encoder graduations that the readhead is configured to read.

[0008] The readhead includes an image sensor comprising a plurality of sensor elements or pixels. The image sensor is configured to enable a snapshot image of a portion of the encoder scale to be obtained. For example, the image sensor may include a linear array of sensor elements configured to capture a one-dimensional image of the encoder scale. In a preferred embodiment, the image sensor is an optical sensor (i.e., it is capable of detecting electromagnetic radiation in the form of visible or non-visible light). As such, the image sensor captures a snapshot image, which is an image captured over a certain period of time. The snapshot image may be captured by activating the sensor elements to be sensitive to electromagnetic radiation for a certain period of time (e.g., by appropriately gating the sensor elements) and / or by activating a suitable electromagnetic radiation source that illuminates the encoder scale for a certain period of time (e.g., by "flashing" the light source for the required duration). As such, the snapshot image is an image of the scale captured during a certain exposure time. Indeed, it may also be possible to capture such snapshot images successively and analyze each image to extract position information. As explained below, the exposure time can also be adjusted to optimize the captured snapshot image for the relative speed of the readhead and encoder scale.

[0009] The readhead also includes a position analyzer that analyzes snapshot images captured by the image sensor to provide measurements of the position of the encoder graduation relative to the readhead. The position analyzer is configured to determine such position by analyzing the captured snapshot images using both incremental and absolute position extraction techniques. In particular, the position analyzer includes an incremental position extractor and an absolute position extractor configured to determine the incremental and absolute positions, respectively. It should be noted that the incremental position extractor and the absolute position extractor need not be separate electronic units but may be implemented by a single processor configuration, such as a digital signal processor (DSP), a field programmable gate array (FPGA), or an application specific integrated circuit (ASIC), etc.

[0010] The incremental position extractor is configured to determine the relative (incremental) positions of the readhead and the encoder graduation by establishing an overall or global phase of the generally periodic pattern of graduation marks present in the snapshot image. As described in more detail below, a discrete Fourier transform (DFT) may be used by the incremental position extractor to provide a global phase value that represents the relative position of the encoder graduation and the readhead. The incremental positions defined by the global phase value may have a higher resolution than the graduation period.

[0011] The absolute position extractor is configured to recognize embedded graduation features within the generally periodic pattern of graduation marks. For example, the presence or absence of graduation marks can be used to encode different data bits. Code words formed from such multiple data bits can be embedded into the encoder graduations using the absolute position extractor to store a look-up table, or the like, that defines the absolute position encoded by each code word. This allows absolute (unique) positions to be measured.

[0012] As explained above, in conventional readheads, various factors can degrade the accuracy of the global phase value extracted by the incremental position extractor. These factors can include inherent variations across the image sensor (e.g., variations in sensitivity or gain of different sensor elements) and / or code feedthrough effects, where embedded absolute information (e.g., due to missing tick marks) changes the degree to which each subset of sensor elements contributes to the global phase value. The readhead of the present invention mitigates these effects by configuring the incremental position extractor to apply an error correction when calculating the global phase value that accounts for variations in the contributions to the calculated global phase value from different sensor elements among the plurality of sensor elements. As explained below, such error correction can be applied in various ways. For example, a correction may be applied to the output of each sensor element individually, and / or the real and imaginary phase components extracted from the captured snapshot image may be offset before calculating the global phase value. In this way, fixed pattern noise and / or code feedthrough effects can be reduced or removed from the calculated global phase value, thereby improving the measurement accuracy of the readhead.

[0013] The error correction applied by the incremental position extractor may depend on the set of scale marks present in the captured snapshot image. Advantageously, the error correction applied by the incremental position extractor depends on embedded scale features identified in the snapshot image by the absolute position extractor. In other words, embedded scale features identified in the captured snapshot image (such as missing scale lines that embed absolute position codewords) may be used to provide or select an error correction that takes into account the effect of such embedded scale features on the global phase value.

[0014] In a preferred embodiment, the error correction applied by the incremental position extractor takes into account variations in scale feature density across the snapshot image. In other words, the applied error correction is based on the scale feature density distribution across the snapshot image. For example, the relative densities of scale features (e.g., density of scale lines, etc.) in different portions of the captured snapshot image may be used to estimate the relative contributions of such different portions of the snapshot image to the calculated global phase value. In one example, the snapshot image may be divided into five (i.e., five different portions), with each fifth of the snapshot image being collected by one-fifth of the sensor elements of the image sensor. The scale feature density in each fifth of the snapshot image may be determined (e.g., from analysis performed by the absolute position extractor), and error correction in the form of a weighting or phase adjustment that accounts for different feature densities (e.g., different numbers of scale lines, etc.) in the different fifths of the snapshot image may be applied in calculating the global phase value.

[0015] In addition to, or instead of, accounting for differences in global phase values ​​extracted from different encoder graduation portions encoding different absolute data, the present invention also allows for compensation for noise within the readhead. In particular, the error correction applied by the incremental position extractor may thus account for any offset and / or gain variations between the outputs of multiple sensor elements. For example, fixed pattern noise (FPN) may be associated with image sensors. For optical image sensors, such fixed pattern noise results in outputs from different sensor elements being offset from each other, even in the complete absence of light striking the image sensor. This may result from inherent differences between sensor elements (e.g., due to manufacturing variations, etc.) and / or differences in the electronics used to read the sensor elements. There may also be slightly different electronic gains for different sensor elements. The error correction applied by the incremental position extractor may reduce or remove such effects from the calculated global phase value.

[0016] The incremental position extractor may be configured to analyze the captured image using frequency analysis. More specifically, spatial frequency analysis may be used to analyze the captured image. For example, the incremental position extractor may analyze the captured snapshot image using Fourier transform techniques. Advantageously, the incremental position extractor is configured to analyze the captured snapshot image using a discrete Fourier transform to calculate a global phase value. The snapshot image captured by the image sensor includes multiple sensor output values ​​from multiple sensor elements. The incremental position extractor may implement a discrete Fourier transform analysis. In this analysis, each of the multiple sensor output values ​​is multiplied with corresponding values ​​in a cosine lookup table and a sine lookup table to provide real and imaginary phase components from which the global phase value is calculated. In other words, the sensor output values ​​may be multiplied by values ​​in the cosine lookup table and summed to provide a real value. The same sensor output values ​​may also be multiplied by values ​​in the sine lookup table and combined to provide a real value. The real and imaginary values ​​may then be used together to provide a global phase value. Error correction may be applied before, during, or after the frequency analysis process.

[0017] In one embodiment, the incremental position extractor is configured to apply error correction by applying an error map or error function to the values ​​contained in the cosine and sine lookup tables. In other words, some or all of the values ​​contained in the cosine and / or sine lookup tables may be adjusted. Alternatively, the error correction may be applied by using an error map or error function when generating the cosine and sine lookup tables. It should be noted that a strict definition of a discrete Fourier transform requires the use of numerical values ​​that define a sinusoidally varying function. However, the term "discrete Fourier transform" as used herein is intended to encompass transforms in which numerical values ​​are adjusted to apply error correction. The adjustments applied to the numerical values ​​may include adding or subtracting error values ​​and / or multiplying or dividing error values. The numerical values ​​that define the sinusoidally varying function of the discrete Fourier transform may be calculated or stored in a lookup table as needed. The applied error values ​​may be stored in a table and / or calculated using a function.

[0018] Alternatively, the error corrections may be applied by selecting or generating appropriate cosine and sine lookup tables incorporating different error corrections. For example, various different error corrections may be applied to create sets of cosine and sine lookup tables, each incorporating a different error correction. Multiple sets of cosine and sine lookup tables may be stored by the incremental position extractor (e.g., in memory). The incremental position extractor may be configured to select one of these sets of cosine and sine lookup tables that will apply the desired correction when used to calculate the global phase value. For example, the pair of cosine and sine lookup tables may be selected based on a codeword embedded in the encoder graduation or the density distribution of the graduation features across the captured snapshot image. This selection may also or alternatively be based on setup factors such as the ride height (spacing) of the readhead relative to the encoder graduation, operating temperature, etc.

[0019] In yet another embodiment, the incremental position extractor may be configured to apply error correction by adjusting values ​​after multiplication of the sensor output values ​​against the cosine and sine lookup tables. For example, the real and imaginary phase components may be adjusted to apply error correction before calculating the global phase value. For example, offsets may be applied to the real and imaginary phase components before they are used to calculate the global phase value. A single offset may be applied to compensate for fixed pattern noise. Such a single offset may be recalculated if the fixed pattern noise changes due, for example, to changes in the readhead and / or scale configuration. If the error correction is to account for code feedthrough or the like, the offsets applied to the real and imaginary phase may be adjusted during use (e.g., based on a codeword embedded in the encoder scale or the density distribution of scale features across the captured snapshot image). In an alternative embodiment, the incremental position extractor may be configured to adjust a preliminary global phase value derived from the real and imaginary phase components to generate the global phase value. For example, a phase shift may be added to a preliminary global phase value to generate a global phase value.

[0020] The error corrections to be applied may be calculated before using a readhead comprising the encoder scale. For example, sine and cosine lookup tables used to calculate a global phase value, or offset values ​​for real and imaginary components, may be calculated before using the readhead to measure position relative to the encoder scale. The error corrections may be calculated during manufacture of the readhead (e.g., during manufacturing setup). The error corrections may be calculated after manufacture of the readhead but before installation of the readhead. For example, the error corrections may be calculated before installing the readhead in a device that also includes the scale that the readhead will read to collect position measurements. In this way, a readhead may be provided that stores one or more (pre-calculated) error corrections.

[0021] The error correction may be calculated during use (i.e., when the readhead is mounted to measure its position relative to the encoder scale). Advantageously, the incremental position extractor is configured to calculate the error correction during use (i.e., while the readhead comprising the encoder scale is in use) from one or more captured snapshot images of the encoder scale. For example, the error correction may be determined by analyzing a generally periodic pattern of scale marks in multiple sub-regions in each snapshot image and determining an apparent phase difference in the generally periodic pattern of scale marks between the sub-regions. In other words, one or more of the captured snapshot images may be divided into sub-regions. A Fourier analysis may then be performed on each sub-region in the snapshot image to obtain a local phase value for each sub-region. Differences in the local phase values ​​may then be established, along with how these differences would affect a global phase value extracted from analysis of the entire snapshot image. This may then be used to construct an error map or error function that describes how the global phase value will change based on the relative contributions to the global phase value from different sub-regions. An error correction can then be applied to account for changes in the density of the scale features (e.g., scale lines, etc.) on the snapshot image based on the absolute information embedded in the encoder scale. As such, the incremental position extractor can be configured to generate and update the error correction "on-the-fly" (i.e., while the readhead is being used to measure its position relative to the encoder scale).

[0022] The readhead may include any type of image sensor. The image sensor may detect a magnetic field (i.e., as part of a magnetic encoder device). The image sensor may include an electromagnetic sensor. In a preferred embodiment, the image sensor is an optical image sensor. The optical image sensor may detect light of any suitable wavelength (e.g., from ultraviolet to infrared). The image sensor includes an array of sensor elements. The image sensor includes a two-dimensional array of sensor elements. In a preferred embodiment, the image sensor may include a one-dimensional array (i.e., a linear array) of sensor elements. The sensor elements may have a generally rectangular shape. The rectangular sensor elements may be arranged side by side to form a linear array, with the long axis of the rectangle extending perpendicular to the linear axis along which the sensor elements are distributed. As described above, the image sensor is positioned to capture a snapshot image of a portion of the encoder graduation. If an optical image sensor is provided, the sensor may include appropriate optics for imaging a portion of the encoder graduation. Its field of view may be large enough to capture multiple graduation marks. For example, there may be enough tick marks in the snapshot image to be able to extract enough data bits to allow absolute position to be determined.

[0023] The readhead may include an output for outputting measurement information. Position information may be output according to a standard encoder output protocol. The readhead may output such information in digital form. An interface may be provided for receiving output from the readhead.

[0024] According to a further aspect of the present invention, there is provided an encoder device comprising a readhead according to the first aspect of the present invention and an encoder scale. The encoder scale has a series of scale marks arranged in a generally periodic pattern that encode incremental position information. The series of scale marks also includes embedded scale features that encode absolute position information. In a preferred embodiment, the series of scale marks may include a series of scale lines.

[0025] Advantageously, the embedded scale features include omitted scale marks. In other words, data bits can be encoded in the scale by omitting scale marks from a series of normally regularly spaced scale marks. For example, the scale features can include scale lines, and data bits can be encoded in the scale by omitting particular scale lines. The scale lines can be optically transmissive lines on a normally opaque substrate, or opaque lines on a normally optically transparent substrate. The scale lines can be optically transmissive lines on a normally opaque substrate, or opaque lines on a normally optically transmissive substrate. Alternatively, the scale lines can be optically reflective lines on a normally non-reflective substrate, or non-reflective lines on a normally optically reflective substrate. The number of omitted scale marks can be selected so that, for a portion of the encoder scale, enough scale marks remain to allow a generally periodic pattern to be extracted from a snapshot image captured by the readhead's image sensor.

[0026] According to a further aspect of the present invention, there is provided a method of analyzing a snapshot image captured by a readhead of an encoder graduation having a series of graduation marks arranged in a generally periodic pattern that encode incremental position information, the series of graduation marks also including embedded graduation features that encode absolute position information, the method comprising the steps of: (1) Identifying embedded scale features present in the snapshot image and calculating therefrom the absolute position of the readhead relative to the encoder scale. (2) calculating a global phase value representing the incremental position of the readhead relative to the encoder graduation by analyzing the generally periodic pattern of the graduation marks present in the snapshot images; and (3) determining the position of the readhead relative to the encoder scale from the absolute position calculated in step (1) and the global phase value calculated in step (2); wherein step (2) includes applying an error correction when calculating the global phase value, the error correction being characterized by taking into account variations in contributions to the calculated global phase value from different regions of the snapshot image.

[0027] Steps (1) and (2) may be performed in any order, or simultaneously. The method may be performed using a readhead according to the first aspect of the invention. The method may include an initial step (i.e., prior to steps (1) and (2)) of capturing a snapshot image of the encoder graduation. The method may include any of the features described above for the apparatus.

[0028] Also described herein is a readhead for reading an encoder graduation. The encoder graduation may have a series of graduation marks. The graduation marks may be arranged in a generally periodic pattern that encodes incremental position information. The series of graduation marks may include embedded graduation features that encode absolute position information. The readhead may include an image sensor. The image sensor may include a plurality of sensor elements. The image sensor may be configured to capture a snapshot image of a portion of the encoder graduation. The readhead may include a position analyzer for determining a position of the readhead relative to the encoder graduation from the captured snapshot image. The position analyzer may include an absolute position extractor configured to identify embedded graduation features in the snapshot image. The absolute position extractor may calculate an absolute position of the readhead relative to the encoder graduation from the identified embedded graduation features. The readhead may include an incremental position extractor configured to determine an incremental position of the readhead relative to the graduation. The incremental position extractor may be configured to calculate a global phase value representing an incremental position of the readhead relative to the encoder graduation. The global phase value may be calculated by the incremental position extractor by analyzing a generally periodic pattern of graduation marks present in the snapshot image. The incremental position extractor may be configured to apply an error correction when calculating the global phase value. The applied error correction may account for variations in contributions to the calculated global phase value from different sensor elements of the plurality of sensor elements. [Brief explanation of the drawings]

[0029] The invention will now be described, by way of example only, with reference to the accompanying drawings, in which:

[0030] [Figure 1] FIG. 1 illustrates an embedded absolute position encoder device that omits the scale lines to encode absolute position information. [Figure 2] FIG. 2 illustrates an encoder readhead of the type shown in FIG. 1 in more detail. [Figure 3] FIG. 10 illustrates an absolute scale, where missing scale lines encode absolute position information. [Figure 4a] FIG. 2 is a diagram showing a cross section of an encoder scale. [Figure 4b] FIG. 1 illustrates an intensity distribution associated with a snapshot image captured by an imaging sensor. [Figure 5] FIG. 10 illustrates how data bits can be extracted from the encoder graduations. [Figure 6] FIG. 1 illustrates the effect of lens distortion on periodic intensity variations measured by an imaging sensor. [Figure 7] FIG. 1 illustrates how an image sensor can be divided into segments to allow for the generation of a lens distortion error map. [Figure 8] FIG. 1 illustrates how a Lissajous offset can correct the global phase value. [Figure 9] FIG. 10 illustrates how extracted incremental and absolute position information can be combined. DETAILED DESCRIPTION OF THE INVENTION

[0031] Referring to Figure 1, there is shown a general view of an encoder device 2 comprising a readhead 4 and a scale 6. In use, the readhead 4 and scale 6 are attached to a first object and a second object (not shown), respectively. The readhead 4 is movable back and forth along the scale 6. In particular, the readhead 4 is movable relative to the scale 6 along the x-axis shown in the figure.

[0032] The scale 6 is an absolute scale including a scale track 7, which includes a series of scale lines extending perpendicular to the direction of movement of the readhead. That is, the scale lines extend along the y-axis shown in the figure. In this example, the scale lines include a series of reflective and non-reflective lines 8 and 10. The reflective and non-reflective lines 8 and 10 typically alternate with a predetermined period. However, to encode absolute position data in the scale track 7, selected non-reflective lines 10 are omitted from the scale track 7. For example, the presence of a non-reflective line can be used to represent a "1" bit, and the absence of a non-reflective line can represent a "0" bit. The encoded absolute position data can be provided in the form of a pseudo-random number sequence or a discrete codeword.

[0033] 2 shows in more detail the internal components of the readhead 4. The readhead 4 comprises a light source in the form of a light emitting diode (LED) 12, a collimating lens 13, a beam splitter assembly 15 having a reflective surface 17 and a beam splitting surface 19. It also comprises an imaging lens 21 and a complementary metal oxide semiconductor (CMOS) image sensor 20.

[0034] In use, collimating lens 13 collimates the light emitted from LED 12 into beam 23, which is then reflected by splitter assembly reflective surface 17 towards beam splitting surface 19. Beam splitting surface 19 reflects beam 23 towards scale 6 through window 22. Light reflected from scale 6 passes through window 22 back towards beam splitting surface 19, which allows it to pass directly through window 22. The reflected light then passes through imaging lens 21, which forms an image of scale 6 on image sensor 20.

[0035] In the present example, the CMOS image sensor 20 is a one-dimensional sensor array. In particular, the CMOS image sensor 20 includes a single row of 256 elongated pixels (sensor elements) extending parallel to the length of the reflective lines 8 and non-reflective lines 10. A signal processor 24, such as a DSP, FPGA, or ASIC, is arranged to receive data from the image sensor 20. The signal processor 24 is configured to analyze the captured scale image, and an interface 38 outputs position information onto a data bus 40.

[0036] The readhead 4 is configured to implement a snapshot image capture process, which is described in more detail in WO2010 / 116144. The LED 12 is connected to a signal processor 24, which allows the LED 12 to be activated ("flashed") on demand by the signal processor 24. The image sensor 20 is also connected to the signal processor 24, allowing it to capture a snapshot image of a portion of the scale on demand (e.g., when a position measurement is required). As also described in more detail in WO2010 / 116144, the duration of the LED flash can be selected based on the relative speed of the scale and the readhead to maximize the signal-to-noise ratio of the image while minimizing image blur. For example, driving the LED 12 and electronic shutter for approximately 100 ns can be timed to within ±20 ns, resulting in the capture of a snapshot image free of motion blur. Certainly, other readhead configurations are possible.

[0037] Figure 3 is a photomicrograph showing part of a scale that may be used with a readhead of the type described with reference to Figure 2. The scale consists of dark scale lines with a basic scale period of 30 μm disposed on a light substrate. As can be seen from the figure, selected scale lines have been omitted in order to encode absolute position information, although the generally repeating scale line pattern is still present.

[0038] Figure 4a is a schematic diagram showing a portion of an encoder scale 50 of the type shown in Figure 3. A generally periodic array of dark (non-reflective) scale lines 52 is provided on a reflective (light) substrate 54, with certain lines omitted to encode absolute data bits.

[0039] Figure 4b illustrates the light intensity pattern (i.e., snapshot image) captured by the image sensor 20 of a readhead 4 of the type described with reference to Figure 2 when reading the scale in Figure 4a. The dips in the received light intensity correspond to the decrease in reflected light resulting from the dark scale lines 52.

[0040] As will be explained in more detail below, a signal processor 24 in the readhead 4 analyses the captured snapshot images to extract both incremental and absolute position information.

[0041] Incremental position information is determined from the intensity pattern of the captured image using a Discrete Fourier Transform (DFT) at the scale line frequency. The real and imaginary components of the DFT allow for the extraction of the total, or global, phase of the captured image (i.e., a global phase value is calculated from all information in the captured image). This results in incremental position values ​​that correspond to fractions of the basic scale period. For example, for the scale shown in Figure 3, which has a basic scale period of 30 μm, the incremental positions are between 0 and 30 μm, with a resolution of better than 1 nm.

[0042] The global phase information is also used to identify the center position of each potential line on the scale. A correlation is then performed on the images captured at each of these locations to determine whether any dark lines are present. In this example, each captured image of the scale extends approximately 2 mm in the measurement direction, allowing a 65-bit binary number to be extracted that corresponds to the scale pattern captured by the snapshot image (i.e., the snapshot image of the portion of the scale directly beneath the readhead). Only one-quarter of these 65 bits are required to define a unique position; the remaining bits provide redundant information, allowing the correct position to be confirmed even if portions of the scale are obscured. The signal processor 24 then converts the bit sequence into a coarse, absolute position of the readhead, using appropriate error correction analysis to account for any misidentified bits. This process allows the position of the readhead to be detected to within one division period, which for the scale shown in FIG. 3 is within 30 μm.

[0043] The signal processor 24 then combines the coarse absolute position (i.e., an integer multiple of the scale period) with the global phase information (i.e., having a resolution much smaller than the scale period). A high-resolution absolute position can then be output by the readhead.

[0044] The measurement performance of the above-described apparatus can be affected by code feedthrough error, which arises from the inherent embedding of absolute codes into the incremental scale (e.g., by omitting scale lines) in combination with spatial non-uniformities across the optical imaging device and / or image detection system. For example, distortions will almost inevitably be present in the imaging lens of the system. If the imaging lens contains inherent distortions due to manufacturing errors or design, the imaged light will not be imaged uniformly across the image sensor. This means that even if a perfectly periodic scale pattern is imaged, the imaged pattern will have a period that varies slightly across the image sensor.

[0045] Referring to FIG. 5, the concept of code feedthrough can be illustrated by considering a scale portion having five equally spaced scale line positions (i.e., a scale period defining the scale line positions). Four scale lines are present, but one scale line is omitted. For each section of the scale that includes a scale line, the intensity change at the associated portion of the sensor consists of a cosine wave, encoding a "1" bit. These cosine sections are labeled 50a, 50b, 50c, and 50e. For sections of the scale where no scale lines are present, there is a flat light intensity that encodes a "0" bit. This flat section is labeled 50d. It should be noted that the scale period need not match the period of the array of sensor elements on the sensor that the light impinges upon; therefore, the intensity pattern for each of the five sections of the scale shown may impinge on multiple sensor elements.

[0046] The four cosine wave sections 50a, 50b, 50c, and 50e present in the image contribute to the global phase value extracted by DFT analysis, while the flat intensity region 50d where no scale lines are present does not contribute to the global phase value. This means that if the scale encodes the codeword "11101," specific regions of the scale image will contribute to the global phase value. If different codewords are encoded on the scale, different regions of the scale image will contribute to the global phase value. Therefore, reading different codewords will result in different regions of the image contributing to the measured global phase value, and therefore, it can be seen that different error sources may exist for different codewords.

[0047] As an example, any imaging optics can inherently cause image distortion. Such distortion in the imaging optics can result in variations in the calculated global phase value that are dependent on the imaged codeword. In other words, each cosine wave contributes to the global phase of the image. If each cosine wave contribution is slightly shifted spatially due to lens distortion, each cosine wave, or "bit," adds a position error equal to the distortion at that data bit's location in the image. The total position error is therefore the average of the distortion values ​​at each bit. Thus, the total position error resulting from such distortion in the imaging optics is codeword dependent.

[0048] For a scale with no 0 bits (i.e. a purely incremental scale), the effect of lens distortion described above will be constant because the code pattern across the sensor is constant (i.e. there is a continuous cosine wave across the sensor due to all 1 bits, regardless of which part of the scale is being read). However, to encode data bits, 0 bits must be added to the image. Therefore, as the code in the image changes, the average distortion contribution due to 1 bits, and therefore the total position error, will change. This means that the effect of lens distortion is a position dependent error, and because the code in the image feeds through to the position calculated by the read head, it can also be referred to as code feedthrough error.

[0049] The effects of such lens distortion will be explained in more detail with reference to FIG. 6. The top row 60 of FIG. 6 shows the effective width of the detected graduation periods 62a-62m on the graduation. While the graduation itself may be perfectly periodic, lens distortion causes the image of the various graduation periods formed on the sensor to vary across the sensor. As shown, the size of the regions gradually varies, with the left regions (e.g., detected graduation periods 62a-62g) distorting the measured incremental positions to the right and the right regions (e.g., detected graduation periods 62h-62m) distorting the measured incremental positions to the left. The bottom row 64 shows the graduation periods 66a-66m that would be formed if the image were undistorted. The middle plot 68 shows the local positional change from left to right for each imaged graduation period due to lens distortion.

[0050] It can be seen that when a scale encoding only one bit is provided (i.e., when scale periods 62a-62m each contain one waveform repetition), the effect of lens distortion will be averaged across the entire image, and the measured position (i.e., the global phase value derived from the DFT analysis) will be the same as the position measured when any lens distortion is absent. However, in the extreme case, if the detected scale periods 62a-62g contain a cosine wave (i.e., a coded 1 bit) but the detected scale periods 62h-62m are all flat intensity (i.e., a coded 0 bit), the measured position (i.e., the position indicated by the global phase value extracted by the DFT analysis) will be distorted to the right. Therefore, the position error due to lens distortion can be considered to cause a codeword-dependent error.

[0051] The readhead's signal processor 24 calculates a global phase value (i.e., providing an incremental position measurement) using spatial Fourier analysis. In particular, the global phase value is calculated from a discrete Fourier transform (DFT) performed at a carrier frequency equal to the graticule line frequency. In digital signal processing systems, the DFT is approximated using fixed-point arithmetic. As such, the DFT consists of image multiplication and accumulation with a sine or cosine lookup table (LUT). In other words, the n individual light intensity values ​​captured from each of the sensor's pixels (i.e., the "image(n)" values ​​contained in Equations 1a and 1b below) are multiplied by the corresponding coefficients in the cosine and sine LUTs, and summations are performed to generate real and imaginary phase components. This is mathematically expressed in Equations (1a) and (1b) below:

[0052]

number

[0053] and

[0054]

number

[0055] is.

[0056] Corrections to compensate for the lens distortion or the like described above can be implemented by distorting the sine and cosine waves used in the Fourier analysis. In other words, the cosine and sine waves can be distorted in the same way that a captured snapshot image is distorted by a lens, and the resulting real and imaginary components, and therefore positions, are free of code feedthrough errors. In the DFT analysis described above, such adjustments can include applying appropriate corrections (e.g., defined in an error map or error function) to the sine and cosine LUTs.

[0057] There are various ways in which distortion can be measured so that appropriate corrections can be applied. For example, distortion can be calculated and used "on-the-fly." Such on-the-fly measurement is advantageous because distortion can vary with installation and operating tolerances, such as the distance between the scale and the readhead. In other words, the readhead of an encoder may include functionality to measure and correct for distortion while the encoder is in operation.

[0058] An example of a method for making adaptive measurements of lens distortion will now be described with reference to Figure 7. The illustrated image sensor 70 may be included in a readhead of the type described above and in this example comprises a linear array of 256 sensor elements (pixels). The sensor elements are conceptually divided into five groups 72a-72e, each group containing approximately the same number of sensor elements.

[0059] The images of the scale produced by each of the groups of five sensor elements 72a-72e are analyzed separately using DFT to extract phase values. In other words, five individual phase values ​​φ1 to φ5 are calculated from the outputs of the five sensor elements 72a-72e. This is possible because each fifth of the scale typically contains a sufficient number of scale periods to allow phase information to be extracted. Alternatively, an overall phase value can be calculated from all sensor elements in the five groups.

[0060] If the optical imaging system were perfect, the phase values ​​φ1 through φ5 would be identical to each other and the global phase value would be the same. Therefore, any phase differences measured between different groups of sensor elements would provide a measure of the effective image distortion for the image of each of the sensor groups. A correction can then be applied to the Fourier coefficients used to extract phase information from pixels in the various sensor groups to account for any phase differences measured between the sensor groups.

[0061] It should be noted that the absolute code embedded in the scale being read can also affect the measurement of the phase value. For example, if there are a large number of adjacent missing scale lines (encoded 0 bits) or if there is dirt on part of the scale, it may not be possible to extract phase information for one or more of the sensor element groups 72a-72e, or the noise in such phase measurements may be unacceptably high. Therefore, an averaging approach may be employed to establish an average phase difference between the five sensor element groups as the scale moves back and forth relative to the readhead. The phase difference may then be updated during use.

[0062] While the above approach ensures that optimal performance is maintained, it is also possible to calculate and program distortions into the encoder readheads when they are manufactured. This distortion correction can be, for example, a theoretical intrinsic lens distortion, an average distortion measured over many readhead units, or an intrinsic distortion calculated for each readhead. It would also be possible to pre-calculate multiple distortion corrections for variations in readhead setup conditions. For example, multiple error maps or functions could be calculated for different ride heights, temperatures, scale types, etc.

[0063] It should be noted that although lens distortion is mentioned above, there may be other similar error sources that are codeword dependent. For example, any variations in the spacing or size of the sensor elements will have a similar effect on lens distortion.

[0064] Now, with reference to FIG. 8, it will be described how a similar approach can be used to additionally or alternatively correct for fixed noise.

[0065] Each sensor element (pixel) in an image sensor has an associated offset. This is the signal level read from the pixel when no light is present. Ideally, these offset values ​​are uniform across the entire image sensor, but slight variations in the image sensor manufacturing process can cause variations in both offset and gain for each pixel. Additional analog circuitry may also add offset and / or gain to the image. This fixed pattern noise (FPN) is independent of the position of the readhead relative to the scale or the scale pattern being read. Instead, it adds an offset to the real and imaginary components of the discrete Fourier transform. Plotting the real and imaginary components against each other forms a Lissajous with the offset centered. This produces an error that is circular with a period equal to the scale period. Such an offset-Lissajous 80 is shown in Figure 8.

[0066] The offset due to fixed pattern noise is measurable and / or calculable, and can therefore be corrected by removing the real and imaginary components of this offset from the DFT calculation before calculating the phase, which effectively shifts the center of the Lissajous to provide a central Lissajous 82.

[0067] The offset can be calculated in several ways, which are described below.

[0068] The offset can be measured "on-the-fly." For example, the non-zero center of a Lissajous can be iteratively changed using calculations from a history of measurement points. A new non-zero center can then be calculated and added to the current offset being corrected. This iterative approach can improve the accuracy of the correction over time.

[0069] Alternatively, any fundamental offset arising from the mathematical properties of the Discrete Fourier Transform can be calculated. For example, the FPN of an image sensor can be measured during a calibration procedure that involves taking images in the dark. Alternatively, the calibration procedure can involve using an average of multiple images taken in the dark. This can be performed at the time of manufacture. The resulting offset can be calculated as follows:

[0070]

number

[0071] and

[0072]

number

[0073] is.

[0074] It should be noted that each pixel in an image sensor also has an associated gain, and in practice, pixel gains will vary slightly from one another. Although the calculations are somewhat more complex, gain variation, or photo response nonuniformity (PRNU), contributes to the periodic and half-period error. If desired, this gain variation can be corrected by dividing the LUT components by the gain of the corresponding pixel. Therefore, pixel gain variation can also be removed by this approach, if desired.

[0075] It should also be noted that because the DFT is performed using lookup tables that approximate trigonometric functions, these tables are not perfect and approximation errors can cause offsets. In particular, if the lookup tables do not sum to zero, the intensity offset (i.e., the DC component) of the image will not be removed by the DFT calculation, and offsets will occur in the real and imaginary components as follows:

[0076]

number

[0077]

number

[0078] The processing of the captured snapshot images will be described in more detail with reference to Figure 9. As described above with reference to Figure 2, the snapshot images of the scale collected by the image sensor 20 of the readhead 4 are passed to a signal processor 24. The configuration of the signal processor to enable position to be calculated from the collected snapshot images will now be outlined.

[0079] Each snapshot image generated by the image sensor is composed of a set of image intensity values ​​90 read from each of the n sensor elements in the image sensor (e.g., from the 256 sensor elements of image sensor 20). The image intensity values ​​90 (denoted I1 through In, respectively, and which together comprise the captured snapshot image) are passed to a position analyzer, which may be implemented by a suitable signal processor. Position analyzer 91 includes an absolute position extractor 92 and an incremental position extractor 94.

[0080] The incremental position extractor 94 performs a DFT by multiplying the set of image intensity values ​​90 individually by a set of sine coefficients 96 and a set of cosine coefficients 98. These may be provided as look-up tables containing the cosine and sine coefficients. The sets of sine and cosine coefficients 96 and 98 are stored in a local memory accessible by the signal processor. In particular, a first image intensity value I1 is individually multiplied by a first sine coefficient S1 and a first cosine coefficient C1, and a second image intensity value I2 is individually multiplied by a second sine coefficient S2 and a second cosine coefficient C2.

[0081] A summation of the values ​​resulting from the cosine analysis is then performed (i.e., adding the values ​​I1 x C1, I2 x C2, ..., In x Cn) to calculate the real Fourier component of the phase (Re). A summation of the values ​​resulting from the sine analysis is then performed (i.e., adding the values ​​I1 x S1, I2 x S2, ..., In x Sn) to calculate the imaginary Fourier component of the phase (Im). By combining the real and imaginary values, it is possible to calculate a global phase value Φ. The global phase value Φ (i.e., an angle between 0° and 360°) provides a measure of the position of the readhead relative to the scale, with a resolution that will be much finer than the period of the scale.

[0082] The absolute position extractor 92 also receives the set of image intensity values ​​90 and performs an analysis (using a global phase value Φ incremental position extractor 94 to identify various scale line positions) to determine whether a scale line is present at each scale line position. A 65-bit binary number 100 is extracted (note that the sensor element period is approximately four times finer than the scale pitch) and this binary number 100 is compared to a set of code words stored in an absolute lookup table 102. One or more code words are identified in the binary number 100, thereby generating an absolute position measurement (A). This absolute position measurement (A) defines the position of the readhead relative to the scale to an accuracy of one scale period.

[0083] The global phase value Φ is then combined with the absolute position measurement A to produce an absolute measured position P that is output from the position analyzer 91. Although not shown, such position measurements may be output via a suitable data bus (e.g., the readhead may include a suitable data bus interface). Position measurements may be output on demand or periodically.

[0084] By adjusting the sine and cosine coefficients 96 and 98 used to generate the global phase value Φ, various errors are removed from the position calculations. To that end, the position analyzer 91 may store multiple sine and cosine lookup tables or functions, with the coefficients being modified to account for the errors. Alternatively, an error map or error function may be generated by or passed to the position analyzer 91, which uses it to appropriately adjust the various coefficients (S1, S2, S3, etc. and C1, C2, C3, etc.) in the sine and cosine LUTs.

[0085] It should be noted that to reduce spurious errors, the readhead may calculate the absolute position output by linear extrapolation from the two most recent position readings. In other words, the absolute position derived from each snapshot image of the scale does not necessarily provide the position value output by the encoder. For example, additional processing may be performed before any position value is output by the readhead. This is described in more detail in WO2010 / 139964.

[0086] Although the embodiments described above involve reflective encoders, the present invention can also be used with transmissive encoder devices (where light is transmitted through the scale rather than reflected from the scale).

[0087] In the embodiments described above, the scale is a linear scale. However, it will be understood that the scale can be a rotary scale. Furthermore, the scale described above only allows for one-dimensional measurements. However, it will be understood that this is not necessarily the case, for example, the scale can also allow for two-dimensional measurements. For example, a two-dimensional image sensor may be provided.

Claims

1. 1. A readhead for reading an encoder graduation having a series of graduation marks arranged in a generally periodic pattern that encode incremental position information, the series of graduation marks also including embedded graduation features that encode absolute position information, comprising: The read head is an image sensor including a plurality of sensor elements for capturing a snapshot image of a portion of the encoder scale; a position analyzer for determining a relative position of the readhead with respect to the encoder graduation from the captured snapshot image, the position analyzer comprising: (1) an absolute position extractor configured to identify embedded graduation features in the snapshot image and calculate therefrom an absolute position of the readhead with respect to the encoder graduation; and (2) an incremental position extractor configured to calculate a global phase value describing incremental positions of the readhead with respect to the encoder graduation by analysis of the generally periodic pattern of graduation marks present in the snapshot image; Equipped with the incremental position extractor is configured to apply an error correction when calculating the global phase value, the applied error correction accounting for variations in contributions to the calculated global phase value from different sensor elements of the plurality of sensor elements.

2. 2. The readhead of claim 1, wherein the error correction applied by the incremental position extractor depends on the embedded scale features identified in the snapshot image by the absolute position extractor.

3. 3. A readhead as claimed in claim 1 or 2, wherein the error correction applied by the incremental position extractor takes into account variations in density of the scale features across the snapshot image.

4. 4. A readhead as claimed in claim 1, wherein the error correction applied by the incremental position extractor accounts for variations in offset or gain between outputs of multiple sensor elements.

5. 5. A readhead according to claim 1, wherein the incremental position extractor is configured to analyse the captured snapshot images using spatial frequency analysis to calculate the global phase value.

6. 6. The readhead of claim 5, wherein the snapshot image captured by the image sensor includes a plurality of sensor output values ​​from the plurality of sensor elements, and the incremental position extractor is configured to implement a discrete Fourier transform analysis in which each of the plurality of sensor output values ​​is multiplied with corresponding values ​​in a cosine lookup table and a sine lookup table to provide real and imaginary phase components from which the global phase value is calculated.

7. 7. The readhead of claim 6, wherein the incremental position extractor is configured to apply the error correction by applying an error map or error function to the values ​​contained in the cosine and sine lookup tables, or by applying the error map or error function when generating the cosine and sine lookup tables.

8. 7. The readhead of claim 6, wherein the incremental position extractor is configured to apply the error correction by selecting a cosine lookup table and a sine lookup table from a plurality of different cosine and sine lookup tables incorporating different error corrections.

9. 7. The read head of claim 6, wherein the incremental position extractor is configured to apply the error correction by either adjusting the real and imaginary phase components prior to the calculation of the global phase value, or by adjusting a preliminary global phase value derived from the real and imaginary phase components to generate the global phase value.

10. 10. A readhead according to any one of claims 1 to 9, wherein the error correction to be applied is calculated prior to use of the readhead using an encoder scale.

11. 10. The readhead of claim 1, wherein the incremental position extractor is configured to calculate an error correction during use of a readhead having the encoder graduation from one or more captured snapshot images of the encoder graduation, the error correction being determined by analysing the generally periodic pattern of graduation marks in a plurality of sub-regions of each snapshot image and determining an apparent phase difference in the generally periodic pattern of graduation marks between the sub-regions.

12. 12. A readhead according to any one of claims 1 to 11, wherein the image sensor is an optical image sensor configured to read optical encoder scales, the optical image sensor comprising a plurality of optical sensor elements.

13. 13. An encoder device comprising a readhead according to any one of claims 1 to 12 and an encoder scale, the encoder scale having a series of scale marks arranged in a generally periodic pattern that encode incremental position information, the series of scale marks also including embedded scale features that encode absolute position information.

14. The encoder apparatus of claim 13 , wherein the embedded tick marks comprise omitted tick marks.

15. 1. A method of analyzing a snapshot image of an encoder graduation captured by a readhead, the encoder graduation having a series of graduation marks arranged in a generally periodic pattern that encode incremental position information, the series of graduation marks also including embedded graduation features that encode absolute position information; (1) identifying embedded graduation features present in the snapshot image and calculating therefrom the absolute position of the readhead relative to the encoder graduation; (2) calculating a global phase value describing the incremental position of the readhead relative to the encoder graduation by analyzing the generally periodic pattern of graduation marks present in the snapshot image; (3) determining the relative position of the readhead with respect to the encoder scale from the absolute position calculated in step (1) and the global phase value calculated in step (2); and Equipped with 10. The method of claim 9, wherein step (2) comprises applying an error correction in calculating the global phase value, the error correction accounting for variations in contributions to the calculated global phase value from different regions of the snapshot image.