Automatic stabilization of encoder

By integrating the exciter, sensor and controller in the encoder system, the errors in the signal are detected and corrected in real time, the problem that existing encoders cannot correct the signal in real time is solved, and the continuous accuracy of the signal is achieved.

CN119618285APending Publication Date: 2025-03-14AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD

Patent Information

Application Number
CN202411075039.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-09-13
Filing Date
2024-08-07
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

The existing encoder only performs calibration once after initial setup, and cannot correct errors in the signal in real time, resulting in the signal becoming inaccurate over time.

Method used

设计一种编码器系统,包含激励器、传感器和控制器,通过检测信号的偏移、增益和相位中的误差,实时计算并应用校正值以校正信号。

Benefits of technology

Real-time correction of the encoder signal is realized to ensure that the signal is always accurate during use and avoid signal inaccuracy caused by time changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119618285A_ABST
    Figure CN119618285A_ABST
Patent Text Reader

Abstract

The invention relates to automatic stabilization of an encoder. Novel tools and techniques are provided for implementing an encoder capable of performing a self-correcting process, and more particularly, methods, systems, and apparatus are provided for implementing the encoder capable of performing a process to correct itself during operation of the encoder. In various embodiments, the encoder includes an exciter and a sensor capable of detecting a position of the exciter and generating a signal based on the position of the exciter. The encoder can then perform one or more steps to detect at least one of a first error in an offset of the signal, a second error in a gain of the signal, or a third error in a phase of the signal as the exciter rotates, and correct the signal from the sensor based on the detection of at least one of the first error, the second error, or the third error.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS REFERENCE TO RELATED APPLICATIONS

[0002] This application is related to U.S. application No. 18 / 466,801, filed on September 13, 2023, entitled “Automatic Calibration of Encoders” (Attorney Docket No. 1317.230053US01) and U.S. application No. 18 / 466,817, filed on September 13, 2023, entitled “Automatic Calibration of Encoders Based on Temperature” (Attorney Docket No. 1317.230022US01), which are jointly owned and incorporated herein by reference for all purposes.

[0003] Copyright Notice

[0004] Portions of the disclosure of this patent document contain material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. Technical Field

[0005] The present disclosure relates generally to methods, systems, and apparatus for implementing correction of an encoder, and more particularly, to methods, systems, and apparatus for implementing correction of a signal of an encoder. Background Art

[0006] Most types of encoders require calibration before the encoder is used. Calibration of an encoder is usually performed only once during the life of the encoder (for example, when the encoder is first set up). In order to calibrate the encoder, a reference encoder is usually required. A reference encoder is an additional encoder that has been calibrated. The signal of the reference encoder is compared with the signal from the encoder. Then, the signal of the encoder is corrected based on the comparison of the signal of the encoder with the signal of the reference encoder to determine the angular position of the encoder. However, this calibration process using a reference encoder can usually only be performed once in the factory, because once the encoder is calibrated, the reference encoder is removed and the encoder is then shipped from the factory to the customer.

[0007] Therefore, there is a need for a more robust and scalable solution for implementing correction of an encoder.Accordingly, methods, systems and apparatus for implementing correction of the position of an actuator of an encoder are provided. Summary of the invention

[0008] In one aspect, the present disclosure relates to an encoder comprising: an actuator; a sensor configured to detect a position associated with the actuator and generate a signal based on the position; and a controller configured to: receive the signal from the sensor; detect at least one of a first error in the offset of the signal from the sensor, a second error in the gain of the signal, and a third error in the phase of the signal when the actuator rotates; calculate at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, and a third value for correcting the phase of the signal based on the detection of at least one of the first error, the second error, or the third error; and correct the signal based on at least one of the first value, the second value, or the third value.

[0009] On the other hand, the present disclosure relates to a method for correcting an error in a signal of an encoder, the method comprising: detecting the signal from a sensor of the encoder that detects the position of an exciter of the encoder; detecting at least one of a first error in the offset of the signal from the sensor, a second error in the gain of the signal, or a third error in the phase of the signal when the exciter rotates; based on the detection of at least one of the first error, the second error, or the third error, calculating at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal; and correcting the signal based on at least one of the first value, the second value, or the third value.

[0010] On the other hand, the present disclosure relates to an encoder comprising: an actuator; a sensor configured to detect a position associated with the actuator and generate a signal based on the position; and a processor configured to: detect at least one of a first error in the offset of the signal from the sensor, a second error in the gain of the signal, and a third error in the phase of the signal when the actuator rotates; determine that at least one of the first error, the second error, or the third error occurs across two or more rotation cycles; based on the determination that at least one of the first error, the second error, or the third error occurs across two or more rotation cycles, calculate at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal; and correct the signal based on at least one of the first value, the second value, or the third value. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] A further understanding of the nature and advantages of particular embodiments may be achieved by reference to the remainder of the specification and drawings, wherein the same reference numerals are used to refer to similar components. In some instances, a sub-label is associated with a reference numeral to denote one of multiple similar components. When a reference numeral is cited without specifying an existing sub-label, it is intended to refer to all such multiple similar components.

[0012] Figure 1 is a perspective view of a system having an encoder according to various embodiments;

[0013] Figure 2A is a perspective view of an actuator of a magnetic encoder according to various embodiments;

[0014] Figure 2B is a top view of an actuator of an optical encoder according to various embodiments;

[0015] Figure 3 is a flow chart of a method of correcting a signal of an encoder according to various embodiments;

[0016] Figure 4 is a flow chart of a method of detecting an error in position or rotation of an actuator of an encoder according to various embodiments;

[0017] Figure 5 is a graph illustrating application of a moving average algorithm to a signal received from a sensor of an encoder according to various embodiments;

[0018] Figure 6 is a simplified block diagram illustrating components of an exemplary encoder according to various embodiments;

[0019] Figure 7 is a graph illustrating correction of offset, phase, and gain of a sensor's signal according to various embodiments; and

[0020] Figure 8 It is to illustrate the use of various embodiments Figure 3 A method for correcting the position of the encoder's actuator is shown in FIG. DETAILED DESCRIPTION

[0021] Various embodiments provide tools and techniques for implementing an encoder capable of correcting or stabilizing itself. More particularly, methods, systems, and apparatus for implementing correction of a signal of an encoder are provided.

[0022] In a first aspect, an encoder comprises: an actuator; and a sensor configured to detect a position associated with the actuator and generate a signal based on the position; and a controller. The controller is further configured to: receive the signal from the sensor; detect at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, and a third error in a phase of the signal as the actuator rotates; based on the detection of at least one of the first error, the second error, or the third error, calculate at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, and a third value for correcting the phase of the signal; and correct the signal based on at least one of the first value, the second value, or the third value.

[0023] In various cases, the detection of at least one of the first error, the second error, or the third error in the rotation of the actuator, the calculation of at least one of the first value, the second value, or the third value for correcting the signal, and the correction of the signal occur as the actuator rotates (in real time). In some cases, correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined amount of time. In some examples, correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined number of rotations of the actuator. In various embodiments, correcting the signal based on at least one of the first value, the second value, or the third value includes dividing at least one of the first value, the second value, or the third value and correcting the signal within a predetermined number of rotations based on the division of the at least one of the first value, the second value, or the third value.

[0024] In some embodiments, the detection of the error in the rotation of the actuator and the calculation of the first value for correcting the signal occur after calibration of the encoder. In various examples, at least one of the first value, the second value, or the third value is combined with a corresponding value determined by calibration of the encoder. The first value may be combined with the corresponding value determined by calibration of the encoder within a predetermined amount of time or a predetermined number of rotations.

[0025] In some examples, the detection of at least one of the first error, the second error, or the third error includes detecting the first error, the second error, and the third error, and the correction of the signal includes first correcting the first error, then correcting the second error, then correcting the third error. In some examples, first correcting the first error, then correcting the second error, then correcting the third error occurs within a predetermined amount of time. In various cases, first correcting the first error, then correcting the second error, then correcting the third error occurs within a predetermined number of rotations.

[0026] In various embodiments, detecting at least one of the first error, the second error, or the third error includes: determining, based on the signal received from the sensor, that the signal does not match a target signal of the sensor; and based on the determination that the signal does not match the target signal, detecting at least one of the first error, the second error, or the third error when the actuator rotates.

[0027] In some examples, the controller is further configured to determine that at least one of the first error, the second error, or the third error occurs within a predetermined number of rotation cycles; and based on the determination that at least one of the first error, the second error, or the third error occurs within the predetermined number of rotation cycles, calculate at least one of the first value, the second value, or the third value to correct the signal to account for the at least one of the first error, the second error, or the third error and correct the signal based on the at least one of the first value, the second value, or the third value.

[0028] In some cases, at least one of the first error, the second error, or the third error is detected by combining peak and valley detection of the signal with a discrete Fourier transform (DFT).

[0029] On the other hand, a method for correcting an error in a signal of an encoder may include: detecting a signal from a sensor of the encoder that detects a position of an exciter of the encoder; detecting at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, or a third error in a phase of the signal as the exciter rotates; calculating at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal based on the detection of at least one of the first error, the second error, or the third error; and correcting the signal based on at least one of the first value, the second value, or the third value.

[0030] In various cases, the detection of at least one of the first error, the second error, or the third error in the rotation of the actuator, the calculation of at least one of the first value, the second value, or the third value for correcting the signal, and the correction of the signal occur as the actuator rotates (in real time). In some cases, correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined amount of time. In some examples, correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined number of rotations of the actuator. In various embodiments, correcting the signal based on at least one of the first value, the second value, or the third value includes dividing at least one of the first value, the second value, or the third value and correcting the signal within a predetermined number of rotations based on the division of the at least one of the first value, the second value, or the third value.

[0031] In some embodiments, the detection of the error in the rotation of the actuator and the calculation of the first value for correcting the signal occur after calibration of the encoder. In some cases, the detection of at least one of the first error, the second error, or the third error includes detecting the first error, the second error, and the third error, and wherein the correction of the signal includes first correcting the first error, then correcting the second error, and then correcting the third error.

[0032] In yet another aspect, an encoder includes an actuator, a sensor configured to detect a position associated with the actuator and generate a signal based on the position, and a processor. The processor is configured to detect at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, and a third error in a phase of the signal as the actuator rotates, determine that at least one of the first error, the second error, or the third error occurs across two or more rotational cycles, calculate at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal based on the determination that at least one of the first error, the second error, or the third error occurs across two or more rotational cycles, and correct the signal based on at least one of the first value, the second value, or the third value.

[0033] In the following description, for the purpose of explanation, numerous details are set forth to provide a thorough understanding of the described embodiments. However, it will be apparent to those skilled in the art that other embodiments may be practiced without some of these details. Several embodiments are described herein, and although various features are attributed to different embodiments, it should be understood that features described with respect to one embodiment may also be incorporated with other embodiments. However, for the same reason, no single feature or several features of any described embodiment should be considered essential to every embodiment of the invention, as other embodiments of the invention may omit such features.

[0034] Similarly, when an element is referred to herein as being "connected" or "coupled" to another element, it is understood that the element may be directly connected to the other element or have an intervening element present between the elements. Conversely, when an element is referred to as being "directly connected" or "directly coupled" to another element, it is understood that there are no intervening elements in the "direct" connection between the elements. However, the presence of a direct connection does not exclude other connections in which intervening elements may be present.

[0035] In addition, for ease of description, the methods and processes described herein may be described in a particular order. However, it should be understood that unless the context indicates otherwise, the intermediary processes may occur before and / or after any portion of the described processes, and that various other procedures may be reordered, added, and / or omitted according to various embodiments.

[0036] Unless otherwise indicated, all numbers used herein to express quantities, dimensions, etc. should be understood to be modified by the term "approximately" in all instances. In this application, unless otherwise specifically stated, the use of the singular includes the plural, and unless otherwise indicated, the use of the terms "and" and "or" means "and / or". In addition, the use of the term "including" as well as other forms (such as "includes and included") should be considered non-exclusive. In addition, terms such as "element" or "component" cover both elements and components including one unit and elements and components including more than one unit, unless otherwise specifically stated.

[0037] In addition, it should be understood that the spatial descriptions used herein (e.g., "above," "below," "up," "left," "right," "lower," "top," "bottom," "middle," "vertical," "horizontal," etc.) are for illustrative purposes only and that actual embodiments of the structures described herein may be spatially arranged in any orientation or manner.

[0038] In existing encoder calibration processes, the encoder is calibrated only once at initial setup. However, the angular position and rotational speed of the encoder may change over time based on thermal expansion of the encoder, exciter, motor shaft, etc. at different temperatures (e.g., changes in shape, volume, or area in response to temperature changes, etc.), defects that occur in the encoder, exciter, motor shaft over time (e.g., due to wear, thermal expansion, etc.), etc. It is generally not feasible to correct the encoder's signal after calibration because the encoder is typically only calibrated when it is first manufactured. Therefore, as the encoder is used, the encoder's signal may become inaccurate over time after the initial calibration of the encoder.

[0039] The proposed encoder can determine one or more new correction or stabilization values ​​while the encoder is in operation or use. For example, when the position and rotational speed of the encoder's exciter change over time due to the temperature of the encoder's surroundings, thermal expansion of the encoder, exciter, motor shaft, etc. at different temperatures, defects that occur in the encoder, exciter, motor shaft over time (e.g., due to wear, thermal expansion, etc.), etc., the encoder can determine one or more new correction or stabilization values ​​and update the encoder's lookup table based on these changes. Therefore, there is no need to run a new calibration cycle for the encoder, and the encoder can self-calibrate itself while the encoder is in use or operation.

[0040] Figure 1 1 is a perspective view of a system 100 including a rotating body 105 and an encoder or encoder system 110 according to various embodiments. The rotating body 105 includes, but is not limited to, a rotor disk, a shaft, etc. In some cases, the rotating body 105 can be coupled to an optional motor 115 (e.g., a motor, etc.). The motor 115 can be configured to rotate the rotating body 105.

[0041] In some embodiments, the encoder system 110 includes a housing 112, a processor or controller 120, an actuator 125, a first sensor 130, and a temperature sensor 155. In some cases, the sensor 130 and / or the temperature sensor 155 may be integrated or included within or on the housing 112 or the controller 120. In various examples, the encoder 110 further includes a memory (not shown), which may be a non-transitory memory. The memory may be implemented within the controller 120 and / or the housing 112 of the encoder 110. In various embodiments, the controller 120 may be implemented in a system on chip (SoC) arrangement. The controller 120 may include a microcontroller unit (MCU), an application specific integrated chip (ASIC), or other form of silicon-based embedded chip.

[0042] The encoder 110 may be a magnetic encoder, an optical encoder, etc. The term "magnetic encoder" refers to a type of rotary encoder that uses one or more sensors to identify changes in a magnetic field from a rotating device (e.g., a magnetized wheel or ring, etc.) and generates a signal indicating the angular position of the rotating device. The term "optical encoder" refers to a type of rotary encoder that uses one or more sensors to identify changes in light associated with a rotating device (e.g., a code wheel, a code disk, etc.) and generates a signal indicating the angular position of the rotating device. In some embodiments, the encoder 110 is an absolute encoder that includes a sensor that measures the absolute or true angular position of the encoder's rotating device and generates a unique position value or signal based on the absolute or true angular position of the rotating device.

[0043] In various examples, the actuator 125 is a rotating device of the encoder 110. In some cases, the actuator 125 is coupled to the rotating body 105. When the rotating body 105 rotates, the actuator 125 also rotates. Depending on whether the encoder is a magnetic encoder, an optical encoder, etc., the actuator 125 can be a different rotating device. For example, as indicated above and as Figure 2A As shown in FIG. 1 , the actuator 125a may be a magnetized wheel or ring, etc., for a magnetic encoder. Figure 2A In the case of , there are two magnetic wheels 135a and 135b including one or more magnets. The term "magnet" may refer to a material or object that produces a magnetic field (e.g., a force field that pulls or repels certain materials such as nickel or iron), and may include but is not limited to permanent magnets, temporary magnets, electromagnets, etc. Each magnet may have one or more pole pairs. A "pole pair" may refer to a pair of north and south poles associated with the direction of a magnetic field.

[0044] Alternatively, as indicated above and as Figure 2B As shown in FIG. 1 , the actuator 125 b may be a code wheel or code disk 140 for an optical encoder. For an optical encoder, the encoder may further include Figure 2B 1 and 12. The light source 145 (e.g., a light emitting diode, a laser, etc.) and one or more openings 150 are shown in FIG. The one or more openings 150 can be of different shapes, sizes, etc. In some cases, the one or more openings 150 can be one or more pieces of transparent material. The light source 145 can be configured to be directed toward the sensor 130 ( Figure 2B When the actuator 125b rotates, light from the light source 145 may be transmitted toward the first sensor 130 through one or more openings 150 in the actuator 125b.

[0045] The first sensor 130 is positioned and configured to detect the position of the actuator 125 and identify changes in the angular position of the actuator 125. Based on the position of the actuator 125, the first sensor 130 generates one or more signals indicative of the angular position of the actuator 125. In some embodiments, the actuator 125 rotates relative to the first sensor 130, which is stationary.

[0046] In the case of a magnetic encoder, the first sensor 130 detects the position of the actuator 125a by detecting the magnetic field associated with the actuator 125a as the actuator 125a rotates. The first sensor 130 may include a Hall effect sensor or other types of magnetoresistive or magnetosensitive sensors, such as anisotropic magnetoresistive (AMR) sensors, giant magnetoresistive (GMR) sensors, and tunnel magnetoresistive (TMR) sensors. Different magnetic fields may be formed at different locations along the actuator 125a. These different magnetic fields may vary based on the size of the pole pairs (e.g., width, length, etc.), the number of magnets used, etc.

[0047] In the case of an optical encoder, the first sensor 130 is configured to detect changes in light emitted from the light source 145 through the opening 150 when the actuator 125b rotates. The first sensor 130 may be a photosensor, a photodetector sensor, etc. Depending on the size (e.g., width, length, etc.) of the one or more openings 150, depending on the amount of light emitted through the one or more openings 150, etc., different light patterns may be formed at different locations along the actuator 125b.

[0048] In the case of a magnetic encoder in which the first sensor 130 detects the magnetic field of the actuator 125a or an optical encoder in which the first sensor 130 detects light emitted from a light source through the actuator 125b, the first sensor 130 generates a signal or one or more signals based on the detected magnetic field or the detected light. The difference in the magnetic field of the actuator 125a or the light emitted by the actuator 125b can be represented by different parts of the signal. The signal can include an electrical signal configured as a sinusoidal waveform. In other words, the generated signal can include at least a sine signal and a cosine signal.

[0049] The first sensor 130 may then send those signals to the controller 120. Based on the signals generated by the first sensor 130, the controller 120 may determine the angular position of the actuator 125. In a non-limiting example, to determine the first position of the actuator 125, the first sensor 130 may detect a first magnetic field or a first emitted light pattern, and generate a signal based on the detected first magnetic signal or the first emitted light pattern. The controller 120 may then receive the signal and determine the position associated with the actuator 125 based on the signal generated from the detection of the first magnetic field or the first pattern. Based on the position of the actuator 125, the controller 120 may further determine the position of the rotating body 105 of the motor.

[0050] The temperature sensor 155 of the encoder can detect the temperature of the environment (e.g., a factory, a store, a warehouse, outside, etc.) in which the encoder 110 operates. The temperature sensor 155 can be at least one of a thermocouple, a resistance temperature detector, a thermistor, or other temperature sensor capable of determining the temperature of the environment. In some cases, the temperature sensor is coupled to the actuator 125 of the encoder 110 or another part of the encoder 110.

[0051] Over time, the detection of the position of the actuator 125 or the generation of one or more signals of the sensor 130 may become inaccurate due to changes in ambient temperature, thermal expansion of the encoder 110 (e.g., the body or housing of the encoder), the actuator 125, the rotating body 105, the motor 115, or components of the motor 115, etc., defects in the encoder 110, the actuator 125, the rotating body 105, the motor 115, or components of the motor 115 (e.g., due to wear, thermal expansion, etc.), etc. To address this, Figure 3 represents a process or method for stabilizing or correcting the operation of the encoder and accounting for inaccuracies in the detection of the position or generation of the signal of the actuator 125. This method 300 is intended to run in the background while the encoder is operating and correct the actuator's signal as errors are detected in real time.

[0052] Go to Figure 3 , Figure 3 is a flow chart illustrating a process or method for correcting one or more errors in a signal of a sensor of an encoder according to various embodiments. This figure provides an example only and should not unduly limit the scope of the claims. In some embodiments, Figure 1 The encoder 110 shown in FIG. 1 is capable of performing Figure 3 The automatic correction or stabilization method 300 described in the embodiment of the present invention is not limited to using only Figure 1 The method 300 may be performed by an encoder of the type described herein and may be performed by other encoders or other types of encoders. In some cases, a processor or controller of an encoder (e.g., processor or controller 120) is configured to perform the method 300. In some cases, multiple controllers are configured to perform different blocks or steps of the method 300. Alternatively, a single controller is configured to perform blocks or steps of the process 300.

[0053] In some cases, method 300 occurs after the calibration process described in Application No. 18 / 466,801 (Attorney Docket No. 230053US01) for "Automatic Calibration of Encoders" or another calibration method.

[0054] Process 300 may begin at optional block 302 by detecting that an actuator of an encoder (e.g., actuator 125) is rotating and / or by detecting a signal from a sensor (e.g., sensor 130). To rotate the actuator, the actuator may be coupled to a rotating body (e.g., rotating body 105), which may be coupled to a motor (e.g., motor 115). The motor may be turned on, causing the rotating body and actuator to rotate. Sensor 130 may detect the position of the actuator as it rotates and generate a signal based on the detected position.

[0055] In some cases, the exciter of the encoder rotates at a speed that has not been predetermined by the encoder or the motor. To determine the rotational speed of the exciter after the exciter of the encoder begins to rotate, the controller may determine a first position of the exciter and a second position of the exciter, and determine the amount of time to rotate the exciter from the first position to the second position. In some cases, the controller may continuously detect the position of the exciter and / or the rotational speed of the exciter as the exciter rotates. In this way, the controller can account for variations in the rotational speed of the exciter.

[0056] Next, process 300 may detect or sample the position of the actuator based on a signal from a first sensor (e.g., sensor 130) of the encoder at optional block 304. The signal generated by the sensor may include an electrical signal configured as a sinusoidal waveform. In other words, the generated signal may include at least a sine signal and a cosine signal. The first sensor is configured to perform at least one of the following: detect a magnetic field from one or more magnetic rings (e.g., magnetic ring 135) of the encoder or detect light emitted from a light source (e.g., light source 145) through one or more openings (e.g., opening 150) of the actuator. The first sensor converts the detected magnetic field or light into a signal. Then, the controller of the encoder may receive the signal and determine the position of the actuator based on the signal received from the first sensor.

[0057] In some cases, the controller may continuously monitor and determine the position and rotational speed of the actuator while the encoder operates in one or more rotational cycles based on the detected position of the actuator. A rotational cycle is a rotation of the actuator from a first position to a second position. In some cases, the first position is the same as the second position. In cases where the first position is the same as the second position, the rotational cycle of the actuator represents a complete rotation of the actuator from the first position back to the first position. In other cases, the first position is different from the second position. In cases where the first position is different from the second position, the rotational cycle of the actuator may represent less than or more than a complete rotation of the actuator from the first position back to the first position. In various embodiments, the controller may continuously monitor and determine the rotational speed and position of the actuator within one or more segments (e.g., blocks, partitions, sections, etc.) of one or more rotational cycles.

[0058] In order to continuously monitor and determine the rotational speed and position of the actuator, a moving average algorithm may be used. A moving average algorithm or filter is a calculation that analyzes a data point (e.g., the position of the actuator indicated by the signal generated by the sensor) by creating a series of averages of different selections of the complete data set. Given a series of numbers and a fixed subset size, the first element of the moving average is obtained by taking the average of an initial fixed subset of the series of numbers. Next, the subset is modified by "shifting forward"; that is, the first number of the series is excluded and the next value is included in the subset. This moving average algorithm process may be applied to one or more rotational cycles of the actuator to filter out noise, such as sudden angular position deviations caused by changes in the rotational speed of the actuator within the first rotational cycle or other rotational cycles (e.g., jerks, accelerations, braking, etc. that affect the rotation or rotational speed of the actuator). In other words, a moving average algorithm may be applied to the signal generated by the first sensor to smooth the signal and account for sudden changes in the position of the actuator.

[0059] Figure 5 An example of applying a moving average algorithm to a signal received from a sensor is shown in Figures 500a and 500b of FIG. Figure 5 As shown in the graph 500a of FIG. 5 , due to variations in the rotational speed of the encoder, the position of the actuator may be irregular or deviate at different intervals (as shown by the solid line 502). For example, the irregularities or deviations may be caused by sudden motor irregular jerkiness or braking that may change the behavior of the signal generated by the angular rotation of the actuator. By performing a moving average, as shown by Figure 5 The dashed line 504 in shows that the effects caused by such irregularities can be counteracted or smoothed. Graph 500b shows an enlarged portion of the application of a moving average algorithm. Box 506 shows an area of ​​the graph where the position has been corrected based on a moving average algorithm to filter out sudden changes in the position of the actuator.

[0060] In order to more effectively apply the moving average algorithm to the signals generated by the sensor and / or monitor and determine the rotational speed and position of the actuator, the sampling frequency or detection frequency of the position of the actuator may be higher than the rotational speed of the actuator. For example, the ratio of the sampling frequency or detection frequency of the actuator to the rotational speed may be at least 2500 to 1. Alternatively, the sensor may detect or sample the position of the actuator at least 2500 times for each rotation cycle. In this way, the sensor may more effectively detect the position of the actuator.

[0061] Next, process 300 may continue at block 306 by detecting at least one of a first error in the offset of the signal from the sensor, a second error in the gain of the signal, or a third error in the phase of the signal. In some cases, this detection may occur over one rotation cycle or multiple rotation cycles. At least one of the first error, the second error, or the third error may occur when the signal does not match the target signal of the encoder.

[0062] Figure 4 Method 400 represents a method for determining at least one of a first error, a second error, or a third error when an actuator is rotated. Figure 6 and 7 This process is further described. Method 400 may begin at block 402 by comparing the offset of the signal to the offset of the target signal. In other words, the sine and cosine signals generated by the sensor are compared to the target offset of the target signal.

[0063] At optional block 404, the method may determine that the offset of the signal does not match the target offset of the target signal. In a non-limiting example, see Figure 7 In Figure 700a, the sine and cosine signals generated by the sensor deviate from "0", which is where the offset of the target signal should be. In other words, the target signal does not have any offset, so the sine and cosine signals need to be corrected back to the "0" offset. In order to determine the target offset of the target signal, peak or valley detection of the signal can be performed. This means that the highest (max) point and the lowest (min) point of the peak of the sine or cosine signal can be determined. Then, the following formula (max+min) / 2 can be used to determine the midpoint or "0" of the sine / cosine signal (which is the target offset). Discrete Fourier transforms can also be used to detect the offset of the sine / cosine signal. For example, each single point within the sine or cosine signal is a sample from the sensor (for example, as Figure 5 500b of FIG. 500b). Each sample interval is time controlled by the clock and sampling frequency of the sensor. By utilizing a full sample rotation of data plus time, the signal can be isolated to its fundamental harmonic. The 0th harmonic of the signal corresponds to the midpoint of the signal. A combination of peak and valley detection plus discrete Fourier transform can be used to determine the target midpoint of the signal and can be compared to the offset of the signal to correct the offset of the signal. Based on this determination, the method can continue to optional block 414 and determine that there is an error in the offset of the signal.

[0064] The method 400 may further include comparing the gain of the signal to a target gain of the target signal at block 406. In other words, the sine and cosine signals generated by the sensor are compared to the target gain of the target signal.

[0065] At optional block 408, the method may determine that the gain of the signal does not match the target gain of the target signal. In a non-limiting example, see Figure 7 700b, the sine and cosine signals have a difference between the peak values ​​of their signals. For example, the amplitude of the sine signal may be 0.8, and the amplitude of the cosine may be 0.9. The amplitude of the target signal may be 1.0, so both the sine and cosine of the signal need to be corrected to 1.0. In order to determine the target gain of the target signal, a peak or valley detection of the signal may be performed. This means that the highest (max) point and the lowest (min) point of the peak value of the sine or cosine signal may be determined. Then, the amplitude of the sine / cosine signal may be determined using the following formula (max-min). The gain of the sine / cosine signal may also be detected using a discrete Fourier transform. The amplitude of the first harmonic of the signal corresponds to the amplitude of the signal. The combination of the peak and valley determination plus the discrete Fourier transform may be used to determine the amplitude of the signal, and the amplitude may be compared to the target amplitude of the signal to correct the gain of the signal. Based on this determination, the method may continue to optional block 414 and determine that there is an error in the gain of the signal.

[0066] The method 400 may further include comparing the phase of the signal with a target phase of the target signal at block 410. In other words, the sine and cosine signals generated by the sensor are compared with the target phase of the target signal.

[0067] At optional block 412, the method may determine that the phase of the signal does not match the target phase of the target signal. In a non-limiting example, see Figure 7 In the graph 700c, the sine and cosine signals are more spaced apart than they would be expected. For example, the sine and cosine signals are spaced apart by more than 90 degrees from each other. The phase target signal will cause the sine and cosine signals to be spaced 90 degrees apart. This phase detection can be performed using a discrete Fourier transform, where the phase of the first harmonic of the signal corresponds to the phase of the signal. Based on this determination, the method can continue to optional block 414 and determine that there is an error in the phase of the signal.

[0068] In some cases, for a magnetic encoder, at least one of a first error in the offset of the signal, a second error in the gain of the signal, or a third error in the phase of the signal may be determined by combining peak or valley minimum and maximum detection of the signal with a discrete Fourier transform (DFT). Using this method, errors in harmonics of the magnetic encoder may be calculated.

[0069] Back to Figure 3Once at least one of the first error in the offset of the signal, the second error in the gain of the signal, or the third error in the phase of the signal has been detected in block 306, the method 300 may proceed to optional block 308 and determine whether at least one of the first error, the second error, or the third error occurs or repeats across two or more rotational cycles. By determining whether at least one of the first error, the second error, or the third error occurs or repeats across two or more rotational cycles, the following noises may be filtered out: (1) from one or more changes in the rotational speed of the actuator; (2) from a sensor detecting the position of the actuator, etc. The one or more changes in the rotational speed of the actuator may be caused by: sudden jerkiness of the motor, rotating body, or actuator, sudden braking of the motor, rotating body, or actuator, sudden acceleration of the motor, rotating body, or actuator, or other sudden irregularities in the operation of the motor, rotating body, or actuator, etc. In other words, if the motor suddenly fails during the first rotational cycle but not during the second rotational cycle, then at least one of the first error, the second error, or the third error may not be corrected because it only occurs within one rotational cycle. Alternatively, based on a determination that at least one of the first error, the second error, or the third error occurs within two or more rotational periods, the controller of the encoder may determine that at least one of the first error, the second error, or the third error is repeating and should be corrected.

[0070] Based on the determination that at least one of the first error, the second error, or the third error occurs (block 306), or that at least one of the first error, the second error, or the third error occurs across two or more rotation periods (optional block 308), the method 300 continues to block 310 and calculates at least one of a first value for an offset of the correction signal, a second value for a gain of the correction signal, or a third value for a phase of the correction signal to correct the signal to account for at least one of the first error, the second error, or the third error. This calculation of at least one of the first value for an offset of the correction signal, the second value for a gain of the correction signal, or the third value for a phase of the correction signal to correct the signal may occur in real time when the encoder is used. Additionally, at least one of the first value, the second value, or the third value may be calculated independent of and / or after calibration of the encoder.

[0071] Once calculated, the method 300 proceeds to block 312 and corrects the signal of the first sensor based on at least one of the first value, the second value, or the third value. Correcting the signal of the sensor may include generating (e.g., by a controller, etc.) a correction signal based on at least one of the first value, the second value, or the third value and a signal generated by the sensor.

[0072] In some cases, the signal of the first sensor may be corrected immediately. Alternatively, the signal of the first sensor may be corrected incrementally over a predetermined amount of time (e.g., 1 second, 5 seconds, 30 seconds, 1 minute, 5 minutes, etc.) or a predetermined number of rotations (e.g., 1 rotation, 2 rotations, 5 rotations, 10 rotations, etc.). When at least one of the first error, the second error, or the third error occurs within one rotation period and it has not yet been determined whether at least one of the first error, the second error, or the third error is due to noise or a repetitive error within multiple rotation periods, a gradual or incremental correction may be implemented. By gradually correcting the signal of the sensor, the position of the actuator does not change dramatically when the error is due to noise. If the error is due to noise and is not repeated, the signal can be easily corrected back to its state before the signal was corrected using at least one of the first value, the second value, or the third value. Alternatively, in other cases, when the encoder determines that the error is repeated within two or more or a predetermined number of rotation periods, then the signal can be immediately corrected to accurately detect the position of the actuator.

[0073] In some cases, to correct the signal based on at least one of the first value, the second value, or the third value, at least one of the first value, the second value, or the third value is added to or combined with a corresponding correction value determined during a calibration cycle of the encoder (e.g., the calibration process described in Application No. 18 / 466,801 for "Automatic Calibration of Encoders" (Attorney Docket No. 230053US01) and Application No. 18 / 466,817 for "Automatic Calibration of Encoders Based on Temperature" (Attorney Docket No. 230022US01) or another calibration method). At least one of the first value, the second value, or the third value may be incrementally combined or added to the correction value from the calibration cycle over a predetermined amount of time (e.g., 1 second, 5 seconds, 30 seconds, 1 minute, 5 minutes, etc.) or a predetermined number of rotations (e.g., 1 rotation, 2 rotations, 5 rotations, 10 rotations, etc.).

[0074] In some cases, at least one of the first value, the second value, or the third value may be added to a lookup table for the encoder. The lookup table may be used by the encoder to calculate the angular position of the actuator based on the detected signal from the first sensor. In some cases, at least one of the first value, the second value, or the third value may be associated with a temperature detected by a temperature sensor (e.g., temperature sensor 155, etc.), so that when the encoder detects the temperature or a temperature within a predetermined range, the encoder retrieves at least one of the first value, the second value, or the third value associated with the detected temperature to correct the signal.

[0075] By implementing the method 300 described above, the encoder can seamlessly account for misalignment and automatically correct itself to provide the accurate angular position of the actuator as the actuator is rotated during use.

[0076] Go to Figure 6 , Figure 6 4 is a simplified block diagram illustrating the components of an exemplary encoder according to an embodiment of the present disclosure. These figures provide examples only, which should not unduly limit the scope of the claims. Those of ordinary skill in the art will recognize many variations, alternatives, and modifications. For example, one or more steps may be added, removed, repeated, modified, replaced, overlapped, and / or rearranged, and should not limit the scope of the claims. As an example, depending on the implementation, one or more hardware components may be used to implement various functional blocks. For example, processor 430 may include both analog components (e.g., analog front end or AFE) and digital signal processing components.

[0077] like Figure 6 , the encoder 600 includes one or more sensors 602. The one or more sensors 602 may be connected to Figure 1 The one or more sensors 602 are configured to detect the actuator ( Figure 6 ) is not shown.

[0078] In some embodiments, the one or more first sensors 602 generate corresponding signals associated with the position of the actuator. In an example, the corresponding signals may include a set of analog signals (eg, differential sine / cosine signals) associated with the angular position of the actuator.

[0079] To determine the angular position of the actuator, the signal may be transmitted to a processor 604 (e.g., a microcontroller, a microprocessor, etc.) for further signal processing and calculations. For example, the processor 604 includes one or more amplifiers 606 configured to amplify the signal and provide the amplified signal. The term "amplifier" may refer to an electronic component that can increase the amplitude of a signal (e.g., a time-varying voltage or current), and may include, but is not limited to, a transistor amplifier, an operational amplifier, a differential amplifier, a differential differential amplifier, etc.

[0080] The processor 604 includes an analog-to-digital converter (ADC) 608 configured to convert the first signal and the second signal into digital signals. The term "analog-to-digital converter" may refer to an electronic device that converts an analog signal into a digital signal. The ADC 608 may include, but is not limited to, a flash ADC, a dual slope ADC, a successive approximation ADC, etc. In some embodiments, the ADC 608 is configured to convert the amplified signal into a digital signal.

[0081] In some cases, the processor 604 may further include an optional calibration module 610 capable of performing a calibration process to calibrate the encoder. The calibration module may be capable of performing the calibration process described in Application No. 18 / 466,801 (Attorney Docket No. 230053US01) for "Automatic Calibration of Encoders" and Application No. 18 / 466,817 (Attorney Docket No. 230022US01) for "Automatic Calibration of Encoders Based on Temperature" or another calibration method.

[0082] After calibration and during use of the encoder, the real-time dynamic correction module 612 of the processor 604 can be implemented to correct the signals from the sensor 602 in real time while the encoder is operating. This process can be similar to the one described above. Figure 3 The process described is similar. In some cases, the real-time dynamic correction module 612 of the processor 604 can be used to correct the offset, gain and phase of the signal in real time.

[0083] The offset voltage is the voltage that appears at the output of the amplifier when the input is zero. To correct the signal (X0), the signal from sensor 602 is analyzed using peak-to-valley detection to calculate its V mid . V mid At the offset detection and analysis module 614, (X 0,max +X 0,min ) / 2 is determined. V mid It can also be determined using a discrete Fourier transform, where the amplitude of the 0th harmonic of the signal corresponds to V mid In some cases, V mid Can be V determined by peak / valley determination and discrete Fourier transform mid The offset detection and analysis module 614 then determines the detected V mid With target V mid The difference between (e.g., at the target time or target position, V mid What should be) to calculate the offset correction value or the first stable value (Y a0 ) to correct the offset of the signal. Next, an optional correction value (Ya) may be calculated by the offset stabilization module 606 by dividing the first stable value into one or more increments to gradually correct the offset of the signal over a predetermined amount of time or a predetermined number of rotations. Alternatively, the first stable value (Ya0) may be added directly to the signal to correct the offset of the signal. Next, the dynamic offset correction module 618 applies the correction value (Ya or Ya0) to the signal to correct the V midor offset. Correction of the offset may occur after the signal has been corrected for at least one of gain or phase or before the signal has been corrected for at least one of gain and phase. Alternatively, correction of the offset may occur in parallel with correction of gain and / or phase. This process for identifying and correcting offset mismatch 702 is described in Figure 7 This is shown in Figures 700a and 700b.

[0084] The gain of a signal is the degree to which an amplifier increases the strength of a signal. To correct for the gain or peak-to-peak voltage Vpp, the gain detection and analysis module 620 may analyze the signal using peak-to-valley detection by (Xa,max-Xa,min) to determine the signal Vpp. Alternatively, in some cases, a discrete Fourier transform may be used to determine Vpp, where the amplitude of the first harmonic of the signal corresponds to the Vpp of the signal. In some cases, both a peak / valley detection method and a discrete Fourier transform may be used to determine the Vpp of the signal. The gain detection and analysis module 620 then determines the difference between the detected Vpp and the target Vpp (e.g., what the Vpp should be at a target time or target location, such as at Figure 7 1.0 in Chart 700C of FIG. 700C) to calculate a gain correction value or a second stable value (Yb0) to correct the gain of the signal. Then, an optional correction value (Yb) may be calculated by the gain stabilization module 622 by dividing the first stable value into one or more increments to gradually correct the gain of the signal over a predetermined amount of time or a predetermined number of rotations. Alternatively, the second stable value (Yb0) may be added directly to the signal to correct the gain of the signal. Then, the dynamic gain correction module 624 applies the correction value (Yb0 or Yb) to the gain of the signal to correct the gain or Vpp of the signal. Correction of the gain may occur after the signal has been corrected for at least one of offset and phase or before the signal has been corrected for at least one of offset and phase. Alternatively, correction of the gain may occur in parallel with correction of offset and / or phase. This process for identifying and correcting gain 704 is described in detail in detail. Figure 7 In addition, in graph 700b, the offset mismatch 702 has been corrected.

[0085] Phase is the position of a wave at a point in time (an instant) on a waveform cycle. To correct the phase, the phase detection and analysis module 626 may analyze the signal to determine the phase (e.g., such detection may be accomplished by a discrete Fourier transform, where the first harmonic phase of the signal corresponds to the phase of the signal, etc.). The gain detection and analysis module 626 then determines the difference between the detected phase and the target phase (e.g., what the phase should be at the target time or target position) to calculate a phase correction value or a second stable value (Yc0) to correct the phase of the signal. In some cases, the phase of the signal may be corrected using this formula shift (Xb, Yc) = Xb.cos(Yc) + shift (Xb, -90o).sin(Yc). Then, an optional correction value (Yc) may be calculated by the phase stabilization module 628 by dividing the third stable value into one or more increments to gradually correct the gain of the signal over a predetermined amount of time or a predetermined number of rotations. Alternatively, the third stable value (Yc0) may be added directly to the signal to correct the phase of the signal. Next, the dynamic phase correction module 630 applies the correction value (Yc0 or Yc) to the phase of the signal to correct the phase of the signal. Correction of the phase may occur after the signal has been corrected for at least one of offset and gain or before the signal has been corrected for at least one of offset and gain. This process for identifying and correcting the phase 706 is described in Figure 7 Alternatively, the correction of phase may occur in parallel with the correction of offset and / or gain. In addition, in graph 700c, the offset mismatch 702 and the gain mismatch 704 have been corrected.

[0086] Figure 7 Graph 700d of φ shows the corrected signal when the signal has been corrected for offset mismatch 702 , gain mismatch 704 , and phase mismatch 706 .

[0087] Once the offset, gain, and phase of the signal have been corrected using the first stable value, the second stable value, and the third stable value, the processor 604 may determine the angular position of the encoder using the calculate angular position module 632. The processor 604 may further save the stable values ​​in a lookup table 634 for the encoder and use the lookup table to calculate the angular position of the actuator using the calculate angular position module 636 while the encoder is in use or the next time the encoder is in operation.

[0088] Figure 8 Shows the application when the encoder is in use Figure 3 method or Figure 6 The effect of the processor. Figure 8 As shown in FIG. 8 , without updating the encoder position 802 over time, the error in the encoder position is significantly higher than using Figure 3 methods and about Figure 6 The case where the position 804 of the actuator is updated over time is further described.

[0089] As described herein, the techniques and processes described above with respect to various embodiments may be used to continuously update and correct the position of the actuator 125 and / or components thereof of the encoder 110 in real time.

[0090] Although some features and aspects have been described with respect to embodiments, those skilled in the art will recognize that many modifications are possible. For example, the methods and processes described herein may be implemented using hardware components, custom integrated circuits (ICs), programmable logic, and / or any combination thereof. In addition, although the various methods and processes described herein may be described with respect to specific structural and / or functional components for ease of description, the methods provided by the various embodiments are not limited to any specific structural and / or functional architecture, but may instead be implemented with any suitable hardware configuration. Similarly, although some functionality is attributed to one or more system components, unless the context indicates otherwise, according to several embodiments, this functionality may be distributed throughout various other system components.

[0091] Again, generally refer to Figure 1 , 3 and 4. For the purposes of this disclosure, the terms "controller," "processor," or "processing element" may be broadly defined to encompass any device having one or more processing or logic elements (e.g., one or more microprocessor devices, one or more application specific integrated circuit (ASIC) devices, one or more field programmable gate arrays (FPGAs), or one or more digital signal processors (DSPs)). In this sense, one or more processors may include any device configured to execute algorithms and / or instructions (e.g., program instructions stored in a memory). In addition, the memory may include any storage medium known in the art that is suitable for storing program instructions that can be executed by an associated processor. For example, the memory medium may include a non-transitory memory medium. By way of another example, the memory medium may include, but is not limited to, a read-only memory (ROM), a random access memory (RAM), a magnetic or optical memory device (e.g., a disk), a solid-state drive, and the like. It should be further noted that the memory medium may be housed in a common controller housing with the processor. In an embodiment, the memory medium may be remotely located relative to the physical location of the processor.

[0092] In the present disclosure, the disclosed methods, operations and / or functionality may be implemented as one or more steps of switching hardware systems and / or as instructions or software sets that can be read by a device. In addition, it should be understood that the specific order or hierarchy of steps in the disclosed methods, operations and / or functionality is an example of an exemplary method. Based on design preferences, it should be understood that the specific order or hierarchy of steps in the methods, operations and / or functionality can be rearranged while remaining within the scope of the inventive concepts disclosed herein. The accompanying claims may present elements of the various steps in a sample order and are not necessarily meant to be limited to the specific order or hierarchy presented.

Claims

1. An encoder, comprising: Exciter; a sensor configured to detect a position associated with the actuator and to generate a signal based on the position; and A controller configured to: receiving the signal from the sensor; detecting at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, and a third error in a phase of the signal as the actuator rotates; calculating at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, and a third value for correcting the phase of the signal based on the detection of at least one of the first error, the second error, or the third error; and The signal is corrected based on at least one of the first value, the second value, or the third value.

2. An encoder according to claim 1, wherein the detection of at least one of the first error, the second error or the third error in the rotation of the exciter, the calculation of at least one of the first value, the second value or the third value for correcting the signal, and the correction of the signal occur when the exciter rotates.

3. The encoder of claim 2, wherein correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined amount of time.

4. The encoder of claim 2, wherein correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined number of rotations of the actuator.

5. An encoder according to claim 2, wherein correcting the signal based on at least one of the first value, the second value, or the third value includes dividing at least one of the first value, the second value, or the third value and correcting the signal within a predetermined number of rotations based on the division of at least one of the first value, the second value, or the third value.

6. An encoder according to claim 1, wherein the detection of at least one of the first error, the second error, or the third error and the calculation of at least one of the first value, the second value, or the third value for correcting the signal occur after calibration of the encoder.

7. The encoder of claim 6, wherein at least one of the first value, the second value, or the third value is combined with a corresponding value determined by calibration of the encoder.

8. The encoder of claim 1 , wherein the detection of at least one of the first error, the second error, or the third error comprises detecting the first error, the second error, and the third error, and wherein the correction of the signal comprises first correcting the first error, then correcting the second error, and then correcting the third error.

9. The encoder of claim 8, wherein correcting the first error first, then correcting the second error, then correcting the third error occurs within a predetermined amount of time.

10. The encoder of claim 8, wherein correcting the first error first, then correcting the second error, then correcting the third error occurs within a predetermined number of rotations.

11. The encoder of claim 1 , wherein detecting at least one of the first error, the second error, or the third error comprises: determining, based on the signal received from the sensor, that the signal does not match a target signal of the sensor; and Based on a determination that the signal does not match the target signal, at least one of the first error, the second error, or the third error is detected while the actuator is rotating.

12. The encoder of claim 1, wherein the controller is further configured to: determining that at least one of the first error, the second error, or the third error occurs within a predetermined number of rotation periods; and Based on the determination that at least one of the first error, the second error, or the third error occurs within the predetermined number of rotation cycles, at least one of the first value, the second value, or the third value is calculated to correct the signal to account for the at least one of the first error, the second error, or the third error and the signal is corrected based on the at least one of the first value, the second value, or the third value.

13. The encoder of claim 1, wherein at least one of the first error, the second error, or the third error is detected by combining peak and valley detection of the signal with a discrete Fourier transform (DFT).

14. A method for correcting errors in a signal of an encoder, the method comprising: detecting the signal from a sensor of the encoder that detects a position of an actuator of the encoder; detecting at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, or a third error in a phase of the signal as the actuator rotates; calculating, based on the detection of at least one of the first error, the second error, or the third error, at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal; and The signal is corrected based on at least one of the first value, the second value, or the third value.

15. The method of claim 14, wherein the detection of at least one of the first error, the second error, or the third error in the rotation of the actuator, the calculation of at least one of the first value, the second value, or the third value for correcting the signal, and the correction of the signal occur while the actuator is rotating.

16. The method of claim 14, wherein correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined amount of time.

17. The method of claim 14, wherein correcting the signal based on at least one of the first value, the second value, or the third value occurs within a predetermined number of rotations of the actuator.

18. The method of claim 14, wherein the detection of at least one of the first error, the second error, or the third error and the calculation of at least one of the first value, the second value, or the third value for correcting the signal occur after calibration of the encoder.

19. The method of claim 14, wherein the detection of at least one of the first error, the second error, or the third error comprises detecting the first error, the second error, and the third error, and wherein the correction of the signal comprises first correcting the first error, then correcting the second error, and then correcting the third error.

20. An encoder comprising: Exciter; a sensor configured to detect a position associated with the actuator and to generate a signal based on the position; and A processor configured to: detecting at least one of a first error in an offset of the signal from the sensor, a second error in a gain of the signal, and a third error in a phase of the signal as the actuator rotates; determining that at least one of the first error, the second error, or the third error occurs across two or more rotational periods; calculating at least one of a first value for correcting the offset of the signal, a second value for correcting the gain of the signal, or a third value for correcting the phase of the signal based on a determination that at least one of the first error, the second error, or the third error occurs across two or more rotation periods; and The signal is corrected based on at least one of the first value, the second value, or the third value.

Citation Information

Patent Citations

  • Automatic calibration of encoders

    US20250085141A1

  • Automatic calibration of encoders based on temperature

    US20250085142A1

  • Encoder self-calibration apparatus and method

    CN1613187A

  • Amplitude correction method for sine wave signal in encoder

    JP1997275340A

  • Signal processing apparatus and signal processing method

    US20130335138A1

Cited By

  • Secondary calibration method and system of encoder

    CN121346875A

  • Real-time compensation device for angular displacement sensor of satellite-borne oscillating mirror scanner

    CN122041766A