This disclosure generally relates to an electric-motor-control system, and more particularly relates to a system that records periodically measurements of sensed-current indicated by three current-sensors while variable-current flows through each of three motor-windings, determines an x-offset and a y-offset of a rotating-vector indicated by a plurality of the measurements, and determines an offset-current of each of the three current-sensors based on the x-offset and the y-offset.
In AC motor control applications for electric vehicle traction drive, it is desirable to maintain torque accuracy within tight tolerance band, e.g. +/−5%. However, torque is typically not a directly measured quantity. Instead, it is a predicted quantity, derived from measured phase current signals, and estimated motor parameters. Therefore, having accurate current measurement and estimated motor parameters are advantageous for maintaining tight torque requirement. It is known that economical current sensors have a DC offset bias that needs to be corrected to maintain accuracy. The correction is typically performed during an off-state when no motor-current is flowing. However, if there is a drift of the DC offset characteristic during operation, the drift will go undetected and therefore uncompensated.
What is needed is a means or method in which DC offset can be detected while there is free current circulation without any regulation being applied inside three-phase machines.
In accordance with one embodiment, an electric-motor-control system with current sensor offset correction is provided. The system includes three current-sensors and a controller. Each of the three current-sensors is used to detect current through one of three windings of a Y-connected motor. The controller is in communication with the three current-sensors. The controller records periodically measurements of sensed-current indicated by each current-sensor while variable-current flows through each of the three windings, determines an x-offset and a y-offset of a rotating-vector indicated by a plurality of the measurements, and determines an offset-current of each of the three current-sensors based on the x-offset and the y-offset.
Further features and advantages will appear more clearly on a reading of the following detailed description of the preferred embodiment, which is given by way of non-limiting example only and with reference to the accompanying drawings.
The present invention will now be described, by way of example with reference to the accompanying drawings, in which:
The system 10 includes a controller 16 in communication with the three current-sensors 14. The controller 16 may include a processor (not specifically shown) such as a microprocessor or other control circuitry such as analog and/or digital control circuitry including an application specific integrated circuit (ASIC) for processing data as should be evident to those in the art. The controller 16 may include memory (not specifically shown), including non-volatile memory, such as electrically erasable programmable read-only memory (EEPROM) for storing one or more routines, thresholds, and captured data. The one or more routines may be executed by the processor to perform steps for determining the offset-current 18 characteristics of the three current-sensors 14 based on signals received by the controller 16 from the three current-sensors 14 as described herein.
In order to determine the offset-current 18 characteristics of the three current-sensors 14, the controller 16 records periodically measurements of sensed-current indicated by each current-sensor while variable-current flows through each of the three windings of the motor 12. The controller 16 may be equipped with an analog-to-digital converter (A2D,
Once a sufficient number of samples of the analog-signals 22 are collected, thirteen for example (determined by empirical testing), the controller 16 determines an x-offset 24 (
It was observed that even when the offset-currents 18 are well-known because they were determines in a noise-free laboratory environment, the sum of the winding-currents indicated by analog-signals 22 did not always add up to zero, which suggested that there may be some form of current-leakage in the motor 12, and/or there may be differences in gain among the current-sensors 14. As such, the controller may also be configured to determine a leakage-current 30 based on the plurality of the measurements, and further determine the offset-current 18 of each of the three current-sensors 14 based on the x-offset 24, the y-offset 26, and the leakage-current 30.
The details of the algorithm will now be described beginning with some review. With typical alternating-current flow, the three current-sensors 14 will each detect a signal that is sinusoidal in nature. Direct measurement of DC offset from individual sensors under this situation isn't desirable, because it will require heavy filtering to remove fundamental frequency. As a consequence, DC offset extraction will be too slow. Instead of viewing problem from individual phase measurement, it was discovered that a linear combination of all phase currents in balanced three-phase machines behave similar to a rotating current vector (the rotating-vector 28) with magnitude I, as shown in
The purpose of the
Having described reference frames (
There are two additional advantages of the system 10 other than the fact that the offset-current 18 can be estimated with current flowing. First, algorithm can converge within few electrical cycles (less than 10 electrical cycles). It can be further sped up if angle theta_s is updated with additional inner iterations loop. Second, testing has shown that in the presence of measurement noise, the algorithm can still maintain its convergence stability and produces decent prediction of offset-current 18 and current magnitude.
The signal path illustrated in
The mathematical model derivation (see a) starts from sensor reference frame. In this reference frame, machine performs measurement of phase A, B, and C current. Then, the currents quantity can be projected into orthogonal axis through trigonometry relation as follows:
Ix_s=⅔*(Ias−Ib_s*cos [60]−Ic_s*cos [60]) Eq. 1,
Iy_s=⅔*(Ib_s*cos [30]−Ic_s*cos [30]) Eq. 2, and
I0_s=⅔*(Ia_s+Ib_s+Ic_s) Eq. 3,
where “_s” indicates that currents are viewed from sensor reference frame.
Under assumption that the motor is running at steady-state speed, current quantities per phase (phase A, B, C) will be sinusoidal with constant magnitude. However, the presence of DC offset will make peak value of phase current to be unsymmetrical. By referencing to
Ia_s=I_machine·cos [theta]+DCa Eq. 4,
Ib_s=I_machine·cos [theta−120]+DCb Eq. 5, and
Ic_s=I_machine·cos [theta−240]+DCc Eq. 6,
where I_machine is constant current amplitude as seen by machine reference frame.
By plugging Eqs. 4-6 into Eqs. 1-3 followed by simplification, following result is obtained:
Ix_s=I_machine·cos [theta]+(⅔·DCa−⅓·DCb−⅓·DCc) Eq. 7,
Iy_s=I_machine·sin [theta]+(⅓·DCb−DCc) Eq. 8, and
I0_s=⅔·(DCa+DCb+DCc) Eq. 9.
For convenience, new terms DCx, DCy, and DCo are introduced such that Eqs. 7-9 can be re-written as:
Ix_s=I_machine·cos [theta]+DCx Eq. 10,
Iy_s=I_machine·sin [theta]+DCy Eq. 11, and
I0_s=DC0 Eq. 12,
where,
DCx==⅔·DCa−⅓·DCb−⅓·DCc Eq. 13,
DCy=⅓·√{square root over (3)}·(DCb−DCc) Eq. 14, and
DCy=⅓·√{square root over (3)}·(DCb−DCc) Eq. 15.
DC quantities in X-Y frame can be easily transform back into A,B,C quantities by inverting Eqs. 13-15 as shown by Eqs. 16-18. However, for convenience of further mathematical manipulation, conversion can be postponed until DC current quantities are extracted in the orthogonal X-Y frame.
DCa=DCX+½·DC0 Eq. 16,
DCb=−½·DCX+½·√{square root over (3)}·DCY+½·DC0 Eq. 17, and
DCc=−½·DCX−½·√{square root over (3)}+½·DC0 Eq. 18.
By careful inspection of Eqs. 10-12, equation variables can be separated into known and unknown quantities. The known quantities Ix_s, Iy_s, and I0_s can be obtained from sensor measurements. These variables are located on left side of the equations. The unknown quantities are I_machine, DCx, DCy, DC0, and theta. DC0 can be estimated directly by Eq. 9, however, for a reason that will described later DC0 will kept as an unknown for now. Another realization from Eqs. 10-12 is that most of the unknown quantities are constant, except theta. Therefore, regression model to search for their values might be suitable candidate. Below, a strategy to solve these parameters using regression model will be described.
The main idea of regression model can be summarized as follow, for a given model with unknown parameters and their measured values, it is preferable to predict parameters value that will minimize error between model output and its measured quantity. Measured quantities and model parameters have been discussed above. First, it is preferable to construct cost-function that will allow minimization of the error to be performed conveniently. Proposed cost-function equation is derived by performing summation of square difference between left and right terms of Eqs. 10-12, as shown below.
In Eq. 19, superscript (m) indicates m-th sample points of the data. Note, in this equation, theta(m) is treated as known quantity. It is computed/estimated on estimated sample point of Ix_s and Iy_s and given previous prediction of DCx and DCy (DCx_0 and DCy_0), by Eq. 20 below:
theta(m)=arctan((Iy_s(m)−DCy_0)/(Ix_s(m)−DCx_0)) Eq. 20.
Theta(m) calculated from Eq. 20 will not be correct within iteration, since it is an estimated value. However, as predicted parameters are converging theta(m) will be close to its true machine frame. DC0 in general should be equal to I0_s(m) when there is no noise in the measurement. However, solution of regression model will look over several sample data points then it performs average solution of the parameter. Therefore, in the presence of measurement noise, using DC0 value from model estimation is better than its instantaneous value.
Parameters that will minimize cost function (Eq. 19) are solved iteratively by gradient descend method. Final solutions of the method are described below, for each predicted parameters:
where “_1” and “_0” in Eqs. 21-24 are to distinguish current from previous iteration value, respectively.
Gradient terms from Eqs. 21-24 are further derived by Eqs. 25-28:
That is, Eqs. 21-28 are core functions in which DC current offset can be estimated along with current magnitude. The implementation of algorithm above is shown by
Since (a) and (b) aren't necessarily occur in a same real-time step, computational cost can be minimized.
Accordingly, an electric-motor-control system (the system 10), a controller 16 for the system 10, and a method 36 of operating the system 10 is provided.
While this invention has been described in terms of the preferred embodiments thereof, it is not intended to be so limited, but rather only to the extent set forth in the claims that follow.
Number | Name | Date | Kind |
---|---|---|---|
6278255 | Yoo et al. | Aug 2001 | B1 |
20050206341 | Yin Ho | Sep 2005 | A1 |
20050242767 | Ho | Nov 2005 | A1 |
20050280383 | Kifuku | Dec 2005 | A1 |
20090052215 | Watanabe | Feb 2009 | A1 |
20090134835 | Welchko et al. | May 2009 | A1 |
20140091742 | Suzuki et al. | Apr 2014 | A1 |
20140253004 | Gebregergis et al. | Sep 2014 | A1 |
20150123671 | Yannam | May 2015 | A1 |
20160276969 | Krefta | Sep 2016 | A1 |
20160301341 | Lee | Oct 2016 | A1 |
20170085205 | Koseki et al. | Mar 2017 | A1 |
Number | Date | Country |
---|---|---|
1729405 | Dec 2006 | EP |
Number | Date | Country | |
---|---|---|---|
20180156885 A1 | Jun 2018 | US |