A rotary electric machine, when embodied as a single-phase or a polyphase alternating current (AC) motor having a rotor and a stator, may be connected to a direct current (DC) power supply via an intervening inverter. Individual ON/OFF conducting states of resident semiconductor power switches of the inverter are individually commanded using pulse-width modulation or another application-suitable high-frequency switching control technique. This action ultimately converts a DC input voltage from the power supply into an AC output voltage. The AC output voltage is then applied to the stator windings of the AC motor to cause rotation of the rotor and an output member connected thereto.
An electric machine may be constructed in such a way that the inductance of the stator windings varies as a function of rotor position. This is primarily due to a non-uniform stator-rotor airgap. Unlike higher-speed symmetric/non-salient machines in which the stator-rotor airgap is uniform and the direct axis (d-axis) and quadrature axis (q-axis) inductances are the same, asymmetric/salient machines are more commonly used in lower-speed applications. An interior permanent magnet (IPM) synchronous machine and a synchronous reluctance machine are examples of salient electric machines. The presence of asymmetry or saliency greatly complicates the motor control task. This in turn requires the use of specialized control logic, sensing, and digital signal processing techniques. Asymmetric machines are thus relatively difficult to analyze and control in real-time using classical controls techniques.
Disclosed herein are control systems and related methodologies for controlling a salient/asymmetric alternating current (AC) motor, e.g., an electric traction motor of an electrified powertrain system or an AC motor of another battery electric system. As appreciated in the art, classical motor controls methods, if applied to the real-time control of an asymmetric machine, may lead to command tracking errors, as well as relatively poor disturbance rejection and motor performance at low fundamental-to-sampling ratios. The present solutions are therefore intended to extend the myriad benefits of virtual translation-more commonly used to the control symmetric/non-salient machines-to the control of asymmetric/salient machines. The resulting control system enables high-speed salient machines to be used in a wider range of applications, with higher-bandwidth torque production. The present solutions also enable selective and independent rejection of high-frequency and low-frequency disturbances per operating point of the AC motor.
An electric drive system in accordance with an exemplary embodiment of the present disclosure includes a direct current power supply, e.g., a multi-cell electrochemical battery pack, and an inverter that is connected to the power supply. The electric drive system also includes the above-summarized AC motor and an associated motor controller. The AC motor is connectable to a load and to the inverter, the latter of which is referred to hereinafter as a power inverter module (PIM). The load for its part could be embodied as a set of road wheels in a non-limiting embodiment in which the aforementioned electric drive system is used as part of a motor vehicle.
The AC motor contemplated herein has an asymmetric time constant. The controller is programmed to selectively modify this asymmetric time constant at predetermined operating points of the AC motor, e.g., torque and speed operating points. This control action occurs in logic of the controller via independent manipulation of the AC motor's direct axis (d-axis) and quadrature axis (q-axis) inductance and impedance values, such that the asymmetric time constant is virtually modified or translated into a symmetric time constant within the control logic. In particular, the time constant is virtually modified to be symmetric by manipulating/adding virtual inductive and virtual resistive terms independently and per operating point, as set forth in detail herein.
The controller may be configured to determine a torque command and an angular speed of the AC motor, in which case the operating point of the AC motor includes the torque command and the angular speed of the AC motor. The electric drive system in one or more embodiments may be part of a mobile system aboard which the AC motor is operable as a traction or propulsion motor.
The controller may include a computer-readable storage medium that includes a first lookup table and a second lookup table each indexed by the torque command and the angular speed of the AC motor. In such an embodiment, the symmetric modified time constant may be selected by the controller from the first lookup table and used to calculate the virtual d-axis resistance and the virtual q-axis resistance as the virtual resistive terms. A d-axis constant multiplier and a q-axis constant multiplier may be selected by the controller from the second lookup table and used to calculate the virtual d-axis inductance and the virtual q-axis inductance as the virtual inductive terms.
The controller in a possible implementation is configured to calculate the virtual d-axis inductance and the virtual q-axis inductance by multiplying a d-axis dynamic inductance and a q-axis dynamic inductance by the d-axis constant multiplier and the q-axis constant multiplier, respectively.
In one or more embodiments, the controller selectively rejects a low-frequency disturbance of the electric drive system by replacing the d-axis inductance and/or the q-axis inductance in the plant model with the virtual d-axis inductance and/or the virtual q-axis inductance from the second lookup table, respectively. The same controller could selectively reject a high-frequency disturbance of the electric drive system by replacing the d-axis resistance and/or the q-axis resistance of the plant model with the virtual d-axis resistance and/or the virtual q-axis resistance from the first lookup table, respectively.
Another aspect of the disclosure includes a method for controlling an electric drive system having an AC motor connected to a PIM and to a load. The AC motor is a salient machine. The method in a possible implementation includes determining an operating point of the AC motor and selectively modifying an asymmetric time constant of the AC motor at the operating point of the AC motor in control logic of the controller. The control logic includes a plant model of the electric drive system. The method includes selectively and independently manipulating a d-axis and q-axis inductance and resistance via the controller, such that the asymmetric time constant is virtually translated in the control logic into a symmetric modified time constant by manipulating/adding virtual inductive and virtual resistive terms independently and per operating point of the AC motor. The method also includes controlling the AC motor at the operating point using the symmetric modified time constant.
A motor vehicle is also disclosed herein, with the motor vehicle including one or more road wheels and an electric drive system connected to the vehicle body. The electric drive system includes a traction battery pack, a PIM connected to the traction battery pack, an AC traction motor connected to the PIM and to one or more of the road wheels, and a controller configured to perform the above-summarized method or variations thereof. The AC traction motor is a salient machine. The controller is programmed with control logic including a plant model of the electric drive system, with the plant model including an asymmetric time constant of the AC motor.
The above features and advantages, and other features and advantages, of the present teachings are readily apparent from the following detailed description of some of the best modes and other embodiments for carrying out the present teachings, as defined in the appended claims, when taken in connection with the accompanying drawings.
The present disclosure may be modified or embodied in alternative forms, with representative embodiments shown in the drawings and described in detail below. Inventive aspects of the present disclosure are not limited to the disclosed embodiments. Rather, the present disclosure is intended to cover alternatives falling within the scope of the disclosure as defined by the appended claims.
Referring to the drawings, wherein like reference numerals correspond to like or similar components throughout the several Figures,
The electric drive system 10 in the embodiment of
The power supply 12 in the non-limiting embodiment of
Representative hardware components of the electric drive system 10 of
During drive modes of the motor vehicle 11, the PIM 14 is controlled by the controller 50 via pulse width modulation (PWM) or another application-suitable high-frequency switching control technique. The controller 50 may transmit PWM switching control signals (CC14) to the PIM 14 to energize the AC motor 13. As appreciated in the art, solid-state power switches located within the PIM 14 are constructed as semiconductor switching device, e.g., insulated gate bipolar transistors (IGBTs), metal oxide semiconductor field-effect transistors (MOSFETs), thyristors, or other electronic power switches having controllable conducting (ON) modes and blocking (OFF) modes commanded and set by the PWM switching control signals (CC14).
Although omitted from
Within the scope of the present disclosure, the controller 50 illustrated in
The term “controller” and related terms such as control module, module, control, control unit, processor, and similar terms refer to one or various combinations of Application Specific Integrated Circuit(s) (ASIC), Field-Programmable Gate Array (FPGA), electronic circuit(s), central processing unit(s), e.g., microprocessor(s) and associated non-transitory memory component(s) in the form of memory and storage devices (read only, programmable read only, random access, hard drive, etc.). Non-transitory components of the memory 54 are those which are capable of storing machine-readable instructions in the form of one or more software or firmware programs or routines, combinational logic circuit(s), input/output circuit(s) and devices, signal conditioning and buffer circuitry and other components that can be accessed by the processor(s) 52 to provide the described functionality.
Input/output circuit(s) and devices include analog/digital converters and related devices that monitor inputs from sensors, with such inputs monitored at a preset sampling frequency or in response to a triggering event. Software, firmware, programs, instructions, control routines, code, algorithms, and similar terms mean controller-executable instruction sets including calibrations and look-up tables. Each controller executes control routine(s) to provide desired functions. Routines may be executed at regular intervals, for example about 50-100 microsecond (ms) intervals during ongoing operation. Alternatively, routines may be executed in response to occurrence of a triggering event.
Referring to
Aspects of the control logic 50L are illustrated in block diagram form in
Constituent components of the control logic 50L include a current regulator (I-Reg) 22 and a current observer (I-Obs) 23. As appreciated in the art, the current regulator 22 is ultimately responsible for controlling current to stator windings of the AC motor 13 via operation of the PIM 14. As part of this task, the current regulator 22 considers an angular speed (ωe) of the AC motor 13, e.g., as a derivative (d/dt) of a measured angular position (θe) of the AC motor 13, with the measured angular position (θe) being determined using a suitable position sensor 60, for instance an encoder or resolver. The current regulator 22 ultimately receives an error signal (Idq.err(z)) from a computation node N1, the angular speed (ωe) of the AC motor 13, and a calculated d-axis and q-axis current (zIdq(z)) from the current observer 23, which for its part receives the d-axis and q-axis current vector (Idq(z)) as an input and generates the above-noted value zIdq(z) for use by the current regulator 22.
The current regulator 22 of
Measured or reported a, b, and c phase currents from a current sensor(s) 61, i.e., Iabc, are then fed into a transformation block (ejθe) 26 as an input Iabc(z), along with the measured angular position (θe) of the AC motor 13. The transformation block 26 ultimately outputs the d-axis and q-axis current vector (Idq(z)) as an input to the current observer 23 as set forth above. Thus, current control features of the control logic 50L shown in simplified block diagram form in
Referring briefly to
Discrete-time Modeling of an AC Machine: the AC motor 13 of
The voltage equation in the rotor's rotating reference frame is given by:
where Vdq=[Vd Vq]T is the voltage vector, Idq=[Id Iq]T is the current vector, R is the stator resistance, λdq=[λdλq]T is the flux-linkage vector, and ωe is the electrical angular speed of the rotor. The flux linkages λd and λq represented in
The effects of temperature are externally compensated by adjusting the current or flux commands to achieve the desired torque, and may be ignored when designing the proposed controller 50. Additionally, the variations in temperature appear as parameter uncertainties or disturbances to the current regulator 22. The effects of flux-linkage varying as a function of position (θe) are ignored as the current regulator 22 is designed to control average stator currents. With that, the non-linear relationship between flux-linkage and currents considering saturation and cross-saturation effects is given by equation (4) below and shown in the flux maps of
The operating point model of equation (2) noted above, derived using a first order Taylor series expansion evaluated at the operating point, is given by equation (5) with the constant speed assumption:
The dynamics of currents can be described by expressing the flux-linkage difference Δλdq as a function of the current difference ΔIdq. Therefore, the dynamic inductances Ld (set forth below as d-axis dynamic inductance Ldd and q-axis dynamic inductance Ldq) as used herein is calculated from the flux gradient between two successive operating points of Idq as described in equation (6). As shown in
In the present approach, dynamic inductances (La) are used to capture the saturation characteristics of the AC motor 13. The diagonal elements of La in equation (6) are responsible for the current dynamics and the off-diagonal cross coupling elements describe the cross-saturation effects. Since the cross-saturation elements are typically smaller than the diagonal elements, they are omitted and considered as a disturbance to the current controller 22. With that, above-stated equation (6) simplifies to equation (7):
The operating point linearized voltage equation from equation (5) may be written as equation (8) using relationship from equation (7):
Taking the Laplace transform of equation (8) with initial conditions and modeling voltage with a rotating latch as it is latched in stationary reference frame leads to equation (9):
Defining τdq and τw as time constants in the following equations (10) and (11) then allows for above-stated equation (9) to be written as equation (12), and further writing it in partial fraction form as equation (13):
In order to return to the time domain, an inverse Laplace transform of equation (13) is taken, which leads to equation (14) and is further discretized for single time step leading to equation (15):
Using the relationship between flux λdq and current Idq from equation (7), equation (15) simplifies to equation (16). A discrete-time AC machine plant model is obtained as equation (17):
The above approach will now be described with reference to
Referring briefly to
As part of the present approach, the controller 50 of
STEP 1—Plant Modeling: the controller 50 could establish the following relationship according to equation (17) as set forth above:
where TS is the sampling time. Equation (18), which will be translated into block 32 of
STEP 2—Virtual Modification: using the virtual resistance (Rv) and virtual inductance (Lv) vectors shown below in equation (19) leads to a virtually-translated AC machine in equation (20):
which corresponds to model 32 in
STEP 3—Time Constant Modification per Operating Point: The desired time constant (τmod) value is then set as a function of the torque and speed of the AC motor 13 of
Another control degree of freedom is afforded to the controller 50 with the use of configurable virtual inductance (Lv) that enables disturbance rejection at higher frequencies in equation (22) below. This occurs as a function of torque and speed in the envisioned embodiments. Once the virtual inductance vector is set, the virtual resistance vector of equation (23) is recalculated based on the desired virtually-modified target time constant (τmod) from equations (21) and (22):
Virtual resistance (Rv) and virtual inductance (Lv) vectors allow for selective operating point-based disturbance rejection for low frequency and high frequency, respectively. These are set based on equations (21) and (22):
where
Here, K is a scalar value that may range from (0-1), implying that a percentage of actual inductance is used to determine the virtual inductance as modified:
Thus, using the disclosed virtual translation allows the controller 50 to make τ symmetric. With two degrees of freedom, the virtual inductance Lv could be modified to reject higher-frequency disturbances. The virtual resistance Rv likewise could be modified to reject lower-frequency disturbances. Rv and Lv are thus usable herein as adjustable “handles” that the controller 50 may use in real-time to control operation and tune performance of the AC motor 13.
STEP 4—Pole-placement: a pole placement-type control scheme may then be designed as follows:
with the above closed loop response having one sample delay. Here, fb is the bandwidth of the controller 50. A closed-loop response with the current observer 23 of
Important characteristic of discrete-time implementation is that a computational delay (an actuator delay) of one sample period typically exists in the control loop. The current regulator's Gc(z) calculations are based on the current sample instance of measured current values Idq(z). However, the voltage output of the regulator corresponds to the next sample instance (zVdq(z)) value rather than the current sample (Vdq(z)). Virtual resistance (Rv) and virtual inductance (Lv) damping voltage may be calculated based on current sample instance value, and then applied to a next sample instance voltage command, thereby causing a delayed state feedback response. This causes degraded and oscillatory behavior at low fundamental-to-sampling ratios. It is therefore desirable to obtain and use next sample instance current values zIdq(z) in the current regulator 22 of
Referring now to
Upon initialization (*) of the controller 50, e.g., after a key-on event in which the representative motor vehicle 11 of
At block B54, the controller 50 next determines the dq-axes current commands, i.e., zI*dq(z) from the CGM block 20 of
At block B56 of
Block B58 of the method 50M is then performed by the controller 50 of
Block B60 includes configuring the virtual d-axis and q-axis inductances, i.e., Lvd and Lvq, respectively. Referring briefly to
where Ldd once again is the dynamic inductance for the d-axis. Similarly, block 42 could be implemented as:
The method 50M then proceeds to block B62.
Block B62 includes configuring the symmetric modified time constant, i.e., τmod. Referring again to
At block B64 of
The method 50 of
Block B66 entails running the current regulator 22 of
Block B68 of
The method 50M of
The detailed description and the drawings or figures are supportive and descriptive of the present teachings, but the scope of the present teachings is defined solely by the claims. While some of the best modes and other embodiments for carrying out the present teachings have been described in detail, various alternative designs and embodiments exist for practicing the present teachings defined in the appended claims.