Error correction in a vector-based position sensing system
10156462 ยท 2018-12-18
Assignee
Inventors
- David S. Ochs (Troy, MI, US)
- Caleb W. Secrest (Shelby Township, MI, US)
- Yo Chan Son (Rochester Hills, MI, US)
Cpc classification
International classification
G01D18/00
PHYSICS
Abstract
A system includes a rotary device, a vector-based position sensor outputting raw sine and cosine signals indicative of an angular position of the rotary device, and a controller. The controller executes a method by receiving the raw sine and cosine signals from the sensor, generating corrected sine and cosine signals by applying an amplitude error input signal to a first integrator block using a first predetermined trigonometric relationship, and executing a control action for the rotary device via output signals using the corrected signals. The first predetermined trigonometric relationship is S.sub.C.sup.2C.sub.C.sup.2, with S.sub.C and C.sub.C being the respective corrected sine and cosine signals. The controller may use a second predetermined trigonometric relationship, S.sub.C.Math.C.sub.C, to apply an orthogonality error input signal to a second integrator block.
Claims
1. A system comprising: a rotary device having an axis of rotation; a vector-based position sensor configured to output raw sine and cosine signals indicative of an angular position of the rotary device with respect to the axis of rotation; and a controller having an integral control loop with a first integrator block and a second integrator block, wherein the controller is in communication with the vector-based position sensor and is configured to: directly receive the raw sine and cosine signals from the vector-based position sensor, apply an amplitude error input signal to the first integrator block using a first predetermined trigonometric relationship, apply an orthogonality error input signal to the second integrator block using a second predetermined trigonometric relationship, generate corrected sine and cosine signals using the amplitude error input signal and the orthogonality error input signal, and execute a control action with respect to operation of the rotary device via a set of output signals using the corrected raw sine and cosine signals, the control action including controlling a speed and/or a torque of the rotary device; wherein the first predetermined trigonometric relationship is S.sub.C.sup.2C.sub.C.sup.2 and the second predetermined trigonometric relationship is S.sub.C.Math.C.sub.C, with Sc and C.sub.C representing the corrected sine and cosine signals, respectively.
2. The system of claim 1, wherein the integral control loop is configured to correct for relative orthogonality errors in the corrected sine and cosine signals using the first and second integrator blocks, and wherein the corrected cosine signal is:
C.sub.C=M.sub.a,cA.sub.2 cos()M.sub.OA.sub.1 sin() and the corrected sine signal is:
S.sub.C=S.sub.R where is the angular position, M.sub.o is a multiplier output from the second integrator block, M.sub.a,c is a multiplier output from the first integrator block, is the orthogonality error between the raw sine (S.sub.R) and cosine (C.sub.R) signals, A.sub.2 is the amplitude of the raw cosine signal, and A.sub.1 is the corrected amplitude of the raw sine signal.
3. The system of claim 1, wherein the integral control loop includes an amplitude detection block configured to detect a respective amplitude of the raw sine signal and the raw cosine signal.
4. The system of claim 3, wherein the amplitude detection block is programmed to determine which of the respective amplitudes of the raw sine signal and the raw cosine signal is closest to a desired reference amplitude.
5. The system of claim 3, wherein the amplitude detection block is programmed to determine which of the respective amplitudes of the raw sine signal and the raw cosine signal is larger.
6. The system of claim 1, wherein the integral control loop includes an amplitude tracking outer control loop having a summation node and a third integrator block, wherein the summation node receives an amplitude tracking control signal (CC.sub.AT.sup.2) as an input, and calculates a third predetermined trigonometric relationship in order to provide an error input signal to the third integrator block, wherein the third predetermined trigonometric relationship is:
CC.sub.AT.sup.2(S.sub.C.sup.2+C.sub.C.sup.2).
7. The system of claim 1, wherein the rotary device is a rotor of an electric machine.
8. The system of claim 7, wherein the electric machine is a traction motor and the vector-based position sensor is a resolver.
9. The system of claim 8, wherein the system is a vehicle having drive wheels and the traction motor is operable for generating torque to power the drive wheels.
10. A method for error correction in a vector-based position sensing system having a rotary device and a vector-based position sensor positioned in proximity to the rotary device, the method comprising: receiving, via a controller having an integral control loop, raw sine and cosine signals from the vector-based position sensor that are indicative of an angular position of the rotary device with respect to an axis of rotation; generating corrected sine and cosine signals from the received raw sine and cosine signals by using a first predetermined trigonometric relationship to apply an amplitude error input signal to a first integrator block of the controller and by using a second predetermined trigonometric relationship to apply an orthogonality error input signal to a second integrator block of the controller using a second predetermined trigonometric relationship; and executing a control action with respect to the rotary device via a set of output signals using the corrected raw sine and cosine signals; wherein the first predetermined trigonometric relationship is S.sub.C.sup.2C.sub.C.sup.2 and the second predetermined trigonometric relationship is S.sub.C.Math.C.sub.C, with S.sub.C and C.sub.C representing the corrected sine and cosine signals, respectively.
11. The method of claim 10, further comprising correcting for relative orthogonality errors in the corrected sine and cosine signals using the first and second integrator blocks, wherein the corrected cosine signal is:
12. The method of claim 10, further comprising using an amplitude detection block to detect a respective amplitude of the raw sine signal and the raw cosine signal.
13. The method of claim 12, further comprising determining, via the amplitude detection block, which of the respective amplitudes of the raw sine signal and the raw cosine signal is closest to a desired reference amplitude.
14. The method of claim 12, further comprising determining which of the respective amplitudes of the raw sine signal and the raw cosine signal is larger than the other.
15. The method of claim 10, wherein the integral control loop includes an amplitude tracking outer control loop having a summation node and a third integrator block, further comprising: receiving, via the summation node, an amplitude tracking control signal (CC.sub.AT.sup.2) as an input, and outputting a third predetermined trigonometric relationship as an error input signal to the third integrator block, wherein the third predetermined trigonometric relationship is:
CC.sub.AT.sup.2(S.sub.C.sup.2+C.sub.C.sup.2).
16. The method of claim 10, wherein the rotary device is a rotor of an electric machine, and wherein executing a control action with respect to the rotary device includes controlling an operation of the electric machine.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
DETAILED DESCRIPTION
(5) Referring to the drawings, wherein like reference numbers refer to the same or similar components throughout the several views, and beginning with
(6) The vector-based position sensor 14 of
(7) As depicted in
(8) By way of an example, the electric machine 200 may be embodied as a polyphase electric traction motor having stator windings 25 and rotor windings 27. When the windings 25 and 27 are electrically energized, a rotor 28 connected to a motor output shaft 30 delivers the output torque (arrow To) to the drive wheels 15 or another load such as a belt and pulley system (not shown). In this illustrative example embodiment, a power inverter module (PIM) 24 is electrically connected to the battery pack 22 over a high-voltage bus 23 and operable for inverting a direct current voltage (VDC) and corresponding electrical current from the battery pack 22 into an alternating current voltage (VAC) and electrical current, e.g., using a series of semiconductor switches, diodes, and other semiconductor components (not shown) and pulse width modulation or other suitable switching techniques. In other embodiments, the rotary device 12 of
(9) In order to control operation of the rotary device 12, the controller 16 is programmed and equipped with an integral control loop 100 having, as set forth below with reference to
(10) The controller 16 may be embodied as one or more computer devices with memory (M) and a processor (P). The memory (M) may include tangible, non-transitory memory, e.g., read only memory, whether optical, magnetic, flash, or otherwise. The controller 16 also includes sufficient amounts of random access memory, electrically-erasable programmable read only memory, and the like, as well as a high-speed clock, analog-to-digital and digital-to-analog circuitry, and input/output circuitry and devices, as well as appropriate signal conditioning and buffer circuitry.
(11) More specifically, the controller 16 is programmed to apply predetermined trigonometric relationships in response to receipt of the raw sine and cosine signals (arrow 11). The disclosed approach does not use or require intervening calculation of position or speed information by an integrated circuit or within the controller 16, and in this manner is input signal-driven by allowing the controller 16 to act directly on the raw sine and cosine signals (arrow 11) as output or otherwise provided by the sensor 14.
(12)
(13) The raw sine and cosine signals (arrow 11) that are output by the sensor 14 or extracted from the outputs of the sensor 14 via signal processing, e.g., via output demodulation when the sensor 14 is embodied as a resolver, may be individually expressed as:
S.sub.R=A.sub.1 sin()
C.sub.R=A.sub.2 cos()
Corrected sine and cosine signals as output by the controller 16 may be expressed as:
S.sub.C=A.sub.1 sin()
C.sub.C=A.sub.2 cos()
where and are the raw and corrected orthogonality errors and is the angular position to be determined. As noted above, ideally the raw sine and cosine signals S.sub.R and C.sub.R are exactly 90 degrees out of phase such that =0. Similarly, the amplitude (A.sub.1) of the raw sine signal S.sub.R and the amplitude (A.sub.2) of the raw cosine signal C.sub.R should be identical. The control loop 100 of
(14) Specifically, the controller 16 of
(15)
Because the measured angular position ranges from 0 to 2 and is an oscillating signal, over a full electrical cycle of the sensor 14 the above-noted expression
(16)
averages to zero. Therefore, an average amplitude correction error term over a full cycle of the sensor 14 is simplified as:
(17)
This particular error term of expression (a) is used by a first integrator block 50 in the integral control loop 100 to drive amplitude errors to zero. That is, the controller 16 manipulates either of the amplitudes A.sub.1 or A.sub.2 and leaves the other amplitude A.sub.1 or A.sub.2 unchanged in order to correct for amplitude errors in the raw sine and cosine signals, respectively.
(18) Similarly, an orthogonality error term may be generated by the controller 16 using the following expression:
(19)
As with the amplitude error expression noted above, the expression sin[2)] represents an oscillating signal that averages to zero over a full cycle of the sensor 14. Therefore, assuming that is small:
(20)
Expression (b) is thus used as an error input term to a second integrator block 55 to drive orthogonality errors to zero as part of the integral control loop 100. As will be explained below in more detail, the controller 16 may be allowed to run amplitude correction without also correcting for orthogonality error. However, in order to correct for orthogonality error without inducing additional amplitude error, the controller 16 also corrects for amplitude error given the interdependency of the above-stated Expressions (a) and (b), as best shown in expression (c) as set forth below.
(21) In the example integral control loop 100 of
(22) The integral control loop 100 of
(23)
The notation
(24)
is used in
(25) As an error input, the second integrator block 55 receives the orthogonality error input term set forth above as Expression (b), i.e.,
(26)
The notation
(27)
is used in
C.sub.C=M.sub.a,cA.sub.2 cos()M.sub.OA.sub.1 sin()Expression (c)
Expression (c) is the output of the summation node 52A. The integral control loop 100 uses the derived error terms as specified in Expressions (a) and (b) above to drive steady-state amplitude and orthogonality errors to zero and ultimately output corrected sine and cosine signals S.sub.C and C.sub.C, respectively. When the steady-state amplitude and orthogonality errors have been driven to zero, the corrected cosine signal, C.sub.C, has the same amplitude as the corrected sine signal, S.sub.C, and no phase term, . Under this condition the corrected cosine signal may be expressed as:
C.sub.C=A.sub.1 cos()
Therefore, by equating the two expressions for C.sub.C above, it can be seen that steady-state amplitude and orthogonality errors will be driven to zero when:
(M.sub.a,cA.sub.2).sup.2=A.sub.1.sup.2+(M.sub.OA.sub.1).sup.2 and tan()=M.sub.O.
(28) Various approaches may be used by the controller 16 of
(29) Referring to
(30) In particular, in the amplitude tracking outer control loop 100A of
(31)
(32) The corrected sine and cosine signals from the integral control loop 100A of
S.sub.C=A.sub.1 sin()=(M.sub.as)A.sub.1 sin()
C.sub.C=A.sub.2 cos()=(M.sub.a,c)A.sub.2 cos()(M.sub.o)(M.sub.a,s)A.sub.1 sin()
The output of the summation node 52C of
(33)
Over a full electrical cycle of sensor 14, the average of the aboce expression reduces to:
(34)
Thus, Expression (d) forms an error input term for the third integrator block 150. The output (M.sub.a,s) of the third integrator block 150 is then fed into another multiplication node 51F, with subscripts a and s representing that the output (M.sub.a,s) represents the amplitude correction applied to the sine signal.
(35) At multiplication node 51F, the output (M.sub.a,s) is multiplied by the raw sine signal S.sub.R and thereafter used as an input of the earlier-described integral control loop 100 of
(36)
(37) The present approach may be used to correct for amplitude errors in the raw sine and cosine signals (arrow 11 of
(38) Referring to FIG.6, an additional enhanced control loop 100C is depicted that is intended to reduce the potential maximum absolute position reference error that may be induced through orthogonality correction. The control loop 100C distributes changes in phase () nearly equally among both sine and cosine signals S.sub.R, C.sub.R rather than modifying the phase of just the corrected signal. The approach of
(39) The control loop 100C differs from the control loop 100 of
(40)
Expression (c) from summation node 52A of
(41)
In this manner, correction in relative error in orthogonality may be applied to both the raw sine and raw cosine signals S.sub.R and C.sub.R.
(42) Those of ordinary skill in the art will appreciate that other embodiments may be realized within the scope of the disclosure. For example, the integral control loop 100 and its various enhancements may be used as part of a method for error correction in a vector-based position sensing system having the rotary device 12 and vector-based position sensor 14 of
(43) The same method may also include applying a second predetermined trigonometric relationship, i.e., Expression (b), as an orthogonality error input signal to the second integrator block 55 of the controller 16.
(44) The method may include correcting for relative orthogonality errors in the corrected sine and cosine signals (S.sub.C, C.sub.C) using the first and second integrator blocks 50 and 55, i.e., using Expression (c) detailed above. In various other embodiments, the method may include using the amplitude detection block 60 of
(45) While the best modes for carrying out the disclosure have been described in detail, those familiar with the art to which this disclosure relates will recognize various alternative designs and embodiments for practicing the disclosure within the scope of the appended claims.