Fast model predictive pulse pattern control
09806595 · 2017-10-31
Assignee
Inventors
Cpc classification
H02M7/539
ELECTRICITY
H02M1/08
ELECTRICITY
International classification
Abstract
A method for controlling an electrical converter comprises the acts of determining an error value based on a difference between an estimated output value and a reference output value, the estimated output value being based on measurements in the electrical converter; comparing the error value with an error band and in the case of the error value exceeds the error band, controlling the electrical converter by switching to a different control scheme. The converter is controlled with the modified pre-calculated switching by determining a pre-calculated switching sequence for the converter based on an actual state of the electrical converter, the switching sequence comprising a sequence of switching transitions of the converter; modifying the pre-calculated switching sequence by modifying transition times of switching transitions of the pre-calculated switching sequence, such that the error value is minimized; and applying at least a part of the modified switching sequence to the electrical converter.
Claims
1. A method for controlling an electrical converter, the method comprising: determining an error value based on a difference between an estimated output value and a reference output value, the estimated output value being based on measurements in the electrical converter; comparing the error value with an error band and in the case of the error value being within the error band, controlling the electrical converter with a modified pre-calculated switching sequence by: determining a pre-calculated switching sequence for the converter based on an actual state of the electrical converter, the switching sequence comprising a sequence of switching transitions of the converter; modifying the pre-calculated switching sequence by modifying transition times of switching transitions of the pre-calculated switching sequence, such that the error value is minimized; applying at least a part of the modified switching sequence to the electrical converter; in the case where the error value exceeds the error band, controlling the electrical converter by switching to a different control scheme; whereby the different control scheme is based on inserting an additional switching transition into the pre-calculated switching sequence before the pre-calculated switching sequence is modified and the additional switching transition generate an additional pulse with an infinitesimal small width; selecting an error band associated with the error value from a plurality of error bands, whereby a voltage level of the inserted switching transition is dependent on the determined error band and a selection of an error band is based on past error values.
2. The method of claim 1, wherein the error bands have different widths.
3. The method of claim 1, wherein the error value is one of a flux error based on a difference between an estimated flux vector and a reference flux vector; and a current error based on a difference between an estimated current and a reference current.
4. The method of claim 1, wherein the error value is minimized subject to the constraint that an order of switching transitions of the pre-calculated switching sequence is not modified.
5. The method of claim 1, wherein the modified switching sequence is determined by solving a quadratic problem with a cost function based on the error value.
6. The method of claim 1, wherein the error value is minimized within a prediction horizon that encompasses at least two switching transitions in two phases.
7. A non-transitory computer-readable medium configured with instructions executable by a computer to control an electrical converter to: determine an error value based on a difference between an estimated output value and a reference output value, the estimated output value being based on measurements in the electrical converter; compare the error value with an error band and in the case of the error value being within the error band, controlling the electrical converter with a modified pre-calculated switching sequence by: determining a pre-calculated switching sequence for the converter based on an actual state of the electrical converter, the switching sequence comprising a sequence of switching transitions of the converter, modifying the pre-calculated switching sequence by modifying transition times of switching transitions of the pre-calculated switching sequence, such that the error value is minimized, applying at least a part of the modified switching sequence to the electrical converter, and in the case where the error value exceeds the error band, controlling the electrical converter by switching to a different control scheme, wherein the different control scheme is based on inserting an additional switching transition into the pre-calculated switching sequence before the pre-calculated switching sequence is modified and the additional switching transition generate an additional pulse with an infinitesimal small width; and select an error band associated with the error value from a plurality of error bands, whereby a voltage level of the inserted switching transition is dependent on the determined error band and a selection of an error band is based on past error values.
8. The non-transitory computer-readable medium of claim 7, wherein the different control scheme is another control method.
9. The non-transitory computer-readable medium of claim 7, wherein the error bands have different widths.
10. The non-transitory computer-readable medium of claim 9, wherein the error value is a flux error based on a difference between an estimated flux vector and a reference flux vector; or wherein the error value is a current error based on a difference between an estimated current and a reference current.
11. The non-transitory computer-readable medium of claim 9, wherein the error value is minimized subject to the constraint that an order of switching transitions of the pre-calculated switching sequence is not modified.
12. The non-transitory computer-readable medium of claim 9, wherein the modified switching sequence is determined by solving a quadratic problem with a cost function based on the error value.
13. The non-transitory computer-readable medium of claim 9, wherein the error value is minimized within a prediction horizon that encompasses at least two switching transitions in two phases.
14. An electrical converter, comprising: a plurality of semiconductor switches; and a controller adapted for controlling the semiconductor switches; wherein the controller is structured to execute instructions stored in a non-transitory computer readable medium to control the converter to: determine an error value based on a difference between an estimated output value and a reference output value, the estimated output value being based on measurements in the electrical converter; compare the error value with an error band and in the case of the error value being within the error band, controlling the electrical converter with a modified pre-calculated switching sequence by: determining a pre-calculated switching sequence for the converter based on an actual state of the electrical converter, the switching sequence comprising a sequence of switching transitions of the converter, modifying the pre-calculated switching sequence by modifying transition times of switching transitions of the pre-calculated switching sequence, such that the error value is minimized, applying at least a part of the modified switching sequence to the electrical converter, and in the case where the error value exceeds the error band, controlling the electrical converter by switching to a different control scheme, wherein the different control scheme is based on inserting an additional switching transition into the pre-calculated switching sequence before the pre-calculated switching sequence is modified and the additional switching transition generate an additional pulse with an infinitesimal small width; and select an error band associated with the error value from a plurality of error bands, whereby a voltage level of the inserted switching transition is dependent on the determined error band and a selection of an error band is based on past error values.
15. The electrical converter of claim 14, wherein the error bands have different widths.
16. The electrical converter of claim 14, wherein the error value is a flux error based on a difference between an estimated flux vector and a reference flux vector; or wherein the error value is a current error based on a difference between an estimated current and a reference current.
17. The electrical converter of claim 14, wherein the error value is minimized subject to the constraint that an order of switching transitions of the pre-calculated switching sequence is not modified.
18. The electrical converter of claim 14, wherein the modified switching sequence is determined by solving a quadratic problem with a cost function based on the error value.
19. The electrical converter of claim 14, wherein the error value is minimized within a prediction horizon that encompasses at least two switching transitions in two phases.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The subject-matter of the invention will be explained in more detail in the following text, with reference to exemplary embodiments which are illustrated in the attached drawings.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10) The reference symbols used in the drawings and their meanings are listed in the summary form in the list of reference symbols. In principle, identical parts are provided with the same reference symbols in the figures.
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
(11) Controller
(12)
(13) The controller 20 comprises an observer module 22 that receives output currents i.sub.s of the converter 14 (input to the electrical motor 18). The stator currents i.sub.s may be measured at the output terminals of the converter 12. Typically, the observer module 22 also receives the DC-link voltage of the DC-link 16 and the switching signal u to reconstruct the voltage applied to the machine terminals. When available, the rotor speed w.sub.r from an optional encoder 23 may also be used by the observer module 22. Based on these quantities, the observer module 22 estimates an estimated stator flux vector ψ.sub.s, an estimated rotor flux vector and an estimated torque T.sub.e. A speed controller module 24 receives a difference between a reference speed ω.sub.r* and the rotor speed w.sub.r and determines a reference torque T.sub.c* therefrom, which is an input to the torque controller module 26. The torque controller module 26 determines the (load) angle γ, which is the angle between the reference stator flux vector ψ.sub.s* and the rotor flux vector. The angle of the reference stator flux vector is obtained by adding the load angle γ to the angle of the rotor flux vector. The flux reference controller module 28 derives the reference stator flux vector ψ.sub.s*, which lies on the optimal flux trajectory, and has the desired angle and the desired magnitude. The optimal flux trajectory is obtained by integrating an optimized pulse pattern P(m, d) that is generated by the flux controller module 30 and a pattern selector module 32 based on a modulation index m and a pulse number d, i.e. the number of switching events per quarter-period of the fundamental frequency. The stator flux error (vector) ψ.sub.s,err is computed from the difference between the reference stator flux vector ψ.sub.s* and the estimated inverter flux vector ψ.sub.s.
(14) The stator flux error ψ.sub.s,err is input to an operation control module 34, comparing the (magnitude of) the stator flux error ψ.sub.s,err with an error band. In the case where the stator flux error ψ.sub.s,err is inside the error band, the operation control module 34 causes the pattern control module 36 to modify the time instants of the switching transitions of the optimized pulse pattern P(m, d) such that the stator flux error ψ.sub.s,err is minimized. Otherwise, the operation control module 34 causes the pattern control module 36 to insert an additional pulse into the optimized pulse pattern P(m, d) before the modification of the switching transitions, or it switches to another controller 38.
(15) In the end, the pattern control module 36 or the other controller 38 generates a vector of switch positions u that is applied to the converter 12.
(16) The operation of the controller 20 will be explained in more detail in
(17) In the following, normalized quantities are used and it is focused on a three-phase inverter 12 connected to an electrical machine 18. However, it has to be understood that the following embodiments also may be applied to an inverter connected to a general p-phase load or to a grid-connected converter connected to a power grid. Additional passive elements, such as filters, transformers and/or cables may be added.
(18) Furthermore, in the following it is focused on fluxes for calculating the error value. It has to be understood that the estimated flux vector may be replaced with an estimated current vector and the reference flux vector may be replaced with a reference current vector to achieve the same or similar results.
(19) All variables ξ.sub.abc=[ξ.sub.aξ.sub.bξ.sub.c].sup.T in the three-phase system (abc) are transformed to ξ.sub.αβ=[ξ.sub.aξ.sub.β].sup.T in the stationary orthogonal αβ coordinates through ξ.sub.αβ=Pξ.sub.αβ with
(20)
(21) P.sup.1 denotes the pseudo-inverse of P.
(22) ψ.sub.s=[ψ.sub.sαψ.sub.sβ].sup.T is used to denote the stator flux vector, which is to be controlled by the controller 20. The converter 12 may be a three-phase voltage source inverter 12 with n voltage levels and a total DC-link voltage v.sub.dc. For example, for a five-level inverter with n=5, the inverter 12 produces at each phase the n voltage levels
(23)
These voltages may be described by the integer variables u.sub.xε{−2,−1,0,1,2} with xε{a,b,c} denoting one of the three phases.
(24) The three-phase switch position may be defined as u.sub.abc=[u.sub.a u.sub.b u.sub.c].sup.T. For simplification, often the indices of the three-phase system abc may be dropped from u.sub.abc and ψ.sub.s,abc, simply writing u and ψ.sub.s instead.
(25) t.sub.0=kT.sub.s is used to denote the current time instant, where k is the current time step and T.sub.s is the sampling interval. Note that to is real valued, while k is a natural number. Assume that the switch position in phase x changes at time t, i.e. Δu.sub.x(t)=u.sub.x(t)−u.sub.x(t−dt), with dt being an infinitesimally small time step, is nonzero. Δu.sub.x(t) may be seen as a single-phase switching transition. Three-phase switching transitions may be defined accordingly as Δu(t)=u(t)−u(t−dt).
(26) Error Determination
(27) Returning to
(28) For example, an algorithm performed by the controller 20 may operate in a discrete time domain and/or may be activated at equally spaced time instants kT.sub.s, with kεN being the discrete time step and T.sub.s denoting the sampling interval. The control problem may be formulated and/or solved in stationary orthogonal coordinates. As already said, the angular electrical stator and rotor frequencies/speeds of the machine may be ψ.sub.s and ω.sub.r, respectively.
(29) As an example, the stator flux error ψ.sub.s,err may be determined by the following sub-steps with reference to
(30) In sub-step S10a, the stator and rotor flux vectors in the stationary reference frame are estimated. This yields ψ.sub.s=[ψ.sub.sαψ.sub.sβ].sup.T and ψ.sub.r=[ψ.sub.rαψ.sub.rβ].sup.T. Let ∠ψ denote the angular position of a flux vector and its magnitude. The delay introduced by the computation time of the controller 20 may be compensated by rotating the estimated stator and rotor flux vectors by ψ.sub.sT.sub.s forward in time, i.e. ∠ψ.sub.s=∠ψ.sub.s+ψ.sub.sT.sub.s and accordingly for the rotor flux.
(31) In sub-step S10b, the reference stator flux vector v.sub.s is determined. The electromagnetic torque T.sub.e produced by the electrical machine 18 may be written as T.sub.e=k.sub.r|ψ.sub.s∥ψ.sub.r| sin(γ), where k.sub.r is the rotor coupling factor, and γ is the angle between the stator and the rotor flux vectors. When the electrical machine 18 is fully magnetized, the magnitude of the reference flux vector is equal to 1 pu. Then, for a given value of the rotor flux magnitude and a given torque reference, the desired angle between the stator and rotor flux vectors is
(32)
(33) The reference flux vector is then obtained by integrating the chosen nominal three-phase pulse pattern over time; the reference angle ∠ψ.sub.r+γ* constitutes the upper limit of the integral. The resulting instantaneous reference flux vector has, in general, a magnitude and angle that slightly differ from their respective values on the unitary circle,
(34) In sub-step S10c, the stator flux error ψ.sub.s,err is determined, which is the difference between the reference and the estimated stator flux vector
ψ.sub.s,err=ψ.sub.s*−ψ.sub.s. (3)
(35) In step S12, the error value (such as ψ.sub.s,err or its magnitude) is compared with an error band. For example, the error band may comprise an (offline) preset value and/or may be a central error band of several nested error bands as will be explained with reference to
(36) In the case where the error value ψ.sub.s,err is within the error band, the electrical converter 12 is controlled with a modified pre-calculated switching sequence in step S14, wherein the modified pre-calculated switching sequence may be determined according to an MP.sup.3C algorithm without pulse insertion.
(37) Otherwise, in the case where the error value ψ.sub.s,err is outside the error band, the electrical converter 12 is controlled by switching to a different control scheme; for example with the aid of pulse insertion into a pre-calculated switching sequence in step S16 or with switching to another control method in step S18.
(38) Calculation of Modified Switching Sequences
(39) The control with a modified pre-calculated switching sequence in step S14 may be performed in the following sub-steps:
(40) In step S14a, a pre-calculated switching sequence 40 for the converter 12 based on an actual state of the electrical converter 12 is determined. For example, the actual state may comprise the stator currents i.sub.s, the rotor speed w.sub.r, the estimated stator flux vector ψ.sub.s, the estimated rotor flux vector ψ.sub.r and/or the estimated torque T.sub.e. Furthermore, the pre-calculated switching sequence may be based on reference values/vectors (that may be provided by an outer control loop) such as the reference speed ψ.sub.r*, the reference stator flux vector ψ.sub.s* and/or the reference torque T.sub.e*.
(41) For example, the pre-calculated switching sequence 40 may be based on an optimized pulse pattern P(m, d) as shown in
(42) In sub-step S14b, the pre-calculated switching sequence 40 is modified by moving transition times/switching instants of the switching transitions 42 in time such that the error value is minimized. The control problem may be formulated as an optimization problem with a quadratic objective/cost function and linear constraints, a so called quadratic program (OP).
(43) The objective function may penalize the uncorrected error value such as the uncorrected flux error (the controlled variable) and optionally the changes of the switching instants (the manipulated variable). For example, a diagonal weight matrix Q may be used, whose components may be very small. Specifically, the QP may be formulated as
(44)
(45) subject to
kT.sub.s≦t.sub.a1≦t.sub.a2≦ . . . ≦t.sub.an.sub.
kT.sub.s≦t.sub.b1≦t.sub.b2≦ . . . ≦t.sub.bn.sub.
kT.sub.s≦t.sub.c1≦t.sub.c2≦ . . . ≦t.sub.cn.sub.
(46) As defined before, ψ.sub.s,err is the stator flux error in stationary coordinates αβ and ψ.sub.s,corr(Δt) is the correction of the stator flux. The corrections of switching instants are aggregated in the vector
Δt=[Δt.sub.a1Δt.sub.a2 . . . Δt.sub.an.sub.
For phase a, for example, the correction of the i-th transition time is given by Δt.sub.ai=t.sub.ai−t.sub.ai*, where t.sub.ai* denotes the nominal switching instant of the i-th transition Δu.sub.ai. Again, the latter is defined as Δu.sub.ai=u.sub.a(t.sub.ai*)−u.sub.a(t.sub.ai*−dt) with dt being an infinitesimally small time step. Moreover, n.sub.a denotes the number of switching transitions in phase a that are within the prediction horizon, and t.sub.a(n.sub.
(47) Usually, the switching instants cannot be modified arbitrarily. For the three phases, the set of constraints (4b)-(4d) is imposed, which constrains the switching instants in two ways. First, by the current time instant kT.sub.s, i.e. transitions cannot be moved into the past. Second, by the neighbouring switching transitions in the same phase, ensuring that the correct sequence of switching transitions is kept.
(48)
(49) The horizon length T.sub.p is a design parameter. If required, T.sub.p is increased so as to ensure that switching transitions in at least two phases fall within the horizon. In case T.sub.p is smaller than t.sub.a1*−kT.sub.s, it is increased to this value.
(50) In sub-step S14c, the modified switching sequence 40 is applied to the electrical converter 12.
(51) Firstly, the switching transitions 42 are removed from the OP that will occur within the sampling interval. This can be accomplished by updating a pointer to the look-up table that stores the switching angles of the optimized pulse pattern and the respective three-phase potential values.
(52) Secondly, the switching commands over the sampling interval are derived, i.e. the switching instants and the associated switch positions. The switching commands are sent to the gate units of the semiconductor switches 14 in the converter 12.
(53) Pulse Insertion
(54) The modifications with respect to step S14, which result in step S16, are explained with respect to
(55) After that the switching sequence 40 may be modified according to step S14 (which will be explained in more detail below), which may result in an additional switching pulse 44 of nonzero length (see
(56) In general, a switching pulse 44 may consist of or may comprise two consecutive switching transitions 42a, 42b in the same phase. The two switching transitions 42a, 42b of a switching pulse may have opposite signs but do not necessarily have the same magnitude. In general, a pulse 44 may comprise switching transitions in more than one phase.
(57) The insertion of additional pulses is described in the following in a form, which extends the algorithm of step S14.
(58) In sub-step S16a, according to sub-step S14a, a pre-calculated switching sequence 40 is determined.
(59) In substep S16b, an error band associated with the error value is determined and a voltage level of the inserted switching pulse 44 is determined based on the determined error band.
(60) Preliminarily, note that in step S10 the stator flux error is calculated at time-instant to, which is the difference between the reference and the estimated stator flux vector according to
ψ.sub.s,err,αβ(t.sub.0)=ψ.sub.s,αβ*(t.sub.0)−ψ.sub.s,αβ(t.sub.0). (6)
(61) The stator flux error is mapped from the orthogonal αβ coordinate system into the three-phase system
ψ.sub.s,err,abc(t.sub.0)=P.sup.−1ψ.sub.s,err,αβ(t.sub.0). (7)
As shown in
(62) As shown in
(63) In general, the transitions' magnitudes and signs in the three phases are determined based on the error bands 46a, 46b, 46c. This may be expressed in a compact way by
Δu.sub.ins,abc(t.sub.0)=round(gψ.sub.s,err,abc(t.sub.0)), (8)
(64) where the gain g is a user-defined scalar parameter.
(65) The gain and rounding operation implicitly define the error bounds. Note also that since the stator flux vector is the integral of the inverter switch positions weighted with half the total DC-link voltage, i.e.
(66)
the term
(67)
is implicitly included in the gain g.
(68) When the flux error is positive, which may be caused by too small a stator flux, additional volt-second is to be added, which is equivalent to adding a positive switching transition 42a and hence a positive pulse 44.
(69) Specifically, an additional switching transition of magnitude 1 is required in phase x,Δu.sub.ins,x=1, if 0.5≦gψ.sub.s,err,x<1.5. Correspondingly, a transition of magnitude Δu.sub.ins,x=2 is added in case 1.5≦gψ.sub.s,err,x<2.5, and so on. Negative switching transitions are added in the presence of negative flux errors.
(70) In the optional sub-step S16, it is ensured that short pulses 44 are not added repeatedly, which may give rise to a chattering phenomenon and an increase in the switching frequency. This issue may be avoided by ensuring that, when switching transitions 42a, 42b are inserted, the magnitude of the inserted transitions 42a, 42b decreases in each phase while maintaining its sign. Specifically, for each phase, the required additional transition is modified when required, according to the following three rules: 1. If |Δu.sub.ins(k−1)∥>0 and Δu.sub.ins,x(k−1)=0 then Δu.sub.ins,x(k)=0. 2. If Δu.sub.ins,x(k−1)>0 then Δu.sub.ins,x(k)=min(max(Δu.sub.ins,x(k),0), Δu.sub.ins,x(k−1)). 3. If Δu.sub.ins,x(k−1)>0 then Δu.sub.ins,x(k)=min(max(Δu.sub.ins,x(k),0), Δu.sub.ins,x(k−1)).
(71) The first rule ensures that when a pulse insertion campaign has ended in phase x but is still ongoing in at least one other phase, it is not restarted in phase x, before it has ended in all three phases. The second and third rules impose that the magnitudes of the inserted switching transitions decrease monotonically until they reach zero.
(72) In sub-step S16d, the additional switching transition Δu.sub.ins is inserted into the switching sequence (40) determined in step S16a (i.e. the nominal switch positions and the nominal transition times).
(73) In particular, a nominal OPP P(m, d) may be read from a look-up table. The nominal (unmodified) switching sequence 40 may be built starting at time instant t.sub.0 sufficiently far into the future. A nominal switching sequence 40 in phase x is shown as the dotted line in
(74) After that, the value of the switch position at time to is determined, which is given by u(t.sub.0)=u(t.sub.0−dt)+Δu.sub.ins(t.sub.0). In here, the switch position currently applied to the converter 12 is denoted by u(t.sub.0−dt). In case u(t.sub.0) exceeds the set of available switch positions of the inverter, u(t.sub.0) is saturated at the maximal and minimal attainable switch positions, respectively. This may imply that it might not be possible to implement the inserted switching transition to the full extent requested. As an example, consider a five-level inverter. Assume that the currently applied switch position in phase x is u.sub.x(t.sub.0−dt)=1 and that the additional switching transition Δu.sub.x(t.sub.0)=3 has been requested. Only u.sub.x(t.sub.0)=2 can be implemented, corresponding to an inserted transition of Δu.sub.x(t.sub.0)=1 in phase x.
(75) In the end, a pulse 44 with the infinitesimally small width dt is added, by adding a switching transition 42a at time t.sub.0 from u(t.sub.0−dt) to u(t.sub.0) and another switching transition 42b with opposite sign at time t.sub.0+dt from u(t.sub.0) to u(t.sub.0+dt). Special care may need to be taken to ensure that the magnitude of the second switching transitions (at time t.sub.0+dt) is correct, since the first and second switching transitions do not necessarily sum up to zero. This is the case, for example, when a nominal switching transition is scheduled at t.sub.0. The switch position u(t.sub.0+dt) may have to match the nominal switch position at time t.sub.0+dt.
(76) The pulse 44 starts at time instant to and ends at to +dt. The volt-seconds of the inserted pulse 44 are thus effectively zero. The added pulse 44 is shown as a straight line in
(77) The resulting switching sequence 40 comprises the unmodified switching transitions 42 given by the OPP P(m, d) and an additional pulse 44 at time to of width dt.
(78) In sub-step S16d, analogously to step S14b, the pulse pattern controller module 36 is executed, by formulating and solving the quadratic program (QP), as stated in (4). Alternatively, an MP.sup.3C variation based on a deadbeat controller may be formulated and solved.
(79) The pattern controller module 36 modifies the switching transitions 42a, 42b, 42 of the switching sequence 40 starting at time t.sub.0, which, in general, may include additional pulses 44. The transition times of the pulses 44 are shifted to remove any flux error.
(80) As such, the pulse insertion concept proposed above relies on closed-loop control and provides the controller 20, when required, with additional degrees of freedom to correct the flux error ψ.sub.s,err. The inserted pulse 44 has effectively zero volt-seconds, thus resembling a virtual pulse. The width of the pulse 44 is set by the pattern controller in a closed-loop fashion. This implies that the width of the pulse 44 may be readjusted at subsequent sampling instants, in case additional disturbances affect the flux or when the flux reference changes. By modifying the transition times of the pulse 44, the volt-second correction required to drive the stator flux vector back to its reference as quickly as possible is achieved by MP.sup.3C.
(81) In sub-step S16e, accordingly to sub-step S14c, the modified switching sequence 40 is applied to the converter 20.
(82) Switching to Another Control Method
(83) An alternative or addition to the pulse insertion method in step S16 is to temporarily switch to a different type of control method in step S18, when the system 10 is operated under dynamic conditions.
(84) For example, when the error value is outside a first error band, step S16 may be executed, and when the error value is outside a wider second error band, step S18 may be executed.
(85) The pulse insertion method (step S16) may refer to the use of OPPs. These do not always allow to quickly switch to the voltage vector that minimizes the flux error. It may be required to wait for a relatively long time interval for the next switching instant to occur, depending on the operating point. The reason may be the non-uniform distribution of the switching instants over the fundamental period of the voltage waveform.
(86) Other than this, some conventional control methods allow selecting the voltage vector that minimizes the flux error without having to wait longer than the occurrence of the next sampling interval. Typical examples of such fast closed-loop control methods include hysteresis-based flux control method, such as direct torque control, model predictive direct torque control, direct self control and sliding mode control.
(87) Fast control method may be enabled as an alternative (or addition) to implementing and using the proposed pulse insertion method. This fast control method can be enabled automatically if the flux error magnitude exceeds a preset error band. Below this value, OPPs and MP.sup.3C can be used to ensure minimum harmonic distortions of the current waveform and the elimination of relatively small flux errors in quasi steady-state operation. Pulse insertion may still be advantageous to quickly remove such small flux errors.
Other Embodiments
(88) The error bands 46a, 46b, 46c on the error value such as the flux error ψ.sub.s,err may be defined in various ways, including the following.
(89) The error band 46a may have different values, for example from −1 to 1, rather than from −0.5 to 0.5.
(90) The error band 46a may be wider than the error bands 46b and 46c. Rather than using error bands 46a, 46b, 46c of constant widths, error bands 46a, 46b, 46c with different widths can be adopted. As an example, a wide error band 46b may be used for small flux errors, but for larger errors, the error band 46c is tightened. As a result, pulse insertion may be used cautiously for small errors, but more aggressively for large flux errors.
(91) As shown in
(92) Furthermore, another controlled vector may be used. So far, the focus was on an inverter 12 directly connected to an electrical machine 18, in which the stator flux vector is controlled. Neglecting the stator resistance, the stator flux vector may be equivalent to the integral of the inverter output voltage over time. We refer to this voltage integral as the virtual inverter flux vector.
(93) This allows us to apply the control method to any converter system, by controlling the (virtual) converter flux ψ. Specifically, when an LC filter and/or a long cable is inserted between the inverter 12 and the machine 18, ψ is the so-called virtual inverter flux vector. Correspondingly, in a grid-connected converter setting, denotes the virtual converter flux vector. In such settings, the computation of the reference angle of ψ needs to be modified and (2) is to be replaced accordingly.
(94) Alternatively, instead of controlling the (virtual) flux vector, a current vector may be controlled, similar to the literature on trajectory tracking. It is also conceivable to control other vectors.
(95) The functional modules may be implemented as programmed software modules or procedures, respectively; however, one skilled in the art will understand that the functional modules may be implemented fully or partially in hardware.
(96) While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered illustrative or exemplary and not restrictive; the invention is not limited to the disclosed embodiments. Other variations to the disclosed embodiments can be understood and effected by those skilled in the art and practising the claimed invention, from a study of the drawings, the disclosure, and the appended claims. In the claims, the word “comprising” does not exclude other elements or steps, and the indefinite article “a” or “an” does not exclude a plurality. A single processor or controller or other unit may fulfil the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. Any reference signs in the claims should not be construed as limiting the scope.
LIST OF REFERENCE SYMBOLS
(97) 10 electrical system 12 electrical converter 14 semiconductor switches 16 DC link 18 electrical motor or machine 20 controller 22 observer module 23 encoder 24 speed controller module 26 torque controller module 28 flux reference controller module 30 flux controller module 32 pattern selector module 34 operation control module 36 pattern control module 38 different controller i.sub.s stator currents w.sub.r rotor speed ω.sub.r* reference speed ψ.sub.s estimated stator flux vector ψ.sub.s* reference stator flux vector ψ.sub.r estimated rotor flux vector T.sub.e estimated torque T.sub.e* reference torque P(m, d) optimized pulse pattern ψ.sub.s,err stator flux error u three-phase switch positions 40 switching sequence 42 switching transition t time u.sub.a switch position in phase a u.sub.b switch position in phase b u.sub.c switch position in phase c T.sub.p horizon 42a additional switching transition 42b additional switching transition 44 pulse 46a central error band 46b second error band 46c third error band 46a′ central error band for hysteresis 46b′ second error band for hysteresis 46c′ third error band for hysteresis