Absolute encoder and motor
By using multiple periods of coded pattern optical patterns on the absolute encoder scale, combined with partition determination and absolute position calculation, the problem of reduction in accuracy caused by the lengthening of the pattern area is solved, and high-precision absolute position detection is achieved.
Patent Information
- Application Number
- CN202280078495.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-23
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2042-03-23
AI Technical Summary
When the pattern area of the existing absolute encoder becomes longer, it is difficult to take into account both the miniaturization of the structure and the high error correction ability, resulting in a decrease in the accuracy of absolute position detection.
The optical pattern of the code pattern of multiple periods on the ruler is used, and the partition determination unit determines the partition to which the code string read from the multiple partitions based on the signal, and calculates the absolute position of the ruler in combination with the absolute position calculation unit.
It realizes the absolute position detection with high precision while the pattern area becomes longer, avoiding the problem of large-scale structures and reduced error correction capabilities.
Smart Images

Figure CN118318146B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an absolute encoder and a motor for detecting the absolute position of a measurement object. Background Art
[0002] In the fields of working machinery and robots, absolute encoders are used to achieve high-precision positioning control. The absolute encoder detects the reflected light or transmitted light from the optical pattern on the scale through the light detection unit, and calculates the absolute position of the scale by calculating the signal corresponding to the intensity of the light. Random patterns such as M series patterns are used for optical patterns. Among the absolute encoders, there are rotary absolute encoders that detect the rotation angle of the shaft of a motor, etc., and linear absolute encoders that detect the position of a direct-acting worktable. Below, the rotary absolute encoder is called a rotary encoder, and the linear absolute encoder is called a linear encoder.
[0003] In a rotary encoder, when the wiring passes through the center of the scale, the diameter of the scale becomes larger, and thus the area of the optical pattern, that is, the pattern area, becomes longer. In a linear encoder, when the stroke of the linear table becomes longer as the working machine becomes larger, the pattern area becomes longer. In the case of using an M series pattern, if the number of M series patterns is not increased, the pattern width per 1 bit becomes larger. In this case, if the light detection unit is not enlarged, the number of bits that can be detected by the light detection unit is reduced, and if the number of bits required for decoding cannot be detected, the detection of the absolute position may be erroneous. In order to maintain the number of bits that can be detected, the enlargement of the structure of the absolute encoder becomes a problem. In addition, when the number of M series patterns is increased, similar pattern arrangements are easily generated, so the number of bits required for decoding increases. In this case, if the light receiving element is not enlarged, the redundancy of the pattern is reduced. That is, the error correction capability is reduced. That is, even if the number of M series patterns is increased, if the light receiving element is not enlarged, similar pattern arrangements will be detected by mistake, and the detection of the absolute position may be erroneous. As described above, when the pattern area becomes longer, it is required to strike a balance between miniaturization of the structure and high error correction capability.
[0004] As one of the methods for achieving high error correction capability without increasing the size of the structure, Patent Document 1 proposes a method of providing two track patterns on the scale of a linear encoder. Patent Document 1 discloses a linear encoder in which two M-series patterns are connected and arranged in one of the two track patterns, and an identification pattern for respectively identifying the two M-series patterns is provided in the other of the two track patterns. Areas corresponding to each bit of "0" and "1" are provided in the identification pattern.
[0005] Patent Document 1: Japanese Patent Application Laid-Open No. 4-160317 Summary of the invention
[0006] In the prior art disclosed in Patent Document 1, when measuring near the boundary between M series patterns, an error may occur when detecting the absolute position. For example, when the prior art is applied to a rotary encoder, the "0" of the identification pattern corresponds to the M series pattern from 0 degrees to 180 degrees, and the "1" of the identification pattern corresponds to the M series pattern from 180 degrees to 360 degrees. In this case, an error occurs when detecting the identification pattern near the boundary between the two M series patterns, thereby enabling an angle that differs by 180 degrees from the correct angle to be detected as the absolute position. The above-mentioned error may occur in a linear encoder. As described above, according to the prior art, an error may occur when detecting the absolute position, thereby causing the problem of difficulty in detecting the absolute position with high precision.
[0007] The present invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to obtain an absolute encoder capable of detecting an absolute position with high accuracy.
[0008] In order to solve the above problems and achieve the purpose, the absolute encoder involved in the present invention has: a scale having an optical pattern including a code pattern of multiple periods; an illumination unit that outputs light for illuminating the scale; a light detection unit that detects the light emitted by the scale that receives the light from the illumination unit and outputs a signal corresponding to the intensity of the detected light; a partition determination unit that determines the partition to which the read code string belongs from the multiple partitions based on the signal with respect to the region of the optical pattern divided into multiple partitions; and an absolute position calculation unit that calculates the absolute position of the scale based on the determined partition and code string. The number of periods of the code pattern in the scale is set to N, and when N is 2, the number of partitions in the region of the optical pattern is greater than or equal to 3, and when N is greater than or equal to 3, the number of partitions in the region of the optical pattern is greater than or equal to N.
[0009] Effects of the Invention
[0010] The absolute encoder according to the present invention has the effect of being able to detect an absolute position with high accuracy. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 This is a diagram showing a configuration example of an absolute encoder according to the first embodiment.
[0012] Figure 2 This is a diagram for explaining an optical pattern included in the absolute encoder according to the first embodiment.
[0013] Figure 3It is a diagram showing a magnet included in the absolute encoder according to the first embodiment.
[0014] Figure 4 This is a diagram showing an example of a waveform of a signal input to the absolute position calculation unit of the absolute encoder according to the first embodiment.
[0015] Figure 5 This is a diagram showing an example of a waveform of a signal corrected by the absolute position calculation unit in the first embodiment.
[0016] Figure 6 This is a diagram showing an example of the edge position calculated by the absolute position calculation unit in the first embodiment.
[0017] Figure 7 This is a diagram for explaining the rising edge and the falling edge detected by the absolute position calculation unit in the first embodiment.
[0018] Figure 8 This is a diagram for explaining the conversion of a signal based on the edge direction and edge pixel position into a bit array in the first embodiment.
[0019] Fig. 9 This is a diagram for explaining a method of detecting an absolute position from a bit sequence by an absolute position calculation unit in the first embodiment.
[0020] Fig.10 This is a diagram showing changes in magnetic flux density detected by the magnetic sensor in the first embodiment.
[0021] Fig.11 This is a diagram for explaining a first example of the relationship between the optical pattern and the partitions in the first embodiment.
[0022] Fig.12 This is a diagram for explaining the relationship between the optical pattern and the partitions in the comparative example of the first embodiment.
[0023] Fig.13 This is a diagram for explaining a second example of the relationship between the optical pattern and the partitions in the first embodiment.
[0024] Fig.14 This is a diagram for explaining the third example of the relationship between the optical pattern and the partitions in the first embodiment.
[0025] Fig.15 This is a diagram for explaining the fourth example of the relationship between the optical pattern and the partitions in the first embodiment.
[0026] Fig.16 This is a diagram showing a configuration example of an absolute encoder according to the second embodiment.
[0027] Fig.17 This is a diagram showing a scale included in the absolute encoder according to the second embodiment.
[0028] Fig.18 This is a diagram showing a scale in an absolute encoder according to a second embodiment and a structure arranged relative to the scale.
[0029] Fig.19 This is a diagram showing a configuration example of an absolute encoder according to the third embodiment.
[0030] Fig. 20 This is a diagram showing a configuration example of a control circuit according to the first to third embodiments.
[0031] Fig.21 This is a diagram showing a configuration example of a dedicated hardware circuit according to the first to third embodiments.
[0032] Fig. 22 It is a diagram showing a configuration example of a rotary electric motor according to a fourth embodiment.
[0033] Fig.23 This is a diagram showing a configuration example of a direct-acting motor according to a fifth embodiment.
[0034] Fig.24 It is a plan view showing a partial structure of an absolute encoder included in a linear motion motor according to a fifth embodiment. DETAILED DESCRIPTION
[0035] Hereinafter, an absolute encoder and a motor according to an embodiment will be described in detail with reference to the drawings.
[0036] Implementation method 1.
[0037] Figure 1 This is a diagram showing a configuration example of the absolute encoder 100 according to the first embodiment. Figure 1 The absolute encoder 100 shown is a rotary encoder. The absolute encoder 100 includes: a scale 10 having an optical pattern 20; a light emitting element 11 as an illumination unit; an image sensor 12 and a magnet 30 as a light detection unit. In addition, the absolute encoder 100 includes an absolute position calculation unit 13, a magnetic sensor 14, and a partition determination unit 15.
[0038] The light emitting element 11 outputs light for illuminating the scale 10. For example, a point light source LED (Light Emitting Diode) is used as the light emitting element 11. The image sensor 12 detects the light emitted by the scale 10 that receives the light from the light emitting element 11, and outputs a signal corresponding to the intensity of the detected light. For the image sensor 12, a photographing device such as a CCD (Charge Coupled Device) image sensor or a CMOS (Complementary Metal Oxide Semiconductor) image sensor is used. In Embodiment 1, an example in which the image sensor 12 is a one-dimensional image sensor is described, but the image sensor 12 may also be a two-dimensional image sensor.
[0039] The divergent light emitted from the light emitting element 11 is reflected by the scale 10. The image sensor 12 receives the reflected light from the scale 10. Figure 1 , an example of a structure without using an optical element such as a lens is shown, but an optical element that focuses or diverges light emitted from the light emitting element 11 or an optical element used for imaging in the image sensor 12 may also be used.
[0040] The scale 10 is mounted on a shaft 16 of a motor or the like. A hole is formed in the center of the circular scale 10. The shaft 16 passes through the hole of the scale 10. The absolute encoder 100 is a hollow type rotary encoder that can be used by making the shaft 16 pass through the center of the scale 10. The absolute encoder 100 is not limited to a hollow type rotary encoder, and may be a rotary encoder that does not have a hole in the scale 10. Figure 1 In FIG. 1 , a portion of the shaft 16 is indicated by a dotted line.
[0041] The area of the optical pattern 20, that is, the pattern area, is arranged on the outer periphery of the scale 10. In the optical pattern 20, reflective portions 21 and non-reflective portions 22 are alternately formed in the circumferential direction. The optical pattern 20 is a pattern of only one track. A code pattern of multiple periods is formed on the track. That is, the optical pattern 20 includes a code pattern of multiple periods. The reflective portion 21 is a portion that reflects light incident from the light emitting element 11. The non-reflective portion 22 is a portion that absorbs light incident from the light emitting element 11, or a portion that allows light incident from the light emitting element 11 to pass. Alternatively, the non-reflective portion 22 may be a portion that reflects light incident from the light emitting element 11 at a reflectivity lower than that of the reflective portion 21. The absolute encoder 100 modulates the light intensity distribution projected onto the image sensor 12 by means of a plurality of reflective portions 21 and a plurality of non-reflective portions 22 constituting the optical pattern 20.
[0042] The code pattern of each period in the optical pattern 20 is composed of a reflective portion 21 and a non-reflective portion 22 arranged in a manner that characterizes the angular position of the scale 10. For the code pattern, a code string obtained by Manchester encoding a pseudo-random code such as an M series is used. In the optical pattern 20, N M series patterns are arranged in the range from 0 degrees to 360 degrees. That is, the number of periods of the code pattern in the optical pattern 20 is N. N is set to an integer greater than or equal to 2. The number of M series patterns is set to n. Here, the cases of n=10 and N=2 are taken as examples. Each code pattern is an M series pattern of 10 times, i.e., 1024 bits.
[0043] Figure 2 FIG. 2 is a diagram for explaining the optical pattern 20 included in the absolute encoder 100 according to the first embodiment. Figure 2 , the absolute position from 0 to 360 degrees, that is, the relationship between the angle from 0 to 360 degrees and the code pattern constituting the optical pattern 20 is shown. Figure 2 In the example shown, one M-series pattern is arranged in the range from 0 degrees to 180 degrees, and one M-series pattern is arranged in the range from 180 degrees to 360 degrees. Figure 2 In the example shown, the M series pattern from 0 degrees to 180 degrees is set as the first code pattern 23, and the M series pattern from 180 degrees to 360 degrees is set as the second code pattern 24. The first code pattern 23 and the second code pattern 24 are the same code patterns. That is, the code patterns of each period in the scale 10 are the same code patterns.
[0044] exist Figure 1 In the embodiment, as the absolute encoder 100, a reflective encoder in which the light emitting element 11 and the image sensor 12 are both arranged on one side of the scale 10 is exemplified, but the present invention is not limited thereto. The absolute encoder 100 may also be a transmissive encoder in which the light emitting element 11 and the image sensor 12 are arranged at positions opposite to each other across the scale 10. The optical pattern 20 of the transmissive encoder forms a transmissive portion that allows light to pass through and a non-transmissive portion that blocks light. In either the reflective type or the transmissive type, the optical pattern 20 may be formed in a manner that can modulate the light intensity distribution projected onto the image sensor 12.
[0045] The scale 10 is formed by, for example, vapor-depositing a metal such as chromium on a glass substrate and patterning the metal film using photoengraving. In the reflective type, the portion where the metal film is retained becomes the reflective portion 21, and the portion where the metal film is removed becomes the non-reflective portion 22. In the transmissive type, the portion where the metal film is removed becomes the transmissive portion, and the portion where the metal film is retained becomes the non-transmissive portion. In addition, if the reflective portion 21 and the non-reflective portion 22, or the transmissive portion and the non-transmissive portion can be formed, the material of the scale 10 and the method for creating the scale 10 are not particularly limited.
[0046] The absolute position calculation unit 13 is a calculation unit that calculates the absolute position of the scale 10 based on the signal output from the image sensor 12. Details of the processing performed by the absolute position calculation unit 13 will be described later.
[0047] Figure 3 1 is a diagram showing a magnet 30 included in the absolute encoder 100 according to Embodiment 1. The magnet 30 is circular like the scale 10. A hole is formed at the center of the magnet 30 similarly to the scale 10. The shaft 16 passes through the hole of the magnet 30.
[0048] The magnet 30 has two tracks. The track on the radial center side of the two tracks is called the sin wave track 31, and the track on the outer periphery of the magnet 30 is called the cos wave track 32. The sin wave track 31 is divided into two regions in the circumferential direction. One of the two regions is the N pole 33, and the other of the two regions is the S pole 34. The cos wave track 32 is divided into two regions in the circumferential direction. One of the two regions is the N pole 35, and the other of the two regions is the S pole 36. The N pole 35 and the S pole 36 of the cos wave track 32 are arranged so that the phase is 90 degrees different from the N pole 33 and the S pole 34 of the sin wave track 31.
[0049] The scale 10 is attached to the surface of the magnet 30, so that the magnet 30 is integrated with the scale 10 and mounted on the shaft 16. The magnet 30 is not limited to being integrated with the scale 10 by attaching the scale 10 to the magnet 30. The magnet 30 may also be integrated with the scale 10 by methods such as integral molding. In addition, the structure of the magnet 30 is not limited to the above structure.
[0050] The magnetic sensor 14 detects the magnetic field generated by the magnet 30 and outputs a signal corresponding to the magnitude of the detected magnetic field. A magnetoresistive (MR) element or the like is used for the magnetic sensor 14. The magnetic sensor 14 has a sensor for detecting the magnetic field of the sin wave track 31 and a sensor for detecting the magnetic field of the cos wave track 32, and detects the magnetic field of the sin wave track 31 and the magnetic field of the cos wave track 32 separately.
[0051] The partition determination unit 15 determines the partition to which the code string read based on the signal from the image sensor 12 belongs from among the plurality of partitions, with respect to the region of the optical pattern 20 divided into the plurality of partitions. The partition determination unit 15 determines the code pattern to which the read code string belongs from among the code patterns of the plurality of periods by this determination. The details of the processing performed by the partition determination unit 15 will be described later.
[0052] Next, the processing of the absolute position calculation unit 13 for measuring the absolute position based on the M series pattern will be described. The image acquired by the image sensor 12 is converted from an analog signal to a digital signal by an AD (Analog to Digital) converter. The digital signal is input to the absolute position calculation unit 13. The AD converter is not shown in the figure.
[0053] Figure 4 1 is a diagram showing an example of a waveform of a signal input to the absolute position calculation unit 13 by the absolute encoder 100 according to the first embodiment. Figure 4 The waveform 40 shown is an example of a waveform of a signal input to the absolute position calculation unit 13. Figure 4 In FIG. 4 , the vertical axis represents the signal intensity, and the horizontal axis represents the pixel position of the image sensor 12 . A waveform 40 represents the light amount distribution of the light detected by the image sensor 12 .
[0054] The High position 43 in the waveform 40 corresponds to the reflective portion 21. The Low position 44 in the waveform 40 corresponds to the non-reflective portion 22. Due to the influence of the light quantity distribution of the light emitted from the light emitting element 11 or the gain fluctuation of each pixel of the image sensor 12, the light intensity corresponding to the High position 43 becomes uneven, and the light intensity corresponding to the Low position 44 becomes uneven in the image of the optical pattern 20 projected on the image sensor 12. The absolute position calculation unit 13 calculates the light intensity of the optical pattern 20. Figure 4 The signal intensities shown are corrected so that the signal intensities of the High bit 43 for each pixel become uniform with each other, and the signal intensities of the Low bit 44 for each pixel become uniform with each other.
[0055] Figure 5 FIG. 1 is a diagram showing an example of a waveform of a signal corrected by the absolute position calculation unit 13 in Embodiment 1. The absolute position calculation unit 13 corrects the signal intensity for each pixel based on a light amount correction value measured in advance. Figure 5 As shown, a waveform 41 is obtained after correction such that the signal strength in the High bit 43 becomes uniform and the signal strength in the Low bit 44 becomes uniform.
[0056] Figure 64 is a diagram showing an example of edge positions calculated by the absolute position calculation unit 13 in the first embodiment. The absolute position calculation unit 13 obtains an edge pixel position 46 as an edge position on the image sensor 12 based on the waveform 41. The edge pixel position 46 is a position where the signal intensity matches the threshold level 45 set in advance. The absolute position calculation unit 13 detects two pixels adjacent to each other, that is, two pixels where one has a signal intensity lower than the threshold level 45 and the other has a signal intensity higher than the threshold level 45. The edge pixel position 46 that matches the threshold level 45 is obtained by linear interpolation of the two pixel positions that cross the threshold level 45. Alternatively, the edge pixel position 46 may be obtained based on two pixel positions that cross the threshold level 45 or more. In addition, the edge pixel position 46 may be obtained by interpolation using a higher-order function such as a quadratic function or a cubic function, without being limited to linear interpolation.
[0057] Figure 7 This is a diagram for explaining the rising edge 51 and the falling edge 52 detected by the absolute position calculation unit 13 in the first embodiment. The absolute position calculation unit 13 detects the direction of the edge 50 at the detected edge pixel position 46, thereby determining whether the edge 50 is the rising edge 51 or the falling edge 52. The absolute position calculation unit 13 detects the rising edge 51 and the falling edge 52 through this determination.
[0058] Regarding the two pixels that cross the threshold level 45, i.e., the i-th pixel and the i+1-th pixel, when the signal strength of the i-th pixel is less than the signal strength of the i+1-th pixel, the absolute position calculation unit 13 determines that the edge 50 is a rising edge 51. i is set to a natural number. On the other hand, when the signal strength of the i-th pixel is greater than the signal strength of the i+1-th pixel, the absolute position calculation unit 13 determines that the edge 50 is a falling edge 52.
[0059] Figure 8 This is a diagram for explaining the conversion of a signal based on the direction of the edge 50 and the edge pixel position 46 into a bit sequence 53 in the first embodiment. The absolute position calculation unit 13 converts the High bit 43 and the Low bit 44 into a bit sequence 53 composed of bit values of "0" and "1" based on the edge pixel position 46 and the detected rising edge 51 and falling edge 52. The absolute position calculation unit 13 generates the bit sequence 53 by, for example, making the bit value "1" correspond to the area from the rising edge 51 to the falling edge 52, and making the bit value "0" correspond to the area from the falling edge 52 to the rising edge 51. That is, the High bit 43 is represented by the bit value "1", and the Low bit 44 is represented by the bit value "0".
[0060] In the first embodiment, the pseudo-random code of the M series is Manchester coded, so in an ideal case, Figure 8 As shown in the example, when the same bit values are adjacent, the maximum number of consecutive bit values is only 2. In the above description, the signal based on the direction of the edge 50 and the edge pixel position 46 is transformed into the bit column 53, but the method for transforming the signal into the bit column 53 is not limited to this. The absolute position calculation unit 13 can also transform the signal into the bit column 53 through binary processing as in the prior art. The absolute position calculation unit 13 can measure the ideal basic cycle width F for the pixel position in advance and calibrate the basic cycle width F. As a result, the absolute position calculation unit 13 can obtain a uniform basic cycle width F regardless of the pixel position.
[0061] Fig. 9 This is a diagram for explaining a method of detecting an absolute position based on a bit sequence 53 by the absolute position calculation unit 13 in Embodiment 1. The absolute position calculation unit 13 performs a rough detection operation for detecting a rough absolute position. For example, the bit sequence constituting the M series pattern is stored in advance in a lookup table. The absolute position calculation unit 13 determines a rough absolute position by comparing the detected bit sequence 53 with the bit sequence in the lookup table.
[0062] The absolute position calculation unit 13 calculates the phase shift amount θ by obtaining a difference between the reference pixel position 54 and the edge pixel position 46 closest to the reference pixel position 54. The reference pixel position 54 is the position of a pixel serving as a reference among the pixels of the image sensor 12. Fig. 9 In the example shown, the edge pixel position ZC(i) is the edge pixel position 46 closest to the reference pixel position 54. The method for calculating the phase deviation amount θ is not limited to the method of obtaining the difference between the reference pixel position 54 and the edge pixel position ZC(i). The method for calculating the phase deviation amount θ may also be a method implemented by the least square method using a plurality of edge pixel positions 46. The absolute position calculation unit 13 can calculate the absolute position of the scale 10 by adding the phase deviation amount θ to the calculated rough absolute position.
[0063] Next, the problem caused by the increase in the diameter of the scale 10 is described. The radius of the portion of the scale 10 where the optical pattern 20 is formed is set to R. Here, it is assumed that the optical pattern 20 is composed of M series patterns of order n. If the number of bits composed of the reflective portion 21 and the non-reflective portion 22 of the M series pattern is set to m, then m=2 n The line width F per bit is expressed by the following formula (1).
[0064] F=2Rπ / 2 n · · · (1)
[0065] exist Figure 1In the hollow type rotary encoder shown, as the diameter of the shaft 16 increases, the radius R increases. When the order n is constant, as the radius R increases, the line width F increases.
[0066] If the pixel width of the image sensor 12 is W, the number of pixels of the image sensor 12 is P, and the read length of the image sensor 12 is L, then L=W×P. The read length L is the length of the range that the image sensor 12 can read, and is the length of the area where pixels are arranged in the image sensor 12. Figure 4 As shown, the number of bits m in the image acquired by the image sensor 12 is L It is represented by the following formula (2).
[0067] m L =L / F=W×P×2 n / 2Rπ· · · (2)
[0068] When the read length L is constant, as the radius R increases, the number of bits m in the image increases. L Decrease. Number of digits m L Reduce, thus Figure 8 The number of bits of the measured bit column 53 shown in FIG. 5 is reduced. As the number of bits of the bit column 53 is reduced, the bit column 53 and the plurality of bit columns in the lookup table are arranged similarly, and it becomes difficult to determine a rough absolute position. In addition, if the number of bits of the bit column 53 is reduced, the error correction capability is reduced when the code pattern is covered due to the adhesion of foreign matter to the optical pattern 20, etc. The performance of the encoder is reduced due to the reduction in the error correction capability.
[0069] On the other hand, in order not to make the number of bits m in the image L When the read length L is increased by reducing the image sensor 12, the image sensor 12 becomes large, and thus the structure of the encoder becomes large. When the number of pixels P is increased in order to increase the read length L, the readout speed of the image sensor 12 becomes slow, and thus the measurement cycle of the encoder becomes long. In addition, it is also considered that if the pixel width W is increased, the spatial resolution of the measured image is reduced, so it is difficult to perform high-precision edge position calculation, and the absolute position calculation accuracy is reduced.
[0070] In order not to make the number of bits m in the image L When the number n is reduced and increased, according to m=2 n In this case, the line width F per bit becomes smaller, so even if the image sensor 12 is not enlarged, the number of bits m in the image is increased. L However, if the number of digits m LIf the radius R increases, similar patterns are likely to be generated in the pattern formed by the arrangement of "1" corresponding to the reflective portion 21 and "0" corresponding to the non-reflective portion 22. If similar patterns are likely to be generated, the error correction capability of the M series pattern is reduced. In order not to reduce the error correction capability, the reading length L needs to be lengthened accordingly with the number n. As described above, if the radius R increases, there is a problem that it is impossible to take into account both the miniaturization of the structure and the high error correction capability.
[0071] Next, the operation of the absolute encoder 100 for solving this problem will be described. Fig.10 : is a diagram showing the change in magnetic flux density detected by the magnetic sensor 14 in the first embodiment. Fig.10 The change of the magnetic flux density from the sin wave track 31 and the change of the magnetic flux density from the cos wave track 32 are shown in FIG. Fig.10 In the figure, the vertical axis represents the magnetic flux density, and the horizontal axis represents the absolute position. With respect to the magnetic flux density from the sin wave track 31, the magnetic flux density of the N pole 33 is set to be positive, and the magnetic flux density of the S pole 34 is set to be negative. With respect to the magnetic flux density from the cos wave track 32, the magnetic flux density of the N pole 35 is set to be positive, and the magnetic flux density of the S pole 36 is set to be negative.
[0072] The waveform representing the magnetic flux density from the sin wave track 31 becomes a sin wave. The waveform representing the magnetic flux density from the cos wave track 32 becomes a cos wave. The waveform of the magnetic flux density from the sin wave track 31 is a sine wave with one cycle relative to one rotation of the scale 10. The waveform of the magnetic flux density from the cos wave track 32 is a sine wave with one cycle relative to one rotation of the scale 10. The waveform of the magnetic flux density from the cos wave track 32 is a sine wave with a phase difference of 90 degrees from the waveform of the magnetic flux density from the sin wave track 31.
[0073] The sin wave track 31 and the cos wave track 32 of the magnet 30 are magnetized in such a way that the magnetic flux density changes in a sinusoidal wave. The magnet 30 is not limited to being magnetized in such a way that the magnetic flux density changes in a sinusoidal wave. The waveform representing the change in magnetic flux density may be other than a sinusoidal wave, and may be a rectangular wave or the like.
[0074] The partition determination unit 15 determines the partition to which the code string belongs from among the plurality of partitions based on the detection result of the magnetic field obtained by the magnetic sensor 14. Figure 3 As shown, the magnet 30 is magnetized, whereby the pattern area of the scale 10 is divided into four sections. In this case, the section determination unit 15 determines the section to which the code string read based on the signal from the image sensor 12 belongs from among the four sections.
[0075] Here, four partitions are set as "Partition 1", "Partition 2", "Partition 3", and "Partition 4". "Partition 1" is set as a region where the sin wave track 31 is the N pole 33 and the cos wave track 32 is the N pole 35. "Partition 2" is set as a region where the sin wave track 31 is the N pole 33 and the cos wave track 32 is the S pole 36. "Partition 3" is set as a region where the sin wave track 31 is the S pole 34 and the cos wave track 32 is the S pole 36. "Partition 4" is set as a region where the sin wave track 31 is the S pole 34 and the cos wave track 32 is the N pole 35. "Partition 1" corresponds to an angle range from 0 degrees to 90 degrees in one rotation. "Partition 2" corresponds to an angle range from 90 degrees to 180 degrees in one rotation. "Partition 3" corresponds to an angle range from 180 degrees to 270 degrees in one rotation. "Partition 4" corresponds to an angle range from 270 degrees to 360 degrees in one rotation.
[0076] The partition determination unit 15 determines the partition to which the read code string belongs for each operation cycle based on the signal input from the magnetic sensor 14. The partition determination unit 15 outputs information indicating the determined partition to the absolute position calculation unit 13. In addition, here, a signal track with one cycle relative to one rotation, that is, a sin wave track 31 and a cos wave track 32, is used for partition determination, but the method for determining the partition is not limited to this method. A signal track with multiple cycles relative to one rotation can be used for partition determination. In addition, the number of signal tracks used for partition determination is not limited to 2. One or more than or equal to three signal tracks can be used for partition determination. The partition determination unit 15 can continuously accumulate the output of the magnetic sensor 14 through a counter and determine the partition using the information of the counter. In addition, a magnet 30 and a magnetic sensor 14 are used for partition determination, but this is not limited to this. As long as the partition determination can be performed, objects other than the magnet 30 and the magnetic sensor 14 can also be used.
[0077] The absolute position calculation unit 13 obtains the absolute position of the scale 10 based on the partition determined by the partition determination unit 15 and the code string read according to the signal from the image sensor 12 . Fig.11 This is a diagram for explaining a first example of the relationship between the optical pattern 20 and the sections in Embodiment 1. The first magnetic pole pattern is a magnetic pole pattern of a sin wave track 31 . The second magnetic pole pattern is a magnetic pole pattern of a cos wave track 32 .
[0078] Fig.11 The first example shown is that the number of periods N of the code pattern in the optical pattern 20 is 2, and Figure 3The example shown is a case where a magnetic pole pattern of a magnet 30 is set. In addition, the pattern area of the scale 10 is divided into four partitions. In the first example, through this structure, even if the radius R becomes larger, the structure will not be enlarged, and a high error correction capability can be achieved. The first code pattern 23 and the second code pattern 24 are M series patterns with an order n of 10, respectively. In addition, the first code pattern 23 and the second code pattern 24 are code patterns corresponding to one period in the optical pattern 20, respectively. The optical pattern 20 of the first example has a code pattern with two periods. That is, the optical pattern 20 of the first example is an optical pattern including a code pattern of multiple periods.
[0079] Since M series patterns with a period number N are formed in one track on the scale 10, the line width F per bit is expressed by the following equation (3).
[0080] F=2Rπ / (N×2 n ) · · · (3)
[0081] According to equation (3), M series patterns of N periods are formed in one track, and thus the line width F can be reduced without increasing the number n. In addition, the number of bits m in the image acquired by the image sensor 12 is L It is represented by the following formula (4).
[0082] m L =L / F=W×P×N×2 n / 2Rπ· · · (4)
[0083] According to formula (4), even without increasing the number of times n or the reading length L, the number of bits in the image can be reduced to m. L The read length L does not need to be increased, and thus the image sensor 12 does not need to be increased in size, thereby preventing the absolute encoder 100 from being increased in size in structure.
[0084] However, it is impossible to determine which M-series pattern of each period the code string belongs to simply by reading the code string based on the signal from the image sensor 12. Therefore, in the first embodiment, the absolute encoder 100 uses the partition determination unit 15 to determine which M-series pattern the read code string belongs to from among the M-series patterns of multiple periods.
[0085] exist Fig.11 In the case of the first example shown, when the partition determined by the partition determination unit 15 is "partition 1" or "partition 2", the absolute position calculation unit 13 determines that the read code string is a code string included in the first code pattern 23. When the partition determined by the partition determination unit 15 is "partition 3" or "partition 4", the absolute position calculation unit 13 determines that the read code string is a code string included in the second code pattern 24.
[0086] The absolute encoder 100 can grasp the approximate position of the absolute position by determining the partition in the partition determination unit 15. Thus, the absolute encoder 100 can determine which M series pattern of the multiple periodic M series patterns the code string read by the image sensor 12 includes. Even when the radius R increases, the absolute encoder 100 does not increase the size of the structure and can achieve a high error correction capability.
[0087] In addition, Fig.11 In the first example shown, the first code pattern 23 and the second code pattern 24 are assumed to be the same code patterns, but are not limited to this. The code pattern of each period may include a code pattern different from other code patterns. In Embodiment 1, in "multiple periods", not only the case where the same code pattern is strictly repeated is included, but also the case where a code pattern different from other code patterns exists. Sometimes even code patterns that are different from each other will produce similar pattern arrangements, so when code patterns that are different from each other are included, the same effect as the case where the code patterns of each period are the same as each other can be obtained. In the case where foreign matter is attached to the scale 10 or the image sensor 12, the number of bits in the image obtained by the image sensor 12 is reduced, which may produce a code string similar to the read code string. In this case, the partition determination unit 15 can also clearly determine which M series pattern of the M series patterns of multiple periods it is by determining the partition.
[0088] Next, the relationship between the number of periods N and the number of partitions of the M series pattern formed by one track on the scale 10 is described. In Embodiment 1, when the number of periods N is 2, the number of partitions in the pattern area of the scale 10 is greater than or equal to 3, and when the number of periods N is greater than or equal to 3, the number of partitions in the pattern area is greater than or equal to N. Fig.11 In the first example shown, N=2 and the number of partitions is 4, so the condition of the first embodiment is satisfied.
[0089] Fig.12 This is a diagram for explaining the relationship between the optical pattern 20 and the partitions in the comparative example of the first embodiment. Fig.12 The comparative example shown is an example in which the above conditions of the first embodiment are not satisfied. N=2 and the number of divisions is 2. The magnetic pole pattern is set to be only one sine wave pattern. The waveform representing the magnetic flux density is set to be the same as Fig.10 The sine wave of the sin wave track 31 shown is the same as the sine wave of FIG.
[0090] In the rotary encoder, the last position of the second code pattern 24, 360 degrees, is the same as the initial position of the first code pattern 23, 0 degrees. When the scale rotates more than 10 times, the absolute position can be calculated even if the first code pattern 23 and the second code pattern 24 overlap. The code string near 0 degrees and the code string near 180 degrees are the same, but based on the determination result of the partition, it is determined whether the code string is included in the first code pattern 23 or the second code pattern 24.
[0091] However, errors may occur in the determination of the partitions at the boundaries between code patterns, that is, 0 degrees and 180 degrees, and thus an angle that is 180 degrees different from the correct angle may be detected as the absolute position. Fig.10 As shown, the output of the magnetic sensor 14 becomes 0. In both the case where the measured position is 0 degrees and the case where the measured position is 180 degrees, the output of the magnetic sensor 14 becomes 0, and it is difficult to determine whether the measured position is 0 degrees or 180 degrees. In this case, it is possible to calculate the angle that differs by 180 degrees as the absolute position.
[0092] In the case where one rotation is divided into two partitions as in the comparative example, since the boundary at the position of 0 degrees and the boundary at the position of 180 degrees are both the boundaries of "Partition 1" and "Partition 2", it is possible to misjudge the discrimination of the code pattern containing the code string. Consider that near the boundary between the code patterns, the positive and negative errors of the output from the magnetic sensor 14 due to the detection error of the magnetic sensor 14 may cause the judgment of the partition to be wrong. If the angle that differs by 180 degrees from the correct angle is calculated as the absolute position, an abnormality will occur when driving a motor, etc. As described above, in the case of the comparative example, it is possible to miscalculate the absolute position near the boundary of the partition.
[0093] exist Fig.11 In the case of the first example shown, the boundary at the position of 0 degrees among the boundaries between the code patterns is the boundary between "Partition 4" and "Partition 1". The boundary at the position of 180 degrees among the boundaries between the code patterns is the boundary between "Partition 2" and "Partition 3". In the first embodiment, the partition determination unit 15 determines the partitions with respect to the code strings at the boundaries between adjacent partitions. The partition determination unit 15 determines "Partition 4" and "Partition 1" with respect to the boundary at the position of 0 degrees. The partition determination unit 15 determines "Partition 2" and "Partition 3" with respect to the boundary at the position of 180 degrees. Thus, the partition determination unit 15 can clearly determine which of the first code pattern 23 and the second code pattern 24 the code strings at each position of 0 degrees and 180 degrees are included in through this determination.
[0094] The 90-degree position where the magnetic pole switches in the second magnetic pole pattern is the boundary between "Partition 1" and "Partition 2". The 270-degree position where the magnetic pole switches in the second magnetic pole pattern is the boundary between "Partition 3" and "Partition 4". The partition determination unit 15 determines "Partition 1" and "Partition 2" with respect to the boundary at the 90-degree position. The partition determination unit 15 determines "Partition 3" and "Partition 4" with respect to the boundary at the 270-degree position. Thus, the partition determination unit 15 can clearly determine which of the first code pattern 23 and the second code pattern 24 the code string at each position of 90 degrees and 270 degrees is included in through this determination.
[0095] Fig.13 2 is a diagram for explaining a second example of the relationship between the optical pattern 20 and the partitions in the first embodiment. Fig.13 In the second example shown, N=2 and the number of partitions is 3, which satisfies the above-mentioned conditions of the first embodiment.
[0096] In the case of the second example, the boundary at 0 degrees among the boundaries between the code patterns is the boundary between "Partition 3" and "Partition 1". The boundary at 180 degrees among the boundaries between the code patterns is included in "Partition 2". The partition determination unit 15 can clearly determine whether the code string located at the boundary is included in the first code pattern 23 or the second code pattern 24 through the determination of the partitions. The partition determination unit 15 can also clearly determine whether the code string is included in the first code pattern 23 or the second code pattern 24, at the position of 120 degrees, which is the boundary between "Partition 1" and "Partition 2", and at the position of 240 degrees, which is the boundary between "Partition 2" and "Partition 3".
[0097] As described above, when the number of cycles N is 2, the number of partitions is greater than or equal to 3, so that the partition determination unit 15 can clearly determine whether the code string located at the boundary of the partition is included in the first code pattern 23 or the second code pattern 24. When a foreign object is attached to the scale 10 or the image sensor 12, the partition determination unit 15 can also clearly determine which M series pattern of the multiple cycles of the M series pattern it is.
[0098] Fig.14 2 is a diagram for explaining a third example of the relationship between the optical pattern 20 and the partition in Embodiment 1. The first code pattern 23, the second code pattern 24, and the third code pattern 25 are M series patterns with the order n being 10. Fig.14 In the third example shown, N=3 and the number of partitions is 3, which satisfies the above-mentioned conditions of the first embodiment.
[0099] In the case of the third example, the boundary at 0 degrees among the boundaries between the code patterns is the boundary between "Partition 3" and "Partition 1". The boundary at 120 degrees among the boundaries between the code patterns is the boundary between "Partition 1" and "Partition 2". The boundary at 240 degrees among the boundaries between the code patterns is the boundary between "Partition 2" and "Partition 3". The partition determination unit 15 can clearly determine which of the first code pattern 23, the second code pattern 24, and the third code pattern 25 the code string is included in by determining the partition.
[0100] Fig.15 4 is a diagram for explaining the relationship between the optical pattern 20 and the partition in Embodiment 1. The first code pattern 23, the second code pattern 24, the third code pattern 25, and the fourth code pattern 26 are M series patterns with the order n being 10. Fig.15 In the fourth example shown, N=4 and the number of partitions is 4, which satisfies the above-mentioned conditions of the first embodiment.
[0101] In the case of the fourth example, the boundary at 0 degrees among the boundaries between the code patterns is the boundary between "Partition 4" and "Partition 1". The boundary at 90 degrees among the boundaries between the code patterns is the boundary between "Partition 1" and "Partition 2". The boundary at 180 degrees among the boundaries between the code patterns is the boundary between "Partition 2" and "Partition 3". The boundary at 270 degrees among the boundaries between the code patterns is the boundary between "Partition 3" and "Partition 4". The partition determination unit 15 can clearly determine which of the first code pattern 23, the second code pattern 24, the third code pattern 25, and the fourth code pattern 26 the code string is included in by determining the partition.
[0102] As described above, when the number of cycles N is greater than or equal to 3, the number of partitions is greater than or equal to N, so that the partition determination unit 15 can clearly determine which code pattern among the multiple code patterns the code string located at the boundary of the partition is included in. When a foreign object is attached to the scale 10 or the image sensor 12, the partition determination unit 15 can also clearly determine which M series pattern among the multiple periodic M series patterns it is.
[0103] In the first to fourth examples, the partition boundary is aligned with the boundary of the M series pattern, but the partition boundary may not be aligned with the boundary of the M series pattern. The partition boundary may be at any position other than the boundary of the M series pattern. Even when the partition boundary is at a position other than the boundary of the M series pattern, the absolute encoder 100 can obtain the same effect as when the partition boundary is aligned with the boundary of the M series pattern.
[0104] exist Figure 1In the structure shown, the image sensor 12 and the magnetic sensor 14 are arranged at different positions from each other, but the image sensor 12 and the magnetic sensor 14 can also be arranged on the same substrate. The circuit unit that functions as the absolute position calculation unit 13 and the circuit unit that functions as the partition determination unit 15 can be arranged on the same substrate as the image sensor 12 and the magnetic sensor 14. The absolute position is calculated based on the M series pattern configured on one track, but the calculation method of the absolute position implemented by the absolute position calculation unit 13 is not limited to this. The absolute position calculation unit 13 can calculate the absolute position by any method. In embodiment 1, the rotary encoder is an absolute encoder 100 as an example, but the structure and processing described in embodiment 1 can also be applied to a linear encoder.
[0105] According to Embodiment 1, when the number of cycles N is 2, the number of partitions in the pattern area is greater than or equal to 3, and when the number of cycles N is greater than or equal to 3, the number of partitions in the pattern area is greater than or equal to N. By satisfying this condition, the absolute encoder 100 can clearly distinguish which M series pattern of the M series patterns of multiple cycles the read code string is included in. When the radius R of the absolute encoder 100 increases, the structure will not be enlarged, and a high error correction capability can be achieved. In addition, by being able to reduce errors in the detection of the absolute position, it is possible to achieve high-precision detection of the absolute position. As described above, the absolute encoder 100 has the effect of being able to achieve high-precision detection of the absolute position.
[0106] Implementation method 2.
[0107] In the second embodiment, an example in which a signal different from that in the first embodiment is used to determine a partition will be described. Fig.16 1 is a diagram showing a configuration example of an absolute encoder 100A according to Embodiment 2. In Embodiment 2, the same components as those of Embodiment 1 are denoted by the same reference numerals, and configurations different from Embodiment 1 are mainly described.
[0108] The absolute encoder 100A has a scale 10A different from the scale 10 of Embodiment 1. An optical track 70 whose light intensity varies for each partition is formed on the scale 10A. The absolute encoder 100A has a light receiving unit 60 for detecting light from the optical track 70. The magnetic sensor 14 and the magnet 30 described in Embodiment 1 are not provided in the absolute encoder 100A.
[0109] Fig.17 FIG. 1 is a diagram showing a scale 10A included in an absolute encoder 100A according to Embodiment 2. The scale 10A has an optical pattern 20 similar to that of Embodiment 1. Fig.17Illustration of the reflective portion 21 and the non-reflective portion 22 in the optical pattern 20 is omitted.
[0110] The optical track 70 is formed on the surface of the scale 10A, closer to the center than the optical pattern 20. The optical track 70 has two tracks. The track on the outer side of the two tracks is called the sin wave track 71, and the track on the center side of the two tracks is called the cos wave track 72. The sin wave track 71 and the cos wave track 72 are respectively configured so that the reflectivity gradually changes for each position in the circumferential direction. The reflectivity of the sin wave track 71 for each position in the circumferential direction is adjusted by the same Fig.10 The waveform of the sin wave track 31 shown in FIG. 7 is the same as that of the cos wave track 72. The reflectivity of each position in the circumferential direction is expressed by Fig.10 The waveform of the cos wave track 32 shown is the same as the waveform representation.
[0111] The sin wave track 71 and the cos wave track 72 of the optical track 70 are each configured such that the reflectivity changes in a sine wave shape. The sin wave track 71 and the cos wave track 72 are not limited to being configured such that the reflectivity changes in a sine wave shape. The waveform indicating the change in reflectivity may be a rectangular wave or the like other than a sine wave.
[0112] Fig.18 This is a diagram showing a scale 10A in an absolute encoder 100A according to the second embodiment and a structure arranged to face the scale 10A. Fig.18 This is a plan view parallel to the center line of the shaft 16 and one diameter of the scale 10A.
[0113] The light emitting element 11 serves as both a supply source of light for irradiating the optical pattern 20 and a supply source of light for irradiating the optical track 70. The light receiving unit 60 has two light receiving elements 61 and 62. The light receiving element 61 receives reflected light from the sin wave track 71. The light receiving element 62 receives reflected light from the cos wave track 72. The light emitting element 11, the image sensor 12, and the light receiving unit 60 are mounted on a common substrate 63 and arranged at a position relative to the scale 10A. The light emitting element 11, the image sensor 12, and the light receiving unit 60 are mounted on a common substrate 63, thereby enabling miniaturization of the structure of the absolute encoder 100A. The light emitting element 11 is shared by the image sensor 12 and the light receiving unit 60, thereby enabling the absolute encoder 100A to reduce the number of components and achieve miniaturization of the structure.
[0114] The light receiving element 61 detects the reflected light from the sin wave track 71, and outputs a signal corresponding to the intensity of the detected reflected light to the partition determination unit 15. The light receiving element 62 detects the reflected light from the cos wave track 72, and outputs a signal corresponding to the intensity of the detected reflected light to the partition determination unit 15. The partition determination unit 15 determines the partition based on the input signal. That is, the partition determination unit 15 determines the partition based on the result obtained by detecting the intensity of the light from the optical track 70. The partition determination unit 15 obtains the result obtained by Fig.10 The signal having the same waveform as the sin wave track 31 shown in FIG. Fig.10 The signal of the waveform is the same as the waveform of the cos wave track 32 shown in FIG. Thus, the partition determination unit 15 can determine the partition in the same manner as in the case of the first embodiment. As in the case of the first embodiment, the absolute encoder 100A does not increase the size of the structure even when the radius R increases, and can achieve a high error correction capability, and can reduce errors in the detection of the absolute position, thereby achieving high-precision detection of the absolute position.
[0115] exist Fig.16 In the embodiment, as the absolute encoder 100A, a reflective encoder in which the light emitting element 11, the image sensor 12, and the light receiving unit 60 are all arranged on one side of the scale 10A is exemplified, but it is not limited to this. The absolute encoder 100A may also be a transmissive encoder in which the light emitting element 11, the image sensor 12, and the light receiving unit 60 are arranged at positions opposite to each other across the scale 10A. In this case, the sin wave track 71 and the cos wave track 72 are respectively configured so that the transmittance gradually changes for each position in the circumferential direction. The light receiving element 61 detects the light transmitted through the sin wave track 71, and outputs a signal corresponding to the intensity of the detected light to the partition determination unit 15. The light receiving element 62 detects the light transmitted through the cos wave track 72, and outputs a signal corresponding to the intensity of the detected light to the partition determination unit 15. As long as the optical track 70 is configured so that the partition can be determined by the partition determination unit 15, the structure of the optical track 70 is not limited to the structure described in the second embodiment.
[0116] Implementation method 3.
[0117] The difference between the third embodiment and the first and second embodiments is that information indicating the partition is stored, and whether the determined partition is erroneous is confirmed based on the stored information. Fig.19 1 is a diagram showing a configuration example of an absolute encoder 100B according to Embodiment 3. In Embodiment 3, the same components as those in Embodiment 1 or 2 are denoted by the same reference numerals, and configurations different from Embodiment 1 or 2 are mainly described.
[0118] The absolute encoder 100B has a configuration similar to that of the absolute encoder 100 of the first embodiment, and a partition storage unit 17 is added thereto. The partition storage unit 17 stores partition information, which is information indicating the partition determination result obtained by the partition determination unit 15. In addition, the absolute encoder 100B is not limited to the configuration similar to that of the absolute encoder 100 of the first embodiment, and the partition storage unit 17 is added thereto. The absolute encoder 100B may have a configuration similar to that of the absolute encoder 100A of the second embodiment, and a partition storage unit 17 is added thereto.
[0119] Next, the determination of the partition using the partition information is described. After the power is turned on to the absolute encoder 100B, in the initial calculation cycle, the absolute encoder 100B calculates the absolute position in the same manner as in the case of the first or second embodiment. The partition determination unit 15 determines the partition in the same manner as in the case of the first or second embodiment. The partition determination unit 15 outputs the partition information indicating the determination result of the partition to the absolute position calculation unit 13 and the partition storage unit 17 respectively. The absolute encoder 100B causes the partition storage unit 17 to store the partition information, thereby saving the partition information.
[0120] After the power is turned on to the absolute encoder 100B, in an operation cycle later than the initial operation cycle, the partition determination unit 15 reads the partition information from the partition storage unit 17. In addition, the partition determination unit 15 determines the partition in the same manner as in the case of Implementation 1 or 2. The partition determination unit 15 compares the partition determined this time with the partition indicated by the partition information. When the partition determined this time is the same as the partition indicated by the partition information, or the partition determined this time is an adjacent partition to the partition indicated by the partition information, the partition determination unit 15 adopts the determined partition as the result of the determination this time. On the other hand, when the partition determined this time is a partition far away from the partition indicated by the partition information, the partition determination unit 15 determines that the partition determined this time is wrong. In this case, the partition determination unit 15 adopts the partition indicated by the partition information as the result of the determination this time.
[0121] As described above, the partition determination unit 15 detects an error in determination in the first operation cycle based on the partition information indicating the determination result of the partition in the second operation cycle that is earlier than the first operation cycle when determining the partition. The first operation cycle is the operation cycle for performing the current partition determination. The second operation cycle is the operation cycle before the first operation cycle. The partition determination unit 15 outputs the partition information indicating the current determination result to the absolute position calculation unit 13 and the partition storage unit 17 respectively. The partition information stored in the partition storage unit 17 is updated to the partition information adopted for each operation cycle.
[0122] The absolute encoder 100B can reduce errors in absolute position detection by detecting errors in determination of the partition in the partition determination unit 15. Thus, the absolute encoder 100B can realize highly accurate detection of the absolute position.
[0123] In addition, in the above description, it is assumed that when the determined partition is the same as the partition determined last time, or is an adjacent partition to the partition determined last time, the determined partition is adopted, but the method for judging the feasibility of the adoption is not limited to this. In the above description, the partition information stored in the partition storage unit 17 is updated to the partition information adopted for each operation cycle, and only the previous partition information is stored, but it is not limited to this. The partition information in multiple operation cycles can also be maintained in the partition storage unit 17. The partition determination unit 15 can compare the partition determined this time with the partition information in multiple past operation cycles. In the above description, it is assumed that the comparison between the partition determined this time and the partition determined last time is not performed in the initial operation cycle from the power supply to the absolute encoder 100B, but it is not limited to this. The partition determination unit 15 can also read the partition information stored in the partition storage unit 17 when the absolute encoder 100B was last operated, and compare it with the partition determined this time.
[0124] Next, an example of the operation of the partition determination unit 15 and the partition storage unit 17 of the third embodiment is described. In the example of the operation of the third embodiment, the partition determination unit 15 detects an error in the determination in the first operation cycle based on the partition information indicating the determination result of the partition in the second operation cycle and the speed of the scale 10.
[0125] If the current speed of the scale 10 is v and the calculation cycle is τ, the movement amount D of the scale 10 in the calculation cycle is expressed by the following equation (5).
[0126] D=v×τ· · · (5)
[0127] The partition determination unit 15 reads the partition information from the partition storage unit 17 and obtains the speed information of the scale 10. The partition determination unit 15 calculates the movement amount D from the time when the previous partition was determined to the current time based on the calculation cycle τ and the speed v indicated by the speed information. The partition determination unit 15 detects errors in the determination of the partition based on the partition indicated by the partition information and the movement amount D. The partition determination unit 15 uses the partition information and the movement amount D, thereby being able to detect errors in the determination of the partition with higher accuracy.
[0128] The partition determination unit 15 obtains the calculation result of the absolute position in the previous calculation cycle, and adds the movement amount D to the calculation result of the absolute position, thereby being able to estimate the current absolute position. The partition determination unit 15 can compare the current partition obtained based on the result of estimating the current absolute position with the determined partition, thereby detecting an error in the partition determination. In this case, the partition determination unit 15 can also detect an error in the partition determination with higher accuracy. The method for detecting an error in the partition determination is not limited to the above method as long as it is a method using the stored partition information.
[0129] Next, the hardware configuration of the absolute position calculation unit 13, the partition determination unit 15, and the partition storage unit 17 that realize the functional units of the absolute encoders 100, 100A, and 100B according to the first to third embodiments will be described. The functional units of the absolute encoders 100, 100A, and 100B are realized by a processing circuit. The processing circuit may be a circuit in which a processor executes software, or may be a dedicated circuit.
[0130] In the case where the processing circuit is implemented by software, the processing circuit is, for example, Fig. 20 The control circuit 80 is shown. Fig. 20 1 is a diagram showing a configuration example of a control circuit 80 according to Embodiments 1 to 3. The control circuit 80 includes an input unit 81 , a processor 82 , a memory 83 , and an output unit 84 .
[0131] The input unit 81 is an interface circuit that receives data input from the outside of the control circuit 80 and gives it to the processor 82. The output unit 84 is an interface circuit that sends data from the processor 82 or the memory 83 to the outside of the control circuit 80. Fig. 20 In the case of the control circuit 80 shown in the figure, the processor 82 reads out and executes the program stored in the memory 83, thereby realizing the absolute position calculation unit 13, the partition determination unit 15 and the partition storage unit 17 as the functional units of the absolute encoders 100, 100A, and 100B. The program stored in the memory 83 is a program corresponding to the absolute position calculation unit 13, the partition determination unit 15 and the partition storage unit 17. In addition, the processor 82 outputs data such as the calculation result to the volatile memory of the memory 83. The memory 83 is also used as a temporary memory for each process performed by the processor 82. The processor 82 can output the data such as the calculation result to the memory 83 for storage, or store the data such as the calculation result in the auxiliary storage device via the volatile memory of the memory 83. The function of the partition storage unit 17 is realized by using the memory 83 or the auxiliary storage device.
[0132] The processor 82 is a CPU (also called a Central Processing Unit, a central processing device, a processing device, an arithmetic device, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor). The memory 83 is, for example, a nonvolatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory), a magnetic disk, a floppy disk, an optical disk, a compact disk, a mini disk, or a DVD (Digital Versatile Disc).
[0133] Fig. 20 This is an example of hardware in which the functional units of the absolute encoders 100 , 100A, and 100B are realized by the general-purpose processor 82 and the memory 83 . However, the functional units of the absolute encoders 100 , 100A, and 100B may be realized by dedicated hardware circuits. Fig.21 This is a diagram showing a configuration example of a dedicated hardware circuit 85 according to the first to third embodiments.
[0134] The dedicated hardware circuit 85 has an input unit 81, an output unit 84, and a processing circuit 86. The processing circuit 86 is a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a circuit combining them. In addition, the functional units of the absolute encoders 100, 100A, and 100B can also be realized by combining the control circuit 80 and the hardware circuit 85.
[0135] Implementation method 4.
[0136] In the fourth embodiment, an example in which an absolute encoder is applied to a rotary motor as a motor will be described. Fig. 221 is a diagram showing a configuration example of a rotary motor 200 according to a fourth embodiment. In the fourth embodiment, the same components as those in the first to third embodiments are denoted by the same reference numerals, and the configurations different from those in the first to third embodiments are mainly described. In the following description, the case where the absolute encoder 100 according to the first embodiment is applied to the rotary motor 200 is taken as an example, but the absolute encoders 100A and 100B according to the second or third embodiments may also be used in the rotary motor 200.
[0137] The shaft 16 is provided at the rotation center of the rotor arranged inside the outer contour of the rotary motor 200. The shaft 16 is arranged to protrude outside the outer contour, and transmits the driving force generated inside the outer contour to the outside of the outer contour. A stator and a bearing that rotatably supports the shaft 16 are provided inside the outer contour of the rotary motor 200.
[0138] The absolute encoder 100 is provided at the end of the outer contour of the rotary motor 200 on the opposite side of the load. The scale 10 is connected to the end of the shaft 16 on the opposite side of the load. Figure 1 The shaft 16 is shown connected to the scale 10 in a state where the shaft 16 passes through the center of the scale 10. The absolute encoder 100 is covered by a cap 201 mounted on the outer contour of the rotary motor 200. Fig. 22 Schematically showing the structural elements housed inside the cap 201.
[0139] exist Fig. 22 , the control circuit 80 that functions as the absolute position calculation unit 13 and the partition determination unit 15 is shown, but a hardware circuit 85 may be provided in place of the control circuit 80 in the absolute encoder 100, or a combination of the control circuit 80 and the hardware circuit 85 may be provided.
[0140] The rotary motor 200 includes the absolute encoder 100, thereby enabling high-precision detection of the absolute position. The rotary motor 200 enables high-precision detection of the absolute position, thereby enabling high reliability.
[0141] Implementation method 5.
[0142] In the fifth embodiment, an example in which an absolute encoder is applied to a direct-acting motor as a motor will be described. Fig.23 1 is a diagram showing a configuration example of a direct-acting motor 300 according to Embodiment 5. In Embodiment 5, the same components as those in Embodiments 1 to 4 are denoted by the same reference numerals, and configurations different from Embodiments 1 to 4 will be mainly described.
[0143] The linear motor 300 includes a stator 301 and a linear motion table 302 as a movable part. When the coil of the stator 301 is energized, the stator 301 generates an electromagnetic field. The linear motor 300 moves the linear motion table 302 in a linear direction by the action of the magnet of the linear motion table 302 and the electromagnetic field.
[0144] The direct-acting motor 300 has an absolute encoder 310 as a linear encoder. The absolute encoder 310 is obtained by modifying the absolute encoder 100 according to the first embodiment in accordance with a linear structure, and has the same features as the absolute encoder 100. In addition, an absolute encoder having the same features as the absolute encoders 100A and 100B according to the second or third embodiment may be used in the direct-acting motor 300 instead of the absolute encoder 310.
[0145] The absolute encoder 310 includes a scale 311 and a magnet 312 which are integrated with each other. The scale 311 and the magnet 312 which are integrated with each other extend in a straight line direction. The scale 311 and the magnet 312 are installed at the installation location of the stator 301. The scale 311 includes an optical pattern 314. The optical pattern 314 is formed with Figure 1 The same reflecting portion 21 and non-reflecting portion 22. The reflecting portion 21 and non-reflecting portion 22 are arranged in a straight line direction. Fig.23 The reflection portion 21 and the non-reflection portion 22 are omitted in the figure.
[0146] Fig.24 1 is a top view showing a part of the structure of the absolute encoder 310 of the direct-acting motor 300 according to Embodiment 5. The light-emitting element 11, the image sensor 12, the magnetic sensor 14, and the control circuit 80 are fixed to the direct-acting table 302 via the support 313. The light-emitting element 11, the image sensor 12, and the magnetic sensor 14 are mounted on the surface of the support 313 that is opposite to the scale 311.
[0147] The absolute position calculation unit 13 reads the code string of the optical pattern 314 using the image sensor 12 that moves integrally with the linear motion stage 302. The absolute position calculation unit 13 obtains the position of the linear motion stage 302 in the linear direction, that is, the absolute position, based on the partition determined by the partition determination unit 15 and the read code string.
[0148] exist Fig.24 , the control circuit 80 that functions as the absolute position calculation unit 13 and the partition determination unit 15 is shown, but the absolute encoder 310 may be provided with a hardware circuit 85 instead of the control circuit 80 , or a combination of the control circuit 80 and the hardware circuit 85 may be provided.
[0149] The direct-acting motor 300 includes the absolute encoder 310, thereby enabling high-precision detection of the absolute position. The direct-acting motor 300 enables high-precision detection of the absolute position, thereby enabling high reliability.
[0150] The structures shown in the above embodiments illustrate an example of the content of the present invention. The structures of the embodiments can be combined with other known technologies. The structures of the embodiments can also be appropriately combined with each other. Without departing from the scope of the gist of the present invention, a part of the structure of the embodiments can be omitted or changed.
[0151] Description of the label
[0152] 10, 10A, 311 scale, 11 light emitting element, 12 image sensor, 13 absolute position calculation unit, 14 magnetic sensor, 15 partition determination unit, 16 axis, 17 partition storage unit, 20, 314 optical pattern, 21 reflection unit, 22 non-reflection unit, 23 1st code pattern, 24 2nd code pattern, 25 3rd code pattern, 26 4th code pattern, 30, 312 magnet, 31, 71 sin wave track, 32, 72 cos wave track, 33, 35 N pole, 34, 36 S pole, 40, 41 waveform, 43 High bit, 44 Low bit , 45 threshold level, 46 edge pixel position, 50 edge, 51 rising edge, 52 falling edge, 53 position column, 54 reference pixel position, 60 light receiving part, 61, 62 light receiving element, 63 substrate, 70 optical track, 80 control circuit, 81 input part, 82 processor, 83 memory, 84 output part, 85 hardware circuit, 86 processing circuit, 100, 100A, 100B, 310 absolute encoder, 200 rotary motor, 201 cap, 300 direct-acting motor, 301 stator, 302 direct-acting worktable, 313 support body.
Claims
1. An absolute encoder, characterized in that: have: a ruler having an optical pattern including a code pattern having a plurality of periods; an illumination unit that outputs light for illuminating the scale; a light detection unit that detects light emitted by the scale that receives light from the illumination unit and outputs a signal corresponding to the intensity of the detected light; A partition determination unit, wherein the area in the scale where the optical pattern is formed, i.e., the pattern area, is divided into a plurality of partitions by a signal track, and determines from the plurality of partitions to which the code string read based on the signal from the light detection unit belongs; as well as an absolute position calculation unit for calculating the absolute position of the scale based on the partition determined by the partition determination unit and the code string, The code patterns of each period in the scale are identical to each other. The number of periods of the code pattern in the ruler is set to N, when N is 2, the number of partitions in the pattern area is greater than or equal to 3, and when N is greater than or equal to 3, the number of partitions in the pattern area is greater than or equal to N, The partition determination unit determines, with respect to the code string at a boundary between mutually adjacent partitions, to which partition the mutually adjacent partitions belong.
2. The absolute encoder according to claim 1, characterized in that: The optical pattern is a pattern of only one track.
3. The absolute encoder according to claim 1, characterized in that: The partition determination unit detects an error in determination in the first calculation cycle based on partition information indicating a determination result of the partition in a second calculation cycle preceding a first calculation cycle in which the partition is determined.
4. The absolute encoder according to claim 2, characterized in that: The partition determination unit detects an error in determination in the first calculation cycle based on partition information indicating a determination result of the partition in a second calculation cycle preceding a first calculation cycle in which the partition is determined.
5. The absolute encoder according to claim 3, characterized in that: The partition determination unit detects an error in determination in the first calculation cycle based on the partition information and the speed of the scale.
6. The absolute encoder according to claim 4, characterized in that: The partition determination unit detects an error in determination in the first calculation cycle based on the partition information and the speed of the scale.
7. The absolute encoder according to any one of claims 1 to 6, characterized in that: have: a magnet integrated with the scale; as well as a magnetic sensor that detects the magnetic field generated by the magnet, The partition determination unit determines the partition based on a detection result of a magnetic field obtained by the magnetic sensor.
8. The absolute encoder according to any one of claims 1 to 6, characterized in that: An optical track is formed on the scale, the intensity of light varying for each of the partitions. The partition determination unit determines the partition based on a result of detecting the intensity of light from the optical track.
9. The absolute encoder according to claim 7, characterized in that: An optical track is formed on the scale, the intensity of light varying for each of the partitions. The partition determination unit determines the partition based on a result of detecting the intensity of light from the optical track.
10. An electric motor, characterized in that: A device having an absolute encoder as claimed in any one of claims 1 to 9.
Citation Information
Patent Citations
Linear absolute encoder
JP1992160317A
Absolute encoder
CN108027259A
Rotation angle sensor
JP2004093502A