WO2014188894A1 - Method for self-calibrating a rotary encoder - Google Patents

Method for self-calibrating a rotary encoder Download PDF

Info

Publication number
WO2014188894A1
WO2014188894A1 PCT/JP2014/062543 JP2014062543W WO2014188894A1 WO 2014188894 A1 WO2014188894 A1 WO 2014188894A1 JP 2014062543 W JP2014062543 W JP 2014062543W WO 2014188894 A1 WO2014188894 A1 WO 2014188894A1
Authority
WO
WIPO (PCT)
Prior art keywords
scale
frequency
distortion parameters
encoder
read
Prior art date
Application number
PCT/JP2014/062543
Other languages
French (fr)
Inventor
Amit Agrawal
Jay Thornton
Original Assignee
Mitsubishi Electric Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/899,025 external-priority patent/US9423281B2/en
Application filed by Mitsubishi Electric Corporation filed Critical Mitsubishi Electric Corporation
Priority to DE112014002505.4T priority Critical patent/DE112014002505T5/en
Priority to KR1020157036050A priority patent/KR101829521B1/en
Priority to JP2015552312A priority patent/JP6143885B2/en
Priority to CN201480029584.3A priority patent/CN105229424B/en
Priority to TW103117466A priority patent/TWI564548B/en
Publication of WO2014188894A1 publication Critical patent/WO2014188894A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D18/00Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
    • G01D18/001Calibrating encoders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/26Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light
    • G01D5/32Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light
    • G01D5/34Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells
    • G01D5/347Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells using displacement encoding scales
    • G01D5/34707Scales; Discs, e.g. fixation, fabrication, compensation
    • G01D5/34715Scale reading or illumination devices

Definitions

  • This invention relates to measuring devices and in particular to absolute rotary encoders for measuring absolute angle of rotation.
  • CNC numerically controlled
  • Typical encoders include a scale and a read-head.
  • Optical encoders are typically used to measure absolute or relative linear positions or rotational angles.
  • Relative encoders measure the relative position or angle within a period of the scale, and require counting the number of scale periods traversed to determine the absolute position or angle.
  • Absolute encoders do not require memory or power to store the current position or angle, and can obtain these at any time, particularly at start-up.
  • Optical encoders can be linear or rotary.
  • a linear encoder measures a position, and a rotary encoder measuring an angle.
  • Conventional absolute rotary encoders typically use multiple tracks and apply sine-cosine based interpolation method to achieve high resolution.
  • a single track absolute linear encoder that uses a single scale and a single CCD/CMOS sensor is described in the parent Application. That encoder does not use the conventional sine-cosine based interpolation method. Instead, that encoder detects edges, or zero-crossings, in a scan-line, and fits a model to the edge positions to obtain high resolution absolute position information. That encoder acquires a ID image of the linear scale with a linear read-head.
  • High accuracy rotary encoders are required in precise machining and manufacturing equipment. However, several errors can be introduced in the rotary encoder during manufacturing. These include errors in the scale pattern, installation of the scale on a rotary shaft, read-head alignment, and noise in electrical circuits.
  • the spacing between the scale lines varies due to the circular nature of the scale.
  • Another source of errors is eccentricity induced when the scale on a rotary disc.is arranged on a rotary shaft.
  • out-of-plane motion (wobble), and misalignment in installation can also lead to variation of the distance between the read-head and the scale.
  • the encoder can correct manufacturing variations, errors in the scale pattern, installation of the scale on the rotary shaft, read-head alignment, and noise in electrical circuits. During operation, temperature variations and mechanical vibrations can cause further distortions, further reducing accuracy.
  • the center of the sensor receives more light compared to the sides. This results in vignetting, where the acquired ID image is brighter in the center and darker on the sides.
  • Vignetting leads to errors in detected zero-crossings (edges), thereby reducing the overall accuracy.
  • 6,598,196 drives the servo system on a predetermined trajectory such that encoder errors occur at frequencies outside the servo feedback loops. Such requirements increase calibration effort and time.
  • U.S. 7,825,367 describes a self-calibrating rotary encoder where angular differences are determined as a Fourier series.
  • Sine-cosine interpolation based rotary encoders can be calibrated as described in U.S. 8,250,901.
  • the voltage data corresponding to sine and cosine of the rotation angle is fitted to an ellipse.
  • Linear calibration parameters are obtained by transforming the ellipse into a circle.
  • U.S. 7,825,367 describes a rotary encoder capable self-calibration.
  • the rotary encoder includes a rotary disk with an angle code, a light source, and a linear sensor (CCD) that reads the angle code.
  • a processing unit acquires reading values f(0) for predetermined angles.
  • a difference between reading values ⁇ ( ⁇ + ⁇ ) and f(0) within a reading range on the linear sensor is g(0, ⁇ ).
  • the difference is determined as a Fourier series.
  • the rotation angle 0 at a location is obtained by analyzing the CCD image.
  • the self- calibration is based on finding the rotation angle at two different locations, and analyzing the difference for use in the self-calibration.
  • the embodiments of the invention provide a self-calibrating, single track, single read-head absolute rotary encoder.
  • the encoder acquires measurements over one full rotation (360° ) or part of a full rotation.
  • the encoder compensates for any errors or distortions introduced during manufacturing and later use as environmental or mechanical conditions change.
  • the encoder can also compensate for vignetting due to illumination variations.
  • the embodiments do not require multiple read-heads to cancel eccentricity errors. This significantly reduces the cost and complexity of the encoder.
  • the embodiments do not require moving the motor at multiple speeds, or pre-determined trajectories for calibration.
  • the invention also corrects for other installation errors, such as change of gap and shaft wobble.
  • Fig. 1 A is a schematic of a rotary encoder according to embodiments of the invention.
  • Fig. IB is a schematic of a circular scale of sectors according to embodiments of the invention.
  • FIG. 1C is a schematic of the circular scale and a linear read-head according to embodiments of the invention.
  • Fig. ID is a block diagram for calibrating the encoder of Fig. 1 A according to embodiments of the invention
  • Fig. 2 is a graph of spatial frequency F ⁇ 6) with the rotation angle according to embodiments of the invention.
  • Fig. 3 is a graph of spatial frequency variations due to noise according to embodiments of the invention.
  • Fig. 4 is a graph of variations in spatial distortion parameter ⁇ ( ⁇ ) with the rotational angle according to embodiments of the invention.
  • Fig. 5 is a graph of variations in spatial distortion parameter ⁇ ( ⁇ with the rotation angle according to embodiments of the invention.
  • Fig. 6 is a graph of a fourth degree polynomial fitted to ⁇ ( ⁇ ) according to embodiments of the invention.
  • Fig. 7 is a graph of scanline obtained by the ID sensor and depicts the vignetting
  • Fig. 8 is a graph of a scaling factor according to embodiments of the invention.
  • Fig. 9 is a graph of an offset factor according to embodiments of the invention.
  • Fig. 10 is a graph of corrected sensor values after applying vignetting correction according to embodiments of the invention.
  • a read-head can be a linear charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) to acquire ID images of a rotating circular scale.
  • the ID image includes a linear array of pixels.
  • the scale includes reflecting and non-reflecting regions arranged according to a de Bruijn sequence. The de Bruijn sequence is well suited, because the pattern itself is circular in nature.
  • Fig. 1 shows a small portion of a circular scale 100 of an absolute encoder for one embodiment of our invention. Details.of.the scale.are described in U.S. Application 13/100092. The scale is used to determine a high-resolution phases P 120.
  • the scale can include alternate light reflecting 101, and non-reflecting 102 marks or bits.
  • the marks can also alternate between opaque and
  • Each mark is B microns wide, which the scale resolution.
  • the width B of each mark is a half-pitch. In one embodiment, B is 20 microns. Because of the relative small size of the marks, the example marks shown in the figures are not to scale.
  • a read-head 1 10 is mounted at some distance and parallel to the scale.
  • the read-head includes a sensor 1 1 1 , a (LED) light source 1 12, and an optional lens.
  • the sensor can be a detector array of N sensors, e.g., N can be 512.
  • the array can be complementary metal-oxide-semiconductor (CMOS) or charge coupled device (CCD).
  • CMOS complementary metal-oxide-semiconductor
  • CCD charge coupled device
  • the read-head also be associated with a digital signal processor 1 15 connected to sensor and a memory. It is understood that other types of processors can be used.
  • the marks or bits on the example scale 100 can be arranged on a rotatable disk 130 or shaft. The only requirement is that the marks are arranged sequentially for a particular code or non-periodic sequence.
  • the marks are arranged as sectors of a circle on the scale 130.
  • the read-head 111 includes a linear array of sensors 1 14.
  • the read-head is centered tangentially at an offset 115 with respect to the center of rotation 1 16. Therefore, it is noted that sensor pixels near either end of the linear read-head observe a wider part of the sectors than the sensors near the center of the read-head. This leads to a distortion of the signal on the ID sensor.
  • the DSP performs calibration of the encoder as shown in Fig. ID.
  • the calibration can be performed offline, periodically or continuously during operation of the encoder.
  • calibration samples 150 are acquired by the read- head 111 for rotational angles of the circular scale 101 for a full rotation of 360°, or some partial rotation.
  • the partial rotation can be useful where the scale oscillates circularly instead of undergoing full rotations. Note that calibration samples can also be acquired for multiple rotations.
  • Frequency F, and distortion parameters a and ⁇ 161 are estimated 160 from the calibration samples.
  • the frequency F, and distortion parameters a and ⁇ can be directly stored in a memory, e.g., as a look-up .table, , and are sufficient to accurately determine phases of the encoder during operation.
  • the table look-up may be advantageous if the look-up is fast, or takes less time and memory than evaluating the parametric function.
  • a phase 195 of the encoder is determined 190 from test samples 151 and the modeled variations in the frequency F and distortion parameters a and ⁇ . It should be understood that the variations can be obtain from the raw parameters stored in the memory as a look-up table during operation. It is understood that the parameters can also be acquired during real-time operation of the encoder.
  • Every subsequence has a. finite, length and. is unique, e.g.,. a. de Bruijn - sequences 103.
  • Each unique sequence corresponds to a coarse phase angle. It is an object of the invention to self-calibrate the encoder so that a fine or precise angle is obtained.
  • a Ar-ary de Bruijn sequence B(k, ri) of order n is a cyclic sequence of a given alphabet (number of angles) with size k, for which every possible subsequence of length n in the alphabet appears as a sequence of consecutive characters exactly once. If each B(k, ri) has a length k", then there are (k ⁇ h (n l ⁇ )/k n distinct de Bruijn sequences B(k, ri). When the sequence is truncated from front or back, the resulting sequence also has the uniqueness property with the same n. It should be noted that any non-periodic sequence with nonrepeating subsequences can be used.
  • the detector array requires a field of view (FOV) of at least n bits for decoding to be possible.
  • FOV field of view
  • the field of view is designed to be 1-2 mm to have the desired accuracy.
  • each bit of the sequence i.e., each half-pitch of the scale
  • maps to at least two pixels in the linear detector array. This requires at least 16 X 2 32 pixels, which is well-below the number of pixels in conventional sensors.
  • the number of pixels per half-pitch can be increased.
  • the reflecting and non-reflecting regions are equi-angular, and not equi-distance when using a linear sensor, see Fig. 1C. Due to the circular scale, the width of reflecting/non-reflecting regions increases at the both ends of the sensor. Thus, the spatial frequency F is not constant along the sensor.
  • z(i) be the detected zero-crossings (edge locations)
  • P be the phase angle
  • F be the frequency
  • M be the number of bits between two successive zero-crossings z i) and z(i + 1). If we define
  • parameters of the cubic model include the phase P, the spatial frequency F, and spatial distortion parameters a and ⁇ .
  • This model accounts for the error due to non-uniform spacing of scale lines on the circular disk 130.
  • N equations are obtained. For example, If there are N zero-crossings, z(l), z(20), then corresponding c ⁇ ), c(20) are known. These equations describe a linear system in unknowns P, F, a and ⁇ . We solve the linear system to obtain the values of P, F, a and ⁇ .
  • Coarse_Position is the phase angle based only on the underlying code subsequence of the image.
  • K can be 1024.
  • the estimated parameters F, a and ⁇ 161 are expressed in terms of the actual rotary angle ⁇ as F 6), ⁇ ( ⁇ ), and ⁇ ).
  • the embodiments considers the variations in the three parameters F(ff), ⁇ ), ⁇ ( ⁇ ). Due to imaging noise, there is a small variation (normal variation) in these parameters.
  • the variation in these parameters should be normal variation over a one full rotation or part thereof, as ⁇ varies from 0 to 360 degrees.
  • the spatial parameters F ⁇ 9), ⁇ ( ⁇ ), ⁇ ( ⁇ ) show a large variation than can be attributed to noise.
  • Fig. 2 shows an example 200 of estimated F 6) with rotation angle over one full rotation.
  • Fig. 3 shows frequency variations 300 in more details.
  • the high frequency variations 301 are due to noise.
  • the low frequency variations 302 are due to eccentricity wobble and gap change. It is an object of the invention to correct for these variations.
  • these variations are modeled using a parametric function.
  • the shaft with the scale is rotated a full (360° ) or partial rotation ( ⁇ 360°), and the encoder scale is sampled at several locations.
  • the scale can be rotated every 2°, and sensor images corresponding to angles are stored in the memory. For all these angles, the estimated values of frequency and distortion parameters are stored along with estimated encoder phase P.
  • a suitable parametric function or spline is used for modeling the variations in frequency and distortion parameters using least squares fitting.
  • Fig. 4 shows the variation in a(ff) 400, which can be modeled using a fourth degree polynomial model with respect to the rotational angle ⁇
  • ⁇ ( ⁇ ) t x + 1 2 0 + 1 3 0 2 + 1 4 0 3 + ⁇ 5 ⁇
  • t , t 2 , t 3 , t 4 , and t 5 are model parameters.
  • the model parameters are estimated using the least square fitting of estimated a ⁇ ff).
  • Fig. 5 shows the variation 500 for ⁇ ).
  • the model degree or form need not be same for all three parameters.
  • the frequency F(0) can be modeled using a spline basis function, and a(ff) and ⁇ ) can be modeled using polynomial functions.
  • Fig. 6 shows the estimated ⁇ ( ⁇ ) fitted to a fourth degree polynomial 600 for the full rotation. After curve fitting, the model parameters are stored in a memory of the DSP 1 15.
  • the last encoder position can be used to determine the value of frequency and spatial distortion parameters for the current position. These values are used to determine the phase P.
  • the frequency and distortion parameters can be iteratively determined along with the phase. This is useful at startup, where the last encoder phase is unknown or invalid.
  • a first estimate of current rotation angle, frequency and distortion parameters can be obtained as described above.
  • the parameters F, a and ⁇ for current position are re-determined using their respective models. Then the new value of these parameters is used to re-determine the phase P.
  • the self-calibration is based on rotation angles at two different locations, and analyzing the difference for the self-calibration, and use it for calibration.
  • Nakamura does not describe spatial frequency and distortion parameters.
  • the encoder according to the invention is not based on the actual rotation angle as in Nakamura, but rather on the underlying frequency and distortion parameters that are used for modeling the zero-crossings at a particular rotation angle.
  • vignetting correction can also be performed by acquiring measurements 700 during the rotation of the scale.
  • a maximum pixel value m ⁇ (p) is a scaling factor 800
  • a minimum pixel value m 2 (p) is an offset factor 900.
  • the sensor values i(p) are modified 1000 as
  • This modification ensures that the minimal intensity of each pixel is set to zero and the maximal intensity of each pixel is set to 255 as the encoder is rotated. This removes the vignetting effect.
  • the steps of the method to perform self-calibration and vignette correction can be performed in the DSP, or similar microprocessor connected to a memory and input/output interfaces as known in the art.

Abstract

A method for self-calibrating a rotary encoder including a single read-head (111) and a circular scale (101), comprises the steps of: acquiring calibration samples (150) by the read-head for rotational angles (Θ) of the circular scale; and estimating spatial frequency (F) and spatial distortion parameters (α, β) of the encoder from the calibration samples for self-calibrating the rotary encoder.

Description

[DESCRIPTION]
[Title of Invention]
METHOD FOR SELF-CALIBRATING A ROTARY ENCODER [Technical Field]
[0001]
This invention relates to measuring devices and in particular to absolute rotary encoders for measuring absolute angle of rotation.
[Background Art]
[0002]
Accurate estimation of linear positions and rotational angles is an important task in industrial automation, and similar applications. Devices, such as numerically controlled (CNC) machines, drill bits, robot arms or laser cutters, and assembly lines need precise measurements. Feedback control is often used for precision measurements.
[0003]
Typical encoders include a scale and a read-head. Optical encoders are typically used to measure absolute or relative linear positions or rotational angles. Relative encoders measure the relative position or angle within a period of the scale, and require counting the number of scale periods traversed to determine the absolute position or angle. Absolute encoders do not require memory or power to store the current position or angle, and can obtain these at any time, particularly at start-up.
[0004] Optical encoders can be linear or rotary. A linear encoder measures a position, and a rotary encoder measuring an angle. Conventional absolute rotary encoders typically use multiple tracks and apply sine-cosine based interpolation method to achieve high resolution.
[0005]
A single track absolute linear encoder that uses a single scale and a single CCD/CMOS sensor is described in the parent Application. That encoder does not use the conventional sine-cosine based interpolation method. Instead, that encoder detects edges, or zero-crossings, in a scan-line, and fits a model to the edge positions to obtain high resolution absolute position information. That encoder acquires a ID image of the linear scale with a linear read-head.
[0006]
High accuracy rotary encoders are required in precise machining and manufacturing equipment. However, several errors can be introduced in the rotary encoder during manufacturing. These include errors in the scale pattern, installation of the scale on a rotary shaft, read-head alignment, and noise in electrical circuits.
[0007]
For rotary encoders, the spacing between the scale lines varies due to the circular nature of the scale. Another source of errors is eccentricity induced when the scale on a rotary disc.is arranged on a rotary shaft. In addition, out-of-plane motion (wobble), and misalignment in installation can also lead to variation of the distance between the read-head and the scale. These factors affect the overall accuracy of rotary encoders. The encoder can correct manufacturing variations, errors in the scale pattern, installation of the scale on the rotary shaft, read-head alignment, and noise in electrical circuits. During operation, temperature variations and mechanical vibrations can cause further distortions, further reducing accuracy.
[0008]
Due to the being closer to the light source, the center of the sensor receives more light compared to the sides. This results in vignetting, where the acquired ID image is brighter in the center and darker on the sides.
Vignetting leads to errors in detected zero-crossings (edges), thereby reducing the overall accuracy.
[0009]
Several previous methods require multiple additional read-heads to cancel out errors due to eccentricity. For example, see patent U.S. 6,215,119, and U.S. 7,143,518. An equally divided average (EDA) method is described by Masuda et al. in "High accuracy calibration system for angular encoders," J. Robotics and Mechatronics, 5(5), 448-452, 1993. Rotary encoders that use multiple read-heads to reduce eccentricity errors increase the cost of the system and make the system design cumbersome.
[0010]
Conventional methods also require precise motion of rotating. parts Tor self-calibration. For example, U.S. patent U.S. 5,138,564 discloses a method that moves the encoder at slow speed and fast speed for calibration. U.S.
6,598,196 drives the servo system on a predetermined trajectory such that encoder errors occur at frequencies outside the servo feedback loops. Such requirements increase calibration effort and time.
[001 1]
U.S. 7,825,367 describes a self-calibrating rotary encoder where angular differences are determined as a Fourier series. Sine-cosine interpolation based rotary encoders can be calibrated as described in U.S. 8,250,901. The voltage data corresponding to sine and cosine of the rotation angle is fitted to an ellipse. Linear calibration parameters are obtained by transforming the ellipse into a circle.
[0012]
U.S. 7,825,367 describes a rotary encoder capable self-calibration.
The rotary encoder includes a rotary disk with an angle code, a light source, and a linear sensor (CCD) that reads the angle code. A processing unit acquires reading values f(0) for predetermined angles. A difference between reading values ί(θ+φ) and f(0) within a reading range on the linear sensor is g(0, φ). The difference is determined as a Fourier series. There, the rotation angle 0 at a location is obtained by analyzing the CCD image. The self- calibration is based on finding the rotation angle at two different locations, and analyzing the difference for use in the self-calibration.
[Summary of Invention]
[0013] The embodiments of the invention provide a self-calibrating, single track, single read-head absolute rotary encoder. The encoder acquires measurements over one full rotation (360° ) or part of a full rotation. Hence, the encoder compensates for any errors or distortions introduced during manufacturing and later use as environmental or mechanical conditions change. The encoder can also compensate for vignetting due to illumination variations.
[0014]
The embodiments do not require multiple read-heads to cancel eccentricity errors. This significantly reduces the cost and complexity of the encoder. In addition, the embodiments do not require moving the motor at multiple speeds, or pre-determined trajectories for calibration. In addition, the invention also corrects for other installation errors, such as change of gap and shaft wobble.
[Brief Description of the Drawings]
[0015]
[Fig. 1A]
Fig. 1 A is a schematic of a rotary encoder according to embodiments of the invention;
[Fig. IB]
Fig. IB is a schematic of a circular scale of sectors according to embodiments of the invention;
[Fig. 1C] Fig. 1C is a schematic of the circular scale and a linear read-head according to embodiments of the invention;
[Fig. ID]
Fig. ID is a block diagram for calibrating the encoder of Fig. 1 A according to embodiments of the invention;
[Fig- 2]
Fig. 2 is a graph of spatial frequency F{6) with the rotation angle according to embodiments of the invention;
[Fig- 3]
Fig. 3 is a graph of spatial frequency variations due to noise according to embodiments of the invention;
[Fig. 4]
Fig. 4 is a graph of variations in spatial distortion parameter α(θ) with the rotational angle according to embodiments of the invention;
[Fig. 5]
Fig. 5 is a graph of variations in spatial distortion parameter β(θ with the rotation angle according to embodiments of the invention;
[Fig. 6]
Fig. 6 is a graph of a fourth degree polynomial fitted to α(θ) according to embodiments of the invention;
[Fig- 7]
Fig. 7 is a graph of scanline obtained by the ID sensor and depicts the vignetting; [Fig. 8]
Fig. 8 is a graph of a scaling factor according to embodiments of the invention;
[Fig. 9]
Fig. 9 is a graph of an offset factor according to embodiments of the invention; and
[Fig. 10]
Fig. 10 is a graph of corrected sensor values after applying vignetting correction according to embodiments of the invention.
[Description of Embodiments]
[0016]
The embodiments of the invention provide a single track absolute rotary encoder. A read-head can be a linear charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) to acquire ID images of a rotating circular scale. The ID image includes a linear array of pixels. The scale includes reflecting and non-reflecting regions arranged according to a de Bruijn sequence. The de Bruijn sequence is well suited, because the pattern itself is circular in nature.
[0017]
Absolute Circular Scale
Fig. 1 shows a small portion of a circular scale 100 of an absolute encoder for one embodiment of our invention.. Details.of.the scale.are described in U.S. Application 13/100092. The scale is used to determine a high-resolution phases P 120.
[0018]
The scale can include alternate light reflecting 101, and non-reflecting 102 marks or bits. The marks can also alternate between opaque and
transparent, depending on a relative position of the light source with respect to the read-head. Each mark is B microns wide, which the scale resolution. The width B of each mark is a half-pitch. In one embodiment, B is 20 microns. Because of the relative small size of the marks, the example marks shown in the figures are not to scale.
[0019]
A read-head 1 10 is mounted at some distance and parallel to the scale. The read-head includes a sensor 1 1 1 , a (LED) light source 1 12, and an optional lens. The sensor can be a detector array of N sensors, e.g., N can be 512. The array can be complementary metal-oxide-semiconductor (CMOS) or charge coupled device (CCD). The read-head also be associated with a digital signal processor 1 15 connected to sensor and a memory. It is understood that other types of processors can be used.
[0020]
The marks or bits on the example scale 100 can be arranged on a rotatable disk 130 or shaft. The only requirement is that the marks are arranged sequentially for a particular code or non-periodic sequence.
[0021] As shown in Figs. IB and 1C, the marks are arranged as sectors of a circle on the scale 130. The read-head 111 includes a linear array of sensors 1 14. Here, the read-head is centered tangentially at an offset 115 with respect to the center of rotation 1 16. Therefore, it is noted that sensor pixels near either end of the linear read-head observe a wider part of the sectors than the sensors near the center of the read-head. This leads to a distortion of the signal on the ID sensor.
[0022]
Calibration
The DSP performs calibration of the encoder as shown in Fig. ID. The calibration can be performed offline, periodically or continuously during operation of the encoder.
[0023]
During calibration, calibration samples 150 are acquired by the read- head 111 for rotational angles of the circular scale 101 for a full rotation of 360°, or some partial rotation. The partial rotation can be useful where the scale oscillates circularly instead of undergoing full rotations. Note that calibration samples can also be acquired for multiple rotations.
[0024]
Frequency F, and distortion parameters a and β 161 are estimated 160 from the calibration samples. The frequency F, and distortion parameters a and β can be directly stored in a memory, e.g., as a look-up .table, , and are sufficient to accurately determine phases of the encoder during operation. The table look-up may be advantageous if the look-up is fast, or takes less time and memory than evaluating the parametric function.
[0025]
For convenience, we model 170 variations in the frequency F and distortion parameters a and β using a parametric function 171, and store the variations in the memory for use during the online real-time operation of the encoder.
[0026]
Real-time operation
During real-time operation, a phase 195 of the encoder is determined 190 from test samples 151 and the modeled variations in the frequency F and distortion parameters a and β. It should be understood that the variations can be obtain from the raw parameters stored in the memory as a look-up table during operation. It is understood that the parameters can also be acquired during real-time operation of the encoder.
[0027]
The details of the encoder structure and calibration are now described in greater detail.
[0028]
De Bruijn Sequence
To achieve 100% information density on the scale, a bit sequence is used, Every subsequence has a. finite, length and. is unique, e.g.,. a. de Bruijn - sequences 103. Each unique sequence corresponds to a coarse phase angle. It is an object of the invention to self-calibrate the encoder so that a fine or precise angle is obtained.
[0029]
A Ar-ary de Bruijn sequence B(k, ri) of order n is a cyclic sequence of a given alphabet (number of angles) with size k, for which every possible subsequence of length n in the alphabet appears as a sequence of consecutive characters exactly once. If each B(k, ri) has a length k", then there are (k\ h (n l^)/kn distinct de Bruijn sequences B(k, ri). When the sequence is truncated from front or back, the resulting sequence also has the uniqueness property with the same n. It should be noted that any non-periodic sequence with nonrepeating subsequences can be used.
[0030]
The detector array requires a field of view (FOV) of at least n bits for decoding to be possible. For the half-pitch B = 20 microns and using the de Bruijn sequence of order 16 requires that the FOV is 16 X 20 = 320 microns on the scale. In one embodiment, the field of view is designed to be 1-2 mm to have the desired accuracy.
[0031]
For Nyquist sampling, each bit of the sequence, i.e., each half-pitch of the scale, maps to at least two pixels in the linear detector array. This requires at least 16 X 2 = 32 pixels, which is well-below the number of pixels in conventional sensors. To handle optical aberrations, such as defocus blur or diffraction, the number of pixels per half-pitch can be increased. [0032]
Because the scale is circular, the reflecting and non-reflecting regions are equi-angular, and not equi-distance when using a linear sensor, see Fig. 1C. Due to the circular scale, the width of reflecting/non-reflecting regions increases at the both ends of the sensor. Thus, the spatial frequency F is not constant along the sensor.
[0033]
Let z(i) be the detected zero-crossings (edge locations) , P be the phase angle, and F be the frequency. Let M ) be the number of bits between two successive zero-crossings z i) and z(i + 1). If we define
Figure imgf000013_0001
then the z'th zero-crossings of the rotary encoder can be written as a cubic model of c(i)
z(i) = P + Fc(i) + ac(i 2 + /Jc( )3 ,
wherein parameters of the cubic model include the phase P, the spatial frequency F, and spatial distortion parameters a and β. This model accounts for the error due to non-uniform spacing of scale lines on the circular disk 130. Using N zero-crossings, N equations are obtained. For example, If there are N zero-crossings, z(l), z(20), then corresponding c{\ ), c(20) are known. These equations describe a linear system in unknowns P, F, a and β. We solve the linear system to obtain the values of P, F, a and β.
[0034] The angle of rotation Θ is obtained using Θ = P/F * 360/ K + Coarse_Position, where K is the number of gradations in the scale and
Coarse_Position is the phase angle based only on the underlying code subsequence of the image. For example, K can be 1024.
[0035]
Self-Calibration
The estimated parameters F, a and β 161 are expressed in terms of the actual rotary angle Θ as F 6), α(θ), and β{θ). The embodiments considers the variations in the three parameters F(ff), α{θ), β(θ). Due to imaging noise, there is a small variation (normal variation) in these parameters.
[0036]
In the absence of any mechanical errors in mounting and any
eccentricity error, the variation in these parameters should be normal variation over a one full rotation or part thereof, as Θ varies from 0 to 360 degrees. However, due to eccentricity, wobble or gap change (the distance between the read-head and the scale), the spatial parameters F{9), α(θ), β(θ) show a large variation than can be attributed to noise.
[0037]
Fig. 2 shows an example 200 of estimated F 6) with rotation angle over one full rotation.
[0038]
Fig. 3 shows frequency variations 300 in more details. The high frequency variations 301 are due to noise. The low frequency variations 302 are due to eccentricity wobble and gap change. It is an object of the invention to correct for these variations.
[0039]
During the self-calibration process, these variations are modeled using a parametric function. The shaft with the scale is rotated a full (360° ) or partial rotation (< 360°), and the encoder scale is sampled at several locations. For example, the scale can be rotated every 2°, and sensor images corresponding to angles are stored in the memory. For all these angles, the estimated values of frequency and distortion parameters are stored along with estimated encoder phase P.
[0040]
Curve Fitting
A suitable parametric function or spline is used for modeling the variations in frequency and distortion parameters using least squares fitting.
[0041]
Fig. 4 shows the variation in a(ff) 400, which can be modeled using a fourth degree polynomial model with respect to the rotational angle Θ
α(θ) = tx + 120 + 1302 + 1403 + ί5θ , where t , t2, t3, t4, and t5 are model parameters. The model parameters are estimated using the least square fitting of estimated a{ff). Fig. 5 shows the variation 500 for β{θ). Note that the model degree or form need not be same for all three parameters. For example, the frequency F(0) can be modeled using a spline basis function, and a(ff) and β{θ) can be modeled using polynomial functions. Fig. 6 shows the estimated α(θ) fitted to a fourth degree polynomial 600 for the full rotation. After curve fitting, the model parameters are stored in a memory of the DSP 1 15.
[0042]
Operation
During encoder operation, the last encoder position can be used to determine the value of frequency and spatial distortion parameters for the current position. These values are used to determine the phase P.
Alternatively, the frequency and distortion parameters can be iteratively determined along with the phase. This is useful at startup, where the last encoder phase is unknown or invalid. A first estimate of current rotation angle, frequency and distortion parameters can be obtained as described above. Using the estimated rotation angle Θ, the parameters F, a and β for current position are re-determined using their respective models. Then the new value of these parameters is used to re-determine the phase P.
[0043]
In U.S. 7,825,367 to Nakamura, the self-calibration is based on rotation angles at two different locations, and analyzing the difference for the self-calibration, and use it for calibration. Nakamura does not describe spatial frequency and distortion parameters. The encoder according to the invention is not based on the actual rotation angle as in Nakamura, but rather on the underlying frequency and distortion parameters that are used for modeling the zero-crossings at a particular rotation angle. [0044]
Vignetting Correction
As shown in Fig. 7, vignetting correction can also be performed by acquiring measurements 700 during the rotation of the scale.
[0045]
As shown in Fig. 8 for each pixel p in the sensor, a maximum pixel value m\(p) is a scaling factor 800, and as shown in Fig. 9, a minimum pixel value m2(p) is an offset factor 900. These are used for vignetting correction as follows.
[0046]
As shown in Fig. 10 for every position, the sensor values i(p) are modified 1000 as
i(p) <r 255*( i(p) - m2(p) ) / (ml(p) -m2(p))
[0047]
This modification ensures that the minimal intensity of each pixel is set to zero and the maximal intensity of each pixel is set to 255 as the encoder is rotated. This removes the vignetting effect.
[0048]
The steps of the method to perform self-calibration and vignette correction can be performed in the DSP, or similar microprocessor connected to a memory and input/output interfaces as known in the art.

Claims

[CLAIMS]
[Claim 1]
A method for self-calibrating a rotary encoder including a single read- head and a circular scale, comprising the steps of:
acquiring calibration samples by the read-head for rotational angles of the circular scale; and
estimating spatial frequency and spatial distortion parameters of the encoder from the calibration samples for self-calibrating the rotary encoder.
[Claim 2]
The method of claim 1 , further comprising:
acquiring test samples of the scale;
determining a phase of the encoder using the frequency and distortion parameters.
[Claim 3]
The method of claim 1, further comprising:
modeling variations in the frequency and the distortion parameters using a parametric function;
acquiring test samples of the scale; and
determining a phase of the encoder using the modeled frequency and distortion parameters.
[Claim 4]
The method of claim 1, wherein marks.on.the.scale.are arranged as sectors, and the read-head is centered tangentially at an offset with respect to a center of rotation of the scale.
[Claim 5]
The method of claim 1 , wherein the read-head data is obtained for a rotation angle of 360 degrees or less.
[Claim 6]
The method of claim 1, wherein the parametric function is a spline.
[Claim 7]
The method of claim 1 , wherein the parametric function uses least squares fitting.
[Claim 8]
The method of claim 4, wherein the parametric function is a fourth degree polynomial with respect to the rotational angle.
[Claim 9]
The method of claim 1, further comprising:
storing the frequency and distortion parameters in a memory as a look-up table.
[Claim 10]
The method of claim 1 , wherein the frequency and distortion parameters correct for eccentricity of the circular scale.
[Claim 11]
The method of claim 1 , wherein the frequency and distortion parameters correct for wobble.of the, circular-scale.-
[Claim 12] The method of claim 1 , wherein the frequency and distortion parameters correct for a change in a distance between the read-head and the circular scale.
[Claim 13]
The method of claim 1 , wherein the frequency and distortion parameters correct for a temperature or mechanical vibration during operation of the encoders.
[Claim 14]
The method of claim 1 , wherein the frequency and distortion parameters are acquired during real-time operation of the encoder.
[Claim 15]
The method of claim 1, wherein the read-head includes a linear array of pixels, and further comprising:
measuring intensities of the pixels to obtain a maximal intensity as a scaling factor, and a minimal intensity as an offset factor.
[Claim 16]
The method of claim 15, wherein the pixel intensities are modified using the scaling and offset factor.
[Claim 17]
The method of claim 15, wherein the pixel intensities i(p) are modified according to
Figure imgf000020_0001
wherein mi(p) is the maximal intensity and m2(p) is the minimal intensity.
[Claim 18]
The method of claim 1 , wherein the scale is a form of a de Bruijn sequence.
[Claim 19]
The method of claim 7, wherein the spatial frequency parameters is F(&), and the spatial distortion parameters are a and β, and wherein a fourth degree polynomial is
α{θ) = tl + 120 + ί3θ2 + 1403 + ί5θ4 ,
where /], t2,..h, t4, and i5 are parameters of the fourth degree polynomial estimated using the least square fitting.
[Claim 20]
The method of claim 19, further comprising:
measuring c bits between two successive zero-crossing on the scale; and
modeling the zero-crossings as
z(i) = P + Fc(i) + ac(i)2 + β γ ,
wherein P is a phase value, F is the spatial frequency, and a and β are the spatial distortion parameters.
PCT/JP2014/062543 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder WO2014188894A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE112014002505.4T DE112014002505T5 (en) 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder
KR1020157036050A KR101829521B1 (en) 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder
JP2015552312A JP6143885B2 (en) 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder
CN201480029584.3A CN105229424B (en) 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder
TW103117466A TWI564548B (en) 2013-05-21 2014-05-19 Method for self-calibrating a rotary encoder

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/899,025 US9423281B2 (en) 2012-02-07 2013-05-21 Self-calibrating single track absolute rotary encoder
US13/899,025 2013-05-21

Publications (1)

Publication Number Publication Date
WO2014188894A1 true WO2014188894A1 (en) 2014-11-27

Family

ID=50771543

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/062543 WO2014188894A1 (en) 2013-05-21 2014-05-02 Method for self-calibrating a rotary encoder

Country Status (6)

Country Link
JP (1) JP6143885B2 (en)
KR (1) KR101829521B1 (en)
CN (1) CN105229424B (en)
DE (1) DE112014002505T5 (en)
TW (1) TWI564548B (en)
WO (1) WO2014188894A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017043249A1 (en) * 2015-09-10 2017-03-16 Mitsubishi Electric Corporation Method and apparatus for determining position on scale
JP2017531783A (en) * 2015-09-22 2017-10-26 三菱電機株式会社 Absolute encoder
JP2018524554A (en) * 2015-04-30 2018-08-30 パーキンエルマー・ヘルス・サイエンシーズ・インコーポレイテッドPerkinelmer Health Sciences, Inc. Autosampler, autoloader, and system and apparatus using them

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI606228B (en) 2015-10-23 2017-11-21 財團法人工業技術研究院 Apparatus and method of automatic angle measurement
DE102016101965A1 (en) * 2016-02-04 2017-08-10 Fraba B.V. Method for calibrating a rotary encoder and rotary encoder for determining a corrected angular position
DE102016115624A1 (en) * 2016-08-23 2018-03-01 Fraba B.V. Method for calibrating a rotary encoder and rotary encoder
US10551223B2 (en) * 2017-03-20 2020-02-04 Tt Electronics Plc Method and apparatus for configurable photodetector array patterning for optical encoders
JP2019158848A (en) * 2018-03-16 2019-09-19 富士電機株式会社 Absolute location information detection device, and absolute location information detection device control method
US10886932B2 (en) * 2018-09-11 2021-01-05 Tt Electronics Plc Method and apparatus for alignment adjustment of encoder systems
TWI716246B (en) 2019-12-31 2021-01-11 財團法人工業技術研究院 Optical encoder
TWI722886B (en) * 2020-04-30 2021-03-21 國立陽明交通大學 Rotary code disk and method for designing the same
KR102388381B1 (en) * 2020-06-18 2022-04-20 주식회사 져스텍 Method and apparatus for linear position detection using De Bruijn sequence as scale ID
TWI777686B (en) * 2021-07-23 2022-09-11 禾一電子科技有限公司 Electronic rotary encoder

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5138564A (en) 1990-07-31 1992-08-11 Xerox Corporation Automatic encoder calibration
US6215119B1 (en) 1999-01-19 2001-04-10 Xerox Corporation Dual sensor encoder to counter eccentricity errors
US6598196B1 (en) 2000-02-29 2003-07-22 Agilent Technologies, Inc. Technique for correcting errors in position encoders
US7143518B2 (en) 2004-08-31 2006-12-05 National Institute Of Advanced Industrial Science And Technology Angle detector with self-calibration capability
DE102006059491B3 (en) * 2006-12-14 2008-04-17 Bundesrepublik Deutschland, vertr.d.d. Bundesministerium für Wirtschaft und Technologie, d.vertr.d.d. Präsidenten der Physikalisch-Technischen Bundesanstalt Pitch circle calibrating method for industrial application, involves determining pitch variation-differences for pitch interval, and transforming transformation-coefficients of pitch variations from frequency space into local space
US7825367B2 (en) 2006-01-27 2010-11-02 Sokkia Co., Ltd. Rotary encoder
US8250901B2 (en) 2009-09-22 2012-08-28 GM Global Technology Operations LLC System and method for calibrating a rotary absolute position sensor

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3724518B2 (en) * 1996-07-15 2005-12-07 株式会社ニコン Absolute encoder
JP4290281B2 (en) * 1999-06-10 2009-07-01 株式会社ハーモニック・ドライブ・システムズ Absolute sensor
GB0508325D0 (en) * 2005-04-26 2005-06-01 Renishaw Plc Rotary encoders
JP2007010608A (en) * 2005-07-04 2007-01-18 Shin Ei Tech:Kk Rotating angle error analysis system of gear mechanism
JP4862496B2 (en) * 2006-05-30 2012-01-25 日本精工株式会社 Resolver digital converter, rotation angle position detection device, and rotation machine control device
JP5085440B2 (en) * 2008-06-17 2012-11-28 株式会社 ソキア・トプコン Rotary encoder and angle correction method for rotary encoder

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5138564A (en) 1990-07-31 1992-08-11 Xerox Corporation Automatic encoder calibration
US6215119B1 (en) 1999-01-19 2001-04-10 Xerox Corporation Dual sensor encoder to counter eccentricity errors
US6598196B1 (en) 2000-02-29 2003-07-22 Agilent Technologies, Inc. Technique for correcting errors in position encoders
US7143518B2 (en) 2004-08-31 2006-12-05 National Institute Of Advanced Industrial Science And Technology Angle detector with self-calibration capability
US7825367B2 (en) 2006-01-27 2010-11-02 Sokkia Co., Ltd. Rotary encoder
DE102006059491B3 (en) * 2006-12-14 2008-04-17 Bundesrepublik Deutschland, vertr.d.d. Bundesministerium für Wirtschaft und Technologie, d.vertr.d.d. Präsidenten der Physikalisch-Technischen Bundesanstalt Pitch circle calibrating method for industrial application, involves determining pitch variation-differences for pitch interval, and transforming transformation-coefficients of pitch variations from frequency space into local space
US8250901B2 (en) 2009-09-22 2012-08-28 GM Global Technology Operations LLC System and method for calibrating a rotary absolute position sensor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LU X D ET AL: "Self-Calibration of On-Axis Rotary Encoders", CIRP ANNALS, ELSEVIER BV, NL, CH, FR, vol. 56, no. 1, January 2007 (2007-01-01), pages 499 - 504, XP027151110, ISSN: 0007-8506, [retrieved on 20070101] *
MASUDA ET AL.: "High accuracy calibration system for angular encoders", J. ROBOTICS AND MECHATRONICS, vol. 5, no. 5, 1993, pages 448 - 452

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018524554A (en) * 2015-04-30 2018-08-30 パーキンエルマー・ヘルス・サイエンシーズ・インコーポレイテッドPerkinelmer Health Sciences, Inc. Autosampler, autoloader, and system and apparatus using them
WO2017043249A1 (en) * 2015-09-10 2017-03-16 Mitsubishi Electric Corporation Method and apparatus for determining position on scale
JP2017531783A (en) * 2015-09-22 2017-10-26 三菱電機株式会社 Absolute encoder

Also Published As

Publication number Publication date
DE112014002505T5 (en) 2016-04-28
JP2016520794A (en) 2016-07-14
CN105229424A (en) 2016-01-06
TWI564548B (en) 2017-01-01
KR20160011659A (en) 2016-02-01
TW201504598A (en) 2015-02-01
KR101829521B1 (en) 2018-02-14
CN105229424B (en) 2017-05-24
JP6143885B2 (en) 2017-06-07

Similar Documents

Publication Publication Date Title
US9423281B2 (en) Self-calibrating single track absolute rotary encoder
WO2014188894A1 (en) Method for self-calibrating a rotary encoder
JP5837201B2 (en) Method and apparatus for determining position
KR102502508B1 (en) Correction table generating apparatus, encoder, and correction table generating method
US20080228423A1 (en) Position detector
JP2008129018A (en) Device for measuring position
AU2006336718A1 (en) Rotary encoder
JP2018132356A (en) Rotary encoder
US20150377654A1 (en) Method and System for Estimating Positions Using Absolute Encoders
JP4794509B2 (en) Device for detecting the rotational position of a rotating body using a resolver
JP7240387B2 (en) angle detector
CN110879408A (en) CT rotary encoder, CT machine and method for detecting rotation angle of scanning frame
WO2018092416A1 (en) Rotary encoder signal processing device and rotary encoder signal processing method
JP5162739B2 (en) Encoder signal processing method, encoder device, and servo motor
JP2004219333A (en) Encoder output signal correcting device
KR102113456B1 (en) Pulsed conversion device and pulsed conversion method of incremental encoder
JP4109149B2 (en) Measuring device
CN113819879B (en) Dynamic angle measurement method and system based on laser zero meter and high-frequency sampling
WO2017043249A1 (en) Method and apparatus for determining position on scale
JP2020091104A (en) Absolute rotary encoder
Lu et al. Transforming an Optical Flow Sensor into an Angular Displacement Sensor
TW201937192A (en) Method and device for detecting positional change amount due to movement of moving body
CN115979321A (en) Zero clearing method for sensor accumulated error under any mechanical transmission ratio
CN111964707A (en) Angular calibration method of absolute magnetic encoder based on cursor code track
JP2017201236A (en) Information processing apparatus, information processing method, and computer program

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480029584.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14725784

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015552312

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 112014002505

Country of ref document: DE

ENP Entry into the national phase

Ref document number: 20157036050

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 14725784

Country of ref document: EP

Kind code of ref document: A1