EP3627113A1 - Calibration and linearization of position sensor - Google Patents
Calibration and linearization of position sensor Download PDFInfo
- Publication number
- EP3627113A1 EP3627113A1 EP19198753.6A EP19198753A EP3627113A1 EP 3627113 A1 EP3627113 A1 EP 3627113A1 EP 19198753 A EP19198753 A EP 19198753A EP 3627113 A1 EP3627113 A1 EP 3627113A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- linearization
- position sensor
- calibration
- spatial angle
- parameters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 58
- 238000012937 correction Methods 0.000 claims description 30
- 238000005259 measurement Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 description 32
- 230000005672 electromagnetic field Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 9
- 238000004519 manufacturing process Methods 0.000 description 9
- 238000013459 approach Methods 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 8
- 230000001939 inductive effect Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 230000003247 decreasing effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 101100333305 Arabidopsis thaliana EMF2 gene Proteins 0.000 description 1
- 101100134927 Gallus gallus COR8 gene Proteins 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 230000001808 coupling effect Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011326 mechanical measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 239000012086 standard solution Substances 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/12—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
- G01D5/14—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage
- G01D5/20—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying inductance, e.g. by a movable armature
- G01D5/204—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying inductance, e.g. by a movable armature by influencing the mutual induction between two or more coils
- G01D5/2053—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying inductance, e.g. by a movable armature by influencing the mutual induction between two or more coils by a movable non-ferromagnetic conductive element
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B7/00—Measuring arrangements characterised by the use of electric or magnetic techniques
- G01B7/30—Measuring arrangements characterised by the use of electric or magnetic techniques for measuring angles or tapers; for testing the alignment of axes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B7/00—Measuring arrangements characterised by the use of electric or magnetic techniques
- G01B7/003—Measuring arrangements characterised by the use of electric or magnetic techniques for measuring position, not involving coordinate determination
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
- G01D18/008—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00 with calibration coefficients stored in memory
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/12—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
- G01D5/14—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage
- G01D5/20—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying inductance, e.g. by a movable armature
- G01D5/2006—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying inductance, e.g. by a movable armature by influencing the self-induction of one or more coils
Definitions
- Embodiments of the present invention are related to position sensors and, in particular, to improvements on calibration and linearization of position sensors.
- Position sensors are used in various settings for measuring the position of one component with respect to another.
- Inductive position sensors can be used in automotive, industrial and consumer applications for absolute rotary and linear motion sensing.
- a transmit coil is used to induce eddy currents in a metallic target that is sliding or rotating above a set of receiver coils.
- Receiver coils receive the magnetic field generated from eddy currents and the transmit coils and provide signals to a processor.
- the processor uses the signals from the receiver coils to determine the position of the metallic target above the set of coils.
- the processor, transmitter, and receiver coils may all be positioned on a printed circuit board (PCB).
- PCB printed circuit board
- the electromagnetic field generated by the transmitter, and the resulting fields generated in the metallic target may be non-uniform
- the connections of wire traces to the transmit coils and the arrangement of receive coils may result in further non-uniformity.
- the air-gap (AG) between the metallic target and the coils mounted on the PCB may be non-uniform.
- the amplitudes of signals generated by receiver coils may have an offset. There may be mismatches between the multiple receiver coils. There may be different coupling effects between the metallic target and each of the multiple receiver coils. These and other factors may result in inaccurate results of the position locating system.
- a position sensor calibration and linearization system for position sensors includes reading Spatial Angle data from a position sensor at a set of positions of a target swept over receive coils in the position sensor; calculating calibration parameters from the Spatial Angle data; determining an initial position values from the Spatial Angle data and the calibration parameters; determining linearization parameters from the initial position values; and writing the calibration parameters and the linearization parameters into the position sensor.
- a calibration and linearization system includes a processor; and a position motor coupled to the processor, the position sensor configured to move a target mounted to the position motors over a range of a position sensor positioned relative to the target.
- the processor executes instructions to read Spatial Angle data from the position sensor at a set of positions of a target swept over receive coils in the position sensor; calculate calibration parameters from the Spatial Angle data; determining initial position values from the Spatial Angle data and the calibration parameters; determine linearization parameters from the initial position values; and write the calibration parameters and the linearization parameters into the position sensor.
- determining the position value includes measuring the position value.
- the position value includes calculating the position value from the spatial angle data and the calibration parameters.
- Figure 1A illustrates a positioning system 100. Although Figures 1A and 1B illustrate operation of a linear position sensor, rotational position sensors are operationally the same.
- the positioning system includes transmit/receive control circuit 102 that is coupled to drive a transmitter coil 106 and receive signals from receive coils 104.
- receive coils 104 are located within transmitter coil 106, however in Figure 1A they are illustrated separately for clarification purposes.
- Receive coils 104 are generally physically located within the border of transmit coil 106.
- Embodiments of the present invention can include a transmitter coil 106, two receiver coils 104, and an integrated circuit (IC) 102 driving the transmitter coil 106 and measuring the signals originated in the receiver coils 104 all formed on a printed circuit board (PCB).
- IC integrated circuit
- Figure 1B illustrates a configuration of transmit coils 106 and receive coils 104 in a linear position locating system. As is shown in Figure 1B , a conductive metallic target 124 can be positioned over the transmitter coil and the two receiver coils.
- transmit coil 106 is driven to form magnetic field 108.
- Transmit coil 106 can be driven at a range of frequencies or at particular frequencies.
- magnetic field 108 with the positive current illustrated by the arrows, is circular around each wire and in a direction that points out of the page inside coil 106 and into the page outside of coil 108 with the current direction as illustrated in Figure 1A .
- Receive coils 104 are located inside coil 106, as is illustrated in Figure 1B .
- Transmit coil 106 is driven at any frequency that can produce electromagnetic field 108 to induce voltages in receiver coils 104. In general, there can be any number of receiver coils, however, for ease of discussion, a system with two receiver coils is discussed below.
- FIG. 1B illustrates the arrangement of sensor receive coils (RX) 104 within transmit coil (TX) 106 for a linear position sensor.
- sensor receive coils 104 includes a sine-wave oriented coil RXSIN 112 and a cosine-oriented signal coil RXCOS 110.
- Sine-wave oriented coil RXSIN 112 includes sine loops 114, 116, and 118 where coil 112 is wound in in-phase or anti-phase directions, here depicted as clockwise or counter clockwise depictions, to result in the production of voltages in the loop of opposite sign as a result of the presence of electro-magnetic field 108.
- cosine-oriented coil 110 may include a first loop 120 with a clockwise orientation and a second loop 122 with a counterclockwise orientation.
- Figure 1B illustrates a possible electromotive force reference direction, as indicated by the arrows, that is consistent with the magnetic fields produced by transmitter coil 106 as illustrated in Figure 1A .
- the transmitter coil (TX) 106 is stimulated by the circuit 102, which may be an integrated circuit, to generate a variable Electromagnetic field (EMF), illustrated as magnetic field 108.
- the magnetic field 108 couples with the receiver coils (RX) 104. If a conductive metallic target 124 is placed on the top of the receiver coils 104 as illustrated in Figure 1B , an eddy current is generated in the metallic target 124. This eddy current generates a new electromagnetic field that is ideally equal and opposite of field 108, canceling the field in receiver coils 104 directly under metallic target 124.
- the receiver coils (RX) 104 capture the variable EMF field 108 generated by the transmit coils 106 and those induced by metallic target 124, resulting in sinusoidal voltages generated at the terminals of receiver coils 104.
- the RX coils 104 are designed in a way that a sine voltage is created at the terminals of one RX coil (RxSin 112) and a cosine voltage is created at the terminals of the other RX coil (RxCos 110) as metallic target 124 is swept across receiver coils 104.
- the position of the target with respect to the RX coils 104 modulates the amplitude and the phase of the voltage at the terminals of the RX coils 104.
- transmitter coil 106, receive coils 104, and transmit/receive circuit 102 can be mounted on a single PCB. Further, the PCB can be positioned such that metallic target 124 is positioned above receive coils 104 and spaced from receive coils 104 by an air gap (AG). The position of metallic target 124 relative to the PCB on which receive coils 104 and transmitter coil 106 is mounted can be determined by processing the signals generated by sine-oriented coil 112 and cosine-oriented coil 110. Below, the determination of the position of metallic target 124 with respect to receive coils 104 is described in a theoretical ideal condition.
- metallic target 124 is located at a first location.
- Figures 1B depicts operation of a linear position locator system. The principle of operation is the same in both linear and circular locators.
- the position is given in relation to the construction of cosine-oriented coil 110 and sine-oriented coil 112 by providing the angular relations with respect to the sine operation of sine-oriented coil 112 which results from the position of the leading edge of metallic target 124 and coils 110 and 112.
- the actual position of metallic target 124 in such a system can be derived from the angular position as measured by the output voltages of receive coils 104 and the topology of receive coils 110 and 112.
- the topology of coil 110 and the topology of coil 112 are coordinated to provide indication of the location of metallic target 124 relative to the receive coils 104.
- FIGs 2A through 2I illustrate operation of the position sensor illustrated in Figures 1A and 1B with target 124 positioned at 0°, 90°, and 180°, respectively (the angular positions corresponding to linear positions of target 124 relative to the receive coils 110 and 112).
- the transmitter coil (TX) 106 is stimulated be the IC 102 to generate a variable Electromagnetic field (EMF1). Such magnetic field couples with the receiver coils 110 and 112.
- the receiver coils (RX) 110 and 112 capture the variable EMF and a sinusoidal voltage is generated at the terminals of the receiver coils 110 and 112.
- the RX coils 110 and 112 are designed in a way that a sine voltage as a function of position of target 124 is created at the terminals of one RX coil 112 and a cosine voltage as a function of position of target 124 is created at the terminals of the other RX coil 110.
- the position of the target 124 with respect to the RX coils 110 and 112 modulates the amplitude and the phase of the voltage at the terminals of the RX coils 110 and 112. This is illustrated in Figures 2A through 2I .
- Figures 2A through 2I illustrate sweeping the target from a defined initial position to a define end position by illustrating operation of the receive coils for positions of target 124 corresponding to 0°, 90°, and 180°.
- the output of the receive coils 110 and 112 will be a sinusoidal voltage (Vsin) from receive coil 112 and cosinusoidal voltage (Vcos) on receive coil 110 depending on the position of target 124.
- the position of the target can the be calculated from the arc tan (Vsin / Vcosin).
- the shape of transmitter coil 106 has no importance as long as it covers the area where the receiver coils 104 are placed; (2) The shape of the receiver coils 104 is arranged to a geometrical sine and cosine that is overlapped; and (3) The shape of target 124 has no influence on the working principle as long as the area of target 124 covers a part of the total area of receiver coils 104.
- FIGs 2A, 2B, and 2C illustrates operation where target 124 is positioned in the 0° position.
- Figure 2A illustrates operation of cosine receive coil 110.
- cosine receive coil 110 includes an a loop and a b loop.
- the units of voltage are relative and scalable to an actual voltage that is received from receive coils 104 (the combination of receive coils 110 and 112).
- FIG. 2B illustrates the corresponding situation with the sine coil 112, which as is illustrates includes loops c, d, and e.
- Loop d is complete in the center of coil 112 while loop c is to the left of loop d and while loop e is to the right of loop c.
- Figure 2C illustrates the sin voltage V sin from receive coil 112 and cosine voltage V cos from receive coil 110 as a function of target position (given in angular terms).
- Figure 2C shows the voltages V sin and V cos resulting from the arrangement illustrated in Figures 2A and 2B .
- Figures 2D, 2E, and 2F illustrate operation of receive coils 110 and 112 with target 124 positioned at the 90° position.
- loop a and loop b of receive coil 110 are each 1 ⁇ 2 covered.
- FIGS 2G, 2H, and 2I illustrate operation of receive coils 110 and 112 with target 124 positioned at the 180° position.
- loop a receive coil 110 is uncovered by loop b is covered by target 124.
- Figures 3A and 3B illustrates a system 300 for measurement and calibration of a position sensor.
- Figure 3C illustrates an interaction between system 300 and a position sensor 310 that is being tested. Due to non-idealities of the magnetic coupling principle, a calibration procedure is needed to correct the measured position of the target by the actual position of the target.
- FIG. 3B illustrates a block diagram of system 300 as indicated in Figure 3A .
- a processor 302 is coupled to position motors 304.
- Position motors 304 are coupled through a connector 306 to a mount 308 on which a target such as target 124 is mounted.
- Mount 308 is positioned above a position sensor 310.
- Position sensor 310 is in communication with processor 302 in order to provide positional data of the target on mount 308 with respect to the coils on position sensor 310.
- position sensor 310 includes a control circuit 312 that is coupled to coils 314.
- Control circuit 312 is often an IC that is mounted on the same PCB as is coils 314.
- Coils 314 include the transmit and receive coils as discussed above.
- Processor 302 can include a processing unit such as a microprocessor, microcontroller, or other device along with sufficient memory (both volatile and non-volatile) and supporting circuitry (analog-to-digital converters, digital-to-analog converters, support circuitry, etc.) to perform the functions described herein.
- a processing unit such as a microprocessor, microcontroller, or other device along with sufficient memory (both volatile and non-volatile) and supporting circuitry (analog-to-digital converters, digital-to-analog converters, support circuitry, etc.) to perform the functions described herein.
- Position motors 304 can include a desk with four step motors to have a 4-axis movement control of the target on mount 308. These dimensions include linear x, y, z direction as well as the rotational parameter around an axis through support 306. These motions are illustrated in Figure 3B , with the X direction being orthogonal to the X and Z direction shown and the angular rotation ⁇ shown. Consequently, the target mounted on mount 308 can be swept over the top of the receiver coils on coils 314 in position sensor 310 in all possible directions while the precise location of the target is known in processor 302. Further, processor 302 receives the output from control circuit 312 in position sensor 310, which provides the measured position on the position sensor 310 to compare with the precise location data as determined by processor 302.
- the rotational position ⁇ and the air gap z (the distance between the target on mount 308 and the PCB where coils 314 are placed) can be fully monitored.
- the x-y location of the target along with the air gap z can be monitored.
- control circuit 312 includes processors and support circuitry to interact with coils 314 and provide measured positional data to an external system, as shown in Figure 3C processor 302.
- the accuracy of position sensor 314 is defined as the difference between the measurement of the position of the target on mount 308 during a sweep of the target on mount 308 from an initial position to an end position and an expected ideal curve, this result is expressed in percentage of the full-scale measurement.
- FIG 4A further illustrates processor 302 of system 300.
- Processor 302 can, for example, be a computer and includes a microprocessor, microcomputer, or other computing processor 402 that is coupled to a memory 404.
- Memory 404 includes sufficient volatile and non-volatile memory to store data and instructions that are executable on processor 402 to perform the operations discussed in this disclosure.
- Processor 402 is further coupled to a position motor interface 406 that can be coupled to control position motors 304 as illustrated in Figure 3B .
- Processor 402 is also coupled to a position sensor interface 408 that can be coupled to control circuit 312 of position sensor 310 as illustrated in Figure 3B .
- Processor 402 can further be coupled to a user interface 410, which can include keyboards, displays, touchscreens, audio outputs, and other devices to interface with a user of system 300.
- FIG. 4B further illustrates control circuit 312 of position sensor 310.
- control circuit 312 can be formed on a single integrated circuit that is mounted on the same PCB on which coils 314 are formed.
- control circuit 312 includes a microprocessor 420.
- Microprocessor 420 is coupled to a memory 422 and is capable of executing instructions stored in memory 422 for performing the functions discussed in this disclosure.
- Memory 422 includes sufficient volatile and non-volatile memory for storing executable instructions and data for microprocessor 420 to perform these instructions.
- Microprocessor 420 is further coupled to a TX drive circuit 424 that drives current through TX coils. Further, microprocessor 420 is coupled to receive data from RXSin circuit 426 and RXCos circuit 428.
- Circuits 426 and 428 include analog processing as well as analog-to-digital converters to supply digital data corresponding to the RXSIN signal from the sine-oriented coils and the RXCOS signal from the cosine-oriented coils on coils 314.
- microprocessor 420 is coupled to registers 430, which is further discussed below.
- An interface 432 is coupled to microprocessor 420 and to registers 430. Interface 432 interfaces with an external processor such as processor 302 of system 300 illustrated in Figure 4A .
- Registers 430 includes both read/write registers as well as read-only registers that provide data through interface 432 between the external processor and microprocessor 420.
- register 430 may be EEPROM on an IC that includes control circuit 312.
- Registers 430 include a POSO register that stores the output angle determined by microprocessor 420 after output calibration and a POS1 register that stores the output angle determined by microprocessor 420 after output calibration and linearization.
- the spatial angle register holds the output angle determined by microprocessor 420 before any calibration or linearization is performed.
- Microprocessor 420 determines the spatial angle from the raw digital sin data XSIN and cosine data YCOS from the receive coils. XIN and YCOS may also be stored in registers 430.
- Registers 430 may include any number of registers, including any number of calibration registers or linearization registers.
- Figure 5A illustrates the measured positional value in digitized units versus the actual position in degrees.
- PosO represents the measured value as supplied by control circuit 312 and measured from a register 430 in control circuit 312 versus the known position as measured by processor 302 in system 300.
- the Ideal Curve value is the ideal curve using the known position of the target as determined by system 300, which in Figure 4 is represented by a straight line.
- PosO is the value measured from a register of control circuit 314.
- Figure 5B illustrates the present error in the curve, FNL, as illustrated in Figure 5A .
- calibration and linearization of position sensors is an important aspect of producing such sensors.
- This disclosure addresses several aspects of the calibration and linearization methods used in both linear and circular positions sensors, including: (1) Accuracy estimations methods of the positions sensor circuits including inductive coil sensors; (2) Magnitude estimation methods of the position sensor circuit including inductive coil sensors; (3) One-step calibration for the process of linearization and calibration of position sensors; (4) A linearization algorithm for position sensors; and (5) Smart inductor solutions, the future of inductive sensor technology, for position sensors.
- Some embodiments provide an accuracy estimation of a sensor design without actual sensor measurements. These accuracy estimates can be performed for every geometry, for different airgaps, for each worse-case target mechanical (x, y, z, tilt) tolerances at a customer module level, for each temperature condition, and for any dynamic (application lifetime) target mechanical (x, y, z, tilt) tolerances at customer module level.
- Advantages of such embodiments include that the accuracy can be estimated in the first phase of feasibility analysis. Further, an understanding in real-time of whether or not it is possible to meet customer expectations or application specifications without trial and error. Further, the time to market, design in cycle, PCB manufacturing cost, engineering time for PCB layout, and verification time on the test bench can all be reduced.
- An accuracy estimation can be performed by calculating the error from the position sensor control circuit 312, which can be an integrated circuit, for different temperatures.
- Control circuit 312 circuit may include an analog front end, analog-to-digital converters, digital signal processors, digital-to-analog converters, and other circuits.
- the error introduced by the measurement setup can be calculated.
- An error generated by the coils can be provided from a coil simulation tool.
- a probability approach can be taken for combining the various points of error that have been calculated.
- an additional correction factor to the final error number can be provided from a collection of historical data in an internal database and used in error correction.
- Err_theoretical Err_Coil + Measurement_Step + circuit_error + / ⁇ Delta_database
- the error data can be included in control circuit 312 or can be calculated, for example, in processor 302 and the results loaded into control circuit 312 to be used when processing data.
- a magnitude estimation can be made in the first phase of feasibility of the sensor. Magnitude can be estimated for different geometry, different airgaps, different target geometry, and different number of Tx coil turns. Such a calculation can be used in the feasibility phase of developing a sensor.
- Magnitude estimation has several advantages. Estimating the magnitude level of the input signal can be performed in the first phase of feasibility of the project. Further, it can be understood in "real time” if it is possible to meet the customer/application specification without trial and error. The design can be otherwise changed to meet these specifications, including changes to the target, geometry, airgap, number of turns, and other structural changes. Consequently, estimating the magnitude can reduce the cost by reducing the time to market, reducing PCB manufacture, reducing layout engineer time, and reducing the measurement in the test bench.
- Calibration refers to matching the electrical measured position with the mechanical reference position.
- Linearization refers to linearization of the measured position, improving the performance of the sensor in terms of error.
- the standard/old calibration and linearization is accomplished with two or more sweeps of the target in two or more acquisition steps. In total 3 sweeps are necessary to perform a calibration and linearization, where a sweep is defined as target movement over the movement range of the position sensor.
- Figure 6A illustrates a classic process 600 for calibrating and linearizing a position sensor 310 as is illustrated above.
- the classic process 600 of C&L includes the following steps: 1) measurement 602 that includes measuring the data, for example with the system 300 shown in Figures 3A and 3B ; 2) calibration parameter calculation 604 that calculates the calibration parameters from the data measured in measurement 602; 3) write calibration 606 where the calibration parameters are written into position sensor 310, typically using registers 430 as illustrated in Figure 4B ; 4) measurement step 608 where data is measured again using the calibration parameters determined in calibration parameters calculation 604; 5) linearization parameter calculations 610 where the linearization parameters are calculated; and 6) linearization writing 612 where the linearization parameters are writing into position sensor 310.
- measurement 602 includes reading the Spatial Angle register ("SPA") of registers 430, which is the register of registers 430 that contains the measured value of the position during the sweep of the target across the receive coils.
- SPA Spatial Angle register
- the zero offset is an offset for matching the electrical signal with the mechanical measurement.
- write calibration 606 the calibration parameters (slope and zero offset) are written to control circuit 312, for example into the CAL registers of register 430.
- measuring of the positional data is done again with the calibration in effect.
- the sweep is done by reading the register PosO (PosO is register that contain the measured value after calibration during the sweep of the target).
- the linearization parameters are calculated.
- the linearization is implemented by a linear interpolation filter with nine fixed linearization points.
- the output of the linearization can be read at the register Pos1 of registers 430, which is the position after both calibration and linearization. The output is the difference between the position PosO and the correction curve defined from nine points, as is illustrated in Figure 6B .
- the calculation is the difference between the measurement (PosO) and the ideal line that cross the first and the last point of the POSO value.
- the difference is calculated between the nine-fixed point of the ideal curve and the measured value.
- Figure 6B illustrates the initial uncorrected error after CORDIC (Coordinate Rotational Digital Compute) calculation performed in control circuit 312 and the correction curve to result in a residual error after correction and linearization.
- CORDIC Coordinat Rotational Digital Compute
- the linearization parameters (the nine correction parameters) are written into registers 430 of the control circuit 312.
- Figure 6C illustrates the correction curve that is written into the linearization LIN registers of registers 430 in control circuit 312.
- a Clamping can also be defined in place of the linearization.
- a clamping of the output sensor reading RXSIN and RXCOS from coils 314 is used.
- the output is mapped in a range from 5% to 95% of the voltage driving control circuit 312, VDDE.
- the range that is needed is from 10% to 90% of VDDE.
- what is needed is a remap of the output signals and not just a cut of the output signals.
- the range of the output can be mapped to a different output span. The disadvantage is that the resolution will be decreased with the clamping.
- the process of clamping is separated into two different sub process: Physical Clamping: that clamps the output level of the output; and Calibration Clamping (determining a slope and a zero offset in a way that for a certain target movement provides a desired output).
- Physical Clamping that clamps the output level of the output
- Calibration Clamping determining a slope and a zero offset in a way that for a certain target movement provides a desired output.
- a process 700 according to some embodiments of the present invention is illustrated in Figure 7A .
- This method can be used with every output interface: Analog, SENT, or PWM.
- the advantage of embodiments of the present invention is to reduce the test time for calibration and linearization, for example to as low as 2-3 second. It is possible, then, to do a calibration after production for each position sensor 310, which reduces production costs.
- FIG. 7A illustrates process 700 for performing the calibration and linearization, which uses only one sweep of the target over coils 314.
- Process 700 can be performed in system 300 with processor 300 in communication with control circuit 312 of position sensor 310.
- system 300 sweeps the target over the coils 314 while reading positional values from registers 430 of control circuit 312.
- processor 300 calculates both the calibration and linearization parameters, as is further illustrated below.
- write step 706 the calibration and linearization parameters are written into the corresponding registers (Cal and Lin) of registers 430 in control circuit 312. Consequently, in accordance with some embodiments, the calibration and linearization process 700 is accomplished in one sweep.
- processor 302 reads the Spatial Angle register of registers 430 at each of the positions of the target.
- processor 302 steps the target on target mount 308 over position sensor 310 using position motors 304 and, at each step, reads the Spatial Angle register of registers 430.
- processor 302 may read the voltage at an analog output, PWM, or SENT data.
- the Spatial Angle data is the position data directly from the CORDIC calculation.
- processor 302 determines the calibration parameters and calculates a POSO value, the position values after applying the calibration parameters, corresponding to the projected values of POSO for position sensor 310. Consequently, these values do not need to be read again. From the calculated POSO values, processor 310 can then determine the linearization parameters.
- the Spatial Angle value leads to determination of the PosO values, which leads to determination of the Pos1 values.
- the Spatial Angle values are the values from the CORDIC in the position sensor control circuit 310 for each position of target over coils 314.
- PosO is the value after Calibration of the Spatial angle value.
- Pos1 is the value after linearization of the PosO value.
- a new linearization algorithm can be used.
- the conventional method uses the difference between the measured value and the ideal one at the fixed points.
- linearization is based on finding the best correction factor for decreasing the final error. In some embodiments, it is possible to improve the error by 0.2%FS or better with these linearization methods.
- the calibration method includes measuring location data, calculating the calibration and linearization parameters, and writing the parameters to the position sensor, which substantially reduces the calibration and linearization time and cost.
- measuring the location data in system 300 includes reading the Spatial Angle register of registers 430 of control circuit 312 at positions of the target over coils 314 as the target is swept over position sensor 310.
- the actual position of target relative to position sensor 310 is known in processor 310 and the Spatial Angle register reflects the determination by position sensor 310 based on the CORDIC output. From this Spatial Angle data, it is possible to calculate the calibration factors slope and zero offset as discussed above.
- PosO is calculated from the Spatial Angle and the Calibration Parameters.
- the PosO value (value of the register in register 430 of control circuit 312 is the value after Calibration has been applied) is calculated from combining the Spatial Angle (SPA), slope and Zero offset as described above.
- the PosO data is calculated using the SPA and not measured, resulting in this approach having one less measurement step in the process.
- linearization uses an iterative algorithm for determining the nine correction factors in a way that the max error calculated is the smaller one with respect to the set of correction factors found during the iterative algorithm.
- Embodiments of this invention take into account the implementation of the linearization model used in control circuit 312.
- the algorithm executed in control circuit 312 to calculate the "POS1" value involves calculating the correction factor based on the POSO value and an ideal curve crossing the first and the last point.
- An iterative algorithm can find a set of new correction factors (COR0 through COR8) and in the end will choose the set of correction factors with the smallest worst error. All the algorithms described herein can be implemented in every programming language.
- the point (8191, 1417) is defined such that 8191 is the fixed correction point and 1417 is the correction factor at this point (which has been calculated as described above).
- the point (3277, 0) is the correction factor applied at the point 3277.
- the value 3277 is defined from the Clamping value and should not be changed from the correction factor, this is the reason that the correction should be zero.
- the step-by-step linearization process is further described below.
- the calibration process yields the zero offset and the slope.
- the Linearization process yields the linearization corrections Corr0, Corr1, ... Corr8.
- Corr0, Corr1, ... Corr8 There may be several approaches, two of which are outlined below.
- the number of samples taken during the measurement phase is such that the greater number the better results of the linearization. For example, more than 400 samples for one complete sweep of the target may be used.
- the two end points of the Spatial Angle can be read and used for calibration.
- the calibration can then be written to the position sensor.
- the PosO register value can then be read in a second sweep and that value used for linearization.
- the linearization correction factor can then be written to the position sensor, for example into the registers of the position sensor.
- Embodiments of the present invention use a single measurement, step 702, resulting in one sweep for both linearization and calibration.
- processor 302 executing measurement 702 reads the Spatial Angle register value of registers 430 and in calculation step 704 the calibration is accomplished using the two end points.
- the value PosO is then calculated from the Spatial Angle and the Calibration Parameters and linearization is then performed using the calculated PosO value.
- the linearization and calibration parameters are written into the position sensor 310 registers 430 in write step 706. As described above, this approach needs only one measurement (one sweep and that is enough for both linearization and Calibration)
- the Analog Output can be read from control circuit 312 and the values are expressed in volts.
- the analog output (Volts) has to be converted to spatial value (row data).
- the logic behind this is to use 5 % of VDDE to 95% of VDDE (Ratio metric), which results in 0.25 volts to 4.75volt, and this is mapped to mapped to the digital register 0 - (2 ⁇ 16-1). Additionally, 4.75-0.25 V is 4.5 V. Voltage measurements are the values measured at the analog output.
- OutputCalPOS0 is the value of the PosO register measured or calculated.
- offset_value spatial_angle_min.
- the ideal coil design based on customer requirements can be predicted and the coils produced accordingly.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
- Measurement Of Length, Angles, Or The Like Using Electric Or Magnetic Means (AREA)
Abstract
Description
- Embodiments of the present invention are related to position sensors and, in particular, to improvements on calibration and linearization of position sensors.
- Position sensors are used in various settings for measuring the position of one component with respect to another. Inductive position sensors can be used in automotive, industrial and consumer applications for absolute rotary and linear motion sensing. In many inductive positioning sensing systems, a transmit coil is used to induce eddy currents in a metallic target that is sliding or rotating above a set of receiver coils. Receiver coils receive the magnetic field generated from eddy currents and the transmit coils and provide signals to a processor. The processor uses the signals from the receiver coils to determine the position of the metallic target above the set of coils. The processor, transmitter, and receiver coils may all be positioned on a printed circuit board (PCB).
- However, these systems exhibit inaccuracies for many reasons. For example, the electromagnetic field generated by the transmitter, and the resulting fields generated in the metallic target, may be non-uniform, the connections of wire traces to the transmit coils and the arrangement of receive coils may result in further non-uniformity. The air-gap (AG) between the metallic target and the coils mounted on the PCB may be non-uniform. Further, the amplitudes of signals generated by receiver coils may have an offset. There may be mismatches between the multiple receiver coils. There may be different coupling effects between the metallic target and each of the multiple receiver coils. These and other factors may result in inaccurate results of the position locating system.
- Therefore, there is a need to develop better methods of designing sensor coils that offer better accuracy for position sensing and better calibration systems to correct for inaccuracies.
- In some embodiments, a position sensor calibration and linearization system for position sensors is provided. A method of calibrating and linearization of a position sensor includes reading Spatial Angle data from a position sensor at a set of positions of a target swept over receive coils in the position sensor; calculating calibration parameters from the Spatial Angle data; determining an initial position values from the Spatial Angle data and the calibration parameters; determining linearization parameters from the initial position values; and writing the calibration parameters and the linearization parameters into the position sensor.
- A calibration and linearization system according to some embodiments includes a processor; and a position motor coupled to the processor, the position sensor configured to move a target mounted to the position motors over a range of a position sensor positioned relative to the target. The processor executes instructions to read Spatial Angle data from the position sensor at a set of positions of a target swept over receive coils in the position sensor; calculate calibration parameters from the Spatial Angle data; determining initial position values from the Spatial Angle data and the calibration parameters; determine linearization parameters from the initial position values; and write the calibration parameters and the linearization parameters into the position sensor.
- These and other embodiments are discussed below with respect to the following figures.
-
Figures 1A and 1B illustrates a coil system for determining a position of a target. -
Figures 2A, 2B, and 2C illustrate operation of the position sensor illustrated inFigures 1A and 1B with a target position at 0°. -
Figures 2D, 2E, and 2F illustrates operation of the position sensor illustrated inFigures 1A and 1B with a target position at 90°. -
Figures 2G, 2H, and 2I illustrates operation of the position sensor illustrated inFigures 1A and 1B at 180°. -
Figures 3A and 3B illustrate a test apparatus for testing the accuracy of a position sensor. -
Figure 3C illustrates illustrate of a processor of the test apparatus with a position sensor. -
Figure 4A illustrates an example of a processor of a system as illustrated inFigures 3A and 3B . -
Figure 4B illustrates a control circuit of a position sensor as illustrated inFigure 3C . -
Figure 5A illustrates an accuracy and output fit of the position as measured. -
Figure 5B illustrates the error in the plot inFigure 5A . -
Figure 6A illustrates a conventional process for performing calibration and linearization. -
Figure 6B illustrates an example of error calibration using the process illustrated inFigure 6A . -
Figure 6C illustrates an example of a correction curve leading to linearization using the process illustrated inFigure 6A . -
Figure 7A illustrates a calibration and linearization process according to some embodiments of the present invention. -
Figure 7B illustrates a correction function resulting from the calibration and linearization process illustrated inFigure 7A . - These and other aspects of embodiments of the present invention are further discussed below.
- In the following description, specific details are set forth describing some embodiments of the present invention. It will be apparent, however, to one skilled in the art that some embodiments may be practiced without some or all of these specific details. The specific embodiments disclosed herein are meant to be illustrative but not limiting. One skilled in the art may realize other elements that, although not specifically described here, are within the scope and the spirit of this disclosure.
- This description illustrates inventive aspects and embodiments should not be taken as limiting--the claims define the protected invention. Various changes may be made without departing from the spirit and scope of this description and the claims. In some instances, well-known structures and techniques have not been shown or described in detail in order not to obscure the invention.
- In accordance with embodiments of the present invention, methods of calibrating and linearizing a position sensor is presented. This method includes measuring spatial angle data as a target is swept over the receive coils in the position sensor and calculating calibration parameters from the spatial angle data. Further, position values can be determined and a linearization correction can be performed. In some embodiments, determining the position value includes measuring the position value. In some embodiments, the position value includes calculating the position value from the spatial angle data and the calibration parameters.
-
Figure 1A illustrates apositioning system 100. AlthoughFigures 1A and 1B illustrate operation of a linear position sensor, rotational position sensors are operationally the same. As illustrated inFigure 1A , the positioning system includes transmit/receivecontrol circuit 102 that is coupled to drive atransmitter coil 106 and receive signals from receivecoils 104. In most configurations, receivecoils 104 are located withintransmitter coil 106, however inFigure 1A they are illustrated separately for clarification purposes.Receive coils 104 are generally physically located within the border oftransmit coil 106. Embodiments of the present invention can include atransmitter coil 106, tworeceiver coils 104, and an integrated circuit (IC) 102 driving thetransmitter coil 106 and measuring the signals originated in thereceiver coils 104 all formed on a printed circuit board (PCB). -
Figure 1B illustrates a configuration oftransmit coils 106 and receivecoils 104 in a linear position locating system. As is shown inFigure 1B , a conductivemetallic target 124 can be positioned over the transmitter coil and the two receiver coils. - As is illustrated in
Figure 1A ,transmit coil 106 is driven to formmagnetic field 108. Transmitcoil 106 can be driven at a range of frequencies or at particular frequencies. InFigure 1A ,magnetic field 108, with the positive current illustrated by the arrows, is circular around each wire and in a direction that points out of the page insidecoil 106 and into the page outside ofcoil 108 with the current direction as illustrated inFigure 1A .Receive coils 104 are located insidecoil 106, as is illustrated inFigure 1B .Transmit coil 106 is driven at any frequency that can produceelectromagnetic field 108 to induce voltages inreceiver coils 104. In general, there can be any number of receiver coils, however, for ease of discussion, a system with two receiver coils is discussed below. -
Figure 1B illustrates the arrangement of sensor receive coils (RX) 104 within transmit coil (TX) 106 for a linear position sensor. However, it is understood that embodiments of the present invention are applicable to any geometry of position sensor. As illustrated inFigure 1B , sensor receivecoils 104 includes a sine-wave oriented coil RXSIN 112 and a cosine-oriented signal coil RXCOS 110. Sine-wave orientedcoil RXSIN 112 includessine loops coil 112 is wound in in-phase or anti-phase directions, here depicted as clockwise or counter clockwise depictions, to result in the production of voltages in the loop of opposite sign as a result of the presence of electro-magnetic field 108. As is illustrated, the wiring of sine- wave orientedcoil 112 provides a clockwise rotation inloops loop 116 resulting in nominally negative voltages. Similarly, cosine-orientedcoil 110 may include afirst loop 120 with a clockwise orientation and asecond loop 122 with a counterclockwise orientation.Figure 1B illustrates a possible electromotive force reference direction, as indicated by the arrows, that is consistent with the magnetic fields produced bytransmitter coil 106 as illustrated inFigure 1A . - In the system illustrated in
Figure 1B , the transmitter coil (TX) 106 is stimulated by thecircuit 102, which may be an integrated circuit, to generate a variable Electromagnetic field (EMF), illustrated asmagnetic field 108. Themagnetic field 108 couples with the receiver coils (RX) 104. If a conductivemetallic target 124 is placed on the top of the receiver coils 104 as illustrated inFigure 1B , an eddy current is generated in themetallic target 124. This eddy current generates a new electromagnetic field that is ideally equal and opposite offield 108, canceling the field inreceiver coils 104 directly undermetallic target 124. The receiver coils (RX) 104 capture thevariable EMF field 108 generated by the transmitcoils 106 and those induced bymetallic target 124, resulting in sinusoidal voltages generated at the terminals of receiver coils 104. - In absence of
metallic target 124, there will be no voltage at the terminals of the RX coils 104 (labeledRxCOS 110 andRXSin 112 inFigure 1B ). Whenmetallic target 124 is placed in a specific position with respect to the RX coils 104, the resultant electromagnetic field on the area covered by themetallic target 124 is ideally zero and therefore the voltages at the terminals of the RX coils 104 will have different characteristic depending on the location ofmetallic target 124 relative to receiver coils 104. The RX coils 104 are designed in a way that a sine voltage is created at the terminals of one RX coil (RxSin 112) and a cosine voltage is created at the terminals of the other RX coil (RxCos 110) asmetallic target 124 is swept across receiver coils 104. The position of the target with respect to the RX coils 104 modulates the amplitude and the phase of the voltage at the terminals of the RX coils 104. - As illustrated in
Figure 1A and discussed above,transmitter coil 106, receivecoils 104, and transmit/receivecircuit 102 can be mounted on a single PCB. Further, the PCB can be positioned such thatmetallic target 124 is positioned above receivecoils 104 and spaced from receivecoils 104 by an air gap (AG). The position ofmetallic target 124 relative to the PCB on which receive coils 104 andtransmitter coil 106 is mounted can be determined by processing the signals generated by sine-orientedcoil 112 and cosine-orientedcoil 110. Below, the determination of the position ofmetallic target 124 with respect to receivecoils 104 is described in a theoretical ideal condition. - In
Figure 1B ,metallic target 124 is located at a first location. In this example,Figures 1B and depicts operation of a linear position locator system. The principle of operation is the same in both linear and circular locators. In the discussion below, the position is given in relation to the construction of cosine-orientedcoil 110 and sine-orientedcoil 112 by providing the angular relations with respect to the sine operation of sine-orientedcoil 112 which results from the position of the leading edge ofmetallic target 124 and coils 110 and 112. The actual position ofmetallic target 124 in such a system can be derived from the angular position as measured by the output voltages of receivecoils 104 and the topology of receivecoils Figure 1B , the topology ofcoil 110 and the topology ofcoil 112 are coordinated to provide indication of the location ofmetallic target 124 relative to the receive coils 104. -
Figures 2A through 2I illustrate operation of the position sensor illustrated inFigures 1A and 1B withtarget 124 positioned at 0°, 90°, and 180°, respectively (the angular positions corresponding to linear positions oftarget 124 relative to the receivecoils 110 and 112). The transmitter coil (TX) 106 is stimulated be theIC 102 to generate a variable Electromagnetic field (EMF1). Such magnetic field couples with the receiver coils 110 and 112. The receiver coils (RX) 110 and 112 capture the variable EMF and a sinusoidal voltage is generated at the terminals of the receiver coils 110 and 112. - If a
conductive target 124 is placed on the top of thecoil receivers target 124 by the EMF1 field generated by transmitcoils 106. This Eddy current generates a new EMF2 that is opposite of the EMF1 but ideally with the same intensity. - In absence of
target 124, there will be no voltage at the terminals of the RX coils 110 and 112. When thetarget 124 is placed in a specific position with respect to the RX coils 110 and 112, the resultant EM on the area covered by the target is ideally zero and therefore the voltages at the terminals of the RX coils 110 and 112 will have different characteristic. The RX coils 110 and 112 are designed in a way that a sine voltage as a function of position oftarget 124 is created at the terminals of oneRX coil 112 and a cosine voltage as a function of position oftarget 124 is created at the terminals of theother RX coil 110. The position of thetarget 124 with respect to the RX coils 110 and 112 modulates the amplitude and the phase of the voltage at the terminals of the RX coils 110 and 112. This is illustrated inFigures 2A through 2I . -
Figures 2A through 2I illustrate sweeping the target from a defined initial position to a define end position by illustrating operation of the receive coils for positions oftarget 124 corresponding to 0°, 90°, and 180°. The output of the receivecoils coil 112 and cosinusoidal voltage (Vcos) on receivecoil 110 depending on the position oftarget 124. The position of the target can the be calculated from the arc tan (Vsin / Vcosin). It is important to notice the following general properties about the coils in a position sensor: (1) The shape oftransmitter coil 106 has no importance as long as it covers the area where the receiver coils 104 are placed; (2) The shape of the receiver coils 104 is arranged to a geometrical sine and cosine that is overlapped; and (3) The shape oftarget 124 has no influence on the working principle as long as the area oftarget 124 covers a part of the total area of receiver coils 104. -
Figures 2A, 2B, and 2C illustrates operation wheretarget 124 is positioned in the 0° position.Figure 2A illustrates operation of cosine receivecoil 110. As is illustrated, cosine receivecoil 110 includes an a loop and a b loop. As is illustrated, a loop is completely covered bytarget 124 and therefore contributes 0 units of voltage (Va=0) while loop b is uncovered and contributes 1 unit of voltage (Vb=0). Consequently, the cosine voltage is given by Vcos=Va+Vb =1. The units of voltage are relative and scalable to an actual voltage that is received from receive coils 104 (the combination of receivecoils 110 and 112).Figure 2B illustrates the corresponding situation with thesine coil 112, which as is illustrates includes loops c, d, and e. Loop d is complete in the center ofcoil 112 while loop c is to the left of loop d and while loop e is to the right of loop c. As is illustrated, loop c and half of loop d is covered bytarget 124 while the other half of loop d and loop e is uncovered bytarget 124. Consequently, the voltage contributions from loops c, d, and e is given by Vc=0, Vd=-1/2, and Ve=+1/2. The sign of the contribution is depending on the indicated direction (clockwise or counterclockwise) of the induced current. Consequently, the sine voltage Vsin is given by Vc+Vd+Ve=0.Figure 2C illustrates the sin voltage Vsin from receivecoil 112 and cosine voltage Vcos from receivecoil 110 as a function of target position (given in angular terms).Figure 2C shows the voltages Vsin and Vcos resulting from the arrangement illustrated inFigures 2A and 2B . -
Figures 2D, 2E, and 2F illustrate operation of receivecoils target 124 positioned at the 90° position. As shown inFigure 2D , loop a and loop b of receivecoil 110 are each ½ covered. Considering the shown currents in the loops, Va=-1/2 and Vb=+1/2. Consequently, Vcos=Va+Vb=0.Figure 2E illustrates loops c, d, and e where loop d is covered bytarget 124 while loops c and e are uncovered bytarget 124. Consequently, considering the shown currents in the loops, Vc=1/2, Vd=0, and Ve=1/2. Consequently, Vsin=Vc+Vd+Ve=1. This is further illustrated in the graph of Vsin and Vcos as a function of the position oftarget 124 illustrated inFigure 2F . -
Figures 2G, 2H, and 2I illustrate operation of receivecoils target 124 positioned at the 180° position. As shown inFigure 2G , loop a receivecoil 110 is uncovered by loop b is covered bytarget 124. Considering the shown currents in the loops, Va=-1 and Vb=0. Consequently, Vcos=Va+Vb=-1.Figure 2H illustrates loops c, d, and e where loop e is covered bytarget 124 and loop d is half covered bytarget 124. Loops c and the other half of loop d are uncovered bytarget 124. Consequently, considering the shown currents in the loops, Vc=1/2, Vd=-1.2, and Ve=0. Consequently, Vsin=Vc+Vd+VV=0. This is further illustrated in the graph of Vsin and Vcos as a function of the position oftarget 124 illustrated inFigure 2I . -
Figures 3A and 3B illustrates asystem 300 for measurement and calibration of a position sensor.Figure 3C illustrates an interaction betweensystem 300 and aposition sensor 310 that is being tested. Due to non-idealities of the magnetic coupling principle, a calibration procedure is needed to correct the measured position of the target by the actual position of the target. -
Figure 3B illustrates a block diagram ofsystem 300 as indicated inFigure 3A . As illustrated inFigure 3B , aprocessor 302 is coupled to positionmotors 304.Position motors 304 are coupled through aconnector 306 to amount 308 on which a target such astarget 124 is mounted.Mount 308 is positioned above aposition sensor 310.Position sensor 310 is in communication withprocessor 302 in order to provide positional data of the target onmount 308 with respect to the coils onposition sensor 310. As is illustrated inFigure 3C ,position sensor 310 includes acontrol circuit 312 that is coupled to coils 314.Control circuit 312 is often an IC that is mounted on the same PCB as is coils 314.Coils 314 include the transmit and receive coils as discussed above. -
Processor 302 can include a processing unit such as a microprocessor, microcontroller, or other device along with sufficient memory (both volatile and non-volatile) and supporting circuitry (analog-to-digital converters, digital-to-analog converters, support circuitry, etc.) to perform the functions described herein. -
Position motors 304 can include a desk with four step motors to have a 4-axis movement control of the target onmount 308. These dimensions include linear x, y, z direction as well as the rotational parameter around an axis throughsupport 306. These motions are illustrated inFigure 3B , with the X direction being orthogonal to the X and Z direction shown and the angular rotation θ shown. Consequently, the target mounted onmount 308 can be swept over the top of the receiver coils oncoils 314 inposition sensor 310 in all possible directions while the precise location of the target is known inprocessor 302. Further,processor 302 receives the output fromcontrol circuit 312 inposition sensor 310, which provides the measured position on theposition sensor 310 to compare with the precise location data as determined byprocessor 302. For circular position sensors, the rotational position θ and the air gap z (the distance between the target onmount 308 and the PCB where coils 314 are placed) can be fully monitored. In a linear position sensor, the x-y location of the target along with the air gap z can be monitored. - As discussed previously,
control circuit 312 includes processors and support circuitry to interact withcoils 314 and provide measured positional data to an external system, as shown inFigure 3C processor 302. - This system illustrated in
Figures 3A, 3B, and 3C can be used for measurements, calibration, and linearization. The accuracy ofposition sensor 314 is defined as the difference between the measurement of the position of the target onmount 308 during a sweep of the target onmount 308 from an initial position to an end position and an expected ideal curve, this result is expressed in percentage of the full-scale measurement. -
Figure 4A further illustratesprocessor 302 ofsystem 300.Processor 302 can, for example, be a computer and includes a microprocessor, microcomputer, orother computing processor 402 that is coupled to amemory 404.Memory 404 includes sufficient volatile and non-volatile memory to store data and instructions that are executable onprocessor 402 to perform the operations discussed in this disclosure.Processor 402 is further coupled to aposition motor interface 406 that can be coupled to controlposition motors 304 as illustrated inFigure 3B .Processor 402 is also coupled to aposition sensor interface 408 that can be coupled to controlcircuit 312 ofposition sensor 310 as illustrated inFigure 3B .Processor 402 can further be coupled to auser interface 410, which can include keyboards, displays, touchscreens, audio outputs, and other devices to interface with a user ofsystem 300. -
Figure 4B further illustratescontrol circuit 312 ofposition sensor 310. As discussed above,control circuit 312 can be formed on a single integrated circuit that is mounted on the same PCB on which coils 314 are formed. As illustrated inFigure 4B ,control circuit 312 includes amicroprocessor 420.Microprocessor 420 is coupled to amemory 422 and is capable of executing instructions stored inmemory 422 for performing the functions discussed in this disclosure.Memory 422 includes sufficient volatile and non-volatile memory for storing executable instructions and data formicroprocessor 420 to perform these instructions.Microprocessor 420 is further coupled to aTX drive circuit 424 that drives current through TX coils. Further,microprocessor 420 is coupled to receive data fromRXSin circuit 426 andRXCos circuit 428.Circuits coils 314. Further,microprocessor 420 is coupled toregisters 430, which is further discussed below. Aninterface 432 is coupled tomicroprocessor 420 and toregisters 430.Interface 432 interfaces with an external processor such asprocessor 302 ofsystem 300 illustrated inFigure 4A . -
Registers 430 includes both read/write registers as well as read-only registers that provide data throughinterface 432 between the external processor andmicroprocessor 420. In some embodiments, register 430 may be EEPROM on an IC that includescontrol circuit 312.Registers 430 include a POSO register that stores the output angle determined bymicroprocessor 420 after output calibration and a POS1 register that stores the output angle determined bymicroprocessor 420 after output calibration and linearization. The spatial angle register holds the output angle determined bymicroprocessor 420 before any calibration or linearization is performed.Microprocessor 420 determines the spatial angle from the raw digital sin data XSIN and cosine data YCOS from the receive coils. XIN and YCOS may also be stored inregisters 430. Other registers include calibration registers and linearization registers (Cal and Lin) that may be written to throughinterface 432 in order the calibration the calculations performed bymicroprocessor 420 to determine the POSO and POS1 values from the spatial angle value.Registers 430 may include any number of registers, including any number of calibration registers or linearization registers. -
Figure 5A illustrates the measured positional value in digitized units versus the actual position in degrees. Infigure 5A , PosO represents the measured value as supplied bycontrol circuit 312 and measured from aregister 430 incontrol circuit 312 versus the known position as measured byprocessor 302 insystem 300. The Ideal Curve value is the ideal curve using the known position of the target as determined bysystem 300, which inFigure 4 is represented by a straight line. The error based on percentage of the full-scale value FS is then given by - In some cases, PosO is the value measured from a register of
control circuit 314. FS is the full-scale value, which for a 16 bit register is (2^16-1)=65535.Figure 5B illustrates the present error in the curve, FNL, as illustrated inFigure 5A . - As is demonstrated calibration and linearization of position sensors is an important aspect of producing such sensors. This disclosure addresses several aspects of the calibration and linearization methods used in both linear and circular positions sensors, including: (1) Accuracy estimations methods of the positions sensor circuits including inductive coil sensors; (2) Magnitude estimation methods of the position sensor circuit including inductive coil sensors; (3) One-step calibration for the process of linearization and calibration of position sensors; (4) A linearization algorithm for position sensors; and (5) Smart inductor solutions, the future of inductive sensor technology, for position sensors.
- Some embodiments provide an accuracy estimation of a sensor design without actual sensor measurements. These accuracy estimates can be performed for every geometry, for different airgaps, for each worse-case target mechanical (x, y, z, tilt) tolerances at a customer module level, for each temperature condition, and for any dynamic (application lifetime) target mechanical (x, y, z, tilt) tolerances at customer module level.
- Advantages of such embodiments include that the accuracy can be estimated in the first phase of feasibility analysis. Further, an understanding in real-time of whether or not it is possible to meet customer expectations or application specifications without trial and error. Further, the time to market, design in cycle, PCB manufacturing cost, engineering time for PCB layout, and verification time on the test bench can all be reduced.
- An accuracy estimation can be performed by calculating the error from the position
sensor control circuit 312, which can be an integrated circuit, for different temperatures.Control circuit 312 circuit may include an analog front end, analog-to-digital converters, digital signal processors, digital-to-analog converters, and other circuits. Further, the error introduced by the measurement setup can be calculated. An error generated by the coils can be provided from a coil simulation tool. A probability approach can be taken for combining the various points of error that have been calculated. Finally, an additional correction factor to the final error number can be provided from a collection of historical data in an internal database and used in error correction. - In some embodiments, the error data can be included in
control circuit 312 or can be calculated, for example, inprocessor 302 and the results loaded intocontrol circuit 312 to be used when processing data. - Further, a magnitude estimation can be made in the first phase of feasibility of the sensor. Magnitude can be estimated for different geometry, different airgaps, different target geometry, and different number of Tx coil turns. Such a calculation can be used in the feasibility phase of developing a sensor.
- Magnitude estimation has several advantages. Estimating the magnitude level of the input signal can be performed in the first phase of feasibility of the project. Further, it can be understood in "real time" if it is possible to meet the customer/application specification without trial and error. The design can be otherwise changed to meet these specifications, including changes to the target, geometry, airgap, number of turns, and other structural changes. Consequently, estimating the magnitude can reduce the cost by reducing the time to market, reducing PCB manufacture, reducing layout engineer time, and reducing the measurement in the test bench.
- The magnitude can be made by calculating the amplification in the analog-front-end (formed by
RXsin 426 and RXCOS 428), AFE_amplif, of thecontrol circuit 312 ofposition sensor circuit 310, calculating the effective current in transmitter (TX) coil for a given geometry, calculating the receiver voltage Volt_Rx on the receiver (Rx) coils by including the points above in the simulation tool, and then calculating Cordic_Amplitude = AFE_amplif * Volt_RX. - These estimation processes can be used to help design the position sensor to remove some of the design and testing steps of providing a position sensor design. Furthermore, with a particular design, the calibration and linearization procedures can also be improved.
- In an inductive position sensor such as that discussed above, it is necessary to Calibrate and Linearize the sensor. As in any other sensor, the process of calibration and linearization(C&L) is very important for the functionality and for the performance of the sensor.
- Calibration refers to matching the electrical measured position with the mechanical reference position. Linearization refers to linearization of the measured position, improving the performance of the sensor in terms of error.
- The process of (C&L) is very important of the functioning of the position sensor and also is important to the overall cost of the sensor production. In almost all of the applications with position sensors, a calibration and linearization is needed for each modulo level. The principal reason for this need is usually the mechanical tolerance during the production of the module. The non-repeatability and the mechanical tolerance make it impossible to use the same calibration and linearization parameter for each module. As the C&L is applied at module level, this implies that the time for C&L has an impact on direct cost of each module. Decreasing the time of this process means decreasing the time for production of the resulting position sensors. A theoretical understanding of the position sensor itself has led to different approaches to calibration and linearization.
- In the classic calibration method, the standard/old calibration and linearization is accomplished with two or more sweeps of the target in two or more acquisition steps. In total 3 sweeps are necessary to perform a calibration and linearization, where a sweep is defined as target movement over the movement range of the position sensor.
-
Figure 6A illustrates a classic process 600 for calibrating and linearizing aposition sensor 310 as is illustrated above. The classic process 600 of C&L, as is illustrated inFigure 6 includes the following steps: 1)measurement 602 that includes measuring the data, for example with thesystem 300 shown inFigures 3A and 3B ; 2)calibration parameter calculation 604 that calculates the calibration parameters from the data measured inmeasurement 602; 3)write calibration 606 where the calibration parameters are written intoposition sensor 310, typically usingregisters 430 as illustrated inFigure 4B ; 4)measurement step 608 where data is measured again using the calibration parameters determined incalibration parameters calculation 604; 5)linearization parameter calculations 610 where the linearization parameters are calculated; and 6) linearization writing 612 where the linearization parameters are writing intoposition sensor 310. - These steps can be applied to a system such as, for example,
position sensor 310 with acontrol circuit 312 as illustrated inFigure 4B . In that case,measurement 602 includes reading the Spatial Angle register ("SPA") ofregisters 430, which is the register ofregisters 430 that contains the measured value of the position during the sweep of the target across the receive coils. Incalibration parameters 604, calculating the calibration parameters includes calculating two parameters: Slope and Zero offset. Slope is calculated by mapping the mechanical movement of the target to the Full-Scale (FS=2^16 with a 16 bit register). For example, Mapping the 20, 30, or 40 mechanical degrees to the full scale of a register inregister 430, for example. The zero offset is an offset for matching the electrical signal with the mechanical measurement. Inwrite calibration 606, the calibration parameters (slope and zero offset) are written to controlcircuit 312, for example into the CAL registers ofregister 430. - In
measurement step 608, measuring of the positional data is done again with the calibration in effect. Inmeasurement step 608, the sweep is done by reading the register PosO (PosO is register that contain the measured value after calibration during the sweep of the target). Inlinearization step 610, the linearization parameters are calculated. In some cases, the linearization is implemented by a linear interpolation filter with nine fixed linearization points. The output of the linearization can be read at the register Pos1 ofregisters 430, which is the position after both calibration and linearization. The output is the difference between the position PosO and the correction curve defined from nine points, as is illustrated inFigure 6B . - As shown in
Figure 6B , the calculation is the difference between the measurement (PosO) and the ideal line that cross the first and the last point of the POSO value. The difference is calculated between the nine-fixed point of the ideal curve and the measured value.Figure 6B , then, illustrates the initial uncorrected error after CORDIC (Coordinate Rotational Digital Compute) calculation performed incontrol circuit 312 and the correction curve to result in a residual error after correction and linearization. - In
write linearization 612, the linearization parameters (the nine correction parameters) are written intoregisters 430 of thecontrol circuit 312.Figure 6C illustrates the correction curve that is written into the linearization LIN registers ofregisters 430 incontrol circuit 312. - In some cases, a Clamping (analog output and PWM) can also be defined in place of the linearization. In many applications, a clamping of the output sensor reading RXSIN and RXCOS from
coils 314 is used. In a normal operation of the sensor, the output is mapped in a range from 5% to 95% of the voltagedriving control circuit 312, VDDE. In some applications, there is a need to change this range. In almost all of those cases, the range that is needed is from 10% to 90% of VDDE. In these examples, what is needed is a remap of the output signals and not just a cut of the output signals. During the same movement of the target, the range of the output can be mapped to a different output span. The disadvantage is that the resolution will be decreased with the clamping. - The process of clamping is separated into two different sub process: Physical Clamping: that clamps the output level of the output; and Calibration Clamping (determining a slope and a zero offset in a way that for a certain target movement provides a desired output). For a robust solution it is often suggest use of both of these clamping techniques. This clamping process can be performed in place of or in addition to the linearization process represented in
Figure 6A . - In conclusion, the problem is that with two measurements and two writings, the standard method is too slow to be practical in end of line calibration of a position sensor. Consequently, the cost of production will be extremely high to produce a finished position sensor. There is no solution of how to implement a clamping process in the standard calibration process as illustrated in
Figure 6A . In the case when clamping is applied, the values for linearization are missing. As explained in the previous section the linearization is applied in nine-fix point process. - In contrast, in some embodiments of the present invention only one sweep measurement is necessary to calculate the calibration and linearization factors. A
process 700 according to some embodiments of the present invention is illustrated inFigure 7A . This method can be used with every output interface: Analog, SENT, or PWM. The advantage of embodiments of the present invention is to reduce the test time for calibration and linearization, for example to as low as 2-3 second. It is possible, then, to do a calibration after production for eachposition sensor 310, which reduces production costs. -
Figure 7A illustratesprocess 700 for performing the calibration and linearization, which uses only one sweep of the target overcoils 314.Process 700 can be performed insystem 300 withprocessor 300 in communication withcontrol circuit 312 ofposition sensor 310. As illustrated inFigure 7A , inmeasurement step 702system 300 sweeps the target over thecoils 314 while reading positional values fromregisters 430 ofcontrol circuit 312. In calculateparameters 704,processor 300 calculates both the calibration and linearization parameters, as is further illustrated below. Additionally, inwrite step 706, the calibration and linearization parameters are written into the corresponding registers (Cal and Lin) ofregisters 430 incontrol circuit 312. Consequently, in accordance with some embodiments, the calibration andlinearization process 700 is accomplished in one sweep. - During
measure step 702,processor 302 reads the Spatial Angle register ofregisters 430 at each of the positions of the target. Insystem 300 therefore,processor 302 steps the target ontarget mount 308 overposition sensor 310 usingposition motors 304 and, at each step, reads the Spatial Angle register ofregisters 430. In some systems,processor 302 may read the voltage at an analog output, PWM, or SENT data. - As discussed above, the Spatial Angle data is the position data directly from the CORDIC calculation. In calculate
parameters 704,processor 302 determines the calibration parameters and calculates a POSO value, the position values after applying the calibration parameters, corresponding to the projected values of POSO forposition sensor 310. Consequently, these values do not need to be read again. From the calculated POSO values,processor 310 can then determine the linearization parameters. - As described, the Spatial Angle value leads to determination of the PosO values, which leads to determination of the Pos1 values. As discussed above, the Spatial Angle values are the values from the CORDIC in the position
sensor control circuit 310 for each position of target overcoils 314. PosO is the value after Calibration of the Spatial angle value. Pos1 is the value after linearization of the PosO value. - In some embodiments, a new linearization algorithm can be used. The conventional method, as discussed above, uses the difference between the measured value and the ideal one at the fixed points. In some embodiments of the present invention, linearization is based on finding the best correction factor for decreasing the final error. In some embodiments, it is possible to improve the error by 0.2%FS or better with these linearization methods.
- In embodiments of this invention, a method for a calibration and linearization that occurs in one step (a very fast method), and which may also include clamping, is presented. There are no known design methodologies in the literature and even a standard solution in commercial position sensor products for this kind of application.
- To solve the issues described above with respect to the classic process, a new process was for calibration and linearization is disclosed. As discussed above, the classic process requires a first measurement process, calculating the calibration parameter, writing the calibration parameter, performing a second measurement, calculating the linearization parameter, and writing the linearization parameter. According to embodiments of the present invention, the calibration method includes measuring location data, calculating the calibration and linearization parameters, and writing the parameters to the position sensor, which substantially reduces the calibration and linearization time and cost.
- As discussed above, measuring the location data in
system 300 includes reading the Spatial Angle register ofregisters 430 ofcontrol circuit 312 at positions of the target overcoils 314 as the target is swept overposition sensor 310. As discussed above, the actual position of target relative to positionsensor 310 is known inprocessor 310 and the Spatial Angle register reflects the determination byposition sensor 310 based on the CORDIC output. From this Spatial Angle data, it is possible to calculate the calibration factors slope and zero offset as discussed above. In accordance with the present invention, the Spatial Angle and the calibration factors can be combined to determine the POSO data (which is the Spatial Angle data corrected by the Calibration Parameters): POSO =F(Spatial Angle, Calibration Parameters). In some embodiments, POSO = Spatial Angle + Line (Slope, Intercept). Inprocess 700, the POSO register ofregister 430 is not read during the sweep, only the Spatial Angle register ofregister 430 is read. - In embodiments of the current invention, PosO is calculated from the Spatial Angle and the Calibration Parameters. The PosO value (value of the register in
register 430 ofcontrol circuit 312 is the value after Calibration has been applied) is calculated from combining the Spatial Angle (SPA), slope and Zero offset as described above. The PosO data is calculated using the SPA and not measured, resulting in this approach having one less measurement step in the process. - In accordance with some embodiments of the present invention, linearization uses an iterative algorithm for determining the nine correction factors in a way that the max error calculated is the smaller one with respect to the set of correction factors found during the iterative algorithm. Embodiments of this invention take into account the implementation of the linearization model used in
control circuit 312. - The algorithm executed in
control circuit 312 to calculate the "POS1" value, which is logically the data after linearization, involves calculating the correction factor based on the POSO value and an ideal curve crossing the first and the last point. An iterative algorithm can find a set of new correction factors (COR0 through COR8) and in the end will choose the set of correction factors with the smallest worst error. All the algorithms described herein can be implemented in every programming language. - As discussed above, there is an issue when clamping is applied. In the case where a clamping is applied, the values for implementing the linearization algorithm are missing. The linearization is applied in nine-fixed point; the first and the last point are the zero value and the full scale value. Where the clamping is from 10% to 90%, the first fixed point and the last one becomes missing. This implies that the first segment and the last segment of the correction function are not implemented correctly.
- According to some embodiments of the present invention, the algorithm determines the first and the last segment by identifying first the desire segment and from the equation of this segment determine the corrections value. This is discussed further below:
With the parameters corr0 and corr8 depicting the first and the last segment, respectively, the correction values can be given by - Mathematically, the line equation is determined by two points, for example point A = (8191, 1417) and point B = (3277, 0). The point (8191, 1417) is defined such that 8191 is the fixed correction point and 1417 is the correction factor at this point (which has been calculated as described above). The point (3277, 0) is the correction factor applied at the point 3277. The value 3277 is defined from the Clamping value and should not be changed from the correction factor, this is the reason that the correction should be zero. From these points, the equation for the line y = mx + n can be determined. Corr0 is determined from the line equation as can be seen in the graph in
Figure 7B at x = zero (in this example, Corr0=-1000). - The step-by-step linearization process is further described below. As discussed above, the calibration process yields the zero offset and the slope. The Linearization process yields the linearization corrections Corr0, Corr1, ... Corr8. There may be several approaches, two of which are outlined below. For the presented approach, the number of samples taken during the measurement phase is such that the greater number the better results of the linearization. For example, more than 400 samples for one complete sweep of the target may be used.
- In the conventional approach, which is a two-measurement approach as illustrated in
Figure 6A , the two end points of the Spatial Angle can be read and used for calibration. The calibration can then be written to the position sensor. The PosO register value can then be read in a second sweep and that value used for linearization. The linearization correction factor can then be written to the position sensor, for example into the registers of the position sensor. - Embodiments of the present invention use a single measurement,
step 702, resulting in one sweep for both linearization and calibration. In this case,processor 302 executingmeasurement 702 reads the Spatial Angle register value ofregisters 430 and incalculation step 704 the calibration is accomplished using the two end points. The value PosO is then calculated from the Spatial Angle and the Calibration Parameters and linearization is then performed using the calculated PosO value. The linearization and calibration parameters are written into theposition sensor 310registers 430 inwrite step 706. As described above, this approach needs only one measurement (one sweep and that is enough for both linearization and Calibration) - In this new method of calibration and linearization, the Analog Output can be read from
control circuit 312 and the values are expressed in volts. The linearization function has been implemented in digital domain and the correction factor are applied at fixed "digital "point. To realize the linearization, a conversion has to be done (From analog to Digital) of the data read from analog output. If the Zero offset function is equal to the origin (zero) and the slope is equal to one this implies that: - As an example, the EPROM configuration registers 430 is such that Zero offset 0x00 = 2400, Slope 0x01 = 0400, and VDDE Supply = 5 volt. The analog output (Volts) has to be converted to spatial value (row data). The logic behind this is to use 5 % of VDDE to 95% of VDDE (Ratio metric), which results in 0.25 volts to 4.75volt, and this is mapped to mapped to the digital register 0 - (2^16-1). Additionally, 4.75-0.25 V is 4.5 V. Voltage measurements are the values measured at the analog output. The row data is the conversion of the data in a row, or
- This formula is applied to each sample value at the analog output. As a definition, OutputCalPOS0 is the value of the PosO register measured or calculated.
- Consequently, calibration, or determination of the zero offset and slope, can be determined in a two-point measurement by 1) Reading the spatial angle when the target is in the first position (point A); and 2) Reading the spatial angle when the target is in the last position (point B) .
- Defining the Mechanical End Points of Sensor as Pt.A and Pt.B, the following algorithm can be used:
If spatial_angle_pt.A < spatial_angle_pt.B spatial_angle_min = spatial_angle_pt.A spatial_angle_max = spatial_angle_pt.B Else spatial_angle_min = spatial_angle_pt.B spatial_angle_max = spatial_angle_pt.A
If (offset_value <= 2^15) offset parameter = 2^13 + 2^10 *[1- (offset value/2^15)] else offset parameter = 2^10 * [(offset value/2^15)-1]
addr. 0x00 = dec2hex [offset parameter; 4]
addr. 0x01 = dec2hex[slope-parameter; 4]
Claims (11)
- A method of calibrating and linearization of a position sensor, comprising:reading Spatial Angle data from a position sensor at a set of positions of a target swept over receive coils in the position sensor;calculating calibration parameters from the Spatial Angle data;determining an initial position values from the Spatial Angle data and the calibration parameters;determining linearization parameters from the initial position values; andwriting the calibration parameters and the linearization parameters into the position sensor.
- The method of claim 1, wherein calculating calibration parameters from the Spatial Angle data includes determining a slope and an intercept from a line connected a first Spatial Angle and a last Spatial Angle.
- The method of claim 2, wherein determining linearization parameters including determining a number of correction values at the number of points between the first Spatial Angle and the last Spatial Angle.
- The method of claim 3, wherein the number of correction values is determined to result in a least worst error of position measurements.
- The method of claim 1, wherein reading spatial angle data from the position sensor includes reading spatial angle data from a register in the position sensor.
- The method of claim 1, wherein writing the calibration parameters and the linearization parameters into the position sensor includes writing the calibration parameters and the linearization parameters into calibration and linearization registers in the position sensor.
- A calibration and linearization system, comprising:a processor; anda position motor coupled to the processor, the position sensor configured to move a target mounted to the position motors over a range of a position sensor positioned relative to the target,wherein the processor executes instructions toread Spatial Angle data from the position sensor at a set of positions of a target swept over receive coils in the position sensor;calculate calibration parameters from the Spatial Angle data;determine initial position values from the Spatial Angle data and the calibration parameters;determine linearization parameters from the initial position values; andwrite the calibration parameters and the linearization parameters into the position sensor.
- The system of claim 7, wherein calculating calibration parameters from the Spatial Angle data includes determining a slope and an intercept from a line connected a first Spatial Angle and a last Spatial Angle.
- The system of claim 8, wherein determining linearization parameters including determining a number of correction values at the number of points between the first Spatial Angle and the last Spatial Angle.
- The system of claim 7, wherein the processor is configured to read and write to registers in the position sensor.
- The system of claim 10, wherein the registers include a Spatial Angle register, calibration parameter registers, and linearization parameter registers.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862734762P | 2018-09-21 | 2018-09-21 | |
US16/575,004 US11609082B2 (en) | 2018-09-21 | 2019-09-18 | Calibration and linearization of position sensor |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3627113A1 true EP3627113A1 (en) | 2020-03-25 |
EP3627113B1 EP3627113B1 (en) | 2021-04-28 |
Family
ID=67998397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP19198753.6A Active EP3627113B1 (en) | 2018-09-21 | 2019-09-20 | Calibration and linearization of position sensor |
Country Status (2)
Country | Link |
---|---|
US (1) | US11609082B2 (en) |
EP (1) | EP3627113B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113758408A (en) * | 2020-06-02 | 2021-12-07 | 瑞萨电子美国有限公司 | Position sensor with varying output slope |
EP4009004A1 (en) * | 2020-12-02 | 2022-06-08 | TE Connectivity Sensors Germany GmbH | Eddy current sensor device for measuring a linear displacement |
EP4227647A1 (en) | 2022-02-09 | 2023-08-16 | Renesas Electronics America Inc. | Method for calibrating a linearization function for correcting the output of a position sensor |
EP4227646A1 (en) | 2022-02-09 | 2023-08-16 | Renesas Electronics America Inc. | Method for calibrating a linearization function for correcting the output of a position sensor |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114166109B (en) * | 2021-12-15 | 2022-10-28 | 珠海格力电器股份有限公司 | Height sensor calibration method, device and system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396241A (en) * | 1993-02-03 | 1995-03-07 | Kaman Instrumentation Corporation | Method and apparatus for digitally controlled linearization of an analog signal |
US20160349084A1 (en) * | 2015-05-27 | 2016-12-01 | Continental Automotive France | Method for determining the position of a moving part along an axis, using an inductive sensor |
EP3232164A1 (en) * | 2016-04-13 | 2017-10-18 | ams AG | Position sensor and method for generating a sensor output signal |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5251631A (en) * | 1990-11-07 | 1993-10-12 | Kabushiki Kaisha Toshiba | Ultrasonic imaging apparatus |
US5689203A (en) * | 1995-11-20 | 1997-11-18 | Geist; Jon | Self-calibration circuit for pulse-train tranducer signals |
US10571304B2 (en) * | 2015-11-25 | 2020-02-25 | Johnson Controls Technology Company | HVAC actuator with inductive position sensing |
CN111094901A (en) * | 2017-07-13 | 2020-05-01 | 阿佐特克(私人)有限公司 | Inductive sensing user interface device |
-
2019
- 2019-09-18 US US16/575,004 patent/US11609082B2/en active Active
- 2019-09-20 EP EP19198753.6A patent/EP3627113B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5396241A (en) * | 1993-02-03 | 1995-03-07 | Kaman Instrumentation Corporation | Method and apparatus for digitally controlled linearization of an analog signal |
US20160349084A1 (en) * | 2015-05-27 | 2016-12-01 | Continental Automotive France | Method for determining the position of a moving part along an axis, using an inductive sensor |
EP3232164A1 (en) * | 2016-04-13 | 2017-10-18 | ams AG | Position sensor and method for generating a sensor output signal |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113758408A (en) * | 2020-06-02 | 2021-12-07 | 瑞萨电子美国有限公司 | Position sensor with varying output slope |
EP4009004A1 (en) * | 2020-12-02 | 2022-06-08 | TE Connectivity Sensors Germany GmbH | Eddy current sensor device for measuring a linear displacement |
US11774229B2 (en) | 2020-12-02 | 2023-10-03 | TE Connectivity Sensors Germany GmbH | Eddy current sensor device for measuring a linear displacement |
EP4227647A1 (en) | 2022-02-09 | 2023-08-16 | Renesas Electronics America Inc. | Method for calibrating a linearization function for correcting the output of a position sensor |
EP4227646A1 (en) | 2022-02-09 | 2023-08-16 | Renesas Electronics America Inc. | Method for calibrating a linearization function for correcting the output of a position sensor |
Also Published As
Publication number | Publication date |
---|---|
US11609082B2 (en) | 2023-03-21 |
US20200096309A1 (en) | 2020-03-26 |
EP3627113B1 (en) | 2021-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3627113B1 (en) | Calibration and linearization of position sensor | |
EP3640602B1 (en) | Method for detecting errors in a rotating position sensor system having sine and cosine signals | |
US10663319B2 (en) | Sensor device for determining the position of the rotor of an electrical machine and control device for an electric motor | |
CN110645882B (en) | Position sensor system and method robust against interference fields | |
JP4044880B2 (en) | Non-contact angle measuring device | |
US11125591B2 (en) | Systems and methods for correcting non-sinusoidal signals generated from non-circular couplers | |
US7112962B2 (en) | Angular position detection utilizing a plurality of rotary configured magnetic sensors | |
US20200278190A1 (en) | Method for Increasing the Position Measurement Accuracy using Inductive Position Sensor | |
JP5333863B2 (en) | Rotation angle detector | |
TW201629436A (en) | Encoder and method of calculating rotational angle position | |
US10317249B2 (en) | Method for determining the position of a moving part along an axis, using an inductive sensor | |
US20210333774A1 (en) | Generic type rotary encoder and servo motor using the same | |
CN107449354B (en) | Angle sensor device and method for an angle sensor device | |
CN109696187B (en) | Eccentric correcting device of rotary encoder | |
JP2019505811A (en) | Device for detecting the angular position of rotatable components | |
JP2007315856A (en) | Compensation method in resolver angle detection, and angle detection device using the same | |
US20210156665A1 (en) | Inductive angle sensor with clearance value ascertainment | |
JP2009150795A (en) | Noncontact type rotation angle detection sensor device and its output correction method | |
CN106989762B (en) | Encoder | |
CN109799469A (en) | Pole orientation detection device | |
US20220364891A1 (en) | Device and method for calibrating a magnetic angle sensor | |
JP2021076487A (en) | Encoder | |
Gietler et al. | Scalable retrofit angular position sensor system | |
US11378419B2 (en) | Angle sensor and method for operating an angle sensor | |
US20220187387A1 (en) | Position sensor having harmonic distortion compensation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20200916 |
|
RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20210205 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 1387561 Country of ref document: AT Kind code of ref document: T Effective date: 20210515 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602019004251 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1387561 Country of ref document: AT Kind code of ref document: T Effective date: 20210428 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210728 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210728 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210830 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210828 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210729 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20210428 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602019004251 Country of ref document: DE |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20220131 |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20210930 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210828 Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210920 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210920 Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210930 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20210930 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220930 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20190920 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220930 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20230928 Year of fee payment: 5 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210428 |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20230920 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20230920 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20230920 |